import { i as eS, t as Dy } from "./chunk-DvDhI3NP.js";
var Zft = /* @__PURE__ */ Dy(((fo) => {
  var qi = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");
  fo.encode = function(Qa) {
    if (0 <= Qa && Qa < qi.length) return qi[Qa];
    throw new TypeError("Must be between 0 and 63: " + Qa);
  }, fo.decode = function(Qa) {
    var ao = 65, Ha = 90, gi = 97, Ci = 122, oi = 48, Un = 57, Qr = 43, In = 47, Te = 26, mi = 52;
    return ao <= Qa && Qa <= Ha ? Qa - ao : gi <= Qa && Qa <= Ci ? Qa - gi + Te : oi <= Qa && Qa <= Un ? Qa - oi + mi : Qa == Qr ? 62 : Qa == In ? 63 : -1;
  };
})), U5e = /* @__PURE__ */ Dy(((fo) => {
  var qi = Zft(), Qa = 5, ao = 1 << Qa, Ha = ao - 1, gi = ao;
  function Ci(Un) {
    return Un < 0 ? (-Un << 1) + 1 : (Un << 1) + 0;
  }
  function oi(Un) {
    var Qr = (Un & 1) === 1, In = Un >> 1;
    return Qr ? -In : In;
  }
  fo.encode = function(Qr) {
    var In = "", Te, mi = Ci(Qr);
    do
      Te = mi & Ha, mi >>>= Qa, mi > 0 && (Te |= gi), In += qi.encode(Te);
    while (mi > 0);
    return In;
  }, fo.decode = function(Qr, In, Te) {
    var mi = Qr.length, It = 0, bt = 0, la, Hn;
    do {
      if (In >= mi) throw new Error("Expected more digits in base 64 VLQ value.");
      if (Hn = qi.decode(Qr.charCodeAt(In++)), Hn === -1) throw new Error("Invalid base64 digit: " + Qr.charAt(In - 1));
      la = !!(Hn & gi), Hn &= Ha, It = It + (Hn << bt), bt += Qa;
    } while (la);
    Te.value = oi(It), Te.rest = In;
  };
})), UR = /* @__PURE__ */ Dy(((fo) => {
  function qi(Jn, hr, xr) {
    if (hr in Jn) return Jn[hr];
    if (arguments.length === 3) return xr;
    throw new Error('"' + hr + '" is a required argument.');
  }
  fo.getArg = qi;
  var Qa = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/, ao = /^data:.+\,.+$/;
  function Ha(Jn) {
    var hr = Jn.match(Qa);
    return hr ? {
      scheme: hr[1],
      auth: hr[2],
      host: hr[3],
      port: hr[4],
      path: hr[5]
    } : null;
  }
  fo.urlParse = Ha;
  function gi(Jn) {
    var hr = "";
    return Jn.scheme && (hr += Jn.scheme + ":"), hr += "//", Jn.auth && (hr += Jn.auth + "@"), Jn.host && (hr += Jn.host), Jn.port && (hr += ":" + Jn.port), Jn.path && (hr += Jn.path), hr;
  }
  fo.urlGenerate = gi;
  function Ci(Jn) {
    var hr = Jn, xr = Ha(Jn);
    if (xr) {
      if (!xr.path) return Jn;
      hr = xr.path;
    }
    for (var Ya = fo.isAbsolute(hr), qs = hr.split(/\/+/), i_, Gi = 0, Wu = qs.length - 1; Wu >= 0; Wu--)
      i_ = qs[Wu], i_ === "." ? qs.splice(Wu, 1) : i_ === ".." ? Gi++ : Gi > 0 && (i_ === "" ? (qs.splice(Wu + 1, Gi), Gi = 0) : (qs.splice(Wu, 2), Gi--));
    return hr = qs.join("/"), hr === "" && (hr = Ya ? "/" : "."), xr ? (xr.path = hr, gi(xr)) : hr;
  }
  fo.normalize = Ci;
  function oi(Jn, hr) {
    Jn === "" && (Jn = "."), hr === "" && (hr = ".");
    var xr = Ha(hr), Ya = Ha(Jn);
    if (Ya && (Jn = Ya.path || "/"), xr && !xr.scheme)
      return Ya && (xr.scheme = Ya.scheme), gi(xr);
    if (xr || hr.match(ao)) return hr;
    if (Ya && !Ya.host && !Ya.path)
      return Ya.host = hr, gi(Ya);
    var qs = hr.charAt(0) === "/" ? hr : Ci(Jn.replace(/\/+$/, "") + "/" + hr);
    return Ya ? (Ya.path = qs, gi(Ya)) : qs;
  }
  fo.join = oi, fo.isAbsolute = function(Jn) {
    return Jn.charAt(0) === "/" || Qa.test(Jn);
  };
  function Un(Jn, hr) {
    Jn === "" && (Jn = "."), Jn = Jn.replace(/\/$/, "");
    for (var xr = 0; hr.indexOf(Jn + "/") !== 0; ) {
      var Ya = Jn.lastIndexOf("/");
      if (Ya < 0 || (Jn = Jn.slice(0, Ya), Jn.match(/^([^\/]+:\/)?\/*$/))) return hr;
      ++xr;
    }
    return Array(xr + 1).join("../") + hr.substr(Jn.length + 1);
  }
  fo.relative = Un;
  var Qr = (function() {
    return !("__proto__" in /* @__PURE__ */ Object.create(null));
  })();
  function In(Jn) {
    return Jn;
  }
  function Te(Jn) {
    return It(Jn) ? "$" + Jn : Jn;
  }
  fo.toSetString = Qr ? In : Te;
  function mi(Jn) {
    return It(Jn) ? Jn.slice(1) : Jn;
  }
  fo.fromSetString = Qr ? In : mi;
  function It(Jn) {
    if (!Jn) return !1;
    var hr = Jn.length;
    if (hr < 9 || Jn.charCodeAt(hr - 1) !== 95 || Jn.charCodeAt(hr - 2) !== 95 || Jn.charCodeAt(hr - 3) !== 111 || Jn.charCodeAt(hr - 4) !== 116 || Jn.charCodeAt(hr - 5) !== 111 || Jn.charCodeAt(hr - 6) !== 114 || Jn.charCodeAt(hr - 7) !== 112 || Jn.charCodeAt(hr - 8) !== 95 || Jn.charCodeAt(hr - 9) !== 95) return !1;
    for (var xr = hr - 10; xr >= 0; xr--) if (Jn.charCodeAt(xr) !== 36) return !1;
    return !0;
  }
  function bt(Jn, hr, xr) {
    var Ya = Hn(Jn.source, hr.source);
    return Ya !== 0 || (Ya = Jn.originalLine - hr.originalLine, Ya !== 0) || (Ya = Jn.originalColumn - hr.originalColumn, Ya !== 0 || xr) || (Ya = Jn.generatedColumn - hr.generatedColumn, Ya !== 0) || (Ya = Jn.generatedLine - hr.generatedLine, Ya !== 0) ? Ya : Hn(Jn.name, hr.name);
  }
  fo.compareByOriginalPositions = bt;
  function la(Jn, hr, xr) {
    var Ya = Jn.generatedLine - hr.generatedLine;
    return Ya !== 0 || (Ya = Jn.generatedColumn - hr.generatedColumn, Ya !== 0 || xr) || (Ya = Hn(Jn.source, hr.source), Ya !== 0) || (Ya = Jn.originalLine - hr.originalLine, Ya !== 0) || (Ya = Jn.originalColumn - hr.originalColumn, Ya !== 0) ? Ya : Hn(Jn.name, hr.name);
  }
  fo.compareByGeneratedPositionsDeflated = la;
  function Hn(Jn, hr) {
    return Jn === hr ? 0 : Jn === null ? 1 : hr === null ? -1 : Jn > hr ? 1 : -1;
  }
  function rs(Jn, hr) {
    var xr = Jn.generatedLine - hr.generatedLine;
    return xr !== 0 || (xr = Jn.generatedColumn - hr.generatedColumn, xr !== 0) || (xr = Hn(Jn.source, hr.source), xr !== 0) || (xr = Jn.originalLine - hr.originalLine, xr !== 0) || (xr = Jn.originalColumn - hr.originalColumn, xr !== 0) ? xr : Hn(Jn.name, hr.name);
  }
  fo.compareByGeneratedPositionsInflated = rs;
  function qo(Jn) {
    return JSON.parse(Jn.replace(/^\)]}'[^\n]*\n/, ""));
  }
  fo.parseSourceMapInput = qo;
  function Ds(Jn, hr, xr) {
    if (hr = hr || "", Jn && (Jn[Jn.length - 1] !== "/" && hr[0] !== "/" && (Jn += "/"), hr = Jn + hr), xr) {
      var Ya = Ha(xr);
      if (!Ya) throw new Error("sourceMapURL could not be parsed");
      if (Ya.path) {
        var qs = Ya.path.lastIndexOf("/");
        qs >= 0 && (Ya.path = Ya.path.substring(0, qs + 1));
      }
      hr = oi(gi(Ya), hr);
    }
    return Ci(hr);
  }
  fo.computeSourceURL = Ds;
})), V5e = /* @__PURE__ */ Dy(((fo) => {
  var qi = UR(), Qa = Object.prototype.hasOwnProperty, ao = typeof Map < "u";
  function Ha() {
    this._array = [], this._set = ao ? /* @__PURE__ */ new Map() : /* @__PURE__ */ Object.create(null);
  }
  Ha.fromArray = function(Ci, oi) {
    for (var Un = new Ha(), Qr = 0, In = Ci.length; Qr < In; Qr++) Un.add(Ci[Qr], oi);
    return Un;
  }, Ha.prototype.size = function() {
    return ao ? this._set.size : Object.getOwnPropertyNames(this._set).length;
  }, Ha.prototype.add = function(Ci, oi) {
    var Un = ao ? Ci : qi.toSetString(Ci), Qr = ao ? this.has(Ci) : Qa.call(this._set, Un), In = this._array.length;
    (!Qr || oi) && this._array.push(Ci), Qr || (ao ? this._set.set(Ci, In) : this._set[Un] = In);
  }, Ha.prototype.has = function(Ci) {
    if (ao) return this._set.has(Ci);
    var oi = qi.toSetString(Ci);
    return Qa.call(this._set, oi);
  }, Ha.prototype.indexOf = function(Ci) {
    if (ao) {
      var oi = this._set.get(Ci);
      if (oi >= 0) return oi;
    } else {
      var Un = qi.toSetString(Ci);
      if (Qa.call(this._set, Un)) return this._set[Un];
    }
    throw new Error('"' + Ci + '" is not in the set.');
  }, Ha.prototype.at = function(Ci) {
    if (Ci >= 0 && Ci < this._array.length) return this._array[Ci];
    throw new Error("No element indexed by " + Ci);
  }, Ha.prototype.toArray = function() {
    return this._array.slice();
  }, fo.ArraySet = Ha;
})), Kft = /* @__PURE__ */ Dy(((fo) => {
  var qi = UR();
  function Qa(Ha, gi) {
    var Ci = Ha.generatedLine, oi = gi.generatedLine, Un = Ha.generatedColumn, Qr = gi.generatedColumn;
    return oi > Ci || oi == Ci && Qr >= Un || qi.compareByGeneratedPositionsInflated(Ha, gi) <= 0;
  }
  function ao() {
    this._array = [], this._sorted = !0, this._last = {
      generatedLine: -1,
      generatedColumn: 0
    };
  }
  ao.prototype.unsortedForEach = function(gi, Ci) {
    this._array.forEach(gi, Ci);
  }, ao.prototype.add = function(gi) {
    Qa(this._last, gi) ? (this._last = gi, this._array.push(gi)) : (this._sorted = !1, this._array.push(gi));
  }, ao.prototype.toArray = function() {
    return this._sorted || (this._array.sort(qi.compareByGeneratedPositionsInflated), this._sorted = !0), this._array;
  }, fo.MappingList = ao;
})), q5e = /* @__PURE__ */ Dy(((fo) => {
  var qi = U5e(), Qa = UR(), ao = V5e().ArraySet, Ha = Kft().MappingList;
  function gi(Ci) {
    Ci || (Ci = {}), this._file = Qa.getArg(Ci, "file", null), this._sourceRoot = Qa.getArg(Ci, "sourceRoot", null), this._skipValidation = Qa.getArg(Ci, "skipValidation", !1), this._sources = new ao(), this._names = new ao(), this._mappings = new Ha(), this._sourcesContents = null;
  }
  gi.prototype._version = 3, gi.fromSourceMap = function(oi) {
    var Un = oi.sourceRoot, Qr = new gi({
      file: oi.file,
      sourceRoot: Un
    });
    return oi.eachMapping(function(In) {
      var Te = { generated: {
        line: In.generatedLine,
        column: In.generatedColumn
      } };
      In.source != null && (Te.source = In.source, Un != null && (Te.source = Qa.relative(Un, Te.source)), Te.original = {
        line: In.originalLine,
        column: In.originalColumn
      }, In.name != null && (Te.name = In.name)), Qr.addMapping(Te);
    }), oi.sources.forEach(function(In) {
      var Te = In;
      Un !== null && (Te = Qa.relative(Un, In)), Qr._sources.has(Te) || Qr._sources.add(Te);
      var mi = oi.sourceContentFor(In);
      mi != null && Qr.setSourceContent(In, mi);
    }), Qr;
  }, gi.prototype.addMapping = function(oi) {
    var Un = Qa.getArg(oi, "generated"), Qr = Qa.getArg(oi, "original", null), In = Qa.getArg(oi, "source", null), Te = Qa.getArg(oi, "name", null);
    this._skipValidation || this._validateMapping(Un, Qr, In, Te), In != null && (In = String(In), this._sources.has(In) || this._sources.add(In)), Te != null && (Te = String(Te), this._names.has(Te) || this._names.add(Te)), this._mappings.add({
      generatedLine: Un.line,
      generatedColumn: Un.column,
      originalLine: Qr != null && Qr.line,
      originalColumn: Qr != null && Qr.column,
      source: In,
      name: Te
    });
  }, gi.prototype.setSourceContent = function(oi, Un) {
    var Qr = oi;
    this._sourceRoot != null && (Qr = Qa.relative(this._sourceRoot, Qr)), Un != null ? (this._sourcesContents || (this._sourcesContents = /* @__PURE__ */ Object.create(null)), this._sourcesContents[Qa.toSetString(Qr)] = Un) : this._sourcesContents && (delete this._sourcesContents[Qa.toSetString(Qr)], Object.keys(this._sourcesContents).length === 0 && (this._sourcesContents = null));
  }, gi.prototype.applySourceMap = function(oi, Un, Qr) {
    var In = Un;
    if (Un == null) {
      if (oi.file == null) throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);
      In = oi.file;
    }
    var Te = this._sourceRoot;
    Te != null && (In = Qa.relative(Te, In));
    var mi = new ao(), It = new ao();
    this._mappings.unsortedForEach(function(bt) {
      if (bt.source === In && bt.originalLine != null) {
        var la = oi.originalPositionFor({
          line: bt.originalLine,
          column: bt.originalColumn
        });
        la.source != null && (bt.source = la.source, Qr != null && (bt.source = Qa.join(Qr, bt.source)), Te != null && (bt.source = Qa.relative(Te, bt.source)), bt.originalLine = la.line, bt.originalColumn = la.column, la.name != null && (bt.name = la.name));
      }
      var Hn = bt.source;
      Hn != null && !mi.has(Hn) && mi.add(Hn);
      var rs = bt.name;
      rs != null && !It.has(rs) && It.add(rs);
    }, this), this._sources = mi, this._names = It, oi.sources.forEach(function(bt) {
      var la = oi.sourceContentFor(bt);
      la != null && (Qr != null && (bt = Qa.join(Qr, bt)), Te != null && (bt = Qa.relative(Te, bt)), this.setSourceContent(bt, la));
    }, this);
  }, gi.prototype._validateMapping = function(oi, Un, Qr, In) {
    if (Un && typeof Un.line != "number" && typeof Un.column != "number") throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");
    if (!(oi && "line" in oi && "column" in oi && oi.line > 0 && oi.column >= 0 && !Un && !Qr && !In)) {
      if (oi && "line" in oi && "column" in oi && Un && "line" in Un && "column" in Un && oi.line > 0 && oi.column >= 0 && Un.line > 0 && Un.column >= 0 && Qr) return;
      throw new Error("Invalid mapping: " + JSON.stringify({
        generated: oi,
        source: Qr,
        original: Un,
        name: In
      }));
    }
  }, gi.prototype._serializeMappings = function() {
    for (var oi = 0, Un = 1, Qr = 0, In = 0, Te = 0, mi = 0, It = "", bt, la, Hn, rs, qo = this._mappings.toArray(), Ds = 0, Jn = qo.length; Ds < Jn; Ds++) {
      if (la = qo[Ds], bt = "", la.generatedLine !== Un)
        for (oi = 0; la.generatedLine !== Un; )
          bt += ";", Un++;
      else if (Ds > 0) {
        if (!Qa.compareByGeneratedPositionsInflated(la, qo[Ds - 1])) continue;
        bt += ",";
      }
      bt += qi.encode(la.generatedColumn - oi), oi = la.generatedColumn, la.source != null && (rs = this._sources.indexOf(la.source), bt += qi.encode(rs - mi), mi = rs, bt += qi.encode(la.originalLine - 1 - In), In = la.originalLine - 1, bt += qi.encode(la.originalColumn - Qr), Qr = la.originalColumn, la.name != null && (Hn = this._names.indexOf(la.name), bt += qi.encode(Hn - Te), Te = Hn)), It += bt;
    }
    return It;
  }, gi.prototype._generateSourcesContent = function(oi, Un) {
    return oi.map(function(Qr) {
      if (!this._sourcesContents) return null;
      Un != null && (Qr = Qa.relative(Un, Qr));
      var In = Qa.toSetString(Qr);
      return Object.prototype.hasOwnProperty.call(this._sourcesContents, In) ? this._sourcesContents[In] : null;
    }, this);
  }, gi.prototype.toJSON = function() {
    var oi = {
      version: this._version,
      sources: this._sources.toArray(),
      names: this._names.toArray(),
      mappings: this._serializeMappings()
    };
    return this._file != null && (oi.file = this._file), this._sourceRoot != null && (oi.sourceRoot = this._sourceRoot), this._sourcesContents && (oi.sourcesContent = this._generateSourcesContent(oi.sources, oi.sourceRoot)), oi;
  }, gi.prototype.toString = function() {
    return JSON.stringify(this.toJSON());
  }, fo.SourceMapGenerator = gi;
})), ept = /* @__PURE__ */ Dy(((fo) => {
  fo.GREATEST_LOWER_BOUND = 1, fo.LEAST_UPPER_BOUND = 2;
  function qi(Qa, ao, Ha, gi, Ci, oi) {
    var Un = Math.floor((ao - Qa) / 2) + Qa, Qr = Ci(Ha, gi[Un], !0);
    return Qr === 0 ? Un : Qr > 0 ? ao - Un > 1 ? qi(Un, ao, Ha, gi, Ci, oi) : oi == fo.LEAST_UPPER_BOUND ? ao < gi.length ? ao : -1 : Un : Un - Qa > 1 ? qi(Qa, Un, Ha, gi, Ci, oi) : oi == fo.LEAST_UPPER_BOUND ? Un : Qa < 0 ? -1 : Qa;
  }
  fo.search = function(ao, Ha, gi, Ci) {
    if (Ha.length === 0) return -1;
    var oi = qi(-1, Ha.length, ao, Ha, gi, Ci || fo.GREATEST_LOWER_BOUND);
    if (oi < 0) return -1;
    for (; oi - 1 >= 0 && gi(Ha[oi], Ha[oi - 1], !0) === 0; )
      --oi;
    return oi;
  };
})), tpt = /* @__PURE__ */ Dy(((fo) => {
  function qi(Ha, gi, Ci) {
    var oi = Ha[gi];
    Ha[gi] = Ha[Ci], Ha[Ci] = oi;
  }
  function Qa(Ha, gi) {
    return Math.round(Ha + Math.random() * (gi - Ha));
  }
  function ao(Ha, gi, Ci, oi) {
    if (Ci < oi) {
      var Un = Qa(Ci, oi), Qr = Ci - 1;
      qi(Ha, Un, oi);
      for (var In = Ha[oi], Te = Ci; Te < oi; Te++) gi(Ha[Te], In) <= 0 && (Qr += 1, qi(Ha, Qr, Te));
      qi(Ha, Qr + 1, Te);
      var mi = Qr + 1;
      ao(Ha, gi, Ci, mi - 1), ao(Ha, gi, mi + 1, oi);
    }
  }
  fo.quickSort = function(Ha, gi) {
    ao(Ha, gi, 0, Ha.length - 1);
  };
})), rpt = /* @__PURE__ */ Dy(((fo) => {
  var qi = UR(), Qa = ept(), ao = V5e().ArraySet, Ha = U5e(), gi = tpt().quickSort;
  function Ci(In, Te) {
    var mi = In;
    return typeof In == "string" && (mi = qi.parseSourceMapInput(In)), mi.sections != null ? new Qr(mi, Te) : new oi(mi, Te);
  }
  Ci.fromSourceMap = function(In, Te) {
    return oi.fromSourceMap(In, Te);
  }, Ci.prototype._version = 3, Ci.prototype.__generatedMappings = null, Object.defineProperty(Ci.prototype, "_generatedMappings", {
    configurable: !0,
    enumerable: !0,
    get: function() {
      return this.__generatedMappings || this._parseMappings(this._mappings, this.sourceRoot), this.__generatedMappings;
    }
  }), Ci.prototype.__originalMappings = null, Object.defineProperty(Ci.prototype, "_originalMappings", {
    configurable: !0,
    enumerable: !0,
    get: function() {
      return this.__originalMappings || this._parseMappings(this._mappings, this.sourceRoot), this.__originalMappings;
    }
  }), Ci.prototype._charIsMappingSeparator = function(Te, mi) {
    var It = Te.charAt(mi);
    return It === ";" || It === ",";
  }, Ci.prototype._parseMappings = function(Te, mi) {
    throw new Error("Subclasses must implement _parseMappings");
  }, Ci.GENERATED_ORDER = 1, Ci.ORIGINAL_ORDER = 2, Ci.GREATEST_LOWER_BOUND = 1, Ci.LEAST_UPPER_BOUND = 2, Ci.prototype.eachMapping = function(Te, mi, It) {
    var bt = mi || null, la = It || Ci.GENERATED_ORDER, Hn;
    switch (la) {
      case Ci.GENERATED_ORDER:
        Hn = this._generatedMappings;
        break;
      case Ci.ORIGINAL_ORDER:
        Hn = this._originalMappings;
        break;
      default:
        throw new Error("Unknown order of iteration.");
    }
    var rs = this.sourceRoot;
    Hn.map(function(qo) {
      var Ds = qo.source === null ? null : this._sources.at(qo.source);
      return Ds = qi.computeSourceURL(rs, Ds, this._sourceMapURL), {
        source: Ds,
        generatedLine: qo.generatedLine,
        generatedColumn: qo.generatedColumn,
        originalLine: qo.originalLine,
        originalColumn: qo.originalColumn,
        name: qo.name === null ? null : this._names.at(qo.name)
      };
    }, this).forEach(Te, bt);
  }, Ci.prototype.allGeneratedPositionsFor = function(Te) {
    var mi = qi.getArg(Te, "line"), It = {
      source: qi.getArg(Te, "source"),
      originalLine: mi,
      originalColumn: qi.getArg(Te, "column", 0)
    };
    if (It.source = this._findSourceIndex(It.source), It.source < 0) return [];
    var bt = [], la = this._findMapping(It, this._originalMappings, "originalLine", "originalColumn", qi.compareByOriginalPositions, Qa.LEAST_UPPER_BOUND);
    if (la >= 0) {
      var Hn = this._originalMappings[la];
      if (Te.column === void 0)
        for (var rs = Hn.originalLine; Hn && Hn.originalLine === rs; )
          bt.push({
            line: qi.getArg(Hn, "generatedLine", null),
            column: qi.getArg(Hn, "generatedColumn", null),
            lastColumn: qi.getArg(Hn, "lastGeneratedColumn", null)
          }), Hn = this._originalMappings[++la];
      else
        for (var qo = Hn.originalColumn; Hn && Hn.originalLine === mi && Hn.originalColumn == qo; )
          bt.push({
            line: qi.getArg(Hn, "generatedLine", null),
            column: qi.getArg(Hn, "generatedColumn", null),
            lastColumn: qi.getArg(Hn, "lastGeneratedColumn", null)
          }), Hn = this._originalMappings[++la];
    }
    return bt;
  }, fo.SourceMapConsumer = Ci;
  function oi(In, Te) {
    var mi = In;
    typeof In == "string" && (mi = qi.parseSourceMapInput(In));
    var It = qi.getArg(mi, "version"), bt = qi.getArg(mi, "sources"), la = qi.getArg(mi, "names", []), Hn = qi.getArg(mi, "sourceRoot", null), rs = qi.getArg(mi, "sourcesContent", null), qo = qi.getArg(mi, "mappings"), Ds = qi.getArg(mi, "file", null);
    if (It != this._version) throw new Error("Unsupported version: " + It);
    Hn && (Hn = qi.normalize(Hn)), bt = bt.map(String).map(qi.normalize).map(function(Jn) {
      return Hn && qi.isAbsolute(Hn) && qi.isAbsolute(Jn) ? qi.relative(Hn, Jn) : Jn;
    }), this._names = ao.fromArray(la.map(String), !0), this._sources = ao.fromArray(bt, !0), this._absoluteSources = this._sources.toArray().map(function(Jn) {
      return qi.computeSourceURL(Hn, Jn, Te);
    }), this.sourceRoot = Hn, this.sourcesContent = rs, this._mappings = qo, this._sourceMapURL = Te, this.file = Ds;
  }
  oi.prototype = Object.create(Ci.prototype), oi.prototype.consumer = Ci, oi.prototype._findSourceIndex = function(In) {
    var Te = In;
    if (this.sourceRoot != null && (Te = qi.relative(this.sourceRoot, Te)), this._sources.has(Te)) return this._sources.indexOf(Te);
    var mi;
    for (mi = 0; mi < this._absoluteSources.length; ++mi) if (this._absoluteSources[mi] == In) return mi;
    return -1;
  }, oi.fromSourceMap = function(Te, mi) {
    var It = Object.create(oi.prototype), bt = It._names = ao.fromArray(Te._names.toArray(), !0), la = It._sources = ao.fromArray(Te._sources.toArray(), !0);
    It.sourceRoot = Te._sourceRoot, It.sourcesContent = Te._generateSourcesContent(It._sources.toArray(), It.sourceRoot), It.file = Te._file, It._sourceMapURL = mi, It._absoluteSources = It._sources.toArray().map(function(Ya) {
      return qi.computeSourceURL(It.sourceRoot, Ya, mi);
    });
    for (var Hn = Te._mappings.toArray().slice(), rs = It.__generatedMappings = [], qo = It.__originalMappings = [], Ds = 0, Jn = Hn.length; Ds < Jn; Ds++) {
      var hr = Hn[Ds], xr = new Un();
      xr.generatedLine = hr.generatedLine, xr.generatedColumn = hr.generatedColumn, hr.source && (xr.source = la.indexOf(hr.source), xr.originalLine = hr.originalLine, xr.originalColumn = hr.originalColumn, hr.name && (xr.name = bt.indexOf(hr.name)), qo.push(xr)), rs.push(xr);
    }
    return gi(It.__originalMappings, qi.compareByOriginalPositions), It;
  }, oi.prototype._version = 3, Object.defineProperty(oi.prototype, "sources", { get: function() {
    return this._absoluteSources.slice();
  } });
  function Un() {
    this.generatedLine = 0, this.generatedColumn = 0, this.source = null, this.originalLine = null, this.originalColumn = null, this.name = null;
  }
  oi.prototype._parseMappings = function(Te, mi) {
    for (var It = 1, bt = 0, la = 0, Hn = 0, rs = 0, qo = 0, Ds = Te.length, Jn = 0, hr = {}, xr = {}, Ya = [], qs = [], i_, Gi, Wu, Qf, dn; Jn < Ds; ) if (Te.charAt(Jn) === ";")
      It++, Jn++, bt = 0;
    else if (Te.charAt(Jn) === ",") Jn++;
    else {
      for (i_ = new Un(), i_.generatedLine = It, Qf = Jn; Qf < Ds && !this._charIsMappingSeparator(Te, Qf); Qf++) ;
      if (Gi = Te.slice(Jn, Qf), Wu = hr[Gi], Wu) Jn += Gi.length;
      else {
        for (Wu = []; Jn < Qf; )
          Ha.decode(Te, Jn, xr), dn = xr.value, Jn = xr.rest, Wu.push(dn);
        if (Wu.length === 2) throw new Error("Found a source, but no line and column");
        if (Wu.length === 3) throw new Error("Found a source and line, but no column");
        hr[Gi] = Wu;
      }
      i_.generatedColumn = bt + Wu[0], bt = i_.generatedColumn, Wu.length > 1 && (i_.source = rs + Wu[1], rs += Wu[1], i_.originalLine = la + Wu[2], la = i_.originalLine, i_.originalLine += 1, i_.originalColumn = Hn + Wu[3], Hn = i_.originalColumn, Wu.length > 4 && (i_.name = qo + Wu[4], qo += Wu[4])), qs.push(i_), typeof i_.originalLine == "number" && Ya.push(i_);
    }
    gi(qs, qi.compareByGeneratedPositionsDeflated), this.__generatedMappings = qs, gi(Ya, qi.compareByOriginalPositions), this.__originalMappings = Ya;
  }, oi.prototype._findMapping = function(Te, mi, It, bt, la, Hn) {
    if (Te[It] <= 0) throw new TypeError("Line must be greater than or equal to 1, got " + Te[It]);
    if (Te[bt] < 0) throw new TypeError("Column must be greater than or equal to 0, got " + Te[bt]);
    return Qa.search(Te, mi, la, Hn);
  }, oi.prototype.computeColumnSpans = function() {
    for (var Te = 0; Te < this._generatedMappings.length; ++Te) {
      var mi = this._generatedMappings[Te];
      if (Te + 1 < this._generatedMappings.length) {
        var It = this._generatedMappings[Te + 1];
        if (mi.generatedLine === It.generatedLine) {
          mi.lastGeneratedColumn = It.generatedColumn - 1;
          continue;
        }
      }
      mi.lastGeneratedColumn = 1 / 0;
    }
  }, oi.prototype.originalPositionFor = function(Te) {
    var mi = {
      generatedLine: qi.getArg(Te, "line"),
      generatedColumn: qi.getArg(Te, "column")
    }, It = this._findMapping(mi, this._generatedMappings, "generatedLine", "generatedColumn", qi.compareByGeneratedPositionsDeflated, qi.getArg(Te, "bias", Ci.GREATEST_LOWER_BOUND));
    if (It >= 0) {
      var bt = this._generatedMappings[It];
      if (bt.generatedLine === mi.generatedLine) {
        var la = qi.getArg(bt, "source", null);
        la !== null && (la = this._sources.at(la), la = qi.computeSourceURL(this.sourceRoot, la, this._sourceMapURL));
        var Hn = qi.getArg(bt, "name", null);
        return Hn !== null && (Hn = this._names.at(Hn)), {
          source: la,
          line: qi.getArg(bt, "originalLine", null),
          column: qi.getArg(bt, "originalColumn", null),
          name: Hn
        };
      }
    }
    return {
      source: null,
      line: null,
      column: null,
      name: null
    };
  }, oi.prototype.hasContentsOfAllSources = function() {
    return this.sourcesContent ? this.sourcesContent.length >= this._sources.size() && !this.sourcesContent.some(function(Te) {
      return Te == null;
    }) : !1;
  }, oi.prototype.sourceContentFor = function(Te, mi) {
    if (!this.sourcesContent) return null;
    var It = this._findSourceIndex(Te);
    if (It >= 0) return this.sourcesContent[It];
    var bt = Te;
    this.sourceRoot != null && (bt = qi.relative(this.sourceRoot, bt));
    var la;
    if (this.sourceRoot != null && (la = qi.urlParse(this.sourceRoot))) {
      var Hn = bt.replace(/^file:\/\//, "");
      if (la.scheme == "file" && this._sources.has(Hn)) return this.sourcesContent[this._sources.indexOf(Hn)];
      if ((!la.path || la.path == "/") && this._sources.has("/" + bt)) return this.sourcesContent[this._sources.indexOf("/" + bt)];
    }
    if (mi) return null;
    throw new Error('"' + bt + '" is not in the SourceMap.');
  }, oi.prototype.generatedPositionFor = function(Te) {
    var mi = qi.getArg(Te, "source");
    if (mi = this._findSourceIndex(mi), mi < 0) return {
      line: null,
      column: null,
      lastColumn: null
    };
    var It = {
      source: mi,
      originalLine: qi.getArg(Te, "line"),
      originalColumn: qi.getArg(Te, "column")
    }, bt = this._findMapping(It, this._originalMappings, "originalLine", "originalColumn", qi.compareByOriginalPositions, qi.getArg(Te, "bias", Ci.GREATEST_LOWER_BOUND));
    if (bt >= 0) {
      var la = this._originalMappings[bt];
      if (la.source === It.source) return {
        line: qi.getArg(la, "generatedLine", null),
        column: qi.getArg(la, "generatedColumn", null),
        lastColumn: qi.getArg(la, "lastGeneratedColumn", null)
      };
    }
    return {
      line: null,
      column: null,
      lastColumn: null
    };
  }, fo.BasicSourceMapConsumer = oi;
  function Qr(In, Te) {
    var mi = In;
    typeof In == "string" && (mi = qi.parseSourceMapInput(In));
    var It = qi.getArg(mi, "version"), bt = qi.getArg(mi, "sections");
    if (It != this._version) throw new Error("Unsupported version: " + It);
    this._sources = new ao(), this._names = new ao();
    var la = {
      line: -1,
      column: 0
    };
    this._sections = bt.map(function(Hn) {
      if (Hn.url) throw new Error("Support for url field in sections not implemented.");
      var rs = qi.getArg(Hn, "offset"), qo = qi.getArg(rs, "line"), Ds = qi.getArg(rs, "column");
      if (qo < la.line || qo === la.line && Ds < la.column) throw new Error("Section offsets must be ordered and non-overlapping.");
      return la = rs, {
        generatedOffset: {
          generatedLine: qo + 1,
          generatedColumn: Ds + 1
        },
        consumer: new Ci(qi.getArg(Hn, "map"), Te)
      };
    });
  }
  Qr.prototype = Object.create(Ci.prototype), Qr.prototype.constructor = Ci, Qr.prototype._version = 3, Object.defineProperty(Qr.prototype, "sources", { get: function() {
    for (var In = [], Te = 0; Te < this._sections.length; Te++) for (var mi = 0; mi < this._sections[Te].consumer.sources.length; mi++) In.push(this._sections[Te].consumer.sources[mi]);
    return In;
  } }), Qr.prototype.originalPositionFor = function(Te) {
    var mi = {
      generatedLine: qi.getArg(Te, "line"),
      generatedColumn: qi.getArg(Te, "column")
    }, It = Qa.search(mi, this._sections, function(la, Hn) {
      var rs = la.generatedLine - Hn.generatedOffset.generatedLine;
      return rs || la.generatedColumn - Hn.generatedOffset.generatedColumn;
    }), bt = this._sections[It];
    return bt ? bt.consumer.originalPositionFor({
      line: mi.generatedLine - (bt.generatedOffset.generatedLine - 1),
      column: mi.generatedColumn - (bt.generatedOffset.generatedLine === mi.generatedLine ? bt.generatedOffset.generatedColumn - 1 : 0),
      bias: Te.bias
    }) : {
      source: null,
      line: null,
      column: null,
      name: null
    };
  }, Qr.prototype.hasContentsOfAllSources = function() {
    return this._sections.every(function(Te) {
      return Te.consumer.hasContentsOfAllSources();
    });
  }, Qr.prototype.sourceContentFor = function(Te, mi) {
    for (var It = 0; It < this._sections.length; It++) {
      var bt = this._sections[It].consumer.sourceContentFor(Te, !0);
      if (bt) return bt;
    }
    if (mi) return null;
    throw new Error('"' + Te + '" is not in the SourceMap.');
  }, Qr.prototype.generatedPositionFor = function(Te) {
    for (var mi = 0; mi < this._sections.length; mi++) {
      var It = this._sections[mi];
      if (It.consumer._findSourceIndex(qi.getArg(Te, "source")) !== -1) {
        var bt = It.consumer.generatedPositionFor(Te);
        if (bt) return {
          line: bt.line + (It.generatedOffset.generatedLine - 1),
          column: bt.column + (It.generatedOffset.generatedLine === bt.line ? It.generatedOffset.generatedColumn - 1 : 0)
        };
      }
    }
    return {
      line: null,
      column: null
    };
  }, Qr.prototype._parseMappings = function(Te, mi) {
    this.__generatedMappings = [], this.__originalMappings = [];
    for (var It = 0; It < this._sections.length; It++)
      for (var bt = this._sections[It], la = bt.consumer._generatedMappings, Hn = 0; Hn < la.length; Hn++) {
        var rs = la[Hn], qo = bt.consumer._sources.at(rs.source);
        qo = qi.computeSourceURL(bt.consumer.sourceRoot, qo, this._sourceMapURL), this._sources.add(qo), qo = this._sources.indexOf(qo);
        var Ds = null;
        rs.name && (Ds = bt.consumer._names.at(rs.name), this._names.add(Ds), Ds = this._names.indexOf(Ds));
        var Jn = {
          source: qo,
          generatedLine: rs.generatedLine + (bt.generatedOffset.generatedLine - 1),
          generatedColumn: rs.generatedColumn + (bt.generatedOffset.generatedLine === rs.generatedLine ? bt.generatedOffset.generatedColumn - 1 : 0),
          originalLine: rs.originalLine,
          originalColumn: rs.originalColumn,
          name: Ds
        };
        this.__generatedMappings.push(Jn), typeof Jn.originalLine == "number" && this.__originalMappings.push(Jn);
      }
    gi(this.__generatedMappings, qi.compareByGeneratedPositionsDeflated), gi(this.__originalMappings, qi.compareByOriginalPositions);
  }, fo.IndexedSourceMapConsumer = Qr;
})), npt = /* @__PURE__ */ Dy(((fo) => {
  var qi = q5e().SourceMapGenerator, Qa = UR(), ao = /(\r?\n)/, Ha = 10, gi = "$$$isSourceNode$$$";
  function Ci(oi, Un, Qr, In, Te) {
    this.children = [], this.sourceContents = {}, this.line = oi ?? null, this.column = Un ?? null, this.source = Qr ?? null, this.name = Te ?? null, this[gi] = !0, In != null && this.add(In);
  }
  Ci.fromStringWithSourceMap = function(Un, Qr, In) {
    var Te = new Ci(), mi = Un.split(ao), It = 0, bt = function() {
      return Ds() + (Ds() || "");
      function Ds() {
        return It < mi.length ? mi[It++] : void 0;
      }
    }, la = 1, Hn = 0, rs = null;
    return Qr.eachMapping(function(Ds) {
      if (rs !== null) if (la < Ds.generatedLine)
        qo(rs, bt()), la++, Hn = 0;
      else {
        var Jn = mi[It] || "", hr = Jn.substr(0, Ds.generatedColumn - Hn);
        mi[It] = Jn.substr(Ds.generatedColumn - Hn), Hn = Ds.generatedColumn, qo(rs, hr), rs = Ds;
        return;
      }
      for (; la < Ds.generatedLine; )
        Te.add(bt()), la++;
      if (Hn < Ds.generatedColumn) {
        var Jn = mi[It] || "";
        Te.add(Jn.substr(0, Ds.generatedColumn)), mi[It] = Jn.substr(Ds.generatedColumn), Hn = Ds.generatedColumn;
      }
      rs = Ds;
    }, this), It < mi.length && (rs && qo(rs, bt()), Te.add(mi.splice(It).join(""))), Qr.sources.forEach(function(Ds) {
      var Jn = Qr.sourceContentFor(Ds);
      Jn != null && (In != null && (Ds = Qa.join(In, Ds)), Te.setSourceContent(Ds, Jn));
    }), Te;
    function qo(Ds, Jn) {
      if (Ds === null || Ds.source === void 0) Te.add(Jn);
      else {
        var hr = In ? Qa.join(In, Ds.source) : Ds.source;
        Te.add(new Ci(Ds.originalLine, Ds.originalColumn, hr, Jn, Ds.name));
      }
    }
  }, Ci.prototype.add = function(Un) {
    if (Array.isArray(Un)) Un.forEach(function(Qr) {
      this.add(Qr);
    }, this);
    else if (Un[gi] || typeof Un == "string")
      Un && this.children.push(Un);
    else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + Un);
    return this;
  }, Ci.prototype.prepend = function(Un) {
    if (Array.isArray(Un)) for (var Qr = Un.length - 1; Qr >= 0; Qr--) this.prepend(Un[Qr]);
    else if (Un[gi] || typeof Un == "string") this.children.unshift(Un);
    else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + Un);
    return this;
  }, Ci.prototype.walk = function(Un) {
    for (var Qr, In = 0, Te = this.children.length; In < Te; In++)
      Qr = this.children[In], Qr[gi] ? Qr.walk(Un) : Qr !== "" && Un(Qr, {
        source: this.source,
        line: this.line,
        column: this.column,
        name: this.name
      });
  }, Ci.prototype.join = function(Un) {
    var Qr, In, Te = this.children.length;
    if (Te > 0) {
      for (Qr = [], In = 0; In < Te - 1; In++)
        Qr.push(this.children[In]), Qr.push(Un);
      Qr.push(this.children[In]), this.children = Qr;
    }
    return this;
  }, Ci.prototype.replaceRight = function(Un, Qr) {
    var In = this.children[this.children.length - 1];
    return In[gi] ? In.replaceRight(Un, Qr) : typeof In == "string" ? this.children[this.children.length - 1] = In.replace(Un, Qr) : this.children.push("".replace(Un, Qr)), this;
  }, Ci.prototype.setSourceContent = function(Un, Qr) {
    this.sourceContents[Qa.toSetString(Un)] = Qr;
  }, Ci.prototype.walkSourceContents = function(Un) {
    for (var Qr = 0, In = this.children.length; Qr < In; Qr++) this.children[Qr][gi] && this.children[Qr].walkSourceContents(Un);
    for (var Te = Object.keys(this.sourceContents), Qr = 0, In = Te.length; Qr < In; Qr++) Un(Qa.fromSetString(Te[Qr]), this.sourceContents[Te[Qr]]);
  }, Ci.prototype.toString = function() {
    var Un = "";
    return this.walk(function(Qr) {
      Un += Qr;
    }), Un;
  }, Ci.prototype.toStringWithSourceMap = function(Un) {
    var Qr = {
      code: "",
      line: 1,
      column: 0
    }, In = new qi(Un), Te = !1, mi = null, It = null, bt = null, la = null;
    return this.walk(function(Hn, rs) {
      Qr.code += Hn, rs.source !== null && rs.line !== null && rs.column !== null ? ((mi !== rs.source || It !== rs.line || bt !== rs.column || la !== rs.name) && In.addMapping({
        source: rs.source,
        original: {
          line: rs.line,
          column: rs.column
        },
        generated: {
          line: Qr.line,
          column: Qr.column
        },
        name: rs.name
      }), mi = rs.source, It = rs.line, bt = rs.column, la = rs.name, Te = !0) : Te && (In.addMapping({ generated: {
        line: Qr.line,
        column: Qr.column
      } }), mi = null, Te = !1);
      for (var qo = 0, Ds = Hn.length; qo < Ds; qo++) Hn.charCodeAt(qo) === Ha ? (Qr.line++, Qr.column = 0, qo + 1 === Ds ? (mi = null, Te = !1) : Te && In.addMapping({
        source: rs.source,
        original: {
          line: rs.line,
          column: rs.column
        },
        generated: {
          line: Qr.line,
          column: Qr.column
        },
        name: rs.name
      })) : Qr.column++;
    }), this.walkSourceContents(function(Hn, rs) {
      In.setSourceContent(Hn, rs);
    }), {
      code: Qr.code,
      map: In
    };
  }, fo.SourceNode = Ci;
})), ipt = /* @__PURE__ */ Dy(((fo) => {
  fo.SourceMapGenerator = q5e().SourceMapGenerator, fo.SourceMapConsumer = rpt().SourceMapConsumer, fo.SourceNode = npt().SourceNode;
})), apt = /* @__PURE__ */ Dy(((fo, qi) => {
  var Qa = Object.prototype.toString, ao = typeof Buffer < "u" && typeof Buffer.alloc == "function" && typeof Buffer.allocUnsafe == "function" && typeof Buffer.from == "function";
  function Ha(Un) {
    return Qa.call(Un).slice(8, -1) === "ArrayBuffer";
  }
  function gi(Un, Qr, In) {
    Qr >>>= 0;
    var Te = Un.byteLength - Qr;
    if (Te < 0) throw new RangeError("'offset' is out of bounds");
    if (In === void 0) In = Te;
    else if (In >>>= 0, In > Te) throw new RangeError("'length' is out of bounds");
    return ao ? Buffer.from(Un.slice(Qr, Qr + In)) : new Buffer(new Uint8Array(Un.slice(Qr, Qr + In)));
  }
  function Ci(Un, Qr) {
    if ((typeof Qr != "string" || Qr === "") && (Qr = "utf8"), !Buffer.isEncoding(Qr)) throw new TypeError('"encoding" must be a valid string encoding');
    return ao ? Buffer.from(Un, Qr) : new Buffer(Un, Qr);
  }
  function oi(Un, Qr, In) {
    if (typeof Un == "number") throw new TypeError('"value" argument must not be a number');
    return Ha(Un) ? gi(Un, Qr, In) : typeof Un == "string" ? Ci(Un, Qr) : ao ? Buffer.from(Un) : new Buffer(Un);
  }
  qi.exports = oi;
})), spt = /* @__PURE__ */ Dy(((fo, qi) => {
  var Qa = ipt().SourceMapConsumer, ao = eS("path"), Ha;
  try {
    Ha = eS("fs"), (!Ha.existsSync || !Ha.readFileSync) && (Ha = null);
  } catch {
  }
  var gi = apt();
  function Ci(wi, pa) {
    return wi.require(pa);
  }
  var oi = !1, Un = !1, Qr = !1, In = "auto", Te = {}, mi = {}, It = /^data:application\/json[^,]+base64,/, bt = [], la = [];
  function Hn() {
    return In === "browser" ? !0 : In === "node" ? !1 : typeof window < "u" && typeof XMLHttpRequest == "function" && !(window.require && window.module && window.process && window.process.type === "renderer");
  }
  function rs() {
    return typeof process == "object" && process !== null && typeof process.on == "function";
  }
  function qo() {
    return typeof process == "object" && process !== null ? process.version : "";
  }
  function Ds() {
    if (typeof process == "object" && process !== null) return process.stderr;
  }
  function Jn(wi) {
    if (typeof process == "object" && process !== null && typeof process.exit == "function") return process.exit(wi);
  }
  function hr(wi) {
    return function(pa) {
      for (var Rs = 0; Rs < wi.length; Rs++) {
        var kl = wi[Rs](pa);
        if (kl) return kl;
      }
      return null;
    };
  }
  var xr = hr(bt);
  bt.push(function(wi) {
    if (wi = wi.trim(), /^file:/.test(wi) && (wi = wi.replace(/file:\/\/\/(\w:)?/, function(kl, Rn) {
      return Rn ? "" : "/";
    })), wi in Te) return Te[wi];
    var pa = "";
    try {
      if (Ha)
        Ha.existsSync(wi) && (pa = Ha.readFileSync(wi, "utf8"));
      else {
        var Rs = new XMLHttpRequest();
        Rs.open("GET", wi, !1), Rs.send(null), Rs.readyState === 4 && Rs.status === 200 && (pa = Rs.responseText);
      }
    } catch {
    }
    return Te[wi] = pa;
  });
  function Ya(wi, pa) {
    if (!wi) return pa;
    var Rs = ao.dirname(wi), kl = /^\w+:\/\/[^\/]*/.exec(Rs), Rn = kl ? kl[0] : "", Go = Rs.slice(Rn.length);
    return Rn && /^\/\w\:/.test(Go) ? (Rn += "/", Rn + ao.resolve(Rs.slice(Rn.length), pa).replace(/\\/g, "/")) : Rn + ao.resolve(Rs.slice(Rn.length), pa);
  }
  function qs(wi) {
    var pa;
    if (Hn()) try {
      var Rs = new XMLHttpRequest();
      Rs.open("GET", wi, !1), Rs.send(null), pa = Rs.readyState === 4 ? Rs.responseText : null;
      var kl = Rs.getResponseHeader("SourceMap") || Rs.getResponseHeader("X-SourceMap");
      if (kl) return kl;
    } catch {
    }
    pa = xr(wi);
    for (var Rn = /(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/gm, Go, v_; v_ = Rn.exec(pa); ) Go = v_;
    return Go ? Go[1] : null;
  }
  var i_ = hr(la);
  la.push(function(wi) {
    var pa = qs(wi);
    if (!pa) return null;
    var Rs;
    return It.test(pa) ? (Rs = gi(pa.slice(pa.indexOf(",") + 1), "base64").toString(), pa = wi) : (pa = Ya(wi, pa), Rs = xr(pa)), Rs ? {
      url: pa,
      map: Rs
    } : null;
  });
  function Gi(wi) {
    var pa = mi[wi.source];
    if (!pa) {
      var Rs = i_(wi.source);
      Rs ? (pa = mi[wi.source] = {
        url: Rs.url,
        map: new Qa(Rs.map)
      }, pa.map.sourcesContent && pa.map.sources.forEach(function(Rn, Go) {
        var v_ = pa.map.sourcesContent[Go];
        if (v_) {
          var b_ = Ya(pa.url, Rn);
          Te[b_] = v_;
        }
      })) : pa = mi[wi.source] = {
        url: null,
        map: null
      };
    }
    if (pa && pa.map && typeof pa.map.originalPositionFor == "function") {
      var kl = pa.map.originalPositionFor(wi);
      if (kl.source !== null)
        return kl.source = Ya(pa.url, kl.source), kl;
    }
    return wi;
  }
  function Wu(wi) {
    var pa = /^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(wi);
    if (pa) {
      var Rs = Gi({
        source: pa[2],
        line: +pa[3],
        column: pa[4] - 1
      });
      return "eval at " + pa[1] + " (" + Rs.source + ":" + Rs.line + ":" + (Rs.column + 1) + ")";
    }
    return pa = /^eval at ([^(]+) \((.+)\)$/.exec(wi), pa ? "eval at " + pa[1] + " (" + Wu(pa[2]) + ")" : wi;
  }
  function Qf() {
    var wi, pa = "";
    if (this.isNative()) pa = "native";
    else {
      wi = this.getScriptNameOrSourceURL(), !wi && this.isEval() && (pa = this.getEvalOrigin(), pa += ", "), wi ? pa += wi : pa += "<anonymous>";
      var Rs = this.getLineNumber();
      if (Rs != null) {
        pa += ":" + Rs;
        var kl = this.getColumnNumber();
        kl && (pa += ":" + kl);
      }
    }
    var Rn = "", Go = this.getFunctionName(), v_ = !0, b_ = this.isConstructor();
    if (this.isToplevel() || b_)
      b_ ? Rn += "new " + (Go || "<anonymous>") : Go ? Rn += Go : (Rn += pa, v_ = !1);
    else {
      var Fh = this.getTypeName();
      Fh === "[object Object]" && (Fh = "null");
      var tS = this.getMethodName();
      Go ? (Fh && Go.indexOf(Fh) != 0 && (Rn += Fh + "."), Rn += Go, tS && Go.indexOf("." + tS) != Go.length - tS.length - 1 && (Rn += " [as " + tS + "]")) : Rn += Fh + "." + (tS || "<anonymous>");
    }
    return v_ && (Rn += " (" + pa + ")"), Rn;
  }
  function dn(wi) {
    var pa = {};
    return Object.getOwnPropertyNames(Object.getPrototypeOf(wi)).forEach(function(Rs) {
      pa[Rs] = /^(?:is|get)/.test(Rs) ? function() {
        return wi[Rs].call(wi);
      } : wi[Rs];
    }), pa.toString = Qf, pa;
  }
  function T4(wi, pa) {
    if (pa === void 0 && (pa = {
      nextPosition: null,
      curPosition: null
    }), wi.isNative())
      return pa.curPosition = null, wi;
    var Rs = wi.getFileName() || wi.getScriptNameOrSourceURL();
    if (Rs) {
      var kl = wi.getLineNumber(), Rn = wi.getColumnNumber() - 1, Go = /^v(10\.1[6-9]|10\.[2-9][0-9]|10\.[0-9]{3,}|1[2-9]\d*|[2-9]\d|\d{3,}|11\.11)/.test(qo()) ? 0 : 62;
      kl === 1 && Rn > Go && !Hn() && !wi.isEval() && (Rn -= Go);
      var v_ = Gi({
        source: Rs,
        line: kl,
        column: Rn
      });
      pa.curPosition = v_, wi = dn(wi);
      var b_ = wi.getFunctionName;
      return wi.getFunctionName = function() {
        return pa.nextPosition == null ? b_() : pa.nextPosition.name || b_();
      }, wi.getFileName = function() {
        return v_.source;
      }, wi.getLineNumber = function() {
        return v_.line;
      }, wi.getColumnNumber = function() {
        return v_.column + 1;
      }, wi.getScriptNameOrSourceURL = function() {
        return v_.source;
      }, wi;
    }
    var Fh = wi.isEval() && wi.getEvalOrigin();
    return Fh && (Fh = Wu(Fh), wi = dn(wi), wi.getEvalOrigin = function() {
      return Fh;
    }), wi;
  }
  function Yf(wi, pa) {
    Qr && (Te = {}, mi = {});
    for (var Rs = wi.name || "Error", kl = wi.message || "", Rn = Rs + ": " + kl, Go = {
      nextPosition: null,
      curPosition: null
    }, v_ = [], b_ = pa.length - 1; b_ >= 0; b_--)
      v_.push(`
    at ` + T4(pa[b_], Go)), Go.nextPosition = Go.curPosition;
    return Go.curPosition = Go.nextPosition = null, Rn + v_.reverse().join("");
  }
  function or(wi) {
    var pa = /\n    at [^(]+ \((.*):(\d+):(\d+)\)/.exec(wi.stack);
    if (pa) {
      var Rs = pa[1], kl = +pa[2], Rn = +pa[3], Go = Te[Rs];
      if (!Go && Ha && Ha.existsSync(Rs)) try {
        Go = Ha.readFileSync(Rs, "utf8");
      } catch {
        Go = "";
      }
      if (Go) {
        var v_ = Go.split(/(?:\r\n|\r|\n)/)[kl - 1];
        if (v_) return Rs + ":" + kl + `
` + v_ + `
` + new Array(Rn).join(" ") + "^";
      }
    }
    return null;
  }
  function cx(wi) {
    var pa = or(wi), Rs = Ds();
    Rs && Rs._handle && Rs._handle.setBlocking && Rs._handle.setBlocking(!0), pa && (console.error(), console.error(pa)), console.error(wi.stack), Jn(1);
  }
  function el() {
    var wi = process.emit;
    process.emit = function(pa) {
      if (pa === "uncaughtException") {
        var Rs = arguments[1] && arguments[1].stack, kl = this.listeners(pa).length > 0;
        if (Rs && !kl) return cx(arguments[1]);
      }
      return wi.apply(this, arguments);
    };
  }
  var Rf = bt.slice(0), ks = la.slice(0);
  fo.wrapCallSite = T4, fo.getErrorSource = or, fo.mapSourcePosition = Gi, fo.retrieveSourceMap = i_, fo.install = function(wi) {
    if (wi = wi || {}, wi.environment && (In = wi.environment, [
      "node",
      "browser",
      "auto"
    ].indexOf(In) === -1))
      throw new Error("environment " + In + " was unknown. Available options are {auto, browser, node}");
    if (wi.retrieveFile && (wi.overrideRetrieveFile && (bt.length = 0), bt.unshift(wi.retrieveFile)), wi.retrieveSourceMap && (wi.overrideRetrieveSourceMap && (la.length = 0), la.unshift(wi.retrieveSourceMap)), wi.hookRequire && !Hn()) {
      var pa = Ci(qi, "module"), Rs = pa.prototype._compile;
      Rs.__sourceMapSupport || (pa.prototype._compile = function(Rn, Go) {
        return Te[Go] = Rn, mi[Go] = void 0, Rs.call(this, Rn, Go);
      }, pa.prototype._compile.__sourceMapSupport = !0);
    }
    if (Qr || (Qr = "emptyCacheBetweenOperations" in wi ? wi.emptyCacheBetweenOperations : !1), oi || (oi = !0, Error.prepareStackTrace = Yf), !Un) {
      var kl = "handleUncaughtExceptions" in wi ? wi.handleUncaughtExceptions : !0;
      try {
        Ci(qi, "worker_threads").isMainThread === !1 && (kl = !1);
      } catch {
      }
      kl && rs() && (Un = !0, el());
    }
  }, fo.resetRetrieveHandlers = function() {
    bt.length = 0, la.length = 0, bt = Rf.slice(0), la = ks.slice(0), i_ = hr(la), xr = hr(bt);
  };
})), lpt = /* @__PURE__ */ Dy(((fo, qi) => {
  var Qa = {};
  ((ao) => {
    "use strict";
    var Ha = Object.defineProperty, gi = (e, t) => {
      for (var n in t) Ha(e, n, {
        get: t[n],
        enumerable: !0
      });
    }, Ci = (e) => e, oi = {};
    gi(oi, {
      ANONYMOUS: () => Tq,
      AccessFlags: () => oY,
      AssertionLevel: () => hQ,
      AssignmentDeclarationKind: () => gY,
      AssignmentKind: () => WK,
      Associativity: () => XK,
      BreakpointResolver: () => SG,
      BuilderFileEmit: () => Uie,
      BuilderProgramKind: () => Yie,
      BuilderState: () => Qd,
      CallHierarchy: () => Bk,
      CharacterCodes: () => DY,
      CheckFlags: () => nY,
      CheckMode: () => GW,
      ClassificationType: () => OV,
      ClassificationTypeNames: () => Kae,
      CommentDirectiveType: () => WQ,
      Comparison: () => In,
      CompletionInfoFlags: () => Gae,
      CompletionTriggerKind: () => NV,
      Completions: () => Vk,
      ContainerFlags: () => kne,
      ContextFlags: () => XQ,
      Debug: () => E,
      DiagnosticCategory: () => w7,
      Diagnostics: () => p,
      DocumentHighlights: () => xL,
      ElementFlags: () => sY,
      EmitFlags: () => Dj,
      EmitHint: () => NY,
      EmitOnly: () => VQ,
      EndOfLineState: () => Xae,
      ExitStatus: () => qQ,
      ExportKind: () => Use,
      Extension: () => wY,
      ExternalEmitHelpers: () => AY,
      FileIncludeKind: () => hj,
      FilePreprocessingDiagnosticsKind: () => UQ,
      FileSystemEntryKind: () => JY,
      FileWatcherEventKind: () => RY,
      FindAllReferences: () => Jo,
      FlattenLevel: () => qne,
      FlowFlags: () => D7,
      ForegroundColorEscapeSequences: () => Oie,
      FunctionFlags: () => $K,
      GeneratedIdentifierFlags: () => gj,
      GetLiteralTextFlags: () => iK,
      GoToDefinition: () => TE,
      HighlightSpanKind: () => Vae,
      IdentifierNameMap: () => Z6,
      ImportKind: () => Wse,
      ImportsNotUsedAsValues: () => TY,
      IndentStyle: () => qae,
      IndexFlags: () => cY,
      IndexKind: () => _Y,
      InferenceFlags: () => dY,
      InferencePriority: () => pY,
      InlayHintKind: () => Uae,
      InlayHints: () => _H,
      InternalEmitFlags: () => PY,
      InternalNodeBuilderFlags: () => YQ,
      InternalSymbolName: () => iY,
      IntersectionFlags: () => $Q,
      InvalidatedProjectKind: () => bae,
      JSDocParsingMode: () => MY,
      JsDoc: () => qv,
      JsTyping: () => oh,
      JsxEmit: () => SY,
      JsxFlags: () => jQ,
      JsxReferenceKind: () => lY,
      LanguageFeatureMinimumTarget: () => Rl,
      LanguageServiceMode: () => zae,
      LanguageVariant: () => CY,
      LexicalEnvironmentFlags: () => OY,
      ListFormat: () => FY,
      LogLevel: () => DQ,
      MapCode: () => fH,
      MemberOverrideStatus: () => GQ,
      ModifierFlags: () => dj,
      ModuleDetectionKind: () => hY,
      ModuleInstanceState: () => Tne,
      ModuleKind: () => mx,
      ModuleResolutionKind: () => WC,
      ModuleSpecifierEnding: () => Uee,
      NavigateTo: () => poe,
      NavigationBar: () => moe,
      NewLineKind: () => xY,
      NodeBuilderFlags: () => QQ,
      NodeCheckFlags: () => bj,
      NodeFactoryFlags: () => Tte,
      NodeFlags: () => pj,
      NodeResolutionFeatures: () => fne,
      ObjectFlags: () => Tj,
      OperationCanceledException: () => N4,
      OperatorPrecedence: () => QK,
      OrganizeImports: () => Gv,
      OrganizeImportsMode: () => AV,
      OuterExpressionKinds: () => IY,
      OutliningElementsCollector: () => dH,
      OutliningSpanKind: () => Hae,
      OutputFileType: () => $ae,
      PackageJsonAutoImportPreference: () => Jae,
      PackageJsonDependencyGroup: () => Bae,
      PatternMatchKind: () => zq,
      PollingInterval: () => wj,
      PollingWatchKind: () => bY,
      PragmaKindFlags: () => LY,
      PredicateSemantics: () => BQ,
      PreparePasteEdits: () => PH,
      PrivateIdentifierKind: () => Ite,
      ProcessLevel: () => Xne,
      ProgramUpdateLevel: () => Pie,
      QuotePreference: () => Sse,
      RegularExpressionFlags: () => JQ,
      RelationComparisonResult: () => mj,
      Rename: () => aM,
      ScriptElementKind: () => Yae,
      ScriptElementKindModifier: () => Zae,
      ScriptKind: () => kj,
      ScriptSnapshot: () => L9,
      ScriptTarget: () => kY,
      SemanticClassificationFormat: () => Wae,
      SemanticMeaning: () => ese,
      SemicolonPreference: () => IV,
      SignatureCheckMode: () => HW,
      SignatureFlags: () => xj,
      SignatureHelp: () => QI,
      SignatureInfo: () => Wie,
      SignatureKind: () => uY,
      SmartSelectionRange: () => hH,
      SnippetKind: () => Ej,
      StatisticType: () => Pae,
      StructureIsReused: () => yj,
      SymbolAccessibility: () => eY,
      SymbolDisplay: () => H0,
      SymbolDisplayPartKind: () => R9,
      SymbolFlags: () => vj,
      SymbolFormatFlags: () => KQ,
      SyntaxKind: () => fj,
      Ternary: () => mY,
      ThrottledCancellationToken: () => xce,
      TokenClass: () => Qae,
      TokenFlags: () => zQ,
      TransformFlags: () => Cj,
      TypeFacts: () => VW,
      TypeFlags: () => Sj,
      TypeFormatFlags: () => ZQ,
      TypeMapKind: () => fY,
      TypePredicateKind: () => tY,
      TypeReferenceSerializationKind: () => rY,
      UnionReduction: () => HQ,
      UpToDateStatusType: () => pae,
      VarianceFlags: () => aY,
      Version: () => Ld,
      VersionRange: () => E7,
      WatchDirectoryFlags: () => EY,
      WatchDirectoryKind: () => vY,
      WatchFileKind: () => yY,
      WatchLogLevel: () => Nie,
      WatchType: () => Xl,
      accessPrivateIdentifier: () => Vne,
      addEmitFlags: () => wm,
      addEmitHelper: () => ak,
      addEmitHelpers: () => th,
      addInternalEmitFlags: () => AS,
      addNodeFactoryPatcher: () => f0e,
      addObjectAllocatorPatcher: () => Qhe,
      addRange: () => Mn,
      addRelatedInfo: () => ts,
      addSyntheticLeadingComment: () => i1,
      addSyntheticTrailingComment: () => QD,
      addToSeen: () => Yp,
      advancedAsyncSuperHelper: () => qO,
      affectsDeclarationPathOptionDeclarations: () => Rre,
      affectsEmitOptionDeclarations: () => Mre,
      allKeysStartWithDot: () => JF,
      altDirectorySeparator: () => I7,
      and: () => x7,
      append: () => kr,
      appendIfUnique: () => Lh,
      arrayFrom: () => ma,
      arrayIsEqualTo: () => jf,
      arrayIsHomogeneous: () => Zee,
      arrayOf: () => pQ,
      arrayReverseIterator: () => qR,
      arrayToMap: () => jC,
      arrayToMultiMap: () => o3,
      arrayToNumericMap: () => mQ,
      assertType: () => Dge,
      assign: () => rS,
      asyncSuperHelper: () => VO,
      attachFileToDiagnostics: () => Xx,
      base64decode: () => hee,
      base64encode: () => gee,
      binarySearch: () => Lg,
      binarySearchKey: () => ux,
      bindSourceFile: () => Cne,
      breakIntoCharacterSpans: () => aoe,
      breakIntoWordSpans: () => soe,
      buildLinkParts: () => Pse,
      buildOpts: () => TN,
      buildOverload: () => Zwe,
      bundlerModuleNameResolver: () => pne,
      canBeConvertedToAsync: () => Hq,
      canHaveDecorators: () => e2,
      canHaveExportModifier: () => GA,
      canHaveFlowNode: () => Bx,
      canHaveIllegalDecorators: () => tW,
      canHaveIllegalModifiers: () => hre,
      canHaveIllegalType: () => j0e,
      canHaveIllegalTypeParameters: () => gre,
      canHaveJSDoc: () => dA,
      canHaveLocals: () => og,
      canHaveModifiers: () => vd,
      canHaveModuleSpecifier: () => jK,
      canHaveStatements: () => gte,
      canHaveSymbol: () => jd,
      canIncludeBindAndCheckDiagnostics: () => BD,
      canJsonReportNoInputFiles: () => wN,
      canProduceDiagnostics: () => jN,
      canUsePropertyAccess: () => az,
      canWatchAffectingLocation: () => aae,
      canWatchAtTypes: () => iae,
      canWatchDirectoryOrFile: () => HU,
      canWatchDirectoryOrFilePath: () => Lw,
      cartesianProduct: () => CQ,
      cast: () => ns,
      chainBundle: () => Xd,
      chainDiagnosticMessages: () => ba,
      changeAnyExtension: () => m3,
      changeCompilerHostLikeToUseCache: () => Nw,
      changeExtension: () => F0,
      changeFullExtension: () => L7,
      changesAffectModuleResolution: () => o5,
      changesAffectingProgramStructure: () => YZ,
      characterCodeToRegularExpressionFlag: () => Bj,
      childIsDecorated: () => aD,
      classElementOrClassElementParameterIsDecorated: () => JB,
      classHasClassThisAssignment: () => oU,
      classHasDeclaredOrExplicitlyAssignedName: () => cU,
      classHasExplicitlyAssignedName: () => e9,
      classOrConstructorParameterIsDecorated: () => w0,
      classicNameResolver: () => bne,
      classifier: () => Dce,
      cleanExtendedConfigCache: () => s9,
      clear: () => Yf,
      clearMap: () => K_,
      clearSharedExtendedConfigFileWatcher: () => SU,
      climbPastPropertyAccess: () => J9,
      clone: () => gQ,
      cloneCompilerOptions: () => ZV,
      closeFileWatcher: () => md,
      closeFileWatcherOf: () => Np,
      codefix: () => Zu,
      collapseTextChangeRangesAcrossMultipleVersions: () => lZ,
      collectExternalModuleInfo: () => nU,
      combine: () => lx,
      combinePaths: () => jn,
      commandLineOptionOfCustomType: () => Jre,
      commentPragmas: () => P7,
      commonOptionsWithBuild: () => vF,
      compact: () => a3,
      compareBooleans: () => tv,
      compareComparableValues: () => iS,
      compareDataObjects: () => FJ,
      compareDiagnostics: () => ND,
      compareEmitHelpers: () => Fte,
      compareNumberOfDirectorySeparators: () => UA,
      comparePaths: () => Rh,
      comparePathsCaseInsensitive: () => Yge,
      comparePathsCaseSensitive: () => Qge,
      comparePatternKeys: () => RW,
      compareProperties: () => SQ,
      compareStringsCaseInsensitive: () => l3,
      compareStringsCaseInsensitiveEslintCompatible: () => yQ,
      compareStringsCaseSensitive: () => Du,
      compareStringsCaseSensitiveUI: () => u3,
      compareTextSpans: () => S7,
      compareValues: () => Fo,
      compilerOptionsAffectDeclarationPath: () => Ree,
      compilerOptionsAffectEmit: () => Mee,
      compilerOptionsAffectSemanticDiagnostics: () => Lee,
      compilerOptionsDidYouMeanDiagnostics: () => xF,
      compilerOptionsIndicateEsModules: () => iq,
      computeCommonSourceDirectoryOfFilenames: () => EU,
      computeLineAndCharacterOfPosition: () => VC,
      computeLineOfPosition: () => M4,
      computeLineStarts: () => Sx,
      computePositionOfLineAndCharacter: () => B7,
      computeSignatureWithDiagnostics: () => zU,
      computeSuggestionDiagnostics: () => Vq,
      computedOptions: () => ID,
      concatenate: () => zi,
      concatenateDiagnosticMessageChains: () => Aee,
      consumesNodeCoreModules: () => dL,
      contains: () => Gi,
      containsIgnoredPath: () => WD,
      containsObjectRestOrSpread: () => yN,
      containsParseError: () => Ax,
      containsPath: () => vp,
      convertCompilerOptionsForTelemetry: () => tne,
      convertCompilerOptionsFromJson: () => Hye,
      convertJsonOption: () => VS,
      convertToBase64: () => mee,
      convertToJson: () => CN,
      convertToObject: () => Xre,
      convertToOptionsWithAbsolutePaths: () => DF,
      convertToRelativePath: () => F4,
      convertToTSConfig: () => bW,
      convertTypeAcquisitionFromJson: () => $ye,
      copyComments: () => KS,
      copyEntries: () => c5,
      copyLeadingComments: () => dE,
      copyProperties: () => ZR,
      copyTrailingAsLeadingComments: () => bI,
      copyTrailingComments: () => $w,
      couldStartTrivia: () => XY,
      countWhere: () => Qf,
      createAbstractBuilder: () => ebe,
      createAccessorPropertyBackingField: () => iW,
      createAccessorPropertyGetRedirector: () => Cre,
      createAccessorPropertySetRedirector: () => Ere,
      createBaseNodeFactory: () => hte,
      createBinaryExpressionTrampoline: () => pF,
      createBuilderProgram: () => WU,
      createBuilderProgramUsingIncrementalBuildInfo: () => tae,
      createBuilderStatusReporter: () => w9,
      createCacheableExportInfoMap: () => Oq,
      createCachedDirectoryStructureHost: () => i9,
      createClassifier: () => A2e,
      createCommentDirectivesMap: () => nK,
      createCompilerDiagnostic: () => nc,
      createCompilerDiagnosticForInvalidCustomType: () => zre,
      createCompilerDiagnosticFromMessageChain: () => _O,
      createCompilerHost: () => Iie,
      createCompilerHostFromProgramHost: () => cV,
      createCompilerHostWorker: () => o9,
      createDetachedDiagnostic: () => $x,
      createDiagnosticCollection: () => SD,
      createDiagnosticForFileFromMessageChain: () => FB,
      createDiagnosticForNode: () => Kr,
      createDiagnosticForNodeArray: () => n6,
      createDiagnosticForNodeArrayFromMessageChain: () => H3,
      createDiagnosticForNodeFromMessageChain: () => Gg,
      createDiagnosticForNodeInSourceFile: () => Sp,
      createDiagnosticForRange: () => gK,
      createDiagnosticMessageChainFromDiagnostic: () => mK,
      createDiagnosticReporter: () => Nk,
      createDocumentPositionMapper: () => Bne,
      createDocumentRegistry: () => $se,
      createDocumentRegistryInternal: () => jq,
      createEmitAndSemanticDiagnosticsBuilderProgram: () => GU,
      createEmitHelperFactory: () => Ote,
      createEmptyExports: () => uN,
      createEvaluator: () => cte,
      createExpressionForJsxElement: () => ure,
      createExpressionForJsxFragment: () => _re,
      createExpressionForObjectLiteralElementLike: () => fre,
      createExpressionForPropertyName: () => Xz,
      createExpressionFromEntityName: () => _N,
      createExternalHelpersImportDeclarationIfNeeded: () => Zz,
      createFileDiagnostic: () => wl,
      createFileDiagnosticFromMessageChain: () => y5,
      createFlowNode: () => sh,
      createForOfBindingStatement: () => $z,
      createFutureSourceFile: () => bL,
      createGetCanonicalFileName: () => pu,
      createGetIsolatedDeclarationErrors: () => yie,
      createGetSourceFile: () => DU,
      createGetSymbolAccessibilityDiagnosticForNode: () => Lv,
      createGetSymbolAccessibilityDiagnosticForNodeName: () => hie,
      createGetSymbolWalker: () => Ene,
      createIncrementalCompilerHost: () => D9,
      createIncrementalProgram: () => fae,
      createJsxFactoryExpression: () => Hz,
      createLanguageService: () => kce,
      createLanguageServiceSourceFile: () => jL,
      createMemberAccessForPropertyName: () => US,
      createModeAwareCache: () => H6,
      createModeAwareCacheKey: () => gw,
      createModeMismatchDetails: () => yB,
      createModuleNotFoundChain: () => u5,
      createModuleResolutionCache: () => $6,
      createModuleResolutionLoader: () => OU,
      createModuleResolutionLoaderUsingGlobalCache: () => lae,
      createModuleSpecifierResolutionHost: () => Bv,
      createMultiMap: () => Up,
      createNameResolver: () => uz,
      createNodeConverters: () => bte,
      createNodeFactory: () => YA,
      createOptionNameMap: () => SF,
      createOverload: () => NH,
      createPackageJsonImportFilter: () => mE,
      createPackageJsonInfo: () => Cq,
      createParenthesizerRules: () => yte,
      createPatternMatcher: () => Kse,
      createPrinter: () => g1,
      createPrinterWithDefaults: () => Die,
      createPrinterWithRemoveComments: () => i2,
      createPrinterWithRemoveCommentsNeverAsciiEscape: () => wie,
      createPrinterWithRemoveCommentsOmitTrailingSemicolon: () => bU,
      createProgram: () => QN,
      createProgramDiagnostics: () => Jie,
      createProgramHost: () => lV,
      createPropertyNameNodeForIdentifierOrLiteral: () => NO,
      createQueue: () => c3,
      createRange: () => bf,
      createRedirectedBuilderProgram: () => qU,
      createResolutionCache: () => XU,
      createRuntimeTypeSerializer: () => eie,
      createScanner: () => Bg,
      createSemanticDiagnosticsBuilderProgram: () => Kve,
      createSet: () => KR,
      createSolutionBuilder: () => hae,
      createSolutionBuilderHost: () => mae,
      createSolutionBuilderWithWatch: () => yae,
      createSolutionBuilderWithWatchHost: () => gae,
      createSortedArray: () => VR,
      createSourceFile: () => Sk,
      createSourceMapGenerator: () => Fne,
      createSourceMapSource: () => g0e,
      createSuperAccessVariableStatement: () => r9,
      createSymbolTable: () => Ka,
      createSymlinkCache: () => VJ,
      createSyntacticTypeNodeBuilder: () => Mae,
      createSystemWatchFunctions: () => zY,
      createTextChange: () => pI,
      createTextChangeFromStartLength: () => K9,
      createTextChangeRange: () => C3,
      createTextRangeFromNode: () => tq,
      createTextRangeFromSpan: () => Z9,
      createTextSpan: () => du,
      createTextSpanFromBounds: () => Vc,
      createTextSpanFromNode: () => P_,
      createTextSpanFromRange: () => V0,
      createTextSpanFromStringLiteralLikeContent: () => eq,
      createTextWriter: () => CA,
      createTokenRange: () => PJ,
      createTypeChecker: () => Ine,
      createTypeReferenceDirectiveResolutionCache: () => RF,
      createTypeReferenceResolutionLoader: () => u9,
      createWatchCompilerHost: () => ube,
      createWatchCompilerHostOfConfigFile: () => uV,
      createWatchCompilerHostOfFilesAndCompilerOptions: () => _V,
      createWatchFactory: () => oV,
      createWatchHost: () => sV,
      createWatchProgram: () => fV,
      createWatchStatusReporter: () => QU,
      createWriteFileMeasuringIO: () => wU,
      declarationNameToString: () => Do,
      decodeMappings: () => eU,
      decodedTextSpanIntersectsWith: () => k3,
      deduplicate: () => Z1,
      defaultHoverMaximumTruncationLength: () => XZ,
      defaultInitCompilerOptions: () => pye,
      defaultMaximumTruncationLength: () => Z4,
      diagnosticCategoryName: () => aS,
      diagnosticToString: () => l2,
      diagnosticsEqualityComparer: () => fO,
      directoryProbablyExists: () => zd,
      directorySeparator: () => Co,
      displayPart: () => tf,
      displayPartsToString: () => OI,
      disposeEmitNodes: () => Sz,
      documentSpansEqual: () => _q,
      dumpTracingLegend: () => RQ,
      elementAt: () => Py,
      elideNodes: () => kre,
      emitDetachedComments: () => aee,
      emitFiles: () => yU,
      emitFilesAndReportErrors: () => x9,
      emitFilesAndReportErrorsAndGetExitStatus: () => aV,
      emitModuleKindIsNonNodeESM: () => BA,
      emitNewLineBeforeLeadingCommentOfPosition: () => iee,
      emitResolverSkipsTypeChecking: () => hU,
      emitSkippedWithNoDiagnostics: () => MU,
      emptyArray: () => Te,
      emptyFileSystemEntries: () => ZJ,
      emptyMap: () => mi,
      emptyOptions: () => td,
      endsWith: () => Uo,
      ensurePathIsNonModuleName: () => sS,
      ensureScriptKind: () => TO,
      ensureTrailingDirectorySeparator: () => El,
      entityNameToString: () => mf,
      enumerateInsertsAndDeletes: () => C7,
      equalOwnProperties: () => dQ,
      equateStringsCaseInsensitive: () => ev,
      equateStringsCaseSensitive: () => nS,
      equateValues: () => S0,
      escapeJsxAttributeString: () => _J,
      escapeLeadingUnderscores: () => mc,
      escapeNonAsciiString: () => q5,
      escapeSnippetText: () => Vb,
      escapeString: () => dg,
      escapeTemplateSubstitution: () => lJ,
      evaluatorResult: () => Pl,
      every: () => hr,
      exclusivelyPrefixedNodeCoreModules: () => jO,
      executeCommandLine: () => Ube,
      expandPreOrPostfixIncrementOrDecrementExpression: () => cF,
      explainFiles: () => eV,
      explainIfFileIsRedirectAndImpliedFormat: () => tV,
      exportAssignmentIsAlias: () => yA,
      expressionResultIsUnused: () => ete,
      extend: () => YR,
      extensionFromPath: () => RD,
      extensionIsTS: () => DO,
      extensionsNotSupportingExtensionlessResolution: () => EO,
      externalHelpersModuleNameText: () => Vy,
      factory: () => A,
      fileExtensionIs: () => lc,
      fileExtensionIsOneOf: () => jc,
      fileIncludeReasonToDiagnostics: () => iV,
      fileShouldUseJavaScriptRequire: () => Iq,
      filter: () => dn,
      filterMutate: () => T4,
      filterSemanticDiagnostics: () => d9,
      find: () => xr,
      findAncestor: () => cr,
      findBestPatternMatch: () => aj,
      findChildOfKind: () => uo,
      findComputedPropertyNameCacheAssignment: () => dF,
      findConfigFile: () => kU,
      findConstructorDeclaration: () => XA,
      findContainingList: () => q9,
      findDiagnosticForNode: () => Bse,
      findFirstNonJsxWhitespaceToken: () => cse,
      findIndex: () => qs,
      findLast: () => Ya,
      findLastIndex: () => i_,
      findListItemInfo: () => ose,
      findModifier: () => _E,
      findNextToken: () => c2,
      findPackageJson: () => jse,
      findPackageJsons: () => kq,
      findPrecedingMatchingToken: () => Q9,
      findPrecedingToken: () => Tl,
      findSuperStatementIndexPath: () => QF,
      findTokenOnLeftOfPosition: () => zw,
      findUseStrictPrologue: () => Yz,
      first: () => js,
      firstDefined: () => Hn,
      firstDefinedIterator: () => rs,
      firstIterator: () => HR,
      firstOrOnly: () => wq,
      firstOrUndefined: () => ul,
      firstOrUndefinedIterator: () => b7,
      fixupCompilerOptions: () => Xq,
      flatMap: () => ks,
      flatMapIterator: () => pa,
      flatMapToMutable: () => wi,
      flatten: () => Rf,
      flattenCommaList: () => Dre,
      flattenDestructuringAssignment: () => $S,
      flattenDestructuringBinding: () => n2,
      flattenDiagnosticMessageText: () => Mm,
      forEach: () => bt,
      forEachAncestor: () => ZZ,
      forEachAncestorDirectory: () => L4,
      forEachAncestorDirectoryStoppingAtGlobalCache: () => hg,
      forEachChild: () => Fa,
      forEachChildRecursively: () => bk,
      forEachDynamicImportOrRequireCall: () => BO,
      forEachEmittedFile: () => pU,
      forEachEnclosingBlockScopeContainer: () => fK,
      forEachEntry: () => Dl,
      forEachExternalModuleToImportFrom: () => Lq,
      forEachImportClauseDeclaration: () => BK,
      forEachKey: () => Vg,
      forEachLeadingCommentRange: () => y3,
      forEachNameInAccessChainWalkingLeft: () => Cee,
      forEachNameOfDefaultExport: () => TL,
      forEachOptionsSyntaxByName: () => gz,
      forEachProjectReference: () => HD,
      forEachPropertyAssignment: () => s6,
      forEachResolvedProjectReference: () => dz,
      forEachReturnStatement: () => Hy,
      forEachRight: () => la,
      forEachTrailingCommentRange: () => v3,
      forEachTsConfigPropArray: () => Z3,
      forEachUnique: () => pq,
      forEachYieldExpression: () => RB,
      formatColorAndReset: () => a2,
      formatDiagnostic: () => PU,
      formatDiagnostics: () => Dve,
      formatDiagnosticsWithColorAndContext: () => Mie,
      formatGeneratedName: () => Av,
      formatGeneratedNamePart: () => U6,
      formatLocation: () => AU,
      formatMessage: () => Qx,
      formatStringFromArgs: () => Yg,
      formatting: () => dl,
      generateDjb2Hash: () => I4,
      generateTSConfig: () => Qre,
      getAdjustedReferenceLocation: () => GV,
      getAdjustedRenameLocation: () => H9,
      getAliasDeclarationFromName: () => ZB,
      getAllAccessorDeclarations: () => Bb,
      getAllDecoratorsOfClass: () => aU,
      getAllDecoratorsOfClassElement: () => ZF,
      getAllJSDocTags: () => G7,
      getAllJSDocTagsOfKind: () => bhe,
      getAllKeys: () => kge,
      getAllProjectOutputs: () => n9,
      getAllSuperTypeNodes: () => mD,
      getAllowImportingTsExtensions: () => Iee,
      getAllowJSCompilerOption: () => t1,
      getAllowSyntheticDefaultImports: () => Yx,
      getAlwaysStrict: () => OD,
      getAncestor: () => dv,
      getAnyExtensionFromPath: () => hx,
      getAreDeclarationMapsEnabled: () => pO,
      getAssignedExpandoInitializer: () => Ox,
      getAssignedName: () => U7,
      getAssignmentDeclarationKind: () => qc,
      getAssignmentDeclarationPropertyAccessKind: () => lA,
      getAssignmentTargetKind: () => Xy,
      getAutomaticTypeDirectiveNames: () => LF,
      getBaseFileName: () => nl,
      getBinaryOperatorPrecedence: () => TA,
      getBuildInfo: () => vU,
      getBuildInfoFileVersionMap: () => VU,
      getBuildInfoText: () => Cie,
      getBuildOrderFromAnyBuildOrder: () => eI,
      getBuilderCreationParameters: () => y9,
      getBuilderFileEmit: () => h1,
      getCanonicalDiagnostic: () => hK,
      getCheckFlags: () => gc,
      getClassExtendsHeritageElement: () => Mb,
      getClassLikeDeclarationOfSymbol: () => I0,
      getCombinedLocalAndExportSymbolFlags: () => v6,
      getCombinedModifierFlags: () => nv,
      getCombinedNodeFlags: () => x0,
      getCombinedNodeFlagsAlwaysIncludeJSDoc: () => qj,
      getCommentRange: () => Pm,
      getCommonSourceDirectory: () => Aw,
      getCommonSourceDirectoryOfConfig: () => XS,
      getCompilerOptionValue: () => gO,
      getComputedCommonSourceDirectory: () => kie,
      getConditions: () => f1,
      getConfigFileParsingDiagnostics: () => s2,
      getConstantValue: () => Cte,
      getContainerFlags: () => BW,
      getContainerNode: () => ZS,
      getContainingClass: () => nu,
      getContainingClassExcludingClassDecorators: () => E5,
      getContainingClassStaticBlock: () => DK,
      getContainingFunction: () => Kf,
      getContainingFunctionDeclaration: () => EK,
      getContainingFunctionOrClassStaticBlock: () => C5,
      getContainingNodeArray: () => tte,
      getContainingObjectLiteralElement: () => FI,
      getContextualTypeFromParent: () => cL,
      getContextualTypeFromParentOrAncestorTypeNode: () => G9,
      getDeclarationDiagnostics: () => vie,
      getDeclarationEmitExtensionForPath: () => $5,
      getDeclarationEmitOutputFilePath: () => eee,
      getDeclarationEmitOutputFilePathWorker: () => H5,
      getDeclarationFileExtension: () => gF,
      getDeclarationFromName: () => dD,
      getDeclarationModifierFlagsFromSymbol: () => kp,
      getDeclarationOfKind: () => Ho,
      getDeclarationsOfKind: () => QZ,
      getDeclaredExpandoInitializer: () => uD,
      getDecorators: () => My,
      getDefaultCompilerOptions: () => RL,
      getDefaultFormatCodeSettings: () => M9,
      getDefaultLibFileName: () => S3,
      getDefaultLibFilePath: () => Cce,
      getDefaultLikeExportInfo: () => SL,
      getDefaultLikeExportNameFromDeclaration: () => Pq,
      getDefaultResolutionModeForFileWorker: () => p9,
      getDiagnosticText: () => q_,
      getDiagnosticsWithinSpan: () => Jse,
      getDirectoryPath: () => Xn,
      getDirectoryToWatchFailedLookupLocation: () => $U,
      getDirectoryToWatchFailedLookupLocationFromTypeRoot: () => oae,
      getDocumentPositionMapper: () => Uq,
      getDocumentSpansEqualityComparer: () => fq,
      getESModuleInterop: () => Dm,
      getEditsForFileRename: () => Qse,
      getEffectiveBaseTypeNode: () => Jd,
      getEffectiveConstraintOfTypeParameter: () => $C,
      getEffectiveContainerForJSDocTemplateTag: () => j5,
      getEffectiveImplementsTypeNodes: () => f6,
      getEffectiveInitializer: () => sA,
      getEffectiveJSDocHost: () => pv,
      getEffectiveModifierFlags: () => Pu,
      getEffectiveModifierFlagsAlwaysIncludeJSDoc: () => lee,
      getEffectiveModifierFlagsNoCache: () => uee,
      getEffectiveReturnTypeNode: () => yf,
      getEffectiveSetAccessorTypeAnnotationNode: () => vJ,
      getEffectiveTypeAnnotationNode: () => _l,
      getEffectiveTypeParameterDeclarations: () => Ry,
      getEffectiveTypeRoots: () => mw,
      getElementOrPropertyAccessArgumentExpressionOrName: () => R5,
      getElementOrPropertyAccessName: () => Jh,
      getElementsOfBindingOrAssignmentPattern: () => W6,
      getEmitDeclarations: () => U_,
      getEmitFlags: () => Bs,
      getEmitHelpers: () => Tz,
      getEmitModuleDetectionKind: () => Oee,
      getEmitModuleFormatOfFileWorker: () => Fw,
      getEmitModuleKind: () => u_,
      getEmitModuleResolutionKind: () => Hu,
      getEmitScriptTarget: () => Ps,
      getEmitStandardClassFields: () => WJ,
      getEnclosingBlockScopeContainer: () => Bd,
      getEnclosingContainer: () => h5,
      getEncodedSemanticClassifications: () => Mq,
      getEncodedSyntacticClassifications: () => Rq,
      getEndLinePosition: () => W3,
      getEntityNameFromTypeNode: () => tA,
      getEntrypointsFromPackageJsonInfo: () => FW,
      getErrorCountForSummary: () => S9,
      getErrorSpanForNode: () => gS,
      getErrorSummaryText: () => ZU,
      getEscapedTextOfIdentifierOrLiteral: () => yD,
      getEscapedTextOfJsxAttributeName: () => qD,
      getEscapedTextOfJsxNamespacedName: () => tk,
      getExpandoInitializer: () => _v,
      getExportAssignmentExpression: () => KB,
      getExportInfoMap: () => EI,
      getExportNeedsImportStarHelper: () => Jne,
      getExpressionAssociativity: () => oJ,
      getExpressionPrecedence: () => bD,
      getExternalHelpersModuleName: () => pN,
      getExternalModuleImportEqualsDeclarationExpression: () => sD,
      getExternalModuleName: () => Lx,
      getExternalModuleNameFromDeclaration: () => ZK,
      getExternalModuleNameFromPath: () => dJ,
      getExternalModuleNameLiteral: () => vk,
      getExternalModuleRequireArgument: () => WB,
      getFallbackOptions: () => HN,
      getFileEmitOutput: () => zie,
      getFileMatcherPatterns: () => SO,
      getFileNamesFromConfigSpecs: () => pw,
      getFileWatcherEventKind: () => Nj,
      getFilesInErrorForSummary: () => T9,
      getFirstConstructorWithBody: () => Xg,
      getFirstIdentifier: () => x_,
      getFirstNonSpaceCharacterPosition: () => Ise,
      getFirstProjectOutput: () => gU,
      getFixableErrorSpanExpression: () => Eq,
      getFormatCodeSettingsForWriting: () => yL,
      getFullWidth: () => J3,
      getFunctionFlags: () => Gc,
      getHeritageClause: () => vA,
      getHostSignatureFromJSDoc: () => fv,
      getIdentifierAutoGenerate: () => v0e,
      getIdentifierGeneratedImportReference: () => Nte,
      getIdentifierTypeArguments: () => NS,
      getImmediatelyInvokedFunctionExpression: () => lv,
      getImpliedNodeFormatForEmitWorker: () => QS,
      getImpliedNodeFormatForFile: () => XN,
      getImpliedNodeFormatForFileWorker: () => f9,
      getImportNeedsImportDefaultHelper: () => rU,
      getImportNeedsImportStarHelper: () => $F,
      getIndentString: () => G5,
      getInferredLibraryNameResolveFrom: () => _9,
      getInitializedVariables: () => wD,
      getInitializerOfBinaryExpression: () => GB,
      getInitializerOfBindingOrAssignmentElement: () => mN,
      getInterfaceBaseTypeNodes: () => gD,
      getInternalEmitFlags: () => pd,
      getInvokedExpression: () => P5,
      getIsFileExcluded: () => qse,
      getIsolatedModules: () => Zp,
      getJSDocAugmentsTag: () => vZ,
      getJSDocClassTag: () => $j,
      getJSDocCommentRanges: () => MB,
      getJSDocCommentsAndTags: () => HB,
      getJSDocDeprecatedTag: () => Xj,
      getJSDocDeprecatedTagNoCache: () => EZ,
      getJSDocEnumTag: () => Qj,
      getJSDocHost: () => Fb,
      getJSDocImplementsTags: () => bZ,
      getJSDocOverloadTags: () => XB,
      getJSDocOverrideTagNoCache: () => CZ,
      getJSDocParameterTags: () => HC,
      getJSDocParameterTagsNoCache: () => mZ,
      getJSDocPrivateTag: () => ghe,
      getJSDocPrivateTagNoCache: () => TZ,
      getJSDocProtectedTag: () => hhe,
      getJSDocProtectedTagNoCache: () => xZ,
      getJSDocPublicTag: () => mhe,
      getJSDocPublicTagNoCache: () => SZ,
      getJSDocReadonlyTag: () => yhe,
      getJSDocReadonlyTagNoCache: () => kZ,
      getJSDocReturnTag: () => DZ,
      getJSDocReturnType: () => D3,
      getJSDocRoot: () => _6,
      getJSDocSatisfiesExpressionType: () => oz,
      getJSDocSatisfiesTag: () => Yj,
      getJSDocTags: () => av,
      getJSDocTemplateTag: () => vhe,
      getJSDocThisTag: () => V7,
      getJSDocType: () => k0,
      getJSDocTypeAliasName: () => eW,
      getJSDocTypeAssertionType: () => J6,
      getJSDocTypeParameterDeclarations: () => K5,
      getJSDocTypeParameterTags: () => gZ,
      getJSDocTypeParameterTagsNoCache: () => hZ,
      getJSDocTypeTag: () => iv,
      getJSXImplicitImportBase: () => JA,
      getJSXRuntimeImport: () => yO,
      getJSXTransformEnabled: () => hO,
      getKeyForCompilerOptions: () => PW,
      getLanguageVariant: () => FA,
      getLastChild: () => LJ,
      getLeadingCommentRanges: () => jg,
      getLeadingCommentRangesOfNode: () => LB,
      getLeftmostAccessExpression: () => Hx,
      getLeftmostExpression: () => b6,
      getLibFileNameFromLibReference: () => pz,
      getLibNameFromLibReference: () => fz,
      getLibraryNameFromLibFileName: () => FU,
      getLineAndCharacterOfPosition: () => Za,
      getLineInfo: () => KW,
      getLineOfLocalPosition: () => TD,
      getLineStartPositionForPosition: () => rd,
      getLineStarts: () => Mg,
      getLinesBetweenPositionAndNextNonWhitespaceCharacter: () => Tee,
      getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter: () => See,
      getLinesBetweenPositions: () => R4,
      getLinesBetweenRangeEndAndRangeStart: () => AJ,
      getLinesBetweenRangeEndPositions: () => $he,
      getLiteralText: () => aK,
      getLocalNameForExternalImport: () => z6,
      getLocalSymbolForExportDefault: () => ED,
      getLocaleSpecificMessage: () => Oa,
      getLocaleTimeString: () => KN,
      getMappedContextSpan: () => dq,
      getMappedDocumentSpan: () => aL,
      getMappedLocation: () => qw,
      getMatchedFileSpec: () => rV,
      getMatchedIncludeSpec: () => nV,
      getMeaningFromDeclaration: () => j9,
      getMeaningFromLocation: () => YS,
      getMembersOfDeclaration: () => bK,
      getModeForFileReference: () => Rie,
      getModeForResolutionAtIndex: () => Ove,
      getModeForUsageLocation: () => IU,
      getModifiedTime: () => gx,
      getModifiers: () => kb,
      getModuleInstanceState: () => m1,
      getModuleNameStringLiteralAt: () => YN,
      getModuleSpecifierEndingPreference: () => Vee,
      getModuleSpecifierOfBareOrAccessedRequire: () => OK,
      getModuleSpecifierResolverHost: () => aq,
      getNameForExportedSymbol: () => mL,
      getNameFromImportAttribute: () => LO,
      getNameFromIndexInfo: () => pK,
      getNameFromPropertyName: () => mI,
      getNameOfAccessExpression: () => RJ,
      getNameOfCompilerOptionValue: () => EF,
      getNameOfDeclaration: () => va,
      getNameOfExpando: () => UB,
      getNameOfJSDocTypedef: () => dZ,
      getNameOfScriptTarget: () => mO,
      getNameOrArgument: () => cA,
      getNameTable: () => bG,
      getNamespaceDeclarationNode: () => u6,
      getNewLineCharacter: () => N0,
      getNewLineKind: () => CI,
      getNewLineOrDefaultFromHost: () => Xh,
      getNewTargetContainer: () => PK,
      getNextJSDocCommentLocation: () => $B,
      getNodeChildren: () => qz,
      getNodeForGeneratedName: () => hN,
      getNodeId: () => Hs,
      getNodeKind: () => o2,
      getNodeModifiers: () => Ww,
      getNodeModulePathParts: () => IO,
      getNonAssignedNameOfDeclaration: () => W7,
      getNonAssignmentOperatorForCompoundAssignment: () => xw,
      getNonAugmentationDeclaration: () => wB,
      getNonDecoratorTokenPosOfNode: () => TB,
      getNonIncrementalBuildInfoRoots: () => rae,
      getNormalizedAbsolutePath: () => ca,
      getNormalizedAbsolutePathWithoutRoot: () => Lj,
      getNormalizedPathComponents: () => F7,
      getObjectFlags: () => yn,
      getOperatorAssociativity: () => cJ,
      getOperatorPrecedence: () => SA,
      getOptionFromName: () => mW,
      getOptionsForLibraryResolution: () => AW,
      getOptionsNameMap: () => q6,
      getOptionsSyntaxByArrayElementValue: () => mz,
      getOptionsSyntaxByValue: () => pte,
      getOrCreateEmitNode: () => Au,
      getOrUpdate: () => v_,
      getOriginalNode: () => rc,
      getOriginalNodeId: () => w_,
      getOutputDeclarationFileName: () => Pw,
      getOutputDeclarationFileNameWorker: () => dU,
      getOutputExtension: () => VN,
      getOutputFileNames: () => Cve,
      getOutputJSFileNameWorker: () => mU,
      getOutputPathsFor: () => ww,
      getOwnEmitOutputFilePath: () => KK,
      getOwnKeys: () => mm,
      getOwnValues: () => _x,
      getPackageJsonTypesVersionsPaths: () => FF,
      getPackageNameFromTypesPackageName: () => vw,
      getPackageScopeForPath: () => yw,
      getParameterSymbolFromJSDoc: () => mA,
      getParentNodeInSpan: () => hI,
      getParseTreeNode: () => Ca,
      getParsedCommandLineOfConfigFile: () => xN,
      getPathComponents: () => wu,
      getPathFromPathComponents: () => rv,
      getPathUpdater: () => Jq,
      getPathsBasePath: () => X5,
      getPatternFromSpec: () => HJ,
      getPendingEmitKindWithSeen: () => h9,
      getPositionOfLineAndCharacter: () => g3,
      getPossibleGenericSignatures: () => $V,
      getPossibleOriginalInputExtensionForExtension: () => mJ,
      getPossibleOriginalInputPathWithoutChangingExt: () => gJ,
      getPossibleTypeArgumentsInfo: () => XV,
      getPreEmitDiagnostics: () => Eve,
      getPrecedingNonSpaceCharacterPosition: () => sL,
      getPrivateIdentifier: () => sU,
      getProperties: () => iU,
      getProperty: () => s3,
      getPropertyAssignmentAliasLikeExpression: () => HK,
      getPropertyNameForPropertyNameNode: () => kS,
      getPropertyNameFromType: () => Ep,
      getPropertyNameOfBindingOrAssignmentElement: () => Kz,
      getPropertySymbolFromBindingElement: () => iL,
      getPropertySymbolsFromContextualType: () => LI,
      getQuoteFromPreference: () => oq,
      getQuotePreference: () => Df,
      getRangesWhere: () => uQ,
      getRefactorContextSpan: () => Lk,
      getReferencedFileLocation: () => Ow,
      getRegexFromPattern: () => O0,
      getRegularExpressionForWildcard: () => FD,
      getRegularExpressionsForWildcards: () => vO,
      getRelativePathFromDirectory: () => Zf,
      getRelativePathFromFile: () => vx,
      getRelativePathToDirectoryOrUrl: () => bx,
      getRenameLocation: () => vI,
      getReplacementSpanForContextToken: () => KV,
      getResolutionDiagnostic: () => jU,
      getResolutionModeOverride: () => eE,
      getResolveJsonModule: () => zb,
      getResolvePackageJsonExports: () => MA,
      getResolvePackageJsonImports: () => RA,
      getResolvedExternalModuleName: () => pJ,
      getResolvedModuleFromResolution: () => Px,
      getResolvedTypeReferenceDirectiveFromResolution: () => l5,
      getRestIndicatorOfBindingOrAssignmentElement: () => _F,
      getRestParameterElementType: () => jB,
      getRightMostAssignedExpression: () => oA,
      getRootDeclaration: () => xm,
      getRootDirectoryOfResolutionCache: () => cae,
      getRootLength: () => Md,
      getScriptKind: () => yq,
      getScriptKindFromFileName: () => xO,
      getScriptTargetFeatures: () => xB,
      getSelectedEffectiveModifierFlags: () => Wx,
      getSelectedSyntacticModifierFlags: () => oee,
      getSemanticClassifications: () => Gse,
      getSemanticJsxChildren: () => d6,
      getSetAccessorTypeAnnotationNode: () => ree,
      getSetAccessorValueParameter: () => xD,
      getSetExternalModuleIndicator: () => LA,
      getShebang: () => J7,
      getSingleVariableOfVariableStatement: () => jx,
      getSnapshotText: () => Fk,
      getSnippetElement: () => xz,
      getSourceFileOfModule: () => z3,
      getSourceFileOfNode: () => Sr,
      getSourceFilePathInNewDir: () => Y5,
      getSourceFileVersionAsHashFromText: () => k9,
      getSourceFilesToEmit: () => Q5,
      getSourceMapRange: () => M0,
      getSourceMapper: () => coe,
      getSourceTextOfNodeFromSourceFile: () => Pb,
      getSpanOfTokenAtPosition: () => _g,
      getSpellingSuggestion: () => xb,
      getStartPositionOfLine: () => qy,
      getStartPositionOfRange: () => DD,
      getStartsOnNewLine: () => XD,
      getStaticPropertiesAndClassStaticBlock: () => YF,
      getStrictOptionValue: () => Sf,
      getStringComparer: () => JC,
      getSubPatternFromSpec: () => bO,
      getSuperCallFromStatement: () => XF,
      getSuperContainer: () => K3,
      getSupportedCodeFixes: () => yG,
      getSupportedExtensions: () => LD,
      getSupportedExtensionsWithJsonIfResolveJsonModule: () => WA,
      getSwitchedType: () => Sq,
      getSymbolId: () => ss,
      getSymbolNameForPrivateIdentifier: () => bA,
      getSymbolTarget: () => vq,
      getSyntacticClassifications: () => Hse,
      getSyntacticModifierFlags: () => P0,
      getSyntacticModifierFlagsNoCache: () => TJ,
      getSynthesizedDeepClone: () => no,
      getSynthesizedDeepCloneWithReplacements: () => QA,
      getSynthesizedDeepClones: () => qb,
      getSynthesizedDeepClonesWithReplacements: () => hz,
      getSyntheticLeadingComments: () => C6,
      getSyntheticTrailingComments: () => tN,
      getTargetLabel: () => z9,
      getTargetOfBindingOrAssignmentElement: () => u1,
      getTemporaryModuleResolutionState: () => hw,
      getTextOfConstantValue: () => sK,
      getTextOfIdentifierOrLiteral: () => Xp,
      getTextOfJSDocComment: () => w3,
      getTextOfJsxAttributeName: () => $A,
      getTextOfJsxNamespacedName: () => GD,
      getTextOfNode: () => uc,
      getTextOfNodeFromSourceText: () => eD,
      getTextOfPropertyName: () => Ix,
      getThisContainer: () => c_,
      getThisParameter: () => Rb,
      getTokenAtPosition: () => xi,
      getTokenPosOfNode: () => ov,
      getTokenSourceMapRange: () => h0e,
      getTouchingPropertyName: () => G_,
      getTouchingToken: () => lE,
      getTrailingCommentRanges: () => Ly,
      getTrailingSemicolonDeferringWriter: () => fJ,
      getTransformers: () => Sie,
      getTsBuildInfoEmitOutputFilePath: () => Mv,
      getTsConfigObjectLiteralExpression: () => iD,
      getTsConfigPropArrayElementValue: () => k5,
      getTypeAnnotationNode: () => nee,
      getTypeArgumentOrTypeParameterList: () => mse,
      getTypeKeywordOfTypeOnlyImport: () => uq,
      getTypeNode: () => Pte,
      getTypeNodeIfAccessible: () => Qw,
      getTypeParameterFromJsDoc: () => JK,
      getTypeParameterOwner: () => _he,
      getTypesPackageName: () => zF,
      getUILocale: () => vQ,
      getUniqueName: () => eT,
      getUniqueSymbolId: () => Nse,
      getUseDefineForClassFields: () => jA,
      getWatchErrorSummaryDiagnosticMessage: () => YU,
      getWatchFactory: () => xU,
      group: () => BC,
      groupBy: () => QR,
      guessIndentation: () => HZ,
      handleNoEmitOptions: () => RU,
      handleWatchOptionsConfigDirTemplateSubstitution: () => wF,
      hasAbstractModifier: () => Jb,
      hasAccessorModifier: () => km,
      hasAmbientModifier: () => SJ,
      hasChangesInResolutions: () => vB,
      hasContextSensitiveParameters: () => AO,
      hasDecorators: () => tp,
      hasDocComment: () => pse,
      hasDynamicName: () => zh,
      hasEffectiveModifier: () => vf,
      hasEffectiveModifiers: () => bJ,
      hasEffectiveReadonlyModifier: () => ES,
      hasExtension: () => UC,
      hasImplementationTSFileExtension: () => Wee,
      hasIndexSignature: () => bq,
      hasInferredType: () => RO,
      hasInitializer: () => E0,
      hasInvalidEscape: () => uJ,
      hasJSDocNodes: () => Jf,
      hasJSDocParameterTags: () => yZ,
      hasJSFileExtension: () => Zg,
      hasJsonModuleEmitEnabled: () => dO,
      hasOnlyExpressionInitializer: () => dS,
      hasOverrideModifier: () => eO,
      hasPossibleExternalModuleReference: () => _K,
      hasProperty: () => po,
      hasPropertyAccessExpressionWithName: () => oI,
      hasQuestionToken: () => Mx,
      hasRecordedExternalHelpers: () => mre,
      hasResolutionModeOverride: () => ste,
      hasRestParameter: () => dB,
      hasScopeMarker: () => jZ,
      hasStaticModifier: () => vl,
      hasSyntacticModifier: () => Qn,
      hasSyntacticModifiers: () => see,
      hasTSFileExtension: () => wS,
      hasTabstop: () => nte,
      hasTrailingDirectorySeparator: () => Oy,
      hasType: () => a5,
      hasTypeArguments: () => zK,
      hasZeroOrOneAsteriskCharacter: () => UJ,
      hostGetCanonicalFileName: () => Wh,
      hostUsesCaseSensitiveFileNames: () => CS,
      idText: () => On,
      identifierIsThisKeyword: () => yJ,
      identifierToKeywordKind: () => lS,
      identity: () => mo,
      identitySourceMapConsumer: () => tU,
      ignoreSourceNewlines: () => Cz,
      ignoredPaths: () => N7,
      importFromModuleSpecifier: () => fD,
      importSyntaxAffectsModuleResolution: () => zJ,
      indexOfAnyCharCode: () => Wu,
      indexOfNode: () => t6,
      indicesOf: () => v7,
      inferredTypesContainingFile: () => Iw,
      injectClassNamedEvaluationHelperBlockIfMissing: () => t9,
      injectClassThisAssignmentIfMissing: () => $ne,
      insertImports: () => lq,
      insertSorted: () => wy,
      insertStatementAfterCustomPrologue: () => mS,
      insertStatementAfterStandardPrologue: () => Ihe,
      insertStatementsAfterCustomPrologue: () => bB,
      insertStatementsAfterStandardPrologue: () => qg,
      intersperse: () => Jn,
      intrinsicTagNameToString: () => cz,
      introducesArgumentsExoticObject: () => xK,
      inverseJsxOptionMap: () => SN,
      isAbstractConstructorSymbol: () => xee,
      isAbstractModifier: () => zte,
      isAccessExpression: () => jo,
      isAccessibilityModifier: () => YV,
      isAccessor: () => zy,
      isAccessorModifier: () => Nz,
      isAliasableExpression: () => B5,
      isAmbientModule: () => o_,
      isAmbientPropertyDeclaration: () => AB,
      isAnyDirectorySeparator: () => Ij,
      isAnyImportOrBareOrAccessedRequire: () => lK,
      isAnyImportOrReExport: () => q3,
      isAnyImportOrRequireStatement: () => uK,
      isAnyImportSyntax: () => Nx,
      isAnySupportedFileExtension: () => c0e,
      isApplicableVersionedTypesKey: () => NN,
      isArgumentExpressionOfElementAccess: () => JV,
      isArray: () => da,
      isArrayBindingElement: () => K7,
      isArrayBindingOrAssignmentElement: () => F3,
      isArrayBindingOrAssignmentPattern: () => oB,
      isArrayBindingPattern: () => J0,
      isArrayLiteralExpression: () => hu,
      isArrayLiteralOrObjectLiteralDestructuringPattern: () => U0,
      isArrayTypeNode: () => aN,
      isArrowFunction: () => Bo,
      isAsExpression: () => A6,
      isAssertClause: () => Xte,
      isAssertEntry: () => w0e,
      isAssertionExpression: () => Db,
      isAssertsKeyword: () => Bte,
      isAssignmentDeclaration: () => lD,
      isAssignmentExpression: () => Hl,
      isAssignmentOperator: () => Uh,
      isAssignmentPattern: () => Q4,
      isAssignmentTarget: () => Qy,
      isAsteriskToken: () => nN,
      isAsyncFunction: () => hD,
      isAsyncModifier: () => ZD,
      isAutoAccessorPropertyDeclaration: () => R_,
      isAwaitExpression: () => o1,
      isAwaitKeyword: () => Az,
      isBigIntLiteral: () => E6,
      isBinaryExpression: () => un,
      isBinaryLogicalOperator: () => EA,
      isBinaryOperatorToken: () => xre,
      isBindableObjectDefinePropertyCall: () => bS,
      isBindableStaticAccessExpression: () => Ob,
      isBindableStaticElementAccessExpression: () => M5,
      isBindableStaticNameExpression: () => SS,
      isBindingElement: () => Ns,
      isBindingElementOfBareOrAccessedRequire: () => IK,
      isBindingName: () => pS,
      isBindingOrAssignmentElement: () => FZ,
      isBindingOrAssignmentPattern: () => I3,
      isBindingPattern: () => Ja,
      isBlock: () => Wa,
      isBlockLike: () => Mk,
      isBlockOrCatchScoped: () => kB,
      isBlockScope: () => NB,
      isBlockScopedContainerTopLevel: () => cK,
      isBooleanLiteral: () => X4,
      isBreakOrContinueStatement: () => q4,
      isBreakStatement: () => C0e,
      isBuildCommand: () => Aae,
      isBuildInfoFile: () => Tie,
      isBuilderProgram: () => KU,
      isBundle: () => Kte,
      isCallChain: () => uS,
      isCallExpression: () => za,
      isCallExpressionTarget: () => FV,
      isCallLikeExpression: () => Wy,
      isCallLikeOrFunctionLikeExpression: () => cB,
      isCallOrNewExpression: () => ym,
      isCallOrNewExpressionTarget: () => LV,
      isCallSignatureDeclaration: () => uk,
      isCallToHelper: () => YD,
      isCaseBlock: () => aw,
      isCaseClause: () => F6,
      isCaseKeyword: () => Ute,
      isCaseOrDefaultClause: () => B3,
      isCatchClause: () => Zb,
      isCatchClauseVariableDeclaration: () => rte,
      isCatchClauseVariableDeclarationOrBindingElement: () => CB,
      isCheckJsEnabledForFile: () => jD,
      isCircularBuildOrder: () => Ik,
      isClassDeclaration: () => sl,
      isClassElement: () => al,
      isClassExpression: () => Hc,
      isClassInstanceProperty: () => IZ,
      isClassLike: () => Zn,
      isClassMemberModifier: () => iB,
      isClassNamedEvaluationHelperBlock: () => Pk,
      isClassOrTypeElement: () => Z7,
      isClassStaticBlockDeclaration: () => Bc,
      isClassThisAssignmentBlock: () => Cw,
      isColonToken: () => Rte,
      isCommaExpression: () => fN,
      isCommaListExpression: () => nw,
      isCommaSequence: () => lw,
      isCommaToken: () => Mte,
      isComment: () => Y9,
      isCommonJsExportPropertyAssignment: () => T5,
      isCommonJsExportedExpression: () => SK,
      isCompoundAssignment: () => Tw,
      isComputedNonLiteralName: () => G3,
      isComputedPropertyName: () => _s,
      isConciseBody: () => t5,
      isConditionalExpression: () => MS,
      isConditionalTypeNode: () => Hb,
      isConstAssertion: () => lz,
      isConstTypeReference: () => _d,
      isConstructSignatureDeclaration: () => tw,
      isConstructorDeclaration: () => yc,
      isConstructorTypeNode: () => D6,
      isContextualKeyword: () => z5,
      isContinueStatement: () => k0e,
      isCustomPrologue: () => Y3,
      isDebuggerStatement: () => E0e,
      isDeclaration: () => Jl,
      isDeclarationBindingElement: () => N3,
      isDeclarationFileName: () => $l,
      isDeclarationName: () => pg,
      isDeclarationNameOfEnumOrNamespace: () => IJ,
      isDeclarationReadonly: () => $3,
      isDeclarationStatement: () => WZ,
      isDeclarationWithTypeParameterChildren: () => OB,
      isDeclarationWithTypeParameters: () => IB,
      isDecorator: () => pl,
      isDecoratorTarget: () => rse,
      isDefaultClause: () => L6,
      isDefaultImport: () => TS,
      isDefaultModifier: () => XO,
      isDefaultedExpandoInitializer: () => FK,
      isDeleteExpression: () => qte,
      isDeleteTarget: () => YB,
      isDeprecatedDeclaration: () => gL,
      isDestructuringAssignment: () => A0,
      isDiskPathRoot: () => Oj,
      isDoStatement: () => x0e,
      isDocumentRegistryEntry: () => DI,
      isDotDotDotToken: () => HO,
      isDottedName: () => wA,
      isDynamicName: () => U5,
      isEffectiveExternalModule: () => r6,
      isEffectiveStrictModeSourceFile: () => PB,
      isElementAccessChain: () => Zj,
      isElementAccessExpression: () => Po,
      isEmittedFileOfProgram: () => Aie,
      isEmptyArrayLiteral: () => dee,
      isEmptyBindingElement: () => _Z,
      isEmptyBindingPattern: () => uZ,
      isEmptyObjectLiteral: () => DJ,
      isEmptyStatement: () => Fz,
      isEmptyStringLiteral: () => zB,
      isEntityName: () => S_,
      isEntityNameExpression: () => go,
      isEnumConst: () => cv,
      isEnumDeclaration: () => l1,
      isEnumMember: () => Gh,
      isEqualityOperatorKind: () => lL,
      isEqualsGreaterThanToken: () => jte,
      isExclamationToken: () => iN,
      isExcludedFile: () => Zre,
      isExclusivelyTypeOnlyImportOrExport: () => NU,
      isExpandoPropertyDeclaration: () => rk,
      isExportAssignment: () => Xo,
      isExportDeclaration: () => tl,
      isExportModifier: () => ck,
      isExportName: () => lF,
      isExportNamespaceAsDefaultDeclaration: () => d5,
      isExportOrDefaultModifier: () => gN,
      isExportSpecifier: () => $u,
      isExportsIdentifier: () => vS,
      isExportsOrModuleExportsOrAlias: () => t2,
      isExpression: () => dt,
      isExpressionNode: () => fg,
      isExpressionOfExternalModuleImportEqualsDeclaration: () => ase,
      isExpressionOfOptionalChainRoot: () => $7,
      isExpressionStatement: () => zl,
      isExpressionWithTypeArguments: () => rh,
      isExpressionWithTypeArgumentsInClassExtendsClause: () => rO,
      isExternalModule: () => Sl,
      isExternalModuleAugmentation: () => Nb,
      isExternalModuleImportEqualsDeclaration: () => uv,
      isExternalModuleIndicator: () => M3,
      isExternalModuleNameRelative: () => jl,
      isExternalModuleReference: () => qh,
      isExternalModuleSymbol: () => Dx,
      isExternalOrCommonJsModule: () => gf,
      isFileLevelReservedGeneratedIdentifier: () => A3,
      isFileLevelUniqueName: () => f5,
      isFileProbablyExternalModule: () => vN,
      isFirstDeclarationOfSymbolParameter: () => mq,
      isFixablePromiseHandler: () => Gq,
      isForInOrOfStatement: () => wb,
      isForInStatement: () => eF,
      isForInitializer: () => bp,
      isForOfStatement: () => oN,
      isForStatement: () => Ev,
      isFullSourceFile: () => Hg,
      isFunctionBlock: () => Ib,
      isFunctionBody: () => uB,
      isFunctionDeclaration: () => Xc,
      isFunctionExpression: () => Lo,
      isFunctionExpressionOrArrowFunction: () => r1,
      isFunctionLike: () => Ra,
      isFunctionLikeDeclaration: () => So,
      isFunctionLikeKind: () => xx,
      isFunctionLikeOrClassStaticBlockDeclaration: () => YC,
      isFunctionOrConstructorTypeNode: () => OZ,
      isFunctionOrModuleBlock: () => aB,
      isFunctionSymbol: () => RK,
      isFunctionTypeNode: () => mg,
      isGeneratedIdentifier: () => Ko,
      isGeneratedPrivateIdentifier: () => fS,
      isGetAccessor: () => Wg,
      isGetAccessorDeclaration: () => Dp,
      isGetOrSetAccessorDeclaration: () => P3,
      isGlobalScopeAugmentation: () => ug,
      isGlobalSourceFile: () => D0,
      isGrammarError: () => rK,
      isHeritageClause: () => kf,
      isHoistedFunction: () => b5,
      isHoistedVariableStatement: () => S5,
      isIdentifier: () => Fe,
      isIdentifierANonContextualKeyword: () => rJ,
      isIdentifierName: () => GK,
      isIdentifierOrThisTypeNode: () => vre,
      isIdentifierPart: () => jh,
      isIdentifierStart: () => sg,
      isIdentifierText: () => Y_,
      isIdentifierTypePredicate: () => kK,
      isIdentifierTypeReference: () => Yee,
      isIfStatement: () => Cv,
      isIgnoredFileFromWildCardWatching: () => GN,
      isImplicitGlob: () => GJ,
      isImportAttribute: () => Qte,
      isImportAttributeName: () => NZ,
      isImportAttributes: () => BS,
      isImportCall: () => B_,
      isImportClause: () => hd,
      isImportDeclaration: () => ic,
      isImportEqualsDeclaration: () => bl,
      isImportKeyword: () => ew,
      isImportMeta: () => a6,
      isImportOrExportSpecifier: () => By,
      isImportOrExportSpecifierName: () => Ase,
      isImportSpecifier: () => p_,
      isImportTypeAssertionContainer: () => D0e,
      isImportTypeNode: () => Am,
      isImportable: () => Fq,
      isInComment: () => W0,
      isInCompoundLikeAssignment: () => QB,
      isInExpressionContext: () => A5,
      isInJSDoc: () => oD,
      isInJSFile: () => rn,
      isInJSXText: () => fse,
      isInJsonFile: () => I5,
      isInNonReferenceComment: () => yse,
      isInReferenceComment: () => hse,
      isInRightSideOfInternalImportEqualsDeclaration: () => B9,
      isInString: () => Ok,
      isInTemplateString: () => HV,
      isInTopLevelContext: () => D5,
      isInTypeQuery: () => zx,
      isIncrementalBuildInfo: () => ZN,
      isIncrementalBundleEmitBuildInfo: () => Qie,
      isIncrementalCompilation: () => Wb,
      isIndexSignatureDeclaration: () => s1,
      isIndexedAccessTypeNode: () => $b,
      isInferTypeNode: () => OS,
      isInfinityOrNaNString: () => UD,
      isInitializedProperty: () => MN,
      isInitializedVariable: () => OA,
      isInsideJsxElement: () => X9,
      isInsideJsxElementOrAttribute: () => _se,
      isInsideNodeModules: () => TI,
      isInsideTemplateLiteral: () => fI,
      isInstanceOfExpression: () => nO,
      isInstantiatedModule: () => HF,
      isInterfaceDeclaration: () => au,
      isInternalDeclaration: () => $Z,
      isInternalModuleImportEqualsDeclaration: () => yS,
      isInternalName: () => Qz,
      isIntersectionTypeNode: () => pk,
      isIntrinsicJsxName: () => m6,
      isIterationStatement: () => Uy,
      isJSDoc: () => Hd,
      isJSDocAllType: () => rre,
      isJSDocAugmentsTag: () => yk,
      isJSDocAuthorTag: () => I0e,
      isJSDocCallbackTag: () => jz,
      isJSDocClassTag: () => ire,
      isJSDocCommentContainingNode: () => i5,
      isJSDocConstructSignature: () => Rx,
      isJSDocDeprecatedTag: () => Uz,
      isJSDocEnumTag: () => lN,
      isJSDocFunctionType: () => R6,
      isJSDocImplementsTag: () => sF,
      isJSDocImportTag: () => Fm,
      isJSDocIndexSignature: () => F5,
      isJSDocLikeText: () => aW,
      isJSDocLink: () => ere,
      isJSDocLinkCode: () => tre,
      isJSDocLinkLike: () => Ex,
      isJSDocLinkPlain: () => A0e,
      isJSDocMemberName: () => Pv,
      isJSDocNameReference: () => sw,
      isJSDocNamepathType: () => N0e,
      isJSDocNamespaceBody: () => Che,
      isJSDocNode: () => ZC,
      isJSDocNonNullableType: () => rF,
      isJSDocNullableType: () => M6,
      isJSDocOptionalParameter: () => OO,
      isJSDocOptionalType: () => Rz,
      isJSDocOverloadTag: () => j6,
      isJSDocOverrideTag: () => iF,
      isJSDocParameterTag: () => np,
      isJSDocPrivateTag: () => Jz,
      isJSDocPropertyLikeTag: () => G4,
      isJSDocPropertyTag: () => are,
      isJSDocProtectedTag: () => zz,
      isJSDocPublicTag: () => Bz,
      isJSDocReadonlyTag: () => Wz,
      isJSDocReturnTag: () => aF,
      isJSDocSatisfiesExpression: () => sz,
      isJSDocSatisfiesTag: () => oF,
      isJSDocSeeTag: () => O0e,
      isJSDocSignature: () => z0,
      isJSDocTag: () => KC,
      isJSDocTemplateTag: () => ed,
      isJSDocThisTag: () => Vz,
      isJSDocThrowsTag: () => L0e,
      isJSDocTypeAlias: () => $p,
      isJSDocTypeAssertion: () => Kb,
      isJSDocTypeExpression: () => wv,
      isJSDocTypeLiteral: () => zS,
      isJSDocTypeTag: () => ow,
      isJSDocTypedefTag: () => WS,
      isJSDocUnknownTag: () => F0e,
      isJSDocUnknownType: () => nre,
      isJSDocVariadicType: () => nF,
      isJSXTagName: () => c6,
      isJsonEqual: () => wO,
      isJsonSourceFile: () => Tp,
      isJsxAttribute: () => Om,
      isJsxAttributeLike: () => n5,
      isJsxAttributeName: () => ate,
      isJsxAttributes: () => Yb,
      isJsxCallLike: () => GZ,
      isJsxChild: () => j3,
      isJsxClosingElement: () => Qb,
      isJsxClosingFragment: () => Zte,
      isJsxElement: () => Im,
      isJsxExpression: () => O6,
      isJsxFragment: () => Dv,
      isJsxNamespacedName: () => Gd,
      isJsxOpeningElement: () => qd,
      isJsxOpeningFragment: () => yd,
      isJsxOpeningLikeElement: () => Gu,
      isJsxOpeningLikeElementTagName: () => nse,
      isJsxSelfClosingElement: () => JS,
      isJsxSpreadAttribute: () => hk,
      isJsxTagNameExpression: () => Y4,
      isJsxText: () => sk,
      isJumpStatementTarget: () => cI,
      isKeyword: () => z_,
      isKeywordOrPunctuation: () => J5,
      isKnownSymbol: () => vD,
      isLabelName: () => jV,
      isLabelOfLabeledStatement: () => RV,
      isLabeledStatement: () => c1,
      isLateVisibilityPaintedStatement: () => g5,
      isLeftHandSideExpression: () => j_,
      isLet: () => v5,
      isLineBreak: () => Uu,
      isLiteralComputedPropertyDeclarationName: () => hA,
      isLiteralExpression: () => _S,
      isLiteralExpressionOfObject: () => rB,
      isLiteralImportTypeNode: () => Bh,
      isLiteralKind: () => H4,
      isLiteralNameOfPropertyDeclarationOrIndexAccess: () => W9,
      isLiteralTypeLiteral: () => RZ,
      isLiteralTypeNode: () => B0,
      isLocalName: () => Hh,
      isLogicalOperator: () => _ee,
      isLogicalOrCoalescingAssignmentExpression: () => xJ,
      isLogicalOrCoalescingAssignmentOperator: () => kD,
      isLogicalOrCoalescingBinaryExpression: () => DA,
      isLogicalOrCoalescingBinaryOperator: () => tO,
      isMappedTypeNode: () => LS,
      isMemberName: () => Jg,
      isMetaProperty: () => RS,
      isMethodDeclaration: () => hc,
      isMethodOrAccessor: () => kx,
      isMethodSignature: () => gd,
      isMinusToken: () => Pz,
      isMissingDeclaration: () => P0e,
      isMissingPackageJsonInfo: () => lne,
      isModifier: () => hs,
      isModifierKind: () => Jy,
      isModifierLike: () => ec,
      isModuleAugmentationExternal: () => DB,
      isModuleBlock: () => Vd,
      isModuleBody: () => BZ,
      isModuleDeclaration: () => Qc,
      isModuleExportName: () => tF,
      isModuleExportsAccessExpression: () => $g,
      isModuleIdentifier: () => VB,
      isModuleName: () => Tre,
      isModuleOrEnumDeclaration: () => R3,
      isModuleReference: () => VZ,
      isModuleSpecifierLike: () => nL,
      isModuleWithStringLiteralName: () => m5,
      isNameOfFunctionDeclaration: () => WV,
      isNameOfModuleDeclaration: () => zV,
      isNamedDeclaration: () => Bl,
      isNamedEvaluation: () => hf,
      isNamedEvaluationSource: () => iJ,
      isNamedExportBindings: () => eB,
      isNamedExports: () => Pp,
      isNamedImportBindings: () => _B,
      isNamedImports: () => Nm,
      isNamedImportsOrExports: () => lO,
      isNamedTupleMember: () => w6,
      isNamespaceBody: () => khe,
      isNamespaceExport: () => gg,
      isNamespaceExportDeclaration: () => cN,
      isNamespaceImport: () => nh,
      isNamespaceReexportDeclaration: () => NK,
      isNewExpression: () => Xb,
      isNewExpressionTarget: () => Bw,
      isNewScopeNode: () => fte,
      isNoSubstitutionTemplateLiteral: () => IS,
      isNodeArray: () => Cb,
      isNodeArrayMultiLine: () => bee,
      isNodeDescendantOf: () => Lb,
      isNodeKind: () => Q7,
      isNodeLikeSystem: () => cj,
      isNodeModulesDirectory: () => M7,
      isNodeWithPossibleHoistedDeclaration: () => VK,
      isNonContextualKeyword: () => tJ,
      isNonGlobalAmbientModule: () => EB,
      isNonNullAccess: () => ite,
      isNonNullChain: () => X7,
      isNonNullExpression: () => mk,
      isNonStaticMethodOrAccessorWithPrivateName: () => zne,
      isNotEmittedStatement: () => Yte,
      isNullishCoalesce: () => Kj,
      isNumber: () => Ay,
      isNumericLiteral: () => V_,
      isNumericLiteralName: () => eh,
      isObjectBindingElementWithoutPropertyName: () => gI,
      isObjectBindingOrAssignmentElement: () => O3,
      isObjectBindingOrAssignmentPattern: () => sB,
      isObjectBindingPattern: () => rp,
      isObjectLiteralElement: () => fB,
      isObjectLiteralElementLike: () => zg,
      isObjectLiteralExpression: () => bs,
      isObjectLiteralMethod: () => Hp,
      isObjectLiteralOrClassExpressionMethodOrAccessor: () => x5,
      isObjectTypeDeclaration: () => Gx,
      isOmittedExpression: () => Al,
      isOptionalChain: () => Vu,
      isOptionalChainRoot: () => U4,
      isOptionalDeclaration: () => ek,
      isOptionalJSDocPropertyLikeTag: () => HA,
      isOptionalTypeNode: () => QO,
      isOuterExpression: () => uF,
      isOutermostOptionalChain: () => V4,
      isOverrideModifier: () => Wte,
      isPackageJsonInfo: () => MF,
      isPackedArrayLiteral: () => iz,
      isParameter: () => Fi,
      isParameterPropertyDeclaration: () => df,
      isParameterPropertyModifier: () => $4,
      isParenthesizedExpression: () => E_,
      isParenthesizedTypeNode: () => FS,
      isParseTreeNode: () => W4,
      isPartOfParameterDeclaration: () => mv,
      isPartOfTypeNode: () => Sm,
      isPartOfTypeOnlyImportOrExportDeclaration: () => AZ,
      isPartOfTypeQuery: () => N5,
      isPartiallyEmittedExpression: () => Gte,
      isPatternMatch: () => T7,
      isPinnedComment: () => p5,
      isPlainJsFile: () => K4,
      isPlusToken: () => wz,
      isPossiblyTypeArgumentPosition: () => _I,
      isPostfixUnaryExpression: () => Oz,
      isPotentiallyExecutableNode: () => $D,
      isPrefixUnaryExpression: () => kv,
      isPrimitiveLiteralValue: () => MO,
      isPrivateIdentifier: () => Oi,
      isPrivateIdentifierClassElementDeclaration: () => qu,
      isPrivateIdentifierPropertyAccessExpression: () => QC,
      isPrivateIdentifierSymbol: () => nJ,
      isProgramUptoDate: () => LU,
      isPrologueDirective: () => bm,
      isPropertyAccessChain: () => H7,
      isPropertyAccessEntityNameExpression: () => PA,
      isPropertyAccessExpression: () => Ln,
      isPropertyAccessOrQualifiedName: () => L3,
      isPropertyAccessOrQualifiedNameOrImportTypeNode: () => LZ,
      isPropertyAssignment: () => ol,
      isPropertyDeclaration: () => ga,
      isPropertyName: () => il,
      isPropertyNameLiteral: () => Tm,
      isPropertySignature: () => f_,
      isPrototypeAccess: () => Ky,
      isPrototypePropertyAssignment: () => uA,
      isPunctuation: () => eJ,
      isPushOrUnshiftIdentifier: () => aJ,
      isQualifiedName: () => k_,
      isQuestionDotToken: () => $O,
      isQuestionOrExclamationToken: () => yre,
      isQuestionOrPlusOrMinusToken: () => Sre,
      isQuestionToken: () => a1,
      isReadonlyKeyword: () => Jte,
      isReadonlyKeywordOrPlusOrMinusToken: () => bre,
      isRecognizedTripleSlashComment: () => SB,
      isReferenceFileLocation: () => tE,
      isReferencedFile: () => Rv,
      isRegularExpressionLiteral: () => Ez,
      isRequireCall: () => J_,
      isRequireVariableStatement: () => iA,
      isRestParameter: () => cg,
      isRestTypeNode: () => YO,
      isReturnStatement: () => zf,
      isReturnStatementWithFixablePromiseHandler: () => kL,
      isRightSideOfAccessExpression: () => EJ,
      isRightSideOfInstanceofExpression: () => pee,
      isRightSideOfPropertyAccess: () => sE,
      isRightSideOfQualifiedName: () => ise,
      isRightSideOfQualifiedNameOrPropertyAccess: () => CD,
      isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName: () => fee,
      isRootedDiskPath: () => pf,
      isSameEntityName: () => l6,
      isSatisfiesExpression: () => N6,
      isSemicolonClassElement: () => Hte,
      isSetAccessor: () => vm,
      isSetAccessorDeclaration: () => ef,
      isShiftOperatorOrHigher: () => rW,
      isShorthandAmbientModuleSymbol: () => V3,
      isShorthandPropertyAssignment: () => Nu,
      isSideEffectImport: () => _z,
      isSignedNumericLiteral: () => W5,
      isSimpleCopiableExpression: () => r2,
      isSimpleInlineableExpression: () => Lm,
      isSimpleParameterList: () => RN,
      isSingleOrDoubleQuote: () => aA,
      isSolutionConfig: () => kW,
      isSourceElement: () => ote,
      isSourceFile: () => Pi,
      isSourceFileFromLibrary: () => gE,
      isSourceFileJS: () => T_,
      isSourceFileNotJson: () => O5,
      isSourceMapping: () => jne,
      isSpecialPropertyDeclaration: () => MK,
      isSpreadAssignment: () => ih,
      isSpreadElement: () => wp,
      isStatement: () => Ei,
      isStatementButNotDeclaration: () => r5,
      isStatementOrBlock: () => UZ,
      isStatementWithLocals: () => tK,
      isStatic: () => es,
      isStaticModifier: () => lk,
      isString: () => Ta,
      isStringANonContextualKeyword: () => Jx,
      isStringAndEmptyAnonymousObjectIntersection: () => gse,
      isStringDoubleQuoted: () => L5,
      isStringLiteral: () => Ts,
      isStringLiteralLike: () => Xs,
      isStringLiteralOrJsxExpression: () => qZ,
      isStringLiteralOrTemplate: () => Fse,
      isStringOrNumericLiteralLike: () => ep,
      isStringOrRegularExpressionOrTemplateLiteral: () => QV,
      isStringTextContainingNode: () => nB,
      isSuperCall: () => hS,
      isSuperKeyword: () => KD,
      isSuperProperty: () => Z_,
      isSupportedSourceFileName: () => YJ,
      isSwitchStatement: () => iw,
      isSyntaxList: () => B6,
      isSyntheticExpression: () => T0e,
      isSyntheticReference: () => gk,
      isTagName: () => BV,
      isTaggedTemplateExpression: () => xv,
      isTaggedTemplateTag: () => tse,
      isTemplateExpression: () => KO,
      isTemplateHead: () => ok,
      isTemplateLiteral: () => Cx,
      isTemplateLiteralKind: () => jy,
      isTemplateLiteralToken: () => wZ,
      isTemplateLiteralTypeNode: () => Vte,
      isTemplateLiteralTypeSpan: () => Iz,
      isTemplateMiddle: () => Dz,
      isTemplateMiddleOrTemplateTail: () => Y7,
      isTemplateSpan: () => I6,
      isTemplateTail: () => GO,
      isTextWhiteSpaceLike: () => Tse,
      isThis: () => oE,
      isThisContainerOrFunctionBlock: () => wK,
      isThisIdentifier: () => Zy,
      isThisInTypeQuery: () => jb,
      isThisInitializedDeclaration: () => w5,
      isThisInitializedObjectBindingExpression: () => AK,
      isThisProperty: () => eA,
      isThisTypeNode: () => rw,
      isThisTypeParameter: () => VD,
      isThisTypePredicate: () => CK,
      isThrowStatement: () => Mz,
      isToken: () => Tx,
      isTokenKind: () => tB,
      isTraceEnabled: () => _1,
      isTransientSymbol: () => Ug,
      isTrivia: () => p6,
      isTryStatement: () => jS,
      isTupleTypeNode: () => fk,
      isTypeAlias: () => pA,
      isTypeAliasDeclaration: () => Kp,
      isTypeAssertionExpression: () => ZO,
      isTypeDeclaration: () => Kx,
      isTypeElement: () => Eb,
      isTypeKeyword: () => Uw,
      isTypeKeywordTokenOrIdentifier: () => eL,
      isTypeLiteralNode: () => C_,
      isTypeNode: () => ui,
      isTypeNodeKind: () => MJ,
      isTypeOfExpression: () => P6,
      isTypeOnlyExportDeclaration: () => PZ,
      isTypeOnlyImportDeclaration: () => XC,
      isTypeOnlyImportOrExportDeclaration: () => C0,
      isTypeOperatorNode: () => Tv,
      isTypeParameterDeclaration: () => $o,
      isTypePredicateNode: () => _k,
      isTypeQueryNode: () => Gb,
      isTypeReferenceNode: () => xf,
      isTypeReferenceType: () => pB,
      isTypeUsableAsPropertyName: () => Cp,
      isUMDExportSymbol: () => cO,
      isUnaryExpression: () => lB,
      isUnaryExpressionWithWrite: () => MZ,
      isUnicodeIdentifierStart: () => j7,
      isUnionTypeNode: () => j0,
      isUrl: () => UY,
      isValidBigIntString: () => PO,
      isValidESSymbolDeclaration: () => TK,
      isValidTypeOnlyAliasUseSite: () => vv,
      isValueSignatureDeclaration: () => xS,
      isVarAwaitUsing: () => X3,
      isVarConst: () => i6,
      isVarConstLike: () => vK,
      isVarUsing: () => Q3,
      isVariableDeclaration: () => ci,
      isVariableDeclarationInVariableStatement: () => nD,
      isVariableDeclarationInitializedToBareOrAccessedRequire: () => $y,
      isVariableDeclarationInitializedToRequire: () => cD,
      isVariableDeclarationList: () => iu,
      isVariableLike: () => rD,
      isVariableStatement: () => $c,
      isVoidExpression: () => dk,
      isWatchSet: () => OJ,
      isWhileStatement: () => Lz,
      isWhiteSpaceLike: () => Rg,
      isWhiteSpaceSingleLine: () => hm,
      isWithStatement: () => $te,
      isWriteAccess: () => qx,
      isWriteOnlyAccess: () => oO,
      isYieldExpression: () => sN,
      jsxModeNeedsExplicitImport: () => Nq,
      keywordPart: () => wf,
      last: () => ws,
      lastOrUndefined: () => Wo,
      length: () => It,
      libMap: () => yF,
      libs: () => hF,
      lineBreakPart: () => pE,
      loadModuleFromGlobalCache: () => Sne,
      loadWithModeAwareCache: () => $N,
      makeIdentifierFromModuleName: () => oK,
      makeImport: () => y1,
      makeStringLiteral: () => Vw,
      mangleScopedPackageName: () => Q6,
      map: () => or,
      mapAllOrFail: () => kl,
      mapDefined: () => Rn,
      mapDefinedIterator: () => Go,
      mapEntries: () => lQ,
      mapIterator: () => cx,
      mapOneOrMany: () => Dq,
      mapToDisplayParts: () => v1,
      matchFiles: () => $J,
      matchPatternOrExact: () => KJ,
      matchedText: () => kQ,
      matchesExclude: () => NF,
      matchesExcludeWorker: () => IF,
      maxBy: () => ej,
      maybeBind: () => Ua,
      maybeSetLocalizedDiagnosticMessages: () => Pee,
      memoize: () => s_,
      memoizeOne: () => gm,
      min: () => tj,
      minAndMax: () => $ee,
      missingFileModifiedTime: () => ff,
      modifierToFlag: () => Ux,
      modifiersToFlags: () => Cm,
      moduleExportNameIsDefault: () => lg,
      moduleExportNameTextEscaped: () => Ab,
      moduleExportNameTextUnescaped: () => Gy,
      moduleOptionDeclaration: () => Fre,
      moduleResolutionIsEqualTo: () => KZ,
      moduleResolutionNameAndModeGetter: () => l9,
      moduleResolutionOptionDeclarations: () => _W,
      moduleResolutionSupportsPackageJsonExportsAndImports: () => S6,
      moduleResolutionUsesNodeModules: () => tL,
      moduleSpecifierToValidIdentifier: () => kI,
      moduleSpecifiers: () => $h,
      moduleSupportsImportAttributes: () => Fee,
      moduleSymbolToValidIdentifier: () => xI,
      moveEmitHelpers: () => Dte,
      moveRangeEnd: () => aO,
      moveRangePastDecorators: () => Vh,
      moveRangePastModifiers: () => Em,
      moveRangePos: () => hv,
      moveSyntheticComments: () => kte,
      mutateMap: () => AD,
      mutateMapSkippingNewValues: () => Qg,
      needsParentheses: () => oL,
      needsScopeMarker: () => e5,
      newCaseClauseTracker: () => vL,
      newPrivateEnvironment: () => Une,
      noEmitNotification: () => zN,
      noEmitSubstitution: () => Dw,
      noTransformers: () => bie,
      noTruncationMaximumTruncationLength: () => gB,
      nodeCanBeDecorated: () => rA,
      nodeCoreModules: () => nk,
      nodeHasName: () => E3,
      nodeIsDecorated: () => o6,
      nodeIsMissing: () => Nc,
      nodeIsPresent: () => Gp,
      nodeIsSynthesized: () => wo,
      nodeModuleNameResolver: () => dne,
      nodeModulesPathPart: () => ah,
      nodeNextJsonConfigResolver: () => mne,
      nodeOrChildIsDecorated: () => nA,
      nodeOverlapsWithStartEnd: () => U9,
      nodePosToString: () => whe,
      nodeSeenTracker: () => uE,
      nodeStartsNewLexicalEnvironment: () => sJ,
      noop: () => so,
      noopFileWatcher: () => iE,
      normalizePath: () => us,
      normalizeSlashes: () => ru,
      normalizeSpans: () => Vj,
      not: () => k7,
      notImplemented: () => is,
      notImplementedResolver: () => Eie,
      nullNodeConverters: () => Ste,
      nullParenthesizerRules: () => vte,
      nullTransformationContext: () => UN,
      objectAllocator: () => gu,
      operatorPart: () => Gw,
      optionDeclarations: () => $d,
      optionMapToObject: () => CF,
      optionsAffectingProgramStructure: () => jre,
      optionsForBuild: () => pW,
      optionsForWatch: () => xk,
      optionsHaveChanges: () => wx,
      or: () => _f,
      orderedRemoveItem: () => k4,
      orderedRemoveItemAt: () => Iy,
      packageIdToPackageName: () => _5,
      packageIdToString: () => sv,
      parameterIsThisKeyword: () => Yy,
      parameterNamePart: () => kse,
      parseBaseNodeFactory: () => wre,
      parseBigInt: () => Qee,
      parseBuildCommand: () => Gre,
      parseCommandLine: () => Vre,
      parseCommandLineWorker: () => dW,
      parseConfigFileTextToJson: () => gW,
      parseConfigFileWithSystem: () => uae,
      parseConfigHostFromCompilerHostLike: () => m9,
      parseCustomTypeOption: () => TF,
      parseIsolatedEntityName: () => Tk,
      parseIsolatedJSDocComment: () => Are,
      parseJSDocTypeExpressionForTests: () => aye,
      parseJsonConfigFileContent: () => Lye,
      parseJsonSourceFileConfigFileContent: () => EN,
      parseJsonText: () => bN,
      parseListTypeOption: () => Wre,
      parseNodeFactory: () => Nv,
      parseNodeModuleFromPath: () => AN,
      parsePackageName: () => BF,
      parsePseudoBigInt: () => JD,
      parseValidBigInt: () => rz,
      pasteEdits: () => AH,
      patchWriteFileEnsuringDirectory: () => WY,
      pathContainsNodeModules: () => p1,
      pathIsAbsolute: () => O4,
      pathIsBareSpecifier: () => Fj,
      pathIsRelative: () => Bf,
      patternText: () => xQ,
      performIncrementalCompilation: () => _ae,
      performance: () => IQ,
      positionBelongsToNode: () => UV,
      positionIsASICandidate: () => uL,
      positionIsSynthesized: () => Wd,
      positionsAreOnSameLine: () => xp,
      preProcessFile: () => V2e,
      probablyUsesSemicolons: () => SI,
      processCommentPragmas: () => cW,
      processPragmasIntoFields: () => lW,
      processTaggedTemplateExpression: () => lU,
      programContainsEsModules: () => bse,
      programContainsModules: () => vse,
      projectReferenceIsEqualTo: () => hB,
      propertyNamePart: () => Cse,
      pseudoBigIntToString: () => Ub,
      punctuationPart: () => Yu,
      pushIfUnique: () => hp,
      quote: () => Xw,
      quotePreferenceFromString: () => sq,
      rangeContainsPosition: () => cE,
      rangeContainsPositionExclusive: () => lI,
      rangeContainsRange: () => W_,
      rangeContainsRangeExclusive: () => sse,
      rangeContainsStartEnd: () => uI,
      rangeEndIsOnSameLineAsRangeStart: () => IA,
      rangeEndPositionsAreOnSameLine: () => yee,
      rangeEquals: () => GR,
      rangeIsOnSingleLine: () => DS,
      rangeOfNode: () => ez,
      rangeOfTypeParameters: () => tz,
      rangeOverlapsWithStartEnd: () => Jw,
      rangeStartIsOnSameLineAsRangeEnd: () => vee,
      rangeStartPositionsAreOnSameLine: () => sO,
      readBuilderProgram: () => E9,
      readConfigFile: () => kN,
      readJson: () => y6,
      readJsonConfigFile: () => Hre,
      readJsonOrUndefined: () => wJ,
      reduceEachLeadingCommentRange: () => YY,
      reduceEachTrailingCommentRange: () => ZY,
      reduceLeft: () => a_,
      reduceLeftIterator: () => qo,
      reducePathComponents: () => yx,
      refactor: () => jk,
      regExpEscape: () => r0e,
      regularExpressionFlagToCharacterCode: () => rhe,
      relativeComplement: () => _Q,
      removeAllComments: () => KA,
      removeEmitHelper: () => y0e,
      removeExtension: () => VA,
      removeFileExtension: () => __,
      removeIgnoredPath: () => v9,
      removeMinAndVersionNumbers: () => ij,
      removePrefix: () => C4,
      removeSuffix: () => zC,
      removeTrailingDirectorySeparator: () => T0,
      repeatString: () => dI,
      replaceElement: () => XR,
      replaceFirstStar: () => PS,
      resolutionExtensionIsTSOrJson: () => MD,
      resolveConfigFileProjectName: () => pV,
      resolveJSModule: () => _ne,
      resolveLibrary: () => jF,
      resolveModuleName: () => qS,
      resolveModuleNameFromCache: () => _1e,
      resolvePackageNameToPackageJson: () => wW,
      resolvePath: () => Fy,
      resolveProjectReferencePath: () => Ak,
      resolveTripleslashReference: () => CU,
      resolveTypeReferenceDirective: () => one,
      resolvingEmptyArray: () => mB,
      returnFalse: () => Mh,
      returnNoopFileWatcher: () => Mw,
      returnTrue: () => Sb,
      returnUndefined: () => Tb,
      returnsPromise: () => qq,
      rewriteModuleSpecifier: () => Dk,
      sameFlatMap: () => Rs,
      sameMap: () => el,
      sameMapping: () => eve,
      scanTokenAtPosition: () => yK,
      scanner: () => su,
      semanticDiagnosticsOptionDeclarations: () => Lre,
      serializeCompilerOptions: () => SW,
      server: () => GPe,
      servicesVersion: () => OTe,
      setCommentRange: () => fl,
      setConfigFileInOptions: () => TW,
      setConstantValue: () => Ete,
      setEmitFlags: () => ln,
      setGetSourceFileAsHashVersioned: () => C9,
      setIdentifierAutoGenerate: () => rN,
      setIdentifierGeneratedImportReference: () => Ate,
      setIdentifierTypeArguments: () => R0,
      setInternalEmitFlags: () => eN,
      setLocalizedDiagnosticMessages: () => wee,
      setNodeChildren: () => sre,
      setNodeFlags: () => Kee,
      setObjectAllocator: () => Dee,
      setOriginalNode: () => Fn,
      setParent: () => eo,
      setParentRecursive: () => bv,
      setPrivateIdentifier: () => HS,
      setSnippetElement: () => kz,
      setSourceMapRange: () => As,
      setStackTraceLimit: () => Bge,
      setStartsOnNewLine: () => WO,
      setSyntheticLeadingComments: () => Sv,
      setSyntheticTrailingComments: () => ik,
      setSys: () => qge,
      setSysLog: () => BY,
      setTextRange: () => pt,
      setTextRangeEnd: () => k6,
      setTextRangePos: () => zD,
      setTextRangePosEnd: () => Ud,
      setTextRangePosWidth: () => nz,
      setTokenSourceMapRange: () => xte,
      setTypeNode: () => wte,
      setUILocale: () => bQ,
      setValueDeclaration: () => _D,
      shouldAllowImportingTsExtension: () => Y6,
      shouldPreserveConstEnums: () => e1,
      shouldRewriteModuleSpecifier: () => fA,
      shouldUseUriStyleNodeCoreModules: () => hL,
      showModuleSpecifier: () => kee,
      signatureHasRestParameter: () => Qu,
      signatureToDisplayParts: () => hq,
      single: () => $R,
      singleElementArray: () => dx,
      singleIterator: () => Fh,
      singleOrMany: () => ig,
      singleOrUndefined: () => Fg,
      skipAlias: () => mu,
      skipConstraint: () => nq,
      skipOuterExpressions: () => Ic,
      skipParentheses: () => Gs,
      skipPartiallyEmittedExpressions: () => fd,
      skipTrivia: () => gs,
      skipTypeChecking: () => x6,
      skipTypeCheckingIgnoringNoCheck: () => Xee,
      skipTypeParentheses: () => pD,
      skipWhile: () => EQ,
      sliceAfter: () => Hee,
      some: () => _t,
      sortAndDeduplicate: () => x4,
      sortAndDeduplicateDiagnostics: () => GC,
      sourceFileAffectingCompilerOptions: () => fW,
      sourceFileMayBeEmitted: () => gv,
      sourceMapCommentRegExp: () => YW,
      sourceMapCommentRegExpDontCareLineStart: () => Lne,
      spacePart: () => Ec,
      spanMap: () => tS,
      startEndContainsRange: () => NJ,
      startEndOverlapsWithStartEnd: () => V9,
      startOnNewLine: () => Xu,
      startTracing: () => MQ,
      startsWith: () => ta,
      startsWithDirectory: () => Rj,
      startsWithUnderscore: () => Aq,
      startsWithUseStrict: () => pre,
      stringContainsAt: () => zse,
      stringToToken: () => oS,
      stripQuotes: () => Qp,
      supportedDeclarationExtensions: () => CO,
      supportedJSExtensionsFlat: () => T6,
      supportedLocaleDirectories: () => pZ,
      supportedTSExtensionsFlat: () => XJ,
      supportedTSImplementationExtensions: () => zA,
      suppressLeadingAndTrailingTrivia: () => Tf,
      suppressLeadingTrivia: () => yz,
      suppressTrailingTrivia: () => dte,
      symbolEscapedNameNoDefault: () => rL,
      symbolName: () => kc,
      symbolNameNoDefault: () => cq,
      symbolToDisplayParts: () => Hw,
      sys: () => Cl,
      sysLog: () => d3,
      tagNamesAreEquivalent: () => Ov,
      takeWhile: () => oj,
      targetOptionDeclaration: () => uW,
      targetToLibMap: () => KY,
      testFormatSettings: () => f2e,
      textChangeRangeIsUnchanged: () => cZ,
      textChangeRangeNewSpan: () => z4,
      textChanges: () => on,
      textOrKeywordPart: () => gq,
      textPart: () => sp,
      textRangeContainsPositionInclusive: () => T3,
      textRangeContainsTextSpan: () => rZ,
      textRangeIntersectsWithTextSpan: () => sZ,
      textSpanContainsPosition: () => Wj,
      textSpanContainsTextRange: () => Uj,
      textSpanContainsTextSpan: () => tZ,
      textSpanEnd: () => dc,
      textSpanIntersection: () => oZ,
      textSpanIntersectsWith: () => x3,
      textSpanIntersectsWithPosition: () => aZ,
      textSpanIntersectsWithTextSpan: () => iZ,
      textSpanIsEmpty: () => eZ,
      textSpanOverlap: () => nZ,
      textSpanOverlapsWith: () => uhe,
      textSpansEqual: () => fE,
      textToKeywordObj: () => R7,
      timestamp: () => ko,
      toArray: () => fx,
      toBuilderFileEmit: () => Kie,
      toBuilderStateFileInfoForMultiEmit: () => Zie,
      toEditorSettings: () => II,
      toFileNameLowerCase: () => Ny,
      toPath: () => Eo,
      toProgramEmitPending: () => eae,
      toSorted: () => uf,
      tokenIsIdentifierOrKeyword: () => M_,
      tokenIsIdentifierOrKeywordOrGreaterThan: () => qY,
      tokenToString: () => as,
      trace: () => _a,
      tracing: () => sn,
      tracingEnabled: () => p3,
      transferSourceFileChildren: () => ore,
      transform: () => UTe,
      transformClassFields: () => Kne,
      transformDeclarations: () => fU,
      transformECMAScriptModule: () => _U,
      transformES2015: () => pie,
      transformES2016: () => fie,
      transformES2017: () => nie,
      transformES2018: () => iie,
      transformES2019: () => aie,
      transformES2020: () => sie,
      transformES2021: () => oie,
      transformESDecorators: () => rie,
      transformESNext: () => cie,
      transformGenerators: () => die,
      transformImpliedNodeFormatDependentModule: () => gie,
      transformJsx: () => _ie,
      transformLegacyDecorators: () => tie,
      transformModule: () => uU,
      transformNamedEvaluation: () => Cf,
      transformNodes: () => WN,
      transformSystemModule: () => mie,
      transformTypeScript: () => Zne,
      transpile: () => K2e,
      transpileDeclaration: () => Y2e,
      transpileModule: () => uoe,
      transpileOptionValueCompilerOptions: () => Bre,
      tryAddToSet: () => b_,
      tryAndIgnoreErrors: () => pL,
      tryCast: () => qn,
      tryDirectoryExists: () => fL,
      tryExtractTSExtension: () => iO,
      tryFileExists: () => Yw,
      tryGetClassExtendingExpressionWithTypeArguments: () => kJ,
      tryGetClassImplementingOrExtendingExpressionWithTypeArguments: () => CJ,
      tryGetDirectories: () => _L,
      tryGetExtensionFromPath: () => Kg,
      tryGetImportFromModuleSpecifier: () => _A,
      tryGetJSDocSatisfiesTypeNode: () => FO,
      tryGetModuleNameFromFile: () => dN,
      tryGetModuleSpecifierFromDeclaration: () => Fx,
      tryGetNativePerformanceHooks: () => NQ,
      tryGetPropertyAccessOrIdentifierToString: () => AA,
      tryGetPropertyNameOfBindingOrAssignmentElement: () => fF,
      tryGetSourceMappingURL: () => Mne,
      tryGetTextOfPropertyName: () => tD,
      tryParseJson: () => NA,
      tryParsePattern: () => Zx,
      tryParsePatterns: () => qA,
      tryParseRawSourceMap: () => Rne,
      tryReadDirectory: () => xq,
      tryReadFile: () => fw,
      tryRemoveDirectoryPrefix: () => qJ,
      tryRemoveExtension: () => Gee,
      tryRemovePrefix: () => sj,
      tryRemoveSuffix: () => TQ,
      tscBuildOption: () => kk,
      typeAcquisitionDeclarations: () => bF,
      typeAliasNamePart: () => Ese,
      typeDirectiveIsEqualTo: () => eK,
      typeKeywords: () => rq,
      typeParameterNamePart: () => Dse,
      typeToDisplayParts: () => yI,
      unchangedPollThresholds: () => A7,
      unchangedTextChangeRange: () => z7,
      unescapeLeadingUnderscores: () => Ti,
      unmangleScopedPackageName: () => IN,
      unorderedRemoveItem: () => px,
      unprefixedNodeCoreModules: () => _te,
      unsetNodeChildren: () => Gz,
      unwrapInnermostStatementOfLabel: () => BB,
      unwrapParenthesizedExpression: () => lte,
      updateErrorForNoInputFiles: () => AF,
      updateLanguageServiceSourceFile: () => vG,
      updateMissingFilePathsWatch: () => TU,
      updateResolutionField: () => G6,
      updateSharedExtendedConfigFileWatcher: () => a9,
      updateSourceFile: () => sW,
      updateWatchingWildcardDirectories: () => qN,
      usesWildcardTypes: () => yv,
      usingSingleLineStringWriter: () => e6,
      utf16EncodeAsString: () => J4,
      validateLocaleAndSetLanguage: () => Gj,
      version: () => Qr,
      versionMajorMinor: () => Un,
      visitArray: () => bw,
      visitCommaListElements: () => LN,
      visitEachChild: () => Tr,
      visitFunctionBody: () => ap,
      visitIterationBody: () => D_,
      visitLexicalEnvironment: () => QW,
      visitNode: () => Ze,
      visitNodes: () => Fr,
      visitParameterList: () => Cc,
      walkUpBindingElementsAndPatterns: () => cS,
      walkUpOuterExpressions: () => dre,
      walkUpParenthesizedExpressions: () => dd,
      walkUpParenthesizedTypes: () => gA,
      walkUpParenthesizedTypesAndGetParentAndChild: () => qK,
      whitespaceOrMapCommentRegExp: () => ZW,
      writeCommentRange: () => h6,
      writeFile: () => Z5,
      writeFileEnsuringDirectories: () => hJ,
      zipWith: () => Ds
    }), ao.exports = Ci(oi);
    var Un = "6.0", Qr = "6.0.3", In = /* @__PURE__ */ ((e) => (e[e.LessThan = -1] = "LessThan", e[e.EqualTo = 0] = "EqualTo", e[e.GreaterThan = 1] = "GreaterThan", e))(In || {}), Te = [], mi = /* @__PURE__ */ new Map();
    function It(e) {
      return e !== void 0 ? e.length : 0;
    }
    function bt(e, t) {
      if (e !== void 0) for (let n = 0; n < e.length; n++) {
        const i = t(e[n], n);
        if (i) return i;
      }
    }
    function la(e, t) {
      if (e !== void 0) for (let n = e.length - 1; n >= 0; n--) {
        const i = t(e[n], n);
        if (i) return i;
      }
    }
    function Hn(e, t) {
      if (e !== void 0)
        for (let n = 0; n < e.length; n++) {
          const i = t(e[n], n);
          if (i !== void 0) return i;
        }
    }
    function rs(e, t) {
      for (const n of e) {
        const i = t(n);
        if (i !== void 0) return i;
      }
    }
    function qo(e, t, n) {
      let i = n;
      if (e) {
        let a = 0;
        for (const o of e)
          i = t(i, o, a), a++;
      }
      return i;
    }
    function Ds(e, t, n) {
      const i = [];
      E.assertEqual(e.length, t.length);
      for (let a = 0; a < e.length; a++) i.push(n(e[a], t[a], a));
      return i;
    }
    function Jn(e, t) {
      if (e.length <= 1) return e;
      const n = [];
      for (let i = 0, a = e.length; i < a; i++)
        i !== 0 && n.push(t), n.push(e[i]);
      return n;
    }
    function hr(e, t) {
      if (e !== void 0) {
        for (let n = 0; n < e.length; n++) if (!t(e[n], n)) return !1;
      }
      return !0;
    }
    function xr(e, t, n) {
      if (e !== void 0)
        for (let i = n ?? 0; i < e.length; i++) {
          const a = e[i];
          if (t(a, i)) return a;
        }
    }
    function Ya(e, t, n) {
      if (e !== void 0)
        for (let i = n ?? e.length - 1; i >= 0; i--) {
          const a = e[i];
          if (t(a, i)) return a;
        }
    }
    function qs(e, t, n) {
      if (e === void 0) return -1;
      for (let i = n ?? 0; i < e.length; i++) if (t(e[i], i)) return i;
      return -1;
    }
    function i_(e, t, n) {
      if (e === void 0) return -1;
      for (let i = n ?? e.length - 1; i >= 0; i--) if (t(e[i], i)) return i;
      return -1;
    }
    function Gi(e, t, n = S0) {
      if (e !== void 0) {
        for (let i = 0; i < e.length; i++) if (n(e[i], t)) return !0;
      }
      return !1;
    }
    function Wu(e, t, n) {
      for (let i = n ?? 0; i < e.length; i++) if (Gi(t, e.charCodeAt(i))) return i;
      return -1;
    }
    function Qf(e, t) {
      let n = 0;
      if (e !== void 0) for (let i = 0; i < e.length; i++) {
        const a = e[i];
        t(a, i) && n++;
      }
      return n;
    }
    function dn(e, t) {
      if (e !== void 0) {
        const n = e.length;
        let i = 0;
        for (; i < n && t(e[i]); ) i++;
        if (i < n) {
          const a = e.slice(0, i);
          for (i++; i < n; ) {
            const o = e[i];
            t(o) && a.push(o), i++;
          }
          return a;
        }
      }
      return e;
    }
    function T4(e, t) {
      let n = 0;
      for (let i = 0; i < e.length; i++) t(e[i], i, e) && (e[n] = e[i], n++);
      e.length = n;
    }
    function Yf(e) {
      e.length = 0;
    }
    function or(e, t) {
      let n;
      if (e !== void 0) {
        n = [];
        for (let i = 0; i < e.length; i++) n.push(t(e[i], i));
      }
      return n;
    }
    function* cx(e, t) {
      for (const n of e) yield t(n);
    }
    function el(e, t) {
      if (e !== void 0) for (let n = 0; n < e.length; n++) {
        const i = e[n], a = t(i, n);
        if (i !== a) {
          const o = e.slice(0, n);
          for (o.push(a), n++; n < e.length; n++) o.push(t(e[n], n));
          return o;
        }
      }
      return e;
    }
    function Rf(e) {
      const t = [];
      for (let n = 0; n < e.length; n++) {
        const i = e[n];
        i && (da(i) ? Mn(t, i) : t.push(i));
      }
      return t;
    }
    function ks(e, t) {
      let n;
      if (e !== void 0) for (let i = 0; i < e.length; i++) {
        const a = t(e[i], i);
        a && (da(a) ? n = Mn(n, a) : n = kr(n, a));
      }
      return n ?? Te;
    }
    function wi(e, t) {
      const n = [];
      if (e !== void 0) for (let i = 0; i < e.length; i++) {
        const a = t(e[i], i);
        a && (da(a) ? Mn(n, a) : n.push(a));
      }
      return n;
    }
    function* pa(e, t) {
      for (const n of e) {
        const i = t(n);
        i && (yield* i);
      }
    }
    function Rs(e, t) {
      let n;
      if (e !== void 0) for (let i = 0; i < e.length; i++) {
        const a = e[i], o = t(a, i);
        (n || a !== o || da(o)) && (n || (n = e.slice(0, i)), da(o) ? Mn(n, o) : n.push(o));
      }
      return n ?? e;
    }
    function kl(e, t) {
      const n = [];
      for (let i = 0; i < e.length; i++) {
        const a = t(e[i], i);
        if (a === void 0) return;
        n.push(a);
      }
      return n;
    }
    function Rn(e, t) {
      const n = [];
      if (e !== void 0) for (let i = 0; i < e.length; i++) {
        const a = t(e[i], i);
        a !== void 0 && n.push(a);
      }
      return n;
    }
    function* Go(e, t) {
      for (const n of e) {
        const i = t(n);
        i !== void 0 && (yield i);
      }
    }
    function v_(e, t, n) {
      if (e.has(t)) return e.get(t);
      const i = n();
      return e.set(t, i), i;
    }
    function b_(e, t) {
      return e.has(t) ? !1 : (e.add(t), !0);
    }
    function* Fh(e) {
      yield e;
    }
    function tS(e, t, n) {
      let i;
      if (e !== void 0) {
        i = [];
        const a = e.length;
        let o, c, _ = 0, u = 0;
        for (; _ < a; ) {
          for (; u < a; ) {
            const d = e[u];
            if (c = t(d, u), u === 0) o = c;
            else if (c !== o) break;
            u++;
          }
          if (_ < u) {
            const d = n(e.slice(_, u), o, _, u);
            d && i.push(d), _ = u;
          }
          o = c, u++;
        }
      }
      return i;
    }
    function lQ(e, t) {
      if (e === void 0) return;
      const n = /* @__PURE__ */ new Map();
      return e.forEach((i, a) => {
        const [o, c] = t(a, i);
        n.set(o, c);
      }), n;
    }
    function _t(e, t) {
      if (e !== void 0) if (t !== void 0) {
        for (let n = 0; n < e.length; n++) if (t(e[n])) return !0;
      } else return e.length > 0;
      return !1;
    }
    function uQ(e, t, n) {
      let i;
      for (let a = 0; a < e.length; a++) t(e[a]) ? i = i === void 0 ? a : i : i !== void 0 && (n(i, a), i = void 0);
      i !== void 0 && n(i, e.length);
    }
    function zi(e, t) {
      return t === void 0 || t.length === 0 ? e : e === void 0 || e.length === 0 ? t : [...e, ...t];
    }
    function K5e(e, t) {
      return t;
    }
    function v7(e) {
      return e.map(K5e);
    }
    function eOe(e, t, n) {
      const i = v7(e);
      nOe(e, i, n);
      let a = e[i[0]];
      const o = [i[0]];
      for (let c = 1; c < i.length; c++) {
        const _ = i[c], u = e[_];
        t(a, u) || (o.push(_), a = u);
      }
      return o.sort(), o.map((c) => e[c]);
    }
    function tOe(e, t) {
      const n = [];
      for (let i = 0; i < e.length; i++) hp(n, e[i], t);
      return n;
    }
    function Z1(e, t, n) {
      return e.length === 0 ? [] : e.length === 1 ? e.slice() : n ? eOe(e, t, n) : tOe(e, t);
    }
    function rOe(e, t) {
      if (e.length === 0) return Te;
      let n = e[0];
      const i = [n];
      for (let a = 1; a < e.length; a++) {
        const o = e[a];
        switch (t(o, n)) {
          case !0:
          case 0:
            continue;
          case -1:
            return E.fail("Array is unsorted.");
        }
        i.push(n = o);
      }
      return i;
    }
    function VR() {
      return [];
    }
    function wy(e, t, n, i, a) {
      if (e.length === 0)
        return e.push(t), !0;
      const o = Lg(e, t, mo, n);
      if (o < 0) {
        if (i && !a) {
          const c = ~o;
          if (c > 0 && i(t, e[c - 1])) return !1;
          if (c < e.length && i(t, e[c]))
            return e.splice(c, 1, t), !0;
        }
        return e.splice(~o, 0, t), !0;
      }
      return a ? (e.splice(o, 0, t), !0) : !1;
    }
    function x4(e, t, n) {
      return rOe(uf(e, t), n ?? t ?? Du);
    }
    function jf(e, t, n = S0) {
      if (e === void 0 || t === void 0) return e === t;
      if (e.length !== t.length) return !1;
      for (let i = 0; i < e.length; i++) if (!n(e[i], t[i], i)) return !1;
      return !0;
    }
    function a3(e) {
      let t;
      if (e !== void 0) for (let n = 0; n < e.length; n++) {
        const i = e[n];
        (t ?? !i) && (t ?? (t = e.slice(0, n)), i && t.push(i));
      }
      return t ?? e;
    }
    function _Q(e, t, n) {
      if (!t || !e || t.length === 0 || e.length === 0) return t;
      const i = [];
      e: for (let a = 0, o = 0; o < t.length; o++) {
        o > 0 && E.assertGreaterThanOrEqual(n(t[o], t[o - 1]), 0);
        t: for (const c = a; a < e.length; a++)
          switch (a > c && E.assertGreaterThanOrEqual(n(e[a], e[a - 1]), 0), n(t[o], e[a])) {
            case -1:
              i.push(t[o]);
              continue e;
            case 0:
              continue e;
            case 1:
              continue t;
          }
      }
      return i;
    }
    function kr(e, t) {
      return t === void 0 ? e : e === void 0 ? [t] : (e.push(t), e);
    }
    function lx(e, t) {
      return e === void 0 ? t : t === void 0 ? e : da(e) ? da(t) ? zi(e, t) : kr(e, t) : da(t) ? kr(t, e) : [e, t];
    }
    function fQ(e, t) {
      return t < 0 ? e.length + t : t;
    }
    function Mn(e, t, n, i) {
      if (t === void 0 || t.length === 0) return e;
      if (e === void 0) return t.slice(n, i);
      n = n === void 0 ? 0 : fQ(t, n), i = i === void 0 ? t.length : fQ(t, i);
      for (let a = n; a < i && a < t.length; a++) t[a] !== void 0 && e.push(t[a]);
      return e;
    }
    function hp(e, t, n) {
      return Gi(e, t, n) ? !1 : (e.push(t), !0);
    }
    function Lh(e, t, n) {
      return e !== void 0 ? (hp(e, t, n), e) : [t];
    }
    function nOe(e, t, n) {
      t.sort((i, a) => n(e[i], e[a]) || Fo(i, a));
    }
    function uf(e, t) {
      return e.length === 0 ? Te : e.slice().sort(t);
    }
    function* qR(e) {
      for (let t = e.length - 1; t >= 0; t--) yield e[t];
    }
    function GR(e, t, n, i) {
      for (; n < i; ) {
        if (e[n] !== t[n]) return !1;
        n++;
      }
      return !0;
    }
    var Py = Array.prototype.at ? (e, t) => e?.at(t) : (e, t) => {
      if (e !== void 0 && (t = fQ(e, t), t < e.length))
        return e[t];
    };
    function ul(e) {
      return e === void 0 || e.length === 0 ? void 0 : e[0];
    }
    function b7(e) {
      if (e !== void 0) for (const t of e) return t;
    }
    function js(e) {
      return E.assert(e.length !== 0), e[0];
    }
    function HR(e) {
      for (const t of e) return t;
      E.fail("iterator is empty");
    }
    function Wo(e) {
      return e === void 0 || e.length === 0 ? void 0 : e[e.length - 1];
    }
    function ws(e) {
      return E.assert(e.length !== 0), e[e.length - 1];
    }
    function Fg(e) {
      return e !== void 0 && e.length === 1 ? e[0] : void 0;
    }
    function $R(e) {
      return E.checkDefined(Fg(e));
    }
    function ig(e) {
      return e !== void 0 && e.length === 1 ? e[0] : e;
    }
    function XR(e, t, n) {
      const i = e.slice(0);
      return i[t] = n, i;
    }
    function Lg(e, t, n, i, a) {
      return ux(e, n(t), n, i, a);
    }
    function ux(e, t, n, i, a) {
      if (!_t(e)) return -1;
      let o = a ?? 0, c = e.length - 1;
      for (; o <= c; ) {
        const _ = o + (c - o >> 1), u = n(e[_], _);
        switch (Math.sign(i(u, t))) {
          case -1:
            o = _ + 1;
            break;
          case 0:
            return _;
          case 1:
            c = _ - 1;
            break;
        }
      }
      return ~o;
    }
    function a_(e, t, n, i, a) {
      if (e && e.length > 0) {
        const o = e.length;
        if (o > 0) {
          let c = i === void 0 || i < 0 ? 0 : i;
          const _ = a === void 0 || c + a > o - 1 ? o - 1 : c + a;
          let u;
          for (arguments.length <= 2 ? (u = e[c], c++) : u = n; c <= _; )
            u = t(u, e[c], c), c++;
          return u;
        }
      }
      return n;
    }
    var K1 = Object.prototype.hasOwnProperty;
    function po(e, t) {
      return K1.call(e, t);
    }
    function s3(e, t) {
      return K1.call(e, t) ? e[t] : void 0;
    }
    function mm(e) {
      const t = [];
      for (const n in e) K1.call(e, n) && t.push(n);
      return t;
    }
    function kge(e) {
      const t = [];
      do {
        const n = Object.getOwnPropertyNames(e);
        for (const i of n) hp(t, i);
      } while (e = Object.getPrototypeOf(e));
      return t;
    }
    function _x(e) {
      const t = [];
      for (const n in e) K1.call(e, n) && t.push(e[n]);
      return t;
    }
    function pQ(e, t) {
      const n = new Array(e);
      for (let i = 0; i < e; i++) n[i] = t(i);
      return n;
    }
    function ma(e, t) {
      const n = [];
      for (const i of e) n.push(t ? t(i) : i);
      return n;
    }
    function rS(e, ...t) {
      for (const n of t)
        if (n !== void 0)
          for (const i in n) po(n, i) && (e[i] = n[i]);
      return e;
    }
    function dQ(e, t, n = S0) {
      if (e === t) return !0;
      if (!e || !t) return !1;
      for (const i in e) if (K1.call(e, i) && (!K1.call(t, i) || !n(e[i], t[i])))
        return !1;
      for (const i in t) if (K1.call(t, i) && !K1.call(e, i))
        return !1;
      return !0;
    }
    function jC(e, t, n = mo) {
      const i = /* @__PURE__ */ new Map();
      for (let a = 0; a < e.length; a++) {
        const o = e[a], c = t(o);
        c !== void 0 && i.set(c, n(o));
      }
      return i;
    }
    function mQ(e, t, n = mo) {
      const i = [];
      for (let a = 0; a < e.length; a++) {
        const o = e[a];
        i[t(o)] = n(o);
      }
      return i;
    }
    function o3(e, t, n = mo) {
      const i = Up();
      for (let a = 0; a < e.length; a++) {
        const o = e[a];
        i.add(t(o), n(o));
      }
      return i;
    }
    function BC(e, t, n = mo) {
      return ma(o3(e, t).values(), n);
    }
    function QR(e, t) {
      const n = {};
      if (e !== void 0) for (let i = 0; i < e.length; i++) {
        const a = e[i], o = `${t(a)}`;
        (n[o] ?? (n[o] = [])).push(a);
      }
      return n;
    }
    function gQ(e) {
      const t = {};
      for (const n in e) K1.call(e, n) && (t[n] = e[n]);
      return t;
    }
    function YR(e, t) {
      const n = {};
      for (const i in t) K1.call(t, i) && (n[i] = t[i]);
      for (const i in e) K1.call(e, i) && (n[i] = e[i]);
      return n;
    }
    function ZR(e, t) {
      for (const n in t) K1.call(t, n) && (e[n] = t[n]);
    }
    function Ua(e, t) {
      return t?.bind(e);
    }
    function Up() {
      const e = /* @__PURE__ */ new Map();
      return e.add = iOe, e.remove = aOe, e;
    }
    function iOe(e, t) {
      let n = this.get(e);
      return n !== void 0 ? n.push(t) : this.set(e, n = [t]), n;
    }
    function aOe(e, t) {
      const n = this.get(e);
      n !== void 0 && (px(n, t), n.length || this.delete(e));
    }
    function c3(e) {
      const t = e?.slice() ?? [];
      let n = 0;
      function i() {
        return n === t.length;
      }
      function a(...c) {
        t.push(...c);
      }
      function o() {
        if (i()) throw new Error("Queue is empty");
        const c = t[n];
        if (t[n] = void 0, n++, n > 100 && n > t.length >> 1) {
          const _ = t.length - n;
          t.copyWithin(0, n), t.length = _, n = 0;
        }
        return c;
      }
      return {
        enqueue: a,
        dequeue: o,
        isEmpty: i
      };
    }
    function KR(e, t) {
      const n = /* @__PURE__ */ new Map();
      let i = 0;
      function* a() {
        for (const c of n.values()) da(c) ? yield* c : yield c;
      }
      const o = {
        has(c) {
          const _ = e(c);
          if (!n.has(_)) return !1;
          const u = n.get(_);
          return da(u) ? Gi(u, c, t) : t(u, c);
        },
        add(c) {
          const _ = e(c);
          if (n.has(_)) {
            const u = n.get(_);
            if (da(u))
              Gi(u, c, t) || (u.push(c), i++);
            else {
              const d = u;
              t(d, c) || (n.set(_, [d, c]), i++);
            }
          } else
            n.set(_, c), i++;
          return this;
        },
        delete(c) {
          const _ = e(c);
          if (!n.has(_)) return !1;
          const u = n.get(_);
          if (da(u)) {
            for (let d = 0; d < u.length; d++) if (t(u[d], c))
              return u.length === 1 ? n.delete(_) : u.length === 2 ? n.set(_, u[1 - d]) : Ege(u, d), i--, !0;
          } else if (t(u, c))
            return n.delete(_), i--, !0;
          return !1;
        },
        clear() {
          n.clear(), i = 0;
        },
        get size() {
          return i;
        },
        forEach(c) {
          for (const _ of ma(n.values())) if (da(_)) for (const u of _) c(u, u, o);
          else {
            const u = _;
            c(u, u, o);
          }
        },
        keys() {
          return a();
        },
        values() {
          return a();
        },
        *entries() {
          for (const c of a()) yield [c, c];
        },
        [Symbol.iterator]: () => a(),
        [Symbol.toStringTag]: n[Symbol.toStringTag]
      };
      return o;
    }
    function da(e) {
      return Array.isArray(e);
    }
    function fx(e) {
      return da(e) ? e : [e];
    }
    function Ta(e) {
      return typeof e == "string";
    }
    function Ay(e) {
      return typeof e == "number";
    }
    function qn(e, t) {
      return e !== void 0 && t(e) ? e : void 0;
    }
    function ns(e, t) {
      return e !== void 0 && t(e) ? e : E.fail(`Invalid cast. The supplied value ${e} did not pass the test '${E.getFunctionName(t)}'.`);
    }
    function so(e) {
    }
    function Mh() {
      return !1;
    }
    function Sb() {
      return !0;
    }
    function Tb() {
    }
    function mo(e) {
      return e;
    }
    function sOe(e) {
      return e.toLowerCase();
    }
    var Cge = /[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;
    function Ny(e) {
      return Cge.test(e) ? e.replace(Cge, sOe) : e;
    }
    function is() {
      throw new Error("Not implemented");
    }
    function s_(e) {
      let t;
      return () => (e && (t = e(), e = void 0), t);
    }
    function gm(e) {
      const t = /* @__PURE__ */ new Map();
      return (n) => {
        const i = `${typeof n}:${n}`;
        let a = t.get(i);
        return a === void 0 && !t.has(i) && (a = e(n), t.set(i, a)), a;
      };
    }
    var hQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Normal = 1] = "Normal", e[e.Aggressive = 2] = "Aggressive", e[e.VeryAggressive = 3] = "VeryAggressive", e))(hQ || {});
    function S0(e, t) {
      return e === t;
    }
    function ev(e, t) {
      return e === t || e !== void 0 && t !== void 0 && e.toUpperCase() === t.toUpperCase();
    }
    function nS(e, t) {
      return S0(e, t);
    }
    function iS(e, t) {
      return e === t ? 0 : e === void 0 ? -1 : t === void 0 ? 1 : e < t ? -1 : 1;
    }
    function Fo(e, t) {
      return iS(e, t);
    }
    function S7(e, t) {
      return Fo(e?.start, t?.start) || Fo(e?.length, t?.length);
    }
    function ej(e, t, n) {
      for (let i = 0; i < e.length; i++) t = Math.max(t, n(e[i]));
      return t;
    }
    function tj(e, t) {
      return a_(e, (n, i) => t(n, i) === -1 ? n : i);
    }
    function l3(e, t) {
      return e === t ? 0 : e === void 0 ? -1 : t === void 0 ? 1 : (e = e.toUpperCase(), t = t.toUpperCase(), e < t ? -1 : e > t ? 1 : 0);
    }
    function yQ(e, t) {
      return e === t ? 0 : e === void 0 ? -1 : t === void 0 ? 1 : (e = e.toLowerCase(), t = t.toLowerCase(), e < t ? -1 : e > t ? 1 : 0);
    }
    function Du(e, t) {
      return iS(e, t);
    }
    function JC(e) {
      return e ? l3 : Du;
    }
    var oOe = /* @__PURE__ */ (() => {
      return t;
      function e(n, i, a) {
        if (n === i) return 0;
        if (n === void 0) return -1;
        if (i === void 0) return 1;
        const o = a(n, i);
        return o < 0 ? -1 : o > 0 ? 1 : 0;
      }
      function t(n) {
        const i = new Intl.Collator(n, {
          usage: "sort",
          sensitivity: "variant",
          numeric: !0
        }).compare;
        return (a, o) => e(a, o, i);
      }
    })(), rj, nj;
    function vQ() {
      return nj;
    }
    function bQ(e) {
      nj !== e && (nj = e, rj = void 0);
    }
    function u3(e, t) {
      return rj ?? (rj = oOe(nj)), rj(e, t);
    }
    function SQ(e, t, n, i) {
      return e === t ? 0 : e === void 0 ? -1 : t === void 0 ? 1 : i(e[n], t[n]);
    }
    function tv(e, t) {
      return Fo(e ? 1 : 0, t ? 1 : 0);
    }
    function xb(e, t, n) {
      const i = Math.max(2, Math.floor(e.length * 0.34));
      let a = Math.floor(e.length * 0.4) + 1, o;
      for (const c of t) {
        const _ = n(c);
        if (_ !== void 0 && Math.abs(_.length - e.length) <= i) {
          if (_ === e || _.length < 3 && _.toLowerCase() !== e.toLowerCase()) continue;
          const u = cOe(e, _, a - 0.1);
          if (u === void 0) continue;
          E.assert(u < a), a = u, o = c;
        }
      }
      return o;
    }
    function cOe(e, t, n) {
      let i = new Array(t.length + 1), a = new Array(t.length + 1);
      const o = n + 0.01;
      for (let _ = 0; _ <= t.length; _++) i[_] = _;
      for (let _ = 1; _ <= e.length; _++) {
        const u = e.charCodeAt(_ - 1), d = Math.ceil(_ > n ? _ - n : 1), g = Math.floor(t.length > n + _ ? n + _ : t.length);
        a[0] = _;
        let h = _;
        for (let T = 1; T < d; T++) a[T] = o;
        for (let T = d; T <= g; T++) {
          const k = e[_ - 1].toLowerCase() === t[T - 1].toLowerCase() ? i[T - 1] + 0.1 : i[T - 1] + 2, D = u === t.charCodeAt(T - 1) ? i[T - 1] : Math.min(i[T] + 1, a[T - 1] + 1, k);
          a[T] = D, h = Math.min(h, D);
        }
        for (let T = g + 1; T <= t.length; T++) a[T] = o;
        if (h > n) return;
        const S = i;
        i = a, a = S;
      }
      const c = i[t.length];
      return c > n ? void 0 : c;
    }
    function Uo(e, t, n) {
      const i = e.length - t.length;
      return i >= 0 && (n ? ev(e.slice(i), t) : e.indexOf(t, i) === i);
    }
    function zC(e, t) {
      return Uo(e, t) ? e.slice(0, e.length - t.length) : e;
    }
    function TQ(e, t) {
      return Uo(e, t) ? e.slice(0, e.length - t.length) : void 0;
    }
    function ij(e) {
      let t = e.length;
      for (let n = t - 1; n > 0; n--) {
        let i = e.charCodeAt(n);
        if (i >= 48 && i <= 57) do
          --n, i = e.charCodeAt(n);
        while (n > 0 && i >= 48 && i <= 57);
        else if (n > 4 && (i === 110 || i === 78)) {
          if (--n, i = e.charCodeAt(n), i !== 105 && i !== 73 || (--n, i = e.charCodeAt(n), i !== 109 && i !== 77)) break;
          --n, i = e.charCodeAt(n);
        } else break;
        if (i !== 45 && i !== 46) break;
        t = n;
      }
      return t === e.length ? e : e.slice(0, t);
    }
    function k4(e, t) {
      for (let n = 0; n < e.length; n++) if (e[n] === t)
        return Iy(e, n), !0;
      return !1;
    }
    function Iy(e, t) {
      for (let n = t; n < e.length - 1; n++) e[n] = e[n + 1];
      e.pop();
    }
    function Ege(e, t) {
      e[t] = e[e.length - 1], e.pop();
    }
    function px(e, t) {
      return lOe(e, (n) => n === t);
    }
    function lOe(e, t) {
      for (let n = 0; n < e.length; n++) if (t(e[n]))
        return Ege(e, n), !0;
      return !1;
    }
    function pu(e) {
      return e ? mo : Ny;
    }
    function xQ({ prefix: e, suffix: t }) {
      return `${e}*${t}`;
    }
    function kQ(e, t) {
      return E.assert(T7(e, t)), t.substring(e.prefix.length, t.length - e.suffix.length);
    }
    function aj(e, t, n) {
      let i, a = -1;
      for (let o = 0; o < e.length; o++) {
        const c = e[o], _ = t(c);
        _.prefix.length > a && T7(_, n) && (a = _.prefix.length, i = c);
      }
      return i;
    }
    function ta(e, t, n) {
      return n ? ev(e.slice(0, t.length), t) : e.lastIndexOf(t, 0) === 0;
    }
    function C4(e, t) {
      return ta(e, t) ? e.substr(t.length) : e;
    }
    function sj(e, t, n = mo) {
      return ta(n(e), n(t)) ? e.substring(t.length) : void 0;
    }
    function T7({ prefix: e, suffix: t }, n) {
      return n.length >= e.length + t.length && ta(n, e) && Uo(n, t);
    }
    function x7(e, t) {
      return (n) => e(n) && t(n);
    }
    function _f(...e) {
      return (...t) => {
        let n;
        for (const i of e)
          if (n = i(...t), n) return n;
        return n;
      };
    }
    function k7(e) {
      return (...t) => !e(...t);
    }
    function Dge(e) {
    }
    function dx(e) {
      return e === void 0 ? void 0 : [e];
    }
    function C7(e, t, n, i, a, o) {
      o ?? (o = so);
      let c = 0, _ = 0;
      const u = e.length, d = t.length;
      let g = !1;
      for (; c < u && _ < d; ) {
        const h = e[c], S = t[_], T = n(h, S);
        T === -1 ? (i(h), c++, g = !0) : T === 1 ? (a(S), _++, g = !0) : (o(S, h), c++, _++);
      }
      for (; c < u; )
        i(e[c++]), g = !0;
      for (; _ < d; )
        a(t[_++]), g = !0;
      return g;
    }
    function CQ(e) {
      const t = [];
      return wge(e, t, void 0, 0), t;
    }
    function wge(e, t, n, i) {
      for (const a of e[i]) {
        let o;
        n ? (o = n.slice(), o.push(a)) : o = [a], i === e.length - 1 ? t.push(o) : wge(e, t, o, i + 1);
      }
    }
    function oj(e, t) {
      if (e !== void 0) {
        const n = e.length;
        let i = 0;
        for (; i < n && t(e[i]); ) i++;
        return e.slice(0, i);
      }
    }
    function EQ(e, t) {
      if (e !== void 0) {
        const n = e.length;
        let i = 0;
        for (; i < n && t(e[i]); ) i++;
        return e.slice(i);
      }
    }
    function cj() {
      return typeof process < "u" && !!process.nextTick && !process.browser && typeof eS < "u";
    }
    var DQ = /* @__PURE__ */ ((e) => (e[e.Off = 0] = "Off", e[e.Error = 1] = "Error", e[e.Warning = 2] = "Warning", e[e.Info = 3] = "Info", e[e.Verbose = 4] = "Verbose", e))(DQ || {}), E;
    ((e) => {
      let t = 0;
      e.currentLogLevel = 2, e.isDebugging = !1;
      function n(Me) {
        return e.currentLogLevel <= Me;
      }
      e.shouldLog = n;
      function i(Me, vt) {
        e.loggingHost && n(Me) && e.loggingHost.log(Me, vt);
      }
      function a(Me) {
        i(3, Me);
      }
      e.log = a, ((Me) => {
        function vt(zn) {
          i(1, zn);
        }
        Me.error = vt;
        function tr(zn) {
          i(2, zn);
        }
        Me.warn = tr;
        function Ur(zn) {
          i(3, zn);
        }
        Me.log = Ur;
        function $n(zn) {
          i(4, zn);
        }
        Me.trace = $n;
      })(a = e.log || (e.log = {}));
      const o = {};
      function c() {
        return t;
      }
      e.getAssertionLevel = c;
      function _(Me) {
        const vt = t;
        if (t = Me, Me > vt) for (const tr of mm(o)) {
          const Ur = o[tr];
          Ur !== void 0 && e[tr] !== Ur.assertion && Me >= Ur.level && (e[tr] = Ur, o[tr] = void 0);
        }
      }
      e.setAssertionLevel = _;
      function u(Me) {
        return t >= Me;
      }
      e.shouldAssert = u;
      function d(Me, vt) {
        return u(Me) ? !0 : (o[vt] = {
          level: Me,
          assertion: e[vt]
        }, e[vt] = so, !1);
      }
      function g(Me, vt) {
        debugger;
        const tr = /* @__PURE__ */ new Error(Me ? `Debug Failure. ${Me}` : "Debug Failure.");
        throw Error.captureStackTrace && Error.captureStackTrace(tr, vt || g), tr;
      }
      e.fail = g;
      function h(Me, vt, tr) {
        return g(`${vt || "Unexpected node."}\r
Node ${Se(Me.kind)} was unexpected.`, tr || h);
      }
      e.failBadSyntaxKind = h;
      function S(Me, vt, tr, Ur) {
        Me || (vt = vt ? `False expression: ${vt}` : "False expression.", tr && (vt += `\r
Verbose Debug Information: ` + (typeof tr == "string" ? tr : tr())), g(vt, Ur || S));
      }
      e.assert = S;
      function T(Me, vt, tr, Ur, $n) {
        Me !== vt && g(`Expected ${Me} === ${vt}. ${tr ? Ur ? `${tr} ${Ur}` : tr : ""}`, $n || T);
      }
      e.assertEqual = T;
      function k(Me, vt, tr, Ur) {
        Me >= vt && g(`Expected ${Me} < ${vt}. ${tr || ""}`, Ur || k);
      }
      e.assertLessThan = k;
      function D(Me, vt, tr) {
        Me > vt && g(`Expected ${Me} <= ${vt}`, tr || D);
      }
      e.assertLessThanOrEqual = D;
      function P(Me, vt, tr) {
        Me < vt && g(`Expected ${Me} >= ${vt}`, tr || P);
      }
      e.assertGreaterThanOrEqual = P;
      function N(Me, vt, tr) {
        Me == null && g(vt, tr || N);
      }
      e.assertIsDefined = N;
      function M(Me, vt, tr) {
        return N(Me, vt, tr || M), Me;
      }
      e.checkDefined = M;
      function R(Me, vt, tr) {
        for (const Ur of Me) N(Ur, vt, tr || R);
      }
      e.assertEachIsDefined = R;
      function G(Me, vt, tr) {
        return R(Me, vt, tr || G), Me;
      }
      e.checkEachDefined = G;
      function L(Me, vt = "Illegal value:", tr) {
        return g(`${vt} ${typeof Me == "object" && po(Me, "kind") && po(Me, "pos") ? "SyntaxKind: " + Se(Me.kind) : JSON.stringify(Me)}`, tr || L);
      }
      e.assertNever = L;
      function z(Me, vt, tr, Ur) {
        d(1, "assertEachNode") && S(vt === void 0 || hr(Me, vt), tr || "Unexpected node.", () => `Node array did not pass test '${se(vt)}'.`, Ur || z);
      }
      e.assertEachNode = z;
      function H(Me, vt, tr, Ur) {
        d(1, "assertNode") && S(Me !== void 0 && (vt === void 0 || vt(Me)), tr || "Unexpected node.", () => `Node ${Se(Me?.kind)} did not pass test '${se(vt)}'.`, Ur || H);
      }
      e.assertNode = H;
      function U(Me, vt, tr, Ur) {
        d(1, "assertNotNode") && S(Me === void 0 || vt === void 0 || !vt(Me), tr || "Unexpected node.", () => `Node ${Se(Me.kind)} should not have passed test '${se(vt)}'.`, Ur || U);
      }
      e.assertNotNode = U;
      function pe(Me, vt, tr, Ur) {
        d(1, "assertOptionalNode") && S(vt === void 0 || Me === void 0 || vt(Me), tr || "Unexpected node.", () => `Node ${Se(Me?.kind)} did not pass test '${se(vt)}'.`, Ur || pe);
      }
      e.assertOptionalNode = pe;
      function ie(Me, vt, tr, Ur) {
        d(1, "assertOptionalToken") && S(vt === void 0 || Me === void 0 || Me.kind === vt, tr || "Unexpected node.", () => `Node ${Se(Me?.kind)} was not a '${Se(vt)}' token.`, Ur || ie);
      }
      e.assertOptionalToken = ie;
      function W(Me, vt, tr) {
        d(1, "assertMissingNode") && S(Me === void 0, vt || "Unexpected node.", () => `Node ${Se(Me.kind)} was unexpected'.`, tr || W);
      }
      e.assertMissingNode = W;
      function Q(Me) {
      }
      e.type = Q;
      function se(Me) {
        if (typeof Me != "function") return "";
        if (po(Me, "name")) return Me.name;
        {
          const vt = Function.prototype.toString.call(Me), tr = /^function\s+([\w$]+)\s*\(/.exec(vt);
          return tr ? tr[1] : "";
        }
      }
      e.getFunctionName = se;
      function he(Me) {
        return `{ name: ${Ti(Me.escapedName)}; flags: ${K(Me.flags)}; declarations: ${or(Me.declarations, (vt) => Se(vt.kind))} }`;
      }
      e.formatSymbol = he;
      function fe(Me = 0, vt, tr) {
        const Ur = $(vt);
        if (Me === 0) return Ur.length > 0 && Ur[0][0] === 0 ? Ur[0][1] : "0";
        if (tr) {
          const $n = [];
          let zn = Me;
          for (const [na, Ea] of Ur) {
            if (na > Me) break;
            na !== 0 && na & Me && ($n.push(Ea), zn &= ~na);
          }
          if (zn === 0) return $n.join("|");
        } else for (const [$n, zn] of Ur) if ($n === Me) return zn;
        return Me.toString();
      }
      e.formatEnum = fe;
      const de = /* @__PURE__ */ new Map();
      function $(Me) {
        const vt = de.get(Me);
        if (vt) return vt;
        const tr = [];
        for (const $n in Me) {
          const zn = Me[$n];
          typeof zn == "number" && tr.push([zn, $n]);
        }
        const Ur = uf(tr, ($n, zn) => Fo($n[0], zn[0]));
        return de.set(Me, Ur), Ur;
      }
      function Se(Me) {
        return fe(Me, fj, !1);
      }
      e.formatSyntaxKind = Se;
      function Be(Me) {
        return fe(Me, Ej, !1);
      }
      e.formatSnippetKind = Be;
      function ce(Me) {
        return fe(Me, kj, !1);
      }
      e.formatScriptKind = ce;
      function oe(Me) {
        return fe(Me, pj, !0);
      }
      e.formatNodeFlags = oe;
      function ge(Me) {
        return fe(Me, bj, !0);
      }
      e.formatNodeCheckFlags = ge;
      function Ae(Me) {
        return fe(Me, dj, !0);
      }
      e.formatModifierFlags = Ae;
      function Ne(Me) {
        return fe(Me, Cj, !0);
      }
      e.formatTransformFlags = Ne;
      function ot(Me) {
        return fe(Me, Dj, !0);
      }
      e.formatEmitFlags = ot;
      function K(Me) {
        return fe(Me, vj, !0);
      }
      e.formatSymbolFlags = K;
      function ke(Me) {
        return fe(Me, Sj, !0);
      }
      e.formatTypeFlags = ke;
      function ae(Me) {
        return fe(Me, xj, !0);
      }
      e.formatSignatureFlags = ae;
      function Ce(Me) {
        return fe(Me, Tj, !0);
      }
      e.formatObjectFlags = Ce;
      function ue(Me) {
        return fe(Me, D7, !0);
      }
      e.formatFlowFlags = ue;
      function Ie(Me) {
        return fe(Me, mj, !0);
      }
      e.formatRelationComparisonResult = Ie;
      function Xe(Me) {
        return fe(Me, GW, !0);
      }
      e.formatCheckMode = Xe;
      function Ft(Me) {
        return fe(Me, HW, !0);
      }
      e.formatSignatureCheckMode = Ft;
      function Ut(Me) {
        return fe(Me, VW, !0);
      }
      e.formatTypeFacts = Ut;
      let Xt = !1, Ar;
      function Ct(Me) {
        "__debugFlowFlags" in Me || Object.defineProperties(Me, {
          __tsDebuggerDisplay: { value() {
            const vt = this.flags & 2 ? "FlowStart" : this.flags & 4 ? "FlowBranchLabel" : this.flags & 8 ? "FlowLoopLabel" : this.flags & 16 ? "FlowAssignment" : this.flags & 32 ? "FlowTrueCondition" : this.flags & 64 ? "FlowFalseCondition" : this.flags & 128 ? "FlowSwitchClause" : this.flags & 256 ? "FlowArrayMutation" : this.flags & 512 ? "FlowCall" : this.flags & 1024 ? "FlowReduceLabel" : this.flags & 1 ? "FlowUnreachable" : "UnknownFlow", tr = this.flags & -2048;
            return `${vt}${tr ? ` (${ue(tr)})` : ""}`;
          } },
          __debugFlowFlags: { get() {
            return fe(this.flags, D7, !0);
          } },
          __debugToString: { value() {
            return ra(this);
          } }
        });
      }
      function Kt(Me) {
        return Xt && (typeof Object.setPrototypeOf == "function" ? (Ar || (Ar = Object.create(Object.prototype), Ct(Ar)), Object.setPrototypeOf(Me, Ar)) : Ct(Me)), Me;
      }
      e.attachFlowNodeDebugInfo = Kt;
      let zr;
      function _i(Me) {
        "__tsDebuggerDisplay" in Me || Object.defineProperties(Me, { __tsDebuggerDisplay: { value(vt) {
          return vt = String(vt).replace(/(?:,[\s\w]+:[^,]+)+\]$/, "]"), `NodeArray ${vt}`;
        } } });
      }
      function Gr(Me) {
        Xt && (typeof Object.setPrototypeOf == "function" ? (zr || (zr = Object.create(Array.prototype), _i(zr)), Object.setPrototypeOf(Me, zr)) : _i(Me));
      }
      e.attachNodeArrayDebugInfo = Gr;
      function Nt() {
        if (Xt) return;
        const Me = /* @__PURE__ */ new WeakMap(), vt = /* @__PURE__ */ new WeakMap();
        Object.defineProperties(gu.getSymbolConstructor().prototype, {
          __tsDebuggerDisplay: { value() {
            const Ur = this.flags & 33554432 ? "TransientSymbol" : "Symbol", $n = this.flags & -33554433;
            return `${Ur} '${kc(this)}'${$n ? ` (${K($n)})` : ""}`;
          } },
          __debugFlags: { get() {
            return K(this.flags);
          } }
        }), Object.defineProperties(gu.getTypeConstructor().prototype, {
          __tsDebuggerDisplay: { value() {
            const Ur = this.flags & 402431 ? `IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName ? ` (${this.debugIntrinsicName})` : ""}` : this.flags & 12 ? "NullableType" : this.flags & 3072 ? `LiteralType ${JSON.stringify(this.value)}` : this.flags & 4096 ? `LiteralType ${this.value.negative ? "-" : ""}${this.value.base10Value}n` : this.flags & 16384 ? "UniqueESSymbolType" : this.flags & 65536 ? "EnumType" : this.flags & 134217728 ? "UnionType" : this.flags & 268435456 ? "IntersectionType" : this.flags & 2097152 ? "IndexType" : this.flags & 33554432 ? "IndexedAccessType" : this.flags & 67108864 ? "ConditionalType" : this.flags & 16777216 ? "SubstitutionType" : this.flags & 524288 ? "TypeParameter" : this.flags & 1048576 ? this.objectFlags & 3 ? "InterfaceType" : this.objectFlags & 4 ? "TypeReference" : this.objectFlags & 8 ? "TupleType" : this.objectFlags & 16 ? "AnonymousType" : this.objectFlags & 32 ? "MappedType" : this.objectFlags & 1024 ? "ReverseMappedType" : this.objectFlags & 256 ? "EvolvingArrayType" : "ObjectType" : "Type", $n = this.flags & 1048576 ? this.objectFlags & -142607680 : 0;
            return `${Ur}${this.symbol ? ` '${kc(this.symbol)}'` : ""}${$n ? ` (${Ce($n)})` : ""}`;
          } },
          __debugFlags: { get() {
            return ke(this.flags);
          } },
          __debugObjectFlags: { get() {
            return this.flags & 1048576 ? Ce(this.objectFlags) : "";
          } },
          __debugTypeToString: { value() {
            let Ur = Me.get(this);
            return Ur === void 0 && (Ur = this.checker.typeToString(this), Me.set(this, Ur)), Ur;
          } }
        }), Object.defineProperties(gu.getSignatureConstructor().prototype, {
          __debugFlags: { get() {
            return ae(this.flags);
          } },
          __debugSignatureToString: { value() {
            var Ur;
            return (Ur = this.checker) == null ? void 0 : Ur.signatureToString(this);
          } }
        });
        const tr = [
          gu.getNodeConstructor(),
          gu.getIdentifierConstructor(),
          gu.getTokenConstructor(),
          gu.getSourceFileConstructor()
        ];
        for (const Ur of tr) po(Ur.prototype, "__debugKind") || Object.defineProperties(Ur.prototype, {
          __tsDebuggerDisplay: { value() {
            return `${Ko(this) ? "GeneratedIdentifier" : Fe(this) ? `Identifier '${On(this)}'` : Oi(this) ? `PrivateIdentifier '${On(this)}'` : Ts(this) ? `StringLiteral ${JSON.stringify(this.text.length < 10 ? this.text : this.text.slice(10) + "...")}` : V_(this) ? `NumericLiteral ${this.text}` : E6(this) ? `BigIntLiteral ${this.text}n` : $o(this) ? "TypeParameterDeclaration" : Fi(this) ? "ParameterDeclaration" : yc(this) ? "ConstructorDeclaration" : Dp(this) ? "GetAccessorDeclaration" : ef(this) ? "SetAccessorDeclaration" : uk(this) ? "CallSignatureDeclaration" : tw(this) ? "ConstructSignatureDeclaration" : s1(this) ? "IndexSignatureDeclaration" : _k(this) ? "TypePredicateNode" : xf(this) ? "TypeReferenceNode" : mg(this) ? "FunctionTypeNode" : D6(this) ? "ConstructorTypeNode" : Gb(this) ? "TypeQueryNode" : C_(this) ? "TypeLiteralNode" : aN(this) ? "ArrayTypeNode" : fk(this) ? "TupleTypeNode" : QO(this) ? "OptionalTypeNode" : YO(this) ? "RestTypeNode" : j0(this) ? "UnionTypeNode" : pk(this) ? "IntersectionTypeNode" : Hb(this) ? "ConditionalTypeNode" : OS(this) ? "InferTypeNode" : FS(this) ? "ParenthesizedTypeNode" : rw(this) ? "ThisTypeNode" : Tv(this) ? "TypeOperatorNode" : $b(this) ? "IndexedAccessTypeNode" : LS(this) ? "MappedTypeNode" : B0(this) ? "LiteralTypeNode" : w6(this) ? "NamedTupleMember" : Am(this) ? "ImportTypeNode" : Se(this.kind)}${this.flags ? ` (${oe(this.flags)})` : ""}`;
          } },
          __debugKind: { get() {
            return Se(this.kind);
          } },
          __debugNodeFlags: { get() {
            return oe(this.flags);
          } },
          __debugModifierFlags: { get() {
            return Ae(uee(this));
          } },
          __debugTransformFlags: { get() {
            return Ne(this.transformFlags);
          } },
          __debugIsParseTreeNode: { get() {
            return W4(this);
          } },
          __debugEmitFlags: { get() {
            return ot(Bs(this));
          } },
          __debugGetText: { value($n) {
            if (wo(this)) return "";
            let zn = vt.get(this);
            if (zn === void 0) {
              const na = Ca(this), Ea = na && Sr(na);
              zn = Ea ? Pb(Ea, na, $n) : "", vt.set(this, zn);
            }
            return zn;
          } }
        });
        Xt = !0;
      }
      e.enableDebugInfo = Nt;
      function Li(Me) {
        const vt = Me & 7;
        let tr = vt === 0 ? "in out" : vt === 3 ? "[bivariant]" : vt === 2 ? "in" : vt === 1 ? "out" : vt === 4 ? "[independent]" : "";
        return Me & 8 ? tr += " (unmeasurable)" : Me & 16 && (tr += " (unreliable)"), tr;
      }
      e.formatVariance = Li;
      class ri {
        __debugToString() {
          var vt;
          switch (this.kind) {
            case 3:
              return ((vt = this.debugInfo) == null ? void 0 : vt.call(this)) || "(function mapper)";
            case 0:
              return `${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;
            case 1:
              return Ds(this.sources, this.targets || or(this.sources, () => "any"), (tr, Ur) => `${tr.__debugTypeToString()} -> ${typeof Ur == "string" ? Ur : Ur.__debugTypeToString()}`).join(", ");
            case 2:
              return Ds(this.sources, this.targets, (tr, Ur) => `${tr.__debugTypeToString()} -> ${Ur().__debugTypeToString()}`).join(", ");
            case 5:
            case 4:
              return `m1: ${this.mapper1.__debugToString().split(`
`).join(`
    `)}
m2: ${this.mapper2.__debugToString().split(`
`).join(`
    `)}`;
            default:
              return L(this);
          }
        }
      }
      e.DebugTypeMapper = ri;
      function Zr(Me) {
        return e.isDebugging ? Object.setPrototypeOf(Me, ri.prototype) : Me;
      }
      e.attachDebugPrototypeIfDebug = Zr;
      function ni(Me) {
        return console.log(ra(Me));
      }
      e.printControlFlowGraph = ni;
      function ra(Me) {
        let vt = -1;
        function tr(j) {
          return j.id || (j.id = vt, vt--), j.id;
        }
        let Ur;
        ((j) => {
          j.lr = "─", j.ud = "│", j.dr = "╭", j.dl = "╮", j.ul = "╯", j.ur = "╰", j.udr = "├", j.udl = "┤", j.dlr = "┬", j.ulr = "┴", j.udlr = "╫";
        })(Ur || (Ur = {}));
        let $n;
        ((j) => {
          j[j.None = 0] = "None", j[j.Up = 1] = "Up", j[j.Down = 2] = "Down", j[j.Left = 4] = "Left", j[j.Right = 8] = "Right", j[j.UpDown = 3] = "UpDown", j[j.LeftRight = 12] = "LeftRight", j[j.UpLeft = 5] = "UpLeft", j[j.UpRight = 9] = "UpRight", j[j.DownLeft = 6] = "DownLeft", j[j.DownRight = 10] = "DownRight", j[j.UpDownLeft = 7] = "UpDownLeft", j[j.UpDownRight = 11] = "UpDownRight", j[j.UpLeftRight = 13] = "UpLeftRight", j[j.DownLeftRight = 14] = "DownLeftRight", j[j.UpDownLeftRight = 15] = "UpDownLeftRight", j[j.NoChildren = 16] = "NoChildren";
        })($n || ($n = {}));
        const zn = 2032, na = 882, Ea = /* @__PURE__ */ Object.create(null), Da = [], Lr = [], ha = nt(Me, /* @__PURE__ */ new Set());
        for (const j of Da)
          j.text = rr(j.flowNode, j.circular), ut(j);
        const Ye = xt(Qe(ha));
        return Dt(ha, 0), Oe();
        function Pt(j) {
          return !!(j.flags & 128);
        }
        function ne(j) {
          return !!(j.flags & 12) && !!j.antecedent;
        }
        function tt(j) {
          return !!(j.flags & zn);
        }
        function re(j) {
          return !!(j.flags & na);
        }
        function we(j) {
          const Re = [];
          for (const $e of j.edges) $e.source === j && Re.push($e.target);
          return Re;
        }
        function Ge(j) {
          const Re = [];
          for (const $e of j.edges) $e.target === j && Re.push($e.source);
          return Re;
        }
        function nt(j, Re) {
          const $e = tr(j);
          let ye = Ea[$e];
          if (ye && Re.has(j))
            return ye.circular = !0, ye = {
              id: -1,
              flowNode: j,
              edges: [],
              text: "",
              lane: -1,
              endLane: -1,
              level: -1,
              circular: "circularity"
            }, Da.push(ye), ye;
          if (Re.add(j), !ye)
            if (Ea[$e] = ye = {
              id: $e,
              flowNode: j,
              edges: [],
              text: "",
              lane: -1,
              endLane: -1,
              level: -1,
              circular: !1
            }, Da.push(ye), ne(j)) for (const Ke of j.antecedent) it(ye, Ke, Re);
            else tt(j) && it(ye, j.antecedent, Re);
          return Re.delete(j), ye;
        }
        function it(j, Re, $e) {
          const ye = nt(Re, $e), Ke = {
            source: j,
            target: ye
          };
          Lr.push(Ke), j.edges.push(Ke), ye.edges.push(Ke);
        }
        function ut(j) {
          if (j.level !== -1) return j.level;
          let Re = 0;
          for (const $e of Ge(j)) Re = Math.max(Re, ut($e) + 1);
          return j.level = Re;
        }
        function Qe(j) {
          let Re = 0;
          for (const $e of we(j)) Re = Math.max(Re, Qe($e));
          return Re + 1;
        }
        function xt(j) {
          const Re = ee(Array(j), 0);
          for (const $e of Da) Re[$e.level] = Math.max(Re[$e.level], $e.text.length);
          return Re;
        }
        function Dt(j, Re) {
          if (j.lane === -1) {
            j.lane = Re, j.endLane = Re;
            const $e = we(j);
            for (let ye = 0; ye < $e.length; ye++) {
              ye > 0 && Re++;
              const Ke = $e[ye];
              Dt(Ke, Re), Ke.endLane > j.endLane && (Re = Ke.endLane);
            }
            j.endLane = Re;
          }
        }
        function Ve(j) {
          if (j & 2) return "Start";
          if (j & 4) return "Branch";
          if (j & 8) return "Loop";
          if (j & 16) return "Assignment";
          if (j & 32) return "True";
          if (j & 64) return "False";
          if (j & 128) return "SwitchClause";
          if (j & 256) return "ArrayMutation";
          if (j & 512) return "Call";
          if (j & 1024) return "ReduceLabel";
          if (j & 1) return "Unreachable";
          throw new Error();
        }
        function fr(j) {
          return Pb(Sr(j), j, !1);
        }
        function rr(j, Re) {
          let $e = Ve(j.flags);
          if (Re && ($e = `${$e}#${tr(j)}`), Pt(j)) {
            const ye = [], { switchStatement: Ke, clauseStart: pr, clauseEnd: Pr } = j.node;
            for (let vr = pr; vr < Pr; vr++) {
              const fn = Ke.caseBlock.clauses[vr];
              L6(fn) ? ye.push("default") : ye.push(fr(fn.expression));
            }
            $e += ` (${ye.join(", ")})`;
          } else re(j) && j.node && ($e += ` (${fr(j.node)})`);
          return Re === "circularity" ? `Circular(${$e})` : $e;
        }
        function Oe() {
          const j = Ye.length, Re = ej(Da, 0, (Pr) => Pr.lane) + 1, $e = ee(Array(Re), ""), ye = Ye.map(() => Array(Re)), Ke = Ye.map(() => ee(Array(Re), 0));
          for (const Pr of Da) {
            ye[Pr.level][Pr.lane] = Pr;
            const vr = we(Pr);
            for (let Cr = 0; Cr < vr.length; Cr++) {
              const et = vr[Cr];
              let kt = 8;
              et.lane === Pr.lane && (kt |= 4), Cr > 0 && (kt |= 1), Cr < vr.length - 1 && (kt |= 2), Ke[Pr.level][et.lane] |= kt;
            }
            vr.length === 0 && (Ke[Pr.level][Pr.lane] |= 16);
            const fn = Ge(Pr);
            for (let Cr = 0; Cr < fn.length; Cr++) {
              const et = fn[Cr];
              let kt = 4;
              Cr > 0 && (kt |= 1), Cr < fn.length - 1 && (kt |= 2), Ke[Pr.level - 1][et.lane] |= kt;
            }
          }
          for (let Pr = 0; Pr < j; Pr++) for (let vr = 0; vr < Re; vr++) {
            const fn = Pr > 0 ? Ke[Pr - 1][vr] : 0, Cr = vr > 0 ? Ke[Pr][vr - 1] : 0;
            let et = Ke[Pr][vr];
            et || (fn & 8 && (et |= 12), Cr & 2 && (et |= 3), Ke[Pr][vr] = et);
          }
          for (let Pr = 0; Pr < j; Pr++) for (let vr = 0; vr < $e.length; vr++) {
            const fn = Ke[Pr][vr], Cr = fn & 4 ? "─" : " ", et = ye[Pr][vr];
            et ? (pr(vr, et.text), Pr < j - 1 && (pr(vr, " "), pr(vr, q(Cr, Ye[Pr] - et.text.length)))) : Pr < j - 1 && pr(vr, q(Cr, Ye[Pr] + 1)), pr(vr, rt(fn)), pr(vr, fn & 8 && Pr < j - 1 && !ye[Pr + 1][vr] ? "─" : " ");
          }
          return `
${$e.join(`
`)}
`;
          function pr(Pr, vr) {
            $e[Pr] += vr;
          }
        }
        function rt(j) {
          switch (j) {
            case 3:
              return "│";
            case 12:
              return "─";
            case 5:
              return "╯";
            case 9:
              return "╰";
            case 6:
              return "╮";
            case 10:
              return "╭";
            case 7:
              return "┤";
            case 11:
              return "├";
            case 13:
              return "┴";
            case 14:
              return "┬";
            case 15:
              return "╫";
          }
          return " ";
        }
        function ee(j, Re) {
          if (j.fill) j.fill(Re);
          else for (let $e = 0; $e < j.length; $e++) j[$e] = Re;
          return j;
        }
        function q(j, Re) {
          if (j.repeat) return Re > 0 ? j.repeat(Re) : "";
          let $e = "";
          for (; $e.length < Re; ) $e += j;
          return $e;
        }
      }
      e.formatControlFlowGraph = ra;
    })(E || (E = {}));
    var uOe = /^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i, _Oe = /^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i, fOe = /^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)$/i, pOe = /^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i, dOe = /^[a-z0-9-]+$/i, Pge = /^(?:0|[1-9]\d*)$/, wQ = class y7 {
      constructor(t, n = 0, i = 0, a = "", o = "") {
        typeof t == "string" && ({ major: t, minor: n, patch: i, prerelease: a, build: o } = E.checkDefined(Age(t), "Invalid version")), E.assert(t >= 0, "Invalid argument: major"), E.assert(n >= 0, "Invalid argument: minor"), E.assert(i >= 0, "Invalid argument: patch");
        const c = a ? da(a) ? a : a.split(".") : Te, _ = o ? da(o) ? o : o.split(".") : Te;
        E.assert(hr(c, (u) => fOe.test(u)), "Invalid argument: prerelease"), E.assert(hr(_, (u) => dOe.test(u)), "Invalid argument: build"), this.major = t, this.minor = n, this.patch = i, this.prerelease = c, this.build = _;
      }
      static tryParse(t) {
        const n = Age(t);
        if (!n) return;
        const { major: i, minor: a, patch: o, prerelease: c, build: _ } = n;
        return new y7(i, a, o, c, _);
      }
      compareTo(t) {
        return this === t ? 0 : t === void 0 ? 1 : Fo(this.major, t.major) || Fo(this.minor, t.minor) || Fo(this.patch, t.patch) || mOe(this.prerelease, t.prerelease);
      }
      increment(t) {
        switch (t) {
          case "major":
            return new y7(this.major + 1, 0, 0);
          case "minor":
            return new y7(this.major, this.minor + 1, 0);
          case "patch":
            return new y7(this.major, this.minor, this.patch + 1);
          default:
            return E.assertNever(t);
        }
      }
      with(t) {
        const { major: n = this.major, minor: i = this.minor, patch: a = this.patch, prerelease: o = this.prerelease, build: c = this.build } = t;
        return new y7(n, i, a, o, c);
      }
      toString() {
        let t = `${this.major}.${this.minor}.${this.patch}`;
        return _t(this.prerelease) && (t += `-${this.prerelease.join(".")}`), _t(this.build) && (t += `+${this.build.join(".")}`), t;
      }
    };
    wQ.zero = new wQ(0, 0, 0, ["0"]);
    var Ld = wQ;
    function Age(e) {
      const t = uOe.exec(e);
      if (!t) return;
      const [, n, i = "0", a = "0", o = "", c = ""] = t;
      if (!(o && !_Oe.test(o)) && !(c && !pOe.test(c)))
        return {
          major: parseInt(n, 10),
          minor: parseInt(i, 10),
          patch: parseInt(a, 10),
          prerelease: o,
          build: c
        };
    }
    function mOe(e, t) {
      if (e === t) return 0;
      if (e.length === 0) return t.length === 0 ? 0 : 1;
      if (t.length === 0) return -1;
      const n = Math.min(e.length, t.length);
      for (let i = 0; i < n; i++) {
        const a = e[i], o = t[i];
        if (a === o) continue;
        const c = Pge.test(a), _ = Pge.test(o);
        if (c || _) {
          if (c !== _) return c ? -1 : 1;
          const u = Fo(+a, +o);
          if (u) return u;
        } else {
          const u = Du(a, o);
          if (u) return u;
        }
      }
      return Fo(e.length, t.length);
    }
    var E7 = class G5e {
      constructor(t) {
        this._alternatives = t ? E.checkDefined(Nge(t), "Invalid range spec.") : Te;
      }
      static tryParse(t) {
        const n = Nge(t);
        if (n) {
          const i = new G5e("");
          return i._alternatives = n, i;
        }
      }
      test(t) {
        return typeof t == "string" && (t = new Ld(t)), xOe(t, this._alternatives);
      }
      toString() {
        return EOe(this._alternatives);
      }
    }, gOe = /\|\|/, hOe = /\s+/, yOe = /^([x*0]|[1-9]\d*)(?:\.([x*0]|[1-9]\d*)(?:\.([x*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i, vOe = /^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i, bOe = /^([~^<>=]|<=|>=)?\s*([a-z0-9-+.*]+)$/i;
    function Nge(e) {
      const t = [];
      for (let n of e.trim().split(gOe)) {
        if (!n) continue;
        const i = [];
        n = n.trim();
        const a = vOe.exec(n);
        if (a) {
          if (!SOe(a[1], a[2], i)) return;
        } else for (const o of n.split(hOe)) {
          const c = bOe.exec(o.trim());
          if (!c || !TOe(c[1], c[2], i)) return;
        }
        t.push(i);
      }
      return t;
    }
    function PQ(e) {
      const t = yOe.exec(e);
      if (!t) return;
      const [, n, i = "*", a = "*", o, c] = t;
      return {
        version: new Ld(Vp(n) ? 0 : parseInt(n, 10), Vp(n) || Vp(i) ? 0 : parseInt(i, 10), Vp(n) || Vp(i) || Vp(a) ? 0 : parseInt(a, 10), o, c),
        major: n,
        minor: i,
        patch: a
      };
    }
    function SOe(e, t, n) {
      const i = PQ(e);
      if (!i) return !1;
      const a = PQ(t);
      return a ? (Vp(i.major) || n.push(ag(">=", i.version)), Vp(a.major) || n.push(Vp(a.minor) ? ag("<", a.version.increment("major")) : Vp(a.patch) ? ag("<", a.version.increment("minor")) : ag("<=", a.version)), !0) : !1;
    }
    function TOe(e, t, n) {
      const i = PQ(t);
      if (!i) return !1;
      const { version: a, major: o, minor: c, patch: _ } = i;
      if (Vp(o)) (e === "<" || e === ">") && n.push(ag("<", Ld.zero));
      else switch (e) {
        case "~":
          n.push(ag(">=", a)), n.push(ag("<", a.increment(Vp(c) ? "major" : "minor")));
          break;
        case "^":
          n.push(ag(">=", a)), n.push(ag("<", a.increment(a.major > 0 || Vp(c) ? "major" : a.minor > 0 || Vp(_) ? "minor" : "patch")));
          break;
        case "<":
        case ">=":
          n.push(Vp(c) || Vp(_) ? ag(e, a.with({ prerelease: "0" })) : ag(e, a));
          break;
        case "<=":
        case ">":
          n.push(Vp(c) ? ag(e === "<=" ? "<" : ">=", a.increment("major").with({ prerelease: "0" })) : Vp(_) ? ag(e === "<=" ? "<" : ">=", a.increment("minor").with({ prerelease: "0" })) : ag(e, a));
          break;
        case "=":
        case void 0:
          Vp(c) || Vp(_) ? (n.push(ag(">=", a.with({ prerelease: "0" }))), n.push(ag("<", a.increment(Vp(c) ? "major" : "minor").with({ prerelease: "0" })))) : n.push(ag("=", a));
          break;
        default:
          return !1;
      }
      return !0;
    }
    function Vp(e) {
      return e === "*" || e === "x" || e === "X";
    }
    function ag(e, t) {
      return {
        operator: e,
        operand: t
      };
    }
    function xOe(e, t) {
      if (t.length === 0) return !0;
      for (const n of t) if (kOe(e, n)) return !0;
      return !1;
    }
    function kOe(e, t) {
      for (const n of t) if (!COe(e, n.operator, n.operand)) return !1;
      return !0;
    }
    function COe(e, t, n) {
      const i = e.compareTo(n);
      switch (t) {
        case "<":
          return i < 0;
        case "<=":
          return i <= 0;
        case ">":
          return i > 0;
        case ">=":
          return i >= 0;
        case "=":
          return i === 0;
        default:
          return E.assertNever(t);
      }
    }
    function EOe(e) {
      return or(e, DOe).join(" || ") || "*";
    }
    function DOe(e) {
      return or(e, wOe).join(" ");
    }
    function wOe(e) {
      return `${e.operator}${e.operand}`;
    }
    function POe() {
      if (cj()) try {
        const { performance: e } = eS("perf_hooks");
        if (e) return {
          shouldWriteNativeEvents: !1,
          performance: e
        };
      } catch {
      }
      if (typeof performance == "object") return {
        shouldWriteNativeEvents: !0,
        performance
      };
    }
    function AOe() {
      const e = POe();
      if (!e) return;
      const { shouldWriteNativeEvents: t, performance: n } = e, i = {
        shouldWriteNativeEvents: t,
        performance: void 0,
        performanceTime: void 0
      };
      return typeof n.timeOrigin == "number" && typeof n.now == "function" && (i.performanceTime = n), i.performanceTime && typeof n.mark == "function" && typeof n.measure == "function" && typeof n.clearMarks == "function" && typeof n.clearMeasures == "function" && (i.performance = n), i;
    }
    var AQ = AOe(), Ige = AQ?.performanceTime;
    function NQ() {
      return AQ;
    }
    var ko = Ige ? () => Ige.now() : Date.now, IQ = {};
    gi(IQ, {
      clearMarks: () => jge,
      clearMeasures: () => Rge,
      createTimer: () => lj,
      createTimerIf: () => Oge,
      disable: () => LQ,
      enable: () => _j,
      forEachMark: () => Mge,
      forEachMeasure: () => uj,
      getCount: () => Lge,
      getDuration: () => A4,
      isEnabled: () => FQ,
      mark: () => pc,
      measure: () => yp,
      nullTimer: () => OQ
    });
    var E4, _3;
    function Oge(e, t, n, i) {
      return e ? lj(t, n, i) : OQ;
    }
    function lj(e, t, n) {
      let i = 0;
      return {
        enter: a,
        exit: o
      };
      function a() {
        ++i === 1 && pc(t);
      }
      function o() {
        --i === 0 ? (pc(n), yp(e, t, n)) : i < 0 && E.fail("enter/exit count does not match.");
      }
    }
    var OQ = {
      enter: so,
      exit: so
    }, D4 = !1, Fge = ko(), w4 = /* @__PURE__ */ new Map(), f3 = /* @__PURE__ */ new Map(), P4 = /* @__PURE__ */ new Map();
    function pc(e) {
      if (D4) {
        const t = f3.get(e) ?? 0;
        f3.set(e, t + 1), w4.set(e, ko()), _3?.mark(e), typeof onProfilerEvent == "function" && onProfilerEvent(e);
      }
    }
    function yp(e, t, n) {
      if (D4) {
        const i = (n !== void 0 ? w4.get(n) : void 0) ?? ko(), a = (t !== void 0 ? w4.get(t) : void 0) ?? Fge, o = P4.get(e) || 0;
        P4.set(e, o + (i - a)), _3?.measure(e, t, n);
      }
    }
    function Lge(e) {
      return f3.get(e) || 0;
    }
    function A4(e) {
      return P4.get(e) || 0;
    }
    function uj(e) {
      P4.forEach((t, n) => e(n, t));
    }
    function Mge(e) {
      w4.forEach((t, n) => e(n));
    }
    function Rge(e) {
      e !== void 0 ? P4.delete(e) : P4.clear(), _3?.clearMeasures(e);
    }
    function jge(e) {
      e !== void 0 ? (f3.delete(e), w4.delete(e)) : (f3.clear(), w4.clear()), _3?.clearMarks(e);
    }
    function FQ() {
      return D4;
    }
    function _j(e = Cl) {
      var t;
      return D4 || (D4 = !0, E4 || (E4 = NQ()), E4?.performance && (Fge = E4.performance.timeOrigin, (E4.shouldWriteNativeEvents || (t = e?.cpuProfilingEnabled) != null && t.call(e) || e?.debugMode) && (_3 = E4.performance))), !0;
    }
    function LQ() {
      D4 && (w4.clear(), f3.clear(), P4.clear(), _3 = void 0, D4 = !1);
    }
    var sn, p3;
    ((e) => {
      let t, n = 0, i = 0, a;
      const o = [];
      let c;
      const _ = [];
      function u(z, H, U) {
        if (E.assert(!sn, "Tracing already started"), t === void 0) try {
          t = eS("fs");
        } catch (se) {
          throw new Error(`tracing requires having fs
(original error: ${se.message || se})`);
        }
        a = z, o.length = 0, c === void 0 && (c = jn(H, "legend.json")), t.existsSync(H) || t.mkdirSync(H, { recursive: !0 });
        const pe = a === "build" ? `.${process.pid}-${++n}` : a === "server" ? `.${process.pid}` : "", ie = jn(H, `trace${pe}.json`), W = jn(H, `types${pe}.json`);
        _.push({
          configFilePath: U,
          tracePath: ie,
          typesPath: W
        }), i = t.openSync(ie, "w"), sn = e;
        const Q = {
          cat: "__metadata",
          ph: "M",
          ts: 1e3 * ko(),
          pid: 1,
          tid: 1
        };
        t.writeSync(i, `[
` + [
          {
            name: "process_name",
            args: { name: "tsc" },
            ...Q
          },
          {
            name: "thread_name",
            args: { name: "Main" },
            ...Q
          },
          {
            name: "TracingStartedInBrowser",
            ...Q,
            cat: "disabled-by-default-devtools.timeline"
          }
        ].map((se) => JSON.stringify(se)).join(`,
`));
      }
      e.startTracing = u;
      function d() {
        E.assert(sn, "Tracing is not in progress"), E.assert(!!o.length == (a !== "server")), t.writeSync(i, `
]
`), t.closeSync(i), sn = void 0, o.length ? G(o) : _[_.length - 1].typesPath = void 0;
      }
      e.stopTracing = d;
      function g(z) {
        a !== "server" && o.push(z);
      }
      e.recordType = g, ((z) => {
        z.Parse = "parse", z.Program = "program", z.Bind = "bind", z.Check = "check", z.CheckTypes = "checkTypes", z.Emit = "emit", z.Session = "session";
      })(e.Phase || (e.Phase = {}));
      function h(z, H, U) {
        M("I", z, H, U, '"s":"g"');
      }
      e.instant = h;
      const S = [];
      function T(z, H, U, pe = !1) {
        pe && M("B", z, H, U), S.push({
          phase: z,
          name: H,
          args: U,
          time: 1e3 * ko(),
          separateBeginAndEnd: pe
        });
      }
      e.push = T;
      function k(z) {
        E.assert(S.length > 0), N(S.length - 1, 1e3 * ko(), z), S.length--;
      }
      e.pop = k;
      function D() {
        const z = 1e3 * ko();
        for (let H = S.length - 1; H >= 0; H--) N(H, z);
        S.length = 0;
      }
      e.popAll = D;
      const P = 1e3 * 10;
      function N(z, H, U) {
        const { phase: pe, name: ie, args: W, time: Q, separateBeginAndEnd: se } = S[z];
        se ? (E.assert(!U, "`results` are not supported for events with `separateBeginAndEnd`"), M("E", pe, ie, W, void 0, H)) : P - Q % P <= H - Q && M("X", pe, ie, {
          ...W,
          results: U
        }, `"dur":${H - Q}`, Q);
      }
      function M(z, H, U, pe, ie, W = 1e3 * ko()) {
        a === "server" && H === "checkTypes" || (pc("beginTracing"), t.writeSync(i, `,
{"pid":1,"tid":1,"ph":"${z}","cat":"${H}","ts":${W},"name":"${U}"`), ie && t.writeSync(i, `,${ie}`), pe && t.writeSync(i, `,"args":${JSON.stringify(pe)}`), t.writeSync(i, "}"), pc("endTracing"), yp("Tracing", "beginTracing", "endTracing"));
      }
      function R(z) {
        const H = Sr(z);
        return H ? {
          path: H.path,
          start: U(Za(H, z.pos)),
          end: U(Za(H, z.end))
        } : void 0;
        function U(pe) {
          return {
            line: pe.line + 1,
            character: pe.character + 1
          };
        }
      }
      function G(z) {
        var H, U, pe, ie, W, Q, se, he, fe, de, $, Se, Be, ce, oe, ge, Ae, Ne, ot;
        pc("beginDumpTypes");
        const K = _[_.length - 1].typesPath, ke = t.openSync(K, "w"), ae = /* @__PURE__ */ new Map();
        t.writeSync(ke, "[");
        const Ce = z.length;
        for (let ue = 0; ue < Ce; ue++) {
          const Ie = z[ue], Xe = Ie.objectFlags, Ft = Ie.aliasSymbol ?? Ie.symbol;
          let Ut;
          if (Xe & 16 | Ie.flags & 15360) try {
            Ut = (H = Ie.checker) == null ? void 0 : H.typeToString(Ie);
          } catch {
            Ut = void 0;
          }
          let Xt = {};
          if (Ie.flags & 33554432) {
            const ri = Ie;
            Xt = {
              indexedAccessObjectType: (U = ri.objectType) == null ? void 0 : U.id,
              indexedAccessIndexType: (pe = ri.indexType) == null ? void 0 : pe.id
            };
          }
          let Ar = {};
          if (Xe & 4) {
            const ri = Ie;
            Ar = {
              instantiatedType: (ie = ri.target) == null ? void 0 : ie.id,
              typeArguments: (W = ri.resolvedTypeArguments) == null ? void 0 : W.map((Zr) => Zr.id),
              referenceLocation: R(ri.node)
            };
          }
          let Ct = {};
          if (Ie.flags & 67108864) {
            const ri = Ie;
            Ct = {
              conditionalCheckType: (Q = ri.checkType) == null ? void 0 : Q.id,
              conditionalExtendsType: (se = ri.extendsType) == null ? void 0 : se.id,
              conditionalTrueType: ((he = ri.resolvedTrueType) == null ? void 0 : he.id) ?? -1,
              conditionalFalseType: ((fe = ri.resolvedFalseType) == null ? void 0 : fe.id) ?? -1
            };
          }
          let Kt = {};
          if (Ie.flags & 16777216) {
            const ri = Ie;
            Kt = {
              substitutionBaseType: (de = ri.baseType) == null ? void 0 : de.id,
              constraintType: ($ = ri.constraint) == null ? void 0 : $.id
            };
          }
          let zr = {};
          if (Xe & 1024) {
            const ri = Ie;
            zr = {
              reverseMappedSourceType: (Se = ri.source) == null ? void 0 : Se.id,
              reverseMappedMappedType: (Be = ri.mappedType) == null ? void 0 : Be.id,
              reverseMappedConstraintType: (ce = ri.constraintType) == null ? void 0 : ce.id
            };
          }
          let _i = {};
          if (Xe & 256) {
            const ri = Ie;
            _i = {
              evolvingArrayElementType: ri.elementType.id,
              evolvingArrayFinalType: (oe = ri.finalArrayType) == null ? void 0 : oe.id
            };
          }
          let Gr;
          const Nt = Ie.checker.getRecursionIdentity(Ie);
          Nt && (Gr = ae.get(Nt), Gr || (Gr = ae.size, ae.set(Nt, Gr)));
          const Li = {
            id: Ie.id,
            intrinsicName: Ie.intrinsicName,
            symbolName: Ft?.escapedName && Ti(Ft.escapedName),
            recursionId: Gr,
            isTuple: Xe & 8 ? !0 : void 0,
            unionTypes: Ie.flags & 134217728 ? (ge = Ie.types) == null ? void 0 : ge.map((ri) => ri.id) : void 0,
            intersectionTypes: Ie.flags & 268435456 ? Ie.types.map((ri) => ri.id) : void 0,
            aliasTypeArguments: (Ae = Ie.aliasTypeArguments) == null ? void 0 : Ae.map((ri) => ri.id),
            keyofType: Ie.flags & 2097152 ? (Ne = Ie.type) == null ? void 0 : Ne.id : void 0,
            ...Xt,
            ...Ar,
            ...Ct,
            ...Kt,
            ...zr,
            ..._i,
            destructuringPattern: R(Ie.pattern),
            firstDeclaration: R((ot = Ft?.declarations) == null ? void 0 : ot[0]),
            flags: E.formatTypeFlags(Ie.flags).split("|"),
            display: Ut
          };
          t.writeSync(ke, JSON.stringify(Li)), ue < Ce - 1 && t.writeSync(ke, `,
`);
        }
        t.writeSync(ke, `]
`), t.closeSync(ke), pc("endDumpTypes"), yp("Dump types", "beginDumpTypes", "endDumpTypes");
      }
      function L() {
        c && t.writeFileSync(c, JSON.stringify(_));
      }
      e.dumpLegend = L;
    })(p3 || (p3 = {}));
    var MQ = p3.startTracing, RQ = p3.dumpLegend, fj = /* @__PURE__ */ ((e) => (e[e.Unknown = 0] = "Unknown", e[e.EndOfFileToken = 1] = "EndOfFileToken", e[e.SingleLineCommentTrivia = 2] = "SingleLineCommentTrivia", e[e.MultiLineCommentTrivia = 3] = "MultiLineCommentTrivia", e[e.NewLineTrivia = 4] = "NewLineTrivia", e[e.WhitespaceTrivia = 5] = "WhitespaceTrivia", e[e.ShebangTrivia = 6] = "ShebangTrivia", e[e.ConflictMarkerTrivia = 7] = "ConflictMarkerTrivia", e[e.NonTextFileMarkerTrivia = 8] = "NonTextFileMarkerTrivia", e[e.NumericLiteral = 9] = "NumericLiteral", e[e.BigIntLiteral = 10] = "BigIntLiteral", e[e.StringLiteral = 11] = "StringLiteral", e[e.JsxText = 12] = "JsxText", e[e.JsxTextAllWhiteSpaces = 13] = "JsxTextAllWhiteSpaces", e[e.RegularExpressionLiteral = 14] = "RegularExpressionLiteral", e[e.NoSubstitutionTemplateLiteral = 15] = "NoSubstitutionTemplateLiteral", e[e.TemplateHead = 16] = "TemplateHead", e[e.TemplateMiddle = 17] = "TemplateMiddle", e[e.TemplateTail = 18] = "TemplateTail", e[e.OpenBraceToken = 19] = "OpenBraceToken", e[e.CloseBraceToken = 20] = "CloseBraceToken", e[e.OpenParenToken = 21] = "OpenParenToken", e[e.CloseParenToken = 22] = "CloseParenToken", e[e.OpenBracketToken = 23] = "OpenBracketToken", e[e.CloseBracketToken = 24] = "CloseBracketToken", e[e.DotToken = 25] = "DotToken", e[e.DotDotDotToken = 26] = "DotDotDotToken", e[e.SemicolonToken = 27] = "SemicolonToken", e[e.CommaToken = 28] = "CommaToken", e[e.QuestionDotToken = 29] = "QuestionDotToken", e[e.LessThanToken = 30] = "LessThanToken", e[e.LessThanSlashToken = 31] = "LessThanSlashToken", e[e.GreaterThanToken = 32] = "GreaterThanToken", e[e.LessThanEqualsToken = 33] = "LessThanEqualsToken", e[e.GreaterThanEqualsToken = 34] = "GreaterThanEqualsToken", e[e.EqualsEqualsToken = 35] = "EqualsEqualsToken", e[e.ExclamationEqualsToken = 36] = "ExclamationEqualsToken", e[e.EqualsEqualsEqualsToken = 37] = "EqualsEqualsEqualsToken", e[e.ExclamationEqualsEqualsToken = 38] = "ExclamationEqualsEqualsToken", e[e.EqualsGreaterThanToken = 39] = "EqualsGreaterThanToken", e[e.PlusToken = 40] = "PlusToken", e[e.MinusToken = 41] = "MinusToken", e[e.AsteriskToken = 42] = "AsteriskToken", e[e.AsteriskAsteriskToken = 43] = "AsteriskAsteriskToken", e[e.SlashToken = 44] = "SlashToken", e[e.PercentToken = 45] = "PercentToken", e[e.PlusPlusToken = 46] = "PlusPlusToken", e[e.MinusMinusToken = 47] = "MinusMinusToken", e[e.LessThanLessThanToken = 48] = "LessThanLessThanToken", e[e.GreaterThanGreaterThanToken = 49] = "GreaterThanGreaterThanToken", e[e.GreaterThanGreaterThanGreaterThanToken = 50] = "GreaterThanGreaterThanGreaterThanToken", e[e.AmpersandToken = 51] = "AmpersandToken", e[e.BarToken = 52] = "BarToken", e[e.CaretToken = 53] = "CaretToken", e[e.ExclamationToken = 54] = "ExclamationToken", e[e.TildeToken = 55] = "TildeToken", e[e.AmpersandAmpersandToken = 56] = "AmpersandAmpersandToken", e[e.BarBarToken = 57] = "BarBarToken", e[e.QuestionToken = 58] = "QuestionToken", e[e.ColonToken = 59] = "ColonToken", e[e.AtToken = 60] = "AtToken", e[e.QuestionQuestionToken = 61] = "QuestionQuestionToken", e[e.BacktickToken = 62] = "BacktickToken", e[e.HashToken = 63] = "HashToken", e[e.EqualsToken = 64] = "EqualsToken", e[e.PlusEqualsToken = 65] = "PlusEqualsToken", e[e.MinusEqualsToken = 66] = "MinusEqualsToken", e[e.AsteriskEqualsToken = 67] = "AsteriskEqualsToken", e[e.AsteriskAsteriskEqualsToken = 68] = "AsteriskAsteriskEqualsToken", e[e.SlashEqualsToken = 69] = "SlashEqualsToken", e[e.PercentEqualsToken = 70] = "PercentEqualsToken", e[e.LessThanLessThanEqualsToken = 71] = "LessThanLessThanEqualsToken", e[e.GreaterThanGreaterThanEqualsToken = 72] = "GreaterThanGreaterThanEqualsToken", e[e.GreaterThanGreaterThanGreaterThanEqualsToken = 73] = "GreaterThanGreaterThanGreaterThanEqualsToken", e[e.AmpersandEqualsToken = 74] = "AmpersandEqualsToken", e[e.BarEqualsToken = 75] = "BarEqualsToken", e[e.BarBarEqualsToken = 76] = "BarBarEqualsToken", e[e.AmpersandAmpersandEqualsToken = 77] = "AmpersandAmpersandEqualsToken", e[e.QuestionQuestionEqualsToken = 78] = "QuestionQuestionEqualsToken", e[e.CaretEqualsToken = 79] = "CaretEqualsToken", e[e.Identifier = 80] = "Identifier", e[e.PrivateIdentifier = 81] = "PrivateIdentifier", e[e.JSDocCommentTextToken = 82] = "JSDocCommentTextToken", e[e.BreakKeyword = 83] = "BreakKeyword", e[e.CaseKeyword = 84] = "CaseKeyword", e[e.CatchKeyword = 85] = "CatchKeyword", e[e.ClassKeyword = 86] = "ClassKeyword", e[e.ConstKeyword = 87] = "ConstKeyword", e[e.ContinueKeyword = 88] = "ContinueKeyword", e[e.DebuggerKeyword = 89] = "DebuggerKeyword", e[e.DefaultKeyword = 90] = "DefaultKeyword", e[e.DeleteKeyword = 91] = "DeleteKeyword", e[e.DoKeyword = 92] = "DoKeyword", e[e.ElseKeyword = 93] = "ElseKeyword", e[e.EnumKeyword = 94] = "EnumKeyword", e[e.ExportKeyword = 95] = "ExportKeyword", e[e.ExtendsKeyword = 96] = "ExtendsKeyword", e[e.FalseKeyword = 97] = "FalseKeyword", e[e.FinallyKeyword = 98] = "FinallyKeyword", e[e.ForKeyword = 99] = "ForKeyword", e[e.FunctionKeyword = 100] = "FunctionKeyword", e[e.IfKeyword = 101] = "IfKeyword", e[e.ImportKeyword = 102] = "ImportKeyword", e[e.InKeyword = 103] = "InKeyword", e[e.InstanceOfKeyword = 104] = "InstanceOfKeyword", e[e.NewKeyword = 105] = "NewKeyword", e[e.NullKeyword = 106] = "NullKeyword", e[e.ReturnKeyword = 107] = "ReturnKeyword", e[e.SuperKeyword = 108] = "SuperKeyword", e[e.SwitchKeyword = 109] = "SwitchKeyword", e[e.ThisKeyword = 110] = "ThisKeyword", e[e.ThrowKeyword = 111] = "ThrowKeyword", e[e.TrueKeyword = 112] = "TrueKeyword", e[e.TryKeyword = 113] = "TryKeyword", e[e.TypeOfKeyword = 114] = "TypeOfKeyword", e[e.VarKeyword = 115] = "VarKeyword", e[e.VoidKeyword = 116] = "VoidKeyword", e[e.WhileKeyword = 117] = "WhileKeyword", e[e.WithKeyword = 118] = "WithKeyword", e[e.ImplementsKeyword = 119] = "ImplementsKeyword", e[e.InterfaceKeyword = 120] = "InterfaceKeyword", e[e.LetKeyword = 121] = "LetKeyword", e[e.PackageKeyword = 122] = "PackageKeyword", e[e.PrivateKeyword = 123] = "PrivateKeyword", e[e.ProtectedKeyword = 124] = "ProtectedKeyword", e[e.PublicKeyword = 125] = "PublicKeyword", e[e.StaticKeyword = 126] = "StaticKeyword", e[e.YieldKeyword = 127] = "YieldKeyword", e[e.AbstractKeyword = 128] = "AbstractKeyword", e[e.AccessorKeyword = 129] = "AccessorKeyword", e[e.AsKeyword = 130] = "AsKeyword", e[e.AssertsKeyword = 131] = "AssertsKeyword", e[e.AssertKeyword = 132] = "AssertKeyword", e[e.AnyKeyword = 133] = "AnyKeyword", e[e.AsyncKeyword = 134] = "AsyncKeyword", e[e.AwaitKeyword = 135] = "AwaitKeyword", e[e.BooleanKeyword = 136] = "BooleanKeyword", e[e.ConstructorKeyword = 137] = "ConstructorKeyword", e[e.DeclareKeyword = 138] = "DeclareKeyword", e[e.GetKeyword = 139] = "GetKeyword", e[e.InferKeyword = 140] = "InferKeyword", e[e.IntrinsicKeyword = 141] = "IntrinsicKeyword", e[e.IsKeyword = 142] = "IsKeyword", e[e.KeyOfKeyword = 143] = "KeyOfKeyword", e[e.ModuleKeyword = 144] = "ModuleKeyword", e[e.NamespaceKeyword = 145] = "NamespaceKeyword", e[e.NeverKeyword = 146] = "NeverKeyword", e[e.OutKeyword = 147] = "OutKeyword", e[e.ReadonlyKeyword = 148] = "ReadonlyKeyword", e[e.RequireKeyword = 149] = "RequireKeyword", e[e.NumberKeyword = 150] = "NumberKeyword", e[e.ObjectKeyword = 151] = "ObjectKeyword", e[e.SatisfiesKeyword = 152] = "SatisfiesKeyword", e[e.SetKeyword = 153] = "SetKeyword", e[e.StringKeyword = 154] = "StringKeyword", e[e.SymbolKeyword = 155] = "SymbolKeyword", e[e.TypeKeyword = 156] = "TypeKeyword", e[e.UndefinedKeyword = 157] = "UndefinedKeyword", e[e.UniqueKeyword = 158] = "UniqueKeyword", e[e.UnknownKeyword = 159] = "UnknownKeyword", e[e.UsingKeyword = 160] = "UsingKeyword", e[e.FromKeyword = 161] = "FromKeyword", e[e.GlobalKeyword = 162] = "GlobalKeyword", e[e.BigIntKeyword = 163] = "BigIntKeyword", e[e.OverrideKeyword = 164] = "OverrideKeyword", e[e.OfKeyword = 165] = "OfKeyword", e[e.DeferKeyword = 166] = "DeferKeyword", e[e.QualifiedName = 167] = "QualifiedName", e[e.ComputedPropertyName = 168] = "ComputedPropertyName", e[e.TypeParameter = 169] = "TypeParameter", e[e.Parameter = 170] = "Parameter", e[e.Decorator = 171] = "Decorator", e[e.PropertySignature = 172] = "PropertySignature", e[e.PropertyDeclaration = 173] = "PropertyDeclaration", e[e.MethodSignature = 174] = "MethodSignature", e[e.MethodDeclaration = 175] = "MethodDeclaration", e[e.ClassStaticBlockDeclaration = 176] = "ClassStaticBlockDeclaration", e[e.Constructor = 177] = "Constructor", e[e.GetAccessor = 178] = "GetAccessor", e[e.SetAccessor = 179] = "SetAccessor", e[e.CallSignature = 180] = "CallSignature", e[e.ConstructSignature = 181] = "ConstructSignature", e[e.IndexSignature = 182] = "IndexSignature", e[e.TypePredicate = 183] = "TypePredicate", e[e.TypeReference = 184] = "TypeReference", e[e.FunctionType = 185] = "FunctionType", e[e.ConstructorType = 186] = "ConstructorType", e[e.TypeQuery = 187] = "TypeQuery", e[e.TypeLiteral = 188] = "TypeLiteral", e[e.ArrayType = 189] = "ArrayType", e[e.TupleType = 190] = "TupleType", e[e.OptionalType = 191] = "OptionalType", e[e.RestType = 192] = "RestType", e[e.UnionType = 193] = "UnionType", e[e.IntersectionType = 194] = "IntersectionType", e[e.ConditionalType = 195] = "ConditionalType", e[e.InferType = 196] = "InferType", e[e.ParenthesizedType = 197] = "ParenthesizedType", e[e.ThisType = 198] = "ThisType", e[e.TypeOperator = 199] = "TypeOperator", e[e.IndexedAccessType = 200] = "IndexedAccessType", e[e.MappedType = 201] = "MappedType", e[e.LiteralType = 202] = "LiteralType", e[e.NamedTupleMember = 203] = "NamedTupleMember", e[e.TemplateLiteralType = 204] = "TemplateLiteralType", e[e.TemplateLiteralTypeSpan = 205] = "TemplateLiteralTypeSpan", e[e.ImportType = 206] = "ImportType", e[e.ObjectBindingPattern = 207] = "ObjectBindingPattern", e[e.ArrayBindingPattern = 208] = "ArrayBindingPattern", e[e.BindingElement = 209] = "BindingElement", e[e.ArrayLiteralExpression = 210] = "ArrayLiteralExpression", e[e.ObjectLiteralExpression = 211] = "ObjectLiteralExpression", e[e.PropertyAccessExpression = 212] = "PropertyAccessExpression", e[e.ElementAccessExpression = 213] = "ElementAccessExpression", e[e.CallExpression = 214] = "CallExpression", e[e.NewExpression = 215] = "NewExpression", e[e.TaggedTemplateExpression = 216] = "TaggedTemplateExpression", e[e.TypeAssertionExpression = 217] = "TypeAssertionExpression", e[e.ParenthesizedExpression = 218] = "ParenthesizedExpression", e[e.FunctionExpression = 219] = "FunctionExpression", e[e.ArrowFunction = 220] = "ArrowFunction", e[e.DeleteExpression = 221] = "DeleteExpression", e[e.TypeOfExpression = 222] = "TypeOfExpression", e[e.VoidExpression = 223] = "VoidExpression", e[e.AwaitExpression = 224] = "AwaitExpression", e[e.PrefixUnaryExpression = 225] = "PrefixUnaryExpression", e[e.PostfixUnaryExpression = 226] = "PostfixUnaryExpression", e[e.BinaryExpression = 227] = "BinaryExpression", e[e.ConditionalExpression = 228] = "ConditionalExpression", e[e.TemplateExpression = 229] = "TemplateExpression", e[e.YieldExpression = 230] = "YieldExpression", e[e.SpreadElement = 231] = "SpreadElement", e[e.ClassExpression = 232] = "ClassExpression", e[e.OmittedExpression = 233] = "OmittedExpression", e[e.ExpressionWithTypeArguments = 234] = "ExpressionWithTypeArguments", e[e.AsExpression = 235] = "AsExpression", e[e.NonNullExpression = 236] = "NonNullExpression", e[e.MetaProperty = 237] = "MetaProperty", e[e.SyntheticExpression = 238] = "SyntheticExpression", e[e.SatisfiesExpression = 239] = "SatisfiesExpression", e[e.TemplateSpan = 240] = "TemplateSpan", e[e.SemicolonClassElement = 241] = "SemicolonClassElement", e[e.Block = 242] = "Block", e[e.EmptyStatement = 243] = "EmptyStatement", e[e.VariableStatement = 244] = "VariableStatement", e[e.ExpressionStatement = 245] = "ExpressionStatement", e[e.IfStatement = 246] = "IfStatement", e[e.DoStatement = 247] = "DoStatement", e[e.WhileStatement = 248] = "WhileStatement", e[e.ForStatement = 249] = "ForStatement", e[e.ForInStatement = 250] = "ForInStatement", e[e.ForOfStatement = 251] = "ForOfStatement", e[e.ContinueStatement = 252] = "ContinueStatement", e[e.BreakStatement = 253] = "BreakStatement", e[e.ReturnStatement = 254] = "ReturnStatement", e[e.WithStatement = 255] = "WithStatement", e[e.SwitchStatement = 256] = "SwitchStatement", e[e.LabeledStatement = 257] = "LabeledStatement", e[e.ThrowStatement = 258] = "ThrowStatement", e[e.TryStatement = 259] = "TryStatement", e[e.DebuggerStatement = 260] = "DebuggerStatement", e[e.VariableDeclaration = 261] = "VariableDeclaration", e[e.VariableDeclarationList = 262] = "VariableDeclarationList", e[e.FunctionDeclaration = 263] = "FunctionDeclaration", e[e.ClassDeclaration = 264] = "ClassDeclaration", e[e.InterfaceDeclaration = 265] = "InterfaceDeclaration", e[e.TypeAliasDeclaration = 266] = "TypeAliasDeclaration", e[e.EnumDeclaration = 267] = "EnumDeclaration", e[e.ModuleDeclaration = 268] = "ModuleDeclaration", e[e.ModuleBlock = 269] = "ModuleBlock", e[e.CaseBlock = 270] = "CaseBlock", e[e.NamespaceExportDeclaration = 271] = "NamespaceExportDeclaration", e[e.ImportEqualsDeclaration = 272] = "ImportEqualsDeclaration", e[e.ImportDeclaration = 273] = "ImportDeclaration", e[e.ImportClause = 274] = "ImportClause", e[e.NamespaceImport = 275] = "NamespaceImport", e[e.NamedImports = 276] = "NamedImports", e[e.ImportSpecifier = 277] = "ImportSpecifier", e[e.ExportAssignment = 278] = "ExportAssignment", e[e.ExportDeclaration = 279] = "ExportDeclaration", e[e.NamedExports = 280] = "NamedExports", e[e.NamespaceExport = 281] = "NamespaceExport", e[e.ExportSpecifier = 282] = "ExportSpecifier", e[e.MissingDeclaration = 283] = "MissingDeclaration", e[e.ExternalModuleReference = 284] = "ExternalModuleReference", e[e.JsxElement = 285] = "JsxElement", e[e.JsxSelfClosingElement = 286] = "JsxSelfClosingElement", e[e.JsxOpeningElement = 287] = "JsxOpeningElement", e[e.JsxClosingElement = 288] = "JsxClosingElement", e[e.JsxFragment = 289] = "JsxFragment", e[e.JsxOpeningFragment = 290] = "JsxOpeningFragment", e[e.JsxClosingFragment = 291] = "JsxClosingFragment", e[e.JsxAttribute = 292] = "JsxAttribute", e[e.JsxAttributes = 293] = "JsxAttributes", e[e.JsxSpreadAttribute = 294] = "JsxSpreadAttribute", e[e.JsxExpression = 295] = "JsxExpression", e[e.JsxNamespacedName = 296] = "JsxNamespacedName", e[e.CaseClause = 297] = "CaseClause", e[e.DefaultClause = 298] = "DefaultClause", e[e.HeritageClause = 299] = "HeritageClause", e[e.CatchClause = 300] = "CatchClause", e[e.ImportAttributes = 301] = "ImportAttributes", e[e.ImportAttribute = 302] = "ImportAttribute", e[e.AssertClause = 301] = "AssertClause", e[e.AssertEntry = 302] = "AssertEntry", e[e.ImportTypeAssertionContainer = 303] = "ImportTypeAssertionContainer", e[e.PropertyAssignment = 304] = "PropertyAssignment", e[e.ShorthandPropertyAssignment = 305] = "ShorthandPropertyAssignment", e[e.SpreadAssignment = 306] = "SpreadAssignment", e[e.EnumMember = 307] = "EnumMember", e[e.SourceFile = 308] = "SourceFile", e[e.Bundle = 309] = "Bundle", e[e.JSDocTypeExpression = 310] = "JSDocTypeExpression", e[e.JSDocNameReference = 311] = "JSDocNameReference", e[e.JSDocMemberName = 312] = "JSDocMemberName", e[e.JSDocAllType = 313] = "JSDocAllType", e[e.JSDocUnknownType = 314] = "JSDocUnknownType", e[e.JSDocNullableType = 315] = "JSDocNullableType", e[e.JSDocNonNullableType = 316] = "JSDocNonNullableType", e[e.JSDocOptionalType = 317] = "JSDocOptionalType", e[e.JSDocFunctionType = 318] = "JSDocFunctionType", e[e.JSDocVariadicType = 319] = "JSDocVariadicType", e[e.JSDocNamepathType = 320] = "JSDocNamepathType", e[e.JSDoc = 321] = "JSDoc", e[e.JSDocComment = 321] = "JSDocComment", e[e.JSDocText = 322] = "JSDocText", e[e.JSDocTypeLiteral = 323] = "JSDocTypeLiteral", e[e.JSDocSignature = 324] = "JSDocSignature", e[e.JSDocLink = 325] = "JSDocLink", e[e.JSDocLinkCode = 326] = "JSDocLinkCode", e[e.JSDocLinkPlain = 327] = "JSDocLinkPlain", e[e.JSDocTag = 328] = "JSDocTag", e[e.JSDocAugmentsTag = 329] = "JSDocAugmentsTag", e[e.JSDocImplementsTag = 330] = "JSDocImplementsTag", e[e.JSDocAuthorTag = 331] = "JSDocAuthorTag", e[e.JSDocDeprecatedTag = 332] = "JSDocDeprecatedTag", e[e.JSDocClassTag = 333] = "JSDocClassTag", e[e.JSDocPublicTag = 334] = "JSDocPublicTag", e[e.JSDocPrivateTag = 335] = "JSDocPrivateTag", e[e.JSDocProtectedTag = 336] = "JSDocProtectedTag", e[e.JSDocReadonlyTag = 337] = "JSDocReadonlyTag", e[e.JSDocOverrideTag = 338] = "JSDocOverrideTag", e[e.JSDocCallbackTag = 339] = "JSDocCallbackTag", e[e.JSDocOverloadTag = 340] = "JSDocOverloadTag", e[e.JSDocEnumTag = 341] = "JSDocEnumTag", e[e.JSDocParameterTag = 342] = "JSDocParameterTag", e[e.JSDocReturnTag = 343] = "JSDocReturnTag", e[e.JSDocThisTag = 344] = "JSDocThisTag", e[e.JSDocTypeTag = 345] = "JSDocTypeTag", e[e.JSDocTemplateTag = 346] = "JSDocTemplateTag", e[e.JSDocTypedefTag = 347] = "JSDocTypedefTag", e[e.JSDocSeeTag = 348] = "JSDocSeeTag", e[e.JSDocPropertyTag = 349] = "JSDocPropertyTag", e[e.JSDocThrowsTag = 350] = "JSDocThrowsTag", e[e.JSDocSatisfiesTag = 351] = "JSDocSatisfiesTag", e[e.JSDocImportTag = 352] = "JSDocImportTag", e[e.SyntaxList = 353] = "SyntaxList", e[e.NotEmittedStatement = 354] = "NotEmittedStatement", e[e.NotEmittedTypeElement = 355] = "NotEmittedTypeElement", e[e.PartiallyEmittedExpression = 356] = "PartiallyEmittedExpression", e[e.CommaListExpression = 357] = "CommaListExpression", e[e.SyntheticReferenceExpression = 358] = "SyntheticReferenceExpression", e[e.Count = 359] = "Count", e[e.FirstAssignment = 64] = "FirstAssignment", e[e.LastAssignment = 79] = "LastAssignment", e[e.FirstCompoundAssignment = 65] = "FirstCompoundAssignment", e[e.LastCompoundAssignment = 79] = "LastCompoundAssignment", e[e.FirstReservedWord = 83] = "FirstReservedWord", e[e.LastReservedWord = 118] = "LastReservedWord", e[e.FirstKeyword = 83] = "FirstKeyword", e[e.LastKeyword = 166] = "LastKeyword", e[e.FirstFutureReservedWord = 119] = "FirstFutureReservedWord", e[e.LastFutureReservedWord = 127] = "LastFutureReservedWord", e[e.FirstTypeNode = 183] = "FirstTypeNode", e[e.LastTypeNode = 206] = "LastTypeNode", e[e.FirstPunctuation = 19] = "FirstPunctuation", e[e.LastPunctuation = 79] = "LastPunctuation", e[e.FirstToken = 0] = "FirstToken", e[e.LastToken = 166] = "LastToken", e[e.FirstTriviaToken = 2] = "FirstTriviaToken", e[e.LastTriviaToken = 7] = "LastTriviaToken", e[e.FirstLiteralToken = 9] = "FirstLiteralToken", e[e.LastLiteralToken = 15] = "LastLiteralToken", e[e.FirstTemplateToken = 15] = "FirstTemplateToken", e[e.LastTemplateToken = 18] = "LastTemplateToken", e[e.FirstBinaryOperator = 30] = "FirstBinaryOperator", e[e.LastBinaryOperator = 79] = "LastBinaryOperator", e[e.FirstStatement = 244] = "FirstStatement", e[e.LastStatement = 260] = "LastStatement", e[e.FirstNode = 167] = "FirstNode", e[e.FirstJSDocNode = 310] = "FirstJSDocNode", e[e.LastJSDocNode = 352] = "LastJSDocNode", e[e.FirstJSDocTagNode = 328] = "FirstJSDocTagNode", e[e.LastJSDocTagNode = 352] = "LastJSDocTagNode", e[e.FirstContextualKeyword = 128] = "FirstContextualKeyword", e[e.LastContextualKeyword = 166] = "LastContextualKeyword", e))(fj || {}), pj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Let = 1] = "Let", e[e.Const = 2] = "Const", e[e.Using = 4] = "Using", e[e.AwaitUsing = 6] = "AwaitUsing", e[e.NestedNamespace = 8] = "NestedNamespace", e[e.Synthesized = 16] = "Synthesized", e[e.Namespace = 32] = "Namespace", e[e.OptionalChain = 64] = "OptionalChain", e[e.ExportContext = 128] = "ExportContext", e[e.ContainsThis = 256] = "ContainsThis", e[e.HasImplicitReturn = 512] = "HasImplicitReturn", e[e.HasExplicitReturn = 1024] = "HasExplicitReturn", e[e.GlobalAugmentation = 2048] = "GlobalAugmentation", e[e.HasAsyncFunctions = 4096] = "HasAsyncFunctions", e[e.DisallowInContext = 8192] = "DisallowInContext", e[e.YieldContext = 16384] = "YieldContext", e[e.DecoratorContext = 32768] = "DecoratorContext", e[e.AwaitContext = 65536] = "AwaitContext", e[e.DisallowConditionalTypesContext = 131072] = "DisallowConditionalTypesContext", e[e.ThisNodeHasError = 262144] = "ThisNodeHasError", e[e.JavaScriptFile = 524288] = "JavaScriptFile", e[e.ThisNodeOrAnySubNodesHasError = 1048576] = "ThisNodeOrAnySubNodesHasError", e[e.HasAggregatedChildData = 2097152] = "HasAggregatedChildData", e[e.PossiblyContainsDynamicImport = 4194304] = "PossiblyContainsDynamicImport", e[e.PossiblyContainsImportMeta = 8388608] = "PossiblyContainsImportMeta", e[e.JSDoc = 16777216] = "JSDoc", e[e.Ambient = 33554432] = "Ambient", e[e.InWithStatement = 67108864] = "InWithStatement", e[e.JsonFile = 134217728] = "JsonFile", e[e.TypeCached = 268435456] = "TypeCached", e[e.Deprecated = 536870912] = "Deprecated", e[e.Unreachable = 1073741824] = "Unreachable", e[e.BlockScoped = 7] = "BlockScoped", e[e.Constant = 6] = "Constant", e[e.ReachabilityCheckFlags = 1536] = "ReachabilityCheckFlags", e[e.ReachabilityAndEmitFlags = 5632] = "ReachabilityAndEmitFlags", e[e.ContextFlags = 101441536] = "ContextFlags", e[e.TypeExcludesFlags = 81920] = "TypeExcludesFlags", e[e.PermanentlySetIncrementalFlags = 12582912] = "PermanentlySetIncrementalFlags", e[e.IdentifierHasExtendedUnicodeEscape = 256] = "IdentifierHasExtendedUnicodeEscape", e[e.IdentifierIsInJSDocNamespace = 4096] = "IdentifierIsInJSDocNamespace", e))(pj || {}), dj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Public = 1] = "Public", e[e.Private = 2] = "Private", e[e.Protected = 4] = "Protected", e[e.Readonly = 8] = "Readonly", e[e.Override = 16] = "Override", e[e.Export = 32] = "Export", e[e.Abstract = 64] = "Abstract", e[e.Ambient = 128] = "Ambient", e[e.Static = 256] = "Static", e[e.Accessor = 512] = "Accessor", e[e.Async = 1024] = "Async", e[e.Default = 2048] = "Default", e[e.Const = 4096] = "Const", e[e.In = 8192] = "In", e[e.Out = 16384] = "Out", e[e.Decorator = 32768] = "Decorator", e[e.Deprecated = 65536] = "Deprecated", e[e.JSDocPublic = 8388608] = "JSDocPublic", e[e.JSDocPrivate = 16777216] = "JSDocPrivate", e[e.JSDocProtected = 33554432] = "JSDocProtected", e[e.JSDocReadonly = 67108864] = "JSDocReadonly", e[e.JSDocOverride = 134217728] = "JSDocOverride", e[e.SyntacticOrJSDocModifiers = 31] = "SyntacticOrJSDocModifiers", e[e.SyntacticOnlyModifiers = 65504] = "SyntacticOnlyModifiers", e[e.SyntacticModifiers = 65535] = "SyntacticModifiers", e[e.JSDocCacheOnlyModifiers = 260046848] = "JSDocCacheOnlyModifiers", e[e.JSDocOnlyModifiers = 65536] = "JSDocOnlyModifiers", e[e.NonCacheOnlyModifiers = 131071] = "NonCacheOnlyModifiers", e[e.HasComputedJSDocModifiers = 268435456] = "HasComputedJSDocModifiers", e[e.HasComputedFlags = 536870912] = "HasComputedFlags", e[e.AccessibilityModifier = 7] = "AccessibilityModifier", e[e.ParameterPropertyModifier = 31] = "ParameterPropertyModifier", e[e.NonPublicAccessibilityModifier = 6] = "NonPublicAccessibilityModifier", e[e.TypeScriptModifier = 28895] = "TypeScriptModifier", e[e.ExportDefault = 2080] = "ExportDefault", e[e.All = 131071] = "All", e[e.Modifier = 98303] = "Modifier", e))(dj || {}), jQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.IntrinsicNamedElement = 1] = "IntrinsicNamedElement", e[e.IntrinsicIndexedElement = 2] = "IntrinsicIndexedElement", e[e.IntrinsicElement = 3] = "IntrinsicElement", e))(jQ || {}), mj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Succeeded = 1] = "Succeeded", e[e.Failed = 2] = "Failed", e[e.ReportsUnmeasurable = 8] = "ReportsUnmeasurable", e[e.ReportsUnreliable = 16] = "ReportsUnreliable", e[e.ReportsMask = 24] = "ReportsMask", e[e.ComplexityOverflow = 32] = "ComplexityOverflow", e[e.StackDepthOverflow = 64] = "StackDepthOverflow", e[e.Overflow = 96] = "Overflow", e))(mj || {}), BQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Always = 1] = "Always", e[e.Never = 2] = "Never", e[e.Sometimes = 3] = "Sometimes", e))(BQ || {}), gj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Auto = 1] = "Auto", e[e.Loop = 2] = "Loop", e[e.Unique = 3] = "Unique", e[e.Node = 4] = "Node", e[e.KindMask = 7] = "KindMask", e[e.ReservedInNestedScopes = 8] = "ReservedInNestedScopes", e[e.Optimistic = 16] = "Optimistic", e[e.FileLevel = 32] = "FileLevel", e[e.AllowNameSubstitution = 64] = "AllowNameSubstitution", e))(gj || {}), JQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.HasIndices = 1] = "HasIndices", e[e.Global = 2] = "Global", e[e.IgnoreCase = 4] = "IgnoreCase", e[e.Multiline = 8] = "Multiline", e[e.DotAll = 16] = "DotAll", e[e.Unicode = 32] = "Unicode", e[e.UnicodeSets = 64] = "UnicodeSets", e[e.Sticky = 128] = "Sticky", e[e.AnyUnicodeMode = 96] = "AnyUnicodeMode", e[e.Modifiers = 28] = "Modifiers", e))(JQ || {}), zQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.PrecedingLineBreak = 1] = "PrecedingLineBreak", e[e.PrecedingJSDocComment = 2] = "PrecedingJSDocComment", e[e.Unterminated = 4] = "Unterminated", e[e.ExtendedUnicodeEscape = 8] = "ExtendedUnicodeEscape", e[e.Scientific = 16] = "Scientific", e[e.Octal = 32] = "Octal", e[e.HexSpecifier = 64] = "HexSpecifier", e[e.BinarySpecifier = 128] = "BinarySpecifier", e[e.OctalSpecifier = 256] = "OctalSpecifier", e[e.ContainsSeparator = 512] = "ContainsSeparator", e[e.UnicodeEscape = 1024] = "UnicodeEscape", e[e.ContainsInvalidEscape = 2048] = "ContainsInvalidEscape", e[e.HexEscape = 4096] = "HexEscape", e[e.ContainsLeadingZero = 8192] = "ContainsLeadingZero", e[e.ContainsInvalidSeparator = 16384] = "ContainsInvalidSeparator", e[e.PrecedingJSDocLeadingAsterisks = 32768] = "PrecedingJSDocLeadingAsterisks", e[e.BinaryOrOctalSpecifier = 384] = "BinaryOrOctalSpecifier", e[e.WithSpecifier = 448] = "WithSpecifier", e[e.StringLiteralFlags = 7176] = "StringLiteralFlags", e[e.NumericLiteralFlags = 25584] = "NumericLiteralFlags", e[e.TemplateLiteralLikeFlags = 7176] = "TemplateLiteralLikeFlags", e[e.IsInvalid = 26656] = "IsInvalid", e))(zQ || {}), D7 = /* @__PURE__ */ ((e) => (e[e.Unreachable = 1] = "Unreachable", e[e.Start = 2] = "Start", e[e.BranchLabel = 4] = "BranchLabel", e[e.LoopLabel = 8] = "LoopLabel", e[e.Assignment = 16] = "Assignment", e[e.TrueCondition = 32] = "TrueCondition", e[e.FalseCondition = 64] = "FalseCondition", e[e.SwitchClause = 128] = "SwitchClause", e[e.ArrayMutation = 256] = "ArrayMutation", e[e.Call = 512] = "Call", e[e.ReduceLabel = 1024] = "ReduceLabel", e[e.Referenced = 2048] = "Referenced", e[e.Shared = 4096] = "Shared", e[e.Label = 12] = "Label", e[e.Condition = 96] = "Condition", e))(D7 || {}), WQ = /* @__PURE__ */ ((e) => (e[e.ExpectError = 0] = "ExpectError", e[e.Ignore = 1] = "Ignore", e))(WQ || {}), N4 = class {
    }, hj = /* @__PURE__ */ ((e) => (e[e.RootFile = 0] = "RootFile", e[e.SourceFromProjectReference = 1] = "SourceFromProjectReference", e[e.OutputFromProjectReference = 2] = "OutputFromProjectReference", e[e.Import = 3] = "Import", e[e.ReferenceFile = 4] = "ReferenceFile", e[e.TypeReferenceDirective = 5] = "TypeReferenceDirective", e[e.LibFile = 6] = "LibFile", e[e.LibReferenceDirective = 7] = "LibReferenceDirective", e[e.AutomaticTypeDirectiveFile = 8] = "AutomaticTypeDirectiveFile", e))(hj || {}), UQ = /* @__PURE__ */ ((e) => (e[e.FilePreprocessingLibReferenceDiagnostic = 0] = "FilePreprocessingLibReferenceDiagnostic", e[e.FilePreprocessingFileExplainingDiagnostic = 1] = "FilePreprocessingFileExplainingDiagnostic", e[e.ResolutionDiagnostics = 2] = "ResolutionDiagnostics", e))(UQ || {}), VQ = /* @__PURE__ */ ((e) => (e[e.Js = 0] = "Js", e[e.Dts = 1] = "Dts", e[e.BuilderSignature = 2] = "BuilderSignature", e))(VQ || {}), yj = /* @__PURE__ */ ((e) => (e[e.Not = 0] = "Not", e[e.SafeModules = 1] = "SafeModules", e[e.Completely = 2] = "Completely", e))(yj || {}), qQ = /* @__PURE__ */ ((e) => (e[e.Success = 0] = "Success", e[e.DiagnosticsPresent_OutputsSkipped = 1] = "DiagnosticsPresent_OutputsSkipped", e[e.DiagnosticsPresent_OutputsGenerated = 2] = "DiagnosticsPresent_OutputsGenerated", e[e.InvalidProject_OutputsSkipped = 3] = "InvalidProject_OutputsSkipped", e[e.ProjectReferenceCycle_OutputsSkipped = 4] = "ProjectReferenceCycle_OutputsSkipped", e))(qQ || {}), GQ = /* @__PURE__ */ ((e) => (e[e.Ok = 0] = "Ok", e[e.NeedsOverride = 1] = "NeedsOverride", e[e.HasInvalidOverride = 2] = "HasInvalidOverride", e))(GQ || {}), HQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Literal = 1] = "Literal", e[e.Subtype = 2] = "Subtype", e))(HQ || {}), $Q = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NoSupertypeReduction = 1] = "NoSupertypeReduction", e[e.NoConstraintReduction = 2] = "NoConstraintReduction", e))($Q || {}), XQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Signature = 1] = "Signature", e[e.NoConstraints = 2] = "NoConstraints", e[e.IgnoreNodeInferences = 4] = "IgnoreNodeInferences", e[e.SkipBindingPatterns = 8] = "SkipBindingPatterns", e))(XQ || {}), QQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NoTruncation = 1] = "NoTruncation", e[e.WriteArrayAsGenericType = 2] = "WriteArrayAsGenericType", e[e.GenerateNamesForShadowedTypeParams = 4] = "GenerateNamesForShadowedTypeParams", e[e.UseStructuralFallback = 8] = "UseStructuralFallback", e[e.ForbidIndexedAccessSymbolReferences = 16] = "ForbidIndexedAccessSymbolReferences", e[e.WriteTypeArgumentsOfSignature = 32] = "WriteTypeArgumentsOfSignature", e[e.UseFullyQualifiedType = 64] = "UseFullyQualifiedType", e[e.UseOnlyExternalAliasing = 128] = "UseOnlyExternalAliasing", e[e.SuppressAnyReturnType = 256] = "SuppressAnyReturnType", e[e.WriteTypeParametersInQualifiedName = 512] = "WriteTypeParametersInQualifiedName", e[e.MultilineObjectLiterals = 1024] = "MultilineObjectLiterals", e[e.WriteClassExpressionAsTypeLiteral = 2048] = "WriteClassExpressionAsTypeLiteral", e[e.UseTypeOfFunction = 4096] = "UseTypeOfFunction", e[e.OmitParameterModifiers = 8192] = "OmitParameterModifiers", e[e.UseAliasDefinedOutsideCurrentScope = 16384] = "UseAliasDefinedOutsideCurrentScope", e[e.UseSingleQuotesForStringLiteralType = 268435456] = "UseSingleQuotesForStringLiteralType", e[e.NoTypeReduction = 536870912] = "NoTypeReduction", e[e.OmitThisParameter = 33554432] = "OmitThisParameter", e[e.AllowThisInObjectLiteral = 32768] = "AllowThisInObjectLiteral", e[e.AllowQualifiedNameInPlaceOfIdentifier = 65536] = "AllowQualifiedNameInPlaceOfIdentifier", e[e.AllowAnonymousIdentifier = 131072] = "AllowAnonymousIdentifier", e[e.AllowEmptyUnionOrIntersection = 262144] = "AllowEmptyUnionOrIntersection", e[e.AllowEmptyTuple = 524288] = "AllowEmptyTuple", e[e.AllowUniqueESSymbolType = 1048576] = "AllowUniqueESSymbolType", e[e.AllowEmptyIndexInfoType = 2097152] = "AllowEmptyIndexInfoType", e[e.AllowNodeModulesRelativePaths = 67108864] = "AllowNodeModulesRelativePaths", e[e.IgnoreErrors = 70221824] = "IgnoreErrors", e[e.InObjectTypeLiteral = 4194304] = "InObjectTypeLiteral", e[e.InTypeAlias = 8388608] = "InTypeAlias", e[e.InInitialEntityName = 16777216] = "InInitialEntityName", e))(QQ || {}), YQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.WriteComputedProps = 1] = "WriteComputedProps", e[e.NoSyntacticPrinter = 2] = "NoSyntacticPrinter", e[e.DoNotIncludeSymbolChain = 4] = "DoNotIncludeSymbolChain", e[e.AllowUnresolvedNames = 8] = "AllowUnresolvedNames", e))(YQ || {}), ZQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NoTruncation = 1] = "NoTruncation", e[e.WriteArrayAsGenericType = 2] = "WriteArrayAsGenericType", e[e.GenerateNamesForShadowedTypeParams = 4] = "GenerateNamesForShadowedTypeParams", e[e.UseStructuralFallback = 8] = "UseStructuralFallback", e[e.WriteTypeArgumentsOfSignature = 32] = "WriteTypeArgumentsOfSignature", e[e.UseFullyQualifiedType = 64] = "UseFullyQualifiedType", e[e.SuppressAnyReturnType = 256] = "SuppressAnyReturnType", e[e.MultilineObjectLiterals = 1024] = "MultilineObjectLiterals", e[e.WriteClassExpressionAsTypeLiteral = 2048] = "WriteClassExpressionAsTypeLiteral", e[e.UseTypeOfFunction = 4096] = "UseTypeOfFunction", e[e.OmitParameterModifiers = 8192] = "OmitParameterModifiers", e[e.UseAliasDefinedOutsideCurrentScope = 16384] = "UseAliasDefinedOutsideCurrentScope", e[e.UseSingleQuotesForStringLiteralType = 268435456] = "UseSingleQuotesForStringLiteralType", e[e.NoTypeReduction = 536870912] = "NoTypeReduction", e[e.OmitThisParameter = 33554432] = "OmitThisParameter", e[e.AllowUniqueESSymbolType = 1048576] = "AllowUniqueESSymbolType", e[e.AddUndefined = 131072] = "AddUndefined", e[e.WriteArrowStyleSignature = 262144] = "WriteArrowStyleSignature", e[e.InArrayType = 524288] = "InArrayType", e[e.InElementType = 2097152] = "InElementType", e[e.InFirstTypeArgument = 4194304] = "InFirstTypeArgument", e[e.InTypeAlias = 8388608] = "InTypeAlias", e[e.NodeBuilderFlagsMask = 848330095] = "NodeBuilderFlagsMask", e))(ZQ || {}), KQ = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.WriteTypeParametersOrArguments = 1] = "WriteTypeParametersOrArguments", e[e.UseOnlyExternalAliasing = 2] = "UseOnlyExternalAliasing", e[e.AllowAnyNodeKind = 4] = "AllowAnyNodeKind", e[e.UseAliasDefinedOutsideCurrentScope = 8] = "UseAliasDefinedOutsideCurrentScope", e[e.WriteComputedProps = 16] = "WriteComputedProps", e[e.DoNotIncludeSymbolChain = 32] = "DoNotIncludeSymbolChain", e))(KQ || {}), eY = /* @__PURE__ */ ((e) => (e[e.Accessible = 0] = "Accessible", e[e.NotAccessible = 1] = "NotAccessible", e[e.CannotBeNamed = 2] = "CannotBeNamed", e[e.NotResolved = 3] = "NotResolved", e))(eY || {}), tY = /* @__PURE__ */ ((e) => (e[e.This = 0] = "This", e[e.Identifier = 1] = "Identifier", e[e.AssertsThis = 2] = "AssertsThis", e[e.AssertsIdentifier = 3] = "AssertsIdentifier", e))(tY || {}), rY = /* @__PURE__ */ ((e) => (e[e.Unknown = 0] = "Unknown", e[e.TypeWithConstructSignatureAndValue = 1] = "TypeWithConstructSignatureAndValue", e[e.VoidNullableOrNeverType = 2] = "VoidNullableOrNeverType", e[e.NumberLikeType = 3] = "NumberLikeType", e[e.BigIntLikeType = 4] = "BigIntLikeType", e[e.StringLikeType = 5] = "StringLikeType", e[e.BooleanType = 6] = "BooleanType", e[e.ArrayLikeType = 7] = "ArrayLikeType", e[e.ESSymbolType = 8] = "ESSymbolType", e[e.Promise = 9] = "Promise", e[e.TypeWithCallSignature = 10] = "TypeWithCallSignature", e[e.ObjectType = 11] = "ObjectType", e))(rY || {}), vj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.FunctionScopedVariable = 1] = "FunctionScopedVariable", e[e.BlockScopedVariable = 2] = "BlockScopedVariable", e[e.Property = 4] = "Property", e[e.EnumMember = 8] = "EnumMember", e[e.Function = 16] = "Function", e[e.Class = 32] = "Class", e[e.Interface = 64] = "Interface", e[e.ConstEnum = 128] = "ConstEnum", e[e.RegularEnum = 256] = "RegularEnum", e[e.ValueModule = 512] = "ValueModule", e[e.NamespaceModule = 1024] = "NamespaceModule", e[e.TypeLiteral = 2048] = "TypeLiteral", e[e.ObjectLiteral = 4096] = "ObjectLiteral", e[e.Method = 8192] = "Method", e[e.Constructor = 16384] = "Constructor", e[e.GetAccessor = 32768] = "GetAccessor", e[e.SetAccessor = 65536] = "SetAccessor", e[e.Signature = 131072] = "Signature", e[e.TypeParameter = 262144] = "TypeParameter", e[e.TypeAlias = 524288] = "TypeAlias", e[e.ExportValue = 1048576] = "ExportValue", e[e.Alias = 2097152] = "Alias", e[e.Prototype = 4194304] = "Prototype", e[e.ExportStar = 8388608] = "ExportStar", e[e.Optional = 16777216] = "Optional", e[e.Transient = 33554432] = "Transient", e[e.Assignment = 67108864] = "Assignment", e[e.ModuleExports = 134217728] = "ModuleExports", e[e.All = -1] = "All", e[e.Enum = 384] = "Enum", e[e.Variable = 3] = "Variable", e[e.Value = 111551] = "Value", e[e.Type = 788968] = "Type", e[e.Namespace = 1920] = "Namespace", e[e.Module = 1536] = "Module", e[e.Accessor = 98304] = "Accessor", e[e.FunctionScopedVariableExcludes = 111550] = "FunctionScopedVariableExcludes", e[e.BlockScopedVariableExcludes = 111551] = "BlockScopedVariableExcludes", e[e.ParameterExcludes = 111551] = "ParameterExcludes", e[e.PropertyExcludes = 0] = "PropertyExcludes", e[e.EnumMemberExcludes = 900095] = "EnumMemberExcludes", e[e.FunctionExcludes = 110991] = "FunctionExcludes", e[e.ClassExcludes = 899503] = "ClassExcludes", e[e.InterfaceExcludes = 788872] = "InterfaceExcludes", e[e.RegularEnumExcludes = 899327] = "RegularEnumExcludes", e[e.ConstEnumExcludes = 899967] = "ConstEnumExcludes", e[e.ValueModuleExcludes = 110735] = "ValueModuleExcludes", e[e.NamespaceModuleExcludes = 0] = "NamespaceModuleExcludes", e[e.MethodExcludes = 103359] = "MethodExcludes", e[e.GetAccessorExcludes = 46015] = "GetAccessorExcludes", e[e.SetAccessorExcludes = 78783] = "SetAccessorExcludes", e[e.AccessorExcludes = 13247] = "AccessorExcludes", e[e.TypeParameterExcludes = 526824] = "TypeParameterExcludes", e[e.TypeAliasExcludes = 788968] = "TypeAliasExcludes", e[e.AliasExcludes = 2097152] = "AliasExcludes", e[e.ModuleMember = 2623475] = "ModuleMember", e[e.ExportHasLocal = 944] = "ExportHasLocal", e[e.BlockScoped = 418] = "BlockScoped", e[e.PropertyOrAccessor = 98308] = "PropertyOrAccessor", e[e.ClassMember = 106500] = "ClassMember", e[e.ExportSupportsDefaultModifier = 112] = "ExportSupportsDefaultModifier", e[e.ExportDoesNotSupportDefaultModifier = -113] = "ExportDoesNotSupportDefaultModifier", e[e.Classifiable = 2885600] = "Classifiable", e[e.LateBindingContainer = 6256] = "LateBindingContainer", e))(vj || {}), nY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Instantiated = 1] = "Instantiated", e[e.SyntheticProperty = 2] = "SyntheticProperty", e[e.SyntheticMethod = 4] = "SyntheticMethod", e[e.Readonly = 8] = "Readonly", e[e.ReadPartial = 16] = "ReadPartial", e[e.WritePartial = 32] = "WritePartial", e[e.HasNonUniformType = 64] = "HasNonUniformType", e[e.HasLiteralType = 128] = "HasLiteralType", e[e.ContainsPublic = 256] = "ContainsPublic", e[e.ContainsProtected = 512] = "ContainsProtected", e[e.ContainsPrivate = 1024] = "ContainsPrivate", e[e.ContainsStatic = 2048] = "ContainsStatic", e[e.Late = 4096] = "Late", e[e.ReverseMapped = 8192] = "ReverseMapped", e[e.OptionalParameter = 16384] = "OptionalParameter", e[e.RestParameter = 32768] = "RestParameter", e[e.DeferredType = 65536] = "DeferredType", e[e.HasNeverType = 131072] = "HasNeverType", e[e.Mapped = 262144] = "Mapped", e[e.StripOptional = 524288] = "StripOptional", e[e.Unresolved = 1048576] = "Unresolved", e[e.Synthetic = 6] = "Synthetic", e[e.Discriminant = 192] = "Discriminant", e[e.Partial = 48] = "Partial", e))(nY || {}), iY = /* @__PURE__ */ ((e) => (e.Call = "__call", e.Constructor = "__constructor", e.New = "__new", e.Index = "__index", e.ExportStar = "__export", e.Global = "__global", e.Missing = "__missing", e.Type = "__type", e.Object = "__object", e.JSXAttributes = "__jsxAttributes", e.Class = "__class", e.Function = "__function", e.Computed = "__computed", e.Resolving = "__resolving__", e.ExportEquals = "export=", e.Default = "default", e.This = "this", e.InstantiationExpression = "__instantiationExpression", e.ImportAttributes = "__importAttributes", e))(iY || {}), bj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.TypeChecked = 1] = "TypeChecked", e[e.LexicalThis = 2] = "LexicalThis", e[e.CaptureThis = 4] = "CaptureThis", e[e.CaptureNewTarget = 8] = "CaptureNewTarget", e[e.SuperInstance = 16] = "SuperInstance", e[e.SuperStatic = 32] = "SuperStatic", e[e.ContextChecked = 64] = "ContextChecked", e[e.MethodWithSuperPropertyAccessInAsync = 128] = "MethodWithSuperPropertyAccessInAsync", e[e.MethodWithSuperPropertyAssignmentInAsync = 256] = "MethodWithSuperPropertyAssignmentInAsync", e[e.CaptureArguments = 512] = "CaptureArguments", e[e.EnumValuesComputed = 1024] = "EnumValuesComputed", e[e.LexicalModuleMergesWithClass = 2048] = "LexicalModuleMergesWithClass", e[e.LoopWithCapturedBlockScopedBinding = 4096] = "LoopWithCapturedBlockScopedBinding", e[e.ContainsCapturedBlockScopeBinding = 8192] = "ContainsCapturedBlockScopeBinding", e[e.CapturedBlockScopedBinding = 16384] = "CapturedBlockScopedBinding", e[e.BlockScopedBindingInLoop = 32768] = "BlockScopedBindingInLoop", e[e.NeedsLoopOutParameter = 65536] = "NeedsLoopOutParameter", e[e.AssignmentsMarked = 131072] = "AssignmentsMarked", e[e.ContainsConstructorReference = 262144] = "ContainsConstructorReference", e[e.ConstructorReference = 536870912] = "ConstructorReference", e[e.ContainsClassWithPrivateIdentifiers = 1048576] = "ContainsClassWithPrivateIdentifiers", e[e.ContainsSuperPropertyInStaticInitializer = 2097152] = "ContainsSuperPropertyInStaticInitializer", e[e.InCheckIdentifier = 4194304] = "InCheckIdentifier", e[e.PartiallyTypeChecked = 8388608] = "PartiallyTypeChecked", e[e.LazyFlags = 539358128] = "LazyFlags", e))(bj || {}), Sj = /* @__PURE__ */ ((e) => (e[e.Any = 1] = "Any", e[e.Unknown = 2] = "Unknown", e[e.Undefined = 4] = "Undefined", e[e.Null = 8] = "Null", e[e.Void = 16] = "Void", e[e.String = 32] = "String", e[e.Number = 64] = "Number", e[e.BigInt = 128] = "BigInt", e[e.Boolean = 256] = "Boolean", e[e.ESSymbol = 512] = "ESSymbol", e[e.StringLiteral = 1024] = "StringLiteral", e[e.NumberLiteral = 2048] = "NumberLiteral", e[e.BigIntLiteral = 4096] = "BigIntLiteral", e[e.BooleanLiteral = 8192] = "BooleanLiteral", e[e.UniqueESSymbol = 16384] = "UniqueESSymbol", e[e.EnumLiteral = 32768] = "EnumLiteral", e[e.Enum = 65536] = "Enum", e[e.NonPrimitive = 131072] = "NonPrimitive", e[e.Never = 262144] = "Never", e[e.TypeParameter = 524288] = "TypeParameter", e[e.Object = 1048576] = "Object", e[e.Index = 2097152] = "Index", e[e.TemplateLiteral = 4194304] = "TemplateLiteral", e[e.StringMapping = 8388608] = "StringMapping", e[e.Substitution = 16777216] = "Substitution", e[e.IndexedAccess = 33554432] = "IndexedAccess", e[e.Conditional = 67108864] = "Conditional", e[e.Union = 134217728] = "Union", e[e.Intersection = 268435456] = "Intersection", e[e.Reserved1 = 536870912] = "Reserved1", e[e.Reserved2 = 1073741824] = "Reserved2", e[e.Reserved3 = -2147483648] = "Reserved3", e[e.AnyOrUnknown = 3] = "AnyOrUnknown", e[e.Nullable = 12] = "Nullable", e[e.Literal = 15360] = "Literal", e[e.Unit = 97292] = "Unit", e[e.Freshable = 80896] = "Freshable", e[e.StringOrNumberLiteral = 3072] = "StringOrNumberLiteral", e[e.StringOrNumberLiteralOrUnique = 19456] = "StringOrNumberLiteralOrUnique", e[e.DefinitelyFalsy = 15388] = "DefinitelyFalsy", e[e.PossiblyFalsy = 15868] = "PossiblyFalsy", e[e.Intrinsic = 402431] = "Intrinsic", e[e.StringLike = 12583968] = "StringLike", e[e.NumberLike = 67648] = "NumberLike", e[e.BigIntLike = 4224] = "BigIntLike", e[e.BooleanLike = 8448] = "BooleanLike", e[e.EnumLike = 98304] = "EnumLike", e[e.ESSymbolLike = 16896] = "ESSymbolLike", e[e.VoidLike = 20] = "VoidLike", e[e.Primitive = 12713980] = "Primitive", e[e.DefinitelyNonNullable = 13893600] = "DefinitelyNonNullable", e[e.DisjointDomains = 12812284] = "DisjointDomains", e[e.UnionOrIntersection = 402653184] = "UnionOrIntersection", e[e.StructuredType = 403701760] = "StructuredType", e[e.TypeVariable = 34078720] = "TypeVariable", e[e.InstantiableNonPrimitive = 117964800] = "InstantiableNonPrimitive", e[e.InstantiablePrimitive = 14680064] = "InstantiablePrimitive", e[e.Instantiable = 132644864] = "Instantiable", e[e.StructuredOrInstantiable = 536346624] = "StructuredOrInstantiable", e[e.ObjectFlagsType = 403963917] = "ObjectFlagsType", e[e.Simplifiable = 102760448] = "Simplifiable", e[e.Singleton = 394239] = "Singleton", e[e.Narrowable = 536575971] = "Narrowable", e[e.IncludesMask = 416808959] = "IncludesMask", e[e.IncludesMissingType = 524288] = "IncludesMissingType", e[e.IncludesNonWideningType = 2097152] = "IncludesNonWideningType", e[e.IncludesWildcard = 33554432] = "IncludesWildcard", e[e.IncludesEmptyObject = 67108864] = "IncludesEmptyObject", e[e.IncludesInstantiable = 16777216] = "IncludesInstantiable", e[e.IncludesConstrainedTypeVariable = 536870912] = "IncludesConstrainedTypeVariable", e[e.IncludesError = 1073741824] = "IncludesError", e[e.NotPrimitiveUnion = 286523411] = "NotPrimitiveUnion", e))(Sj || {}), Tj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Class = 1] = "Class", e[e.Interface = 2] = "Interface", e[e.Reference = 4] = "Reference", e[e.Tuple = 8] = "Tuple", e[e.Anonymous = 16] = "Anonymous", e[e.Mapped = 32] = "Mapped", e[e.Instantiated = 64] = "Instantiated", e[e.ObjectLiteral = 128] = "ObjectLiteral", e[e.EvolvingArray = 256] = "EvolvingArray", e[e.ObjectLiteralPatternWithComputedProperties = 512] = "ObjectLiteralPatternWithComputedProperties", e[e.ReverseMapped = 1024] = "ReverseMapped", e[e.JsxAttributes = 2048] = "JsxAttributes", e[e.JSLiteral = 4096] = "JSLiteral", e[e.FreshLiteral = 8192] = "FreshLiteral", e[e.ArrayLiteral = 16384] = "ArrayLiteral", e[e.PrimitiveUnion = 32768] = "PrimitiveUnion", e[e.ContainsWideningType = 65536] = "ContainsWideningType", e[e.ContainsObjectOrArrayLiteral = 131072] = "ContainsObjectOrArrayLiteral", e[e.NonInferrableType = 262144] = "NonInferrableType", e[e.CouldContainTypeVariablesComputed = 524288] = "CouldContainTypeVariablesComputed", e[e.CouldContainTypeVariables = 1048576] = "CouldContainTypeVariables", e[e.SingleSignatureType = 134217728] = "SingleSignatureType", e[e.ClassOrInterface = 3] = "ClassOrInterface", e[e.RequiresWidening = 196608] = "RequiresWidening", e[e.PropagatingFlags = 458752] = "PropagatingFlags", e[e.InstantiatedMapped = 96] = "InstantiatedMapped", e[e.ContainsSpread = 2097152] = "ContainsSpread", e[e.ObjectRestType = 4194304] = "ObjectRestType", e[e.InstantiationExpressionType = 8388608] = "InstantiationExpressionType", e[e.ObjectTypeKindMask = 142607679] = "ObjectTypeKindMask", e[e.IsClassInstanceClone = 16777216] = "IsClassInstanceClone", e[e.IdenticalBaseTypeCalculated = 33554432] = "IdenticalBaseTypeCalculated", e[e.IdenticalBaseTypeExists = 67108864] = "IdenticalBaseTypeExists", e[e.IsGenericTypeComputed = 2097152] = "IsGenericTypeComputed", e[e.IsGenericObjectType = 4194304] = "IsGenericObjectType", e[e.IsGenericIndexType = 8388608] = "IsGenericIndexType", e[e.IsGenericType = 12582912] = "IsGenericType", e[e.ContainsIntersections = 16777216] = "ContainsIntersections", e[e.IsUnknownLikeUnionComputed = 33554432] = "IsUnknownLikeUnionComputed", e[e.IsUnknownLikeUnion = 67108864] = "IsUnknownLikeUnion", e[e.IsNeverIntersectionComputed = 16777216] = "IsNeverIntersectionComputed", e[e.IsNeverIntersection = 33554432] = "IsNeverIntersection", e[e.IsConstrainedTypeVariable = 67108864] = "IsConstrainedTypeVariable", e))(Tj || {}), aY = /* @__PURE__ */ ((e) => (e[e.Invariant = 0] = "Invariant", e[e.Covariant = 1] = "Covariant", e[e.Contravariant = 2] = "Contravariant", e[e.Bivariant = 3] = "Bivariant", e[e.Independent = 4] = "Independent", e[e.VarianceMask = 7] = "VarianceMask", e[e.Unmeasurable = 8] = "Unmeasurable", e[e.Unreliable = 16] = "Unreliable", e[e.AllowsStructuralFallback = 24] = "AllowsStructuralFallback", e))(aY || {}), sY = /* @__PURE__ */ ((e) => (e[e.Required = 1] = "Required", e[e.Optional = 2] = "Optional", e[e.Rest = 4] = "Rest", e[e.Variadic = 8] = "Variadic", e[e.Fixed = 3] = "Fixed", e[e.Variable = 12] = "Variable", e[e.NonRequired = 14] = "NonRequired", e[e.NonRest = 11] = "NonRest", e))(sY || {}), oY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.IncludeUndefined = 1] = "IncludeUndefined", e[e.NoIndexSignatures = 2] = "NoIndexSignatures", e[e.Writing = 4] = "Writing", e[e.CacheSymbol = 8] = "CacheSymbol", e[e.AllowMissing = 16] = "AllowMissing", e[e.ExpressionPosition = 32] = "ExpressionPosition", e[e.ReportDeprecated = 64] = "ReportDeprecated", e[e.SuppressNoImplicitAnyError = 128] = "SuppressNoImplicitAnyError", e[e.Contextual = 256] = "Contextual", e[e.Persistent = 1] = "Persistent", e))(oY || {}), cY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.StringsOnly = 1] = "StringsOnly", e[e.NoIndexSignatures = 2] = "NoIndexSignatures", e[e.NoReducibleCheck = 4] = "NoReducibleCheck", e))(cY || {}), lY = /* @__PURE__ */ ((e) => (e[e.Component = 0] = "Component", e[e.Function = 1] = "Function", e[e.Mixed = 2] = "Mixed", e))(lY || {}), uY = /* @__PURE__ */ ((e) => (e[e.Call = 0] = "Call", e[e.Construct = 1] = "Construct", e))(uY || {}), xj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.HasRestParameter = 1] = "HasRestParameter", e[e.HasLiteralTypes = 2] = "HasLiteralTypes", e[e.Abstract = 4] = "Abstract", e[e.IsInnerCallChain = 8] = "IsInnerCallChain", e[e.IsOuterCallChain = 16] = "IsOuterCallChain", e[e.IsUntypedSignatureInJSFile = 32] = "IsUntypedSignatureInJSFile", e[e.IsNonInferrable = 64] = "IsNonInferrable", e[e.IsSignatureCandidateForOverloadFailure = 128] = "IsSignatureCandidateForOverloadFailure", e[e.PropagatingFlags = 167] = "PropagatingFlags", e[e.CallChainFlags = 24] = "CallChainFlags", e))(xj || {}), _Y = /* @__PURE__ */ ((e) => (e[e.String = 0] = "String", e[e.Number = 1] = "Number", e))(_Y || {}), fY = /* @__PURE__ */ ((e) => (e[e.Simple = 0] = "Simple", e[e.Array = 1] = "Array", e[e.Deferred = 2] = "Deferred", e[e.Function = 3] = "Function", e[e.Composite = 4] = "Composite", e[e.Merged = 5] = "Merged", e))(fY || {}), pY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NakedTypeVariable = 1] = "NakedTypeVariable", e[e.SpeculativeTuple = 2] = "SpeculativeTuple", e[e.SubstituteSource = 4] = "SubstituteSource", e[e.HomomorphicMappedType = 8] = "HomomorphicMappedType", e[e.PartialHomomorphicMappedType = 16] = "PartialHomomorphicMappedType", e[e.MappedTypeConstraint = 32] = "MappedTypeConstraint", e[e.ContravariantConditional = 64] = "ContravariantConditional", e[e.ReturnType = 128] = "ReturnType", e[e.LiteralKeyof = 256] = "LiteralKeyof", e[e.NoConstraints = 512] = "NoConstraints", e[e.AlwaysStrict = 1024] = "AlwaysStrict", e[e.MaxValue = 2048] = "MaxValue", e[e.PriorityImpliesCombination = 416] = "PriorityImpliesCombination", e[e.Circularity = -1] = "Circularity", e))(pY || {}), dY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NoDefault = 1] = "NoDefault", e[e.AnyDefault = 2] = "AnyDefault", e[e.SkippedGenericFunction = 4] = "SkippedGenericFunction", e))(dY || {}), mY = /* @__PURE__ */ ((e) => (e[e.False = 0] = "False", e[e.Unknown = 1] = "Unknown", e[e.Maybe = 3] = "Maybe", e[e.True = -1] = "True", e))(mY || {}), gY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.ExportsProperty = 1] = "ExportsProperty", e[e.ModuleExports = 2] = "ModuleExports", e[e.PrototypeProperty = 3] = "PrototypeProperty", e[e.ThisProperty = 4] = "ThisProperty", e[e.Property = 5] = "Property", e[e.Prototype = 6] = "Prototype", e[e.ObjectDefinePropertyValue = 7] = "ObjectDefinePropertyValue", e[e.ObjectDefinePropertyExports = 8] = "ObjectDefinePropertyExports", e[e.ObjectDefinePrototypeProperty = 9] = "ObjectDefinePrototypeProperty", e))(gY || {}), w7 = /* @__PURE__ */ ((e) => (e[e.Warning = 0] = "Warning", e[e.Error = 1] = "Error", e[e.Suggestion = 2] = "Suggestion", e[e.Message = 3] = "Message", e))(w7 || {});
    function aS(e, t = !0) {
      const n = w7[e.category];
      return t ? n.toLowerCase() : n;
    }
    var WC = /* @__PURE__ */ ((e) => (e[e.Classic = 1] = "Classic", e[e.NodeJs = 2] = "NodeJs", e[e.Node10 = 2] = "Node10", e[e.Node16 = 3] = "Node16", e[e.NodeNext = 99] = "NodeNext", e[e.Bundler = 100] = "Bundler", e))(WC || {}), hY = /* @__PURE__ */ ((e) => (e[e.Legacy = 1] = "Legacy", e[e.Auto = 2] = "Auto", e[e.Force = 3] = "Force", e))(hY || {}), yY = /* @__PURE__ */ ((e) => (e[e.FixedPollingInterval = 0] = "FixedPollingInterval", e[e.PriorityPollingInterval = 1] = "PriorityPollingInterval", e[e.DynamicPriorityPolling = 2] = "DynamicPriorityPolling", e[e.FixedChunkSizePolling = 3] = "FixedChunkSizePolling", e[e.UseFsEvents = 4] = "UseFsEvents", e[e.UseFsEventsOnParentDirectory = 5] = "UseFsEventsOnParentDirectory", e))(yY || {}), vY = /* @__PURE__ */ ((e) => (e[e.UseFsEvents = 0] = "UseFsEvents", e[e.FixedPollingInterval = 1] = "FixedPollingInterval", e[e.DynamicPriorityPolling = 2] = "DynamicPriorityPolling", e[e.FixedChunkSizePolling = 3] = "FixedChunkSizePolling", e))(vY || {}), bY = /* @__PURE__ */ ((e) => (e[e.FixedInterval = 0] = "FixedInterval", e[e.PriorityInterval = 1] = "PriorityInterval", e[e.DynamicPriority = 2] = "DynamicPriority", e[e.FixedChunkSize = 3] = "FixedChunkSize", e))(bY || {}), mx = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.CommonJS = 1] = "CommonJS", e[e.AMD = 2] = "AMD", e[e.UMD = 3] = "UMD", e[e.System = 4] = "System", e[e.ES2015 = 5] = "ES2015", e[e.ES2020 = 6] = "ES2020", e[e.ES2022 = 7] = "ES2022", e[e.ESNext = 99] = "ESNext", e[e.Node16 = 100] = "Node16", e[e.Node18 = 101] = "Node18", e[e.Node20 = 102] = "Node20", e[e.NodeNext = 199] = "NodeNext", e[e.Preserve = 200] = "Preserve", e))(mx || {}), SY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Preserve = 1] = "Preserve", e[e.React = 2] = "React", e[e.ReactNative = 3] = "ReactNative", e[e.ReactJSX = 4] = "ReactJSX", e[e.ReactJSXDev = 5] = "ReactJSXDev", e))(SY || {}), TY = /* @__PURE__ */ ((e) => (e[e.Remove = 0] = "Remove", e[e.Preserve = 1] = "Preserve", e[e.Error = 2] = "Error", e))(TY || {}), xY = /* @__PURE__ */ ((e) => (e[e.CarriageReturnLineFeed = 0] = "CarriageReturnLineFeed", e[e.LineFeed = 1] = "LineFeed", e))(xY || {}), kj = /* @__PURE__ */ ((e) => (e[e.Unknown = 0] = "Unknown", e[e.JS = 1] = "JS", e[e.JSX = 2] = "JSX", e[e.TS = 3] = "TS", e[e.TSX = 4] = "TSX", e[e.External = 5] = "External", e[e.JSON = 6] = "JSON", e[e.Deferred = 7] = "Deferred", e))(kj || {}), kY = /* @__PURE__ */ ((e) => (e[e.ES3 = 0] = "ES3", e[e.ES5 = 1] = "ES5", e[e.ES2015 = 2] = "ES2015", e[e.ES2016 = 3] = "ES2016", e[e.ES2017 = 4] = "ES2017", e[e.ES2018 = 5] = "ES2018", e[e.ES2019 = 6] = "ES2019", e[e.ES2020 = 7] = "ES2020", e[e.ES2021 = 8] = "ES2021", e[e.ES2022 = 9] = "ES2022", e[e.ES2023 = 10] = "ES2023", e[e.ES2024 = 11] = "ES2024", e[e.ES2025 = 12] = "ES2025", e[e.ESNext = 99] = "ESNext", e[e.JSON = 100] = "JSON", e[e.Latest = 99] = "Latest", e[e.LatestStandard = 12] = "LatestStandard", e))(kY || {}), CY = /* @__PURE__ */ ((e) => (e[e.Standard = 0] = "Standard", e[e.JSX = 1] = "JSX", e))(CY || {}), EY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Recursive = 1] = "Recursive", e))(EY || {}), DY = /* @__PURE__ */ ((e) => (e[e.EOF = -1] = "EOF", e[e.nullCharacter = 0] = "nullCharacter", e[e.maxAsciiCharacter = 127] = "maxAsciiCharacter", e[e.lineFeed = 10] = "lineFeed", e[e.carriageReturn = 13] = "carriageReturn", e[e.lineSeparator = 8232] = "lineSeparator", e[e.paragraphSeparator = 8233] = "paragraphSeparator", e[e.nextLine = 133] = "nextLine", e[e.space = 32] = "space", e[e.nonBreakingSpace = 160] = "nonBreakingSpace", e[e.enQuad = 8192] = "enQuad", e[e.emQuad = 8193] = "emQuad", e[e.enSpace = 8194] = "enSpace", e[e.emSpace = 8195] = "emSpace", e[e.threePerEmSpace = 8196] = "threePerEmSpace", e[e.fourPerEmSpace = 8197] = "fourPerEmSpace", e[e.sixPerEmSpace = 8198] = "sixPerEmSpace", e[e.figureSpace = 8199] = "figureSpace", e[e.punctuationSpace = 8200] = "punctuationSpace", e[e.thinSpace = 8201] = "thinSpace", e[e.hairSpace = 8202] = "hairSpace", e[e.zeroWidthSpace = 8203] = "zeroWidthSpace", e[e.narrowNoBreakSpace = 8239] = "narrowNoBreakSpace", e[e.ideographicSpace = 12288] = "ideographicSpace", e[e.mathematicalSpace = 8287] = "mathematicalSpace", e[e.ogham = 5760] = "ogham", e[e.replacementCharacter = 65533] = "replacementCharacter", e[e._ = 95] = "_", e[e.$ = 36] = "$", e[e._0 = 48] = "_0", e[e._1 = 49] = "_1", e[e._2 = 50] = "_2", e[e._3 = 51] = "_3", e[e._4 = 52] = "_4", e[e._5 = 53] = "_5", e[e._6 = 54] = "_6", e[e._7 = 55] = "_7", e[e._8 = 56] = "_8", e[e._9 = 57] = "_9", e[e.a = 97] = "a", e[e.b = 98] = "b", e[e.c = 99] = "c", e[e.d = 100] = "d", e[e.e = 101] = "e", e[e.f = 102] = "f", e[e.g = 103] = "g", e[e.h = 104] = "h", e[e.i = 105] = "i", e[e.j = 106] = "j", e[e.k = 107] = "k", e[e.l = 108] = "l", e[e.m = 109] = "m", e[e.n = 110] = "n", e[e.o = 111] = "o", e[e.p = 112] = "p", e[e.q = 113] = "q", e[e.r = 114] = "r", e[e.s = 115] = "s", e[e.t = 116] = "t", e[e.u = 117] = "u", e[e.v = 118] = "v", e[e.w = 119] = "w", e[e.x = 120] = "x", e[e.y = 121] = "y", e[e.z = 122] = "z", e[e.A = 65] = "A", e[e.B = 66] = "B", e[e.C = 67] = "C", e[e.D = 68] = "D", e[e.E = 69] = "E", e[e.F = 70] = "F", e[e.G = 71] = "G", e[e.H = 72] = "H", e[e.I = 73] = "I", e[e.J = 74] = "J", e[e.K = 75] = "K", e[e.L = 76] = "L", e[e.M = 77] = "M", e[e.N = 78] = "N", e[e.O = 79] = "O", e[e.P = 80] = "P", e[e.Q = 81] = "Q", e[e.R = 82] = "R", e[e.S = 83] = "S", e[e.T = 84] = "T", e[e.U = 85] = "U", e[e.V = 86] = "V", e[e.W = 87] = "W", e[e.X = 88] = "X", e[e.Y = 89] = "Y", e[e.Z = 90] = "Z", e[e.ampersand = 38] = "ampersand", e[e.asterisk = 42] = "asterisk", e[e.at = 64] = "at", e[e.backslash = 92] = "backslash", e[e.backtick = 96] = "backtick", e[e.bar = 124] = "bar", e[e.caret = 94] = "caret", e[e.closeBrace = 125] = "closeBrace", e[e.closeBracket = 93] = "closeBracket", e[e.closeParen = 41] = "closeParen", e[e.colon = 58] = "colon", e[e.comma = 44] = "comma", e[e.dot = 46] = "dot", e[e.doubleQuote = 34] = "doubleQuote", e[e.equals = 61] = "equals", e[e.exclamation = 33] = "exclamation", e[e.greaterThan = 62] = "greaterThan", e[e.hash = 35] = "hash", e[e.lessThan = 60] = "lessThan", e[e.minus = 45] = "minus", e[e.openBrace = 123] = "openBrace", e[e.openBracket = 91] = "openBracket", e[e.openParen = 40] = "openParen", e[e.percent = 37] = "percent", e[e.plus = 43] = "plus", e[e.question = 63] = "question", e[e.semicolon = 59] = "semicolon", e[e.singleQuote = 39] = "singleQuote", e[e.slash = 47] = "slash", e[e.tilde = 126] = "tilde", e[e.backspace = 8] = "backspace", e[e.formFeed = 12] = "formFeed", e[e.byteOrderMark = 65279] = "byteOrderMark", e[e.tab = 9] = "tab", e[e.verticalTab = 11] = "verticalTab", e))(DY || {}), wY = /* @__PURE__ */ ((e) => (e.Ts = ".ts", e.Tsx = ".tsx", e.Dts = ".d.ts", e.Js = ".js", e.Jsx = ".jsx", e.Json = ".json", e.TsBuildInfo = ".tsbuildinfo", e.Mjs = ".mjs", e.Mts = ".mts", e.Dmts = ".d.mts", e.Cjs = ".cjs", e.Cts = ".cts", e.Dcts = ".d.cts", e))(wY || {}), Cj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.ContainsTypeScript = 1] = "ContainsTypeScript", e[e.ContainsJsx = 2] = "ContainsJsx", e[e.ContainsESNext = 4] = "ContainsESNext", e[e.ContainsES2022 = 8] = "ContainsES2022", e[e.ContainsES2021 = 16] = "ContainsES2021", e[e.ContainsES2020 = 32] = "ContainsES2020", e[e.ContainsES2019 = 64] = "ContainsES2019", e[e.ContainsES2018 = 128] = "ContainsES2018", e[e.ContainsES2017 = 256] = "ContainsES2017", e[e.ContainsES2016 = 512] = "ContainsES2016", e[e.ContainsES2015 = 1024] = "ContainsES2015", e[e.ContainsGenerator = 2048] = "ContainsGenerator", e[e.ContainsDestructuringAssignment = 4096] = "ContainsDestructuringAssignment", e[e.ContainsTypeScriptClassSyntax = 8192] = "ContainsTypeScriptClassSyntax", e[e.ContainsLexicalThis = 16384] = "ContainsLexicalThis", e[e.ContainsRestOrSpread = 32768] = "ContainsRestOrSpread", e[e.ContainsObjectRestOrSpread = 65536] = "ContainsObjectRestOrSpread", e[e.ContainsComputedPropertyName = 131072] = "ContainsComputedPropertyName", e[e.ContainsBlockScopedBinding = 262144] = "ContainsBlockScopedBinding", e[e.ContainsBindingPattern = 524288] = "ContainsBindingPattern", e[e.ContainsYield = 1048576] = "ContainsYield", e[e.ContainsAwait = 2097152] = "ContainsAwait", e[e.ContainsHoistedDeclarationOrCompletion = 4194304] = "ContainsHoistedDeclarationOrCompletion", e[e.ContainsDynamicImport = 8388608] = "ContainsDynamicImport", e[e.ContainsClassFields = 16777216] = "ContainsClassFields", e[e.ContainsDecorators = 33554432] = "ContainsDecorators", e[e.ContainsPossibleTopLevelAwait = 67108864] = "ContainsPossibleTopLevelAwait", e[e.ContainsLexicalSuper = 134217728] = "ContainsLexicalSuper", e[e.ContainsUpdateExpressionForIdentifier = 268435456] = "ContainsUpdateExpressionForIdentifier", e[e.ContainsPrivateIdentifierInExpression = 536870912] = "ContainsPrivateIdentifierInExpression", e[e.HasComputedFlags = -2147483648] = "HasComputedFlags", e[e.AssertTypeScript = 1] = "AssertTypeScript", e[e.AssertJsx = 2] = "AssertJsx", e[e.AssertESNext = 4] = "AssertESNext", e[e.AssertES2022 = 8] = "AssertES2022", e[e.AssertES2021 = 16] = "AssertES2021", e[e.AssertES2020 = 32] = "AssertES2020", e[e.AssertES2019 = 64] = "AssertES2019", e[e.AssertES2018 = 128] = "AssertES2018", e[e.AssertES2017 = 256] = "AssertES2017", e[e.AssertES2016 = 512] = "AssertES2016", e[e.AssertES2015 = 1024] = "AssertES2015", e[e.AssertGenerator = 2048] = "AssertGenerator", e[e.AssertDestructuringAssignment = 4096] = "AssertDestructuringAssignment", e[e.OuterExpressionExcludes = -2147483648] = "OuterExpressionExcludes", e[e.PropertyAccessExcludes = -2147483648] = "PropertyAccessExcludes", e[e.NodeExcludes = -2147483648] = "NodeExcludes", e[e.ArrowFunctionExcludes = -2072174592] = "ArrowFunctionExcludes", e[e.FunctionExcludes = -1937940480] = "FunctionExcludes", e[e.ConstructorExcludes = -1937948672] = "ConstructorExcludes", e[e.MethodOrAccessorExcludes = -2005057536] = "MethodOrAccessorExcludes", e[e.PropertyExcludes = -2013249536] = "PropertyExcludes", e[e.ClassExcludes = -2147344384] = "ClassExcludes", e[e.ModuleExcludes = -1941676032] = "ModuleExcludes", e[e.TypeExcludes = -2] = "TypeExcludes", e[e.ObjectLiteralExcludes = -2147278848] = "ObjectLiteralExcludes", e[e.ArrayLiteralOrCallOrNewExcludes = -2147450880] = "ArrayLiteralOrCallOrNewExcludes", e[e.VariableDeclarationListExcludes = -2146893824] = "VariableDeclarationListExcludes", e[e.ParameterExcludes = -2147483648] = "ParameterExcludes", e[e.CatchClauseExcludes = -2147418112] = "CatchClauseExcludes", e[e.BindingPatternExcludes = -2147450880] = "BindingPatternExcludes", e[e.ContainsLexicalThisOrSuper = 134234112] = "ContainsLexicalThisOrSuper", e[e.PropertyNamePropagatingFlags = 134234112] = "PropertyNamePropagatingFlags", e))(Cj || {}), Ej = /* @__PURE__ */ ((e) => (e[e.TabStop = 0] = "TabStop", e[e.Placeholder = 1] = "Placeholder", e[e.Choice = 2] = "Choice", e[e.Variable = 3] = "Variable", e))(Ej || {}), Dj = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.SingleLine = 1] = "SingleLine", e[e.MultiLine = 2] = "MultiLine", e[e.AdviseOnEmitNode = 4] = "AdviseOnEmitNode", e[e.NoSubstitution = 8] = "NoSubstitution", e[e.CapturesThis = 16] = "CapturesThis", e[e.NoLeadingSourceMap = 32] = "NoLeadingSourceMap", e[e.NoTrailingSourceMap = 64] = "NoTrailingSourceMap", e[e.NoSourceMap = 96] = "NoSourceMap", e[e.NoNestedSourceMaps = 128] = "NoNestedSourceMaps", e[e.NoTokenLeadingSourceMaps = 256] = "NoTokenLeadingSourceMaps", e[e.NoTokenTrailingSourceMaps = 512] = "NoTokenTrailingSourceMaps", e[e.NoTokenSourceMaps = 768] = "NoTokenSourceMaps", e[e.NoLeadingComments = 1024] = "NoLeadingComments", e[e.NoTrailingComments = 2048] = "NoTrailingComments", e[e.NoComments = 3072] = "NoComments", e[e.NoNestedComments = 4096] = "NoNestedComments", e[e.HelperName = 8192] = "HelperName", e[e.ExportName = 16384] = "ExportName", e[e.LocalName = 32768] = "LocalName", e[e.InternalName = 65536] = "InternalName", e[e.Indented = 131072] = "Indented", e[e.NoIndentation = 262144] = "NoIndentation", e[e.AsyncFunctionBody = 524288] = "AsyncFunctionBody", e[e.ReuseTempVariableScope = 1048576] = "ReuseTempVariableScope", e[e.CustomPrologue = 2097152] = "CustomPrologue", e[e.NoHoisting = 4194304] = "NoHoisting", e[e.Iterator = 8388608] = "Iterator", e[e.NoAsciiEscaping = 16777216] = "NoAsciiEscaping", e))(Dj || {}), PY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.TypeScriptClassWrapper = 1] = "TypeScriptClassWrapper", e[e.NeverApplyImportHelper = 2] = "NeverApplyImportHelper", e[e.IgnoreSourceNewlines = 4] = "IgnoreSourceNewlines", e[e.Immutable = 8] = "Immutable", e[e.IndirectCall = 16] = "IndirectCall", e[e.TransformPrivateStaticElements = 32] = "TransformPrivateStaticElements", e))(PY || {}), Rl = {
      Classes: 2,
      ForOf: 2,
      Generators: 2,
      Iteration: 2,
      SpreadElements: 2,
      RestElements: 2,
      TaggedTemplates: 2,
      DestructuringAssignment: 2,
      BindingPatterns: 2,
      ArrowFunctions: 2,
      BlockScopedVariables: 2,
      ObjectAssign: 2,
      RegularExpressionFlagsUnicode: 2,
      RegularExpressionFlagsSticky: 2,
      Exponentiation: 3,
      AsyncFunctions: 4,
      ForAwaitOf: 5,
      AsyncGenerators: 5,
      AsyncIteration: 5,
      ObjectSpreadRest: 5,
      RegularExpressionFlagsDotAll: 5,
      BindinglessCatch: 6,
      BigInt: 7,
      NullishCoalesce: 7,
      OptionalChaining: 7,
      LogicalAssignment: 8,
      TopLevelAwait: 9,
      ClassFields: 9,
      PrivateNamesAndClassStaticBlocks: 9,
      RegularExpressionFlagsHasIndices: 9,
      ShebangComments: 10,
      RegularExpressionFlagsUnicodeSets: 11,
      UsingAndAwaitUsing: 99,
      ClassAndClassElementDecorators: 99
    }, AY = /* @__PURE__ */ ((e) => (e[e.Extends = 1] = "Extends", e[e.Assign = 2] = "Assign", e[e.Rest = 4] = "Rest", e[e.Decorate = 8] = "Decorate", e[e.ESDecorateAndRunInitializers = 8] = "ESDecorateAndRunInitializers", e[e.Metadata = 16] = "Metadata", e[e.Param = 32] = "Param", e[e.Awaiter = 64] = "Awaiter", e[e.Generator = 128] = "Generator", e[e.Values = 256] = "Values", e[e.Read = 512] = "Read", e[e.SpreadArray = 1024] = "SpreadArray", e[e.Await = 2048] = "Await", e[e.AsyncGenerator = 4096] = "AsyncGenerator", e[e.AsyncDelegator = 8192] = "AsyncDelegator", e[e.AsyncValues = 16384] = "AsyncValues", e[e.ExportStar = 32768] = "ExportStar", e[e.ImportStar = 65536] = "ImportStar", e[e.ImportDefault = 131072] = "ImportDefault", e[e.MakeTemplateObject = 262144] = "MakeTemplateObject", e[e.ClassPrivateFieldGet = 524288] = "ClassPrivateFieldGet", e[e.ClassPrivateFieldSet = 1048576] = "ClassPrivateFieldSet", e[e.ClassPrivateFieldIn = 2097152] = "ClassPrivateFieldIn", e[e.SetFunctionName = 4194304] = "SetFunctionName", e[e.PropKey = 8388608] = "PropKey", e[e.AddDisposableResourceAndDisposeResources = 16777216] = "AddDisposableResourceAndDisposeResources", e[e.RewriteRelativeImportExtension = 33554432] = "RewriteRelativeImportExtension", e[e.FirstEmitHelper = 1] = "FirstEmitHelper", e[e.LastEmitHelper = 16777216] = "LastEmitHelper", e[e.ForOfIncludes = 256] = "ForOfIncludes", e[e.ForAwaitOfIncludes = 16384] = "ForAwaitOfIncludes", e[e.AsyncGeneratorIncludes = 6144] = "AsyncGeneratorIncludes", e[e.AsyncDelegatorIncludes = 26624] = "AsyncDelegatorIncludes", e[e.SpreadIncludes = 1536] = "SpreadIncludes", e))(AY || {}), NY = /* @__PURE__ */ ((e) => (e[e.SourceFile = 0] = "SourceFile", e[e.Expression = 1] = "Expression", e[e.IdentifierName = 2] = "IdentifierName", e[e.MappedTypeParameter = 3] = "MappedTypeParameter", e[e.Unspecified = 4] = "Unspecified", e[e.EmbeddedStatement = 5] = "EmbeddedStatement", e[e.JsxAttributeValue = 6] = "JsxAttributeValue", e[e.ImportTypeNodeAttributes = 7] = "ImportTypeNodeAttributes", e))(NY || {}), IY = /* @__PURE__ */ ((e) => (e[e.Parentheses = 1] = "Parentheses", e[e.TypeAssertions = 2] = "TypeAssertions", e[e.NonNullAssertions = 4] = "NonNullAssertions", e[e.PartiallyEmittedExpressions = 8] = "PartiallyEmittedExpressions", e[e.ExpressionsWithTypeArguments = 16] = "ExpressionsWithTypeArguments", e[e.Satisfies = 32] = "Satisfies", e[e.Assertions = 38] = "Assertions", e[e.All = 63] = "All", e[e.ExcludeJSDocTypeAssertion = -2147483648] = "ExcludeJSDocTypeAssertion", e))(IY || {}), OY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.InParameters = 1] = "InParameters", e[e.VariablesHoistedInParameters = 2] = "VariablesHoistedInParameters", e))(OY || {}), FY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.SingleLine = 0] = "SingleLine", e[e.MultiLine = 1] = "MultiLine", e[e.PreserveLines = 2] = "PreserveLines", e[e.LinesMask = 3] = "LinesMask", e[e.NotDelimited = 0] = "NotDelimited", e[e.BarDelimited = 4] = "BarDelimited", e[e.AmpersandDelimited = 8] = "AmpersandDelimited", e[e.CommaDelimited = 16] = "CommaDelimited", e[e.AsteriskDelimited = 32] = "AsteriskDelimited", e[e.DelimitersMask = 60] = "DelimitersMask", e[e.AllowTrailingComma = 64] = "AllowTrailingComma", e[e.Indented = 128] = "Indented", e[e.SpaceBetweenBraces = 256] = "SpaceBetweenBraces", e[e.SpaceBetweenSiblings = 512] = "SpaceBetweenSiblings", e[e.Braces = 1024] = "Braces", e[e.Parenthesis = 2048] = "Parenthesis", e[e.AngleBrackets = 4096] = "AngleBrackets", e[e.SquareBrackets = 8192] = "SquareBrackets", e[e.BracketsMask = 15360] = "BracketsMask", e[e.OptionalIfUndefined = 16384] = "OptionalIfUndefined", e[e.OptionalIfEmpty = 32768] = "OptionalIfEmpty", e[e.Optional = 49152] = "Optional", e[e.PreferNewLine = 65536] = "PreferNewLine", e[e.NoTrailingNewLine = 131072] = "NoTrailingNewLine", e[e.NoInterveningComments = 262144] = "NoInterveningComments", e[e.NoSpaceIfEmpty = 524288] = "NoSpaceIfEmpty", e[e.SingleElement = 1048576] = "SingleElement", e[e.SpaceAfterList = 2097152] = "SpaceAfterList", e[e.Modifiers = 2359808] = "Modifiers", e[e.HeritageClauses = 512] = "HeritageClauses", e[e.SingleLineTypeLiteralMembers = 768] = "SingleLineTypeLiteralMembers", e[e.MultiLineTypeLiteralMembers = 32897] = "MultiLineTypeLiteralMembers", e[e.SingleLineTupleTypeElements = 528] = "SingleLineTupleTypeElements", e[e.MultiLineTupleTypeElements = 657] = "MultiLineTupleTypeElements", e[e.UnionTypeConstituents = 516] = "UnionTypeConstituents", e[e.IntersectionTypeConstituents = 520] = "IntersectionTypeConstituents", e[e.ObjectBindingPatternElements = 525136] = "ObjectBindingPatternElements", e[e.ArrayBindingPatternElements = 524880] = "ArrayBindingPatternElements", e[e.ObjectLiteralExpressionProperties = 526226] = "ObjectLiteralExpressionProperties", e[e.ImportAttributes = 526226] = "ImportAttributes", e[e.ImportClauseEntries = 526226] = "ImportClauseEntries", e[e.ArrayLiteralExpressionElements = 8914] = "ArrayLiteralExpressionElements", e[e.CommaListElements = 528] = "CommaListElements", e[e.CallExpressionArguments = 2576] = "CallExpressionArguments", e[e.NewExpressionArguments = 18960] = "NewExpressionArguments", e[e.TemplateExpressionSpans = 262144] = "TemplateExpressionSpans", e[e.SingleLineBlockStatements = 768] = "SingleLineBlockStatements", e[e.MultiLineBlockStatements = 129] = "MultiLineBlockStatements", e[e.VariableDeclarationList = 528] = "VariableDeclarationList", e[e.SingleLineFunctionBodyStatements = 768] = "SingleLineFunctionBodyStatements", e[e.MultiLineFunctionBodyStatements = 1] = "MultiLineFunctionBodyStatements", e[e.ClassHeritageClauses = 0] = "ClassHeritageClauses", e[e.ClassMembers = 129] = "ClassMembers", e[e.InterfaceMembers = 129] = "InterfaceMembers", e[e.EnumMembers = 145] = "EnumMembers", e[e.CaseBlockClauses = 129] = "CaseBlockClauses", e[e.NamedImportsOrExportsElements = 525136] = "NamedImportsOrExportsElements", e[e.JsxElementOrFragmentChildren = 262144] = "JsxElementOrFragmentChildren", e[e.JsxElementAttributes = 262656] = "JsxElementAttributes", e[e.CaseOrDefaultClauseStatements = 163969] = "CaseOrDefaultClauseStatements", e[e.HeritageClauseTypes = 528] = "HeritageClauseTypes", e[e.SourceFileStatements = 131073] = "SourceFileStatements", e[e.Decorators = 2146305] = "Decorators", e[e.TypeArguments = 53776] = "TypeArguments", e[e.TypeParameters = 53776] = "TypeParameters", e[e.Parameters = 2576] = "Parameters", e[e.IndexSignatureParameters = 8848] = "IndexSignatureParameters", e[e.JSDocComment = 33] = "JSDocComment", e))(FY || {}), LY = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.TripleSlashXML = 1] = "TripleSlashXML", e[e.SingleLine = 2] = "SingleLine", e[e.MultiLine = 4] = "MultiLine", e[e.All = 7] = "All", e[e.Default = 7] = "Default", e))(LY || {}), P7 = {
      reference: {
        args: [
          {
            name: "types",
            optional: !0,
            captureSpan: !0
          },
          {
            name: "lib",
            optional: !0,
            captureSpan: !0
          },
          {
            name: "path",
            optional: !0,
            captureSpan: !0
          },
          {
            name: "no-default-lib",
            optional: !0
          },
          {
            name: "resolution-mode",
            optional: !0
          },
          {
            name: "preserve",
            optional: !0
          }
        ],
        kind: 1
      },
      "amd-dependency": {
        args: [{ name: "path" }, {
          name: "name",
          optional: !0
        }],
        kind: 1
      },
      "amd-module": {
        args: [{ name: "name" }],
        kind: 1
      },
      "ts-check": { kind: 2 },
      "ts-nocheck": { kind: 2 },
      jsx: {
        args: [{ name: "factory" }],
        kind: 4
      },
      jsxfrag: {
        args: [{ name: "factory" }],
        kind: 4
      },
      jsximportsource: {
        args: [{ name: "factory" }],
        kind: 4
      },
      jsxruntime: {
        args: [{ name: "factory" }],
        kind: 4
      }
    }, MY = /* @__PURE__ */ ((e) => (e[e.ParseAll = 0] = "ParseAll", e[e.ParseNone = 1] = "ParseNone", e[e.ParseForTypeErrors = 2] = "ParseForTypeErrors", e[e.ParseForTypeInfo = 3] = "ParseForTypeInfo", e))(MY || {});
    function I4(e) {
      let t = 5381;
      for (let n = 0; n < e.length; n++) t = (t << 5) + t + e.charCodeAt(n);
      return t.toString();
    }
    function Bge() {
      Error.stackTraceLimit < 100 && (Error.stackTraceLimit = 100);
    }
    var RY = /* @__PURE__ */ ((e) => (e[e.Created = 0] = "Created", e[e.Changed = 1] = "Changed", e[e.Deleted = 2] = "Deleted", e))(RY || {}), wj = /* @__PURE__ */ ((e) => (e[e.High = 2e3] = "High", e[e.Medium = 500] = "Medium", e[e.Low = 250] = "Low", e))(wj || {}), ff = /* @__PURE__ */ new Date(0);
    function gx(e, t) {
      return e.getModifiedTime(t) || ff;
    }
    function jY(e) {
      return {
        250: e.Low,
        500: e.Medium,
        2e3: e.High
      };
    }
    var Pj = {
      Low: 32,
      Medium: 64,
      High: 256
    }, Aj = jY(Pj), A7 = jY(Pj);
    function NOe(e) {
      if (!e.getEnvironmentVariable) return;
      const t = a("TSC_WATCH_POLLINGINTERVAL", wj);
      Aj = o("TSC_WATCH_POLLINGCHUNKSIZE", Pj) || Aj, A7 = o("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS", Pj) || A7;
      function n(c, _) {
        return e.getEnvironmentVariable(`${c}_${_.toUpperCase()}`);
      }
      function i(c) {
        let _;
        return u("Low"), u("Medium"), u("High"), _;
        function u(d) {
          const g = n(c, d);
          g && ((_ || (_ = {}))[d] = Number(g));
        }
      }
      function a(c, _) {
        const u = i(c);
        if (u)
          return d("Low"), d("Medium"), d("High"), !0;
        return !1;
        function d(g) {
          _[g] = u[g] || _[g];
        }
      }
      function o(c, _) {
        const u = i(c);
        return (t || u) && jY(u ? {
          ..._,
          ...u
        } : _);
      }
    }
    function Jge(e, t, n, i, a) {
      let o = n;
      for (let _ = t.length; i && _; c(), _--) {
        const u = t[n];
        if (u) {
          if (u.isClosed) {
            t[n] = void 0;
            continue;
          }
        } else continue;
        i--;
        const d = LOe(u, gx(e, u.fileName));
        if (u.isClosed) {
          t[n] = void 0;
          continue;
        }
        a?.(u, n, d), t[n] && (o < n && (t[o] = u, t[n] = void 0), o++);
      }
      return n;
      function c() {
        n++, n === t.length && (o < n && (t.length = o), n = 0, o = 0);
      }
    }
    function IOe(e) {
      const t = [], n = [], i = _(250), a = _(500), o = _(2e3);
      return c;
      function c(P, N, M) {
        const R = {
          fileName: P,
          callback: N,
          unchangedPolls: 0,
          mtime: gx(e, P)
        };
        return t.push(R), S(R, M), { close: () => {
          R.isClosed = !0, px(t, R);
        } };
      }
      function _(P) {
        const N = [];
        return N.pollingInterval = P, N.pollIndex = 0, N.pollScheduled = !1, N;
      }
      function u(P, N) {
        N.pollIndex = g(N, N.pollingInterval, N.pollIndex, Aj[N.pollingInterval]), N.length ? D(N.pollingInterval) : (E.assert(N.pollIndex === 0), N.pollScheduled = !1);
      }
      function d(P, N) {
        g(n, 250, 0, n.length), u(P, N), !N.pollScheduled && n.length && D(250);
      }
      function g(P, N, M, R) {
        return Jge(e, P, M, R, G);
        function G(L, z, H) {
          H ? (L.unchangedPolls = 0, P !== n && (P[z] = void 0, T(L))) : L.unchangedPolls !== A7[N] ? L.unchangedPolls++ : P === n ? (L.unchangedPolls = 1, P[z] = void 0, S(L, 250)) : N !== 2e3 && (L.unchangedPolls++, P[z] = void 0, S(L, N === 250 ? 500 : 2e3));
        }
      }
      function h(P) {
        switch (P) {
          case 250:
            return i;
          case 500:
            return a;
          case 2e3:
            return o;
        }
      }
      function S(P, N) {
        h(N).push(P), k(N);
      }
      function T(P) {
        n.push(P), k(250);
      }
      function k(P) {
        h(P).pollScheduled || D(P);
      }
      function D(P) {
        h(P).pollScheduled = e.setTimeout(P === 250 ? d : u, P, P === 250 ? "pollLowPollingIntervalQueue" : "pollPollingIntervalQueue", h(P));
      }
    }
    function OOe(e, t, n, i) {
      const a = Up(), o = i ? /* @__PURE__ */ new Map() : void 0, c = /* @__PURE__ */ new Map(), _ = pu(t);
      return u;
      function u(g, h, S, T) {
        const k = _(g);
        a.add(k, h).length === 1 && o && o.set(k, n(g) || ff);
        const D = Xn(k) || ".", P = c.get(D) || d(Xn(g) || ".", D, T);
        return P.referenceCount++, { close: () => {
          P.referenceCount === 1 ? (P.close(), c.delete(D)) : P.referenceCount--, a.remove(k, h);
        } };
      }
      function d(g, h, S) {
        const T = e(g, 1, (k, D) => {
          if (!Ta(D)) return;
          const P = ca(D, g), N = _(P), M = P && a.get(N);
          if (M) {
            let R, G = 1;
            if (o) {
              const L = o.get(N);
              if (k === "change" && (R = n(P) || ff, R.getTime() === L.getTime()))
                return;
              R || (R = n(P) || ff), o.set(N, R), L === ff ? G = 0 : R === ff && (G = 2);
            }
            for (const L of M) L(P, G, R);
          }
        }, !1, 500, S);
        return T.referenceCount = 0, c.set(h, T), T;
      }
    }
    function FOe(e) {
      const t = [];
      let n = 0, i;
      return a;
      function a(_, u) {
        const d = {
          fileName: _,
          callback: u,
          mtime: gx(e, _)
        };
        return t.push(d), c(), { close: () => {
          d.isClosed = !0, px(t, d);
        } };
      }
      function o() {
        i = void 0, n = Jge(e, t, n, Aj[250]), c();
      }
      function c() {
        !t.length || i || (i = e.setTimeout(o, 2e3, "pollQueue"));
      }
    }
    function zge(e, t, n, i, a) {
      const o = pu(t)(n), c = e.get(o);
      return c ? c.callbacks.push(i) : e.set(o, {
        watcher: a(((_, u, d) => {
          var g;
          return (g = e.get(o)) == null ? void 0 : g.callbacks.slice().forEach((h) => h(_, u, d));
        })),
        callbacks: [i]
      }), { close: () => {
        const _ = e.get(o);
        _ && (!k4(_.callbacks, i) || _.callbacks.length || (e.delete(o), Np(_)));
      } };
    }
    function LOe(e, t) {
      const n = e.mtime.getTime(), i = t.getTime();
      return n !== i ? (e.mtime = t, e.callback(e.fileName, Nj(n, i), t), !0) : !1;
    }
    function Nj(e, t) {
      return e === 0 ? 0 : t === 0 ? 2 : 1;
    }
    var N7 = [
      "/node_modules/.",
      "/.git",
      "/.#"
    ], Wge = so;
    function d3(e) {
      return Wge(e);
    }
    function BY(e) {
      Wge = e;
    }
    function MOe({ watchDirectory: e, useCaseSensitiveFileNames: t, getCurrentDirectory: n, getAccessibleSortedChildDirectories: i, fileSystemEntryExists: a, realpath: o, setTimeout: c, clearTimeout: _ }) {
      const u = /* @__PURE__ */ new Map(), d = Up(), g = /* @__PURE__ */ new Map();
      let h;
      const S = JC(!t), T = pu(t);
      return (U, pe, ie, W) => ie ? k(U, W, pe) : e(U, pe, ie, W);
      function k(U, pe, ie, W) {
        const Q = T(U);
        let se = u.get(Q);
        se ? se.refCount++ : (se = {
          watcher: e(U, (fe) => {
            var de;
            z(fe, pe) || (pe?.synchronousWatchDirectory ? ((de = u.get(Q)) != null && de.targetWatcher || D(U, Q, fe), L(U, Q, pe)) : P(U, Q, fe, pe));
          }, !1, pe),
          refCount: 1,
          childWatches: Te,
          targetWatcher: void 0,
          links: void 0
        }, u.set(Q, se), L(U, Q, pe)), W && (se.links ?? (se.links = /* @__PURE__ */ new Set())).add(W);
        const he = ie && {
          dirName: U,
          callback: ie
        };
        return he && d.add(Q, he), {
          dirName: U,
          close: () => {
            var fe;
            const de = E.checkDefined(u.get(Q));
            he && d.remove(Q, he), W && ((fe = de.links) == null || fe.delete(W)), de.refCount--, !de.refCount && (u.delete(Q), de.links = void 0, Np(de), G(de), de.childWatches.forEach(md));
          }
        };
      }
      function D(U, pe, ie, W) {
        var Q, se;
        let he, fe;
        Ta(ie) ? he = ie : fe = ie, d.forEach((de, $) => {
          if (!(fe && fe.get($) === !0) && ($ === pe || ta(pe, $) && pe[$.length] === Co))
            if (fe) if (W) {
              const Se = fe.get($);
              Se ? Se.push(...W) : fe.set($, W.slice());
            } else fe.set($, !0);
            else de.forEach(({ callback: Se }) => Se(he));
        }), (se = (Q = u.get(pe)) == null ? void 0 : Q.links) == null || se.forEach((de) => {
          const $ = (Se) => jn(de, Zf(U, Se, T));
          fe ? D(de, T(de), fe, W?.map($)) : D(de, T(de), $(he));
        });
      }
      function P(U, pe, ie, W) {
        const Q = u.get(pe);
        if (Q && a(U, 1)) {
          N(U, pe, ie, W);
          return;
        }
        D(U, pe, ie), G(Q), R(Q);
      }
      function N(U, pe, ie, W) {
        const Q = g.get(pe);
        Q ? Q.fileNames.push(ie) : g.set(pe, {
          dirName: U,
          options: W,
          fileNames: [ie]
        }), h && (_(h), h = void 0), h = c(M, 1e3, "timerToUpdateChildWatches");
      }
      function M() {
        var U;
        h = void 0, d3(`sysLog:: onTimerToUpdateChildWatches:: ${g.size}`);
        const pe = ko(), ie = /* @__PURE__ */ new Map();
        for (; !h && g.size; ) {
          const W = g.entries().next();
          E.assert(!W.done);
          const { value: [Q, { dirName: se, options: he, fileNames: fe }] } = W;
          g.delete(Q);
          const de = L(se, Q, he);
          (U = u.get(Q)) != null && U.targetWatcher || D(se, Q, ie, de ? void 0 : fe);
        }
        d3(`sysLog:: invokingWatchers:: Elapsed:: ${ko() - pe}ms:: ${g.size}`), d.forEach((W, Q) => {
          const se = ie.get(Q);
          se && W.forEach(({ callback: he, dirName: fe }) => {
            da(se) ? se.forEach(he) : he(fe);
          });
        }), d3(`sysLog:: Elapsed:: ${ko() - pe}ms:: onTimerToUpdateChildWatches:: ${g.size} ${h}`);
      }
      function R(U) {
        if (!U) return;
        const pe = U.childWatches;
        U.childWatches = Te;
        for (const ie of pe)
          ie.close(), R(u.get(T(ie.dirName)));
      }
      function G(U) {
        U?.targetWatcher && (U.targetWatcher.close(), U.targetWatcher = void 0);
      }
      function L(U, pe, ie) {
        const W = u.get(pe);
        if (!W) return !1;
        const Q = us(o(U));
        let se, he;
        return S(Q, U) === 0 ? se = C7(a(U, 1) ? Rn(i(U), ($) => {
          const Se = ca($, U);
          return !z(Se, ie) && S(Se, us(o(Se))) === 0 ? Se : void 0;
        }) : Te, W.childWatches, ($, Se) => S($, Se.dirName), fe, md, de) : W.targetWatcher && S(Q, W.targetWatcher.dirName) === 0 ? (se = !1, E.assert(W.childWatches === Te)) : (G(W), W.targetWatcher = k(Q, ie, void 0, U), W.childWatches.forEach(md), se = !0), W.childWatches = he || Te, se;
        function fe($) {
          de(k($, ie));
        }
        function de($) {
          (he || (he = [])).push($);
        }
      }
      function z(U, pe) {
        return _t(N7, (ie) => H(U, ie)) || Uge(U, pe, t, n);
      }
      function H(U, pe) {
        return U.includes(pe) ? !0 : t ? !1 : T(U).includes(pe);
      }
    }
    var JY = /* @__PURE__ */ ((e) => (e[e.File = 0] = "File", e[e.Directory = 1] = "Directory", e))(JY || {});
    function ROe(e) {
      return (t, n, i) => e(n === 1 ? "change" : "rename", "", i);
    }
    function jOe(e, t, n) {
      return (i, a, o) => {
        i === "rename" ? (o || (o = n(e) || ff), t(e, o !== ff ? 0 : 2, o)) : t(e, 1, o);
      };
    }
    function Uge(e, t, n, i) {
      return (t?.excludeDirectories || t?.excludeFiles) && (NF(e, t?.excludeFiles, n, i()) || NF(e, t?.excludeDirectories, n, i()));
    }
    function Vge(e, t, n, i, a) {
      return (o, c) => {
        if (o === "rename") {
          const _ = c ? us(jn(e, c)) : e;
          (!c || !Uge(_, n, i, a)) && t(_);
        }
      };
    }
    function zY({ pollingWatchFileWorker: e, getModifiedTime: t, setTimeout: n, clearTimeout: i, fsWatchWorker: a, fileSystemEntryExists: o, useCaseSensitiveFileNames: c, getCurrentDirectory: _, fsSupportsRecursiveFsWatch: u, getAccessibleSortedChildDirectories: d, realpath: g, tscWatchFile: h, useNonPollingWatchers: S, tscWatchDirectory: T, inodeWatching: k, fsWatchWithTimestamp: D, sysLog: P }) {
      const N = /* @__PURE__ */ new Map(), M = /* @__PURE__ */ new Map(), R = /* @__PURE__ */ new Map();
      let G, L, z, H, U = !1;
      return {
        watchFile: pe,
        watchDirectory: he
      };
      function pe(oe, ge, Ae, Ne) {
        Ne = Q(Ne, S);
        const ot = E.checkDefined(Ne.watchFile);
        switch (ot) {
          case 0:
            return $(oe, ge, 250, void 0);
          case 1:
            return $(oe, ge, Ae, void 0);
          case 2:
            return ie()(oe, ge, Ae, void 0);
          case 3:
            return W()(oe, ge, void 0, void 0);
          case 4:
            return Se(oe, 0, jOe(oe, ge, t), !1, Ae, HN(Ne));
          case 5:
            return z || (z = OOe(Se, c, t, D)), z(oe, ge, Ae, HN(Ne));
          default:
            E.assertNever(ot);
        }
      }
      function ie() {
        return G || (G = IOe({
          getModifiedTime: t,
          setTimeout: n
        }));
      }
      function W() {
        return L || (L = FOe({
          getModifiedTime: t,
          setTimeout: n
        }));
      }
      function Q(oe, ge) {
        if (oe && oe.watchFile !== void 0) return oe;
        switch (h) {
          case "PriorityPollingInterval":
            return { watchFile: 1 };
          case "DynamicPriorityPolling":
            return { watchFile: 2 };
          case "UseFsEvents":
            return se(4, 1, oe);
          case "UseFsEventsWithFallbackDynamicPolling":
            return se(4, 2, oe);
          case "UseFsEventsOnParentDirectory":
            ge = !0;
          default:
            return ge ? se(5, 1, oe) : { watchFile: 4 };
        }
      }
      function se(oe, ge, Ae) {
        const Ne = Ae?.fallbackPolling;
        return {
          watchFile: oe,
          fallbackPolling: Ne === void 0 ? ge : Ne
        };
      }
      function he(oe, ge, Ae, Ne) {
        return u ? Se(oe, 1, Vge(oe, ge, Ne, c, _), Ae, 500, HN(Ne)) : (H || (H = MOe({
          useCaseSensitiveFileNames: c,
          getCurrentDirectory: _,
          fileSystemEntryExists: o,
          getAccessibleSortedChildDirectories: d,
          watchDirectory: fe,
          realpath: g,
          setTimeout: n,
          clearTimeout: i
        })), H(oe, ge, Ae, Ne));
      }
      function fe(oe, ge, Ae, Ne) {
        E.assert(!Ae);
        const ot = de(Ne), K = E.checkDefined(ot.watchDirectory);
        switch (K) {
          case 1:
            return $(oe, () => ge(oe), 500, void 0);
          case 2:
            return ie()(oe, () => ge(oe), 500, void 0);
          case 3:
            return W()(oe, () => ge(oe), void 0, void 0);
          case 0:
            return Se(oe, 1, Vge(oe, ge, Ne, c, _), Ae, 500, HN(ot));
          default:
            E.assertNever(K);
        }
      }
      function de(oe) {
        if (oe && oe.watchDirectory !== void 0) return oe;
        switch (T) {
          case "RecursiveDirectoryUsingFsWatchFile":
            return { watchDirectory: 1 };
          case "RecursiveDirectoryUsingDynamicPriorityPolling":
            return { watchDirectory: 2 };
          default:
            const ge = oe?.fallbackPolling;
            return {
              watchDirectory: 0,
              fallbackPolling: ge !== void 0 ? ge : void 0
            };
        }
      }
      function $(oe, ge, Ae, Ne) {
        return zge(N, c, oe, ge, (ot) => e(oe, ot, Ae, Ne));
      }
      function Se(oe, ge, Ae, Ne, ot, K) {
        return zge(Ne ? R : M, c, oe, Ae, (ke) => Be(oe, ge, ke, Ne, ot, K));
      }
      function Be(oe, ge, Ae, Ne, ot, K) {
        let ke, ae;
        k && (ke = oe.substring(oe.lastIndexOf(Co)), ae = ke.slice(Co.length));
        let Ce = o(oe, ge) ? Ie() : Ut();
        return { close: () => {
          Ce && (Ce.close(), Ce = void 0);
        } };
        function ue(Xt) {
          Ce && (P(`sysLog:: ${oe}:: Changing watcher to ${Xt === Ie ? "Present" : "Missing"}FileSystemEntryWatcher`), Ce.close(), Ce = Xt());
        }
        function Ie() {
          if (U)
            return P(`sysLog:: ${oe}:: Defaulting to watchFile`), Ft();
          try {
            const Xt = (ge === 1 || !D ? a : ce)(oe, Ne, k ? Xe : Ae);
            return Xt.on("error", () => {
              Ae("rename", ""), ue(Ut);
            }), Xt;
          } catch (Xt) {
            return U || (U = Xt.code === "ENOSPC"), P(`sysLog:: ${oe}:: Changing to watchFile`), Ft();
          }
        }
        function Xe(Xt, Ar) {
          let Ct;
          if (Ar && Uo(Ar, "~") && (Ct = Ar, Ar = Ar.slice(0, Ar.length - 1)), Xt === "rename" && (!Ar || Ar === ae || Uo(Ar, ke))) {
            const Kt = t(oe) || ff;
            Ct && Ae(Xt, Ct, Kt), Ae(Xt, Ar, Kt), k ? ue(Kt === ff ? Ut : Ie) : Kt === ff && ue(Ut);
          } else
            Ct && Ae(Xt, Ct), Ae(Xt, Ar);
        }
        function Ft() {
          return pe(oe, ROe(Ae), ot, K);
        }
        function Ut() {
          return pe(oe, (Xt, Ar, Ct) => {
            Ar === 0 && (Ct || (Ct = t(oe) || ff), Ct !== ff && (Ae("rename", "", Ct), ue(Ie)));
          }, ot, K);
        }
      }
      function ce(oe, ge, Ae) {
        let Ne = t(oe) || ff;
        return a(oe, ge, (ot, K, ke) => {
          ot === "change" && (ke || (ke = t(oe) || ff), ke.getTime() === Ne.getTime()) || (Ne = ke || t(oe) || ff, Ae(ot, K, Ne));
        });
      }
    }
    function WY(e) {
      const t = e.writeFile;
      e.writeFile = (n, i, a) => hJ(n, i, !!a, (o, c, _) => t.call(e, o, c, _), (o) => e.createDirectory(o), (o) => e.directoryExists(o));
    }
    var Cl = (() => {
      function t() {
        const i = /^native |^\([^)]+\)$|^(?:internal[\\/]|[\w\s]+(?:\.js)?$)/, a = eS("fs"), o = eS("path"), c = eS("os");
        let _;
        try {
          _ = eS("crypto");
        } catch {
          _ = void 0;
        }
        let u, d = "./profile.cpuprofile";
        const g = process.platform === "darwin", h = process.platform === "linux" || g, S = { throwIfNoEntry: !1 }, T = c.platform(), k = ie(), D = a.realpathSync.native ? process.platform === "win32" ? ge : a.realpathSync.native : a.realpathSync, P = __filename.endsWith("sys.js") ? o.join(o.dirname(__dirname), "__fake__.js") : __filename, N = process.platform === "win32" || g, M = s_(() => process.cwd()), { watchFile: R, watchDirectory: G } = zY({
          pollingWatchFileWorker: Q,
          getModifiedTime: Ne,
          setTimeout,
          clearTimeout,
          fsWatchWorker: se,
          useCaseSensitiveFileNames: k,
          getCurrentDirectory: M,
          fileSystemEntryExists: Se,
          fsSupportsRecursiveFsWatch: N,
          getAccessibleSortedChildDirectories: (ae) => de(ae).directories,
          realpath: Ae,
          tscWatchFile: process.env.TSC_WATCHFILE,
          useNonPollingWatchers: !!process.env.TSC_NONPOLLING_WATCHER,
          tscWatchDirectory: process.env.TSC_WATCHDIRECTORY,
          inodeWatching: h,
          fsWatchWithTimestamp: g,
          sysLog: d3
        }), L = {
          args: process.argv.slice(2),
          newLine: c.EOL,
          useCaseSensitiveFileNames: k,
          write(ae) {
            process.stdout.write(ae);
          },
          getWidthOfTerminal() {
            return process.stdout.columns;
          },
          writeOutputIsTTY() {
            return process.stdout.isTTY;
          },
          readFile: he,
          writeFile: fe,
          watchFile: R,
          watchDirectory: G,
          preferNonRecursiveWatch: !N,
          resolvePath: (ae) => o.resolve(ae),
          fileExists: Be,
          directoryExists: ce,
          getAccessibleFileSystemEntries: de,
          createDirectory(ae) {
            if (!L.directoryExists(ae)) try {
              a.mkdirSync(ae);
            } catch (Ce) {
              if (Ce.code !== "EEXIST") throw Ce;
            }
          },
          getExecutingFilePath() {
            return P;
          },
          getCurrentDirectory: M,
          getDirectories: oe,
          getEnvironmentVariable(ae) {
            return process.env[ae] || "";
          },
          readDirectory: $,
          getModifiedTime: Ne,
          setModifiedTime: ot,
          deleteFile: K,
          createHash: _ ? ke : I4,
          createSHA256Hash: _ ? ke : void 0,
          getMemoryUsage() {
            return global.gc && global.gc(), process.memoryUsage().heapUsed;
          },
          getFileSize(ae) {
            const Ce = z(ae);
            return Ce?.isFile() ? Ce.size : 0;
          },
          exit(ae) {
            pe(() => process.exit(ae));
          },
          enableCPUProfiler: H,
          disableCPUProfiler: pe,
          cpuProfilingEnabled: () => !!u || Gi(process.execArgv, "--cpu-prof") || Gi(process.execArgv, "--prof"),
          realpath: Ae,
          debugMode: !!process.env.NODE_INSPECTOR_IPC || !!process.env.VSCODE_INSPECTOR_OPTIONS || _t(process.execArgv, (ae) => /^--(?:inspect|debug)(?:-brk)?(?:=\d+)?$/i.test(ae)) || !!process.recordreplay,
          tryEnableSourceMapsForHost() {
            try {
              spt().install();
            } catch {
            }
          },
          setTimeout,
          clearTimeout,
          clearScreen: () => {
            process.stdout.write("\x1B[2J\x1B[3J\x1B[H");
          },
          setBlocking: () => {
            var ae;
            const Ce = (ae = process.stdout) == null ? void 0 : ae._handle;
            Ce && Ce.setBlocking && Ce.setBlocking(!0);
          },
          base64decode: (ae) => Buffer.from(ae, "base64").toString("utf8"),
          base64encode: (ae) => Buffer.from(ae).toString("base64"),
          require: (ae, Ce) => {
            try {
              const ue = _ne(Ce, ae, L);
              return {
                module: eS(ue),
                modulePath: ue,
                error: void 0
              };
            } catch (ue) {
              return {
                module: void 0,
                modulePath: void 0,
                error: ue
              };
            }
          }
        };
        return L;
        function z(ae) {
          try {
            return a.statSync(ae, S);
          } catch {
            return;
          }
        }
        function H(ae, Ce) {
          if (u)
            return Ce(), !1;
          const ue = eS("inspector");
          if (!ue || !ue.Session)
            return Ce(), !1;
          const Ie = new ue.Session();
          return Ie.connect(), Ie.post("Profiler.enable", () => {
            Ie.post("Profiler.start", () => {
              u = Ie, d = ae, Ce();
            });
          }), !0;
        }
        function U(ae) {
          let Ce = 0;
          const ue = /* @__PURE__ */ new Map(), Ie = ru(o.dirname(P)), Xe = `file://${Md(Ie) === 1 ? "" : "/"}${Ie}`;
          for (const Ft of ae.nodes) if (Ft.callFrame.url) {
            const Ut = ru(Ft.callFrame.url);
            vp(Xe, Ut, k) ? Ft.callFrame.url = bx(Xe, Ut, Xe, pu(k), !0) : i.test(Ut) || (Ft.callFrame.url = (ue.has(Ut) ? ue : ue.set(Ut, `external${Ce}.js`)).get(Ut), Ce++);
          }
          return ae;
        }
        function pe(ae) {
          if (u && u !== "stopping") {
            const Ce = u;
            return u.post("Profiler.stop", (ue, { profile: Ie }) => {
              var Xe;
              if (!ue) {
                (Xe = z(d)) != null && Xe.isDirectory() && (d = o.join(d, `${(/* @__PURE__ */ new Date()).toISOString().replace(/:/g, "-")}+P${process.pid}.cpuprofile`));
                try {
                  a.mkdirSync(o.dirname(d), { recursive: !0 });
                } catch {
                }
                a.writeFileSync(d, JSON.stringify(U(Ie)));
              }
              u = void 0, Ce.disconnect(), ae();
            }), u = "stopping", !0;
          } else
            return ae(), !1;
        }
        function ie() {
          return T === "win32" || T === "win64" ? !1 : !Be(W(__filename));
        }
        function W(ae) {
          return ae.replace(/\w/g, (Ce) => {
            const ue = Ce.toUpperCase();
            return Ce === ue ? Ce.toLowerCase() : ue;
          });
        }
        function Q(ae, Ce, ue) {
          a.watchFile(ae, {
            persistent: !0,
            interval: ue
          }, Xe);
          let Ie;
          return { close: () => a.unwatchFile(ae, Xe) };
          function Xe(Ft, Ut) {
            const Xt = +Ut.mtime == 0 || Ie === 2;
            if (+Ft.mtime == 0) {
              if (Xt) return;
              Ie = 2;
            } else if (Xt) Ie = 0;
            else {
              if (+Ft.mtime == +Ut.mtime) return;
              Ie = 1;
            }
            Ce(ae, Ie, Ft.mtime);
          }
        }
        function se(ae, Ce, ue) {
          return a.watch(ae, N ? {
            persistent: !0,
            recursive: !!Ce
          } : { persistent: !0 }, ue);
        }
        function he(ae, Ce) {
          let ue;
          try {
            ue = a.readFileSync(ae);
          } catch {
            return;
          }
          let Ie = ue.length;
          if (Ie >= 2 && ue[0] === 254 && ue[1] === 255) {
            Ie &= -2;
            for (let Xe = 0; Xe < Ie; Xe += 2) {
              const Ft = ue[Xe];
              ue[Xe] = ue[Xe + 1], ue[Xe + 1] = Ft;
            }
            return ue.toString("utf16le", 2);
          }
          return Ie >= 2 && ue[0] === 255 && ue[1] === 254 ? ue.toString("utf16le", 2) : Ie >= 3 && ue[0] === 239 && ue[1] === 187 && ue[2] === 191 ? ue.toString("utf8", 3) : ue.toString("utf8");
        }
        function fe(ae, Ce, ue) {
          ue && (Ce = "\uFEFF" + Ce);
          let Ie;
          try {
            Ie = a.openSync(ae, "w"), a.writeSync(Ie, Ce, void 0, "utf8");
          } finally {
            Ie !== void 0 && a.closeSync(Ie);
          }
        }
        function de(ae) {
          try {
            const Ce = a.readdirSync(ae || ".", { withFileTypes: !0 }), ue = [], Ie = [];
            for (const Xe of Ce) {
              const Ft = typeof Xe == "string" ? Xe : Xe.name;
              if (Ft === "." || Ft === "..") continue;
              let Ut;
              if (typeof Xe == "string" || Xe.isSymbolicLink()) {
                if (Ut = z(jn(ae, Ft)), !Ut) continue;
              } else Ut = Xe;
              Ut.isFile() ? ue.push(Ft) : Ut.isDirectory() && Ie.push(Ft);
            }
            return ue.sort(), Ie.sort(), {
              files: ue,
              directories: Ie
            };
          } catch {
            return ZJ;
          }
        }
        function $(ae, Ce, ue, Ie, Xe) {
          return $J(ae, Ce, ue, Ie, k, process.cwd(), Xe, de, Ae);
        }
        function Se(ae, Ce) {
          const ue = z(ae);
          if (!ue) return !1;
          switch (Ce) {
            case 0:
              return ue.isFile();
            case 1:
              return ue.isDirectory();
            default:
              return !1;
          }
        }
        function Be(ae) {
          return Se(ae, 0);
        }
        function ce(ae) {
          return Se(ae, 1);
        }
        function oe(ae) {
          return de(ae).directories.slice();
        }
        function ge(ae) {
          return ae.length < 260 ? a.realpathSync.native(ae) : a.realpathSync(ae);
        }
        function Ae(ae) {
          try {
            return D(ae);
          } catch {
            return ae;
          }
        }
        function Ne(ae) {
          var Ce;
          return (Ce = z(ae)) == null ? void 0 : Ce.mtime;
        }
        function ot(ae, Ce) {
          try {
            a.utimesSync(ae, Ce, Ce);
          } catch {
            return;
          }
        }
        function K(ae) {
          try {
            return a.unlinkSync(ae);
          } catch {
            return;
          }
        }
        function ke(ae) {
          const Ce = _.createHash("sha256");
          return Ce.update(ae), Ce.digest("hex");
        }
      }
      let n;
      return cj() && (n = t()), n && WY(n), n;
    })();
    function qge(e) {
      Cl = e;
    }
    Cl && Cl.getEnvironmentVariable && (NOe(Cl), E.setAssertionLevel(/^development$/i.test(Cl.getEnvironmentVariable("NODE_ENV")) ? 1 : 0)), Cl && Cl.debugMode && (E.isDebugging = !0);
    var Co = "/", I7 = "\\", Gge = "://", BOe = /\\/g;
    function Ij(e) {
      return e === 47 || e === 92;
    }
    function UY(e) {
      return O7(e) < 0;
    }
    function pf(e) {
      return O7(e) > 0;
    }
    function Oj(e) {
      const t = O7(e);
      return t > 0 && t === e.length;
    }
    function O4(e) {
      return O7(e) !== 0;
    }
    function Bf(e) {
      return /^\.\.?(?:$|[\\/])/.test(e);
    }
    function Fj(e) {
      return !O4(e) && !Bf(e);
    }
    function UC(e) {
      return nl(e).includes(".");
    }
    function lc(e, t) {
      return e.length > t.length && Uo(e, t);
    }
    function jc(e, t) {
      for (const n of t) if (lc(e, n)) return !0;
      return !1;
    }
    function Oy(e) {
      return e.length > 0 && Ij(e.charCodeAt(e.length - 1));
    }
    function Hge(e) {
      return e >= 97 && e <= 122 || e >= 65 && e <= 90;
    }
    function JOe(e, t) {
      const n = e.charCodeAt(t);
      if (n === 58) return t + 1;
      if (n === 37 && e.charCodeAt(t + 1) === 51) {
        const i = e.charCodeAt(t + 2);
        if (i === 97 || i === 65) return t + 3;
      }
      return -1;
    }
    function O7(e) {
      if (!e) return 0;
      const t = e.charCodeAt(0);
      if (t === 47 || t === 92) {
        if (e.charCodeAt(1) !== t) return 1;
        const i = e.indexOf(t === 47 ? Co : I7, 2);
        return i < 0 ? e.length : i + 1;
      }
      if (Hge(t) && e.charCodeAt(1) === 58) {
        const i = e.charCodeAt(2);
        if (i === 47 || i === 92) return 3;
        if (e.length === 2) return 2;
      }
      const n = e.indexOf(Gge);
      if (n !== -1) {
        const i = n + Gge.length, a = e.indexOf(Co, i);
        if (a !== -1) {
          const o = e.slice(0, n), c = e.slice(i, a);
          if (o === "file" && (c === "" || c === "localhost") && Hge(e.charCodeAt(a + 1))) {
            const _ = JOe(e, a + 2);
            if (_ !== -1) {
              if (e.charCodeAt(_) === 47) return ~(_ + 1);
              if (_ === e.length) return ~_;
            }
          }
          return ~(a + 1);
        }
        return ~e.length;
      }
      return 0;
    }
    function Md(e) {
      const t = O7(e);
      return t < 0 ? ~t : t;
    }
    function Xn(e) {
      e = ru(e);
      const t = Md(e);
      return t === e.length ? e : (e = T0(e), e.slice(0, Math.max(t, e.lastIndexOf(Co))));
    }
    function nl(e, t, n) {
      if (e = ru(e), Md(e) === e.length) return "";
      e = T0(e);
      const i = e.slice(Math.max(Md(e), e.lastIndexOf(Co) + 1)), a = t !== void 0 && n !== void 0 ? hx(i, t, n) : void 0;
      return a ? i.slice(0, i.length - a.length) : i;
    }
    function $ge(e, t, n) {
      if (ta(t, ".") || (t = "." + t), e.length >= t.length && e.charCodeAt(e.length - t.length) === 46) {
        const i = e.slice(e.length - t.length);
        if (n(i, t)) return i;
      }
    }
    function zOe(e, t, n) {
      if (typeof t == "string") return $ge(e, t, n) || "";
      for (const i of t) {
        const a = $ge(e, i, n);
        if (a) return a;
      }
      return "";
    }
    function hx(e, t, n) {
      if (t) return zOe(T0(e), t, n ? ev : nS);
      const i = nl(e), a = i.lastIndexOf(".");
      return a >= 0 ? i.substring(a) : "";
    }
    function WOe(e, t) {
      const n = e.substring(0, t), i = e.substring(t).split(Co);
      return i.length && !Wo(i) && i.pop(), [n, ...i];
    }
    function wu(e, t = "") {
      return e = jn(t, e), WOe(e, Md(e));
    }
    function rv(e, t) {
      return e.length === 0 ? "" : (e[0] && El(e[0])) + e.slice(1, t).join(Co);
    }
    function ru(e) {
      return e.includes("\\") ? e.replace(BOe, Co) : e;
    }
    function yx(e) {
      if (!_t(e)) return [];
      const t = [e[0]];
      for (let n = 1; n < e.length; n++) {
        const i = e[n];
        if (i && i !== ".") {
          if (i === "..") {
            if (t.length > 1) {
              if (t[t.length - 1] !== "..") {
                t.pop();
                continue;
              }
            } else if (t[0]) continue;
          }
          t.push(i);
        }
      }
      return t;
    }
    function jn(e, ...t) {
      e && (e = ru(e));
      for (let n of t)
        n && (n = ru(n), !e || Md(n) !== 0 ? e = n : e = El(e) + n);
      return e;
    }
    function Fy(e, ...t) {
      return us(_t(t) ? jn(e, ...t) : ru(e));
    }
    function F7(e, t) {
      return yx(wu(e, t));
    }
    function ca(e, t) {
      let n = Md(e);
      n === 0 && t ? (e = jn(t, e), n = Md(e)) : e = ru(e);
      const i = Xge(e);
      if (i !== void 0) return i.length > n ? T0(i) : i;
      const a = e.length, o = e.substring(0, n);
      let c, _ = n, u = _, d = _, g = n !== 0;
      for (; _ < a; ) {
        u = _;
        let h = e.charCodeAt(_);
        for (; h === 47 && _ + 1 < a; )
          _++, h = e.charCodeAt(_);
        _ > u && (c ?? (c = e.substring(0, u - 1)), u = _);
        let S = e.indexOf(Co, _ + 1);
        S === -1 && (S = a);
        const T = S - u;
        if (T === 1 && e.charCodeAt(_) === 46) c ?? (c = e.substring(0, d));
        else if (T === 2 && e.charCodeAt(_) === 46 && e.charCodeAt(_ + 1) === 46) if (!g) c !== void 0 ? c += c.length === n ? ".." : "/.." : d = _ + 2;
        else if (c === void 0) d - 2 >= 0 ? c = e.substring(0, Math.max(n, e.lastIndexOf(Co, d - 2))) : c = e.substring(0, d);
        else {
          const k = c.lastIndexOf(Co);
          k !== -1 ? c = c.substring(0, Math.max(n, k)) : c = o, c.length === n && (g = n !== 0);
        }
        else c !== void 0 ? (c.length !== n && (c += Co), g = !0, c += e.substring(u, S)) : (g = !0, d = S);
        _ = S + 1;
      }
      return c ?? (a > n ? T0(e) : e);
    }
    function us(e) {
      e = ru(e);
      let t = Xge(e);
      return t !== void 0 ? t : (t = ca(e, ""), t && Oy(e) ? El(t) : t);
    }
    function Xge(e) {
      if (!Mj.test(e)) return e;
      let t = e.replace(/\/\.\//g, "/");
      if (t.startsWith("./") && (t = t.slice(2)), t !== e && (e = t, !Mj.test(e)))
        return e;
    }
    function UOe(e) {
      return e.length === 0 ? "" : e.slice(1).join(Co);
    }
    function Lj(e, t) {
      return UOe(F7(e, t));
    }
    function Eo(e, t, n) {
      return n(pf(e) ? us(e) : ca(e, t));
    }
    function T0(e) {
      return Oy(e) ? e.substr(0, e.length - 1) : e;
    }
    function El(e) {
      return Oy(e) ? e : e + Co;
    }
    function sS(e) {
      return !O4(e) && !Bf(e) ? "./" + e : e;
    }
    function m3(e, t, n, i) {
      const a = n !== void 0 && i !== void 0 ? hx(e, n, i) : hx(e);
      return a ? e.slice(0, e.length - a.length) + (ta(t, ".") ? t : "." + t) : e;
    }
    function L7(e, t) {
      const n = gF(e);
      return n ? e.slice(0, e.length - n.length) + (ta(t, ".") ? t : "." + t) : m3(e, t);
    }
    var Mj = /\/\/|(?:^|\/)\.\.?(?:$|\/)/;
    function VY(e, t, n) {
      if (e === t) return 0;
      if (e === void 0) return -1;
      if (t === void 0) return 1;
      const i = e.substring(0, Md(e)), a = t.substring(0, Md(t)), o = l3(i, a);
      if (o !== 0) return o;
      const c = e.substring(i.length), _ = t.substring(a.length);
      if (!Mj.test(c) && !Mj.test(_)) return n(c, _);
      const u = yx(wu(e)), d = yx(wu(t)), g = Math.min(u.length, d.length);
      for (let h = 1; h < g; h++) {
        const S = n(u[h], d[h]);
        if (S !== 0) return S;
      }
      return Fo(u.length, d.length);
    }
    function Qge(e, t) {
      return VY(e, t, Du);
    }
    function Yge(e, t) {
      return VY(e, t, l3);
    }
    function Rh(e, t, n, i) {
      return typeof n == "string" ? (e = jn(n, e), t = jn(n, t)) : typeof n == "boolean" && (i = n), VY(e, t, JC(i));
    }
    function vp(e, t, n, i) {
      if (typeof n == "string" ? (e = jn(n, e), t = jn(n, t)) : typeof n == "boolean" && (i = n), e === void 0 || t === void 0) return !1;
      if (e === t) return !0;
      const a = yx(wu(e)), o = yx(wu(t));
      if (o.length < a.length) return !1;
      const c = i ? ev : nS;
      for (let _ = 0; _ < a.length; _++) if (!(_ === 0 ? ev : c)(a[_], o[_])) return !1;
      return !0;
    }
    function Rj(e, t, n) {
      const i = n(e), a = n(t);
      return ta(i, a + "/") || ta(i, a + "\\");
    }
    function Zge(e, t, n, i) {
      const a = yx(wu(e)), o = yx(wu(t));
      let c;
      for (c = 0; c < a.length && c < o.length; c++) {
        const d = i(a[c]), g = i(o[c]);
        if (!(c === 0 ? ev : n)(d, g)) break;
      }
      if (c === 0) return o;
      const _ = o.slice(c), u = [];
      for (; c < a.length; c++) u.push("..");
      return [
        "",
        ...u,
        ..._
      ];
    }
    function Zf(e, t, n) {
      return E.assert(Md(e) > 0 == Md(t) > 0, "Paths must either both be absolute or both be relative"), rv(Zge(e, t, typeof n == "boolean" && n ? ev : nS, typeof n == "function" ? n : mo));
    }
    function F4(e, t, n) {
      return pf(e) ? bx(t, e, t, n, !1) : e;
    }
    function vx(e, t, n) {
      return sS(Zf(Xn(e), t, n));
    }
    function bx(e, t, n, i, a) {
      const o = Zge(Fy(n, e), Fy(n, t), nS, i), c = o[0];
      return a && pf(c) && (o[0] = (c.charAt(0) === Co ? "file://" : "file:///") + c), rv(o);
    }
    function L4(e, t) {
      for (; ; ) {
        const n = t(e);
        if (n !== void 0) return n;
        const i = Xn(e);
        if (i === e) return;
        e = i;
      }
    }
    function M7(e) {
      return Uo(e, "/node_modules");
    }
    function b(e, t, n, i, a, o, c) {
      return {
        code: e,
        category: t,
        key: n,
        message: i,
        reportsUnnecessary: a,
        elidedInCompatabilityPyramid: o,
        reportsDeprecated: c
      };
    }
    var p = {
      Unterminated_string_literal: b(1002, 1, "Unterminated_string_literal_1002", "Unterminated string literal."),
      Identifier_expected: b(1003, 1, "Identifier_expected_1003", "Identifier expected."),
      _0_expected: b(1005, 1, "_0_expected_1005", "'{0}' expected."),
      A_file_cannot_have_a_reference_to_itself: b(1006, 1, "A_file_cannot_have_a_reference_to_itself_1006", "A file cannot have a reference to itself."),
      The_parser_expected_to_find_a_1_to_match_the_0_token_here: b(1007, 1, "The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007", "The parser expected to find a '{1}' to match the '{0}' token here."),
      Trailing_comma_not_allowed: b(1009, 1, "Trailing_comma_not_allowed_1009", "Trailing comma not allowed."),
      Asterisk_Slash_expected: b(1010, 1, "Asterisk_Slash_expected_1010", "'*/' expected."),
      An_element_access_expression_should_take_an_argument: b(1011, 1, "An_element_access_expression_should_take_an_argument_1011", "An element access expression should take an argument."),
      Unexpected_token: b(1012, 1, "Unexpected_token_1012", "Unexpected token."),
      A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma: b(1013, 1, "A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013", "A rest parameter or binding pattern may not have a trailing comma."),
      A_rest_parameter_must_be_last_in_a_parameter_list: b(1014, 1, "A_rest_parameter_must_be_last_in_a_parameter_list_1014", "A rest parameter must be last in a parameter list."),
      Parameter_cannot_have_question_mark_and_initializer: b(1015, 1, "Parameter_cannot_have_question_mark_and_initializer_1015", "Parameter cannot have question mark and initializer."),
      A_required_parameter_cannot_follow_an_optional_parameter: b(1016, 1, "A_required_parameter_cannot_follow_an_optional_parameter_1016", "A required parameter cannot follow an optional parameter."),
      An_index_signature_cannot_have_a_rest_parameter: b(1017, 1, "An_index_signature_cannot_have_a_rest_parameter_1017", "An index signature cannot have a rest parameter."),
      An_index_signature_parameter_cannot_have_an_accessibility_modifier: b(1018, 1, "An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018", "An index signature parameter cannot have an accessibility modifier."),
      An_index_signature_parameter_cannot_have_a_question_mark: b(1019, 1, "An_index_signature_parameter_cannot_have_a_question_mark_1019", "An index signature parameter cannot have a question mark."),
      An_index_signature_parameter_cannot_have_an_initializer: b(1020, 1, "An_index_signature_parameter_cannot_have_an_initializer_1020", "An index signature parameter cannot have an initializer."),
      An_index_signature_must_have_a_type_annotation: b(1021, 1, "An_index_signature_must_have_a_type_annotation_1021", "An index signature must have a type annotation."),
      An_index_signature_parameter_must_have_a_type_annotation: b(1022, 1, "An_index_signature_parameter_must_have_a_type_annotation_1022", "An index signature parameter must have a type annotation."),
      readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature: b(1024, 1, "readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024", "'readonly' modifier can only appear on a property declaration or index signature."),
      An_index_signature_cannot_have_a_trailing_comma: b(1025, 1, "An_index_signature_cannot_have_a_trailing_comma_1025", "An index signature cannot have a trailing comma."),
      Accessibility_modifier_already_seen: b(1028, 1, "Accessibility_modifier_already_seen_1028", "Accessibility modifier already seen."),
      _0_modifier_must_precede_1_modifier: b(1029, 1, "_0_modifier_must_precede_1_modifier_1029", "'{0}' modifier must precede '{1}' modifier."),
      _0_modifier_already_seen: b(1030, 1, "_0_modifier_already_seen_1030", "'{0}' modifier already seen."),
      _0_modifier_cannot_appear_on_class_elements_of_this_kind: b(1031, 1, "_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031", "'{0}' modifier cannot appear on class elements of this kind."),
      super_must_be_followed_by_an_argument_list_or_member_access: b(1034, 1, "super_must_be_followed_by_an_argument_list_or_member_access_1034", "'super' must be followed by an argument list or member access."),
      Only_ambient_modules_can_use_quoted_names: b(1035, 1, "Only_ambient_modules_can_use_quoted_names_1035", "Only ambient modules can use quoted names."),
      Statements_are_not_allowed_in_ambient_contexts: b(1036, 1, "Statements_are_not_allowed_in_ambient_contexts_1036", "Statements are not allowed in ambient contexts."),
      A_declare_modifier_cannot_be_used_in_an_already_ambient_context: b(1038, 1, "A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038", "A 'declare' modifier cannot be used in an already ambient context."),
      Initializers_are_not_allowed_in_ambient_contexts: b(1039, 1, "Initializers_are_not_allowed_in_ambient_contexts_1039", "Initializers are not allowed in ambient contexts."),
      _0_modifier_cannot_be_used_in_an_ambient_context: b(1040, 1, "_0_modifier_cannot_be_used_in_an_ambient_context_1040", "'{0}' modifier cannot be used in an ambient context."),
      _0_modifier_cannot_be_used_here: b(1042, 1, "_0_modifier_cannot_be_used_here_1042", "'{0}' modifier cannot be used here."),
      _0_modifier_cannot_appear_on_a_module_or_namespace_element: b(1044, 1, "_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044", "'{0}' modifier cannot appear on a module or namespace element."),
      Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier: b(1046, 1, "Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046", "Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),
      A_rest_parameter_cannot_be_optional: b(1047, 1, "A_rest_parameter_cannot_be_optional_1047", "A rest parameter cannot be optional."),
      A_rest_parameter_cannot_have_an_initializer: b(1048, 1, "A_rest_parameter_cannot_have_an_initializer_1048", "A rest parameter cannot have an initializer."),
      A_set_accessor_must_have_exactly_one_parameter: b(1049, 1, "A_set_accessor_must_have_exactly_one_parameter_1049", "A 'set' accessor must have exactly one parameter."),
      A_set_accessor_cannot_have_an_optional_parameter: b(1051, 1, "A_set_accessor_cannot_have_an_optional_parameter_1051", "A 'set' accessor cannot have an optional parameter."),
      A_set_accessor_parameter_cannot_have_an_initializer: b(1052, 1, "A_set_accessor_parameter_cannot_have_an_initializer_1052", "A 'set' accessor parameter cannot have an initializer."),
      A_set_accessor_cannot_have_rest_parameter: b(1053, 1, "A_set_accessor_cannot_have_rest_parameter_1053", "A 'set' accessor cannot have rest parameter."),
      A_get_accessor_cannot_have_parameters: b(1054, 1, "A_get_accessor_cannot_have_parameters_1054", "A 'get' accessor cannot have parameters."),
      Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value: b(1055, 1, "Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055", "Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),
      Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher: b(1056, 1, "Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056", "Accessors are only available when targeting ECMAScript 5 and higher."),
      The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member: b(1058, 1, "The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058", "The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),
      A_promise_must_have_a_then_method: b(1059, 1, "A_promise_must_have_a_then_method_1059", "A promise must have a 'then' method."),
      The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback: b(1060, 1, "The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060", "The first parameter of the 'then' method of a promise must be a callback."),
      Enum_member_must_have_initializer: b(1061, 1, "Enum_member_must_have_initializer_1061", "Enum member must have initializer."),
      Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method: b(1062, 1, "Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062", "Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),
      An_export_assignment_cannot_be_used_in_a_namespace: b(1063, 1, "An_export_assignment_cannot_be_used_in_a_namespace_1063", "An export assignment cannot be used in a namespace."),
      The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0: b(1064, 1, "The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064", "The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?"),
      The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type: b(1065, 1, "The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065", "The return type of an async function or method must be the global Promise<T> type."),
      In_ambient_enum_declarations_member_initializer_must_be_constant_expression: b(1066, 1, "In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066", "In ambient enum declarations member initializer must be constant expression."),
      Unexpected_token_A_constructor_method_accessor_or_property_was_expected: b(1068, 1, "Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068", "Unexpected token. A constructor, method, accessor, or property was expected."),
      Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces: b(1069, 1, "Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069", "Unexpected token. A type parameter name was expected without curly braces."),
      _0_modifier_cannot_appear_on_a_type_member: b(1070, 1, "_0_modifier_cannot_appear_on_a_type_member_1070", "'{0}' modifier cannot appear on a type member."),
      _0_modifier_cannot_appear_on_an_index_signature: b(1071, 1, "_0_modifier_cannot_appear_on_an_index_signature_1071", "'{0}' modifier cannot appear on an index signature."),
      A_0_modifier_cannot_be_used_with_an_import_declaration: b(1079, 1, "A_0_modifier_cannot_be_used_with_an_import_declaration_1079", "A '{0}' modifier cannot be used with an import declaration."),
      Invalid_reference_directive_syntax: b(1084, 1, "Invalid_reference_directive_syntax_1084", "Invalid 'reference' directive syntax."),
      _0_modifier_cannot_appear_on_a_constructor_declaration: b(1089, 1, "_0_modifier_cannot_appear_on_a_constructor_declaration_1089", "'{0}' modifier cannot appear on a constructor declaration."),
      _0_modifier_cannot_appear_on_a_parameter: b(1090, 1, "_0_modifier_cannot_appear_on_a_parameter_1090", "'{0}' modifier cannot appear on a parameter."),
      Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement: b(1091, 1, "Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091", "Only a single variable declaration is allowed in a 'for...in' statement."),
      Type_parameters_cannot_appear_on_a_constructor_declaration: b(1092, 1, "Type_parameters_cannot_appear_on_a_constructor_declaration_1092", "Type parameters cannot appear on a constructor declaration."),
      Type_annotation_cannot_appear_on_a_constructor_declaration: b(1093, 1, "Type_annotation_cannot_appear_on_a_constructor_declaration_1093", "Type annotation cannot appear on a constructor declaration."),
      An_accessor_cannot_have_type_parameters: b(1094, 1, "An_accessor_cannot_have_type_parameters_1094", "An accessor cannot have type parameters."),
      A_set_accessor_cannot_have_a_return_type_annotation: b(1095, 1, "A_set_accessor_cannot_have_a_return_type_annotation_1095", "A 'set' accessor cannot have a return type annotation."),
      An_index_signature_must_have_exactly_one_parameter: b(1096, 1, "An_index_signature_must_have_exactly_one_parameter_1096", "An index signature must have exactly one parameter."),
      _0_list_cannot_be_empty: b(1097, 1, "_0_list_cannot_be_empty_1097", "'{0}' list cannot be empty."),
      Type_parameter_list_cannot_be_empty: b(1098, 1, "Type_parameter_list_cannot_be_empty_1098", "Type parameter list cannot be empty."),
      Type_argument_list_cannot_be_empty: b(1099, 1, "Type_argument_list_cannot_be_empty_1099", "Type argument list cannot be empty."),
      Invalid_use_of_0_in_strict_mode: b(1100, 1, "Invalid_use_of_0_in_strict_mode_1100", "Invalid use of '{0}' in strict mode."),
      with_statements_are_not_allowed_in_strict_mode: b(1101, 1, "with_statements_are_not_allowed_in_strict_mode_1101", "'with' statements are not allowed in strict mode."),
      delete_cannot_be_called_on_an_identifier_in_strict_mode: b(1102, 1, "delete_cannot_be_called_on_an_identifier_in_strict_mode_1102", "'delete' cannot be called on an identifier in strict mode."),
      for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules: b(1103, 1, "for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103", "'for await' loops are only allowed within async functions and at the top levels of modules."),
      A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement: b(1104, 1, "A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104", "A 'continue' statement can only be used within an enclosing iteration statement."),
      A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement: b(1105, 1, "A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105", "A 'break' statement can only be used within an enclosing iteration or switch statement."),
      The_left_hand_side_of_a_for_of_statement_may_not_be_async: b(1106, 1, "The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106", "The left-hand side of a 'for...of' statement may not be 'async'."),
      Jump_target_cannot_cross_function_boundary: b(1107, 1, "Jump_target_cannot_cross_function_boundary_1107", "Jump target cannot cross function boundary."),
      A_return_statement_can_only_be_used_within_a_function_body: b(1108, 1, "A_return_statement_can_only_be_used_within_a_function_body_1108", "A 'return' statement can only be used within a function body."),
      Expression_expected: b(1109, 1, "Expression_expected_1109", "Expression expected."),
      Type_expected: b(1110, 1, "Type_expected_1110", "Type expected."),
      Private_field_0_must_be_declared_in_an_enclosing_class: b(1111, 1, "Private_field_0_must_be_declared_in_an_enclosing_class_1111", "Private field '{0}' must be declared in an enclosing class."),
      A_default_clause_cannot_appear_more_than_once_in_a_switch_statement: b(1113, 1, "A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113", "A 'default' clause cannot appear more than once in a 'switch' statement."),
      Duplicate_label_0: b(1114, 1, "Duplicate_label_0_1114", "Duplicate label '{0}'."),
      A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement: b(1115, 1, "A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115", "A 'continue' statement can only jump to a label of an enclosing iteration statement."),
      A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement: b(1116, 1, "A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116", "A 'break' statement can only jump to a label of an enclosing statement."),
      An_object_literal_cannot_have_multiple_properties_with_the_same_name: b(1117, 1, "An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117", "An object literal cannot have multiple properties with the same name."),
      An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name: b(1118, 1, "An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118", "An object literal cannot have multiple get/set accessors with the same name."),
      An_object_literal_cannot_have_property_and_accessor_with_the_same_name: b(1119, 1, "An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119", "An object literal cannot have property and accessor with the same name."),
      An_export_assignment_cannot_have_modifiers: b(1120, 1, "An_export_assignment_cannot_have_modifiers_1120", "An export assignment cannot have modifiers."),
      Octal_literals_are_not_allowed_Use_the_syntax_0: b(1121, 1, "Octal_literals_are_not_allowed_Use_the_syntax_0_1121", "Octal literals are not allowed. Use the syntax '{0}'."),
      Variable_declaration_list_cannot_be_empty: b(1123, 1, "Variable_declaration_list_cannot_be_empty_1123", "Variable declaration list cannot be empty."),
      Digit_expected: b(1124, 1, "Digit_expected_1124", "Digit expected."),
      Hexadecimal_digit_expected: b(1125, 1, "Hexadecimal_digit_expected_1125", "Hexadecimal digit expected."),
      Unexpected_end_of_text: b(1126, 1, "Unexpected_end_of_text_1126", "Unexpected end of text."),
      Invalid_character: b(1127, 1, "Invalid_character_1127", "Invalid character."),
      Declaration_or_statement_expected: b(1128, 1, "Declaration_or_statement_expected_1128", "Declaration or statement expected."),
      Statement_expected: b(1129, 1, "Statement_expected_1129", "Statement expected."),
      case_or_default_expected: b(1130, 1, "case_or_default_expected_1130", "'case' or 'default' expected."),
      Property_or_signature_expected: b(1131, 1, "Property_or_signature_expected_1131", "Property or signature expected."),
      Enum_member_expected: b(1132, 1, "Enum_member_expected_1132", "Enum member expected."),
      Variable_declaration_expected: b(1134, 1, "Variable_declaration_expected_1134", "Variable declaration expected."),
      Argument_expression_expected: b(1135, 1, "Argument_expression_expected_1135", "Argument expression expected."),
      Property_assignment_expected: b(1136, 1, "Property_assignment_expected_1136", "Property assignment expected."),
      Expression_or_comma_expected: b(1137, 1, "Expression_or_comma_expected_1137", "Expression or comma expected."),
      Parameter_declaration_expected: b(1138, 1, "Parameter_declaration_expected_1138", "Parameter declaration expected."),
      Type_parameter_declaration_expected: b(1139, 1, "Type_parameter_declaration_expected_1139", "Type parameter declaration expected."),
      Type_argument_expected: b(1140, 1, "Type_argument_expected_1140", "Type argument expected."),
      String_literal_expected: b(1141, 1, "String_literal_expected_1141", "String literal expected."),
      Line_break_not_permitted_here: b(1142, 1, "Line_break_not_permitted_here_1142", "Line break not permitted here."),
      or_expected: b(1144, 1, "or_expected_1144", "'{' or ';' expected."),
      or_JSX_element_expected: b(1145, 1, "or_JSX_element_expected_1145", "'{' or JSX element expected."),
      Declaration_expected: b(1146, 1, "Declaration_expected_1146", "Declaration expected."),
      Import_declarations_in_a_namespace_cannot_reference_a_module: b(1147, 1, "Import_declarations_in_a_namespace_cannot_reference_a_module_1147", "Import declarations in a namespace cannot reference a module."),
      Cannot_use_imports_exports_or_module_augmentations_when_module_is_none: b(1148, 1, "Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148", "Cannot use imports, exports, or module augmentations when '--module' is 'none'."),
      File_name_0_differs_from_already_included_file_name_1_only_in_casing: b(1149, 1, "File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149", "File name '{0}' differs from already included file name '{1}' only in casing."),
      _0_declarations_must_be_initialized: b(1155, 1, "_0_declarations_must_be_initialized_1155", "'{0}' declarations must be initialized."),
      _0_declarations_can_only_be_declared_inside_a_block: b(1156, 1, "_0_declarations_can_only_be_declared_inside_a_block_1156", "'{0}' declarations can only be declared inside a block."),
      Unterminated_template_literal: b(1160, 1, "Unterminated_template_literal_1160", "Unterminated template literal."),
      Unterminated_regular_expression_literal: b(1161, 1, "Unterminated_regular_expression_literal_1161", "Unterminated regular expression literal."),
      An_object_member_cannot_be_declared_optional: b(1162, 1, "An_object_member_cannot_be_declared_optional_1162", "An object member cannot be declared optional."),
      A_yield_expression_is_only_allowed_in_a_generator_body: b(1163, 1, "A_yield_expression_is_only_allowed_in_a_generator_body_1163", "A 'yield' expression is only allowed in a generator body."),
      Computed_property_names_are_not_allowed_in_enums: b(1164, 1, "Computed_property_names_are_not_allowed_in_enums_1164", "Computed property names are not allowed in enums."),
      A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type: b(1165, 1, "A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165", "A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),
      A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type: b(1166, 1, "A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166", "A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),
      A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type: b(1168, 1, "A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168", "A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),
      A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type: b(1169, 1, "A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169", "A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),
      A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type: b(1170, 1, "A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170", "A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),
      A_comma_expression_is_not_allowed_in_a_computed_property_name: b(1171, 1, "A_comma_expression_is_not_allowed_in_a_computed_property_name_1171", "A comma expression is not allowed in a computed property name."),
      extends_clause_already_seen: b(1172, 1, "extends_clause_already_seen_1172", "'extends' clause already seen."),
      extends_clause_must_precede_implements_clause: b(1173, 1, "extends_clause_must_precede_implements_clause_1173", "'extends' clause must precede 'implements' clause."),
      Classes_can_only_extend_a_single_class: b(1174, 1, "Classes_can_only_extend_a_single_class_1174", "Classes can only extend a single class."),
      implements_clause_already_seen: b(1175, 1, "implements_clause_already_seen_1175", "'implements' clause already seen."),
      Interface_declaration_cannot_have_implements_clause: b(1176, 1, "Interface_declaration_cannot_have_implements_clause_1176", "Interface declaration cannot have 'implements' clause."),
      Binary_digit_expected: b(1177, 1, "Binary_digit_expected_1177", "Binary digit expected."),
      Octal_digit_expected: b(1178, 1, "Octal_digit_expected_1178", "Octal digit expected."),
      Unexpected_token_expected: b(1179, 1, "Unexpected_token_expected_1179", "Unexpected token. '{' expected."),
      Property_destructuring_pattern_expected: b(1180, 1, "Property_destructuring_pattern_expected_1180", "Property destructuring pattern expected."),
      Array_element_destructuring_pattern_expected: b(1181, 1, "Array_element_destructuring_pattern_expected_1181", "Array element destructuring pattern expected."),
      A_destructuring_declaration_must_have_an_initializer: b(1182, 1, "A_destructuring_declaration_must_have_an_initializer_1182", "A destructuring declaration must have an initializer."),
      An_implementation_cannot_be_declared_in_ambient_contexts: b(1183, 1, "An_implementation_cannot_be_declared_in_ambient_contexts_1183", "An implementation cannot be declared in ambient contexts."),
      Modifiers_cannot_appear_here: b(1184, 1, "Modifiers_cannot_appear_here_1184", "Modifiers cannot appear here."),
      Merge_conflict_marker_encountered: b(1185, 1, "Merge_conflict_marker_encountered_1185", "Merge conflict marker encountered."),
      A_rest_element_cannot_have_an_initializer: b(1186, 1, "A_rest_element_cannot_have_an_initializer_1186", "A rest element cannot have an initializer."),
      A_parameter_property_may_not_be_declared_using_a_binding_pattern: b(1187, 1, "A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187", "A parameter property may not be declared using a binding pattern."),
      Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement: b(1188, 1, "Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188", "Only a single variable declaration is allowed in a 'for...of' statement."),
      The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer: b(1189, 1, "The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189", "The variable declaration of a 'for...in' statement cannot have an initializer."),
      The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer: b(1190, 1, "The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190", "The variable declaration of a 'for...of' statement cannot have an initializer."),
      An_import_declaration_cannot_have_modifiers: b(1191, 1, "An_import_declaration_cannot_have_modifiers_1191", "An import declaration cannot have modifiers."),
      Module_0_has_no_default_export: b(1192, 1, "Module_0_has_no_default_export_1192", "Module '{0}' has no default export."),
      An_export_declaration_cannot_have_modifiers: b(1193, 1, "An_export_declaration_cannot_have_modifiers_1193", "An export declaration cannot have modifiers."),
      Export_declarations_are_not_permitted_in_a_namespace: b(1194, 1, "Export_declarations_are_not_permitted_in_a_namespace_1194", "Export declarations are not permitted in a namespace."),
      export_Asterisk_does_not_re_export_a_default: b(1195, 1, "export_Asterisk_does_not_re_export_a_default_1195", "'export *' does not re-export a default."),
      Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified: b(1196, 1, "Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196", "Catch clause variable type annotation must be 'any' or 'unknown' if specified."),
      Catch_clause_variable_cannot_have_an_initializer: b(1197, 1, "Catch_clause_variable_cannot_have_an_initializer_1197", "Catch clause variable cannot have an initializer."),
      An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive: b(1198, 1, "An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198", "An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),
      Unterminated_Unicode_escape_sequence: b(1199, 1, "Unterminated_Unicode_escape_sequence_1199", "Unterminated Unicode escape sequence."),
      Line_terminator_not_permitted_before_arrow: b(1200, 1, "Line_terminator_not_permitted_before_arrow_1200", "Line terminator not permitted before arrow."),
      Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead: b(1202, 1, "Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202", `Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),
      Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead: b(1203, 1, "Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203", "Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),
      Re_exporting_a_type_when_0_is_enabled_requires_using_export_type: b(1205, 1, "Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205", "Re-exporting a type when '{0}' is enabled requires using 'export type'."),
      Decorators_are_not_valid_here: b(1206, 1, "Decorators_are_not_valid_here_1206", "Decorators are not valid here."),
      Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name: b(1207, 1, "Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207", "Decorators cannot be applied to multiple get/set accessors of the same name."),
      Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0: b(1209, 1, "Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209", "Invalid optional chain from new expression. Did you mean to call '{0}()'?"),
      Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode: b(1210, 1, "Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210", "Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),
      A_class_declaration_without_the_default_modifier_must_have_a_name: b(1211, 1, "A_class_declaration_without_the_default_modifier_must_have_a_name_1211", "A class declaration without the 'default' modifier must have a name."),
      Identifier_expected_0_is_a_reserved_word_in_strict_mode: b(1212, 1, "Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212", "Identifier expected. '{0}' is a reserved word in strict mode."),
      Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode: b(1213, 1, "Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213", "Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),
      Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode: b(1214, 1, "Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214", "Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),
      Invalid_use_of_0_Modules_are_automatically_in_strict_mode: b(1215, 1, "Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215", "Invalid use of '{0}'. Modules are automatically in strict mode."),
      Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules: b(1216, 1, "Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216", "Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),
      Export_assignment_is_not_supported_when_module_flag_is_system: b(1218, 1, "Export_assignment_is_not_supported_when_module_flag_is_system_1218", "Export assignment is not supported when '--module' flag is 'system'."),
      Generators_are_not_allowed_in_an_ambient_context: b(1221, 1, "Generators_are_not_allowed_in_an_ambient_context_1221", "Generators are not allowed in an ambient context."),
      An_overload_signature_cannot_be_declared_as_a_generator: b(1222, 1, "An_overload_signature_cannot_be_declared_as_a_generator_1222", "An overload signature cannot be declared as a generator."),
      _0_tag_already_specified: b(1223, 1, "_0_tag_already_specified_1223", "'{0}' tag already specified."),
      Signature_0_must_be_a_type_predicate: b(1224, 1, "Signature_0_must_be_a_type_predicate_1224", "Signature '{0}' must be a type predicate."),
      Cannot_find_parameter_0: b(1225, 1, "Cannot_find_parameter_0_1225", "Cannot find parameter '{0}'."),
      Type_predicate_0_is_not_assignable_to_1: b(1226, 1, "Type_predicate_0_is_not_assignable_to_1_1226", "Type predicate '{0}' is not assignable to '{1}'."),
      Parameter_0_is_not_in_the_same_position_as_parameter_1: b(1227, 1, "Parameter_0_is_not_in_the_same_position_as_parameter_1_1227", "Parameter '{0}' is not in the same position as parameter '{1}'."),
      A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods: b(1228, 1, "A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228", "A type predicate is only allowed in return type position for functions and methods."),
      A_type_predicate_cannot_reference_a_rest_parameter: b(1229, 1, "A_type_predicate_cannot_reference_a_rest_parameter_1229", "A type predicate cannot reference a rest parameter."),
      A_type_predicate_cannot_reference_element_0_in_a_binding_pattern: b(1230, 1, "A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230", "A type predicate cannot reference element '{0}' in a binding pattern."),
      An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration: b(1231, 1, "An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231", "An export assignment must be at the top level of a file or module declaration."),
      An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module: b(1232, 1, "An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232", "An import declaration can only be used at the top level of a namespace or module."),
      An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module: b(1233, 1, "An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233", "An export declaration can only be used at the top level of a namespace or module."),
      An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file: b(1234, 1, "An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234", "An ambient module declaration is only allowed at the top level in a file."),
      A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module: b(1235, 1, "A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235", "A namespace declaration is only allowed at the top level of a namespace or module."),
      The_return_type_of_a_property_decorator_function_must_be_either_void_or_any: b(1236, 1, "The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236", "The return type of a property decorator function must be either 'void' or 'any'."),
      The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any: b(1237, 1, "The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237", "The return type of a parameter decorator function must be either 'void' or 'any'."),
      Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression: b(1238, 1, "Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238", "Unable to resolve signature of class decorator when called as an expression."),
      Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression: b(1239, 1, "Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239", "Unable to resolve signature of parameter decorator when called as an expression."),
      Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression: b(1240, 1, "Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240", "Unable to resolve signature of property decorator when called as an expression."),
      Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression: b(1241, 1, "Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241", "Unable to resolve signature of method decorator when called as an expression."),
      abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration: b(1242, 1, "abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242", "'abstract' modifier can only appear on a class, method, or property declaration."),
      _0_modifier_cannot_be_used_with_1_modifier: b(1243, 1, "_0_modifier_cannot_be_used_with_1_modifier_1243", "'{0}' modifier cannot be used with '{1}' modifier."),
      Abstract_methods_can_only_appear_within_an_abstract_class: b(1244, 1, "Abstract_methods_can_only_appear_within_an_abstract_class_1244", "Abstract methods can only appear within an abstract class."),
      Method_0_cannot_have_an_implementation_because_it_is_marked_abstract: b(1245, 1, "Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245", "Method '{0}' cannot have an implementation because it is marked abstract."),
      An_interface_property_cannot_have_an_initializer: b(1246, 1, "An_interface_property_cannot_have_an_initializer_1246", "An interface property cannot have an initializer."),
      A_type_literal_property_cannot_have_an_initializer: b(1247, 1, "A_type_literal_property_cannot_have_an_initializer_1247", "A type literal property cannot have an initializer."),
      A_class_member_cannot_have_the_0_keyword: b(1248, 1, "A_class_member_cannot_have_the_0_keyword_1248", "A class member cannot have the '{0}' keyword."),
      A_decorator_can_only_decorate_a_method_implementation_not_an_overload: b(1249, 1, "A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249", "A decorator can only decorate a method implementation, not an overload."),
      Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5: b(1250, 1, "Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250", "Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),
      Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode: b(1251, 1, "Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251", "Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),
      Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode: b(1252, 1, "Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252", "Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),
      Abstract_properties_can_only_appear_within_an_abstract_class: b(1253, 1, "Abstract_properties_can_only_appear_within_an_abstract_class_1253", "Abstract properties can only appear within an abstract class."),
      A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference: b(1254, 1, "A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254", "A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),
      A_definite_assignment_assertion_is_not_permitted_in_this_context: b(1255, 1, "A_definite_assignment_assertion_is_not_permitted_in_this_context_1255", "A definite assignment assertion '!' is not permitted in this context."),
      A_required_element_cannot_follow_an_optional_element: b(1257, 1, "A_required_element_cannot_follow_an_optional_element_1257", "A required element cannot follow an optional element."),
      A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration: b(1258, 1, "A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258", "A default export must be at the top level of a file or module declaration."),
      Module_0_can_only_be_default_imported_using_the_1_flag: b(1259, 1, "Module_0_can_only_be_default_imported_using_the_1_flag_1259", "Module '{0}' can only be default-imported using the '{1}' flag"),
      Keywords_cannot_contain_escape_characters: b(1260, 1, "Keywords_cannot_contain_escape_characters_1260", "Keywords cannot contain escape characters."),
      Already_included_file_name_0_differs_from_file_name_1_only_in_casing: b(1261, 1, "Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261", "Already included file name '{0}' differs from file name '{1}' only in casing."),
      Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module: b(1262, 1, "Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262", "Identifier expected. '{0}' is a reserved word at the top-level of a module."),
      Declarations_with_initializers_cannot_also_have_definite_assignment_assertions: b(1263, 1, "Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263", "Declarations with initializers cannot also have definite assignment assertions."),
      Declarations_with_definite_assignment_assertions_must_also_have_type_annotations: b(1264, 1, "Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264", "Declarations with definite assignment assertions must also have type annotations."),
      A_rest_element_cannot_follow_another_rest_element: b(1265, 1, "A_rest_element_cannot_follow_another_rest_element_1265", "A rest element cannot follow another rest element."),
      An_optional_element_cannot_follow_a_rest_element: b(1266, 1, "An_optional_element_cannot_follow_a_rest_element_1266", "An optional element cannot follow a rest element."),
      Property_0_cannot_have_an_initializer_because_it_is_marked_abstract: b(1267, 1, "Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267", "Property '{0}' cannot have an initializer because it is marked abstract."),
      An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type: b(1268, 1, "An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268", "An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),
      Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled: b(1269, 1, "Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269", "Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),
      Decorator_function_return_type_0_is_not_assignable_to_type_1: b(1270, 1, "Decorator_function_return_type_0_is_not_assignable_to_type_1_1270", "Decorator function return type '{0}' is not assignable to type '{1}'."),
      Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any: b(1271, 1, "Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271", "Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),
      A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled: b(1272, 1, "A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272", "A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),
      _0_modifier_cannot_appear_on_a_type_parameter: b(1273, 1, "_0_modifier_cannot_appear_on_a_type_parameter_1273", "'{0}' modifier cannot appear on a type parameter"),
      _0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias: b(1274, 1, "_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274", "'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),
      accessor_modifier_can_only_appear_on_a_property_declaration: b(1275, 1, "accessor_modifier_can_only_appear_on_a_property_declaration_1275", "'accessor' modifier can only appear on a property declaration."),
      An_accessor_property_cannot_be_declared_optional: b(1276, 1, "An_accessor_property_cannot_be_declared_optional_1276", "An 'accessor' property cannot be declared optional."),
      _0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class: b(1277, 1, "_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277", "'{0}' modifier can only appear on a type parameter of a function, method or class"),
      The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0: b(1278, 1, "The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278", "The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),
      The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0: b(1279, 1, "The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279", "The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),
      Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement: b(1280, 1, "Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280", "Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),
      Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead: b(1281, 1, "Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281", "Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),
      An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type: b(1282, 1, "An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282", "An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),
      An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration: b(1283, 1, "An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283", "An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),
      An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type: b(1284, 1, "An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284", "An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),
      An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration: b(1285, 1, "An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285", "An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),
      ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax: b(1286, 1, "ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_1286", "ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'."),
      A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled: b(1287, 1, "A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287", "A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),
      An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled: b(1288, 1, "An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288", "An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),
      _0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported: b(1289, 1, "_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289", "'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),
      _0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default: b(1290, 1, "_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290", "'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),
      _0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported: b(1291, 1, "_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291", "'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),
      _0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default: b(1292, 1, "_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292", "'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),
      ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve: b(1293, 1, "ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve_1293", "ECMAScript module syntax is not allowed in a CommonJS module when 'module' is set to 'preserve'."),
      This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled: b(1294, 1, "This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled_1294", "This syntax is not allowed when 'erasableSyntaxOnly' is enabled."),
      ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript: b(1295, 1, "ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjus_1295", "ECMAScript imports and exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'. Adjust the 'type' field in the nearest 'package.json' to make this file an ECMAScript module, or adjust your 'verbatimModuleSyntax', 'module', and 'moduleResolution' settings in TypeScript."),
      with_statements_are_not_allowed_in_an_async_function_block: b(1300, 1, "with_statements_are_not_allowed_in_an_async_function_block_1300", "'with' statements are not allowed in an async function block."),
      await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules: b(1308, 1, "await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308", "'await' expressions are only allowed within async functions and at the top levels of modules."),
      The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level: b(1309, 1, "The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309", "The current file is a CommonJS module and cannot use 'await' at the top level."),
      Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern: b(1312, 1, "Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312", "Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),
      The_body_of_an_if_statement_cannot_be_the_empty_statement: b(1313, 1, "The_body_of_an_if_statement_cannot_be_the_empty_statement_1313", "The body of an 'if' statement cannot be the empty statement."),
      Global_module_exports_may_only_appear_in_module_files: b(1314, 1, "Global_module_exports_may_only_appear_in_module_files_1314", "Global module exports may only appear in module files."),
      Global_module_exports_may_only_appear_in_declaration_files: b(1315, 1, "Global_module_exports_may_only_appear_in_declaration_files_1315", "Global module exports may only appear in declaration files."),
      Global_module_exports_may_only_appear_at_top_level: b(1316, 1, "Global_module_exports_may_only_appear_at_top_level_1316", "Global module exports may only appear at top level."),
      A_parameter_property_cannot_be_declared_using_a_rest_parameter: b(1317, 1, "A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317", "A parameter property cannot be declared using a rest parameter."),
      An_abstract_accessor_cannot_have_an_implementation: b(1318, 1, "An_abstract_accessor_cannot_have_an_implementation_1318", "An abstract accessor cannot have an implementation."),
      A_default_export_can_only_be_used_in_an_ECMAScript_style_module: b(1319, 1, "A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319", "A default export can only be used in an ECMAScript-style module."),
      Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member: b(1320, 1, "Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320", "Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),
      Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member: b(1321, 1, "Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321", "Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),
      Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member: b(1322, 1, "Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322", "Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),
      Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext: b(1323, 1, "Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323", "Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', 'node18', 'node20', or 'nodenext'."),
      Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve: b(1324, 1, "Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_1324", "Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', 'node18', 'node20', 'nodenext', or 'preserve'."),
      Argument_of_dynamic_import_cannot_be_spread_element: b(1325, 1, "Argument_of_dynamic_import_cannot_be_spread_element_1325", "Argument of dynamic import cannot be spread element."),
      This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments: b(1326, 1, "This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326", "This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),
      String_literal_with_double_quotes_expected: b(1327, 1, "String_literal_with_double_quotes_expected_1327", "String literal with double quotes expected."),
      Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal: b(1328, 1, "Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328", "Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),
      _0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0: b(1329, 1, "_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329", "'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),
      A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly: b(1330, 1, "A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330", "A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),
      A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly: b(1331, 1, "A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331", "A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),
      A_variable_whose_type_is_a_unique_symbol_type_must_be_const: b(1332, 1, "A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332", "A variable whose type is a 'unique symbol' type must be 'const'."),
      unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name: b(1333, 1, "unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333", "'unique symbol' types may not be used on a variable declaration with a binding name."),
      unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement: b(1334, 1, "unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334", "'unique symbol' types are only allowed on variables in a variable statement."),
      unique_symbol_types_are_not_allowed_here: b(1335, 1, "unique_symbol_types_are_not_allowed_here_1335", "'unique symbol' types are not allowed here."),
      An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead: b(1337, 1, "An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337", "An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),
      infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type: b(1338, 1, "infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338", "'infer' declarations are only permitted in the 'extends' clause of a conditional type."),
      Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here: b(1339, 1, "Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339", "Module '{0}' does not refer to a value, but is used as a value here."),
      Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0: b(1340, 1, "Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340", "Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),
      Class_constructor_may_not_be_an_accessor: b(1341, 1, "Class_constructor_may_not_be_an_accessor_1341", "Class constructor may not be an accessor."),
      The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext: b(1343, 1, "The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343", "The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', or 'nodenext'."),
      A_label_is_not_allowed_here: b(1344, 1, "A_label_is_not_allowed_here_1344", "'A label is not allowed here."),
      An_expression_of_type_void_cannot_be_tested_for_truthiness: b(1345, 1, "An_expression_of_type_void_cannot_be_tested_for_truthiness_1345", "An expression of type 'void' cannot be tested for truthiness."),
      This_parameter_is_not_allowed_with_use_strict_directive: b(1346, 1, "This_parameter_is_not_allowed_with_use_strict_directive_1346", "This parameter is not allowed with 'use strict' directive."),
      use_strict_directive_cannot_be_used_with_non_simple_parameter_list: b(1347, 1, "use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347", "'use strict' directive cannot be used with non-simple parameter list."),
      Non_simple_parameter_declared_here: b(1348, 1, "Non_simple_parameter_declared_here_1348", "Non-simple parameter declared here."),
      use_strict_directive_used_here: b(1349, 1, "use_strict_directive_used_here_1349", "'use strict' directive used here."),
      Print_the_final_configuration_instead_of_building: b(1350, 3, "Print_the_final_configuration_instead_of_building_1350", "Print the final configuration instead of building."),
      An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal: b(1351, 1, "An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351", "An identifier or keyword cannot immediately follow a numeric literal."),
      A_bigint_literal_cannot_use_exponential_notation: b(1352, 1, "A_bigint_literal_cannot_use_exponential_notation_1352", "A bigint literal cannot use exponential notation."),
      A_bigint_literal_must_be_an_integer: b(1353, 1, "A_bigint_literal_must_be_an_integer_1353", "A bigint literal must be an integer."),
      readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types: b(1354, 1, "readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354", "'readonly' type modifier is only permitted on array and tuple literal types."),
      A_const_assertion_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals: b(1355, 1, "A_const_assertion_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_o_1355", "A 'const' assertion can only be applied to references to enum members, or string, number, boolean, array, or object literals."),
      Did_you_mean_to_mark_this_function_as_async: b(1356, 1, "Did_you_mean_to_mark_this_function_as_async_1356", "Did you mean to mark this function as 'async'?"),
      An_enum_member_name_must_be_followed_by_a_or: b(1357, 1, "An_enum_member_name_must_be_followed_by_a_or_1357", "An enum member name must be followed by a ',', '=', or '}'."),
      Tagged_template_expressions_are_not_permitted_in_an_optional_chain: b(1358, 1, "Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358", "Tagged template expressions are not permitted in an optional chain."),
      Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here: b(1359, 1, "Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359", "Identifier expected. '{0}' is a reserved word that cannot be used here."),
      Type_0_does_not_satisfy_the_expected_type_1: b(1360, 1, "Type_0_does_not_satisfy_the_expected_type_1_1360", "Type '{0}' does not satisfy the expected type '{1}'."),
      _0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type: b(1361, 1, "_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361", "'{0}' cannot be used as a value because it was imported using 'import type'."),
      _0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type: b(1362, 1, "_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362", "'{0}' cannot be used as a value because it was exported using 'export type'."),
      A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both: b(1363, 1, "A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363", "A type-only import can specify a default import or named bindings, but not both."),
      Convert_to_type_only_export: b(1364, 3, "Convert_to_type_only_export_1364", "Convert to type-only export"),
      Convert_all_re_exported_types_to_type_only_exports: b(1365, 3, "Convert_all_re_exported_types_to_type_only_exports_1365", "Convert all re-exported types to type-only exports"),
      Split_into_two_separate_import_declarations: b(1366, 3, "Split_into_two_separate_import_declarations_1366", "Split into two separate import declarations"),
      Split_all_invalid_type_only_imports: b(1367, 3, "Split_all_invalid_type_only_imports_1367", "Split all invalid type-only imports"),
      Class_constructor_may_not_be_a_generator: b(1368, 1, "Class_constructor_may_not_be_a_generator_1368", "Class constructor may not be a generator."),
      Did_you_mean_0: b(1369, 3, "Did_you_mean_0_1369", "Did you mean '{0}'?"),
      await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module: b(1375, 1, "await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375", "'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),
      _0_was_imported_here: b(1376, 3, "_0_was_imported_here_1376", "'{0}' was imported here."),
      _0_was_exported_here: b(1377, 3, "_0_was_exported_here_1377", "'{0}' was exported here."),
      Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher: b(1378, 1, "Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378", "Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),
      An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type: b(1379, 1, "An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379", "An import alias cannot reference a declaration that was exported using 'export type'."),
      An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type: b(1380, 1, "An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380", "An import alias cannot reference a declaration that was imported using 'import type'."),
      Unexpected_token_Did_you_mean_or_rbrace: b(1381, 1, "Unexpected_token_Did_you_mean_or_rbrace_1381", "Unexpected token. Did you mean `{'}'}` or `&rbrace;`?"),
      Unexpected_token_Did_you_mean_or_gt: b(1382, 1, "Unexpected_token_Did_you_mean_or_gt_1382", "Unexpected token. Did you mean `{'>'}` or `&gt;`?"),
      Function_type_notation_must_be_parenthesized_when_used_in_a_union_type: b(1385, 1, "Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385", "Function type notation must be parenthesized when used in a union type."),
      Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type: b(1386, 1, "Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386", "Constructor type notation must be parenthesized when used in a union type."),
      Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type: b(1387, 1, "Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387", "Function type notation must be parenthesized when used in an intersection type."),
      Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type: b(1388, 1, "Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388", "Constructor type notation must be parenthesized when used in an intersection type."),
      _0_is_not_allowed_as_a_variable_declaration_name: b(1389, 1, "_0_is_not_allowed_as_a_variable_declaration_name_1389", "'{0}' is not allowed as a variable declaration name."),
      _0_is_not_allowed_as_a_parameter_name: b(1390, 1, "_0_is_not_allowed_as_a_parameter_name_1390", "'{0}' is not allowed as a parameter name."),
      An_import_alias_cannot_use_import_type: b(1392, 1, "An_import_alias_cannot_use_import_type_1392", "An import alias cannot use 'import type'"),
      Imported_via_0_from_file_1: b(1393, 3, "Imported_via_0_from_file_1_1393", "Imported via {0} from file '{1}'"),
      Imported_via_0_from_file_1_with_packageId_2: b(1394, 3, "Imported_via_0_from_file_1_with_packageId_2_1394", "Imported via {0} from file '{1}' with packageId '{2}'"),
      Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions: b(1395, 3, "Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395", "Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),
      Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions: b(1396, 3, "Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396", "Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),
      Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions: b(1397, 3, "Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397", "Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),
      Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions: b(1398, 3, "Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398", "Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),
      File_is_included_via_import_here: b(1399, 3, "File_is_included_via_import_here_1399", "File is included via import here."),
      Referenced_via_0_from_file_1: b(1400, 3, "Referenced_via_0_from_file_1_1400", "Referenced via '{0}' from file '{1}'"),
      File_is_included_via_reference_here: b(1401, 3, "File_is_included_via_reference_here_1401", "File is included via reference here."),
      Type_library_referenced_via_0_from_file_1: b(1402, 3, "Type_library_referenced_via_0_from_file_1_1402", "Type library referenced via '{0}' from file '{1}'"),
      Type_library_referenced_via_0_from_file_1_with_packageId_2: b(1403, 3, "Type_library_referenced_via_0_from_file_1_with_packageId_2_1403", "Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),
      File_is_included_via_type_library_reference_here: b(1404, 3, "File_is_included_via_type_library_reference_here_1404", "File is included via type library reference here."),
      Library_referenced_via_0_from_file_1: b(1405, 3, "Library_referenced_via_0_from_file_1_1405", "Library referenced via '{0}' from file '{1}'"),
      File_is_included_via_library_reference_here: b(1406, 3, "File_is_included_via_library_reference_here_1406", "File is included via library reference here."),
      Matched_by_include_pattern_0_in_1: b(1407, 3, "Matched_by_include_pattern_0_in_1_1407", "Matched by include pattern '{0}' in '{1}'"),
      File_is_matched_by_include_pattern_specified_here: b(1408, 3, "File_is_matched_by_include_pattern_specified_here_1408", "File is matched by include pattern specified here."),
      Part_of_files_list_in_tsconfig_json: b(1409, 3, "Part_of_files_list_in_tsconfig_json_1409", "Part of 'files' list in tsconfig.json"),
      File_is_matched_by_files_list_specified_here: b(1410, 3, "File_is_matched_by_files_list_specified_here_1410", "File is matched by 'files' list specified here."),
      Output_from_referenced_project_0_included_because_1_specified: b(1411, 3, "Output_from_referenced_project_0_included_because_1_specified_1411", "Output from referenced project '{0}' included because '{1}' specified"),
      Output_from_referenced_project_0_included_because_module_is_specified_as_none: b(1412, 3, "Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412", "Output from referenced project '{0}' included because '--module' is specified as 'none'"),
      File_is_output_from_referenced_project_specified_here: b(1413, 3, "File_is_output_from_referenced_project_specified_here_1413", "File is output from referenced project specified here."),
      Source_from_referenced_project_0_included_because_1_specified: b(1414, 3, "Source_from_referenced_project_0_included_because_1_specified_1414", "Source from referenced project '{0}' included because '{1}' specified"),
      Source_from_referenced_project_0_included_because_module_is_specified_as_none: b(1415, 3, "Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415", "Source from referenced project '{0}' included because '--module' is specified as 'none'"),
      File_is_source_from_referenced_project_specified_here: b(1416, 3, "File_is_source_from_referenced_project_specified_here_1416", "File is source from referenced project specified here."),
      Entry_point_of_type_library_0_specified_in_compilerOptions: b(1417, 3, "Entry_point_of_type_library_0_specified_in_compilerOptions_1417", "Entry point of type library '{0}' specified in compilerOptions"),
      Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1: b(1418, 3, "Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418", "Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),
      File_is_entry_point_of_type_library_specified_here: b(1419, 3, "File_is_entry_point_of_type_library_specified_here_1419", "File is entry point of type library specified here."),
      Entry_point_for_implicit_type_library_0: b(1420, 3, "Entry_point_for_implicit_type_library_0_1420", "Entry point for implicit type library '{0}'"),
      Entry_point_for_implicit_type_library_0_with_packageId_1: b(1421, 3, "Entry_point_for_implicit_type_library_0_with_packageId_1_1421", "Entry point for implicit type library '{0}' with packageId '{1}'"),
      Library_0_specified_in_compilerOptions: b(1422, 3, "Library_0_specified_in_compilerOptions_1422", "Library '{0}' specified in compilerOptions"),
      File_is_library_specified_here: b(1423, 3, "File_is_library_specified_here_1423", "File is library specified here."),
      Default_library: b(1424, 3, "Default_library_1424", "Default library"),
      Default_library_for_target_0: b(1425, 3, "Default_library_for_target_0_1425", "Default library for target '{0}'"),
      File_is_default_library_for_target_specified_here: b(1426, 3, "File_is_default_library_for_target_specified_here_1426", "File is default library for target specified here."),
      Root_file_specified_for_compilation: b(1427, 3, "Root_file_specified_for_compilation_1427", "Root file specified for compilation"),
      File_is_output_of_project_reference_source_0: b(1428, 3, "File_is_output_of_project_reference_source_0_1428", "File is output of project reference source '{0}'"),
      File_redirects_to_file_0: b(1429, 3, "File_redirects_to_file_0_1429", "File redirects to file '{0}'"),
      The_file_is_in_the_program_because_Colon: b(1430, 3, "The_file_is_in_the_program_because_Colon_1430", "The file is in the program because:"),
      for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module: b(1431, 1, "for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431", "'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),
      Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher: b(1432, 1, "Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432", "Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),
      Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters: b(1433, 1, "Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433", "Neither decorators nor modifiers may be applied to 'this' parameters."),
      Unexpected_keyword_or_identifier: b(1434, 1, "Unexpected_keyword_or_identifier_1434", "Unexpected keyword or identifier."),
      Unknown_keyword_or_identifier_Did_you_mean_0: b(1435, 1, "Unknown_keyword_or_identifier_Did_you_mean_0_1435", "Unknown keyword or identifier. Did you mean '{0}'?"),
      Decorators_must_precede_the_name_and_all_keywords_of_property_declarations: b(1436, 1, "Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436", "Decorators must precede the name and all keywords of property declarations."),
      Namespace_must_be_given_a_name: b(1437, 1, "Namespace_must_be_given_a_name_1437", "Namespace must be given a name."),
      Interface_must_be_given_a_name: b(1438, 1, "Interface_must_be_given_a_name_1438", "Interface must be given a name."),
      Type_alias_must_be_given_a_name: b(1439, 1, "Type_alias_must_be_given_a_name_1439", "Type alias must be given a name."),
      Variable_declaration_not_allowed_at_this_location: b(1440, 1, "Variable_declaration_not_allowed_at_this_location_1440", "Variable declaration not allowed at this location."),
      Cannot_start_a_function_call_in_a_type_annotation: b(1441, 1, "Cannot_start_a_function_call_in_a_type_annotation_1441", "Cannot start a function call in a type annotation."),
      Expected_for_property_initializer: b(1442, 1, "Expected_for_property_initializer_1442", "Expected '=' for property initializer."),
      Module_declaration_names_may_only_use_or_quoted_strings: b(1443, 1, "Module_declaration_names_may_only_use_or_quoted_strings_1443", `Module declaration names may only use ' or " quoted strings.`),
      _0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled: b(1448, 1, "_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448", "'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),
      Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed: b(1449, 3, "Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449", "Preserve unused imported values in the JavaScript output that would otherwise be removed."),
      Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments: b(1450, 3, "Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450", "Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),
      Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression: b(1451, 1, "Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451", "Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),
      resolution_mode_should_be_either_require_or_import: b(1453, 1, "resolution_mode_should_be_either_require_or_import_1453", "`resolution-mode` should be either `require` or `import`."),
      resolution_mode_can_only_be_set_for_type_only_imports: b(1454, 1, "resolution_mode_can_only_be_set_for_type_only_imports_1454", "`resolution-mode` can only be set for type-only imports."),
      resolution_mode_is_the_only_valid_key_for_type_import_assertions: b(1455, 1, "resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455", "`resolution-mode` is the only valid key for type import assertions."),
      Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require: b(1456, 1, "Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456", "Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),
      Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk: b(1457, 3, "Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457", "Matched by default include pattern '**/*'"),
      File_is_ECMAScript_module_because_0_has_field_type_with_value_module: b(1458, 3, "File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458", `File is ECMAScript module because '{0}' has field "type" with value "module"`),
      File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module: b(1459, 3, "File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459", `File is CommonJS module because '{0}' has field "type" whose value is not "module"`),
      File_is_CommonJS_module_because_0_does_not_have_field_type: b(1460, 3, "File_is_CommonJS_module_because_0_does_not_have_field_type_1460", `File is CommonJS module because '{0}' does not have field "type"`),
      File_is_CommonJS_module_because_package_json_was_not_found: b(1461, 3, "File_is_CommonJS_module_because_package_json_was_not_found_1461", "File is CommonJS module because 'package.json' was not found"),
      resolution_mode_is_the_only_valid_key_for_type_import_attributes: b(1463, 1, "resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463", "'resolution-mode' is the only valid key for type import attributes."),
      Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require: b(1464, 1, "Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464", "Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),
      The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output: b(1470, 1, "The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470", "The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),
      Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead: b(1471, 1, "Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471", "Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),
      catch_or_finally_expected: b(1472, 1, "catch_or_finally_expected_1472", "'catch' or 'finally' expected."),
      An_import_declaration_can_only_be_used_at_the_top_level_of_a_module: b(1473, 1, "An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473", "An import declaration can only be used at the top level of a module."),
      An_export_declaration_can_only_be_used_at_the_top_level_of_a_module: b(1474, 1, "An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474", "An export declaration can only be used at the top level of a module."),
      Control_what_method_is_used_to_detect_module_format_JS_files: b(1475, 3, "Control_what_method_is_used_to_detect_module_format_JS_files_1475", "Control what method is used to detect module-format JS files."),
      auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules: b(1476, 3, "auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476", '"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),
      An_instantiation_expression_cannot_be_followed_by_a_property_access: b(1477, 1, "An_instantiation_expression_cannot_be_followed_by_a_property_access_1477", "An instantiation expression cannot be followed by a property access."),
      Identifier_or_string_literal_expected: b(1478, 1, "Identifier_or_string_literal_expected_1478", "Identifier or string literal expected."),
      The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead: b(1479, 1, "The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479", `The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),
      To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module: b(1480, 3, "To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480", 'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),
      To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1: b(1481, 3, "To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481", `To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),
      To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0: b(1482, 3, "To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482", 'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),
      To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module: b(1483, 3, "To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483", 'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),
      _0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled: b(1484, 1, "_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484", "'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),
      _0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled: b(1485, 1, "_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485", "'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),
      Decorator_used_before_export_here: b(1486, 1, "Decorator_used_before_export_here_1486", "Decorator used before 'export' here."),
      Octal_escape_sequences_are_not_allowed_Use_the_syntax_0: b(1487, 1, "Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487", "Octal escape sequences are not allowed. Use the syntax '{0}'."),
      Escape_sequence_0_is_not_allowed: b(1488, 1, "Escape_sequence_0_is_not_allowed_1488", "Escape sequence '{0}' is not allowed."),
      Decimals_with_leading_zeros_are_not_allowed: b(1489, 1, "Decimals_with_leading_zeros_are_not_allowed_1489", "Decimals with leading zeros are not allowed."),
      File_appears_to_be_binary: b(1490, 1, "File_appears_to_be_binary_1490", "File appears to be binary."),
      _0_modifier_cannot_appear_on_a_using_declaration: b(1491, 1, "_0_modifier_cannot_appear_on_a_using_declaration_1491", "'{0}' modifier cannot appear on a 'using' declaration."),
      _0_declarations_may_not_have_binding_patterns: b(1492, 1, "_0_declarations_may_not_have_binding_patterns_1492", "'{0}' declarations may not have binding patterns."),
      The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration: b(1493, 1, "The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493", "The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),
      The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration: b(1494, 1, "The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494", "The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),
      _0_modifier_cannot_appear_on_an_await_using_declaration: b(1495, 1, "_0_modifier_cannot_appear_on_an_await_using_declaration_1495", "'{0}' modifier cannot appear on an 'await using' declaration."),
      Identifier_string_literal_or_number_literal_expected: b(1496, 1, "Identifier_string_literal_or_number_literal_expected_1496", "Identifier, string literal, or number literal expected."),
      Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator: b(1497, 1, "Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497", "Expression must be enclosed in parentheses to be used as a decorator."),
      Invalid_syntax_in_decorator: b(1498, 1, "Invalid_syntax_in_decorator_1498", "Invalid syntax in decorator."),
      Unknown_regular_expression_flag: b(1499, 1, "Unknown_regular_expression_flag_1499", "Unknown regular expression flag."),
      Duplicate_regular_expression_flag: b(1500, 1, "Duplicate_regular_expression_flag_1500", "Duplicate regular expression flag."),
      This_regular_expression_flag_is_only_available_when_targeting_0_or_later: b(1501, 1, "This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501", "This regular expression flag is only available when targeting '{0}' or later."),
      The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously: b(1502, 1, "The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502", "The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),
      Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later: b(1503, 1, "Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503", "Named capturing groups are only available when targeting 'ES2018' or later."),
      Subpattern_flags_must_be_present_when_there_is_a_minus_sign: b(1504, 1, "Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504", "Subpattern flags must be present when there is a minus sign."),
      Incomplete_quantifier_Digit_expected: b(1505, 1, "Incomplete_quantifier_Digit_expected_1505", "Incomplete quantifier. Digit expected."),
      Numbers_out_of_order_in_quantifier: b(1506, 1, "Numbers_out_of_order_in_quantifier_1506", "Numbers out of order in quantifier."),
      There_is_nothing_available_for_repetition: b(1507, 1, "There_is_nothing_available_for_repetition_1507", "There is nothing available for repetition."),
      Unexpected_0_Did_you_mean_to_escape_it_with_backslash: b(1508, 1, "Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508", "Unexpected '{0}'. Did you mean to escape it with backslash?"),
      This_regular_expression_flag_cannot_be_toggled_within_a_subpattern: b(1509, 1, "This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509", "This regular expression flag cannot be toggled within a subpattern."),
      k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets: b(1510, 1, "k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510", "'\\k' must be followed by a capturing group name enclosed in angle brackets."),
      q_is_only_available_inside_character_class: b(1511, 1, "q_is_only_available_inside_character_class_1511", "'\\q' is only available inside character class."),
      c_must_be_followed_by_an_ASCII_letter: b(1512, 1, "c_must_be_followed_by_an_ASCII_letter_1512", "'\\c' must be followed by an ASCII letter."),
      Undetermined_character_escape: b(1513, 1, "Undetermined_character_escape_1513", "Undetermined character escape."),
      Expected_a_capturing_group_name: b(1514, 1, "Expected_a_capturing_group_name_1514", "Expected a capturing group name."),
      Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other: b(1515, 1, "Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515", "Named capturing groups with the same name must be mutually exclusive to each other."),
      A_character_class_range_must_not_be_bounded_by_another_character_class: b(1516, 1, "A_character_class_range_must_not_be_bounded_by_another_character_class_1516", "A character class range must not be bounded by another character class."),
      Range_out_of_order_in_character_class: b(1517, 1, "Range_out_of_order_in_character_class_1517", "Range out of order in character class."),
      Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class: b(1518, 1, "Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518", "Anything that would possibly match more than a single character is invalid inside a negated character class."),
      Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead: b(1519, 1, "Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519", "Operators must not be mixed within a character class. Wrap it in a nested class instead."),
      Expected_a_class_set_operand: b(1520, 1, "Expected_a_class_set_operand_1520", "Expected a class set operand."),
      q_must_be_followed_by_string_alternatives_enclosed_in_braces: b(1521, 1, "q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521", "'\\q' must be followed by string alternatives enclosed in braces."),
      A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash: b(1522, 1, "A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522", "A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),
      Expected_a_Unicode_property_name: b(1523, 1, "Expected_a_Unicode_property_name_1523", "Expected a Unicode property name."),
      Unknown_Unicode_property_name: b(1524, 1, "Unknown_Unicode_property_name_1524", "Unknown Unicode property name."),
      Expected_a_Unicode_property_value: b(1525, 1, "Expected_a_Unicode_property_value_1525", "Expected a Unicode property value."),
      Unknown_Unicode_property_value: b(1526, 1, "Unknown_Unicode_property_value_1526", "Unknown Unicode property value."),
      Expected_a_Unicode_property_name_or_value: b(1527, 1, "Expected_a_Unicode_property_name_or_value_1527", "Expected a Unicode property name or value."),
      Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set: b(1528, 1, "Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528", "Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),
      Unknown_Unicode_property_name_or_value: b(1529, 1, "Unknown_Unicode_property_name_or_value_1529", "Unknown Unicode property name or value."),
      Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set: b(1530, 1, "Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530", "Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),
      _0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces: b(1531, 1, "_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531", "'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),
      There_is_no_capturing_group_named_0_in_this_regular_expression: b(1532, 1, "There_is_no_capturing_group_named_0_in_this_regular_expression_1532", "There is no capturing group named '{0}' in this regular expression."),
      This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression: b(1533, 1, "This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533", "This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),
      This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression: b(1534, 1, "This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534", "This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),
      This_character_cannot_be_escaped_in_a_regular_expression: b(1535, 1, "This_character_cannot_be_escaped_in_a_regular_expression_1535", "This character cannot be escaped in a regular expression."),
      Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead: b(1536, 1, "Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536", "Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),
      Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class: b(1537, 1, "Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537", "Decimal escape sequences and backreferences are not allowed in a character class."),
      Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set: b(1538, 1, "Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_se_1538", "Unicode escape sequences are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),
      A_bigint_literal_cannot_be_used_as_a_property_name: b(1539, 1, "A_bigint_literal_cannot_be_used_as_a_property_name_1539", "A 'bigint' literal cannot be used as a property name."),
      A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead: b(1540, 1, "A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_key_1540", "A 'namespace' declaration should not be declared using the 'module' keyword. Please use the 'namespace' keyword instead."),
      Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute: b(1541, 1, "Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribut_1541", "Type-only import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),
      Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute: b(1542, 1, "Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute_1542", "Type import of an ECMAScript module from a CommonJS module must have a 'resolution-mode' attribute."),
      Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0: b(1543, 1, "Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_mod_1543", `Importing a JSON file into an ECMAScript module requires a 'type: "json"' import attribute when 'module' is set to '{0}'.`),
      Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0: b(1544, 1, "Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0_1544", "Named imports from a JSON file into an ECMAScript module are not allowed when 'module' is set to '{0}'."),
      using_declarations_are_not_allowed_in_ambient_contexts: b(1545, 1, "using_declarations_are_not_allowed_in_ambient_contexts_1545", "'using' declarations are not allowed in ambient contexts."),
      await_using_declarations_are_not_allowed_in_ambient_contexts: b(1546, 1, "await_using_declarations_are_not_allowed_in_ambient_contexts_1546", "'await using' declarations are not allowed in ambient contexts."),
      using_declarations_are_not_allowed_in_case_or_default_clauses_unless_contained_within_a_block: b(1547, 1, "using_declarations_are_not_allowed_in_case_or_default_clauses_unless_contained_within_a_block_1547", "'using' declarations are not allowed in 'case' or 'default' clauses unless contained within a block."),
      await_using_declarations_are_not_allowed_in_case_or_default_clauses_unless_contained_within_a_block: b(1548, 1, "await_using_declarations_are_not_allowed_in_case_or_default_clauses_unless_contained_within_a_block_1548", "'await using' declarations are not allowed in 'case' or 'default' clauses unless contained within a block."),
      Ignore_the_tsconfig_found_and_build_with_commandline_options_and_files: b(1549, 3, "Ignore_the_tsconfig_found_and_build_with_commandline_options_and_files_1549", "Ignore the tsconfig found and build with commandline options and files."),
      The_types_of_0_are_incompatible_between_these_types: b(2200, 1, "The_types_of_0_are_incompatible_between_these_types_2200", "The types of '{0}' are incompatible between these types."),
      The_types_returned_by_0_are_incompatible_between_these_types: b(2201, 1, "The_types_returned_by_0_are_incompatible_between_these_types_2201", "The types returned by '{0}' are incompatible between these types."),
      Call_signature_return_types_0_and_1_are_incompatible: b(2202, 1, "Call_signature_return_types_0_and_1_are_incompatible_2202", "Call signature return types '{0}' and '{1}' are incompatible.", void 0, !0),
      Construct_signature_return_types_0_and_1_are_incompatible: b(2203, 1, "Construct_signature_return_types_0_and_1_are_incompatible_2203", "Construct signature return types '{0}' and '{1}' are incompatible.", void 0, !0),
      Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1: b(2204, 1, "Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204", "Call signatures with no arguments have incompatible return types '{0}' and '{1}'.", void 0, !0),
      Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1: b(2205, 1, "Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205", "Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.", void 0, !0),
      The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement: b(2206, 1, "The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206", "The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),
      The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement: b(2207, 1, "The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207", "The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),
      This_type_parameter_might_need_an_extends_0_constraint: b(2208, 1, "This_type_parameter_might_need_an_extends_0_constraint_2208", "This type parameter might need an `extends {0}` constraint."),
      The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate: b(2209, 1, "The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209", "The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),
      The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate: b(2210, 1, "The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210", "The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),
      Add_extends_constraint: b(2211, 3, "Add_extends_constraint_2211", "Add `extends` constraint."),
      Add_extends_constraint_to_all_type_parameters: b(2212, 3, "Add_extends_constraint_to_all_type_parameters_2212", "Add `extends` constraint to all type parameters"),
      Duplicate_identifier_0: b(2300, 1, "Duplicate_identifier_0_2300", "Duplicate identifier '{0}'."),
      Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor: b(2301, 1, "Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301", "Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),
      Static_members_cannot_reference_class_type_parameters: b(2302, 1, "Static_members_cannot_reference_class_type_parameters_2302", "Static members cannot reference class type parameters."),
      Circular_definition_of_import_alias_0: b(2303, 1, "Circular_definition_of_import_alias_0_2303", "Circular definition of import alias '{0}'."),
      Cannot_find_name_0: b(2304, 1, "Cannot_find_name_0_2304", "Cannot find name '{0}'."),
      Module_0_has_no_exported_member_1: b(2305, 1, "Module_0_has_no_exported_member_1_2305", "Module '{0}' has no exported member '{1}'."),
      File_0_is_not_a_module: b(2306, 1, "File_0_is_not_a_module_2306", "File '{0}' is not a module."),
      Cannot_find_module_0_or_its_corresponding_type_declarations: b(2307, 1, "Cannot_find_module_0_or_its_corresponding_type_declarations_2307", "Cannot find module '{0}' or its corresponding type declarations."),
      Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity: b(2308, 1, "Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308", "Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),
      An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements: b(2309, 1, "An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309", "An export assignment cannot be used in a module with other exported elements."),
      Type_0_recursively_references_itself_as_a_base_type: b(2310, 1, "Type_0_recursively_references_itself_as_a_base_type_2310", "Type '{0}' recursively references itself as a base type."),
      Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function: b(2311, 1, "Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311", "Cannot find name '{0}'. Did you mean to write this in an async function?"),
      An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members: b(2312, 1, "An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312", "An interface can only extend an object type or intersection of object types with statically known members."),
      Type_parameter_0_has_a_circular_constraint: b(2313, 1, "Type_parameter_0_has_a_circular_constraint_2313", "Type parameter '{0}' has a circular constraint."),
      Generic_type_0_requires_1_type_argument_s: b(2314, 1, "Generic_type_0_requires_1_type_argument_s_2314", "Generic type '{0}' requires {1} type argument(s)."),
      Type_0_is_not_generic: b(2315, 1, "Type_0_is_not_generic_2315", "Type '{0}' is not generic."),
      Global_type_0_must_be_a_class_or_interface_type: b(2316, 1, "Global_type_0_must_be_a_class_or_interface_type_2316", "Global type '{0}' must be a class or interface type."),
      Global_type_0_must_have_1_type_parameter_s: b(2317, 1, "Global_type_0_must_have_1_type_parameter_s_2317", "Global type '{0}' must have {1} type parameter(s)."),
      Cannot_find_global_type_0: b(2318, 1, "Cannot_find_global_type_0_2318", "Cannot find global type '{0}'."),
      Named_property_0_of_types_1_and_2_are_not_identical: b(2319, 1, "Named_property_0_of_types_1_and_2_are_not_identical_2319", "Named property '{0}' of types '{1}' and '{2}' are not identical."),
      Interface_0_cannot_simultaneously_extend_types_1_and_2: b(2320, 1, "Interface_0_cannot_simultaneously_extend_types_1_and_2_2320", "Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),
      Excessive_stack_depth_comparing_types_0_and_1: b(2321, 1, "Excessive_stack_depth_comparing_types_0_and_1_2321", "Excessive stack depth comparing types '{0}' and '{1}'."),
      Type_0_is_not_assignable_to_type_1: b(2322, 1, "Type_0_is_not_assignable_to_type_1_2322", "Type '{0}' is not assignable to type '{1}'."),
      Cannot_redeclare_exported_variable_0: b(2323, 1, "Cannot_redeclare_exported_variable_0_2323", "Cannot redeclare exported variable '{0}'."),
      Property_0_is_missing_in_type_1: b(2324, 1, "Property_0_is_missing_in_type_1_2324", "Property '{0}' is missing in type '{1}'."),
      Property_0_is_private_in_type_1_but_not_in_type_2: b(2325, 1, "Property_0_is_private_in_type_1_but_not_in_type_2_2325", "Property '{0}' is private in type '{1}' but not in type '{2}'."),
      Types_of_property_0_are_incompatible: b(2326, 1, "Types_of_property_0_are_incompatible_2326", "Types of property '{0}' are incompatible."),
      Property_0_is_optional_in_type_1_but_required_in_type_2: b(2327, 1, "Property_0_is_optional_in_type_1_but_required_in_type_2_2327", "Property '{0}' is optional in type '{1}' but required in type '{2}'."),
      Types_of_parameters_0_and_1_are_incompatible: b(2328, 1, "Types_of_parameters_0_and_1_are_incompatible_2328", "Types of parameters '{0}' and '{1}' are incompatible."),
      Index_signature_for_type_0_is_missing_in_type_1: b(2329, 1, "Index_signature_for_type_0_is_missing_in_type_1_2329", "Index signature for type '{0}' is missing in type '{1}'."),
      _0_and_1_index_signatures_are_incompatible: b(2330, 1, "_0_and_1_index_signatures_are_incompatible_2330", "'{0}' and '{1}' index signatures are incompatible."),
      this_cannot_be_referenced_in_a_module_or_namespace_body: b(2331, 1, "this_cannot_be_referenced_in_a_module_or_namespace_body_2331", "'this' cannot be referenced in a module or namespace body."),
      this_cannot_be_referenced_in_current_location: b(2332, 1, "this_cannot_be_referenced_in_current_location_2332", "'this' cannot be referenced in current location."),
      this_cannot_be_referenced_in_a_static_property_initializer: b(2334, 1, "this_cannot_be_referenced_in_a_static_property_initializer_2334", "'this' cannot be referenced in a static property initializer."),
      super_can_only_be_referenced_in_a_derived_class: b(2335, 1, "super_can_only_be_referenced_in_a_derived_class_2335", "'super' can only be referenced in a derived class."),
      super_cannot_be_referenced_in_constructor_arguments: b(2336, 1, "super_cannot_be_referenced_in_constructor_arguments_2336", "'super' cannot be referenced in constructor arguments."),
      Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors: b(2337, 1, "Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337", "Super calls are not permitted outside constructors or in nested functions inside constructors."),
      super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class: b(2338, 1, "super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338", "'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),
      Property_0_does_not_exist_on_type_1: b(2339, 1, "Property_0_does_not_exist_on_type_1_2339", "Property '{0}' does not exist on type '{1}'."),
      Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword: b(2340, 1, "Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340", "Only public and protected methods of the base class are accessible via the 'super' keyword."),
      Property_0_is_private_and_only_accessible_within_class_1: b(2341, 1, "Property_0_is_private_and_only_accessible_within_class_1_2341", "Property '{0}' is private and only accessible within class '{1}'."),
      This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0: b(2343, 1, "This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343", "This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),
      Type_0_does_not_satisfy_the_constraint_1: b(2344, 1, "Type_0_does_not_satisfy_the_constraint_1_2344", "Type '{0}' does not satisfy the constraint '{1}'."),
      Argument_of_type_0_is_not_assignable_to_parameter_of_type_1: b(2345, 1, "Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345", "Argument of type '{0}' is not assignable to parameter of type '{1}'."),
      Call_target_does_not_contain_any_signatures: b(2346, 1, "Call_target_does_not_contain_any_signatures_2346", "Call target does not contain any signatures."),
      Untyped_function_calls_may_not_accept_type_arguments: b(2347, 1, "Untyped_function_calls_may_not_accept_type_arguments_2347", "Untyped function calls may not accept type arguments."),
      Value_of_type_0_is_not_callable_Did_you_mean_to_include_new: b(2348, 1, "Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348", "Value of type '{0}' is not callable. Did you mean to include 'new'?"),
      This_expression_is_not_callable: b(2349, 1, "This_expression_is_not_callable_2349", "This expression is not callable."),
      Only_a_void_function_can_be_called_with_the_new_keyword: b(2350, 1, "Only_a_void_function_can_be_called_with_the_new_keyword_2350", "Only a void function can be called with the 'new' keyword."),
      This_expression_is_not_constructable: b(2351, 1, "This_expression_is_not_constructable_2351", "This expression is not constructable."),
      Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first: b(2352, 1, "Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352", "Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),
      Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1: b(2353, 1, "Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353", "Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),
      This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found: b(2354, 1, "This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354", "This syntax requires an imported helper but module '{0}' cannot be found."),
      A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value: b(2355, 1, "A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355", "A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),
      An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type: b(2356, 1, "An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356", "An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),
      The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access: b(2357, 1, "The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357", "The operand of an increment or decrement operator must be a variable or a property access."),
      The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter: b(2358, 1, "The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358", "The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),
      The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method: b(2359, 1, "The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359", "The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),
      The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type: b(2362, 1, "The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362", "The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),
      The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type: b(2363, 1, "The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363", "The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),
      The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access: b(2364, 1, "The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364", "The left-hand side of an assignment expression must be a variable or a property access."),
      Operator_0_cannot_be_applied_to_types_1_and_2: b(2365, 1, "Operator_0_cannot_be_applied_to_types_1_and_2_2365", "Operator '{0}' cannot be applied to types '{1}' and '{2}'."),
      Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined: b(2366, 1, "Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366", "Function lacks ending return statement and return type does not include 'undefined'."),
      This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap: b(2367, 1, "This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367", "This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),
      Type_parameter_name_cannot_be_0: b(2368, 1, "Type_parameter_name_cannot_be_0_2368", "Type parameter name cannot be '{0}'."),
      A_parameter_property_is_only_allowed_in_a_constructor_implementation: b(2369, 1, "A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369", "A parameter property is only allowed in a constructor implementation."),
      A_rest_parameter_must_be_of_an_array_type: b(2370, 1, "A_rest_parameter_must_be_of_an_array_type_2370", "A rest parameter must be of an array type."),
      A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation: b(2371, 1, "A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371", "A parameter initializer is only allowed in a function or constructor implementation."),
      Parameter_0_cannot_reference_itself: b(2372, 1, "Parameter_0_cannot_reference_itself_2372", "Parameter '{0}' cannot reference itself."),
      Parameter_0_cannot_reference_identifier_1_declared_after_it: b(2373, 1, "Parameter_0_cannot_reference_identifier_1_declared_after_it_2373", "Parameter '{0}' cannot reference identifier '{1}' declared after it."),
      Duplicate_index_signature_for_type_0: b(2374, 1, "Duplicate_index_signature_for_type_0_2374", "Duplicate index signature for type '{0}'."),
      Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties: b(2375, 1, "Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375", "Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),
      A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers: b(2376, 1, "A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376", "A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),
      Constructors_for_derived_classes_must_contain_a_super_call: b(2377, 1, "Constructors_for_derived_classes_must_contain_a_super_call_2377", "Constructors for derived classes must contain a 'super' call."),
      A_get_accessor_must_return_a_value: b(2378, 1, "A_get_accessor_must_return_a_value_2378", "A 'get' accessor must return a value."),
      Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties: b(2379, 1, "Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379", "Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),
      Overload_signatures_must_all_be_exported_or_non_exported: b(2383, 1, "Overload_signatures_must_all_be_exported_or_non_exported_2383", "Overload signatures must all be exported or non-exported."),
      Overload_signatures_must_all_be_ambient_or_non_ambient: b(2384, 1, "Overload_signatures_must_all_be_ambient_or_non_ambient_2384", "Overload signatures must all be ambient or non-ambient."),
      Overload_signatures_must_all_be_public_private_or_protected: b(2385, 1, "Overload_signatures_must_all_be_public_private_or_protected_2385", "Overload signatures must all be public, private or protected."),
      Overload_signatures_must_all_be_optional_or_required: b(2386, 1, "Overload_signatures_must_all_be_optional_or_required_2386", "Overload signatures must all be optional or required."),
      Function_overload_must_be_static: b(2387, 1, "Function_overload_must_be_static_2387", "Function overload must be static."),
      Function_overload_must_not_be_static: b(2388, 1, "Function_overload_must_not_be_static_2388", "Function overload must not be static."),
      Function_implementation_name_must_be_0: b(2389, 1, "Function_implementation_name_must_be_0_2389", "Function implementation name must be '{0}'."),
      Constructor_implementation_is_missing: b(2390, 1, "Constructor_implementation_is_missing_2390", "Constructor implementation is missing."),
      Function_implementation_is_missing_or_not_immediately_following_the_declaration: b(2391, 1, "Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391", "Function implementation is missing or not immediately following the declaration."),
      Multiple_constructor_implementations_are_not_allowed: b(2392, 1, "Multiple_constructor_implementations_are_not_allowed_2392", "Multiple constructor implementations are not allowed."),
      Duplicate_function_implementation: b(2393, 1, "Duplicate_function_implementation_2393", "Duplicate function implementation."),
      This_overload_signature_is_not_compatible_with_its_implementation_signature: b(2394, 1, "This_overload_signature_is_not_compatible_with_its_implementation_signature_2394", "This overload signature is not compatible with its implementation signature."),
      Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local: b(2395, 1, "Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395", "Individual declarations in merged declaration '{0}' must be all exported or all local."),
      Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters: b(2396, 1, "Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396", "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),
      Declaration_name_conflicts_with_built_in_global_identifier_0: b(2397, 1, "Declaration_name_conflicts_with_built_in_global_identifier_0_2397", "Declaration name conflicts with built-in global identifier '{0}'."),
      constructor_cannot_be_used_as_a_parameter_property_name: b(2398, 1, "constructor_cannot_be_used_as_a_parameter_property_name_2398", "'constructor' cannot be used as a parameter property name."),
      Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference: b(2399, 1, "Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399", "Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),
      Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference: b(2400, 1, "Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400", "Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),
      A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers: b(2401, 1, "A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401", "A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),
      Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference: b(2402, 1, "Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402", "Expression resolves to '_super' that compiler uses to capture base class reference."),
      Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2: b(2403, 1, "Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403", "Subsequent variable declarations must have the same type.  Variable '{0}' must be of type '{1}', but here has type '{2}'."),
      The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation: b(2404, 1, "The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404", "The left-hand side of a 'for...in' statement cannot use a type annotation."),
      The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any: b(2405, 1, "The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405", "The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),
      The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access: b(2406, 1, "The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406", "The left-hand side of a 'for...in' statement must be a variable or a property access."),
      The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0: b(2407, 1, "The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407", "The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),
      Setters_cannot_return_a_value: b(2408, 1, "Setters_cannot_return_a_value_2408", "Setters cannot return a value."),
      Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class: b(2409, 1, "Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409", "Return type of constructor signature must be assignable to the instance type of the class."),
      The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any: b(2410, 1, "The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410", "The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),
      Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target: b(2412, 1, "Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412", "Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),
      Property_0_of_type_1_is_not_assignable_to_2_index_type_3: b(2411, 1, "Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411", "Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),
      _0_index_type_1_is_not_assignable_to_2_index_type_3: b(2413, 1, "_0_index_type_1_is_not_assignable_to_2_index_type_3_2413", "'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),
      Class_name_cannot_be_0: b(2414, 1, "Class_name_cannot_be_0_2414", "Class name cannot be '{0}'."),
      Class_0_incorrectly_extends_base_class_1: b(2415, 1, "Class_0_incorrectly_extends_base_class_1_2415", "Class '{0}' incorrectly extends base class '{1}'."),
      Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2: b(2416, 1, "Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416", "Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),
      Class_static_side_0_incorrectly_extends_base_class_static_side_1: b(2417, 1, "Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417", "Class static side '{0}' incorrectly extends base class static side '{1}'."),
      Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1: b(2418, 1, "Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418", "Type of computed property's value is '{0}', which is not assignable to type '{1}'."),
      Types_of_construct_signatures_are_incompatible: b(2419, 1, "Types_of_construct_signatures_are_incompatible_2419", "Types of construct signatures are incompatible."),
      Class_0_incorrectly_implements_interface_1: b(2420, 1, "Class_0_incorrectly_implements_interface_1_2420", "Class '{0}' incorrectly implements interface '{1}'."),
      A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members: b(2422, 1, "A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422", "A class can only implement an object type or intersection of object types with statically known members."),
      Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor: b(2423, 1, "Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423", "Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),
      Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function: b(2425, 1, "Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425", "Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),
      Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function: b(2426, 1, "Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426", "Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),
      Interface_name_cannot_be_0: b(2427, 1, "Interface_name_cannot_be_0_2427", "Interface name cannot be '{0}'."),
      All_declarations_of_0_must_have_identical_type_parameters: b(2428, 1, "All_declarations_of_0_must_have_identical_type_parameters_2428", "All declarations of '{0}' must have identical type parameters."),
      Interface_0_incorrectly_extends_interface_1: b(2430, 1, "Interface_0_incorrectly_extends_interface_1_2430", "Interface '{0}' incorrectly extends interface '{1}'."),
      Enum_name_cannot_be_0: b(2431, 1, "Enum_name_cannot_be_0_2431", "Enum name cannot be '{0}'."),
      In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element: b(2432, 1, "In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432", "In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),
      A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged: b(2433, 1, "A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433", "A namespace declaration cannot be in a different file from a class or function with which it is merged."),
      A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged: b(2434, 1, "A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434", "A namespace declaration cannot be located prior to a class or function with which it is merged."),
      Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces: b(2435, 1, "Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435", "Ambient modules cannot be nested in other modules or namespaces."),
      Ambient_module_declaration_cannot_specify_relative_module_name: b(2436, 1, "Ambient_module_declaration_cannot_specify_relative_module_name_2436", "Ambient module declaration cannot specify relative module name."),
      Module_0_is_hidden_by_a_local_declaration_with_the_same_name: b(2437, 1, "Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437", "Module '{0}' is hidden by a local declaration with the same name."),
      Import_name_cannot_be_0: b(2438, 1, "Import_name_cannot_be_0_2438", "Import name cannot be '{0}'."),
      Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name: b(2439, 1, "Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439", "Import or export declaration in an ambient module declaration cannot reference module through relative module name."),
      Import_declaration_conflicts_with_local_declaration_of_0: b(2440, 1, "Import_declaration_conflicts_with_local_declaration_of_0_2440", "Import declaration conflicts with local declaration of '{0}'."),
      Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module: b(2441, 1, "Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441", "Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),
      Types_have_separate_declarations_of_a_private_property_0: b(2442, 1, "Types_have_separate_declarations_of_a_private_property_0_2442", "Types have separate declarations of a private property '{0}'."),
      Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2: b(2443, 1, "Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443", "Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),
      Property_0_is_protected_in_type_1_but_public_in_type_2: b(2444, 1, "Property_0_is_protected_in_type_1_but_public_in_type_2_2444", "Property '{0}' is protected in type '{1}' but public in type '{2}'."),
      Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses: b(2445, 1, "Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445", "Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),
      Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2: b(2446, 1, "Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446", "Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),
      The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead: b(2447, 1, "The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447", "The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),
      Block_scoped_variable_0_used_before_its_declaration: b(2448, 1, "Block_scoped_variable_0_used_before_its_declaration_2448", "Block-scoped variable '{0}' used before its declaration."),
      Class_0_used_before_its_declaration: b(2449, 1, "Class_0_used_before_its_declaration_2449", "Class '{0}' used before its declaration."),
      Enum_0_used_before_its_declaration: b(2450, 1, "Enum_0_used_before_its_declaration_2450", "Enum '{0}' used before its declaration."),
      Cannot_redeclare_block_scoped_variable_0: b(2451, 1, "Cannot_redeclare_block_scoped_variable_0_2451", "Cannot redeclare block-scoped variable '{0}'."),
      An_enum_member_cannot_have_a_numeric_name: b(2452, 1, "An_enum_member_cannot_have_a_numeric_name_2452", "An enum member cannot have a numeric name."),
      Variable_0_is_used_before_being_assigned: b(2454, 1, "Variable_0_is_used_before_being_assigned_2454", "Variable '{0}' is used before being assigned."),
      Type_alias_0_circularly_references_itself: b(2456, 1, "Type_alias_0_circularly_references_itself_2456", "Type alias '{0}' circularly references itself."),
      Type_alias_name_cannot_be_0: b(2457, 1, "Type_alias_name_cannot_be_0_2457", "Type alias name cannot be '{0}'."),
      An_AMD_module_cannot_have_multiple_name_assignments: b(2458, 1, "An_AMD_module_cannot_have_multiple_name_assignments_2458", "An AMD module cannot have multiple name assignments."),
      Module_0_declares_1_locally_but_it_is_not_exported: b(2459, 1, "Module_0_declares_1_locally_but_it_is_not_exported_2459", "Module '{0}' declares '{1}' locally, but it is not exported."),
      Module_0_declares_1_locally_but_it_is_exported_as_2: b(2460, 1, "Module_0_declares_1_locally_but_it_is_exported_as_2_2460", "Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),
      Type_0_is_not_an_array_type: b(2461, 1, "Type_0_is_not_an_array_type_2461", "Type '{0}' is not an array type."),
      A_rest_element_must_be_last_in_a_destructuring_pattern: b(2462, 1, "A_rest_element_must_be_last_in_a_destructuring_pattern_2462", "A rest element must be last in a destructuring pattern."),
      A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature: b(2463, 1, "A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463", "A binding pattern parameter cannot be optional in an implementation signature."),
      A_computed_property_name_must_be_of_type_string_number_symbol_or_any: b(2464, 1, "A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464", "A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),
      this_cannot_be_referenced_in_a_computed_property_name: b(2465, 1, "this_cannot_be_referenced_in_a_computed_property_name_2465", "'this' cannot be referenced in a computed property name."),
      super_cannot_be_referenced_in_a_computed_property_name: b(2466, 1, "super_cannot_be_referenced_in_a_computed_property_name_2466", "'super' cannot be referenced in a computed property name."),
      A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type: b(2467, 1, "A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467", "A computed property name cannot reference a type parameter from its containing type."),
      Cannot_find_global_value_0: b(2468, 1, "Cannot_find_global_value_0_2468", "Cannot find global value '{0}'."),
      The_0_operator_cannot_be_applied_to_type_symbol: b(2469, 1, "The_0_operator_cannot_be_applied_to_type_symbol_2469", "The '{0}' operator cannot be applied to type 'symbol'."),
      Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher: b(2472, 1, "Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472", "Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),
      Enum_declarations_must_all_be_const_or_non_const: b(2473, 1, "Enum_declarations_must_all_be_const_or_non_const_2473", "Enum declarations must all be const or non-const."),
      const_enum_member_initializers_must_be_constant_expressions: b(2474, 1, "const_enum_member_initializers_must_be_constant_expressions_2474", "const enum member initializers must be constant expressions."),
      const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query: b(2475, 1, "const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475", "'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),
      A_const_enum_member_can_only_be_accessed_using_a_string_literal: b(2476, 1, "A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476", "A const enum member can only be accessed using a string literal."),
      const_enum_member_initializer_was_evaluated_to_a_non_finite_value: b(2477, 1, "const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477", "'const' enum member initializer was evaluated to a non-finite value."),
      const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN: b(2478, 1, "const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478", "'const' enum member initializer was evaluated to disallowed value 'NaN'."),
      let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations: b(2480, 1, "let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480", "'let' is not allowed to be used as a name in 'let' or 'const' declarations."),
      Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1: b(2481, 1, "Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481", "Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),
      The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation: b(2483, 1, "The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483", "The left-hand side of a 'for...of' statement cannot use a type annotation."),
      Export_declaration_conflicts_with_exported_declaration_of_0: b(2484, 1, "Export_declaration_conflicts_with_exported_declaration_of_0_2484", "Export declaration conflicts with exported declaration of '{0}'."),
      The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access: b(2487, 1, "The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487", "The left-hand side of a 'for...of' statement must be a variable or a property access."),
      Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator: b(2488, 1, "Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488", "Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),
      An_iterator_must_have_a_next_method: b(2489, 1, "An_iterator_must_have_a_next_method_2489", "An iterator must have a 'next()' method."),
      The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property: b(2490, 1, "The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490", "The type returned by the '{0}()' method of an iterator must have a 'value' property."),
      The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern: b(2491, 1, "The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491", "The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),
      Cannot_redeclare_identifier_0_in_catch_clause: b(2492, 1, "Cannot_redeclare_identifier_0_in_catch_clause_2492", "Cannot redeclare identifier '{0}' in catch clause."),
      Tuple_type_0_of_length_1_has_no_element_at_index_2: b(2493, 1, "Tuple_type_0_of_length_1_has_no_element_at_index_2_2493", "Tuple type '{0}' of length '{1}' has no element at index '{2}'."),
      Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher: b(2494, 1, "Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494", "Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),
      Type_0_is_not_an_array_type_or_a_string_type: b(2495, 1, "Type_0_is_not_an_array_type_or_a_string_type_2495", "Type '{0}' is not an array type or a string type."),
      The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression: b(2496, 1, "The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496", "The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),
      This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export: b(2497, 1, "This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497", "This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),
      Module_0_uses_export_and_cannot_be_used_with_export_Asterisk: b(2498, 1, "Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498", "Module '{0}' uses 'export =' and cannot be used with 'export *'."),
      An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments: b(2499, 1, "An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499", "An interface can only extend an identifier/qualified-name with optional type arguments."),
      A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments: b(2500, 1, "A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500", "A class can only implement an identifier/qualified-name with optional type arguments."),
      A_rest_element_cannot_contain_a_binding_pattern: b(2501, 1, "A_rest_element_cannot_contain_a_binding_pattern_2501", "A rest element cannot contain a binding pattern."),
      _0_is_referenced_directly_or_indirectly_in_its_own_type_annotation: b(2502, 1, "_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502", "'{0}' is referenced directly or indirectly in its own type annotation."),
      Cannot_find_namespace_0: b(2503, 1, "Cannot_find_namespace_0_2503", "Cannot find namespace '{0}'."),
      Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator: b(2504, 1, "Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504", "Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),
      A_generator_cannot_have_a_void_type_annotation: b(2505, 1, "A_generator_cannot_have_a_void_type_annotation_2505", "A generator cannot have a 'void' type annotation."),
      _0_is_referenced_directly_or_indirectly_in_its_own_base_expression: b(2506, 1, "_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506", "'{0}' is referenced directly or indirectly in its own base expression."),
      Type_0_is_not_a_constructor_function_type: b(2507, 1, "Type_0_is_not_a_constructor_function_type_2507", "Type '{0}' is not a constructor function type."),
      No_base_constructor_has_the_specified_number_of_type_arguments: b(2508, 1, "No_base_constructor_has_the_specified_number_of_type_arguments_2508", "No base constructor has the specified number of type arguments."),
      Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members: b(2509, 1, "Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509", "Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),
      Base_constructors_must_all_have_the_same_return_type: b(2510, 1, "Base_constructors_must_all_have_the_same_return_type_2510", "Base constructors must all have the same return type."),
      Cannot_create_an_instance_of_an_abstract_class: b(2511, 1, "Cannot_create_an_instance_of_an_abstract_class_2511", "Cannot create an instance of an abstract class."),
      Overload_signatures_must_all_be_abstract_or_non_abstract: b(2512, 1, "Overload_signatures_must_all_be_abstract_or_non_abstract_2512", "Overload signatures must all be abstract or non-abstract."),
      Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression: b(2513, 1, "Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513", "Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),
      A_tuple_type_cannot_be_indexed_with_a_negative_value: b(2514, 1, "A_tuple_type_cannot_be_indexed_with_a_negative_value_2514", "A tuple type cannot be indexed with a negative value."),
      Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2: b(2515, 1, "Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515", "Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),
      All_declarations_of_an_abstract_method_must_be_consecutive: b(2516, 1, "All_declarations_of_an_abstract_method_must_be_consecutive_2516", "All declarations of an abstract method must be consecutive."),
      Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type: b(2517, 1, "Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517", "Cannot assign an abstract constructor type to a non-abstract constructor type."),
      A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard: b(2518, 1, "A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518", "A 'this'-based type guard is not compatible with a parameter-based type guard."),
      An_async_iterator_must_have_a_next_method: b(2519, 1, "An_async_iterator_must_have_a_next_method_2519", "An async iterator must have a 'next()' method."),
      Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions: b(2520, 1, "Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520", "Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),
      The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method: b(2522, 1, "The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522", "The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),
      yield_expressions_cannot_be_used_in_a_parameter_initializer: b(2523, 1, "yield_expressions_cannot_be_used_in_a_parameter_initializer_2523", "'yield' expressions cannot be used in a parameter initializer."),
      await_expressions_cannot_be_used_in_a_parameter_initializer: b(2524, 1, "await_expressions_cannot_be_used_in_a_parameter_initializer_2524", "'await' expressions cannot be used in a parameter initializer."),
      A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface: b(2526, 1, "A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526", "A 'this' type is available only in a non-static member of a class or interface."),
      The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary: b(2527, 1, "The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527", "The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),
      A_module_cannot_have_multiple_default_exports: b(2528, 1, "A_module_cannot_have_multiple_default_exports_2528", "A module cannot have multiple default exports."),
      Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions: b(2529, 1, "Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529", "Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),
      Property_0_is_incompatible_with_index_signature: b(2530, 1, "Property_0_is_incompatible_with_index_signature_2530", "Property '{0}' is incompatible with index signature."),
      Object_is_possibly_null: b(2531, 1, "Object_is_possibly_null_2531", "Object is possibly 'null'."),
      Object_is_possibly_undefined: b(2532, 1, "Object_is_possibly_undefined_2532", "Object is possibly 'undefined'."),
      Object_is_possibly_null_or_undefined: b(2533, 1, "Object_is_possibly_null_or_undefined_2533", "Object is possibly 'null' or 'undefined'."),
      A_function_returning_never_cannot_have_a_reachable_end_point: b(2534, 1, "A_function_returning_never_cannot_have_a_reachable_end_point_2534", "A function returning 'never' cannot have a reachable end point."),
      Type_0_cannot_be_used_to_index_type_1: b(2536, 1, "Type_0_cannot_be_used_to_index_type_1_2536", "Type '{0}' cannot be used to index type '{1}'."),
      Type_0_has_no_matching_index_signature_for_type_1: b(2537, 1, "Type_0_has_no_matching_index_signature_for_type_1_2537", "Type '{0}' has no matching index signature for type '{1}'."),
      Type_0_cannot_be_used_as_an_index_type: b(2538, 1, "Type_0_cannot_be_used_as_an_index_type_2538", "Type '{0}' cannot be used as an index type."),
      Cannot_assign_to_0_because_it_is_not_a_variable: b(2539, 1, "Cannot_assign_to_0_because_it_is_not_a_variable_2539", "Cannot assign to '{0}' because it is not a variable."),
      Cannot_assign_to_0_because_it_is_a_read_only_property: b(2540, 1, "Cannot_assign_to_0_because_it_is_a_read_only_property_2540", "Cannot assign to '{0}' because it is a read-only property."),
      Index_signature_in_type_0_only_permits_reading: b(2542, 1, "Index_signature_in_type_0_only_permits_reading_2542", "Index signature in type '{0}' only permits reading."),
      Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference: b(2543, 1, "Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543", "Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),
      Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference: b(2544, 1, "Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544", "Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),
      A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any: b(2545, 1, "A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545", "A mixin class must have a constructor with a single rest parameter of type 'any[]'."),
      The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property: b(2547, 1, "The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547", "The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),
      Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator: b(2548, 1, "Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548", "Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),
      Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator: b(2549, 1, "Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549", "Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),
      Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later: b(2550, 1, "Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550", "Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),
      Property_0_does_not_exist_on_type_1_Did_you_mean_2: b(2551, 1, "Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551", "Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),
      Cannot_find_name_0_Did_you_mean_1: b(2552, 1, "Cannot_find_name_0_Did_you_mean_1_2552", "Cannot find name '{0}'. Did you mean '{1}'?"),
      Computed_values_are_not_permitted_in_an_enum_with_string_valued_members: b(2553, 1, "Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553", "Computed values are not permitted in an enum with string valued members."),
      Expected_0_arguments_but_got_1: b(2554, 1, "Expected_0_arguments_but_got_1_2554", "Expected {0} arguments, but got {1}."),
      Expected_at_least_0_arguments_but_got_1: b(2555, 1, "Expected_at_least_0_arguments_but_got_1_2555", "Expected at least {0} arguments, but got {1}."),
      A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter: b(2556, 1, "A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556", "A spread argument must either have a tuple type or be passed to a rest parameter."),
      Expected_0_type_arguments_but_got_1: b(2558, 1, "Expected_0_type_arguments_but_got_1_2558", "Expected {0} type arguments, but got {1}."),
      Type_0_has_no_properties_in_common_with_type_1: b(2559, 1, "Type_0_has_no_properties_in_common_with_type_1_2559", "Type '{0}' has no properties in common with type '{1}'."),
      Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it: b(2560, 1, "Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560", "Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),
      Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2: b(2561, 1, "Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561", "Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),
      Base_class_expressions_cannot_reference_class_type_parameters: b(2562, 1, "Base_class_expressions_cannot_reference_class_type_parameters_2562", "Base class expressions cannot reference class type parameters."),
      The_containing_function_or_module_body_is_too_large_for_control_flow_analysis: b(2563, 1, "The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563", "The containing function or module body is too large for control flow analysis."),
      Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor: b(2564, 1, "Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564", "Property '{0}' has no initializer and is not definitely assigned in the constructor."),
      Property_0_is_used_before_being_assigned: b(2565, 1, "Property_0_is_used_before_being_assigned_2565", "Property '{0}' is used before being assigned."),
      A_rest_element_cannot_have_a_property_name: b(2566, 1, "A_rest_element_cannot_have_a_property_name_2566", "A rest element cannot have a property name."),
      Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations: b(2567, 1, "Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567", "Enum declarations can only merge with namespace or other enum declarations."),
      Property_0_may_not_exist_on_type_1_Did_you_mean_2: b(2568, 1, "Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568", "Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),
      Could_not_find_name_0_Did_you_mean_1: b(2570, 1, "Could_not_find_name_0_Did_you_mean_1_2570", "Could not find name '{0}'. Did you mean '{1}'?"),
      Object_is_of_type_unknown: b(2571, 1, "Object_is_of_type_unknown_2571", "Object is of type 'unknown'."),
      A_rest_element_type_must_be_an_array_type: b(2574, 1, "A_rest_element_type_must_be_an_array_type_2574", "A rest element type must be an array type."),
      No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments: b(2575, 1, "No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575", "No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),
      Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead: b(2576, 1, "Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576", "Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),
      Return_type_annotation_circularly_references_itself: b(2577, 1, "Return_type_annotation_circularly_references_itself_2577", "Return type annotation circularly references itself."),
      Unused_ts_expect_error_directive: b(2578, 1, "Unused_ts_expect_error_directive_2578", "Unused '@ts-expect-error' directive."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode: b(2580, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580", "Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery: b(2581, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581", "Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha: b(2582, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582", "Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),
      Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later: b(2583, 1, "Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583", "Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),
      Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom: b(2584, 1, "Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584", "Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),
      _0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later: b(2585, 1, "_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585", "'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),
      Cannot_assign_to_0_because_it_is_a_constant: b(2588, 1, "Cannot_assign_to_0_because_it_is_a_constant_2588", "Cannot assign to '{0}' because it is a constant."),
      Type_instantiation_is_excessively_deep_and_possibly_infinite: b(2589, 1, "Type_instantiation_is_excessively_deep_and_possibly_infinite_2589", "Type instantiation is excessively deep and possibly infinite."),
      Expression_produces_a_union_type_that_is_too_complex_to_represent: b(2590, 1, "Expression_produces_a_union_type_that_is_too_complex_to_represent_2590", "Expression produces a union type that is too complex to represent."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig: b(2591, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591", "Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig: b(2592, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592", "Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig: b(2593, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593", "Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),
      This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag: b(2594, 1, "This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594", "This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),
      _0_can_only_be_imported_by_using_a_default_import: b(2595, 1, "_0_can_only_be_imported_by_using_a_default_import_2595", "'{0}' can only be imported by using a default import."),
      _0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import: b(2596, 1, "_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596", "'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),
      _0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import: b(2597, 1, "_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597", "'{0}' can only be imported by using a 'require' call or by using a default import."),
      _0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import: b(2598, 1, "_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598", "'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),
      JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist: b(2602, 1, "JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602", "JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),
      Property_0_in_type_1_is_not_assignable_to_type_2: b(2603, 1, "Property_0_in_type_1_is_not_assignable_to_type_2_2603", "Property '{0}' in type '{1}' is not assignable to type '{2}'."),
      JSX_element_type_0_does_not_have_any_construct_or_call_signatures: b(2604, 1, "JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604", "JSX element type '{0}' does not have any construct or call signatures."),
      Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property: b(2606, 1, "Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606", "Property '{0}' of JSX spread attribute is not assignable to target property."),
      JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property: b(2607, 1, "JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607", "JSX element class does not support attributes because it does not have a '{0}' property."),
      The_global_type_JSX_0_may_not_have_more_than_one_property: b(2608, 1, "The_global_type_JSX_0_may_not_have_more_than_one_property_2608", "The global type 'JSX.{0}' may not have more than one property."),
      JSX_spread_child_must_be_an_array_type: b(2609, 1, "JSX_spread_child_must_be_an_array_type_2609", "JSX spread child must be an array type."),
      _0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property: b(2610, 1, "_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610", "'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),
      _0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor: b(2611, 1, "_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611", "'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),
      Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration: b(2612, 1, "Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612", "Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),
      Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead: b(2613, 1, "Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613", "Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),
      Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead: b(2614, 1, "Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614", "Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),
      Type_of_property_0_circularly_references_itself_in_mapped_type_1: b(2615, 1, "Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615", "Type of property '{0}' circularly references itself in mapped type '{1}'."),
      _0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import: b(2616, 1, "_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616", "'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),
      _0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import: b(2617, 1, "_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617", "'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),
      Source_has_0_element_s_but_target_requires_1: b(2618, 1, "Source_has_0_element_s_but_target_requires_1_2618", "Source has {0} element(s) but target requires {1}."),
      Source_has_0_element_s_but_target_allows_only_1: b(2619, 1, "Source_has_0_element_s_but_target_allows_only_1_2619", "Source has {0} element(s) but target allows only {1}."),
      Target_requires_0_element_s_but_source_may_have_fewer: b(2620, 1, "Target_requires_0_element_s_but_source_may_have_fewer_2620", "Target requires {0} element(s) but source may have fewer."),
      Target_allows_only_0_element_s_but_source_may_have_more: b(2621, 1, "Target_allows_only_0_element_s_but_source_may_have_more_2621", "Target allows only {0} element(s) but source may have more."),
      Source_provides_no_match_for_required_element_at_position_0_in_target: b(2623, 1, "Source_provides_no_match_for_required_element_at_position_0_in_target_2623", "Source provides no match for required element at position {0} in target."),
      Source_provides_no_match_for_variadic_element_at_position_0_in_target: b(2624, 1, "Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624", "Source provides no match for variadic element at position {0} in target."),
      Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target: b(2625, 1, "Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625", "Variadic element at position {0} in source does not match element at position {1} in target."),
      Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target: b(2626, 1, "Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626", "Type at position {0} in source is not compatible with type at position {1} in target."),
      Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target: b(2627, 1, "Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627", "Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),
      Cannot_assign_to_0_because_it_is_an_enum: b(2628, 1, "Cannot_assign_to_0_because_it_is_an_enum_2628", "Cannot assign to '{0}' because it is an enum."),
      Cannot_assign_to_0_because_it_is_a_class: b(2629, 1, "Cannot_assign_to_0_because_it_is_a_class_2629", "Cannot assign to '{0}' because it is a class."),
      Cannot_assign_to_0_because_it_is_a_function: b(2630, 1, "Cannot_assign_to_0_because_it_is_a_function_2630", "Cannot assign to '{0}' because it is a function."),
      Cannot_assign_to_0_because_it_is_a_namespace: b(2631, 1, "Cannot_assign_to_0_because_it_is_a_namespace_2631", "Cannot assign to '{0}' because it is a namespace."),
      Cannot_assign_to_0_because_it_is_an_import: b(2632, 1, "Cannot_assign_to_0_because_it_is_an_import_2632", "Cannot assign to '{0}' because it is an import."),
      JSX_property_access_expressions_cannot_include_JSX_namespace_names: b(2633, 1, "JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633", "JSX property access expressions cannot include JSX namespace names"),
      _0_index_signatures_are_incompatible: b(2634, 1, "_0_index_signatures_are_incompatible_2634", "'{0}' index signatures are incompatible."),
      Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable: b(2635, 1, "Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635", "Type '{0}' has no signatures for which the type argument list is applicable."),
      Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation: b(2636, 1, "Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636", "Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),
      Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types: b(2637, 1, "Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637", "Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),
      Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator: b(2638, 1, "Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638", "Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),
      React_components_cannot_include_JSX_namespace_names: b(2639, 1, "React_components_cannot_include_JSX_namespace_names_2639", "React components cannot include JSX namespace names"),
      Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity: b(2649, 1, "Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649", "Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),
      Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more: b(2650, 1, "Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650", "Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),
      A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums: b(2651, 1, "A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651", "A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),
      Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead: b(2652, 1, "Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652", "Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),
      Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1: b(2653, 1, "Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653", "Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),
      Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2: b(2654, 1, "Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654", "Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),
      Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more: b(2655, 1, "Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655", "Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),
      Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1: b(2656, 1, "Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656", "Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),
      JSX_expressions_must_have_one_parent_element: b(2657, 1, "JSX_expressions_must_have_one_parent_element_2657", "JSX expressions must have one parent element."),
      Type_0_provides_no_match_for_the_signature_1: b(2658, 1, "Type_0_provides_no_match_for_the_signature_1_2658", "Type '{0}' provides no match for the signature '{1}'."),
      super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher: b(2659, 1, "super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659", "'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),
      super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions: b(2660, 1, "super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660", "'super' can only be referenced in members of derived classes or object literal expressions."),
      Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module: b(2661, 1, "Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661", "Cannot export '{0}'. Only local declarations can be exported from a module."),
      Cannot_find_name_0_Did_you_mean_the_static_member_1_0: b(2662, 1, "Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662", "Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),
      Cannot_find_name_0_Did_you_mean_the_instance_member_this_0: b(2663, 1, "Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663", "Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),
      Invalid_module_name_in_augmentation_module_0_cannot_be_found: b(2664, 1, "Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664", "Invalid module name in augmentation, module '{0}' cannot be found."),
      Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented: b(2665, 1, "Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665", "Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),
      Exports_and_export_assignments_are_not_permitted_in_module_augmentations: b(2666, 1, "Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666", "Exports and export assignments are not permitted in module augmentations."),
      Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module: b(2667, 1, "Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667", "Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),
      export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible: b(2668, 1, "export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668", "'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),
      Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations: b(2669, 1, "Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669", "Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),
      Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context: b(2670, 1, "Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670", "Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),
      Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity: b(2671, 1, "Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671", "Cannot augment module '{0}' because it resolves to a non-module entity."),
      Cannot_assign_a_0_constructor_type_to_a_1_constructor_type: b(2672, 1, "Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672", "Cannot assign a '{0}' constructor type to a '{1}' constructor type."),
      Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration: b(2673, 1, "Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673", "Constructor of class '{0}' is private and only accessible within the class declaration."),
      Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration: b(2674, 1, "Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674", "Constructor of class '{0}' is protected and only accessible within the class declaration."),
      Cannot_extend_a_class_0_Class_constructor_is_marked_as_private: b(2675, 1, "Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675", "Cannot extend a class '{0}'. Class constructor is marked as private."),
      Accessors_must_both_be_abstract_or_non_abstract: b(2676, 1, "Accessors_must_both_be_abstract_or_non_abstract_2676", "Accessors must both be abstract or non-abstract."),
      A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type: b(2677, 1, "A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677", "A type predicate's type must be assignable to its parameter's type."),
      Type_0_is_not_comparable_to_type_1: b(2678, 1, "Type_0_is_not_comparable_to_type_1_2678", "Type '{0}' is not comparable to type '{1}'."),
      A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void: b(2679, 1, "A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679", "A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),
      A_0_parameter_must_be_the_first_parameter: b(2680, 1, "A_0_parameter_must_be_the_first_parameter_2680", "A '{0}' parameter must be the first parameter."),
      A_constructor_cannot_have_a_this_parameter: b(2681, 1, "A_constructor_cannot_have_a_this_parameter_2681", "A constructor cannot have a 'this' parameter."),
      this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation: b(2683, 1, "this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683", "'this' implicitly has type 'any' because it does not have a type annotation."),
      The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1: b(2684, 1, "The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684", "The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),
      The_this_types_of_each_signature_are_incompatible: b(2685, 1, "The_this_types_of_each_signature_are_incompatible_2685", "The 'this' types of each signature are incompatible."),
      _0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead: b(2686, 1, "_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686", "'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),
      All_declarations_of_0_must_have_identical_modifiers: b(2687, 1, "All_declarations_of_0_must_have_identical_modifiers_2687", "All declarations of '{0}' must have identical modifiers."),
      Cannot_find_type_definition_file_for_0: b(2688, 1, "Cannot_find_type_definition_file_for_0_2688", "Cannot find type definition file for '{0}'."),
      Cannot_extend_an_interface_0_Did_you_mean_implements: b(2689, 1, "Cannot_extend_an_interface_0_Did_you_mean_implements_2689", "Cannot extend an interface '{0}'. Did you mean 'implements'?"),
      _0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0: b(2690, 1, "_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690", "'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),
      _0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible: b(2692, 1, "_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692", "'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),
      _0_only_refers_to_a_type_but_is_being_used_as_a_value_here: b(2693, 1, "_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693", "'{0}' only refers to a type, but is being used as a value here."),
      Namespace_0_has_no_exported_member_1: b(2694, 1, "Namespace_0_has_no_exported_member_1_2694", "Namespace '{0}' has no exported member '{1}'."),
      Left_side_of_comma_operator_is_unused_and_has_no_side_effects: b(2695, 1, "Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695", "Left side of comma operator is unused and has no side effects.", !0),
      The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead: b(2696, 1, "The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696", "The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),
      An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option: b(2697, 1, "An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697", "An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),
      Spread_types_may_only_be_created_from_object_types: b(2698, 1, "Spread_types_may_only_be_created_from_object_types_2698", "Spread types may only be created from object types."),
      Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1: b(2699, 1, "Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699", "Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),
      Rest_types_may_only_be_created_from_object_types: b(2700, 1, "Rest_types_may_only_be_created_from_object_types_2700", "Rest types may only be created from object types."),
      The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access: b(2701, 1, "The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701", "The target of an object rest assignment must be a variable or a property access."),
      _0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here: b(2702, 1, "_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702", "'{0}' only refers to a type, but is being used as a namespace here."),
      The_operand_of_a_delete_operator_must_be_a_property_reference: b(2703, 1, "The_operand_of_a_delete_operator_must_be_a_property_reference_2703", "The operand of a 'delete' operator must be a property reference."),
      The_operand_of_a_delete_operator_cannot_be_a_read_only_property: b(2704, 1, "The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704", "The operand of a 'delete' operator cannot be a read-only property."),
      An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option: b(2705, 1, "An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705", "An async function or method in ES5 requires the 'Promise' constructor.  Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),
      Required_type_parameters_may_not_follow_optional_type_parameters: b(2706, 1, "Required_type_parameters_may_not_follow_optional_type_parameters_2706", "Required type parameters may not follow optional type parameters."),
      Generic_type_0_requires_between_1_and_2_type_arguments: b(2707, 1, "Generic_type_0_requires_between_1_and_2_type_arguments_2707", "Generic type '{0}' requires between {1} and {2} type arguments."),
      Cannot_use_namespace_0_as_a_value: b(2708, 1, "Cannot_use_namespace_0_as_a_value_2708", "Cannot use namespace '{0}' as a value."),
      Cannot_use_namespace_0_as_a_type: b(2709, 1, "Cannot_use_namespace_0_as_a_type_2709", "Cannot use namespace '{0}' as a type."),
      _0_are_specified_twice_The_attribute_named_0_will_be_overwritten: b(2710, 1, "_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710", "'{0}' are specified twice. The attribute named '{0}' will be overwritten."),
      A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option: b(2711, 1, "A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711", "A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),
      A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option: b(2712, 1, "A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712", "A dynamic import call in ES5 requires the 'Promise' constructor.  Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),
      Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1: b(2713, 1, "Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713", `Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),
      The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context: b(2714, 1, "The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714", "The expression of an export assignment must be an identifier or qualified name in an ambient context."),
      Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor: b(2715, 1, "Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715", "Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),
      Type_parameter_0_has_a_circular_default: b(2716, 1, "Type_parameter_0_has_a_circular_default_2716", "Type parameter '{0}' has a circular default."),
      Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2: b(2717, 1, "Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717", "Subsequent property declarations must have the same type.  Property '{0}' must be of type '{1}', but here has type '{2}'."),
      Duplicate_property_0: b(2718, 1, "Duplicate_property_0_2718", "Duplicate property '{0}'."),
      Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated: b(2719, 1, "Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719", "Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),
      Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass: b(2720, 1, "Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720", "Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),
      Cannot_invoke_an_object_which_is_possibly_null: b(2721, 1, "Cannot_invoke_an_object_which_is_possibly_null_2721", "Cannot invoke an object which is possibly 'null'."),
      Cannot_invoke_an_object_which_is_possibly_undefined: b(2722, 1, "Cannot_invoke_an_object_which_is_possibly_undefined_2722", "Cannot invoke an object which is possibly 'undefined'."),
      Cannot_invoke_an_object_which_is_possibly_null_or_undefined: b(2723, 1, "Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723", "Cannot invoke an object which is possibly 'null' or 'undefined'."),
      _0_has_no_exported_member_named_1_Did_you_mean_2: b(2724, 1, "_0_has_no_exported_member_named_1_Did_you_mean_2_2724", "'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),
      Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0: b(2725, 1, "Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0_2725", "Class name cannot be 'Object' when targeting ES5 and above with module {0}."),
      Cannot_find_lib_definition_for_0: b(2726, 1, "Cannot_find_lib_definition_for_0_2726", "Cannot find lib definition for '{0}'."),
      Cannot_find_lib_definition_for_0_Did_you_mean_1: b(2727, 1, "Cannot_find_lib_definition_for_0_Did_you_mean_1_2727", "Cannot find lib definition for '{0}'. Did you mean '{1}'?"),
      _0_is_declared_here: b(2728, 3, "_0_is_declared_here_2728", "'{0}' is declared here."),
      Property_0_is_used_before_its_initialization: b(2729, 1, "Property_0_is_used_before_its_initialization_2729", "Property '{0}' is used before its initialization."),
      An_arrow_function_cannot_have_a_this_parameter: b(2730, 1, "An_arrow_function_cannot_have_a_this_parameter_2730", "An arrow function cannot have a 'this' parameter."),
      Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String: b(2731, 1, "Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731", "Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),
      Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension: b(2732, 1, "Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732", "Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),
      Property_0_was_also_declared_here: b(2733, 1, "Property_0_was_also_declared_here_2733", "Property '{0}' was also declared here."),
      Are_you_missing_a_semicolon: b(2734, 1, "Are_you_missing_a_semicolon_2734", "Are you missing a semicolon?"),
      Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1: b(2735, 1, "Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735", "Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),
      Operator_0_cannot_be_applied_to_type_1: b(2736, 1, "Operator_0_cannot_be_applied_to_type_1_2736", "Operator '{0}' cannot be applied to type '{1}'."),
      BigInt_literals_are_not_available_when_targeting_lower_than_ES2020: b(2737, 1, "BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737", "BigInt literals are not available when targeting lower than ES2020."),
      An_outer_value_of_this_is_shadowed_by_this_container: b(2738, 3, "An_outer_value_of_this_is_shadowed_by_this_container_2738", "An outer value of 'this' is shadowed by this container."),
      Type_0_is_missing_the_following_properties_from_type_1_Colon_2: b(2739, 1, "Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739", "Type '{0}' is missing the following properties from type '{1}': {2}"),
      Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more: b(2740, 1, "Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740", "Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),
      Property_0_is_missing_in_type_1_but_required_in_type_2: b(2741, 1, "Property_0_is_missing_in_type_1_but_required_in_type_2_2741", "Property '{0}' is missing in type '{1}' but required in type '{2}'."),
      The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary: b(2742, 1, "The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742", "The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),
      No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments: b(2743, 1, "No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743", "No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),
      Type_parameter_defaults_can_only_reference_previously_declared_type_parameters: b(2744, 1, "Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744", "Type parameter defaults can only reference previously declared type parameters."),
      This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided: b(2745, 1, "This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745", "This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),
      This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided: b(2746, 1, "This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746", "This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),
      _0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2: b(2747, 1, "_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747", "'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),
      Cannot_access_ambient_const_enums_when_0_is_enabled: b(2748, 1, "Cannot_access_ambient_const_enums_when_0_is_enabled_2748", "Cannot access ambient const enums when '{0}' is enabled."),
      _0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0: b(2749, 1, "_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749", "'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),
      The_implementation_signature_is_declared_here: b(2750, 1, "The_implementation_signature_is_declared_here_2750", "The implementation signature is declared here."),
      Circularity_originates_in_type_at_this_location: b(2751, 1, "Circularity_originates_in_type_at_this_location_2751", "Circularity originates in type at this location."),
      The_first_export_default_is_here: b(2752, 1, "The_first_export_default_is_here_2752", "The first export default is here."),
      Another_export_default_is_here: b(2753, 1, "Another_export_default_is_here_2753", "Another export default is here."),
      super_may_not_use_type_arguments: b(2754, 1, "super_may_not_use_type_arguments_2754", "'super' may not use type arguments."),
      No_constituent_of_type_0_is_callable: b(2755, 1, "No_constituent_of_type_0_is_callable_2755", "No constituent of type '{0}' is callable."),
      Not_all_constituents_of_type_0_are_callable: b(2756, 1, "Not_all_constituents_of_type_0_are_callable_2756", "Not all constituents of type '{0}' are callable."),
      Type_0_has_no_call_signatures: b(2757, 1, "Type_0_has_no_call_signatures_2757", "Type '{0}' has no call signatures."),
      Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other: b(2758, 1, "Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758", "Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),
      No_constituent_of_type_0_is_constructable: b(2759, 1, "No_constituent_of_type_0_is_constructable_2759", "No constituent of type '{0}' is constructable."),
      Not_all_constituents_of_type_0_are_constructable: b(2760, 1, "Not_all_constituents_of_type_0_are_constructable_2760", "Not all constituents of type '{0}' are constructable."),
      Type_0_has_no_construct_signatures: b(2761, 1, "Type_0_has_no_construct_signatures_2761", "Type '{0}' has no construct signatures."),
      Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other: b(2762, 1, "Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762", "Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),
      Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0: b(2763, 1, "Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763", "Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),
      Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0: b(2764, 1, "Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764", "Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),
      Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0: b(2765, 1, "Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765", "Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),
      Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0: b(2766, 1, "Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766", "Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),
      The_0_property_of_an_iterator_must_be_a_method: b(2767, 1, "The_0_property_of_an_iterator_must_be_a_method_2767", "The '{0}' property of an iterator must be a method."),
      The_0_property_of_an_async_iterator_must_be_a_method: b(2768, 1, "The_0_property_of_an_async_iterator_must_be_a_method_2768", "The '{0}' property of an async iterator must be a method."),
      No_overload_matches_this_call: b(2769, 1, "No_overload_matches_this_call_2769", "No overload matches this call."),
      The_last_overload_gave_the_following_error: b(2770, 1, "The_last_overload_gave_the_following_error_2770", "The last overload gave the following error."),
      The_last_overload_is_declared_here: b(2771, 1, "The_last_overload_is_declared_here_2771", "The last overload is declared here."),
      Overload_0_of_1_2_gave_the_following_error: b(2772, 1, "Overload_0_of_1_2_gave_the_following_error_2772", "Overload {0} of {1}, '{2}', gave the following error."),
      Did_you_forget_to_use_await: b(2773, 1, "Did_you_forget_to_use_await_2773", "Did you forget to use 'await'?"),
      This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead: b(2774, 1, "This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774", "This condition will always return true since this function is always defined. Did you mean to call it instead?"),
      Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation: b(2775, 1, "Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775", "Assertions require every name in the call target to be declared with an explicit type annotation."),
      Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name: b(2776, 1, "Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776", "Assertions require the call target to be an identifier or qualified name."),
      The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access: b(2777, 1, "The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777", "The operand of an increment or decrement operator may not be an optional property access."),
      The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access: b(2778, 1, "The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778", "The target of an object rest assignment may not be an optional property access."),
      The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access: b(2779, 1, "The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779", "The left-hand side of an assignment expression may not be an optional property access."),
      The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access: b(2780, 1, "The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780", "The left-hand side of a 'for...in' statement may not be an optional property access."),
      The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access: b(2781, 1, "The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781", "The left-hand side of a 'for...of' statement may not be an optional property access."),
      _0_needs_an_explicit_type_annotation: b(2782, 3, "_0_needs_an_explicit_type_annotation_2782", "'{0}' needs an explicit type annotation."),
      _0_is_specified_more_than_once_so_this_usage_will_be_overwritten: b(2783, 1, "_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783", "'{0}' is specified more than once, so this usage will be overwritten."),
      get_and_set_accessors_cannot_declare_this_parameters: b(2784, 1, "get_and_set_accessors_cannot_declare_this_parameters_2784", "'get' and 'set' accessors cannot declare 'this' parameters."),
      This_spread_always_overwrites_this_property: b(2785, 1, "This_spread_always_overwrites_this_property_2785", "This spread always overwrites this property."),
      _0_cannot_be_used_as_a_JSX_component: b(2786, 1, "_0_cannot_be_used_as_a_JSX_component_2786", "'{0}' cannot be used as a JSX component."),
      Its_return_type_0_is_not_a_valid_JSX_element: b(2787, 1, "Its_return_type_0_is_not_a_valid_JSX_element_2787", "Its return type '{0}' is not a valid JSX element."),
      Its_instance_type_0_is_not_a_valid_JSX_element: b(2788, 1, "Its_instance_type_0_is_not_a_valid_JSX_element_2788", "Its instance type '{0}' is not a valid JSX element."),
      Its_element_type_0_is_not_a_valid_JSX_element: b(2789, 1, "Its_element_type_0_is_not_a_valid_JSX_element_2789", "Its element type '{0}' is not a valid JSX element."),
      The_operand_of_a_delete_operator_must_be_optional: b(2790, 1, "The_operand_of_a_delete_operator_must_be_optional_2790", "The operand of a 'delete' operator must be optional."),
      Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later: b(2791, 1, "Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791", "Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),
      Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option: b(2792, 1, "Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792", "Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),
      The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible: b(2793, 1, "The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793", "The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),
      Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise: b(2794, 1, "Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794", "Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),
      The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types: b(2795, 1, "The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795", "The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),
      It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked: b(2796, 1, "It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796", "It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),
      A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract: b(2797, 1, "A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797", "A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),
      The_declaration_was_marked_as_deprecated_here: b(2798, 1, "The_declaration_was_marked_as_deprecated_here_2798", "The declaration was marked as deprecated here."),
      Type_produces_a_tuple_type_that_is_too_large_to_represent: b(2799, 1, "Type_produces_a_tuple_type_that_is_too_large_to_represent_2799", "Type produces a tuple type that is too large to represent."),
      Expression_produces_a_tuple_type_that_is_too_large_to_represent: b(2800, 1, "Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800", "Expression produces a tuple type that is too large to represent."),
      This_condition_will_always_return_true_since_this_0_is_always_defined: b(2801, 1, "This_condition_will_always_return_true_since_this_0_is_always_defined_2801", "This condition will always return true since this '{0}' is always defined."),
      Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher: b(2802, 1, "Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802", "Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),
      Cannot_assign_to_private_method_0_Private_methods_are_not_writable: b(2803, 1, "Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803", "Cannot assign to private method '{0}'. Private methods are not writable."),
      Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name: b(2804, 1, "Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804", "Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),
      Private_accessor_was_defined_without_a_getter: b(2806, 1, "Private_accessor_was_defined_without_a_getter_2806", "Private accessor was defined without a getter."),
      This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0: b(2807, 1, "This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807", "This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),
      A_get_accessor_must_be_at_least_as_accessible_as_the_setter: b(2808, 1, "A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808", "A get accessor must be at least as accessible as the setter"),
      Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses: b(2809, 1, "Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809", "Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),
      Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments: b(2810, 1, "Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810", "Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),
      Initializer_for_property_0: b(2811, 1, "Initializer_for_property_0_2811", "Initializer for property '{0}'"),
      Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom: b(2812, 1, "Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812", "Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),
      Class_declaration_cannot_implement_overload_list_for_0: b(2813, 1, "Class_declaration_cannot_implement_overload_list_for_0_2813", "Class declaration cannot implement overload list for '{0}'."),
      Function_with_bodies_can_only_merge_with_classes_that_are_ambient: b(2814, 1, "Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814", "Function with bodies can only merge with classes that are ambient."),
      arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks: b(2815, 1, "arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks_2815", "'arguments' cannot be referenced in property initializers or class static initialization blocks."),
      Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class: b(2816, 1, "Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816", "Cannot use 'this' in a static property initializer of a decorated class."),
      Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block: b(2817, 1, "Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817", "Property '{0}' has no initializer and is not definitely assigned in a class static block."),
      Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers: b(2818, 1, "Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818", "Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),
      Namespace_name_cannot_be_0: b(2819, 1, "Namespace_name_cannot_be_0_2819", "Namespace name cannot be '{0}'."),
      Type_0_is_not_assignable_to_type_1_Did_you_mean_2: b(2820, 1, "Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820", "Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),
      Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve: b(2821, 1, "Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2821", "Import assertions are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),
      Import_assertions_cannot_be_used_with_type_only_imports_or_exports: b(2822, 1, "Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822", "Import assertions cannot be used with type-only imports or exports."),
      Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve: b(2823, 1, "Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext__2823", "Import attributes are only supported when the '--module' option is set to 'esnext', 'node18', 'node20', 'nodenext', or 'preserve'."),
      Cannot_find_namespace_0_Did_you_mean_1: b(2833, 1, "Cannot_find_namespace_0_Did_you_mean_1_2833", "Cannot find namespace '{0}'. Did you mean '{1}'?"),
      Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path: b(2834, 1, "Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834", "Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),
      Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0: b(2835, 1, "Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835", "Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),
      Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls: b(2836, 1, "Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836", "Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),
      Import_assertion_values_must_be_string_literal_expressions: b(2837, 1, "Import_assertion_values_must_be_string_literal_expressions_2837", "Import assertion values must be string literal expressions."),
      All_declarations_of_0_must_have_identical_constraints: b(2838, 1, "All_declarations_of_0_must_have_identical_constraints_2838", "All declarations of '{0}' must have identical constraints."),
      This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value: b(2839, 1, "This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839", "This condition will always return '{0}' since JavaScript compares objects by reference, not value."),
      An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types: b(2840, 1, "An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840", "An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),
      _0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation: b(2842, 1, "_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842", "'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),
      We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here: b(2843, 1, "We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843", "We can only write a type for '{0}' by adding a type for the entire parameter here."),
      Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor: b(2844, 1, "Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844", "Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),
      This_condition_will_always_return_0: b(2845, 1, "This_condition_will_always_return_0_2845", "This condition will always return '{0}'."),
      A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead: b(2846, 1, "A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846", "A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),
      The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression: b(2848, 1, "The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848", "The right-hand side of an 'instanceof' expression must not be an instantiation expression."),
      Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1: b(2849, 1, "Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849", "Target signature provides too few arguments. Expected {0} or more, but got {1}."),
      The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined: b(2850, 1, "The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850", "The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),
      The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined: b(2851, 1, "The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851", "The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),
      await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules: b(2852, 1, "await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852", "'await using' statements are only allowed within async functions and at the top levels of modules."),
      await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module: b(2853, 1, "await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853", "'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),
      Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher: b(2854, 1, "Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854", "Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'node18', 'node20', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),
      Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super: b(2855, 1, "Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855", "Class field '{0}' defined by the parent class is not accessible in the child class via super."),
      Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls: b(2856, 1, "Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856", "Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),
      Import_attributes_cannot_be_used_with_type_only_imports_or_exports: b(2857, 1, "Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857", "Import attributes cannot be used with type-only imports or exports."),
      Import_attribute_values_must_be_string_literal_expressions: b(2858, 1, "Import_attribute_values_must_be_string_literal_expressions_2858", "Import attribute values must be string literal expressions."),
      Excessive_complexity_comparing_types_0_and_1: b(2859, 1, "Excessive_complexity_comparing_types_0_and_1_2859", "Excessive complexity comparing types '{0}' and '{1}'."),
      The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method: b(2860, 1, "The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860", "The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),
      An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression: b(2861, 1, "An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861", "An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),
      Type_0_is_generic_and_can_only_be_indexed_for_reading: b(2862, 1, "Type_0_is_generic_and_can_only_be_indexed_for_reading_2862", "Type '{0}' is generic and can only be indexed for reading."),
      A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values: b(2863, 1, "A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863", "A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),
      A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types: b(2864, 1, "A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864", "A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),
      Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled: b(2865, 1, "Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865", "Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),
      Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled: b(2866, 1, "Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866", "Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun: b(2867, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867", "Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),
      Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig: b(2868, 1, "Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868", "Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),
      Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish: b(2869, 1, "Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish_2869", "Right operand of ?? is unreachable because the left operand is never nullish."),
      This_binary_expression_is_never_nullish_Are_you_missing_parentheses: b(2870, 1, "This_binary_expression_is_never_nullish_Are_you_missing_parentheses_2870", "This binary expression is never nullish. Are you missing parentheses?"),
      This_expression_is_always_nullish: b(2871, 1, "This_expression_is_always_nullish_2871", "This expression is always nullish."),
      This_kind_of_expression_is_always_truthy: b(2872, 1, "This_kind_of_expression_is_always_truthy_2872", "This kind of expression is always truthy."),
      This_kind_of_expression_is_always_falsy: b(2873, 1, "This_kind_of_expression_is_always_falsy_2873", "This kind of expression is always falsy."),
      This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found: b(2874, 1, "This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found_2874", "This JSX tag requires '{0}' to be in scope, but it could not be found."),
      This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed: b(2875, 1, "This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_fo_2875", "This JSX tag requires the module path '{0}' to exist, but none could be found. Make sure you have types for the appropriate package installed."),
      This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0: b(2876, 1, "This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolv_2876", 'This relative import path is unsafe to rewrite because it looks like a file name, but actually resolves to "{0}".'),
      This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path: b(2877, 1, "This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_duri_2877", "This import uses a '{0}' extension to resolve to an input TypeScript file, but will not be rewritten during emit because it is not a relative path."),
      This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files: b(2878, 1, "This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_b_2878", "This import path is unsafe to rewrite because it resolves to another project, and the relative path between the projects' output files is not the same as the relative path between its input files."),
      Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found: b(2879, 1, "Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found_2879", "Using JSX fragments requires fragment factory '{0}' to be in scope, but it could not be found."),
      Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert: b(2880, 1, "Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert_2880", "Import assertions have been replaced by import attributes. Use 'with' instead of 'assert'."),
      This_expression_is_never_nullish: b(2881, 1, "This_expression_is_never_nullish_2881", "This expression is never nullish."),
      Cannot_find_module_or_type_declarations_for_side_effect_import_of_0: b(2882, 1, "Cannot_find_module_or_type_declarations_for_side_effect_import_of_0_2882", "Cannot find module or type declarations for side-effect import of '{0}'."),
      The_inferred_type_of_0_cannot_be_named_without_a_reference_to_2_from_1_This_is_likely_not_portable_A_type_annotation_is_necessary: b(2883, 1, "The_inferred_type_of_0_cannot_be_named_without_a_reference_to_2_from_1_This_is_likely_not_portable_A_2883", "The inferred type of '{0}' cannot be named without a reference to '{2}' from '{1}'. This is likely not portable. A type annotation is necessary."),
      Import_declaration_0_is_using_private_name_1: b(4e3, 1, "Import_declaration_0_is_using_private_name_1_4000", "Import declaration '{0}' is using private name '{1}'."),
      Type_parameter_0_of_exported_class_has_or_is_using_private_name_1: b(4002, 1, "Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002", "Type parameter '{0}' of exported class has or is using private name '{1}'."),
      Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1: b(4004, 1, "Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004", "Type parameter '{0}' of exported interface has or is using private name '{1}'."),
      Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1: b(4006, 1, "Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006", "Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),
      Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1: b(4008, 1, "Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008", "Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),
      Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1: b(4010, 1, "Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010", "Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),
      Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1: b(4012, 1, "Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012", "Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),
      Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1: b(4014, 1, "Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014", "Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),
      Type_parameter_0_of_exported_function_has_or_is_using_private_name_1: b(4016, 1, "Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016", "Type parameter '{0}' of exported function has or is using private name '{1}'."),
      Implements_clause_of_exported_class_0_has_or_is_using_private_name_1: b(4019, 1, "Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019", "Implements clause of exported class '{0}' has or is using private name '{1}'."),
      extends_clause_of_exported_class_0_has_or_is_using_private_name_1: b(4020, 1, "extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020", "'extends' clause of exported class '{0}' has or is using private name '{1}'."),
      extends_clause_of_exported_class_has_or_is_using_private_name_0: b(4021, 1, "extends_clause_of_exported_class_has_or_is_using_private_name_0_4021", "'extends' clause of exported class has or is using private name '{0}'."),
      extends_clause_of_exported_interface_0_has_or_is_using_private_name_1: b(4022, 1, "extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022", "'extends' clause of exported interface '{0}' has or is using private name '{1}'."),
      Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4023, 1, "Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023", "Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),
      Exported_variable_0_has_or_is_using_name_1_from_private_module_2: b(4024, 1, "Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024", "Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),
      Exported_variable_0_has_or_is_using_private_name_1: b(4025, 1, "Exported_variable_0_has_or_is_using_private_name_1_4025", "Exported variable '{0}' has or is using private name '{1}'."),
      Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4026, 1, "Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026", "Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2: b(4027, 1, "Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027", "Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),
      Public_static_property_0_of_exported_class_has_or_is_using_private_name_1: b(4028, 1, "Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028", "Public static property '{0}' of exported class has or is using private name '{1}'."),
      Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4029, 1, "Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029", "Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2: b(4030, 1, "Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030", "Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),
      Public_property_0_of_exported_class_has_or_is_using_private_name_1: b(4031, 1, "Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031", "Public property '{0}' of exported class has or is using private name '{1}'."),
      Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2: b(4032, 1, "Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032", "Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),
      Property_0_of_exported_interface_has_or_is_using_private_name_1: b(4033, 1, "Property_0_of_exported_interface_has_or_is_using_private_name_1_4033", "Property '{0}' of exported interface has or is using private name '{1}'."),
      Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4034, 1, "Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034", "Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),
      Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1: b(4035, 1, "Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035", "Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),
      Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4036, 1, "Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036", "Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),
      Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1: b(4037, 1, "Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037", "Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),
      Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4038, 1, "Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038", "Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4039, 1, "Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039", "Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),
      Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1: b(4040, 1, "Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040", "Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),
      Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4041, 1, "Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041", "Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4042, 1, "Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042", "Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),
      Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1: b(4043, 1, "Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043", "Return type of public getter '{0}' from exported class has or is using private name '{1}'."),
      Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1: b(4044, 1, "Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044", "Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),
      Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0: b(4045, 1, "Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045", "Return type of constructor signature from exported interface has or is using private name '{0}'."),
      Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1: b(4046, 1, "Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046", "Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),
      Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0: b(4047, 1, "Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047", "Return type of call signature from exported interface has or is using private name '{0}'."),
      Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1: b(4048, 1, "Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048", "Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),
      Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0: b(4049, 1, "Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049", "Return type of index signature from exported interface has or is using private name '{0}'."),
      Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named: b(4050, 1, "Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050", "Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),
      Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1: b(4051, 1, "Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051", "Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),
      Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0: b(4052, 1, "Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052", "Return type of public static method from exported class has or is using private name '{0}'."),
      Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named: b(4053, 1, "Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053", "Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),
      Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1: b(4054, 1, "Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054", "Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),
      Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0: b(4055, 1, "Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055", "Return type of public method from exported class has or is using private name '{0}'."),
      Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1: b(4056, 1, "Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056", "Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),
      Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0: b(4057, 1, "Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057", "Return type of method from exported interface has or is using private name '{0}'."),
      Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named: b(4058, 1, "Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058", "Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),
      Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1: b(4059, 1, "Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059", "Return type of exported function has or is using name '{0}' from private module '{1}'."),
      Return_type_of_exported_function_has_or_is_using_private_name_0: b(4060, 1, "Return_type_of_exported_function_has_or_is_using_private_name_0_4060", "Return type of exported function has or is using private name '{0}'."),
      Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4061, 1, "Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061", "Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4062, 1, "Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062", "Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1: b(4063, 1, "Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063", "Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),
      Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2: b(4064, 1, "Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064", "Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1: b(4065, 1, "Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065", "Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),
      Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2: b(4066, 1, "Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066", "Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1: b(4067, 1, "Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067", "Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),
      Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4068, 1, "Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068", "Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4069, 1, "Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069", "Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1: b(4070, 1, "Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070", "Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),
      Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4071, 1, "Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071", "Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2: b(4072, 1, "Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072", "Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1: b(4073, 1, "Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073", "Parameter '{0}' of public method from exported class has or is using private name '{1}'."),
      Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2: b(4074, 1, "Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074", "Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1: b(4075, 1, "Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075", "Parameter '{0}' of method from exported interface has or is using private name '{1}'."),
      Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4076, 1, "Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076", "Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),
      Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2: b(4077, 1, "Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077", "Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_exported_function_has_or_is_using_private_name_1: b(4078, 1, "Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078", "Parameter '{0}' of exported function has or is using private name '{1}'."),
      Exported_type_alias_0_has_or_is_using_private_name_1: b(4081, 1, "Exported_type_alias_0_has_or_is_using_private_name_1_4081", "Exported type alias '{0}' has or is using private name '{1}'."),
      Default_export_of_the_module_has_or_is_using_private_name_0: b(4082, 1, "Default_export_of_the_module_has_or_is_using_private_name_0_4082", "Default export of the module has or is using private name '{0}'."),
      Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1: b(4083, 1, "Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083", "Type parameter '{0}' of exported type alias has or is using private name '{1}'."),
      Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2: b(4084, 1, "Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084", "Exported type alias '{0}' has or is using private name '{1}' from module {2}."),
      Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1: b(4085, 1, "Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085", "Extends clause for inferred type '{0}' has or is using private name '{1}'."),
      Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2: b(4091, 1, "Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091", "Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1: b(4092, 1, "Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092", "Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),
      Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected: b(4094, 1, "Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected_4094", "Property '{0}' of exported anonymous class type may not be private or protected."),
      Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4095, 1, "Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095", "Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2: b(4096, 1, "Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096", "Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),
      Public_static_method_0_of_exported_class_has_or_is_using_private_name_1: b(4097, 1, "Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097", "Public static method '{0}' of exported class has or is using private name '{1}'."),
      Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4098, 1, "Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098", "Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),
      Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2: b(4099, 1, "Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099", "Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),
      Public_method_0_of_exported_class_has_or_is_using_private_name_1: b(4100, 1, "Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100", "Public method '{0}' of exported class has or is using private name '{1}'."),
      Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2: b(4101, 1, "Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101", "Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),
      Method_0_of_exported_interface_has_or_is_using_private_name_1: b(4102, 1, "Method_0_of_exported_interface_has_or_is_using_private_name_1_4102", "Method '{0}' of exported interface has or is using private name '{1}'."),
      Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1: b(4103, 1, "Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103", "Type parameter '{0}' of exported mapped object type is using private name '{1}'."),
      The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1: b(4104, 1, "The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104", "The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),
      Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter: b(4105, 1, "Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105", "Private or protected member '{0}' cannot be accessed on a type parameter."),
      Parameter_0_of_accessor_has_or_is_using_private_name_1: b(4106, 1, "Parameter_0_of_accessor_has_or_is_using_private_name_1_4106", "Parameter '{0}' of accessor has or is using private name '{1}'."),
      Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2: b(4107, 1, "Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107", "Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),
      Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named: b(4108, 1, "Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108", "Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),
      Type_arguments_for_0_circularly_reference_themselves: b(4109, 1, "Type_arguments_for_0_circularly_reference_themselves_4109", "Type arguments for '{0}' circularly reference themselves."),
      Tuple_type_arguments_circularly_reference_themselves: b(4110, 1, "Tuple_type_arguments_circularly_reference_themselves_4110", "Tuple type arguments circularly reference themselves."),
      Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0: b(4111, 1, "Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111", "Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),
      This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class: b(4112, 1, "This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112", "This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),
      This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0: b(4113, 1, "This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113", "This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),
      This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0: b(4114, 1, "This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114", "This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),
      This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0: b(4115, 1, "This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115", "This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),
      This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0: b(4116, 1, "This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116", "This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),
      This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1: b(4117, 1, "This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117", "This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),
      The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized: b(4118, 1, "The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118", "The type of this node cannot be serialized because its property '{0}' cannot be serialized."),
      This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0: b(4119, 1, "This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119", "This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),
      This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0: b(4120, 1, "This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120", "This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),
      This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class: b(4121, 1, "This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121", "This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),
      This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0: b(4122, 1, "This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122", "This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),
      This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1: b(4123, 1, "This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123", "This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),
      Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next: b(4124, 1, "Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124", "Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),
      Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given: b(4125, 1, "Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125", "Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),
      One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value: b(4126, 1, "One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126", "One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),
      This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic: b(4127, 1, "This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic_4127", "This member cannot have an 'override' modifier because its name is dynamic."),
      This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic: b(4128, 1, "This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic_4128", "This member cannot have a JSDoc comment with an '@override' tag because its name is dynamic."),
      The_current_host_does_not_support_the_0_option: b(5001, 1, "The_current_host_does_not_support_the_0_option_5001", "The current host does not support the '{0}' option."),
      Cannot_find_the_common_subdirectory_path_for_the_input_files: b(5009, 1, "Cannot_find_the_common_subdirectory_path_for_the_input_files_5009", "Cannot find the common subdirectory path for the input files."),
      File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0: b(5010, 1, "File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010", "File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),
      The_common_source_directory_of_0_is_1_The_rootDir_setting_must_be_explicitly_set_to_this_or_another_path_to_adjust_your_output_s_file_layout: b(5011, 1, "The_common_source_directory_of_0_is_1_The_rootDir_setting_must_be_explicitly_set_to_this_or_another__5011", "The common source directory of '{0}' is '{1}'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout."),
      Cannot_read_file_0_Colon_1: b(5012, 1, "Cannot_read_file_0_Colon_1_5012", "Cannot read file '{0}': {1}."),
      Unknown_compiler_option_0: b(5023, 1, "Unknown_compiler_option_0_5023", "Unknown compiler option '{0}'."),
      Compiler_option_0_requires_a_value_of_type_1: b(5024, 1, "Compiler_option_0_requires_a_value_of_type_1_5024", "Compiler option '{0}' requires a value of type {1}."),
      Unknown_compiler_option_0_Did_you_mean_1: b(5025, 1, "Unknown_compiler_option_0_Did_you_mean_1_5025", "Unknown compiler option '{0}'. Did you mean '{1}'?"),
      Could_not_write_file_0_Colon_1: b(5033, 1, "Could_not_write_file_0_Colon_1_5033", "Could not write file '{0}': {1}."),
      Option_project_cannot_be_mixed_with_source_files_on_a_command_line: b(5042, 1, "Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042", "Option 'project' cannot be mixed with source files on a command line."),
      Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher: b(5047, 1, "Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047", "Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),
      Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided: b(5051, 1, "Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051", "Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),
      Option_0_cannot_be_specified_without_specifying_option_1: b(5052, 1, "Option_0_cannot_be_specified_without_specifying_option_1_5052", "Option '{0}' cannot be specified without specifying option '{1}'."),
      Option_0_cannot_be_specified_with_option_1: b(5053, 1, "Option_0_cannot_be_specified_with_option_1_5053", "Option '{0}' cannot be specified with option '{1}'."),
      A_tsconfig_json_file_is_already_defined_at_Colon_0: b(5054, 1, "A_tsconfig_json_file_is_already_defined_at_Colon_0_5054", "A 'tsconfig.json' file is already defined at: '{0}'."),
      Cannot_write_file_0_because_it_would_overwrite_input_file: b(5055, 1, "Cannot_write_file_0_because_it_would_overwrite_input_file_5055", "Cannot write file '{0}' because it would overwrite input file."),
      Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files: b(5056, 1, "Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056", "Cannot write file '{0}' because it would be overwritten by multiple input files."),
      Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0: b(5057, 1, "Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057", "Cannot find a tsconfig.json file at the specified directory: '{0}'."),
      The_specified_path_does_not_exist_Colon_0: b(5058, 1, "The_specified_path_does_not_exist_Colon_0_5058", "The specified path does not exist: '{0}'."),
      Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier: b(5059, 1, "Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059", "Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),
      Pattern_0_can_have_at_most_one_Asterisk_character: b(5061, 1, "Pattern_0_can_have_at_most_one_Asterisk_character_5061", "Pattern '{0}' can have at most one '*' character."),
      Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character: b(5062, 1, "Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062", "Substitution '{0}' in pattern '{1}' can have at most one '*' character."),
      Substitutions_for_pattern_0_should_be_an_array: b(5063, 1, "Substitutions_for_pattern_0_should_be_an_array_5063", "Substitutions for pattern '{0}' should be an array."),
      Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2: b(5064, 1, "Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064", "Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),
      File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0: b(5065, 1, "File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065", "File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),
      Substitutions_for_pattern_0_shouldn_t_be_an_empty_array: b(5066, 1, "Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066", "Substitutions for pattern '{0}' shouldn't be an empty array."),
      Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name: b(5067, 1, "Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067", "Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),
      Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig: b(5068, 1, "Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068", "Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),
      Option_0_cannot_be_specified_without_specifying_option_1_or_option_2: b(5069, 1, "Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069", "Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),
      Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic: b(5070, 1, "Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070", "Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),
      Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd: b(5071, 1, "Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071", "Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),
      Unknown_build_option_0: b(5072, 1, "Unknown_build_option_0_5072", "Unknown build option '{0}'."),
      Build_option_0_requires_a_value_of_type_1: b(5073, 1, "Build_option_0_requires_a_value_of_type_1_5073", "Build option '{0}' requires a value of type {1}."),
      Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified: b(5074, 1, "Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074", "Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),
      _0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2: b(5075, 1, "_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075", "'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),
      _0_and_1_operations_cannot_be_mixed_without_parentheses: b(5076, 1, "_0_and_1_operations_cannot_be_mixed_without_parentheses_5076", "'{0}' and '{1}' operations cannot be mixed without parentheses."),
      Unknown_build_option_0_Did_you_mean_1: b(5077, 1, "Unknown_build_option_0_Did_you_mean_1_5077", "Unknown build option '{0}'. Did you mean '{1}'?"),
      Unknown_watch_option_0: b(5078, 1, "Unknown_watch_option_0_5078", "Unknown watch option '{0}'."),
      Unknown_watch_option_0_Did_you_mean_1: b(5079, 1, "Unknown_watch_option_0_Did_you_mean_1_5079", "Unknown watch option '{0}'. Did you mean '{1}'?"),
      Watch_option_0_requires_a_value_of_type_1: b(5080, 1, "Watch_option_0_requires_a_value_of_type_1_5080", "Watch option '{0}' requires a value of type {1}."),
      Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0: b(5081, 1, "Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081", "Cannot find a tsconfig.json file at the current directory: {0}."),
      _0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1: b(5082, 1, "_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082", "'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),
      Cannot_read_file_0: b(5083, 1, "Cannot_read_file_0_5083", "Cannot read file '{0}'."),
      A_tuple_member_cannot_be_both_optional_and_rest: b(5085, 1, "A_tuple_member_cannot_be_both_optional_and_rest_5085", "A tuple member cannot be both optional and rest."),
      A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type: b(5086, 1, "A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086", "A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),
      A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type: b(5087, 1, "A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087", "A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),
      The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary: b(5088, 1, "The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088", "The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),
      Option_0_cannot_be_specified_when_option_jsx_is_1: b(5089, 1, "Option_0_cannot_be_specified_when_option_jsx_is_1_5089", "Option '{0}' cannot be specified when option 'jsx' is '{1}'."),
      Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash: b(5090, 1, "Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090", "Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),
      Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled: b(5091, 1, "Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091", "Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),
      The_root_value_of_a_0_file_must_be_an_object: b(5092, 1, "The_root_value_of_a_0_file_must_be_an_object_5092", "The root value of a '{0}' file must be an object."),
      Compiler_option_0_may_only_be_used_with_build: b(5093, 1, "Compiler_option_0_may_only_be_used_with_build_5093", "Compiler option '--{0}' may only be used with '--build'."),
      Compiler_option_0_may_not_be_used_with_build: b(5094, 1, "Compiler_option_0_may_not_be_used_with_build_5094", "Compiler option '--{0}' may not be used with '--build'."),
      Option_0_can_only_be_used_when_module_is_set_to_preserve_commonjs_or_es2015_or_later: b(5095, 1, "Option_0_can_only_be_used_when_module_is_set_to_preserve_commonjs_or_es2015_or_later_5095", "Option '{0}' can only be used when 'module' is set to 'preserve', 'commonjs', or 'es2015' or later."),
      Option_allowImportingTsExtensions_can_only_be_used_when_one_of_noEmit_emitDeclarationOnly_or_rewriteRelativeImportExtensions_is_set: b(5096, 1, "Option_allowImportingTsExtensions_can_only_be_used_when_one_of_noEmit_emitDeclarationOnly_or_rewrite_5096", "Option 'allowImportingTsExtensions' can only be used when one of 'noEmit', 'emitDeclarationOnly', or 'rewriteRelativeImportExtensions' is set."),
      An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled: b(5097, 1, "An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097", "An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),
      Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler: b(5098, 1, "Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098", "Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),
      Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error: b(5101, 1, "Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101", `Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),
      Option_0_has_been_removed_Please_remove_it_from_your_configuration: b(5102, 1, "Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102", "Option '{0}' has been removed. Please remove it from your configuration."),
      Invalid_value_for_ignoreDeprecations: b(5103, 1, "Invalid_value_for_ignoreDeprecations_5103", "Invalid value for '--ignoreDeprecations'."),
      Option_0_is_redundant_and_cannot_be_specified_with_option_1: b(5104, 1, "Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104", "Option '{0}' is redundant and cannot be specified with option '{1}'."),
      Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System: b(5105, 1, "Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105", "Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),
      Use_0_instead: b(5106, 3, "Use_0_instead_5106", "Use '{0}' instead."),
      Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error: b(5107, 1, "Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107", `Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),
      Option_0_1_has_been_removed_Please_remove_it_from_your_configuration: b(5108, 1, "Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108", "Option '{0}={1}' has been removed. Please remove it from your configuration."),
      Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1: b(5109, 1, "Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109", "Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),
      Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1: b(5110, 1, "Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110", "Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),
      Visit_https_Colon_Slash_Slashaka_ms_Slashts6_for_migration_information: b(5111, 3, "Visit_https_Colon_Slash_Slashaka_ms_Slashts6_for_migration_information_5111", "Visit https://aka.ms/ts6 for migration information."),
      tsconfig_json_is_present_but_will_not_be_loaded_if_files_are_specified_on_commandline_Use_ignoreConfig_to_skip_this_error: b(5112, 1, "tsconfig_json_is_present_but_will_not_be_loaded_if_files_are_specified_on_commandline_Use_ignoreConf_5112", "tsconfig.json is present but will not be loaded if files are specified on commandline. Use '--ignoreConfig' to skip this error."),
      Generates_a_sourcemap_for_each_corresponding_d_ts_file: b(6e3, 3, "Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000", "Generates a sourcemap for each corresponding '.d.ts' file."),
      Concatenate_and_emit_output_to_single_file: b(6001, 3, "Concatenate_and_emit_output_to_single_file_6001", "Concatenate and emit output to single file."),
      Generates_corresponding_d_ts_file: b(6002, 3, "Generates_corresponding_d_ts_file_6002", "Generates corresponding '.d.ts' file."),
      Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations: b(6004, 3, "Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004", "Specify the location where debugger should locate TypeScript files instead of source locations."),
      Watch_input_files: b(6005, 3, "Watch_input_files_6005", "Watch input files."),
      Redirect_output_structure_to_the_directory: b(6006, 3, "Redirect_output_structure_to_the_directory_6006", "Redirect output structure to the directory."),
      Do_not_erase_const_enum_declarations_in_generated_code: b(6007, 3, "Do_not_erase_const_enum_declarations_in_generated_code_6007", "Do not erase const enum declarations in generated code."),
      Do_not_emit_outputs_if_any_errors_were_reported: b(6008, 3, "Do_not_emit_outputs_if_any_errors_were_reported_6008", "Do not emit outputs if any errors were reported."),
      Do_not_emit_comments_to_output: b(6009, 3, "Do_not_emit_comments_to_output_6009", "Do not emit comments to output."),
      Do_not_emit_outputs: b(6010, 3, "Do_not_emit_outputs_6010", "Do not emit outputs."),
      Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking: b(6011, 3, "Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011", "Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),
      Skip_type_checking_of_declaration_files: b(6012, 3, "Skip_type_checking_of_declaration_files_6012", "Skip type checking of declaration files."),
      Do_not_resolve_the_real_path_of_symlinks: b(6013, 3, "Do_not_resolve_the_real_path_of_symlinks_6013", "Do not resolve the real path of symlinks."),
      Only_emit_d_ts_declaration_files: b(6014, 3, "Only_emit_d_ts_declaration_files_6014", "Only emit '.d.ts' declaration files."),
      Specify_ECMAScript_target_version: b(6015, 3, "Specify_ECMAScript_target_version_6015", "Specify ECMAScript target version."),
      Specify_module_code_generation: b(6016, 3, "Specify_module_code_generation_6016", "Specify module code generation."),
      Print_this_message: b(6017, 3, "Print_this_message_6017", "Print this message."),
      Print_the_compiler_s_version: b(6019, 3, "Print_the_compiler_s_version_6019", "Print the compiler's version."),
      Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json: b(6020, 3, "Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020", "Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),
      Syntax_Colon_0: b(6023, 3, "Syntax_Colon_0_6023", "Syntax: {0}"),
      options: b(6024, 3, "options_6024", "options"),
      file: b(6025, 3, "file_6025", "file"),
      Examples_Colon_0: b(6026, 3, "Examples_Colon_0_6026", "Examples: {0}"),
      Options_Colon: b(6027, 3, "Options_Colon_6027", "Options:"),
      Version_0: b(6029, 3, "Version_0_6029", "Version {0}"),
      Insert_command_line_options_and_files_from_a_file: b(6030, 3, "Insert_command_line_options_and_files_from_a_file_6030", "Insert command line options and files from a file."),
      Starting_compilation_in_watch_mode: b(6031, 3, "Starting_compilation_in_watch_mode_6031", "Starting compilation in watch mode..."),
      File_change_detected_Starting_incremental_compilation: b(6032, 3, "File_change_detected_Starting_incremental_compilation_6032", "File change detected. Starting incremental compilation..."),
      KIND: b(6034, 3, "KIND_6034", "KIND"),
      FILE: b(6035, 3, "FILE_6035", "FILE"),
      VERSION: b(6036, 3, "VERSION_6036", "VERSION"),
      LOCATION: b(6037, 3, "LOCATION_6037", "LOCATION"),
      DIRECTORY: b(6038, 3, "DIRECTORY_6038", "DIRECTORY"),
      STRATEGY: b(6039, 3, "STRATEGY_6039", "STRATEGY"),
      FILE_OR_DIRECTORY: b(6040, 3, "FILE_OR_DIRECTORY_6040", "FILE OR DIRECTORY"),
      Errors_Files: b(6041, 3, "Errors_Files_6041", "Errors  Files"),
      Generates_corresponding_map_file: b(6043, 3, "Generates_corresponding_map_file_6043", "Generates corresponding '.map' file."),
      Compiler_option_0_expects_an_argument: b(6044, 1, "Compiler_option_0_expects_an_argument_6044", "Compiler option '{0}' expects an argument."),
      Unterminated_quoted_string_in_response_file_0: b(6045, 1, "Unterminated_quoted_string_in_response_file_0_6045", "Unterminated quoted string in response file '{0}'."),
      Argument_for_0_option_must_be_Colon_1: b(6046, 1, "Argument_for_0_option_must_be_Colon_1_6046", "Argument for '{0}' option must be: {1}."),
      Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1: b(6048, 1, "Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048", "Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),
      Unable_to_open_file_0: b(6050, 1, "Unable_to_open_file_0_6050", "Unable to open file '{0}'."),
      Corrupted_locale_file_0: b(6051, 1, "Corrupted_locale_file_0_6051", "Corrupted locale file {0}."),
      Raise_error_on_expressions_and_declarations_with_an_implied_any_type: b(6052, 3, "Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052", "Raise error on expressions and declarations with an implied 'any' type."),
      File_0_not_found: b(6053, 1, "File_0_not_found_6053", "File '{0}' not found."),
      File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1: b(6054, 1, "File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054", "File '{0}' has an unsupported extension. The only supported extensions are {1}."),
      Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures: b(6055, 3, "Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055", "Suppress noImplicitAny errors for indexing objects lacking index signatures."),
      Do_not_emit_declarations_for_code_that_has_an_internal_annotation: b(6056, 3, "Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056", "Do not emit declarations for code that has an '@internal' annotation."),
      Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir: b(6058, 3, "Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058", "Specify the root directory of input files. Use to control the output directory structure with --outDir."),
      File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files: b(6059, 1, "File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059", "File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),
      Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix: b(6060, 3, "Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060", "Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),
      NEWLINE: b(6061, 3, "NEWLINE_6061", "NEWLINE"),
      Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line: b(6064, 1, "Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064", "Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),
      Enables_experimental_support_for_ES7_decorators: b(6065, 3, "Enables_experimental_support_for_ES7_decorators_6065", "Enables experimental support for ES7 decorators."),
      Enables_experimental_support_for_emitting_type_metadata_for_decorators: b(6066, 3, "Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066", "Enables experimental support for emitting type metadata for decorators."),
      Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file: b(6070, 3, "Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070", "Initializes a TypeScript project and creates a tsconfig.json file."),
      Successfully_created_a_tsconfig_json_file: b(6071, 3, "Successfully_created_a_tsconfig_json_file_6071", "Successfully created a tsconfig.json file."),
      Suppress_excess_property_checks_for_object_literals: b(6072, 3, "Suppress_excess_property_checks_for_object_literals_6072", "Suppress excess property checks for object literals."),
      Stylize_errors_and_messages_using_color_and_context_experimental: b(6073, 3, "Stylize_errors_and_messages_using_color_and_context_experimental_6073", "Stylize errors and messages using color and context (experimental)."),
      Do_not_report_errors_on_unused_labels: b(6074, 3, "Do_not_report_errors_on_unused_labels_6074", "Do not report errors on unused labels."),
      Report_error_when_not_all_code_paths_in_function_return_a_value: b(6075, 3, "Report_error_when_not_all_code_paths_in_function_return_a_value_6075", "Report error when not all code paths in function return a value."),
      Report_errors_for_fallthrough_cases_in_switch_statement: b(6076, 3, "Report_errors_for_fallthrough_cases_in_switch_statement_6076", "Report errors for fallthrough cases in switch statement."),
      Do_not_report_errors_on_unreachable_code: b(6077, 3, "Do_not_report_errors_on_unreachable_code_6077", "Do not report errors on unreachable code."),
      Disallow_inconsistently_cased_references_to_the_same_file: b(6078, 3, "Disallow_inconsistently_cased_references_to_the_same_file_6078", "Disallow inconsistently-cased references to the same file."),
      Specify_library_files_to_be_included_in_the_compilation: b(6079, 3, "Specify_library_files_to_be_included_in_the_compilation_6079", "Specify library files to be included in the compilation."),
      Specify_JSX_code_generation: b(6080, 3, "Specify_JSX_code_generation_6080", "Specify JSX code generation."),
      Only_amd_and_system_modules_are_supported_alongside_0: b(6082, 1, "Only_amd_and_system_modules_are_supported_alongside_0_6082", "Only 'amd' and 'system' modules are supported alongside --{0}."),
      Base_directory_to_resolve_non_absolute_module_names: b(6083, 3, "Base_directory_to_resolve_non_absolute_module_names_6083", "Base directory to resolve non-absolute module names."),
      Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit: b(6084, 3, "Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084", "[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),
      Enable_tracing_of_the_name_resolution_process: b(6085, 3, "Enable_tracing_of_the_name_resolution_process_6085", "Enable tracing of the name resolution process."),
      Resolving_module_0_from_1: b(6086, 3, "Resolving_module_0_from_1_6086", "======== Resolving module '{0}' from '{1}'. ========"),
      Explicitly_specified_module_resolution_kind_Colon_0: b(6087, 3, "Explicitly_specified_module_resolution_kind_Colon_0_6087", "Explicitly specified module resolution kind: '{0}'."),
      Module_resolution_kind_is_not_specified_using_0: b(6088, 3, "Module_resolution_kind_is_not_specified_using_0_6088", "Module resolution kind is not specified, using '{0}'."),
      Module_name_0_was_successfully_resolved_to_1: b(6089, 3, "Module_name_0_was_successfully_resolved_to_1_6089", "======== Module name '{0}' was successfully resolved to '{1}'. ========"),
      Module_name_0_was_not_resolved: b(6090, 3, "Module_name_0_was_not_resolved_6090", "======== Module name '{0}' was not resolved. ========"),
      paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0: b(6091, 3, "paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091", "'paths' option is specified, looking for a pattern to match module name '{0}'."),
      Module_name_0_matched_pattern_1: b(6092, 3, "Module_name_0_matched_pattern_1_6092", "Module name '{0}', matched pattern '{1}'."),
      Trying_substitution_0_candidate_module_location_Colon_1: b(6093, 3, "Trying_substitution_0_candidate_module_location_Colon_1_6093", "Trying substitution '{0}', candidate module location: '{1}'."),
      Resolving_module_name_0_relative_to_base_url_1_2: b(6094, 3, "Resolving_module_name_0_relative_to_base_url_1_2_6094", "Resolving module name '{0}' relative to base url '{1}' - '{2}'."),
      Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1: b(6095, 3, "Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095", "Loading module as file / folder, candidate module location '{0}', target file types: {1}."),
      File_0_does_not_exist: b(6096, 3, "File_0_does_not_exist_6096", "File '{0}' does not exist."),
      File_0_exists_use_it_as_a_name_resolution_result: b(6097, 3, "File_0_exists_use_it_as_a_name_resolution_result_6097", "File '{0}' exists - use it as a name resolution result."),
      Loading_module_0_from_node_modules_folder_target_file_types_Colon_1: b(6098, 3, "Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098", "Loading module '{0}' from 'node_modules' folder, target file types: {1}."),
      Found_package_json_at_0: b(6099, 3, "Found_package_json_at_0_6099", "Found 'package.json' at '{0}'."),
      package_json_does_not_have_a_0_field: b(6100, 3, "package_json_does_not_have_a_0_field_6100", "'package.json' does not have a '{0}' field."),
      package_json_has_0_field_1_that_references_2: b(6101, 3, "package_json_has_0_field_1_that_references_2_6101", "'package.json' has '{0}' field '{1}' that references '{2}'."),
      Allow_javascript_files_to_be_compiled: b(6102, 3, "Allow_javascript_files_to_be_compiled_6102", "Allow javascript files to be compiled."),
      Checking_if_0_is_the_longest_matching_prefix_for_1_2: b(6104, 3, "Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104", "Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),
      Expected_type_of_0_field_in_package_json_to_be_1_got_2: b(6105, 3, "Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105", "Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),
      baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1: b(6106, 3, "baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106", "'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),
      rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0: b(6107, 3, "rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107", "'rootDirs' option is set, using it to resolve relative module name '{0}'."),
      Longest_matching_prefix_for_0_is_1: b(6108, 3, "Longest_matching_prefix_for_0_is_1_6108", "Longest matching prefix for '{0}' is '{1}'."),
      Loading_0_from_the_root_dir_1_candidate_location_2: b(6109, 3, "Loading_0_from_the_root_dir_1_candidate_location_2_6109", "Loading '{0}' from the root dir '{1}', candidate location '{2}'."),
      Trying_other_entries_in_rootDirs: b(6110, 3, "Trying_other_entries_in_rootDirs_6110", "Trying other entries in 'rootDirs'."),
      Module_resolution_using_rootDirs_has_failed: b(6111, 3, "Module_resolution_using_rootDirs_has_failed_6111", "Module resolution using 'rootDirs' has failed."),
      Do_not_emit_use_strict_directives_in_module_output: b(6112, 3, "Do_not_emit_use_strict_directives_in_module_output_6112", "Do not emit 'use strict' directives in module output."),
      Enable_strict_null_checks: b(6113, 3, "Enable_strict_null_checks_6113", "Enable strict null checks."),
      Unknown_option_excludes_Did_you_mean_exclude: b(6114, 1, "Unknown_option_excludes_Did_you_mean_exclude_6114", "Unknown option 'excludes'. Did you mean 'exclude'?"),
      Raise_error_on_this_expressions_with_an_implied_any_type: b(6115, 3, "Raise_error_on_this_expressions_with_an_implied_any_type_6115", "Raise error on 'this' expressions with an implied 'any' type."),
      Resolving_type_reference_directive_0_containing_file_1_root_directory_2: b(6116, 3, "Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116", "======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),
      Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2: b(6119, 3, "Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119", "======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),
      Type_reference_directive_0_was_not_resolved: b(6120, 3, "Type_reference_directive_0_was_not_resolved_6120", "======== Type reference directive '{0}' was not resolved. ========"),
      Resolving_with_primary_search_path_0: b(6121, 3, "Resolving_with_primary_search_path_0_6121", "Resolving with primary search path '{0}'."),
      Root_directory_cannot_be_determined_skipping_primary_search_paths: b(6122, 3, "Root_directory_cannot_be_determined_skipping_primary_search_paths_6122", "Root directory cannot be determined, skipping primary search paths."),
      Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set: b(6123, 3, "Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123", "======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),
      Type_declaration_files_to_be_included_in_compilation: b(6124, 3, "Type_declaration_files_to_be_included_in_compilation_6124", "Type declaration files to be included in compilation."),
      Looking_up_in_node_modules_folder_initial_location_0: b(6125, 3, "Looking_up_in_node_modules_folder_initial_location_0_6125", "Looking up in 'node_modules' folder, initial location '{0}'."),
      Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder: b(6126, 3, "Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126", "Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),
      Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1: b(6127, 3, "Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127", "======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),
      Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set: b(6128, 3, "Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128", "======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),
      Resolving_real_path_for_0_result_1: b(6130, 3, "Resolving_real_path_for_0_result_1_6130", "Resolving real path for '{0}', result '{1}'."),
      Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system: b(6131, 1, "Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131", "Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),
      File_name_0_has_a_1_extension_stripping_it: b(6132, 3, "File_name_0_has_a_1_extension_stripping_it_6132", "File name '{0}' has a '{1}' extension - stripping it."),
      _0_is_declared_but_its_value_is_never_read: b(6133, 1, "_0_is_declared_but_its_value_is_never_read_6133", "'{0}' is declared but its value is never read.", !0),
      Report_errors_on_unused_locals: b(6134, 3, "Report_errors_on_unused_locals_6134", "Report errors on unused locals."),
      Report_errors_on_unused_parameters: b(6135, 3, "Report_errors_on_unused_parameters_6135", "Report errors on unused parameters."),
      The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files: b(6136, 3, "The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136", "The maximum dependency depth to search under node_modules and load JavaScript files."),
      Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1: b(6137, 1, "Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137", "Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),
      Property_0_is_declared_but_its_value_is_never_read: b(6138, 1, "Property_0_is_declared_but_its_value_is_never_read_6138", "Property '{0}' is declared but its value is never read.", !0),
      Import_emit_helpers_from_tslib: b(6139, 3, "Import_emit_helpers_from_tslib_6139", "Import emit helpers from 'tslib'."),
      Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2: b(6140, 1, "Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140", "Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),
      Parse_in_strict_mode_and_emit_use_strict_for_each_source_file: b(6141, 3, "Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141", 'Parse in strict mode and emit "use strict" for each source file.'),
      Module_0_was_resolved_to_1_but_jsx_is_not_set: b(6142, 1, "Module_0_was_resolved_to_1_but_jsx_is_not_set_6142", "Module '{0}' was resolved to '{1}', but '--jsx' is not set."),
      Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1: b(6144, 3, "Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144", "Module '{0}' was resolved as locally declared ambient module in file '{1}'."),
      Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h: b(6146, 3, "Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146", "Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),
      Resolution_for_module_0_was_found_in_cache_from_location_1: b(6147, 3, "Resolution_for_module_0_was_found_in_cache_from_location_1_6147", "Resolution for module '{0}' was found in cache from location '{1}'."),
      Directory_0_does_not_exist_skipping_all_lookups_in_it: b(6148, 3, "Directory_0_does_not_exist_skipping_all_lookups_in_it_6148", "Directory '{0}' does not exist, skipping all lookups in it."),
      Show_diagnostic_information: b(6149, 3, "Show_diagnostic_information_6149", "Show diagnostic information."),
      Show_verbose_diagnostic_information: b(6150, 3, "Show_verbose_diagnostic_information_6150", "Show verbose diagnostic information."),
      Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file: b(6151, 3, "Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151", "Emit a single file with source maps instead of having a separate file."),
      Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set: b(6152, 3, "Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152", "Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),
      Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule: b(6153, 3, "Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153", "Transpile each file as a separate module (similar to 'ts.transpileModule')."),
      Print_names_of_generated_files_part_of_the_compilation: b(6154, 3, "Print_names_of_generated_files_part_of_the_compilation_6154", "Print names of generated files part of the compilation."),
      Print_names_of_files_part_of_the_compilation: b(6155, 3, "Print_names_of_files_part_of_the_compilation_6155", "Print names of files part of the compilation."),
      The_locale_used_when_displaying_messages_to_the_user_e_g_en_us: b(6156, 3, "The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156", "The locale used when displaying messages to the user (e.g. 'en-us')"),
      Do_not_generate_custom_helper_functions_like_extends_in_compiled_output: b(6157, 3, "Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157", "Do not generate custom helper functions like '__extends' in compiled output."),
      Do_not_include_the_default_library_file_lib_d_ts: b(6158, 3, "Do_not_include_the_default_library_file_lib_d_ts_6158", "Do not include the default library file (lib.d.ts)."),
      Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files: b(6159, 3, "Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159", "Do not add triple-slash references or imported modules to the list of compiled files."),
      Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files: b(6160, 3, "Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160", "[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),
      List_of_folders_to_include_type_definitions_from: b(6161, 3, "List_of_folders_to_include_type_definitions_from_6161", "List of folders to include type definitions from."),
      Disable_size_limitations_on_JavaScript_projects: b(6162, 3, "Disable_size_limitations_on_JavaScript_projects_6162", "Disable size limitations on JavaScript projects."),
      The_character_set_of_the_input_files: b(6163, 3, "The_character_set_of_the_input_files_6163", "The character set of the input files."),
      Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1: b(6164, 3, "Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164", "Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),
      Do_not_truncate_error_messages: b(6165, 3, "Do_not_truncate_error_messages_6165", "Do not truncate error messages."),
      Output_directory_for_generated_declaration_files: b(6166, 3, "Output_directory_for_generated_declaration_files_6166", "Output directory for generated declaration files."),
      A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl: b(6167, 3, "A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167", "A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),
      List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime: b(6168, 3, "List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168", "List of root folders whose combined content represents the structure of the project at runtime."),
      Show_all_compiler_options: b(6169, 3, "Show_all_compiler_options_6169", "Show all compiler options."),
      Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file: b(6170, 3, "Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170", "[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),
      Command_line_Options: b(6171, 3, "Command_line_Options_6171", "Command-line Options"),
      Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5: b(6179, 3, "Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179", "Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),
      Enable_all_strict_type_checking_options: b(6180, 3, "Enable_all_strict_type_checking_options_6180", "Enable all strict type-checking options."),
      Scoped_package_detected_looking_in_0: b(6182, 3, "Scoped_package_detected_looking_in_0_6182", "Scoped package detected, looking in '{0}'"),
      Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2: b(6183, 3, "Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183", "Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),
      Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3: b(6184, 3, "Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184", "Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),
      Enable_strict_checking_of_function_types: b(6186, 3, "Enable_strict_checking_of_function_types_6186", "Enable strict checking of function types."),
      Enable_strict_checking_of_property_initialization_in_classes: b(6187, 3, "Enable_strict_checking_of_property_initialization_in_classes_6187", "Enable strict checking of property initialization in classes."),
      Numeric_separators_are_not_allowed_here: b(6188, 1, "Numeric_separators_are_not_allowed_here_6188", "Numeric separators are not allowed here."),
      Multiple_consecutive_numeric_separators_are_not_permitted: b(6189, 1, "Multiple_consecutive_numeric_separators_are_not_permitted_6189", "Multiple consecutive numeric separators are not permitted."),
      Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen: b(6191, 3, "Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191", "Whether to keep outdated console output in watch mode instead of clearing the screen."),
      All_imports_in_import_declaration_are_unused: b(6192, 1, "All_imports_in_import_declaration_are_unused_6192", "All imports in import declaration are unused.", !0),
      Found_1_error_Watching_for_file_changes: b(6193, 3, "Found_1_error_Watching_for_file_changes_6193", "Found 1 error. Watching for file changes."),
      Found_0_errors_Watching_for_file_changes: b(6194, 3, "Found_0_errors_Watching_for_file_changes_6194", "Found {0} errors. Watching for file changes."),
      Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols: b(6195, 3, "Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195", "Resolve 'keyof' to string valued property names only (no numbers or symbols)."),
      _0_is_declared_but_never_used: b(6196, 1, "_0_is_declared_but_never_used_6196", "'{0}' is declared but never used.", !0),
      Include_modules_imported_with_json_extension: b(6197, 3, "Include_modules_imported_with_json_extension_6197", "Include modules imported with '.json' extension"),
      All_destructured_elements_are_unused: b(6198, 1, "All_destructured_elements_are_unused_6198", "All destructured elements are unused.", !0),
      All_variables_are_unused: b(6199, 1, "All_variables_are_unused_6199", "All variables are unused.", !0),
      Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0: b(6200, 1, "Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200", "Definitions of the following identifiers conflict with those in another file: {0}"),
      Conflicts_are_in_this_file: b(6201, 3, "Conflicts_are_in_this_file_6201", "Conflicts are in this file."),
      Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0: b(6202, 1, "Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202", "Project references may not form a circular graph. Cycle detected: {0}"),
      _0_was_also_declared_here: b(6203, 3, "_0_was_also_declared_here_6203", "'{0}' was also declared here."),
      and_here: b(6204, 3, "and_here_6204", "and here."),
      All_type_parameters_are_unused: b(6205, 1, "All_type_parameters_are_unused_6205", "All type parameters are unused."),
      package_json_has_a_typesVersions_field_with_version_specific_path_mappings: b(6206, 3, "package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206", "'package.json' has a 'typesVersions' field with version-specific path mappings."),
      package_json_does_not_have_a_typesVersions_entry_that_matches_version_0: b(6207, 3, "package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207", "'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),
      package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2: b(6208, 3, "package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208", "'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),
      package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range: b(6209, 3, "package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209", "'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),
      An_argument_for_0_was_not_provided: b(6210, 3, "An_argument_for_0_was_not_provided_6210", "An argument for '{0}' was not provided."),
      An_argument_matching_this_binding_pattern_was_not_provided: b(6211, 3, "An_argument_matching_this_binding_pattern_was_not_provided_6211", "An argument matching this binding pattern was not provided."),
      Did_you_mean_to_call_this_expression: b(6212, 3, "Did_you_mean_to_call_this_expression_6212", "Did you mean to call this expression?"),
      Did_you_mean_to_use_new_with_this_expression: b(6213, 3, "Did_you_mean_to_use_new_with_this_expression_6213", "Did you mean to use 'new' with this expression?"),
      Enable_strict_bind_call_and_apply_methods_on_functions: b(6214, 3, "Enable_strict_bind_call_and_apply_methods_on_functions_6214", "Enable strict 'bind', 'call', and 'apply' methods on functions."),
      Using_compiler_options_of_project_reference_redirect_0: b(6215, 3, "Using_compiler_options_of_project_reference_redirect_0_6215", "Using compiler options of project reference redirect '{0}'."),
      Found_1_error: b(6216, 3, "Found_1_error_6216", "Found 1 error."),
      Found_0_errors: b(6217, 3, "Found_0_errors_6217", "Found {0} errors."),
      Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2: b(6218, 3, "Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218", "======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),
      Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3: b(6219, 3, "Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219", "======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),
      package_json_had_a_falsy_0_field: b(6220, 3, "package_json_had_a_falsy_0_field_6220", "'package.json' had a falsy '{0}' field."),
      Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects: b(6221, 3, "Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221", "Disable use of source files instead of declaration files from referenced projects."),
      Emit_class_fields_with_Define_instead_of_Set: b(6222, 3, "Emit_class_fields_with_Define_instead_of_Set_6222", "Emit class fields with Define instead of Set."),
      Generates_a_CPU_profile: b(6223, 3, "Generates_a_CPU_profile_6223", "Generates a CPU profile."),
      Disable_solution_searching_for_this_project: b(6224, 3, "Disable_solution_searching_for_this_project_6224", "Disable solution searching for this project."),
      Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory: b(6225, 3, "Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225", "Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),
      Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling: b(6226, 3, "Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226", "Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),
      Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize: b(6227, 3, "Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227", "Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),
      Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3: b(6229, 1, "Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229", "Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),
      Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line: b(6230, 1, "Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230", "Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),
      Could_not_resolve_the_path_0_with_the_extensions_Colon_1: b(6231, 1, "Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231", "Could not resolve the path '{0}' with the extensions: {1}."),
      Declaration_augments_declaration_in_another_file_This_cannot_be_serialized: b(6232, 1, "Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232", "Declaration augments declaration in another file. This cannot be serialized."),
      This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file: b(6233, 1, "This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233", "This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),
      This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without: b(6234, 1, "This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234", "This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),
      Disable_loading_referenced_projects: b(6235, 3, "Disable_loading_referenced_projects_6235", "Disable loading referenced projects."),
      Arguments_for_the_rest_parameter_0_were_not_provided: b(6236, 1, "Arguments_for_the_rest_parameter_0_were_not_provided_6236", "Arguments for the rest parameter '{0}' were not provided."),
      Generates_an_event_trace_and_a_list_of_types: b(6237, 3, "Generates_an_event_trace_and_a_list_of_types_6237", "Generates an event trace and a list of types."),
      Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react: b(6238, 1, "Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238", "Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),
      File_0_exists_according_to_earlier_cached_lookups: b(6239, 3, "File_0_exists_according_to_earlier_cached_lookups_6239", "File '{0}' exists according to earlier cached lookups."),
      File_0_does_not_exist_according_to_earlier_cached_lookups: b(6240, 3, "File_0_does_not_exist_according_to_earlier_cached_lookups_6240", "File '{0}' does not exist according to earlier cached lookups."),
      Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1: b(6241, 3, "Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241", "Resolution for type reference directive '{0}' was found in cache from location '{1}'."),
      Resolving_type_reference_directive_0_containing_file_1: b(6242, 3, "Resolving_type_reference_directive_0_containing_file_1_6242", "======== Resolving type reference directive '{0}', containing file '{1}'. ========"),
      Interpret_optional_property_types_as_written_rather_than_adding_undefined: b(6243, 3, "Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243", "Interpret optional property types as written, rather than adding 'undefined'."),
      Modules: b(6244, 3, "Modules_6244", "Modules"),
      File_Management: b(6245, 3, "File_Management_6245", "File Management"),
      Emit: b(6246, 3, "Emit_6246", "Emit"),
      JavaScript_Support: b(6247, 3, "JavaScript_Support_6247", "JavaScript Support"),
      Type_Checking: b(6248, 3, "Type_Checking_6248", "Type Checking"),
      Editor_Support: b(6249, 3, "Editor_Support_6249", "Editor Support"),
      Watch_and_Build_Modes: b(6250, 3, "Watch_and_Build_Modes_6250", "Watch and Build Modes"),
      Compiler_Diagnostics: b(6251, 3, "Compiler_Diagnostics_6251", "Compiler Diagnostics"),
      Interop_Constraints: b(6252, 3, "Interop_Constraints_6252", "Interop Constraints"),
      Backwards_Compatibility: b(6253, 3, "Backwards_Compatibility_6253", "Backwards Compatibility"),
      Language_and_Environment: b(6254, 3, "Language_and_Environment_6254", "Language and Environment"),
      Projects: b(6255, 3, "Projects_6255", "Projects"),
      Output_Formatting: b(6256, 3, "Output_Formatting_6256", "Output Formatting"),
      Completeness: b(6257, 3, "Completeness_6257", "Completeness"),
      _0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file: b(6258, 1, "_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258", "'{0}' should be set inside the 'compilerOptions' object of the config json file"),
      Found_1_error_in_0: b(6259, 3, "Found_1_error_in_0_6259", "Found 1 error in {0}"),
      Found_0_errors_in_the_same_file_starting_at_Colon_1: b(6260, 3, "Found_0_errors_in_the_same_file_starting_at_Colon_1_6260", "Found {0} errors in the same file, starting at: {1}"),
      Found_0_errors_in_1_files: b(6261, 3, "Found_0_errors_in_1_files_6261", "Found {0} errors in {1} files."),
      File_name_0_has_a_1_extension_looking_up_2_instead: b(6262, 3, "File_name_0_has_a_1_extension_looking_up_2_instead_6262", "File name '{0}' has a '{1}' extension - looking up '{2}' instead."),
      Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set: b(6263, 1, "Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263", "Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),
      Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present: b(6264, 3, "Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264", "Enable importing files with any extension, provided a declaration file is present."),
      Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder: b(6265, 3, "Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265", "Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),
      Option_0_can_only_be_specified_on_command_line: b(6266, 1, "Option_0_can_only_be_specified_on_command_line_6266", "Option '{0}' can only be specified on command line."),
      Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve: b(6270, 3, "Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270", "Directory '{0}' has no containing package.json scope. Imports will not resolve."),
      Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1: b(6271, 3, "Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271", "Import specifier '{0}' does not exist in package.json scope at path '{1}'."),
      Invalid_import_specifier_0_has_no_possible_resolutions: b(6272, 3, "Invalid_import_specifier_0_has_no_possible_resolutions_6272", "Invalid import specifier '{0}' has no possible resolutions."),
      package_json_scope_0_has_no_imports_defined: b(6273, 3, "package_json_scope_0_has_no_imports_defined_6273", "package.json scope '{0}' has no imports defined."),
      package_json_scope_0_explicitly_maps_specifier_1_to_null: b(6274, 3, "package_json_scope_0_explicitly_maps_specifier_1_to_null_6274", "package.json scope '{0}' explicitly maps specifier '{1}' to null."),
      package_json_scope_0_has_invalid_type_for_target_of_specifier_1: b(6275, 3, "package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275", "package.json scope '{0}' has invalid type for target of specifier '{1}'"),
      Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1: b(6276, 3, "Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276", "Export specifier '{0}' does not exist in package.json scope at path '{1}'."),
      Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update: b(6277, 3, "Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),
      There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings: b(6278, 3, "There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278", `There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),
      Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update: b(6279, 3, "Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279", "Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),
      There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler: b(6280, 3, "There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280", "There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),
      package_json_has_a_peerDependencies_field: b(6281, 3, "package_json_has_a_peerDependencies_field_6281", "'package.json' has a 'peerDependencies' field."),
      Found_peerDependency_0_with_1_version: b(6282, 3, "Found_peerDependency_0_with_1_version_6282", "Found peerDependency '{0}' with '{1}' version."),
      Failed_to_find_peerDependency_0: b(6283, 3, "Failed_to_find_peerDependency_0_6283", "Failed to find peerDependency '{0}'."),
      File_Layout: b(6284, 3, "File_Layout_6284", "File Layout"),
      Environment_Settings: b(6285, 3, "Environment_Settings_6285", "Environment Settings"),
      See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule: b(6286, 3, "See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule_6286", "See also https://aka.ms/tsconfig/module"),
      For_nodejs_Colon: b(6287, 3, "For_nodejs_Colon_6287", "For nodejs:"),
      and_npm_install_D_types_Slashnode: b(6290, 3, "and_npm_install_D_types_Slashnode_6290", "and npm install -D @types/node"),
      Other_Outputs: b(6291, 3, "Other_Outputs_6291", "Other Outputs"),
      Stricter_Typechecking_Options: b(6292, 3, "Stricter_Typechecking_Options_6292", "Stricter Typechecking Options"),
      Style_Options: b(6293, 3, "Style_Options_6293", "Style Options"),
      Recommended_Options: b(6294, 3, "Recommended_Options_6294", "Recommended Options"),
      Enable_project_compilation: b(6302, 3, "Enable_project_compilation_6302", "Enable project compilation"),
      Composite_projects_may_not_disable_declaration_emit: b(6304, 1, "Composite_projects_may_not_disable_declaration_emit_6304", "Composite projects may not disable declaration emit."),
      Output_file_0_has_not_been_built_from_source_file_1: b(6305, 1, "Output_file_0_has_not_been_built_from_source_file_1_6305", "Output file '{0}' has not been built from source file '{1}'."),
      Referenced_project_0_must_have_setting_composite_Colon_true: b(6306, 1, "Referenced_project_0_must_have_setting_composite_Colon_true_6306", `Referenced project '{0}' must have setting "composite": true.`),
      File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern: b(6307, 1, "File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307", "File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),
      Referenced_project_0_may_not_disable_emit: b(6310, 1, "Referenced_project_0_may_not_disable_emit_6310", "Referenced project '{0}' may not disable emit."),
      Project_0_is_out_of_date_because_output_1_is_older_than_input_2: b(6350, 3, "Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350", "Project '{0}' is out of date because output '{1}' is older than input '{2}'"),
      Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2: b(6351, 3, "Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351", "Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),
      Project_0_is_out_of_date_because_output_file_1_does_not_exist: b(6352, 3, "Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352", "Project '{0}' is out of date because output file '{1}' does not exist"),
      Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date: b(6353, 3, "Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353", "Project '{0}' is out of date because its dependency '{1}' is out of date"),
      Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies: b(6354, 3, "Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354", "Project '{0}' is up to date with .d.ts files from its dependencies"),
      Projects_in_this_build_Colon_0: b(6355, 3, "Projects_in_this_build_Colon_0_6355", "Projects in this build: {0}"),
      A_non_dry_build_would_delete_the_following_files_Colon_0: b(6356, 3, "A_non_dry_build_would_delete_the_following_files_Colon_0_6356", "A non-dry build would delete the following files: {0}"),
      A_non_dry_build_would_build_project_0: b(6357, 3, "A_non_dry_build_would_build_project_0_6357", "A non-dry build would build project '{0}'"),
      Building_project_0: b(6358, 3, "Building_project_0_6358", "Building project '{0}'..."),
      Updating_output_timestamps_of_project_0: b(6359, 3, "Updating_output_timestamps_of_project_0_6359", "Updating output timestamps of project '{0}'..."),
      Project_0_is_up_to_date: b(6361, 3, "Project_0_is_up_to_date_6361", "Project '{0}' is up to date"),
      Skipping_build_of_project_0_because_its_dependency_1_has_errors: b(6362, 3, "Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362", "Skipping build of project '{0}' because its dependency '{1}' has errors"),
      Project_0_can_t_be_built_because_its_dependency_1_has_errors: b(6363, 3, "Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363", "Project '{0}' can't be built because its dependency '{1}' has errors"),
      Build_one_or_more_projects_and_their_dependencies_if_out_of_date: b(6364, 3, "Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364", "Build one or more projects and their dependencies, if out of date"),
      Delete_the_outputs_of_all_projects: b(6365, 3, "Delete_the_outputs_of_all_projects_6365", "Delete the outputs of all projects."),
      Show_what_would_be_built_or_deleted_if_specified_with_clean: b(6367, 3, "Show_what_would_be_built_or_deleted_if_specified_with_clean_6367", "Show what would be built (or deleted, if specified with '--clean')"),
      Option_build_must_be_the_first_command_line_argument: b(6369, 1, "Option_build_must_be_the_first_command_line_argument_6369", "Option '--build' must be the first command line argument."),
      Options_0_and_1_cannot_be_combined: b(6370, 1, "Options_0_and_1_cannot_be_combined_6370", "Options '{0}' and '{1}' cannot be combined."),
      Updating_unchanged_output_timestamps_of_project_0: b(6371, 3, "Updating_unchanged_output_timestamps_of_project_0_6371", "Updating unchanged output timestamps of project '{0}'..."),
      A_non_dry_build_would_update_timestamps_for_output_of_project_0: b(6374, 3, "A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374", "A non-dry build would update timestamps for output of project '{0}'"),
      Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1: b(6377, 1, "Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377", "Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),
      Composite_projects_may_not_disable_incremental_compilation: b(6379, 1, "Composite_projects_may_not_disable_incremental_compilation_6379", "Composite projects may not disable incremental compilation."),
      Specify_file_to_store_incremental_compilation_information: b(6380, 3, "Specify_file_to_store_incremental_compilation_information_6380", "Specify file to store incremental compilation information"),
      Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2: b(6381, 3, "Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381", "Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),
      Skipping_build_of_project_0_because_its_dependency_1_was_not_built: b(6382, 3, "Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382", "Skipping build of project '{0}' because its dependency '{1}' was not built"),
      Project_0_can_t_be_built_because_its_dependency_1_was_not_built: b(6383, 3, "Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383", "Project '{0}' can't be built because its dependency '{1}' was not built"),
      Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it: b(6384, 3, "Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384", "Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),
      _0_is_deprecated: b(6385, 2, "_0_is_deprecated_6385", "'{0}' is deprecated.", void 0, void 0, !0),
      Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found: b(6386, 3, "Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386", "Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),
      The_signature_0_of_1_is_deprecated: b(6387, 2, "The_signature_0_of_1_is_deprecated_6387", "The signature '{0}' of '{1}' is deprecated.", void 0, void 0, !0),
      Project_0_is_being_forcibly_rebuilt: b(6388, 3, "Project_0_is_being_forcibly_rebuilt_6388", "Project '{0}' is being forcibly rebuilt"),
      Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved: b(6389, 3, "Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389", "Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),
      Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2: b(6390, 3, "Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390", "Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),
      Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3: b(6391, 3, "Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391", "Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),
      Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved: b(6392, 3, "Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392", "Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),
      Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3: b(6393, 3, "Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393", "Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),
      Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4: b(6394, 3, "Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394", "Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),
      Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved: b(6395, 3, "Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395", "Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),
      Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3: b(6396, 3, "Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396", "Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),
      Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4: b(6397, 3, "Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397", "Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),
      Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved: b(6398, 3, "Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398", "Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),
      Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted: b(6399, 3, "Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399", "Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),
      Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files: b(6400, 3, "Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400", "Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),
      Project_0_is_out_of_date_because_there_was_error_reading_file_1: b(6401, 3, "Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401", "Project '{0}' is out of date because there was error reading file '{1}'"),
      Resolving_in_0_mode_with_conditions_1: b(6402, 3, "Resolving_in_0_mode_with_conditions_1_6402", "Resolving in {0} mode with conditions {1}."),
      Matched_0_condition_1: b(6403, 3, "Matched_0_condition_1_6403", "Matched '{0}' condition '{1}'."),
      Using_0_subpath_1_with_target_2: b(6404, 3, "Using_0_subpath_1_with_target_2_6404", "Using '{0}' subpath '{1}' with target '{2}'."),
      Saw_non_matching_condition_0: b(6405, 3, "Saw_non_matching_condition_0_6405", "Saw non-matching condition '{0}'."),
      Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions: b(6406, 3, "Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406", "Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),
      Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set: b(6407, 3, "Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407", "Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),
      Use_the_package_json_exports_field_when_resolving_package_imports: b(6408, 3, "Use_the_package_json_exports_field_when_resolving_package_imports_6408", "Use the package.json 'exports' field when resolving package imports."),
      Use_the_package_json_imports_field_when_resolving_imports: b(6409, 3, "Use_the_package_json_imports_field_when_resolving_imports_6409", "Use the package.json 'imports' field when resolving imports."),
      Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports: b(6410, 3, "Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410", "Conditions to set in addition to the resolver-specific defaults when resolving imports."),
      true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false: b(6411, 3, "true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411", "`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),
      Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more: b(6412, 3, "Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412", "Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),
      Entering_conditional_exports: b(6413, 3, "Entering_conditional_exports_6413", "Entering conditional exports."),
      Resolved_under_condition_0: b(6414, 3, "Resolved_under_condition_0_6414", "Resolved under condition '{0}'."),
      Failed_to_resolve_under_condition_0: b(6415, 3, "Failed_to_resolve_under_condition_0_6415", "Failed to resolve under condition '{0}'."),
      Exiting_conditional_exports: b(6416, 3, "Exiting_conditional_exports_6416", "Exiting conditional exports."),
      Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0: b(6417, 3, "Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417", "Searching all ancestor node_modules directories for preferred extensions: {0}."),
      Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0: b(6418, 3, "Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418", "Searching all ancestor node_modules directories for fallback extensions: {0}."),
      Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors: b(6419, 3, "Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors_6419", "Project '{0}' is out of date because buildinfo file '{1}' indicates that program needs to report errors."),
      Project_0_is_out_of_date_because_1: b(6420, 3, "Project_0_is_out_of_date_because_1_6420", "Project '{0}' is out of date because {1}."),
      Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files: b(6421, 3, "Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_i_6421", "Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in relative import paths to their JavaScript equivalent in output files."),
      The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1: b(6500, 3, "The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500", "The expected type comes from property '{0}' which is declared here on type '{1}'"),
      The_expected_type_comes_from_this_index_signature: b(6501, 3, "The_expected_type_comes_from_this_index_signature_6501", "The expected type comes from this index signature."),
      The_expected_type_comes_from_the_return_type_of_this_signature: b(6502, 3, "The_expected_type_comes_from_the_return_type_of_this_signature_6502", "The expected type comes from the return type of this signature."),
      Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing: b(6503, 3, "Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503", "Print names of files that are part of the compilation and then stop processing."),
      File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option: b(6504, 1, "File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504", "File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),
      Print_names_of_files_and_the_reason_they_are_part_of_the_compilation: b(6505, 3, "Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505", "Print names of files and the reason they are part of the compilation."),
      Consider_adding_a_declare_modifier_to_this_class: b(6506, 3, "Consider_adding_a_declare_modifier_to_this_class_6506", "Consider adding a 'declare' modifier to this class."),
      Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files: b(6600, 3, "Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these__6600", "Allow JavaScript files to be a part of your program. Use the 'checkJs' option to get errors from these files."),
      Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export: b(6601, 3, "Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601", "Allow 'import x from y' when a module doesn't have a default export."),
      Allow_accessing_UMD_globals_from_modules: b(6602, 3, "Allow_accessing_UMD_globals_from_modules_6602", "Allow accessing UMD globals from modules."),
      Disable_error_reporting_for_unreachable_code: b(6603, 3, "Disable_error_reporting_for_unreachable_code_6603", "Disable error reporting for unreachable code."),
      Disable_error_reporting_for_unused_labels: b(6604, 3, "Disable_error_reporting_for_unused_labels_6604", "Disable error reporting for unused labels."),
      Ensure_use_strict_is_always_emitted: b(6605, 3, "Ensure_use_strict_is_always_emitted_6605", "Ensure 'use strict' is always emitted."),
      Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it: b(6606, 3, "Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606", "Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),
      Specify_the_base_directory_to_resolve_non_relative_module_names: b(6607, 3, "Specify_the_base_directory_to_resolve_non_relative_module_names_6607", "Specify the base directory to resolve non-relative module names."),
      No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files: b(6608, 3, "No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608", "No longer supported. In early versions, manually set the text encoding for reading files."),
      Enable_error_reporting_in_type_checked_JavaScript_files: b(6609, 3, "Enable_error_reporting_in_type_checked_JavaScript_files_6609", "Enable error reporting in type-checked JavaScript files."),
      Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references: b(6611, 3, "Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611", "Enable constraints that allow a TypeScript project to be used with project references."),
      Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project: b(6612, 3, "Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612", "Generate .d.ts files from TypeScript and JavaScript files in your project."),
      Specify_the_output_directory_for_generated_declaration_files: b(6613, 3, "Specify_the_output_directory_for_generated_declaration_files_6613", "Specify the output directory for generated declaration files."),
      Create_sourcemaps_for_d_ts_files: b(6614, 3, "Create_sourcemaps_for_d_ts_files_6614", "Create sourcemaps for d.ts files."),
      Output_compiler_performance_information_after_building: b(6615, 3, "Output_compiler_performance_information_after_building_6615", "Output compiler performance information after building."),
      Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project: b(6616, 3, "Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616", "Disables inference for type acquisition by looking at filenames in a project."),
      Reduce_the_number_of_projects_loaded_automatically_by_TypeScript: b(6617, 3, "Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617", "Reduce the number of projects loaded automatically by TypeScript."),
      Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server: b(6618, 3, "Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618", "Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),
      Opt_a_project_out_of_multi_project_reference_checking_when_editing: b(6619, 3, "Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619", "Opt a project out of multi-project reference checking when editing."),
      Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects: b(6620, 3, "Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620", "Disable preferring source files instead of declaration files when referencing composite projects."),
      Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration: b(6621, 3, "Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621", "Emit more compliant, but verbose and less performant JavaScript for iteration."),
      Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files: b(6622, 3, "Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622", "Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),
      Only_output_d_ts_files_and_not_JavaScript_files: b(6623, 3, "Only_output_d_ts_files_and_not_JavaScript_files_6623", "Only output d.ts files and not JavaScript files."),
      Emit_design_type_metadata_for_decorated_declarations_in_source_files: b(6624, 3, "Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624", "Emit design-type metadata for decorated declarations in source files."),
      Disable_the_type_acquisition_for_JavaScript_projects: b(6625, 3, "Disable_the_type_acquisition_for_JavaScript_projects_6625", "Disable the type acquisition for JavaScript projects"),
      Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility: b(6626, 3, "Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626", "Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),
      Filters_results_from_the_include_option: b(6627, 3, "Filters_results_from_the_include_option_6627", "Filters results from the `include` option."),
      Remove_a_list_of_directories_from_the_watch_process: b(6628, 3, "Remove_a_list_of_directories_from_the_watch_process_6628", "Remove a list of directories from the watch process."),
      Remove_a_list_of_files_from_the_watch_mode_s_processing: b(6629, 3, "Remove_a_list_of_files_from_the_watch_mode_s_processing_6629", "Remove a list of files from the watch mode's processing."),
      Enable_experimental_support_for_legacy_experimental_decorators: b(6630, 3, "Enable_experimental_support_for_legacy_experimental_decorators_6630", "Enable experimental support for legacy experimental decorators."),
      Print_files_read_during_the_compilation_including_why_it_was_included: b(6631, 3, "Print_files_read_during_the_compilation_including_why_it_was_included_6631", "Print files read during the compilation including why it was included."),
      Output_more_detailed_compiler_performance_information_after_building: b(6632, 3, "Output_more_detailed_compiler_performance_information_after_building_6632", "Output more detailed compiler performance information after building."),
      Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited: b(6633, 3, "Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633", "Specify one or more path or node module references to base configuration files from which settings are inherited."),
      Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers: b(6634, 3, "Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634", "Specify what approach the watcher should use if the system runs out of native file watchers."),
      Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include: b(6635, 3, "Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635", "Include a list of files. This does not support glob patterns, as opposed to `include`."),
      Build_all_projects_including_those_that_appear_to_be_up_to_date: b(6636, 3, "Build_all_projects_including_those_that_appear_to_be_up_to_date_6636", "Build all projects, including those that appear to be up to date."),
      Ensure_that_casing_is_correct_in_imports: b(6637, 3, "Ensure_that_casing_is_correct_in_imports_6637", "Ensure that casing is correct in imports."),
      Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging: b(6638, 3, "Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638", "Emit a v8 CPU profile of the compiler run for debugging."),
      Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file: b(6639, 3, "Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639", "Allow importing helper functions from tslib once per project, instead of including them per-file."),
      Skip_building_downstream_projects_on_error_in_upstream_project: b(6640, 3, "Skip_building_downstream_projects_on_error_in_upstream_project_6640", "Skip building downstream projects on error in upstream project."),
      Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation: b(6641, 3, "Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641", "Specify a list of glob patterns that match files to be included in compilation."),
      Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects: b(6642, 3, "Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642", "Save .tsbuildinfo files to allow for incremental compilation of projects."),
      Include_sourcemap_files_inside_the_emitted_JavaScript: b(6643, 3, "Include_sourcemap_files_inside_the_emitted_JavaScript_6643", "Include sourcemap files inside the emitted JavaScript."),
      Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript: b(6644, 3, "Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644", "Include source code in the sourcemaps inside the emitted JavaScript."),
      Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports: b(6645, 3, "Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645", "Ensure that each file can be safely transpiled without relying on other imports."),
      Specify_what_JSX_code_is_generated: b(6646, 3, "Specify_what_JSX_code_is_generated_6646", "Specify what JSX code is generated."),
      Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h: b(6647, 3, "Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647", "Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),
      Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment: b(6648, 3, "Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648", "Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),
      Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk: b(6649, 3, "Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649", "Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),
      Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option: b(6650, 3, "Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650", "Make keyof only return strings instead of string, numbers or symbols. Legacy option."),
      Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment: b(6651, 3, "Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651", "Specify a set of bundled library declaration files that describe the target runtime environment."),
      Print_the_names_of_emitted_files_after_a_compilation: b(6652, 3, "Print_the_names_of_emitted_files_after_a_compilation_6652", "Print the names of emitted files after a compilation."),
      Print_all_of_the_files_read_during_the_compilation: b(6653, 3, "Print_all_of_the_files_read_during_the_compilation_6653", "Print all of the files read during the compilation."),
      Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit: b(6654, 3, "Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654", "Set the language of the messaging from TypeScript. This does not affect emit."),
      Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations: b(6655, 3, "Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655", "Specify the location where debugger should locate map files instead of generated locations."),
      Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs: b(6656, 3, "Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656", "Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),
      Specify_what_module_code_is_generated: b(6657, 3, "Specify_what_module_code_is_generated_6657", "Specify what module code is generated."),
      Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier: b(6658, 3, "Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658", "Specify how TypeScript looks up a file from a given module specifier."),
      Set_the_newline_character_for_emitting_files: b(6659, 3, "Set_the_newline_character_for_emitting_files_6659", "Set the newline character for emitting files."),
      Disable_emitting_files_from_a_compilation: b(6660, 3, "Disable_emitting_files_from_a_compilation_6660", "Disable emitting files from a compilation."),
      Disable_generating_custom_helper_functions_like_extends_in_compiled_output: b(6661, 3, "Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661", "Disable generating custom helper functions like '__extends' in compiled output."),
      Disable_emitting_files_if_any_type_checking_errors_are_reported: b(6662, 3, "Disable_emitting_files_if_any_type_checking_errors_are_reported_6662", "Disable emitting files if any type checking errors are reported."),
      Disable_truncating_types_in_error_messages: b(6663, 3, "Disable_truncating_types_in_error_messages_6663", "Disable truncating types in error messages."),
      Enable_error_reporting_for_fallthrough_cases_in_switch_statements: b(6664, 3, "Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664", "Enable error reporting for fallthrough cases in switch statements."),
      Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type: b(6665, 3, "Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665", "Enable error reporting for expressions and declarations with an implied 'any' type."),
      Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier: b(6666, 3, "Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666", "Ensure overriding members in derived classes are marked with an override modifier."),
      Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function: b(6667, 3, "Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667", "Enable error reporting for codepaths that do not explicitly return in a function."),
      Enable_error_reporting_when_this_is_given_the_type_any: b(6668, 3, "Enable_error_reporting_when_this_is_given_the_type_any_6668", "Enable error reporting when 'this' is given the type 'any'."),
      Disable_adding_use_strict_directives_in_emitted_JavaScript_files: b(6669, 3, "Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669", "Disable adding 'use strict' directives in emitted JavaScript files."),
      Disable_including_any_library_files_including_the_default_lib_d_ts: b(6670, 3, "Disable_including_any_library_files_including_the_default_lib_d_ts_6670", "Disable including any library files, including the default lib.d.ts."),
      Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type: b(6671, 3, "Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671", "Enforces using indexed accessors for keys declared using an indexed type."),
      Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project: b(6672, 3, "Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672", "Disallow 'import's, 'require's or '<reference>'s from expanding the number of files TypeScript should add to a project."),
      Disable_strict_checking_of_generic_signatures_in_function_types: b(6673, 3, "Disable_strict_checking_of_generic_signatures_in_function_types_6673", "Disable strict checking of generic signatures in function types."),
      Add_undefined_to_a_type_when_accessed_using_an_index: b(6674, 3, "Add_undefined_to_a_type_when_accessed_using_an_index_6674", "Add 'undefined' to a type when accessed using an index."),
      Enable_error_reporting_when_local_variables_aren_t_read: b(6675, 3, "Enable_error_reporting_when_local_variables_aren_t_read_6675", "Enable error reporting when local variables aren't read."),
      Raise_an_error_when_a_function_parameter_isn_t_read: b(6676, 3, "Raise_an_error_when_a_function_parameter_isn_t_read_6676", "Raise an error when a function parameter isn't read."),
      Deprecated_setting_Use_outFile_instead: b(6677, 3, "Deprecated_setting_Use_outFile_instead_6677", "Deprecated setting. Use 'outFile' instead."),
      Specify_an_output_folder_for_all_emitted_files: b(6678, 3, "Specify_an_output_folder_for_all_emitted_files_6678", "Specify an output folder for all emitted files."),
      Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output: b(6679, 3, "Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679", "Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),
      Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations: b(6680, 3, "Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680", "Specify a set of entries that re-map imports to additional lookup locations."),
      Specify_a_list_of_language_service_plugins_to_include: b(6681, 3, "Specify_a_list_of_language_service_plugins_to_include_6681", "Specify a list of language service plugins to include."),
      Disable_erasing_const_enum_declarations_in_generated_code: b(6682, 3, "Disable_erasing_const_enum_declarations_in_generated_code_6682", "Disable erasing 'const enum' declarations in generated code."),
      Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node: b(6683, 3, "Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683", "Disable resolving symlinks to their realpath. This correlates to the same flag in node."),
      Disable_wiping_the_console_in_watch_mode: b(6684, 3, "Disable_wiping_the_console_in_watch_mode_6684", "Disable wiping the console in watch mode."),
      Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read: b(6685, 3, "Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685", "Enable color and formatting in TypeScript's output to make compiler errors easier to read."),
      Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit: b(6686, 3, "Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686", "Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),
      Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references: b(6687, 3, "Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687", "Specify an array of objects that specify paths for projects. Used in project references."),
      Disable_emitting_comments: b(6688, 3, "Disable_emitting_comments_6688", "Disable emitting comments."),
      Enable_importing_json_files: b(6689, 3, "Enable_importing_json_files_6689", "Enable importing .json files."),
      Specify_the_root_folder_within_your_source_files: b(6690, 3, "Specify_the_root_folder_within_your_source_files_6690", "Specify the root folder within your source files."),
      Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules: b(6691, 3, "Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691", "Allow multiple folders to be treated as one when resolving modules."),
      Skip_type_checking_d_ts_files_that_are_included_with_TypeScript: b(6692, 3, "Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692", "Skip type checking .d.ts files that are included with TypeScript."),
      Skip_type_checking_all_d_ts_files: b(6693, 3, "Skip_type_checking_all_d_ts_files_6693", "Skip type checking all .d.ts files."),
      Create_source_map_files_for_emitted_JavaScript_files: b(6694, 3, "Create_source_map_files_for_emitted_JavaScript_files_6694", "Create source map files for emitted JavaScript files."),
      Specify_the_root_path_for_debuggers_to_find_the_reference_source_code: b(6695, 3, "Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695", "Specify the root path for debuggers to find the reference source code."),
      Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function: b(6697, 3, "Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697", "Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),
      When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible: b(6698, 3, "When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698", "When assigning functions, check to ensure parameters and the return values are subtype-compatible."),
      When_type_checking_take_into_account_null_and_undefined: b(6699, 3, "When_type_checking_take_into_account_null_and_undefined_6699", "When type checking, take into account 'null' and 'undefined'."),
      Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor: b(6700, 3, "Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700", "Check for class properties that are declared but not set in the constructor."),
      Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments: b(6701, 3, "Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701", "Disable emitting declarations that have '@internal' in their JSDoc comments."),
      Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals: b(6702, 3, "Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702", "Disable reporting of excess property errors during the creation of object literals."),
      Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures: b(6703, 3, "Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703", "Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),
      Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively: b(6704, 3, "Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704", "Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),
      Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations: b(6705, 3, "Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705", "Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),
      Log_paths_used_during_the_moduleResolution_process: b(6706, 3, "Log_paths_used_during_the_moduleResolution_process_6706", "Log paths used during the 'moduleResolution' process."),
      Specify_the_path_to_tsbuildinfo_incremental_compilation_file: b(6707, 3, "Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707", "Specify the path to .tsbuildinfo incremental compilation file."),
      Specify_options_for_automatic_acquisition_of_declaration_files: b(6709, 3, "Specify_options_for_automatic_acquisition_of_declaration_files_6709", "Specify options for automatic acquisition of declaration files."),
      Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types: b(6710, 3, "Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710", "Specify multiple folders that act like './node_modules/@types'."),
      Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file: b(6711, 3, "Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711", "Specify type package names to be included without being referenced in a source file."),
      Emit_ECMAScript_standard_compliant_class_fields: b(6712, 3, "Emit_ECMAScript_standard_compliant_class_fields_6712", "Emit ECMAScript-standard-compliant class fields."),
      Enable_verbose_logging: b(6713, 3, "Enable_verbose_logging_6713", "Enable verbose logging."),
      Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality: b(6714, 3, "Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714", "Specify how directories are watched on systems that lack recursive file-watching functionality."),
      Specify_how_the_TypeScript_watch_mode_works: b(6715, 3, "Specify_how_the_TypeScript_watch_mode_works_6715", "Specify how the TypeScript watch mode works."),
      Require_undeclared_properties_from_index_signatures_to_use_element_accesses: b(6717, 3, "Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717", "Require undeclared properties from index signatures to use element accesses."),
      Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types: b(6718, 3, "Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718", "Specify emit/checking behavior for imports that are only used for types."),
      Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files: b(6719, 3, "Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719", "Require sufficient annotation on exports so other tools can trivially generate declaration files."),
      Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any: b(6720, 3, "Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any_6720", "Built-in iterators are instantiated with a 'TReturn' type of 'undefined' instead of 'any'."),
      Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript: b(6721, 3, "Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript_6721", "Do not allow runtime constructs that are not part of ECMAScript."),
      Default_catch_clause_variables_as_unknown_instead_of_any: b(6803, 3, "Default_catch_clause_variables_as_unknown_instead_of_any_6803", "Default catch clause variables as 'unknown' instead of 'any'."),
      Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting: b(6804, 3, "Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804", "Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),
      Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported: b(6805, 3, "Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805", "Disable full type checking (only critical parse and emit errors will be reported)."),
      Check_side_effect_imports: b(6806, 3, "Check_side_effect_imports_6806", "Check side effect imports."),
      This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2: b(6807, 1, "This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2_6807", "This operation can be simplified. This shift is identical to `{0} {1} {2}`."),
      Enable_lib_replacement: b(6808, 3, "Enable_lib_replacement_6808", "Enable lib replacement."),
      Ensure_types_are_ordered_stably_and_deterministically_across_compilations: b(6809, 3, "Ensure_types_are_ordered_stably_and_deterministically_across_compilations_6809", "Ensure types are ordered stably and deterministically across compilations."),
      one_of_Colon: b(6900, 3, "one_of_Colon_6900", "one of:"),
      one_or_more_Colon: b(6901, 3, "one_or_more_Colon_6901", "one or more:"),
      type_Colon: b(6902, 3, "type_Colon_6902", "type:"),
      default_Colon: b(6903, 3, "default_Colon_6903", "default:"),
      true_unless_strict_is_false: b(6905, 3, "true_unless_strict_is_false_6905", "`true`, unless `strict` is `false`"),
      false_unless_composite_is_set: b(6906, 3, "false_unless_composite_is_set_6906", "`false`, unless `composite` is set"),
      node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified: b(6907, 3, "node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907", '`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),
      if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk: b(6908, 3, "if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908", '`[]` if `files` is specified, otherwise `["**/*"]`'),
      true_if_composite_false_otherwise: b(6909, 3, "true_if_composite_false_otherwise_6909", "`true` if `composite`, `false` otherwise"),
      nodenext_if_module_is_nodenext_node16_if_module_is_node16_or_node18_otherwise_bundler: b(69010, 3, "nodenext_if_module_is_nodenext_node16_if_module_is_node16_or_node18_otherwise_bundler_69010", "`nodenext` if `module` is `nodenext`; `node16` if `module` is `node16` or `node18`; otherwise, `bundler`."),
      Computed_from_the_list_of_input_files: b(6911, 3, "Computed_from_the_list_of_input_files_6911", "Computed from the list of input files"),
      Platform_specific: b(6912, 3, "Platform_specific_6912", "Platform specific"),
      You_can_learn_about_all_of_the_compiler_options_at_0: b(6913, 3, "You_can_learn_about_all_of_the_compiler_options_at_0_6913", "You can learn about all of the compiler options at {0}"),
      Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon: b(6914, 3, "Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914", "Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),
      Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0: b(6915, 3, "Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915", "Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),
      COMMON_COMMANDS: b(6916, 3, "COMMON_COMMANDS_6916", "COMMON COMMANDS"),
      ALL_COMPILER_OPTIONS: b(6917, 3, "ALL_COMPILER_OPTIONS_6917", "ALL COMPILER OPTIONS"),
      WATCH_OPTIONS: b(6918, 3, "WATCH_OPTIONS_6918", "WATCH OPTIONS"),
      BUILD_OPTIONS: b(6919, 3, "BUILD_OPTIONS_6919", "BUILD OPTIONS"),
      COMMON_COMPILER_OPTIONS: b(6920, 3, "COMMON_COMPILER_OPTIONS_6920", "COMMON COMPILER OPTIONS"),
      COMMAND_LINE_FLAGS: b(6921, 3, "COMMAND_LINE_FLAGS_6921", "COMMAND LINE FLAGS"),
      tsc_Colon_The_TypeScript_Compiler: b(6922, 3, "tsc_Colon_The_TypeScript_Compiler_6922", "tsc: The TypeScript Compiler"),
      Compiles_the_current_project_tsconfig_json_in_the_working_directory: b(6923, 3, "Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923", "Compiles the current project (tsconfig.json in the working directory.)"),
      Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options: b(6924, 3, "Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924", "Ignoring tsconfig.json, compiles the specified files with default compiler options."),
      Build_a_composite_project_in_the_working_directory: b(6925, 3, "Build_a_composite_project_in_the_working_directory_6925", "Build a composite project in the working directory."),
      Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory: b(6926, 3, "Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926", "Creates a tsconfig.json with the recommended settings in the working directory."),
      Compiles_the_TypeScript_project_located_at_the_specified_path: b(6927, 3, "Compiles_the_TypeScript_project_located_at_the_specified_path_6927", "Compiles the TypeScript project located at the specified path."),
      An_expanded_version_of_this_information_showing_all_possible_compiler_options: b(6928, 3, "An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928", "An expanded version of this information, showing all possible compiler options"),
      Compiles_the_current_project_with_additional_settings: b(6929, 3, "Compiles_the_current_project_with_additional_settings_6929", "Compiles the current project, with additional settings."),
      true_for_ES2022_and_above_including_ESNext: b(6930, 3, "true_for_ES2022_and_above_including_ESNext_6930", "`true` for ES2022 and above, including ESNext."),
      List_of_file_name_suffixes_to_search_when_resolving_a_module: b(6931, 1, "List_of_file_name_suffixes_to_search_when_resolving_a_module_6931", "List of file name suffixes to search when resolving a module."),
      false_unless_checkJs_is_set: b(6932, 3, "false_unless_checkJs_is_set_6932", "`false`, unless `checkJs` is set"),
      Variable_0_implicitly_has_an_1_type: b(7005, 1, "Variable_0_implicitly_has_an_1_type_7005", "Variable '{0}' implicitly has an '{1}' type."),
      Parameter_0_implicitly_has_an_1_type: b(7006, 1, "Parameter_0_implicitly_has_an_1_type_7006", "Parameter '{0}' implicitly has an '{1}' type."),
      Member_0_implicitly_has_an_1_type: b(7008, 1, "Member_0_implicitly_has_an_1_type_7008", "Member '{0}' implicitly has an '{1}' type."),
      new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type: b(7009, 1, "new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009", "'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),
      _0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type: b(7010, 1, "_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010", "'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),
      Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type: b(7011, 1, "Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011", "Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),
      This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation: b(7012, 1, "This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012", "This overload implicitly returns the type '{0}' because it lacks a return type annotation."),
      Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type: b(7013, 1, "Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013", "Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),
      Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type: b(7014, 1, "Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014", "Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),
      Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number: b(7015, 1, "Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015", "Element implicitly has an 'any' type because index expression is not of type 'number'."),
      Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type: b(7016, 1, "Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016", "Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),
      Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature: b(7017, 1, "Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017", "Element implicitly has an 'any' type because type '{0}' has no index signature."),
      Object_literal_s_property_0_implicitly_has_an_1_type: b(7018, 1, "Object_literal_s_property_0_implicitly_has_an_1_type_7018", "Object literal's property '{0}' implicitly has an '{1}' type."),
      Rest_parameter_0_implicitly_has_an_any_type: b(7019, 1, "Rest_parameter_0_implicitly_has_an_any_type_7019", "Rest parameter '{0}' implicitly has an 'any[]' type."),
      Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type: b(7020, 1, "Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020", "Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),
      _0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer: b(7022, 1, "_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022", "'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),
      _0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions: b(7023, 1, "_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023", "'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),
      Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions: b(7024, 1, "Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024", "Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),
      Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation: b(7025, 1, "Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation_7025", "Generator implicitly has yield type '{0}'. Consider supplying a return type annotation."),
      JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists: b(7026, 1, "JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026", "JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),
      Unreachable_code_detected: b(7027, 1, "Unreachable_code_detected_7027", "Unreachable code detected.", !0),
      Unused_label: b(7028, 1, "Unused_label_7028", "Unused label.", !0),
      Fallthrough_case_in_switch: b(7029, 1, "Fallthrough_case_in_switch_7029", "Fallthrough case in switch."),
      Not_all_code_paths_return_a_value: b(7030, 1, "Not_all_code_paths_return_a_value_7030", "Not all code paths return a value."),
      Binding_element_0_implicitly_has_an_1_type: b(7031, 1, "Binding_element_0_implicitly_has_an_1_type_7031", "Binding element '{0}' implicitly has an '{1}' type."),
      Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation: b(7032, 1, "Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032", "Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),
      Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation: b(7033, 1, "Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033", "Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),
      Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined: b(7034, 1, "Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034", "Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),
      Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0: b(7035, 1, "Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035", "Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),
      Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0: b(7036, 1, "Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036", "Dynamic import's specifier must be of type 'string', but here has type '{0}'."),
      Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports: b(7037, 3, "Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037", "Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),
      Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead: b(7038, 3, "Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038", "Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),
      Mapped_object_type_implicitly_has_an_any_template_type: b(7039, 1, "Mapped_object_type_implicitly_has_an_any_template_type_7039", "Mapped object type implicitly has an 'any' template type."),
      If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1: b(7040, 1, "If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040", "If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),
      The_containing_arrow_function_captures_the_global_value_of_this: b(7041, 1, "The_containing_arrow_function_captures_the_global_value_of_this_7041", "The containing arrow function captures the global value of 'this'."),
      Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used: b(7042, 1, "Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042", "Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),
      Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage: b(7043, 2, "Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043", "Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),
      Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage: b(7044, 2, "Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044", "Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),
      Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage: b(7045, 2, "Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045", "Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),
      Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage: b(7046, 2, "Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046", "Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),
      Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage: b(7047, 2, "Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047", "Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),
      Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage: b(7048, 2, "Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048", "Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),
      Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage: b(7049, 2, "Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049", "Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),
      _0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage: b(7050, 2, "_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050", "'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),
      Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1: b(7051, 1, "Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051", "Parameter has a name but no type. Did you mean '{0}: {1}'?"),
      Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1: b(7052, 1, "Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052", "Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),
      Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1: b(7053, 1, "Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053", "Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),
      No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1: b(7054, 1, "No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054", "No index signature with a parameter of type '{0}' was found on type '{1}'."),
      _0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type: b(7055, 1, "_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055", "'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),
      The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed: b(7056, 1, "The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056", "The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),
      yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation: b(7057, 1, "yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057", "'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),
      If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1: b(7058, 1, "If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058", "If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),
      This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead: b(7059, 1, "This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059", "This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),
      This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint: b(7060, 1, "This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060", "This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),
      A_mapped_type_may_not_declare_properties_or_methods: b(7061, 1, "A_mapped_type_may_not_declare_properties_or_methods_7061", "A mapped type may not declare properties or methods."),
      You_cannot_rename_this_element: b(8e3, 1, "You_cannot_rename_this_element_8000", "You cannot rename this element."),
      You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library: b(8001, 1, "You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001", "You cannot rename elements that are defined in the standard TypeScript library."),
      import_can_only_be_used_in_TypeScript_files: b(8002, 1, "import_can_only_be_used_in_TypeScript_files_8002", "'import ... =' can only be used in TypeScript files."),
      export_can_only_be_used_in_TypeScript_files: b(8003, 1, "export_can_only_be_used_in_TypeScript_files_8003", "'export =' can only be used in TypeScript files."),
      Type_parameter_declarations_can_only_be_used_in_TypeScript_files: b(8004, 1, "Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004", "Type parameter declarations can only be used in TypeScript files."),
      implements_clauses_can_only_be_used_in_TypeScript_files: b(8005, 1, "implements_clauses_can_only_be_used_in_TypeScript_files_8005", "'implements' clauses can only be used in TypeScript files."),
      _0_declarations_can_only_be_used_in_TypeScript_files: b(8006, 1, "_0_declarations_can_only_be_used_in_TypeScript_files_8006", "'{0}' declarations can only be used in TypeScript files."),
      Type_aliases_can_only_be_used_in_TypeScript_files: b(8008, 1, "Type_aliases_can_only_be_used_in_TypeScript_files_8008", "Type aliases can only be used in TypeScript files."),
      The_0_modifier_can_only_be_used_in_TypeScript_files: b(8009, 1, "The_0_modifier_can_only_be_used_in_TypeScript_files_8009", "The '{0}' modifier can only be used in TypeScript files."),
      Type_annotations_can_only_be_used_in_TypeScript_files: b(8010, 1, "Type_annotations_can_only_be_used_in_TypeScript_files_8010", "Type annotations can only be used in TypeScript files."),
      Type_arguments_can_only_be_used_in_TypeScript_files: b(8011, 1, "Type_arguments_can_only_be_used_in_TypeScript_files_8011", "Type arguments can only be used in TypeScript files."),
      Parameter_modifiers_can_only_be_used_in_TypeScript_files: b(8012, 1, "Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012", "Parameter modifiers can only be used in TypeScript files."),
      Non_null_assertions_can_only_be_used_in_TypeScript_files: b(8013, 1, "Non_null_assertions_can_only_be_used_in_TypeScript_files_8013", "Non-null assertions can only be used in TypeScript files."),
      Type_assertion_expressions_can_only_be_used_in_TypeScript_files: b(8016, 1, "Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016", "Type assertion expressions can only be used in TypeScript files."),
      Signature_declarations_can_only_be_used_in_TypeScript_files: b(8017, 1, "Signature_declarations_can_only_be_used_in_TypeScript_files_8017", "Signature declarations can only be used in TypeScript files."),
      Report_errors_in_js_files: b(8019, 3, "Report_errors_in_js_files_8019", "Report errors in .js files."),
      JSDoc_types_can_only_be_used_inside_documentation_comments: b(8020, 1, "JSDoc_types_can_only_be_used_inside_documentation_comments_8020", "JSDoc types can only be used inside documentation comments."),
      JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags: b(8021, 1, "JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021", "JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),
      JSDoc_0_is_not_attached_to_a_class: b(8022, 1, "JSDoc_0_is_not_attached_to_a_class_8022", "JSDoc '@{0}' is not attached to a class."),
      JSDoc_0_1_does_not_match_the_extends_2_clause: b(8023, 1, "JSDoc_0_1_does_not_match_the_extends_2_clause_8023", "JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),
      JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name: b(8024, 1, "JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024", "JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),
      Class_declarations_cannot_have_more_than_one_augments_or_extends_tag: b(8025, 1, "Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025", "Class declarations cannot have more than one '@augments' or '@extends' tag."),
      Expected_0_type_arguments_provide_these_with_an_extends_tag: b(8026, 1, "Expected_0_type_arguments_provide_these_with_an_extends_tag_8026", "Expected {0} type arguments; provide these with an '@extends' tag."),
      Expected_0_1_type_arguments_provide_these_with_an_extends_tag: b(8027, 1, "Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027", "Expected {0}-{1} type arguments; provide these with an '@extends' tag."),
      JSDoc_may_only_appear_in_the_last_parameter_of_a_signature: b(8028, 1, "JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028", "JSDoc '...' may only appear in the last parameter of a signature."),
      JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type: b(8029, 1, "JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029", "JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),
      The_type_of_a_function_declaration_must_match_the_function_s_signature: b(8030, 1, "The_type_of_a_function_declaration_must_match_the_function_s_signature_8030", "The type of a function declaration must match the function's signature."),
      You_cannot_rename_a_module_via_a_global_import: b(8031, 1, "You_cannot_rename_a_module_via_a_global_import_8031", "You cannot rename a module via a global import."),
      Qualified_name_0_is_not_allowed_without_a_leading_param_object_1: b(8032, 1, "Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032", "Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),
      A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags: b(8033, 1, "A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033", "A JSDoc '@typedef' comment may not contain multiple '@type' tags."),
      The_tag_was_first_specified_here: b(8034, 1, "The_tag_was_first_specified_here_8034", "The tag was first specified here."),
      You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder: b(8035, 1, "You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035", "You cannot rename elements that are defined in a 'node_modules' folder."),
      You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder: b(8036, 1, "You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036", "You cannot rename elements that are defined in another 'node_modules' folder."),
      Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files: b(8037, 1, "Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037", "Type satisfaction expressions can only be used in TypeScript files."),
      Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export: b(8038, 1, "Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038", "Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),
      A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag: b(8039, 1, "A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039", "A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),
      Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit: b(9005, 1, "Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005", "Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),
      Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit: b(9006, 1, "Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006", "Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),
      Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations: b(9007, 1, "Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007", "Function must have an explicit return type annotation with --isolatedDeclarations."),
      Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations: b(9008, 1, "Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008", "Method must have an explicit return type annotation with --isolatedDeclarations."),
      At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations: b(9009, 1, "At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9009", "At least one accessor must have an explicit type annotation with --isolatedDeclarations."),
      Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations: b(9010, 1, "Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010", "Variable must have an explicit type annotation with --isolatedDeclarations."),
      Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations: b(9011, 1, "Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011", "Parameter must have an explicit type annotation with --isolatedDeclarations."),
      Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations: b(9012, 1, "Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012", "Property must have an explicit type annotation with --isolatedDeclarations."),
      Expression_type_can_t_be_inferred_with_isolatedDeclarations: b(9013, 1, "Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013", "Expression type can't be inferred with --isolatedDeclarations."),
      Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations: b(9014, 1, "Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014", "Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),
      Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations: b(9015, 1, "Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015", "Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),
      Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations: b(9016, 1, "Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016", "Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),
      Only_const_arrays_can_be_inferred_with_isolatedDeclarations: b(9017, 1, "Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017", "Only const arrays can be inferred with --isolatedDeclarations."),
      Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations: b(9018, 1, "Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018", "Arrays with spread elements can't inferred with --isolatedDeclarations."),
      Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations: b(9019, 1, "Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019", "Binding elements can't be exported directly with --isolatedDeclarations."),
      Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations: b(9020, 1, "Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020", "Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),
      Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations: b(9021, 1, "Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021", "Extends clause can't contain an expression with --isolatedDeclarations."),
      Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations: b(9022, 1, "Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022", "Inference from class expressions is not supported with --isolatedDeclarations."),
      Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function: b(9023, 1, "Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023", "Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),
      Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations: b(9025, 1, "Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_sup_9025", "Declaration emit for this parameter requires implicitly adding undefined to its type. This is not supported with --isolatedDeclarations."),
      Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations: b(9026, 1, "Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026", "Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),
      Add_a_type_annotation_to_the_variable_0: b(9027, 1, "Add_a_type_annotation_to_the_variable_0_9027", "Add a type annotation to the variable {0}."),
      Add_a_type_annotation_to_the_parameter_0: b(9028, 1, "Add_a_type_annotation_to_the_parameter_0_9028", "Add a type annotation to the parameter {0}."),
      Add_a_type_annotation_to_the_property_0: b(9029, 1, "Add_a_type_annotation_to_the_property_0_9029", "Add a type annotation to the property {0}."),
      Add_a_return_type_to_the_function_expression: b(9030, 1, "Add_a_return_type_to_the_function_expression_9030", "Add a return type to the function expression."),
      Add_a_return_type_to_the_function_declaration: b(9031, 1, "Add_a_return_type_to_the_function_declaration_9031", "Add a return type to the function declaration."),
      Add_a_return_type_to_the_get_accessor_declaration: b(9032, 1, "Add_a_return_type_to_the_get_accessor_declaration_9032", "Add a return type to the get accessor declaration."),
      Add_a_type_to_parameter_of_the_set_accessor_declaration: b(9033, 1, "Add_a_type_to_parameter_of_the_set_accessor_declaration_9033", "Add a type to parameter of the set accessor declaration."),
      Add_a_return_type_to_the_method: b(9034, 1, "Add_a_return_type_to_the_method_9034", "Add a return type to the method"),
      Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit: b(9035, 1, "Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035", "Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),
      Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it: b(9036, 1, "Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036", "Move the expression in default export to a variable and add a type annotation to it."),
      Default_exports_can_t_be_inferred_with_isolatedDeclarations: b(9037, 1, "Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037", "Default exports can't be inferred with --isolatedDeclarations."),
      Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations: b(9038, 1, "Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038", "Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),
      Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations: b(9039, 1, "Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039", "Type containing private name '{0}' can't be used with --isolatedDeclarations."),
      JSX_attributes_must_only_be_assigned_a_non_empty_expression: b(17e3, 1, "JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000", "JSX attributes must only be assigned a non-empty 'expression'."),
      JSX_elements_cannot_have_multiple_attributes_with_the_same_name: b(17001, 1, "JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001", "JSX elements cannot have multiple attributes with the same name."),
      Expected_corresponding_JSX_closing_tag_for_0: b(17002, 1, "Expected_corresponding_JSX_closing_tag_for_0_17002", "Expected corresponding JSX closing tag for '{0}'."),
      Cannot_use_JSX_unless_the_jsx_flag_is_provided: b(17004, 1, "Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004", "Cannot use JSX unless the '--jsx' flag is provided."),
      A_constructor_cannot_contain_a_super_call_when_its_class_extends_null: b(17005, 1, "A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005", "A constructor cannot contain a 'super' call when its class extends 'null'."),
      An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses: b(17006, 1, "An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006", "An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),
      A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses: b(17007, 1, "A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007", "A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),
      JSX_element_0_has_no_corresponding_closing_tag: b(17008, 1, "JSX_element_0_has_no_corresponding_closing_tag_17008", "JSX element '{0}' has no corresponding closing tag."),
      super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class: b(17009, 1, "super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009", "'super' must be called before accessing 'this' in the constructor of a derived class."),
      Unknown_type_acquisition_option_0: b(17010, 1, "Unknown_type_acquisition_option_0_17010", "Unknown type acquisition option '{0}'."),
      super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class: b(17011, 1, "super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011", "'super' must be called before accessing a property of 'super' in the constructor of a derived class."),
      _0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2: b(17012, 1, "_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012", "'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),
      Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor: b(17013, 1, "Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013", "Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),
      JSX_fragment_has_no_corresponding_closing_tag: b(17014, 1, "JSX_fragment_has_no_corresponding_closing_tag_17014", "JSX fragment has no corresponding closing tag."),
      Expected_corresponding_closing_tag_for_JSX_fragment: b(17015, 1, "Expected_corresponding_closing_tag_for_JSX_fragment_17015", "Expected corresponding closing tag for JSX fragment."),
      The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option: b(17016, 1, "The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016", "The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),
      An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments: b(17017, 1, "An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017", "An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),
      Unknown_type_acquisition_option_0_Did_you_mean_1: b(17018, 1, "Unknown_type_acquisition_option_0_Did_you_mean_1_17018", "Unknown type acquisition option '{0}'. Did you mean '{1}'?"),
      _0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1: b(17019, 1, "_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019", "'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),
      _0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1: b(17020, 1, "_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020", "'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),
      Unicode_escape_sequence_cannot_appear_here: b(17021, 1, "Unicode_escape_sequence_cannot_appear_here_17021", "Unicode escape sequence cannot appear here."),
      Circularity_detected_while_resolving_configuration_Colon_0: b(18e3, 1, "Circularity_detected_while_resolving_configuration_Colon_0_18000", "Circularity detected while resolving configuration: {0}"),
      The_files_list_in_config_file_0_is_empty: b(18002, 1, "The_files_list_in_config_file_0_is_empty_18002", "The 'files' list in config file '{0}' is empty."),
      No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2: b(18003, 1, "No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003", "No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),
      File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module: b(80001, 2, "File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001", "File is a CommonJS module; it may be converted to an ES module."),
      This_constructor_function_may_be_converted_to_a_class_declaration: b(80002, 2, "This_constructor_function_may_be_converted_to_a_class_declaration_80002", "This constructor function may be converted to a class declaration."),
      Import_may_be_converted_to_a_default_import: b(80003, 2, "Import_may_be_converted_to_a_default_import_80003", "Import may be converted to a default import."),
      JSDoc_types_may_be_moved_to_TypeScript_types: b(80004, 2, "JSDoc_types_may_be_moved_to_TypeScript_types_80004", "JSDoc types may be moved to TypeScript types."),
      require_call_may_be_converted_to_an_import: b(80005, 2, "require_call_may_be_converted_to_an_import_80005", "'require' call may be converted to an import."),
      This_may_be_converted_to_an_async_function: b(80006, 2, "This_may_be_converted_to_an_async_function_80006", "This may be converted to an async function."),
      await_has_no_effect_on_the_type_of_this_expression: b(80007, 2, "await_has_no_effect_on_the_type_of_this_expression_80007", "'await' has no effect on the type of this expression."),
      Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers: b(80008, 2, "Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008", "Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),
      JSDoc_typedef_may_be_converted_to_TypeScript_type: b(80009, 2, "JSDoc_typedef_may_be_converted_to_TypeScript_type_80009", "JSDoc typedef may be converted to TypeScript type."),
      JSDoc_typedefs_may_be_converted_to_TypeScript_types: b(80010, 2, "JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010", "JSDoc typedefs may be converted to TypeScript types."),
      Add_missing_super_call: b(90001, 3, "Add_missing_super_call_90001", "Add missing 'super()' call"),
      Make_super_call_the_first_statement_in_the_constructor: b(90002, 3, "Make_super_call_the_first_statement_in_the_constructor_90002", "Make 'super()' call the first statement in the constructor"),
      Change_extends_to_implements: b(90003, 3, "Change_extends_to_implements_90003", "Change 'extends' to 'implements'"),
      Remove_unused_declaration_for_Colon_0: b(90004, 3, "Remove_unused_declaration_for_Colon_0_90004", "Remove unused declaration for: '{0}'"),
      Remove_import_from_0: b(90005, 3, "Remove_import_from_0_90005", "Remove import from '{0}'"),
      Implement_interface_0: b(90006, 3, "Implement_interface_0_90006", "Implement interface '{0}'"),
      Implement_inherited_abstract_class: b(90007, 3, "Implement_inherited_abstract_class_90007", "Implement inherited abstract class"),
      Add_0_to_unresolved_variable: b(90008, 3, "Add_0_to_unresolved_variable_90008", "Add '{0}.' to unresolved variable"),
      Remove_variable_statement: b(90010, 3, "Remove_variable_statement_90010", "Remove variable statement"),
      Remove_template_tag: b(90011, 3, "Remove_template_tag_90011", "Remove template tag"),
      Remove_type_parameters: b(90012, 3, "Remove_type_parameters_90012", "Remove type parameters"),
      Import_0_from_1: b(90013, 3, "Import_0_from_1_90013", `Import '{0}' from "{1}"`),
      Change_0_to_1: b(90014, 3, "Change_0_to_1_90014", "Change '{0}' to '{1}'"),
      Declare_property_0: b(90016, 3, "Declare_property_0_90016", "Declare property '{0}'"),
      Add_index_signature_for_property_0: b(90017, 3, "Add_index_signature_for_property_0_90017", "Add index signature for property '{0}'"),
      Disable_checking_for_this_file: b(90018, 3, "Disable_checking_for_this_file_90018", "Disable checking for this file"),
      Ignore_this_error_message: b(90019, 3, "Ignore_this_error_message_90019", "Ignore this error message"),
      Initialize_property_0_in_the_constructor: b(90020, 3, "Initialize_property_0_in_the_constructor_90020", "Initialize property '{0}' in the constructor"),
      Initialize_static_property_0: b(90021, 3, "Initialize_static_property_0_90021", "Initialize static property '{0}'"),
      Change_spelling_to_0: b(90022, 3, "Change_spelling_to_0_90022", "Change spelling to '{0}'"),
      Declare_method_0: b(90023, 3, "Declare_method_0_90023", "Declare method '{0}'"),
      Declare_static_method_0: b(90024, 3, "Declare_static_method_0_90024", "Declare static method '{0}'"),
      Prefix_0_with_an_underscore: b(90025, 3, "Prefix_0_with_an_underscore_90025", "Prefix '{0}' with an underscore"),
      Rewrite_as_the_indexed_access_type_0: b(90026, 3, "Rewrite_as_the_indexed_access_type_0_90026", "Rewrite as the indexed access type '{0}'"),
      Declare_static_property_0: b(90027, 3, "Declare_static_property_0_90027", "Declare static property '{0}'"),
      Call_decorator_expression: b(90028, 3, "Call_decorator_expression_90028", "Call decorator expression"),
      Add_async_modifier_to_containing_function: b(90029, 3, "Add_async_modifier_to_containing_function_90029", "Add async modifier to containing function"),
      Replace_infer_0_with_unknown: b(90030, 3, "Replace_infer_0_with_unknown_90030", "Replace 'infer {0}' with 'unknown'"),
      Replace_all_unused_infer_with_unknown: b(90031, 3, "Replace_all_unused_infer_with_unknown_90031", "Replace all unused 'infer' with 'unknown'"),
      Add_parameter_name: b(90034, 3, "Add_parameter_name_90034", "Add parameter name"),
      Declare_private_property_0: b(90035, 3, "Declare_private_property_0_90035", "Declare private property '{0}'"),
      Replace_0_with_Promise_1: b(90036, 3, "Replace_0_with_Promise_1_90036", "Replace '{0}' with 'Promise<{1}>'"),
      Fix_all_incorrect_return_type_of_an_async_functions: b(90037, 3, "Fix_all_incorrect_return_type_of_an_async_functions_90037", "Fix all incorrect return type of an async functions"),
      Declare_private_method_0: b(90038, 3, "Declare_private_method_0_90038", "Declare private method '{0}'"),
      Remove_unused_destructuring_declaration: b(90039, 3, "Remove_unused_destructuring_declaration_90039", "Remove unused destructuring declaration"),
      Remove_unused_declarations_for_Colon_0: b(90041, 3, "Remove_unused_declarations_for_Colon_0_90041", "Remove unused declarations for: '{0}'"),
      Declare_a_private_field_named_0: b(90053, 3, "Declare_a_private_field_named_0_90053", "Declare a private field named '{0}'."),
      Includes_imports_of_types_referenced_by_0: b(90054, 3, "Includes_imports_of_types_referenced_by_0_90054", "Includes imports of types referenced by '{0}'"),
      Remove_type_from_import_declaration_from_0: b(90055, 3, "Remove_type_from_import_declaration_from_0_90055", `Remove 'type' from import declaration from "{0}"`),
      Remove_type_from_import_of_0_from_1: b(90056, 3, "Remove_type_from_import_of_0_from_1_90056", `Remove 'type' from import of '{0}' from "{1}"`),
      Add_import_from_0: b(90057, 3, "Add_import_from_0_90057", 'Add import from "{0}"'),
      Update_import_from_0: b(90058, 3, "Update_import_from_0_90058", 'Update import from "{0}"'),
      Export_0_from_module_1: b(90059, 3, "Export_0_from_module_1_90059", "Export '{0}' from module '{1}'"),
      Export_all_referenced_locals: b(90060, 3, "Export_all_referenced_locals_90060", "Export all referenced locals"),
      Update_modifiers_of_0: b(90061, 3, "Update_modifiers_of_0_90061", "Update modifiers of '{0}'"),
      Add_annotation_of_type_0: b(90062, 3, "Add_annotation_of_type_0_90062", "Add annotation of type '{0}'"),
      Add_return_type_0: b(90063, 3, "Add_return_type_0_90063", "Add return type '{0}'"),
      Extract_base_class_to_variable: b(90064, 3, "Extract_base_class_to_variable_90064", "Extract base class to variable"),
      Extract_default_export_to_variable: b(90065, 3, "Extract_default_export_to_variable_90065", "Extract default export to variable"),
      Extract_binding_expressions_to_variable: b(90066, 3, "Extract_binding_expressions_to_variable_90066", "Extract binding expressions to variable"),
      Add_all_missing_type_annotations: b(90067, 3, "Add_all_missing_type_annotations_90067", "Add all missing type annotations"),
      Add_satisfies_and_an_inline_type_assertion_with_0: b(90068, 3, "Add_satisfies_and_an_inline_type_assertion_with_0_90068", "Add satisfies and an inline type assertion with '{0}'"),
      Extract_to_variable_and_replace_with_0_as_typeof_0: b(90069, 3, "Extract_to_variable_and_replace_with_0_as_typeof_0_90069", "Extract to variable and replace with '{0} as typeof {0}'"),
      Mark_array_literal_as_const: b(90070, 3, "Mark_array_literal_as_const_90070", "Mark array literal as const"),
      Annotate_types_of_properties_expando_function_in_a_namespace: b(90071, 3, "Annotate_types_of_properties_expando_function_in_a_namespace_90071", "Annotate types of properties expando function in a namespace"),
      Convert_function_to_an_ES2015_class: b(95001, 3, "Convert_function_to_an_ES2015_class_95001", "Convert function to an ES2015 class"),
      Convert_0_to_1_in_0: b(95003, 3, "Convert_0_to_1_in_0_95003", "Convert '{0}' to '{1} in {0}'"),
      Extract_to_0_in_1: b(95004, 3, "Extract_to_0_in_1_95004", "Extract to {0} in {1}"),
      Extract_function: b(95005, 3, "Extract_function_95005", "Extract function"),
      Extract_constant: b(95006, 3, "Extract_constant_95006", "Extract constant"),
      Extract_to_0_in_enclosing_scope: b(95007, 3, "Extract_to_0_in_enclosing_scope_95007", "Extract to {0} in enclosing scope"),
      Extract_to_0_in_1_scope: b(95008, 3, "Extract_to_0_in_1_scope_95008", "Extract to {0} in {1} scope"),
      Annotate_with_type_from_JSDoc: b(95009, 3, "Annotate_with_type_from_JSDoc_95009", "Annotate with type from JSDoc"),
      Infer_type_of_0_from_usage: b(95011, 3, "Infer_type_of_0_from_usage_95011", "Infer type of '{0}' from usage"),
      Infer_parameter_types_from_usage: b(95012, 3, "Infer_parameter_types_from_usage_95012", "Infer parameter types from usage"),
      Convert_to_default_import: b(95013, 3, "Convert_to_default_import_95013", "Convert to default import"),
      Install_0: b(95014, 3, "Install_0_95014", "Install '{0}'"),
      Replace_import_with_0: b(95015, 3, "Replace_import_with_0_95015", "Replace import with '{0}'."),
      Use_synthetic_default_member: b(95016, 3, "Use_synthetic_default_member_95016", "Use synthetic 'default' member."),
      Convert_to_ES_module: b(95017, 3, "Convert_to_ES_module_95017", "Convert to ES module"),
      Add_undefined_type_to_property_0: b(95018, 3, "Add_undefined_type_to_property_0_95018", "Add 'undefined' type to property '{0}'"),
      Add_initializer_to_property_0: b(95019, 3, "Add_initializer_to_property_0_95019", "Add initializer to property '{0}'"),
      Add_definite_assignment_assertion_to_property_0: b(95020, 3, "Add_definite_assignment_assertion_to_property_0_95020", "Add definite assignment assertion to property '{0}'"),
      Convert_all_type_literals_to_mapped_type: b(95021, 3, "Convert_all_type_literals_to_mapped_type_95021", "Convert all type literals to mapped type"),
      Add_all_missing_members: b(95022, 3, "Add_all_missing_members_95022", "Add all missing members"),
      Infer_all_types_from_usage: b(95023, 3, "Infer_all_types_from_usage_95023", "Infer all types from usage"),
      Delete_all_unused_declarations: b(95024, 3, "Delete_all_unused_declarations_95024", "Delete all unused declarations"),
      Prefix_all_unused_declarations_with_where_possible: b(95025, 3, "Prefix_all_unused_declarations_with_where_possible_95025", "Prefix all unused declarations with '_' where possible"),
      Fix_all_detected_spelling_errors: b(95026, 3, "Fix_all_detected_spelling_errors_95026", "Fix all detected spelling errors"),
      Add_initializers_to_all_uninitialized_properties: b(95027, 3, "Add_initializers_to_all_uninitialized_properties_95027", "Add initializers to all uninitialized properties"),
      Add_definite_assignment_assertions_to_all_uninitialized_properties: b(95028, 3, "Add_definite_assignment_assertions_to_all_uninitialized_properties_95028", "Add definite assignment assertions to all uninitialized properties"),
      Add_undefined_type_to_all_uninitialized_properties: b(95029, 3, "Add_undefined_type_to_all_uninitialized_properties_95029", "Add undefined type to all uninitialized properties"),
      Change_all_jsdoc_style_types_to_TypeScript: b(95030, 3, "Change_all_jsdoc_style_types_to_TypeScript_95030", "Change all jsdoc-style types to TypeScript"),
      Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types: b(95031, 3, "Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031", "Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),
      Implement_all_unimplemented_interfaces: b(95032, 3, "Implement_all_unimplemented_interfaces_95032", "Implement all unimplemented interfaces"),
      Install_all_missing_types_packages: b(95033, 3, "Install_all_missing_types_packages_95033", "Install all missing types packages"),
      Rewrite_all_as_indexed_access_types: b(95034, 3, "Rewrite_all_as_indexed_access_types_95034", "Rewrite all as indexed access types"),
      Convert_all_to_default_imports: b(95035, 3, "Convert_all_to_default_imports_95035", "Convert all to default imports"),
      Make_all_super_calls_the_first_statement_in_their_constructor: b(95036, 3, "Make_all_super_calls_the_first_statement_in_their_constructor_95036", "Make all 'super()' calls the first statement in their constructor"),
      Add_qualifier_to_all_unresolved_variables_matching_a_member_name: b(95037, 3, "Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037", "Add qualifier to all unresolved variables matching a member name"),
      Change_all_extended_interfaces_to_implements: b(95038, 3, "Change_all_extended_interfaces_to_implements_95038", "Change all extended interfaces to 'implements'"),
      Add_all_missing_super_calls: b(95039, 3, "Add_all_missing_super_calls_95039", "Add all missing super calls"),
      Implement_all_inherited_abstract_classes: b(95040, 3, "Implement_all_inherited_abstract_classes_95040", "Implement all inherited abstract classes"),
      Add_all_missing_async_modifiers: b(95041, 3, "Add_all_missing_async_modifiers_95041", "Add all missing 'async' modifiers"),
      Add_ts_ignore_to_all_error_messages: b(95042, 3, "Add_ts_ignore_to_all_error_messages_95042", "Add '@ts-ignore' to all error messages"),
      Annotate_everything_with_types_from_JSDoc: b(95043, 3, "Annotate_everything_with_types_from_JSDoc_95043", "Annotate everything with types from JSDoc"),
      Add_to_all_uncalled_decorators: b(95044, 3, "Add_to_all_uncalled_decorators_95044", "Add '()' to all uncalled decorators"),
      Convert_all_constructor_functions_to_classes: b(95045, 3, "Convert_all_constructor_functions_to_classes_95045", "Convert all constructor functions to classes"),
      Generate_get_and_set_accessors: b(95046, 3, "Generate_get_and_set_accessors_95046", "Generate 'get' and 'set' accessors"),
      Convert_require_to_import: b(95047, 3, "Convert_require_to_import_95047", "Convert 'require' to 'import'"),
      Convert_all_require_to_import: b(95048, 3, "Convert_all_require_to_import_95048", "Convert all 'require' to 'import'"),
      Move_to_a_new_file: b(95049, 3, "Move_to_a_new_file_95049", "Move to a new file"),
      Remove_unreachable_code: b(95050, 3, "Remove_unreachable_code_95050", "Remove unreachable code"),
      Remove_all_unreachable_code: b(95051, 3, "Remove_all_unreachable_code_95051", "Remove all unreachable code"),
      Add_missing_typeof: b(95052, 3, "Add_missing_typeof_95052", "Add missing 'typeof'"),
      Remove_unused_label: b(95053, 3, "Remove_unused_label_95053", "Remove unused label"),
      Remove_all_unused_labels: b(95054, 3, "Remove_all_unused_labels_95054", "Remove all unused labels"),
      Convert_0_to_mapped_object_type: b(95055, 3, "Convert_0_to_mapped_object_type_95055", "Convert '{0}' to mapped object type"),
      Convert_namespace_import_to_named_imports: b(95056, 3, "Convert_namespace_import_to_named_imports_95056", "Convert namespace import to named imports"),
      Convert_named_imports_to_namespace_import: b(95057, 3, "Convert_named_imports_to_namespace_import_95057", "Convert named imports to namespace import"),
      Add_or_remove_braces_in_an_arrow_function: b(95058, 3, "Add_or_remove_braces_in_an_arrow_function_95058", "Add or remove braces in an arrow function"),
      Add_braces_to_arrow_function: b(95059, 3, "Add_braces_to_arrow_function_95059", "Add braces to arrow function"),
      Remove_braces_from_arrow_function: b(95060, 3, "Remove_braces_from_arrow_function_95060", "Remove braces from arrow function"),
      Convert_default_export_to_named_export: b(95061, 3, "Convert_default_export_to_named_export_95061", "Convert default export to named export"),
      Convert_named_export_to_default_export: b(95062, 3, "Convert_named_export_to_default_export_95062", "Convert named export to default export"),
      Add_missing_enum_member_0: b(95063, 3, "Add_missing_enum_member_0_95063", "Add missing enum member '{0}'"),
      Add_all_missing_imports: b(95064, 3, "Add_all_missing_imports_95064", "Add all missing imports"),
      Convert_to_async_function: b(95065, 3, "Convert_to_async_function_95065", "Convert to async function"),
      Convert_all_to_async_functions: b(95066, 3, "Convert_all_to_async_functions_95066", "Convert all to async functions"),
      Add_missing_call_parentheses: b(95067, 3, "Add_missing_call_parentheses_95067", "Add missing call parentheses"),
      Add_all_missing_call_parentheses: b(95068, 3, "Add_all_missing_call_parentheses_95068", "Add all missing call parentheses"),
      Add_unknown_conversion_for_non_overlapping_types: b(95069, 3, "Add_unknown_conversion_for_non_overlapping_types_95069", "Add 'unknown' conversion for non-overlapping types"),
      Add_unknown_to_all_conversions_of_non_overlapping_types: b(95070, 3, "Add_unknown_to_all_conversions_of_non_overlapping_types_95070", "Add 'unknown' to all conversions of non-overlapping types"),
      Add_missing_new_operator_to_call: b(95071, 3, "Add_missing_new_operator_to_call_95071", "Add missing 'new' operator to call"),
      Add_missing_new_operator_to_all_calls: b(95072, 3, "Add_missing_new_operator_to_all_calls_95072", "Add missing 'new' operator to all calls"),
      Add_names_to_all_parameters_without_names: b(95073, 3, "Add_names_to_all_parameters_without_names_95073", "Add names to all parameters without names"),
      Enable_the_experimentalDecorators_option_in_your_configuration_file: b(95074, 3, "Enable_the_experimentalDecorators_option_in_your_configuration_file_95074", "Enable the 'experimentalDecorators' option in your configuration file"),
      Convert_parameters_to_destructured_object: b(95075, 3, "Convert_parameters_to_destructured_object_95075", "Convert parameters to destructured object"),
      Extract_type: b(95077, 3, "Extract_type_95077", "Extract type"),
      Extract_to_type_alias: b(95078, 3, "Extract_to_type_alias_95078", "Extract to type alias"),
      Extract_to_typedef: b(95079, 3, "Extract_to_typedef_95079", "Extract to typedef"),
      Infer_this_type_of_0_from_usage: b(95080, 3, "Infer_this_type_of_0_from_usage_95080", "Infer 'this' type of '{0}' from usage"),
      Add_const_to_unresolved_variable: b(95081, 3, "Add_const_to_unresolved_variable_95081", "Add 'const' to unresolved variable"),
      Add_const_to_all_unresolved_variables: b(95082, 3, "Add_const_to_all_unresolved_variables_95082", "Add 'const' to all unresolved variables"),
      Add_await: b(95083, 3, "Add_await_95083", "Add 'await'"),
      Add_await_to_initializer_for_0: b(95084, 3, "Add_await_to_initializer_for_0_95084", "Add 'await' to initializer for '{0}'"),
      Fix_all_expressions_possibly_missing_await: b(95085, 3, "Fix_all_expressions_possibly_missing_await_95085", "Fix all expressions possibly missing 'await'"),
      Remove_unnecessary_await: b(95086, 3, "Remove_unnecessary_await_95086", "Remove unnecessary 'await'"),
      Remove_all_unnecessary_uses_of_await: b(95087, 3, "Remove_all_unnecessary_uses_of_await_95087", "Remove all unnecessary uses of 'await'"),
      Enable_the_jsx_flag_in_your_configuration_file: b(95088, 3, "Enable_the_jsx_flag_in_your_configuration_file_95088", "Enable the '--jsx' flag in your configuration file"),
      Add_await_to_initializers: b(95089, 3, "Add_await_to_initializers_95089", "Add 'await' to initializers"),
      Extract_to_interface: b(95090, 3, "Extract_to_interface_95090", "Extract to interface"),
      Convert_to_a_bigint_numeric_literal: b(95091, 3, "Convert_to_a_bigint_numeric_literal_95091", "Convert to a bigint numeric literal"),
      Convert_all_to_bigint_numeric_literals: b(95092, 3, "Convert_all_to_bigint_numeric_literals_95092", "Convert all to bigint numeric literals"),
      Convert_const_to_let: b(95093, 3, "Convert_const_to_let_95093", "Convert 'const' to 'let'"),
      Prefix_with_declare: b(95094, 3, "Prefix_with_declare_95094", "Prefix with 'declare'"),
      Prefix_all_incorrect_property_declarations_with_declare: b(95095, 3, "Prefix_all_incorrect_property_declarations_with_declare_95095", "Prefix all incorrect property declarations with 'declare'"),
      Convert_to_template_string: b(95096, 3, "Convert_to_template_string_95096", "Convert to template string"),
      Add_export_to_make_this_file_into_a_module: b(95097, 3, "Add_export_to_make_this_file_into_a_module_95097", "Add 'export {}' to make this file into a module"),
      Set_the_target_option_in_your_configuration_file_to_0: b(95098, 3, "Set_the_target_option_in_your_configuration_file_to_0_95098", "Set the 'target' option in your configuration file to '{0}'"),
      Set_the_module_option_in_your_configuration_file_to_0: b(95099, 3, "Set_the_module_option_in_your_configuration_file_to_0_95099", "Set the 'module' option in your configuration file to '{0}'"),
      Convert_invalid_character_to_its_html_entity_code: b(95100, 3, "Convert_invalid_character_to_its_html_entity_code_95100", "Convert invalid character to its html entity code"),
      Convert_all_invalid_characters_to_HTML_entity_code: b(95101, 3, "Convert_all_invalid_characters_to_HTML_entity_code_95101", "Convert all invalid characters to HTML entity code"),
      Convert_all_const_to_let: b(95102, 3, "Convert_all_const_to_let_95102", "Convert all 'const' to 'let'"),
      Convert_function_expression_0_to_arrow_function: b(95105, 3, "Convert_function_expression_0_to_arrow_function_95105", "Convert function expression '{0}' to arrow function"),
      Convert_function_declaration_0_to_arrow_function: b(95106, 3, "Convert_function_declaration_0_to_arrow_function_95106", "Convert function declaration '{0}' to arrow function"),
      Fix_all_implicit_this_errors: b(95107, 3, "Fix_all_implicit_this_errors_95107", "Fix all implicit-'this' errors"),
      Wrap_invalid_character_in_an_expression_container: b(95108, 3, "Wrap_invalid_character_in_an_expression_container_95108", "Wrap invalid character in an expression container"),
      Wrap_all_invalid_characters_in_an_expression_container: b(95109, 3, "Wrap_all_invalid_characters_in_an_expression_container_95109", "Wrap all invalid characters in an expression container"),
      Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file: b(95110, 3, "Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110", "Visit https://aka.ms/tsconfig to read more about this file"),
      Add_a_return_statement: b(95111, 3, "Add_a_return_statement_95111", "Add a return statement"),
      Remove_braces_from_arrow_function_body: b(95112, 3, "Remove_braces_from_arrow_function_body_95112", "Remove braces from arrow function body"),
      Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal: b(95113, 3, "Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113", "Wrap the following body with parentheses which should be an object literal"),
      Add_all_missing_return_statement: b(95114, 3, "Add_all_missing_return_statement_95114", "Add all missing return statement"),
      Remove_braces_from_all_arrow_function_bodies_with_relevant_issues: b(95115, 3, "Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115", "Remove braces from all arrow function bodies with relevant issues"),
      Wrap_all_object_literal_with_parentheses: b(95116, 3, "Wrap_all_object_literal_with_parentheses_95116", "Wrap all object literal with parentheses"),
      Move_labeled_tuple_element_modifiers_to_labels: b(95117, 3, "Move_labeled_tuple_element_modifiers_to_labels_95117", "Move labeled tuple element modifiers to labels"),
      Convert_overload_list_to_single_signature: b(95118, 3, "Convert_overload_list_to_single_signature_95118", "Convert overload list to single signature"),
      Generate_get_and_set_accessors_for_all_overriding_properties: b(95119, 3, "Generate_get_and_set_accessors_for_all_overriding_properties_95119", "Generate 'get' and 'set' accessors for all overriding properties"),
      Wrap_in_JSX_fragment: b(95120, 3, "Wrap_in_JSX_fragment_95120", "Wrap in JSX fragment"),
      Wrap_all_unparented_JSX_in_JSX_fragment: b(95121, 3, "Wrap_all_unparented_JSX_in_JSX_fragment_95121", "Wrap all unparented JSX in JSX fragment"),
      Convert_arrow_function_or_function_expression: b(95122, 3, "Convert_arrow_function_or_function_expression_95122", "Convert arrow function or function expression"),
      Convert_to_anonymous_function: b(95123, 3, "Convert_to_anonymous_function_95123", "Convert to anonymous function"),
      Convert_to_named_function: b(95124, 3, "Convert_to_named_function_95124", "Convert to named function"),
      Convert_to_arrow_function: b(95125, 3, "Convert_to_arrow_function_95125", "Convert to arrow function"),
      Remove_parentheses: b(95126, 3, "Remove_parentheses_95126", "Remove parentheses"),
      Could_not_find_a_containing_arrow_function: b(95127, 3, "Could_not_find_a_containing_arrow_function_95127", "Could not find a containing arrow function"),
      Containing_function_is_not_an_arrow_function: b(95128, 3, "Containing_function_is_not_an_arrow_function_95128", "Containing function is not an arrow function"),
      Could_not_find_export_statement: b(95129, 3, "Could_not_find_export_statement_95129", "Could not find export statement"),
      This_file_already_has_a_default_export: b(95130, 3, "This_file_already_has_a_default_export_95130", "This file already has a default export"),
      Could_not_find_import_clause: b(95131, 3, "Could_not_find_import_clause_95131", "Could not find import clause"),
      Could_not_find_namespace_import_or_named_imports: b(95132, 3, "Could_not_find_namespace_import_or_named_imports_95132", "Could not find namespace import or named imports"),
      Selection_is_not_a_valid_type_node: b(95133, 3, "Selection_is_not_a_valid_type_node_95133", "Selection is not a valid type node"),
      No_type_could_be_extracted_from_this_type_node: b(95134, 3, "No_type_could_be_extracted_from_this_type_node_95134", "No type could be extracted from this type node"),
      Could_not_find_property_for_which_to_generate_accessor: b(95135, 3, "Could_not_find_property_for_which_to_generate_accessor_95135", "Could not find property for which to generate accessor"),
      Name_is_not_valid: b(95136, 3, "Name_is_not_valid_95136", "Name is not valid"),
      Can_only_convert_property_with_modifier: b(95137, 3, "Can_only_convert_property_with_modifier_95137", "Can only convert property with modifier"),
      Switch_each_misused_0_to_1: b(95138, 3, "Switch_each_misused_0_to_1_95138", "Switch each misused '{0}' to '{1}'"),
      Convert_to_optional_chain_expression: b(95139, 3, "Convert_to_optional_chain_expression_95139", "Convert to optional chain expression"),
      Could_not_find_convertible_access_expression: b(95140, 3, "Could_not_find_convertible_access_expression_95140", "Could not find convertible access expression"),
      Could_not_find_matching_access_expressions: b(95141, 3, "Could_not_find_matching_access_expressions_95141", "Could not find matching access expressions"),
      Can_only_convert_logical_AND_access_chains: b(95142, 3, "Can_only_convert_logical_AND_access_chains_95142", "Can only convert logical AND access chains"),
      Add_void_to_Promise_resolved_without_a_value: b(95143, 3, "Add_void_to_Promise_resolved_without_a_value_95143", "Add 'void' to Promise resolved without a value"),
      Add_void_to_all_Promises_resolved_without_a_value: b(95144, 3, "Add_void_to_all_Promises_resolved_without_a_value_95144", "Add 'void' to all Promises resolved without a value"),
      Use_element_access_for_0: b(95145, 3, "Use_element_access_for_0_95145", "Use element access for '{0}'"),
      Use_element_access_for_all_undeclared_properties: b(95146, 3, "Use_element_access_for_all_undeclared_properties_95146", "Use element access for all undeclared properties."),
      Delete_all_unused_imports: b(95147, 3, "Delete_all_unused_imports_95147", "Delete all unused imports"),
      Infer_function_return_type: b(95148, 3, "Infer_function_return_type_95148", "Infer function return type"),
      Return_type_must_be_inferred_from_a_function: b(95149, 3, "Return_type_must_be_inferred_from_a_function_95149", "Return type must be inferred from a function"),
      Could_not_determine_function_return_type: b(95150, 3, "Could_not_determine_function_return_type_95150", "Could not determine function return type"),
      Could_not_convert_to_arrow_function: b(95151, 3, "Could_not_convert_to_arrow_function_95151", "Could not convert to arrow function"),
      Could_not_convert_to_named_function: b(95152, 3, "Could_not_convert_to_named_function_95152", "Could not convert to named function"),
      Could_not_convert_to_anonymous_function: b(95153, 3, "Could_not_convert_to_anonymous_function_95153", "Could not convert to anonymous function"),
      Can_only_convert_string_concatenations_and_string_literals: b(95154, 3, "Can_only_convert_string_concatenations_and_string_literals_95154", "Can only convert string concatenations and string literals"),
      Selection_is_not_a_valid_statement_or_statements: b(95155, 3, "Selection_is_not_a_valid_statement_or_statements_95155", "Selection is not a valid statement or statements"),
      Add_missing_function_declaration_0: b(95156, 3, "Add_missing_function_declaration_0_95156", "Add missing function declaration '{0}'"),
      Add_all_missing_function_declarations: b(95157, 3, "Add_all_missing_function_declarations_95157", "Add all missing function declarations"),
      Method_not_implemented: b(95158, 3, "Method_not_implemented_95158", "Method not implemented."),
      Function_not_implemented: b(95159, 3, "Function_not_implemented_95159", "Function not implemented."),
      Add_override_modifier: b(95160, 3, "Add_override_modifier_95160", "Add 'override' modifier"),
      Remove_override_modifier: b(95161, 3, "Remove_override_modifier_95161", "Remove 'override' modifier"),
      Add_all_missing_override_modifiers: b(95162, 3, "Add_all_missing_override_modifiers_95162", "Add all missing 'override' modifiers"),
      Remove_all_unnecessary_override_modifiers: b(95163, 3, "Remove_all_unnecessary_override_modifiers_95163", "Remove all unnecessary 'override' modifiers"),
      Can_only_convert_named_export: b(95164, 3, "Can_only_convert_named_export_95164", "Can only convert named export"),
      Add_missing_properties: b(95165, 3, "Add_missing_properties_95165", "Add missing properties"),
      Add_all_missing_properties: b(95166, 3, "Add_all_missing_properties_95166", "Add all missing properties"),
      Add_missing_attributes: b(95167, 3, "Add_missing_attributes_95167", "Add missing attributes"),
      Add_all_missing_attributes: b(95168, 3, "Add_all_missing_attributes_95168", "Add all missing attributes"),
      Add_undefined_to_optional_property_type: b(95169, 3, "Add_undefined_to_optional_property_type_95169", "Add 'undefined' to optional property type"),
      Convert_named_imports_to_default_import: b(95170, 3, "Convert_named_imports_to_default_import_95170", "Convert named imports to default import"),
      Delete_unused_param_tag_0: b(95171, 3, "Delete_unused_param_tag_0_95171", "Delete unused '@param' tag '{0}'"),
      Delete_all_unused_param_tags: b(95172, 3, "Delete_all_unused_param_tags_95172", "Delete all unused '@param' tags"),
      Rename_param_tag_name_0_to_1: b(95173, 3, "Rename_param_tag_name_0_to_1_95173", "Rename '@param' tag name '{0}' to '{1}'"),
      Use_0: b(95174, 3, "Use_0_95174", "Use `{0}`."),
      Use_Number_isNaN_in_all_conditions: b(95175, 3, "Use_Number_isNaN_in_all_conditions_95175", "Use `Number.isNaN` in all conditions."),
      Convert_typedef_to_TypeScript_type: b(95176, 3, "Convert_typedef_to_TypeScript_type_95176", "Convert typedef to TypeScript type."),
      Convert_all_typedef_to_TypeScript_types: b(95177, 3, "Convert_all_typedef_to_TypeScript_types_95177", "Convert all typedef to TypeScript types."),
      Move_to_file: b(95178, 3, "Move_to_file_95178", "Move to file"),
      Cannot_move_to_file_selected_file_is_invalid: b(95179, 3, "Cannot_move_to_file_selected_file_is_invalid_95179", "Cannot move to file, selected file is invalid"),
      Use_import_type: b(95180, 3, "Use_import_type_95180", "Use 'import type'"),
      Use_type_0: b(95181, 3, "Use_type_0_95181", "Use 'type {0}'"),
      Fix_all_with_type_only_imports: b(95182, 3, "Fix_all_with_type_only_imports_95182", "Fix all with type-only imports"),
      Cannot_move_statements_to_the_selected_file: b(95183, 3, "Cannot_move_statements_to_the_selected_file_95183", "Cannot move statements to the selected file"),
      Inline_variable: b(95184, 3, "Inline_variable_95184", "Inline variable"),
      Could_not_find_variable_to_inline: b(95185, 3, "Could_not_find_variable_to_inline_95185", "Could not find variable to inline."),
      Variables_with_multiple_declarations_cannot_be_inlined: b(95186, 3, "Variables_with_multiple_declarations_cannot_be_inlined_95186", "Variables with multiple declarations cannot be inlined."),
      Add_missing_comma_for_object_member_completion_0: b(95187, 3, "Add_missing_comma_for_object_member_completion_0_95187", "Add missing comma for object member completion '{0}'."),
      Add_missing_parameter_to_0: b(95188, 3, "Add_missing_parameter_to_0_95188", "Add missing parameter to '{0}'"),
      Add_missing_parameters_to_0: b(95189, 3, "Add_missing_parameters_to_0_95189", "Add missing parameters to '{0}'"),
      Add_all_missing_parameters: b(95190, 3, "Add_all_missing_parameters_95190", "Add all missing parameters"),
      Add_optional_parameter_to_0: b(95191, 3, "Add_optional_parameter_to_0_95191", "Add optional parameter to '{0}'"),
      Add_optional_parameters_to_0: b(95192, 3, "Add_optional_parameters_to_0_95192", "Add optional parameters to '{0}'"),
      Add_all_optional_parameters: b(95193, 3, "Add_all_optional_parameters_95193", "Add all optional parameters"),
      Wrap_in_parentheses: b(95194, 3, "Wrap_in_parentheses_95194", "Wrap in parentheses"),
      Wrap_all_invalid_decorator_expressions_in_parentheses: b(95195, 3, "Wrap_all_invalid_decorator_expressions_in_parentheses_95195", "Wrap all invalid decorator expressions in parentheses"),
      Add_resolution_mode_import_attribute: b(95196, 3, "Add_resolution_mode_import_attribute_95196", "Add 'resolution-mode' import attribute"),
      Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it: b(95197, 3, "Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it_95197", "Add 'resolution-mode' import attribute to all type-only imports that need it"),
      No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer: b(18004, 1, "No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004", "No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),
      Classes_may_not_have_a_field_named_constructor: b(18006, 1, "Classes_may_not_have_a_field_named_constructor_18006", "Classes may not have a field named 'constructor'."),
      JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array: b(18007, 1, "JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007", "JSX expressions may not use the comma operator. Did you mean to write an array?"),
      Private_identifiers_cannot_be_used_as_parameters: b(18009, 1, "Private_identifiers_cannot_be_used_as_parameters_18009", "Private identifiers cannot be used as parameters."),
      An_accessibility_modifier_cannot_be_used_with_a_private_identifier: b(18010, 1, "An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010", "An accessibility modifier cannot be used with a private identifier."),
      The_operand_of_a_delete_operator_cannot_be_a_private_identifier: b(18011, 1, "The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011", "The operand of a 'delete' operator cannot be a private identifier."),
      constructor_is_a_reserved_word: b(18012, 1, "constructor_is_a_reserved_word_18012", "'#constructor' is a reserved word."),
      Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier: b(18013, 1, "Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013", "Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),
      The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling: b(18014, 1, "The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014", "The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),
      Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2: b(18015, 1, "Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015", "Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),
      Private_identifiers_are_not_allowed_outside_class_bodies: b(18016, 1, "Private_identifiers_are_not_allowed_outside_class_bodies_18016", "Private identifiers are not allowed outside class bodies."),
      The_shadowing_declaration_of_0_is_defined_here: b(18017, 1, "The_shadowing_declaration_of_0_is_defined_here_18017", "The shadowing declaration of '{0}' is defined here"),
      The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here: b(18018, 1, "The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018", "The declaration of '{0}' that you probably intended to use is defined here"),
      _0_modifier_cannot_be_used_with_a_private_identifier: b(18019, 1, "_0_modifier_cannot_be_used_with_a_private_identifier_18019", "'{0}' modifier cannot be used with a private identifier."),
      An_enum_member_cannot_be_named_with_a_private_identifier: b(18024, 1, "An_enum_member_cannot_be_named_with_a_private_identifier_18024", "An enum member cannot be named with a private identifier."),
      can_only_be_used_at_the_start_of_a_file: b(18026, 1, "can_only_be_used_at_the_start_of_a_file_18026", "'#!' can only be used at the start of a file."),
      Compiler_reserves_name_0_when_emitting_private_identifier_downlevel: b(18027, 1, "Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027", "Compiler reserves name '{0}' when emitting private identifier downlevel."),
      Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher: b(18028, 1, "Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028", "Private identifiers are only available when targeting ECMAScript 2015 and higher."),
      Private_identifiers_are_not_allowed_in_variable_declarations: b(18029, 1, "Private_identifiers_are_not_allowed_in_variable_declarations_18029", "Private identifiers are not allowed in variable declarations."),
      An_optional_chain_cannot_contain_private_identifiers: b(18030, 1, "An_optional_chain_cannot_contain_private_identifiers_18030", "An optional chain cannot contain private identifiers."),
      The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents: b(18031, 1, "The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031", "The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),
      The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some: b(18032, 1, "The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032", "The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),
      Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values: b(18033, 1, "Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033", "Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),
      Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment: b(18034, 3, "Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034", "Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),
      Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name: b(18035, 1, "Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035", "Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),
      Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator: b(18036, 1, "Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036", "Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),
      await_expression_cannot_be_used_inside_a_class_static_block: b(18037, 1, "await_expression_cannot_be_used_inside_a_class_static_block_18037", "'await' expression cannot be used inside a class static block."),
      for_await_loops_cannot_be_used_inside_a_class_static_block: b(18038, 1, "for_await_loops_cannot_be_used_inside_a_class_static_block_18038", "'for await' loops cannot be used inside a class static block."),
      Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block: b(18039, 1, "Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039", "Invalid use of '{0}'. It cannot be used inside a class static block."),
      A_return_statement_cannot_be_used_inside_a_class_static_block: b(18041, 1, "A_return_statement_cannot_be_used_inside_a_class_static_block_18041", "A 'return' statement cannot be used inside a class static block."),
      _0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation: b(18042, 1, "_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042", "'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),
      Types_cannot_appear_in_export_declarations_in_JavaScript_files: b(18043, 1, "Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043", "Types cannot appear in export declarations in JavaScript files."),
      _0_is_automatically_exported_here: b(18044, 3, "_0_is_automatically_exported_here_18044", "'{0}' is automatically exported here."),
      Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher: b(18045, 1, "Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045", "Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),
      _0_is_of_type_unknown: b(18046, 1, "_0_is_of_type_unknown_18046", "'{0}' is of type 'unknown'."),
      _0_is_possibly_null: b(18047, 1, "_0_is_possibly_null_18047", "'{0}' is possibly 'null'."),
      _0_is_possibly_undefined: b(18048, 1, "_0_is_possibly_undefined_18048", "'{0}' is possibly 'undefined'."),
      _0_is_possibly_null_or_undefined: b(18049, 1, "_0_is_possibly_null_or_undefined_18049", "'{0}' is possibly 'null' or 'undefined'."),
      The_value_0_cannot_be_used_here: b(18050, 1, "The_value_0_cannot_be_used_here_18050", "The value '{0}' cannot be used here."),
      Compiler_option_0_cannot_be_given_an_empty_string: b(18051, 1, "Compiler_option_0_cannot_be_given_an_empty_string_18051", "Compiler option '{0}' cannot be given an empty string."),
      Its_type_0_is_not_a_valid_JSX_element_type: b(18053, 1, "Its_type_0_is_not_a_valid_JSX_element_type_18053", "Its type '{0}' is not a valid JSX element type."),
      await_using_statements_cannot_be_used_inside_a_class_static_block: b(18054, 1, "await_using_statements_cannot_be_used_inside_a_class_static_block_18054", "'await using' statements cannot be used inside a class static block."),
      _0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled: b(18055, 1, "_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055", "'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),
      Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled: b(18056, 1, "Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056", "Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled."),
      String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020: b(18057, 1, "String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es_18057", "String literal import and export names are not supported when the '--module' flag is set to 'es2015' or 'es2020'."),
      Default_imports_are_not_allowed_in_a_deferred_import: b(18058, 1, "Default_imports_are_not_allowed_in_a_deferred_import_18058", "Default imports are not allowed in a deferred import."),
      Named_imports_are_not_allowed_in_a_deferred_import: b(18059, 1, "Named_imports_are_not_allowed_in_a_deferred_import_18059", "Named imports are not allowed in a deferred import."),
      Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve: b(18060, 1, "Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve_18060", "Deferred imports are only supported when the '--module' flag is set to 'esnext' or 'preserve'."),
      _0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer: b(18061, 1, "_0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer_18061", "'{0}' is not a valid meta-property for keyword 'import'. Did you mean 'meta' or 'defer'?")
    };
    function M_(e) {
      return e >= 80;
    }
    function qY(e) {
      return e === 32 || M_(e);
    }
    var R7 = {
      abstract: 128,
      accessor: 129,
      any: 133,
      as: 130,
      asserts: 131,
      assert: 132,
      bigint: 163,
      boolean: 136,
      break: 83,
      case: 84,
      catch: 85,
      class: 86,
      continue: 88,
      const: 87,
      constructor: 137,
      debugger: 89,
      declare: 138,
      default: 90,
      defer: 166,
      delete: 91,
      do: 92,
      else: 93,
      enum: 94,
      export: 95,
      extends: 96,
      false: 97,
      finally: 98,
      for: 99,
      from: 161,
      function: 100,
      get: 139,
      if: 101,
      implements: 119,
      import: 102,
      in: 103,
      infer: 140,
      instanceof: 104,
      interface: 120,
      intrinsic: 141,
      is: 142,
      keyof: 143,
      let: 121,
      module: 144,
      namespace: 145,
      never: 146,
      new: 105,
      null: 106,
      number: 150,
      object: 151,
      package: 122,
      private: 123,
      protected: 124,
      public: 125,
      override: 164,
      out: 147,
      readonly: 148,
      require: 149,
      global: 162,
      return: 107,
      satisfies: 152,
      set: 153,
      static: 126,
      string: 154,
      super: 108,
      switch: 109,
      symbol: 155,
      this: 110,
      throw: 111,
      true: 112,
      try: 113,
      type: 156,
      typeof: 114,
      undefined: 157,
      unique: 158,
      unknown: 159,
      using: 160,
      var: 115,
      void: 116,
      while: 117,
      with: 118,
      yield: 127,
      async: 134,
      await: 135,
      of: 165
    }, VOe = new Map(Object.entries(R7)), Kge = new Map(Object.entries({
      ...R7,
      "{": 19,
      "}": 20,
      "(": 21,
      ")": 22,
      "[": 23,
      "]": 24,
      ".": 25,
      "...": 26,
      ";": 27,
      ",": 28,
      "<": 30,
      ">": 32,
      "<=": 33,
      ">=": 34,
      "==": 35,
      "!=": 36,
      "===": 37,
      "!==": 38,
      "=>": 39,
      "+": 40,
      "-": 41,
      "**": 43,
      "*": 42,
      "/": 44,
      "%": 45,
      "++": 46,
      "--": 47,
      "<<": 48,
      "</": 31,
      ">>": 49,
      ">>>": 50,
      "&": 51,
      "|": 52,
      "^": 53,
      "!": 54,
      "~": 55,
      "&&": 56,
      "||": 57,
      "?": 58,
      "??": 61,
      "?.": 29,
      ":": 59,
      "=": 64,
      "+=": 65,
      "-=": 66,
      "*=": 67,
      "**=": 68,
      "/=": 69,
      "%=": 70,
      "<<=": 71,
      ">>=": 72,
      ">>>=": 73,
      "&=": 74,
      "|=": 75,
      "^=": 79,
      "||=": 76,
      "&&=": 77,
      "??=": 78,
      "@": 60,
      "#": 63,
      "`": 62
    })), ehe = /* @__PURE__ */ new Map([
      [100, 1],
      [103, 2],
      [105, 4],
      [109, 8],
      [115, 16],
      [117, 32],
      [118, 64],
      [121, 128]
    ]), qOe = /* @__PURE__ */ new Map([
      [1, Rl.RegularExpressionFlagsHasIndices],
      [16, Rl.RegularExpressionFlagsDotAll],
      [32, Rl.RegularExpressionFlagsUnicode],
      [64, Rl.RegularExpressionFlagsUnicodeSets],
      [128, Rl.RegularExpressionFlagsSticky]
    ]), GOe = [
      170,
      170,
      181,
      181,
      186,
      186,
      192,
      214,
      216,
      246,
      248,
      705,
      710,
      721,
      736,
      740,
      748,
      748,
      750,
      750,
      880,
      884,
      886,
      887,
      890,
      893,
      902,
      902,
      904,
      906,
      908,
      908,
      910,
      929,
      931,
      1013,
      1015,
      1153,
      1162,
      1319,
      1329,
      1366,
      1369,
      1369,
      1377,
      1415,
      1488,
      1514,
      1520,
      1522,
      1568,
      1610,
      1646,
      1647,
      1649,
      1747,
      1749,
      1749,
      1765,
      1766,
      1774,
      1775,
      1786,
      1788,
      1791,
      1791,
      1808,
      1808,
      1810,
      1839,
      1869,
      1957,
      1969,
      1969,
      1994,
      2026,
      2036,
      2037,
      2042,
      2042,
      2048,
      2069,
      2074,
      2074,
      2084,
      2084,
      2088,
      2088,
      2112,
      2136,
      2208,
      2208,
      2210,
      2220,
      2308,
      2361,
      2365,
      2365,
      2384,
      2384,
      2392,
      2401,
      2417,
      2423,
      2425,
      2431,
      2437,
      2444,
      2447,
      2448,
      2451,
      2472,
      2474,
      2480,
      2482,
      2482,
      2486,
      2489,
      2493,
      2493,
      2510,
      2510,
      2524,
      2525,
      2527,
      2529,
      2544,
      2545,
      2565,
      2570,
      2575,
      2576,
      2579,
      2600,
      2602,
      2608,
      2610,
      2611,
      2613,
      2614,
      2616,
      2617,
      2649,
      2652,
      2654,
      2654,
      2674,
      2676,
      2693,
      2701,
      2703,
      2705,
      2707,
      2728,
      2730,
      2736,
      2738,
      2739,
      2741,
      2745,
      2749,
      2749,
      2768,
      2768,
      2784,
      2785,
      2821,
      2828,
      2831,
      2832,
      2835,
      2856,
      2858,
      2864,
      2866,
      2867,
      2869,
      2873,
      2877,
      2877,
      2908,
      2909,
      2911,
      2913,
      2929,
      2929,
      2947,
      2947,
      2949,
      2954,
      2958,
      2960,
      2962,
      2965,
      2969,
      2970,
      2972,
      2972,
      2974,
      2975,
      2979,
      2980,
      2984,
      2986,
      2990,
      3001,
      3024,
      3024,
      3077,
      3084,
      3086,
      3088,
      3090,
      3112,
      3114,
      3123,
      3125,
      3129,
      3133,
      3133,
      3160,
      3161,
      3168,
      3169,
      3205,
      3212,
      3214,
      3216,
      3218,
      3240,
      3242,
      3251,
      3253,
      3257,
      3261,
      3261,
      3294,
      3294,
      3296,
      3297,
      3313,
      3314,
      3333,
      3340,
      3342,
      3344,
      3346,
      3386,
      3389,
      3389,
      3406,
      3406,
      3424,
      3425,
      3450,
      3455,
      3461,
      3478,
      3482,
      3505,
      3507,
      3515,
      3517,
      3517,
      3520,
      3526,
      3585,
      3632,
      3634,
      3635,
      3648,
      3654,
      3713,
      3714,
      3716,
      3716,
      3719,
      3720,
      3722,
      3722,
      3725,
      3725,
      3732,
      3735,
      3737,
      3743,
      3745,
      3747,
      3749,
      3749,
      3751,
      3751,
      3754,
      3755,
      3757,
      3760,
      3762,
      3763,
      3773,
      3773,
      3776,
      3780,
      3782,
      3782,
      3804,
      3807,
      3840,
      3840,
      3904,
      3911,
      3913,
      3948,
      3976,
      3980,
      4096,
      4138,
      4159,
      4159,
      4176,
      4181,
      4186,
      4189,
      4193,
      4193,
      4197,
      4198,
      4206,
      4208,
      4213,
      4225,
      4238,
      4238,
      4256,
      4293,
      4295,
      4295,
      4301,
      4301,
      4304,
      4346,
      4348,
      4680,
      4682,
      4685,
      4688,
      4694,
      4696,
      4696,
      4698,
      4701,
      4704,
      4744,
      4746,
      4749,
      4752,
      4784,
      4786,
      4789,
      4792,
      4798,
      4800,
      4800,
      4802,
      4805,
      4808,
      4822,
      4824,
      4880,
      4882,
      4885,
      4888,
      4954,
      4992,
      5007,
      5024,
      5108,
      5121,
      5740,
      5743,
      5759,
      5761,
      5786,
      5792,
      5866,
      5870,
      5872,
      5888,
      5900,
      5902,
      5905,
      5920,
      5937,
      5952,
      5969,
      5984,
      5996,
      5998,
      6e3,
      6016,
      6067,
      6103,
      6103,
      6108,
      6108,
      6176,
      6263,
      6272,
      6312,
      6314,
      6314,
      6320,
      6389,
      6400,
      6428,
      6480,
      6509,
      6512,
      6516,
      6528,
      6571,
      6593,
      6599,
      6656,
      6678,
      6688,
      6740,
      6823,
      6823,
      6917,
      6963,
      6981,
      6987,
      7043,
      7072,
      7086,
      7087,
      7098,
      7141,
      7168,
      7203,
      7245,
      7247,
      7258,
      7293,
      7401,
      7404,
      7406,
      7409,
      7413,
      7414,
      7424,
      7615,
      7680,
      7957,
      7960,
      7965,
      7968,
      8005,
      8008,
      8013,
      8016,
      8023,
      8025,
      8025,
      8027,
      8027,
      8029,
      8029,
      8031,
      8061,
      8064,
      8116,
      8118,
      8124,
      8126,
      8126,
      8130,
      8132,
      8134,
      8140,
      8144,
      8147,
      8150,
      8155,
      8160,
      8172,
      8178,
      8180,
      8182,
      8188,
      8305,
      8305,
      8319,
      8319,
      8336,
      8348,
      8450,
      8450,
      8455,
      8455,
      8458,
      8467,
      8469,
      8469,
      8473,
      8477,
      8484,
      8484,
      8486,
      8486,
      8488,
      8488,
      8490,
      8493,
      8495,
      8505,
      8508,
      8511,
      8517,
      8521,
      8526,
      8526,
      8544,
      8584,
      11264,
      11310,
      11312,
      11358,
      11360,
      11492,
      11499,
      11502,
      11506,
      11507,
      11520,
      11557,
      11559,
      11559,
      11565,
      11565,
      11568,
      11623,
      11631,
      11631,
      11648,
      11670,
      11680,
      11686,
      11688,
      11694,
      11696,
      11702,
      11704,
      11710,
      11712,
      11718,
      11720,
      11726,
      11728,
      11734,
      11736,
      11742,
      11823,
      11823,
      12293,
      12295,
      12321,
      12329,
      12337,
      12341,
      12344,
      12348,
      12353,
      12438,
      12445,
      12447,
      12449,
      12538,
      12540,
      12543,
      12549,
      12589,
      12593,
      12686,
      12704,
      12730,
      12784,
      12799,
      13312,
      19893,
      19968,
      40908,
      40960,
      42124,
      42192,
      42237,
      42240,
      42508,
      42512,
      42527,
      42538,
      42539,
      42560,
      42606,
      42623,
      42647,
      42656,
      42735,
      42775,
      42783,
      42786,
      42888,
      42891,
      42894,
      42896,
      42899,
      42912,
      42922,
      43e3,
      43009,
      43011,
      43013,
      43015,
      43018,
      43020,
      43042,
      43072,
      43123,
      43138,
      43187,
      43250,
      43255,
      43259,
      43259,
      43274,
      43301,
      43312,
      43334,
      43360,
      43388,
      43396,
      43442,
      43471,
      43471,
      43520,
      43560,
      43584,
      43586,
      43588,
      43595,
      43616,
      43638,
      43642,
      43642,
      43648,
      43695,
      43697,
      43697,
      43701,
      43702,
      43705,
      43709,
      43712,
      43712,
      43714,
      43714,
      43739,
      43741,
      43744,
      43754,
      43762,
      43764,
      43777,
      43782,
      43785,
      43790,
      43793,
      43798,
      43808,
      43814,
      43816,
      43822,
      43968,
      44002,
      44032,
      55203,
      55216,
      55238,
      55243,
      55291,
      63744,
      64109,
      64112,
      64217,
      64256,
      64262,
      64275,
      64279,
      64285,
      64285,
      64287,
      64296,
      64298,
      64310,
      64312,
      64316,
      64318,
      64318,
      64320,
      64321,
      64323,
      64324,
      64326,
      64433,
      64467,
      64829,
      64848,
      64911,
      64914,
      64967,
      65008,
      65019,
      65136,
      65140,
      65142,
      65276,
      65313,
      65338,
      65345,
      65370,
      65382,
      65470,
      65474,
      65479,
      65482,
      65487,
      65490,
      65495,
      65498,
      65500
    ], HOe = [
      170,
      170,
      181,
      181,
      186,
      186,
      192,
      214,
      216,
      246,
      248,
      705,
      710,
      721,
      736,
      740,
      748,
      748,
      750,
      750,
      768,
      884,
      886,
      887,
      890,
      893,
      902,
      902,
      904,
      906,
      908,
      908,
      910,
      929,
      931,
      1013,
      1015,
      1153,
      1155,
      1159,
      1162,
      1319,
      1329,
      1366,
      1369,
      1369,
      1377,
      1415,
      1425,
      1469,
      1471,
      1471,
      1473,
      1474,
      1476,
      1477,
      1479,
      1479,
      1488,
      1514,
      1520,
      1522,
      1552,
      1562,
      1568,
      1641,
      1646,
      1747,
      1749,
      1756,
      1759,
      1768,
      1770,
      1788,
      1791,
      1791,
      1808,
      1866,
      1869,
      1969,
      1984,
      2037,
      2042,
      2042,
      2048,
      2093,
      2112,
      2139,
      2208,
      2208,
      2210,
      2220,
      2276,
      2302,
      2304,
      2403,
      2406,
      2415,
      2417,
      2423,
      2425,
      2431,
      2433,
      2435,
      2437,
      2444,
      2447,
      2448,
      2451,
      2472,
      2474,
      2480,
      2482,
      2482,
      2486,
      2489,
      2492,
      2500,
      2503,
      2504,
      2507,
      2510,
      2519,
      2519,
      2524,
      2525,
      2527,
      2531,
      2534,
      2545,
      2561,
      2563,
      2565,
      2570,
      2575,
      2576,
      2579,
      2600,
      2602,
      2608,
      2610,
      2611,
      2613,
      2614,
      2616,
      2617,
      2620,
      2620,
      2622,
      2626,
      2631,
      2632,
      2635,
      2637,
      2641,
      2641,
      2649,
      2652,
      2654,
      2654,
      2662,
      2677,
      2689,
      2691,
      2693,
      2701,
      2703,
      2705,
      2707,
      2728,
      2730,
      2736,
      2738,
      2739,
      2741,
      2745,
      2748,
      2757,
      2759,
      2761,
      2763,
      2765,
      2768,
      2768,
      2784,
      2787,
      2790,
      2799,
      2817,
      2819,
      2821,
      2828,
      2831,
      2832,
      2835,
      2856,
      2858,
      2864,
      2866,
      2867,
      2869,
      2873,
      2876,
      2884,
      2887,
      2888,
      2891,
      2893,
      2902,
      2903,
      2908,
      2909,
      2911,
      2915,
      2918,
      2927,
      2929,
      2929,
      2946,
      2947,
      2949,
      2954,
      2958,
      2960,
      2962,
      2965,
      2969,
      2970,
      2972,
      2972,
      2974,
      2975,
      2979,
      2980,
      2984,
      2986,
      2990,
      3001,
      3006,
      3010,
      3014,
      3016,
      3018,
      3021,
      3024,
      3024,
      3031,
      3031,
      3046,
      3055,
      3073,
      3075,
      3077,
      3084,
      3086,
      3088,
      3090,
      3112,
      3114,
      3123,
      3125,
      3129,
      3133,
      3140,
      3142,
      3144,
      3146,
      3149,
      3157,
      3158,
      3160,
      3161,
      3168,
      3171,
      3174,
      3183,
      3202,
      3203,
      3205,
      3212,
      3214,
      3216,
      3218,
      3240,
      3242,
      3251,
      3253,
      3257,
      3260,
      3268,
      3270,
      3272,
      3274,
      3277,
      3285,
      3286,
      3294,
      3294,
      3296,
      3299,
      3302,
      3311,
      3313,
      3314,
      3330,
      3331,
      3333,
      3340,
      3342,
      3344,
      3346,
      3386,
      3389,
      3396,
      3398,
      3400,
      3402,
      3406,
      3415,
      3415,
      3424,
      3427,
      3430,
      3439,
      3450,
      3455,
      3458,
      3459,
      3461,
      3478,
      3482,
      3505,
      3507,
      3515,
      3517,
      3517,
      3520,
      3526,
      3530,
      3530,
      3535,
      3540,
      3542,
      3542,
      3544,
      3551,
      3570,
      3571,
      3585,
      3642,
      3648,
      3662,
      3664,
      3673,
      3713,
      3714,
      3716,
      3716,
      3719,
      3720,
      3722,
      3722,
      3725,
      3725,
      3732,
      3735,
      3737,
      3743,
      3745,
      3747,
      3749,
      3749,
      3751,
      3751,
      3754,
      3755,
      3757,
      3769,
      3771,
      3773,
      3776,
      3780,
      3782,
      3782,
      3784,
      3789,
      3792,
      3801,
      3804,
      3807,
      3840,
      3840,
      3864,
      3865,
      3872,
      3881,
      3893,
      3893,
      3895,
      3895,
      3897,
      3897,
      3902,
      3911,
      3913,
      3948,
      3953,
      3972,
      3974,
      3991,
      3993,
      4028,
      4038,
      4038,
      4096,
      4169,
      4176,
      4253,
      4256,
      4293,
      4295,
      4295,
      4301,
      4301,
      4304,
      4346,
      4348,
      4680,
      4682,
      4685,
      4688,
      4694,
      4696,
      4696,
      4698,
      4701,
      4704,
      4744,
      4746,
      4749,
      4752,
      4784,
      4786,
      4789,
      4792,
      4798,
      4800,
      4800,
      4802,
      4805,
      4808,
      4822,
      4824,
      4880,
      4882,
      4885,
      4888,
      4954,
      4957,
      4959,
      4992,
      5007,
      5024,
      5108,
      5121,
      5740,
      5743,
      5759,
      5761,
      5786,
      5792,
      5866,
      5870,
      5872,
      5888,
      5900,
      5902,
      5908,
      5920,
      5940,
      5952,
      5971,
      5984,
      5996,
      5998,
      6e3,
      6002,
      6003,
      6016,
      6099,
      6103,
      6103,
      6108,
      6109,
      6112,
      6121,
      6155,
      6157,
      6160,
      6169,
      6176,
      6263,
      6272,
      6314,
      6320,
      6389,
      6400,
      6428,
      6432,
      6443,
      6448,
      6459,
      6470,
      6509,
      6512,
      6516,
      6528,
      6571,
      6576,
      6601,
      6608,
      6617,
      6656,
      6683,
      6688,
      6750,
      6752,
      6780,
      6783,
      6793,
      6800,
      6809,
      6823,
      6823,
      6912,
      6987,
      6992,
      7001,
      7019,
      7027,
      7040,
      7155,
      7168,
      7223,
      7232,
      7241,
      7245,
      7293,
      7376,
      7378,
      7380,
      7414,
      7424,
      7654,
      7676,
      7957,
      7960,
      7965,
      7968,
      8005,
      8008,
      8013,
      8016,
      8023,
      8025,
      8025,
      8027,
      8027,
      8029,
      8029,
      8031,
      8061,
      8064,
      8116,
      8118,
      8124,
      8126,
      8126,
      8130,
      8132,
      8134,
      8140,
      8144,
      8147,
      8150,
      8155,
      8160,
      8172,
      8178,
      8180,
      8182,
      8188,
      8204,
      8205,
      8255,
      8256,
      8276,
      8276,
      8305,
      8305,
      8319,
      8319,
      8336,
      8348,
      8400,
      8412,
      8417,
      8417,
      8421,
      8432,
      8450,
      8450,
      8455,
      8455,
      8458,
      8467,
      8469,
      8469,
      8473,
      8477,
      8484,
      8484,
      8486,
      8486,
      8488,
      8488,
      8490,
      8493,
      8495,
      8505,
      8508,
      8511,
      8517,
      8521,
      8526,
      8526,
      8544,
      8584,
      11264,
      11310,
      11312,
      11358,
      11360,
      11492,
      11499,
      11507,
      11520,
      11557,
      11559,
      11559,
      11565,
      11565,
      11568,
      11623,
      11631,
      11631,
      11647,
      11670,
      11680,
      11686,
      11688,
      11694,
      11696,
      11702,
      11704,
      11710,
      11712,
      11718,
      11720,
      11726,
      11728,
      11734,
      11736,
      11742,
      11744,
      11775,
      11823,
      11823,
      12293,
      12295,
      12321,
      12335,
      12337,
      12341,
      12344,
      12348,
      12353,
      12438,
      12441,
      12442,
      12445,
      12447,
      12449,
      12538,
      12540,
      12543,
      12549,
      12589,
      12593,
      12686,
      12704,
      12730,
      12784,
      12799,
      13312,
      19893,
      19968,
      40908,
      40960,
      42124,
      42192,
      42237,
      42240,
      42508,
      42512,
      42539,
      42560,
      42607,
      42612,
      42621,
      42623,
      42647,
      42655,
      42737,
      42775,
      42783,
      42786,
      42888,
      42891,
      42894,
      42896,
      42899,
      42912,
      42922,
      43e3,
      43047,
      43072,
      43123,
      43136,
      43204,
      43216,
      43225,
      43232,
      43255,
      43259,
      43259,
      43264,
      43309,
      43312,
      43347,
      43360,
      43388,
      43392,
      43456,
      43471,
      43481,
      43520,
      43574,
      43584,
      43597,
      43600,
      43609,
      43616,
      43638,
      43642,
      43643,
      43648,
      43714,
      43739,
      43741,
      43744,
      43759,
      43762,
      43766,
      43777,
      43782,
      43785,
      43790,
      43793,
      43798,
      43808,
      43814,
      43816,
      43822,
      43968,
      44010,
      44012,
      44013,
      44016,
      44025,
      44032,
      55203,
      55216,
      55238,
      55243,
      55291,
      63744,
      64109,
      64112,
      64217,
      64256,
      64262,
      64275,
      64279,
      64285,
      64296,
      64298,
      64310,
      64312,
      64316,
      64318,
      64318,
      64320,
      64321,
      64323,
      64324,
      64326,
      64433,
      64467,
      64829,
      64848,
      64911,
      64914,
      64967,
      65008,
      65019,
      65024,
      65039,
      65056,
      65062,
      65075,
      65076,
      65101,
      65103,
      65136,
      65140,
      65142,
      65276,
      65296,
      65305,
      65313,
      65338,
      65343,
      65343,
      65345,
      65370,
      65382,
      65470,
      65474,
      65479,
      65482,
      65487,
      65490,
      65495,
      65498,
      65500
    ], $Oe = [
      65,
      90,
      97,
      122,
      170,
      170,
      181,
      181,
      186,
      186,
      192,
      214,
      216,
      246,
      248,
      705,
      710,
      721,
      736,
      740,
      748,
      748,
      750,
      750,
      880,
      884,
      886,
      887,
      890,
      893,
      895,
      895,
      902,
      902,
      904,
      906,
      908,
      908,
      910,
      929,
      931,
      1013,
      1015,
      1153,
      1162,
      1327,
      1329,
      1366,
      1369,
      1369,
      1376,
      1416,
      1488,
      1514,
      1519,
      1522,
      1568,
      1610,
      1646,
      1647,
      1649,
      1747,
      1749,
      1749,
      1765,
      1766,
      1774,
      1775,
      1786,
      1788,
      1791,
      1791,
      1808,
      1808,
      1810,
      1839,
      1869,
      1957,
      1969,
      1969,
      1994,
      2026,
      2036,
      2037,
      2042,
      2042,
      2048,
      2069,
      2074,
      2074,
      2084,
      2084,
      2088,
      2088,
      2112,
      2136,
      2144,
      2154,
      2160,
      2183,
      2185,
      2190,
      2208,
      2249,
      2308,
      2361,
      2365,
      2365,
      2384,
      2384,
      2392,
      2401,
      2417,
      2432,
      2437,
      2444,
      2447,
      2448,
      2451,
      2472,
      2474,
      2480,
      2482,
      2482,
      2486,
      2489,
      2493,
      2493,
      2510,
      2510,
      2524,
      2525,
      2527,
      2529,
      2544,
      2545,
      2556,
      2556,
      2565,
      2570,
      2575,
      2576,
      2579,
      2600,
      2602,
      2608,
      2610,
      2611,
      2613,
      2614,
      2616,
      2617,
      2649,
      2652,
      2654,
      2654,
      2674,
      2676,
      2693,
      2701,
      2703,
      2705,
      2707,
      2728,
      2730,
      2736,
      2738,
      2739,
      2741,
      2745,
      2749,
      2749,
      2768,
      2768,
      2784,
      2785,
      2809,
      2809,
      2821,
      2828,
      2831,
      2832,
      2835,
      2856,
      2858,
      2864,
      2866,
      2867,
      2869,
      2873,
      2877,
      2877,
      2908,
      2909,
      2911,
      2913,
      2929,
      2929,
      2947,
      2947,
      2949,
      2954,
      2958,
      2960,
      2962,
      2965,
      2969,
      2970,
      2972,
      2972,
      2974,
      2975,
      2979,
      2980,
      2984,
      2986,
      2990,
      3001,
      3024,
      3024,
      3077,
      3084,
      3086,
      3088,
      3090,
      3112,
      3114,
      3129,
      3133,
      3133,
      3160,
      3162,
      3165,
      3165,
      3168,
      3169,
      3200,
      3200,
      3205,
      3212,
      3214,
      3216,
      3218,
      3240,
      3242,
      3251,
      3253,
      3257,
      3261,
      3261,
      3293,
      3294,
      3296,
      3297,
      3313,
      3314,
      3332,
      3340,
      3342,
      3344,
      3346,
      3386,
      3389,
      3389,
      3406,
      3406,
      3412,
      3414,
      3423,
      3425,
      3450,
      3455,
      3461,
      3478,
      3482,
      3505,
      3507,
      3515,
      3517,
      3517,
      3520,
      3526,
      3585,
      3632,
      3634,
      3635,
      3648,
      3654,
      3713,
      3714,
      3716,
      3716,
      3718,
      3722,
      3724,
      3747,
      3749,
      3749,
      3751,
      3760,
      3762,
      3763,
      3773,
      3773,
      3776,
      3780,
      3782,
      3782,
      3804,
      3807,
      3840,
      3840,
      3904,
      3911,
      3913,
      3948,
      3976,
      3980,
      4096,
      4138,
      4159,
      4159,
      4176,
      4181,
      4186,
      4189,
      4193,
      4193,
      4197,
      4198,
      4206,
      4208,
      4213,
      4225,
      4238,
      4238,
      4256,
      4293,
      4295,
      4295,
      4301,
      4301,
      4304,
      4346,
      4348,
      4680,
      4682,
      4685,
      4688,
      4694,
      4696,
      4696,
      4698,
      4701,
      4704,
      4744,
      4746,
      4749,
      4752,
      4784,
      4786,
      4789,
      4792,
      4798,
      4800,
      4800,
      4802,
      4805,
      4808,
      4822,
      4824,
      4880,
      4882,
      4885,
      4888,
      4954,
      4992,
      5007,
      5024,
      5109,
      5112,
      5117,
      5121,
      5740,
      5743,
      5759,
      5761,
      5786,
      5792,
      5866,
      5870,
      5880,
      5888,
      5905,
      5919,
      5937,
      5952,
      5969,
      5984,
      5996,
      5998,
      6e3,
      6016,
      6067,
      6103,
      6103,
      6108,
      6108,
      6176,
      6264,
      6272,
      6312,
      6314,
      6314,
      6320,
      6389,
      6400,
      6430,
      6480,
      6509,
      6512,
      6516,
      6528,
      6571,
      6576,
      6601,
      6656,
      6678,
      6688,
      6740,
      6823,
      6823,
      6917,
      6963,
      6981,
      6988,
      7043,
      7072,
      7086,
      7087,
      7098,
      7141,
      7168,
      7203,
      7245,
      7247,
      7258,
      7293,
      7296,
      7304,
      7312,
      7354,
      7357,
      7359,
      7401,
      7404,
      7406,
      7411,
      7413,
      7414,
      7418,
      7418,
      7424,
      7615,
      7680,
      7957,
      7960,
      7965,
      7968,
      8005,
      8008,
      8013,
      8016,
      8023,
      8025,
      8025,
      8027,
      8027,
      8029,
      8029,
      8031,
      8061,
      8064,
      8116,
      8118,
      8124,
      8126,
      8126,
      8130,
      8132,
      8134,
      8140,
      8144,
      8147,
      8150,
      8155,
      8160,
      8172,
      8178,
      8180,
      8182,
      8188,
      8305,
      8305,
      8319,
      8319,
      8336,
      8348,
      8450,
      8450,
      8455,
      8455,
      8458,
      8467,
      8469,
      8469,
      8472,
      8477,
      8484,
      8484,
      8486,
      8486,
      8488,
      8488,
      8490,
      8505,
      8508,
      8511,
      8517,
      8521,
      8526,
      8526,
      8544,
      8584,
      11264,
      11492,
      11499,
      11502,
      11506,
      11507,
      11520,
      11557,
      11559,
      11559,
      11565,
      11565,
      11568,
      11623,
      11631,
      11631,
      11648,
      11670,
      11680,
      11686,
      11688,
      11694,
      11696,
      11702,
      11704,
      11710,
      11712,
      11718,
      11720,
      11726,
      11728,
      11734,
      11736,
      11742,
      12293,
      12295,
      12321,
      12329,
      12337,
      12341,
      12344,
      12348,
      12353,
      12438,
      12443,
      12447,
      12449,
      12538,
      12540,
      12543,
      12549,
      12591,
      12593,
      12686,
      12704,
      12735,
      12784,
      12799,
      13312,
      19903,
      19968,
      42124,
      42192,
      42237,
      42240,
      42508,
      42512,
      42527,
      42538,
      42539,
      42560,
      42606,
      42623,
      42653,
      42656,
      42735,
      42775,
      42783,
      42786,
      42888,
      42891,
      42954,
      42960,
      42961,
      42963,
      42963,
      42965,
      42969,
      42994,
      43009,
      43011,
      43013,
      43015,
      43018,
      43020,
      43042,
      43072,
      43123,
      43138,
      43187,
      43250,
      43255,
      43259,
      43259,
      43261,
      43262,
      43274,
      43301,
      43312,
      43334,
      43360,
      43388,
      43396,
      43442,
      43471,
      43471,
      43488,
      43492,
      43494,
      43503,
      43514,
      43518,
      43520,
      43560,
      43584,
      43586,
      43588,
      43595,
      43616,
      43638,
      43642,
      43642,
      43646,
      43695,
      43697,
      43697,
      43701,
      43702,
      43705,
      43709,
      43712,
      43712,
      43714,
      43714,
      43739,
      43741,
      43744,
      43754,
      43762,
      43764,
      43777,
      43782,
      43785,
      43790,
      43793,
      43798,
      43808,
      43814,
      43816,
      43822,
      43824,
      43866,
      43868,
      43881,
      43888,
      44002,
      44032,
      55203,
      55216,
      55238,
      55243,
      55291,
      63744,
      64109,
      64112,
      64217,
      64256,
      64262,
      64275,
      64279,
      64285,
      64285,
      64287,
      64296,
      64298,
      64310,
      64312,
      64316,
      64318,
      64318,
      64320,
      64321,
      64323,
      64324,
      64326,
      64433,
      64467,
      64829,
      64848,
      64911,
      64914,
      64967,
      65008,
      65019,
      65136,
      65140,
      65142,
      65276,
      65313,
      65338,
      65345,
      65370,
      65382,
      65470,
      65474,
      65479,
      65482,
      65487,
      65490,
      65495,
      65498,
      65500,
      65536,
      65547,
      65549,
      65574,
      65576,
      65594,
      65596,
      65597,
      65599,
      65613,
      65616,
      65629,
      65664,
      65786,
      65856,
      65908,
      66176,
      66204,
      66208,
      66256,
      66304,
      66335,
      66349,
      66378,
      66384,
      66421,
      66432,
      66461,
      66464,
      66499,
      66504,
      66511,
      66513,
      66517,
      66560,
      66717,
      66736,
      66771,
      66776,
      66811,
      66816,
      66855,
      66864,
      66915,
      66928,
      66938,
      66940,
      66954,
      66956,
      66962,
      66964,
      66965,
      66967,
      66977,
      66979,
      66993,
      66995,
      67001,
      67003,
      67004,
      67072,
      67382,
      67392,
      67413,
      67424,
      67431,
      67456,
      67461,
      67463,
      67504,
      67506,
      67514,
      67584,
      67589,
      67592,
      67592,
      67594,
      67637,
      67639,
      67640,
      67644,
      67644,
      67647,
      67669,
      67680,
      67702,
      67712,
      67742,
      67808,
      67826,
      67828,
      67829,
      67840,
      67861,
      67872,
      67897,
      67968,
      68023,
      68030,
      68031,
      68096,
      68096,
      68112,
      68115,
      68117,
      68119,
      68121,
      68149,
      68192,
      68220,
      68224,
      68252,
      68288,
      68295,
      68297,
      68324,
      68352,
      68405,
      68416,
      68437,
      68448,
      68466,
      68480,
      68497,
      68608,
      68680,
      68736,
      68786,
      68800,
      68850,
      68864,
      68899,
      69248,
      69289,
      69296,
      69297,
      69376,
      69404,
      69415,
      69415,
      69424,
      69445,
      69488,
      69505,
      69552,
      69572,
      69600,
      69622,
      69635,
      69687,
      69745,
      69746,
      69749,
      69749,
      69763,
      69807,
      69840,
      69864,
      69891,
      69926,
      69956,
      69956,
      69959,
      69959,
      69968,
      70002,
      70006,
      70006,
      70019,
      70066,
      70081,
      70084,
      70106,
      70106,
      70108,
      70108,
      70144,
      70161,
      70163,
      70187,
      70207,
      70208,
      70272,
      70278,
      70280,
      70280,
      70282,
      70285,
      70287,
      70301,
      70303,
      70312,
      70320,
      70366,
      70405,
      70412,
      70415,
      70416,
      70419,
      70440,
      70442,
      70448,
      70450,
      70451,
      70453,
      70457,
      70461,
      70461,
      70480,
      70480,
      70493,
      70497,
      70656,
      70708,
      70727,
      70730,
      70751,
      70753,
      70784,
      70831,
      70852,
      70853,
      70855,
      70855,
      71040,
      71086,
      71128,
      71131,
      71168,
      71215,
      71236,
      71236,
      71296,
      71338,
      71352,
      71352,
      71424,
      71450,
      71488,
      71494,
      71680,
      71723,
      71840,
      71903,
      71935,
      71942,
      71945,
      71945,
      71948,
      71955,
      71957,
      71958,
      71960,
      71983,
      71999,
      71999,
      72001,
      72001,
      72096,
      72103,
      72106,
      72144,
      72161,
      72161,
      72163,
      72163,
      72192,
      72192,
      72203,
      72242,
      72250,
      72250,
      72272,
      72272,
      72284,
      72329,
      72349,
      72349,
      72368,
      72440,
      72704,
      72712,
      72714,
      72750,
      72768,
      72768,
      72818,
      72847,
      72960,
      72966,
      72968,
      72969,
      72971,
      73008,
      73030,
      73030,
      73056,
      73061,
      73063,
      73064,
      73066,
      73097,
      73112,
      73112,
      73440,
      73458,
      73474,
      73474,
      73476,
      73488,
      73490,
      73523,
      73648,
      73648,
      73728,
      74649,
      74752,
      74862,
      74880,
      75075,
      77712,
      77808,
      77824,
      78895,
      78913,
      78918,
      82944,
      83526,
      92160,
      92728,
      92736,
      92766,
      92784,
      92862,
      92880,
      92909,
      92928,
      92975,
      92992,
      92995,
      93027,
      93047,
      93053,
      93071,
      93760,
      93823,
      93952,
      94026,
      94032,
      94032,
      94099,
      94111,
      94176,
      94177,
      94179,
      94179,
      94208,
      100343,
      100352,
      101589,
      101632,
      101640,
      110576,
      110579,
      110581,
      110587,
      110589,
      110590,
      110592,
      110882,
      110898,
      110898,
      110928,
      110930,
      110933,
      110933,
      110948,
      110951,
      110960,
      111355,
      113664,
      113770,
      113776,
      113788,
      113792,
      113800,
      113808,
      113817,
      119808,
      119892,
      119894,
      119964,
      119966,
      119967,
      119970,
      119970,
      119973,
      119974,
      119977,
      119980,
      119982,
      119993,
      119995,
      119995,
      119997,
      120003,
      120005,
      120069,
      120071,
      120074,
      120077,
      120084,
      120086,
      120092,
      120094,
      120121,
      120123,
      120126,
      120128,
      120132,
      120134,
      120134,
      120138,
      120144,
      120146,
      120485,
      120488,
      120512,
      120514,
      120538,
      120540,
      120570,
      120572,
      120596,
      120598,
      120628,
      120630,
      120654,
      120656,
      120686,
      120688,
      120712,
      120714,
      120744,
      120746,
      120770,
      120772,
      120779,
      122624,
      122654,
      122661,
      122666,
      122928,
      122989,
      123136,
      123180,
      123191,
      123197,
      123214,
      123214,
      123536,
      123565,
      123584,
      123627,
      124112,
      124139,
      124896,
      124902,
      124904,
      124907,
      124909,
      124910,
      124912,
      124926,
      124928,
      125124,
      125184,
      125251,
      125259,
      125259,
      126464,
      126467,
      126469,
      126495,
      126497,
      126498,
      126500,
      126500,
      126503,
      126503,
      126505,
      126514,
      126516,
      126519,
      126521,
      126521,
      126523,
      126523,
      126530,
      126530,
      126535,
      126535,
      126537,
      126537,
      126539,
      126539,
      126541,
      126543,
      126545,
      126546,
      126548,
      126548,
      126551,
      126551,
      126553,
      126553,
      126555,
      126555,
      126557,
      126557,
      126559,
      126559,
      126561,
      126562,
      126564,
      126564,
      126567,
      126570,
      126572,
      126578,
      126580,
      126583,
      126585,
      126588,
      126590,
      126590,
      126592,
      126601,
      126603,
      126619,
      126625,
      126627,
      126629,
      126633,
      126635,
      126651,
      131072,
      173791,
      173824,
      177977,
      177984,
      178205,
      178208,
      183969,
      183984,
      191456,
      191472,
      192093,
      194560,
      195101,
      196608,
      201546,
      201552,
      205743
    ], XOe = [
      48,
      57,
      65,
      90,
      95,
      95,
      97,
      122,
      170,
      170,
      181,
      181,
      183,
      183,
      186,
      186,
      192,
      214,
      216,
      246,
      248,
      705,
      710,
      721,
      736,
      740,
      748,
      748,
      750,
      750,
      768,
      884,
      886,
      887,
      890,
      893,
      895,
      895,
      902,
      906,
      908,
      908,
      910,
      929,
      931,
      1013,
      1015,
      1153,
      1155,
      1159,
      1162,
      1327,
      1329,
      1366,
      1369,
      1369,
      1376,
      1416,
      1425,
      1469,
      1471,
      1471,
      1473,
      1474,
      1476,
      1477,
      1479,
      1479,
      1488,
      1514,
      1519,
      1522,
      1552,
      1562,
      1568,
      1641,
      1646,
      1747,
      1749,
      1756,
      1759,
      1768,
      1770,
      1788,
      1791,
      1791,
      1808,
      1866,
      1869,
      1969,
      1984,
      2037,
      2042,
      2042,
      2045,
      2045,
      2048,
      2093,
      2112,
      2139,
      2144,
      2154,
      2160,
      2183,
      2185,
      2190,
      2200,
      2273,
      2275,
      2403,
      2406,
      2415,
      2417,
      2435,
      2437,
      2444,
      2447,
      2448,
      2451,
      2472,
      2474,
      2480,
      2482,
      2482,
      2486,
      2489,
      2492,
      2500,
      2503,
      2504,
      2507,
      2510,
      2519,
      2519,
      2524,
      2525,
      2527,
      2531,
      2534,
      2545,
      2556,
      2556,
      2558,
      2558,
      2561,
      2563,
      2565,
      2570,
      2575,
      2576,
      2579,
      2600,
      2602,
      2608,
      2610,
      2611,
      2613,
      2614,
      2616,
      2617,
      2620,
      2620,
      2622,
      2626,
      2631,
      2632,
      2635,
      2637,
      2641,
      2641,
      2649,
      2652,
      2654,
      2654,
      2662,
      2677,
      2689,
      2691,
      2693,
      2701,
      2703,
      2705,
      2707,
      2728,
      2730,
      2736,
      2738,
      2739,
      2741,
      2745,
      2748,
      2757,
      2759,
      2761,
      2763,
      2765,
      2768,
      2768,
      2784,
      2787,
      2790,
      2799,
      2809,
      2815,
      2817,
      2819,
      2821,
      2828,
      2831,
      2832,
      2835,
      2856,
      2858,
      2864,
      2866,
      2867,
      2869,
      2873,
      2876,
      2884,
      2887,
      2888,
      2891,
      2893,
      2901,
      2903,
      2908,
      2909,
      2911,
      2915,
      2918,
      2927,
      2929,
      2929,
      2946,
      2947,
      2949,
      2954,
      2958,
      2960,
      2962,
      2965,
      2969,
      2970,
      2972,
      2972,
      2974,
      2975,
      2979,
      2980,
      2984,
      2986,
      2990,
      3001,
      3006,
      3010,
      3014,
      3016,
      3018,
      3021,
      3024,
      3024,
      3031,
      3031,
      3046,
      3055,
      3072,
      3084,
      3086,
      3088,
      3090,
      3112,
      3114,
      3129,
      3132,
      3140,
      3142,
      3144,
      3146,
      3149,
      3157,
      3158,
      3160,
      3162,
      3165,
      3165,
      3168,
      3171,
      3174,
      3183,
      3200,
      3203,
      3205,
      3212,
      3214,
      3216,
      3218,
      3240,
      3242,
      3251,
      3253,
      3257,
      3260,
      3268,
      3270,
      3272,
      3274,
      3277,
      3285,
      3286,
      3293,
      3294,
      3296,
      3299,
      3302,
      3311,
      3313,
      3315,
      3328,
      3340,
      3342,
      3344,
      3346,
      3396,
      3398,
      3400,
      3402,
      3406,
      3412,
      3415,
      3423,
      3427,
      3430,
      3439,
      3450,
      3455,
      3457,
      3459,
      3461,
      3478,
      3482,
      3505,
      3507,
      3515,
      3517,
      3517,
      3520,
      3526,
      3530,
      3530,
      3535,
      3540,
      3542,
      3542,
      3544,
      3551,
      3558,
      3567,
      3570,
      3571,
      3585,
      3642,
      3648,
      3662,
      3664,
      3673,
      3713,
      3714,
      3716,
      3716,
      3718,
      3722,
      3724,
      3747,
      3749,
      3749,
      3751,
      3773,
      3776,
      3780,
      3782,
      3782,
      3784,
      3790,
      3792,
      3801,
      3804,
      3807,
      3840,
      3840,
      3864,
      3865,
      3872,
      3881,
      3893,
      3893,
      3895,
      3895,
      3897,
      3897,
      3902,
      3911,
      3913,
      3948,
      3953,
      3972,
      3974,
      3991,
      3993,
      4028,
      4038,
      4038,
      4096,
      4169,
      4176,
      4253,
      4256,
      4293,
      4295,
      4295,
      4301,
      4301,
      4304,
      4346,
      4348,
      4680,
      4682,
      4685,
      4688,
      4694,
      4696,
      4696,
      4698,
      4701,
      4704,
      4744,
      4746,
      4749,
      4752,
      4784,
      4786,
      4789,
      4792,
      4798,
      4800,
      4800,
      4802,
      4805,
      4808,
      4822,
      4824,
      4880,
      4882,
      4885,
      4888,
      4954,
      4957,
      4959,
      4969,
      4977,
      4992,
      5007,
      5024,
      5109,
      5112,
      5117,
      5121,
      5740,
      5743,
      5759,
      5761,
      5786,
      5792,
      5866,
      5870,
      5880,
      5888,
      5909,
      5919,
      5940,
      5952,
      5971,
      5984,
      5996,
      5998,
      6e3,
      6002,
      6003,
      6016,
      6099,
      6103,
      6103,
      6108,
      6109,
      6112,
      6121,
      6155,
      6157,
      6159,
      6169,
      6176,
      6264,
      6272,
      6314,
      6320,
      6389,
      6400,
      6430,
      6432,
      6443,
      6448,
      6459,
      6470,
      6509,
      6512,
      6516,
      6528,
      6571,
      6576,
      6601,
      6608,
      6618,
      6656,
      6683,
      6688,
      6750,
      6752,
      6780,
      6783,
      6793,
      6800,
      6809,
      6823,
      6823,
      6832,
      6845,
      6847,
      6862,
      6912,
      6988,
      6992,
      7001,
      7019,
      7027,
      7040,
      7155,
      7168,
      7223,
      7232,
      7241,
      7245,
      7293,
      7296,
      7304,
      7312,
      7354,
      7357,
      7359,
      7376,
      7378,
      7380,
      7418,
      7424,
      7957,
      7960,
      7965,
      7968,
      8005,
      8008,
      8013,
      8016,
      8023,
      8025,
      8025,
      8027,
      8027,
      8029,
      8029,
      8031,
      8061,
      8064,
      8116,
      8118,
      8124,
      8126,
      8126,
      8130,
      8132,
      8134,
      8140,
      8144,
      8147,
      8150,
      8155,
      8160,
      8172,
      8178,
      8180,
      8182,
      8188,
      8204,
      8205,
      8255,
      8256,
      8276,
      8276,
      8305,
      8305,
      8319,
      8319,
      8336,
      8348,
      8400,
      8412,
      8417,
      8417,
      8421,
      8432,
      8450,
      8450,
      8455,
      8455,
      8458,
      8467,
      8469,
      8469,
      8472,
      8477,
      8484,
      8484,
      8486,
      8486,
      8488,
      8488,
      8490,
      8505,
      8508,
      8511,
      8517,
      8521,
      8526,
      8526,
      8544,
      8584,
      11264,
      11492,
      11499,
      11507,
      11520,
      11557,
      11559,
      11559,
      11565,
      11565,
      11568,
      11623,
      11631,
      11631,
      11647,
      11670,
      11680,
      11686,
      11688,
      11694,
      11696,
      11702,
      11704,
      11710,
      11712,
      11718,
      11720,
      11726,
      11728,
      11734,
      11736,
      11742,
      11744,
      11775,
      12293,
      12295,
      12321,
      12335,
      12337,
      12341,
      12344,
      12348,
      12353,
      12438,
      12441,
      12447,
      12449,
      12543,
      12549,
      12591,
      12593,
      12686,
      12704,
      12735,
      12784,
      12799,
      13312,
      19903,
      19968,
      42124,
      42192,
      42237,
      42240,
      42508,
      42512,
      42539,
      42560,
      42607,
      42612,
      42621,
      42623,
      42737,
      42775,
      42783,
      42786,
      42888,
      42891,
      42954,
      42960,
      42961,
      42963,
      42963,
      42965,
      42969,
      42994,
      43047,
      43052,
      43052,
      43072,
      43123,
      43136,
      43205,
      43216,
      43225,
      43232,
      43255,
      43259,
      43259,
      43261,
      43309,
      43312,
      43347,
      43360,
      43388,
      43392,
      43456,
      43471,
      43481,
      43488,
      43518,
      43520,
      43574,
      43584,
      43597,
      43600,
      43609,
      43616,
      43638,
      43642,
      43714,
      43739,
      43741,
      43744,
      43759,
      43762,
      43766,
      43777,
      43782,
      43785,
      43790,
      43793,
      43798,
      43808,
      43814,
      43816,
      43822,
      43824,
      43866,
      43868,
      43881,
      43888,
      44010,
      44012,
      44013,
      44016,
      44025,
      44032,
      55203,
      55216,
      55238,
      55243,
      55291,
      63744,
      64109,
      64112,
      64217,
      64256,
      64262,
      64275,
      64279,
      64285,
      64296,
      64298,
      64310,
      64312,
      64316,
      64318,
      64318,
      64320,
      64321,
      64323,
      64324,
      64326,
      64433,
      64467,
      64829,
      64848,
      64911,
      64914,
      64967,
      65008,
      65019,
      65024,
      65039,
      65056,
      65071,
      65075,
      65076,
      65101,
      65103,
      65136,
      65140,
      65142,
      65276,
      65296,
      65305,
      65313,
      65338,
      65343,
      65343,
      65345,
      65370,
      65381,
      65470,
      65474,
      65479,
      65482,
      65487,
      65490,
      65495,
      65498,
      65500,
      65536,
      65547,
      65549,
      65574,
      65576,
      65594,
      65596,
      65597,
      65599,
      65613,
      65616,
      65629,
      65664,
      65786,
      65856,
      65908,
      66045,
      66045,
      66176,
      66204,
      66208,
      66256,
      66272,
      66272,
      66304,
      66335,
      66349,
      66378,
      66384,
      66426,
      66432,
      66461,
      66464,
      66499,
      66504,
      66511,
      66513,
      66517,
      66560,
      66717,
      66720,
      66729,
      66736,
      66771,
      66776,
      66811,
      66816,
      66855,
      66864,
      66915,
      66928,
      66938,
      66940,
      66954,
      66956,
      66962,
      66964,
      66965,
      66967,
      66977,
      66979,
      66993,
      66995,
      67001,
      67003,
      67004,
      67072,
      67382,
      67392,
      67413,
      67424,
      67431,
      67456,
      67461,
      67463,
      67504,
      67506,
      67514,
      67584,
      67589,
      67592,
      67592,
      67594,
      67637,
      67639,
      67640,
      67644,
      67644,
      67647,
      67669,
      67680,
      67702,
      67712,
      67742,
      67808,
      67826,
      67828,
      67829,
      67840,
      67861,
      67872,
      67897,
      67968,
      68023,
      68030,
      68031,
      68096,
      68099,
      68101,
      68102,
      68108,
      68115,
      68117,
      68119,
      68121,
      68149,
      68152,
      68154,
      68159,
      68159,
      68192,
      68220,
      68224,
      68252,
      68288,
      68295,
      68297,
      68326,
      68352,
      68405,
      68416,
      68437,
      68448,
      68466,
      68480,
      68497,
      68608,
      68680,
      68736,
      68786,
      68800,
      68850,
      68864,
      68903,
      68912,
      68921,
      69248,
      69289,
      69291,
      69292,
      69296,
      69297,
      69373,
      69404,
      69415,
      69415,
      69424,
      69456,
      69488,
      69509,
      69552,
      69572,
      69600,
      69622,
      69632,
      69702,
      69734,
      69749,
      69759,
      69818,
      69826,
      69826,
      69840,
      69864,
      69872,
      69881,
      69888,
      69940,
      69942,
      69951,
      69956,
      69959,
      69968,
      70003,
      70006,
      70006,
      70016,
      70084,
      70089,
      70092,
      70094,
      70106,
      70108,
      70108,
      70144,
      70161,
      70163,
      70199,
      70206,
      70209,
      70272,
      70278,
      70280,
      70280,
      70282,
      70285,
      70287,
      70301,
      70303,
      70312,
      70320,
      70378,
      70384,
      70393,
      70400,
      70403,
      70405,
      70412,
      70415,
      70416,
      70419,
      70440,
      70442,
      70448,
      70450,
      70451,
      70453,
      70457,
      70459,
      70468,
      70471,
      70472,
      70475,
      70477,
      70480,
      70480,
      70487,
      70487,
      70493,
      70499,
      70502,
      70508,
      70512,
      70516,
      70656,
      70730,
      70736,
      70745,
      70750,
      70753,
      70784,
      70853,
      70855,
      70855,
      70864,
      70873,
      71040,
      71093,
      71096,
      71104,
      71128,
      71133,
      71168,
      71232,
      71236,
      71236,
      71248,
      71257,
      71296,
      71352,
      71360,
      71369,
      71424,
      71450,
      71453,
      71467,
      71472,
      71481,
      71488,
      71494,
      71680,
      71738,
      71840,
      71913,
      71935,
      71942,
      71945,
      71945,
      71948,
      71955,
      71957,
      71958,
      71960,
      71989,
      71991,
      71992,
      71995,
      72003,
      72016,
      72025,
      72096,
      72103,
      72106,
      72151,
      72154,
      72161,
      72163,
      72164,
      72192,
      72254,
      72263,
      72263,
      72272,
      72345,
      72349,
      72349,
      72368,
      72440,
      72704,
      72712,
      72714,
      72758,
      72760,
      72768,
      72784,
      72793,
      72818,
      72847,
      72850,
      72871,
      72873,
      72886,
      72960,
      72966,
      72968,
      72969,
      72971,
      73014,
      73018,
      73018,
      73020,
      73021,
      73023,
      73031,
      73040,
      73049,
      73056,
      73061,
      73063,
      73064,
      73066,
      73102,
      73104,
      73105,
      73107,
      73112,
      73120,
      73129,
      73440,
      73462,
      73472,
      73488,
      73490,
      73530,
      73534,
      73538,
      73552,
      73561,
      73648,
      73648,
      73728,
      74649,
      74752,
      74862,
      74880,
      75075,
      77712,
      77808,
      77824,
      78895,
      78912,
      78933,
      82944,
      83526,
      92160,
      92728,
      92736,
      92766,
      92768,
      92777,
      92784,
      92862,
      92864,
      92873,
      92880,
      92909,
      92912,
      92916,
      92928,
      92982,
      92992,
      92995,
      93008,
      93017,
      93027,
      93047,
      93053,
      93071,
      93760,
      93823,
      93952,
      94026,
      94031,
      94087,
      94095,
      94111,
      94176,
      94177,
      94179,
      94180,
      94192,
      94193,
      94208,
      100343,
      100352,
      101589,
      101632,
      101640,
      110576,
      110579,
      110581,
      110587,
      110589,
      110590,
      110592,
      110882,
      110898,
      110898,
      110928,
      110930,
      110933,
      110933,
      110948,
      110951,
      110960,
      111355,
      113664,
      113770,
      113776,
      113788,
      113792,
      113800,
      113808,
      113817,
      113821,
      113822,
      118528,
      118573,
      118576,
      118598,
      119141,
      119145,
      119149,
      119154,
      119163,
      119170,
      119173,
      119179,
      119210,
      119213,
      119362,
      119364,
      119808,
      119892,
      119894,
      119964,
      119966,
      119967,
      119970,
      119970,
      119973,
      119974,
      119977,
      119980,
      119982,
      119993,
      119995,
      119995,
      119997,
      120003,
      120005,
      120069,
      120071,
      120074,
      120077,
      120084,
      120086,
      120092,
      120094,
      120121,
      120123,
      120126,
      120128,
      120132,
      120134,
      120134,
      120138,
      120144,
      120146,
      120485,
      120488,
      120512,
      120514,
      120538,
      120540,
      120570,
      120572,
      120596,
      120598,
      120628,
      120630,
      120654,
      120656,
      120686,
      120688,
      120712,
      120714,
      120744,
      120746,
      120770,
      120772,
      120779,
      120782,
      120831,
      121344,
      121398,
      121403,
      121452,
      121461,
      121461,
      121476,
      121476,
      121499,
      121503,
      121505,
      121519,
      122624,
      122654,
      122661,
      122666,
      122880,
      122886,
      122888,
      122904,
      122907,
      122913,
      122915,
      122916,
      122918,
      122922,
      122928,
      122989,
      123023,
      123023,
      123136,
      123180,
      123184,
      123197,
      123200,
      123209,
      123214,
      123214,
      123536,
      123566,
      123584,
      123641,
      124112,
      124153,
      124896,
      124902,
      124904,
      124907,
      124909,
      124910,
      124912,
      124926,
      124928,
      125124,
      125136,
      125142,
      125184,
      125259,
      125264,
      125273,
      126464,
      126467,
      126469,
      126495,
      126497,
      126498,
      126500,
      126500,
      126503,
      126503,
      126505,
      126514,
      126516,
      126519,
      126521,
      126521,
      126523,
      126523,
      126530,
      126530,
      126535,
      126535,
      126537,
      126537,
      126539,
      126539,
      126541,
      126543,
      126545,
      126546,
      126548,
      126548,
      126551,
      126551,
      126553,
      126553,
      126555,
      126555,
      126557,
      126557,
      126559,
      126559,
      126561,
      126562,
      126564,
      126564,
      126567,
      126570,
      126572,
      126578,
      126580,
      126583,
      126585,
      126588,
      126590,
      126590,
      126592,
      126601,
      126603,
      126619,
      126625,
      126627,
      126629,
      126633,
      126635,
      126651,
      130032,
      130041,
      131072,
      173791,
      173824,
      177977,
      177984,
      178205,
      178208,
      183969,
      183984,
      191456,
      191472,
      192093,
      194560,
      195101,
      196608,
      201546,
      201552,
      205743,
      917760,
      917999
    ], QOe = /^\/\/\/?\s*@(ts-expect-error|ts-ignore)/, YOe = /^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/, ZOe = /@(?:see|link)/i;
    function jj(e, t) {
      if (e < t[0]) return !1;
      let n = 0, i = t.length, a;
      for (; n + 1 < i; ) {
        if (a = n + (i - n) / 2, a -= a % 2, t[a] <= e && e <= t[a + 1]) return !0;
        e < t[a] ? i = a : n = a + 2;
      }
      return !1;
    }
    function j7(e, t) {
      return t >= 2 ? jj(e, $Oe) : jj(e, GOe);
    }
    function KOe(e, t) {
      return t >= 2 ? jj(e, XOe) : jj(e, HOe);
    }
    function the(e) {
      const t = [];
      return e.forEach((n, i) => {
        t[n] = i;
      }), t;
    }
    var eFe = the(Kge);
    function as(e) {
      return eFe[e];
    }
    function oS(e) {
      return Kge.get(e);
    }
    var tFe = the(ehe);
    function rhe(e) {
      return tFe[e];
    }
    function Bj(e) {
      return ehe.get(e);
    }
    function Sx(e) {
      const t = [];
      let n = 0, i = 0;
      for (; n < e.length; ) {
        const a = e.charCodeAt(n);
        switch (n++, a) {
          case 13:
            e.charCodeAt(n) === 10 && n++;
          case 10:
            t.push(i), i = n;
            break;
          default:
            a > 127 && Uu(a) && (t.push(i), i = n);
            break;
        }
      }
      return t.push(i), t;
    }
    function g3(e, t, n, i) {
      return e.getPositionOfLineAndCharacter ? e.getPositionOfLineAndCharacter(t, n, i) : B7(Mg(e), t, n, e.text, i);
    }
    function B7(e, t, n, i, a) {
      (t < 0 || t >= e.length) && (a ? t = t < 0 ? 0 : t >= e.length ? e.length - 1 : t : E.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${i !== void 0 ? jf(e, Sx(i)) : "unknown"}`));
      const o = e[t] + n;
      return a ? o > e[t + 1] ? e[t + 1] : typeof i == "string" && o > i.length ? i.length : o : (t < e.length - 1 ? E.assert(o < e[t + 1]) : i !== void 0 && E.assert(o <= i.length), o);
    }
    function Mg(e) {
      return e.lineMap || (e.lineMap = Sx(e.text));
    }
    function VC(e, t) {
      const n = M4(e, t);
      return {
        line: n,
        character: t - e[n]
      };
    }
    function M4(e, t, n) {
      let i = Lg(e, t, mo, Fo, n);
      return i < 0 && (i = ~i - 1, E.assert(i !== -1, "position cannot precede the beginning of the file")), i;
    }
    function R4(e, t, n) {
      if (t === n) return 0;
      const i = Mg(e), a = Math.min(t, n), o = a === n, c = o ? t : n, _ = M4(i, a), u = M4(i, c, _);
      return o ? _ - u : u - _;
    }
    function Za(e, t) {
      return VC(Mg(e), t);
    }
    function Rg(e) {
      return hm(e) || Uu(e);
    }
    function hm(e) {
      return e === 32 || e === 9 || e === 11 || e === 12 || e === 160 || e === 133 || e === 5760 || e >= 8192 && e <= 8203 || e === 8239 || e === 8287 || e === 12288 || e === 65279;
    }
    function Uu(e) {
      return e === 10 || e === 13 || e === 8232 || e === 8233;
    }
    function qC(e) {
      return e >= 48 && e <= 57;
    }
    function GY(e) {
      return qC(e) || e >= 65 && e <= 70 || e >= 97 && e <= 102;
    }
    function HY(e) {
      return e >= 65 && e <= 90 || e >= 97 && e <= 122;
    }
    function nhe(e) {
      return HY(e) || qC(e) || e === 95;
    }
    function $Y(e) {
      return e >= 48 && e <= 55;
    }
    function XY(e, t) {
      const n = e.charCodeAt(t);
      switch (n) {
        case 13:
        case 10:
        case 9:
        case 11:
        case 12:
        case 32:
        case 47:
        case 60:
        case 124:
        case 61:
        case 62:
          return !0;
        case 35:
          return t === 0;
        default:
          return n > 127;
      }
    }
    function gs(e, t, n, i, a) {
      if (Wd(t)) return t;
      let o = !1;
      for (; ; ) {
        const c = e.charCodeAt(t);
        switch (c) {
          case 13:
            e.charCodeAt(t + 1) === 10 && t++;
          case 10:
            if (t++, n) return t;
            o = !!a;
            continue;
          case 9:
          case 11:
          case 12:
          case 32:
            t++;
            continue;
          case 47:
            if (i) break;
            if (e.charCodeAt(t + 1) === 47) {
              for (t += 2; t < e.length && !Uu(e.charCodeAt(t)); )
                t++;
              o = !1;
              continue;
            }
            if (e.charCodeAt(t + 1) === 42) {
              for (t += 2; t < e.length; ) {
                if (e.charCodeAt(t) === 42 && e.charCodeAt(t + 1) === 47) {
                  t += 2;
                  break;
                }
                t++;
              }
              o = !1;
              continue;
            }
            break;
          case 60:
          case 124:
          case 61:
          case 62:
            if (j4(e, t)) {
              t = h3(e, t), o = !1;
              continue;
            }
            break;
          case 35:
            if (t === 0 && ihe(e, t)) {
              t = ahe(e, t), o = !1;
              continue;
            }
            break;
          case 42:
            if (o) {
              t++, o = !1;
              continue;
            }
            break;
          default:
            if (c > 127 && Rg(c)) {
              t++;
              continue;
            }
            break;
        }
        return t;
      }
    }
    var Jj = 7;
    function j4(e, t) {
      if (E.assert(t >= 0), t === 0 || Uu(e.charCodeAt(t - 1))) {
        const n = e.charCodeAt(t);
        if (t + Jj < e.length) {
          for (let i = 0; i < Jj; i++) if (e.charCodeAt(t + i) !== n) return !1;
          return n === 61 || e.charCodeAt(t + Jj) === 32;
        }
      }
      return !1;
    }
    function h3(e, t, n) {
      n && n(p.Merge_conflict_marker_encountered, t, Jj);
      const i = e.charCodeAt(t), a = e.length;
      if (i === 60 || i === 62) for (; t < a && !Uu(e.charCodeAt(t)); ) t++;
      else
        for (E.assert(i === 124 || i === 61); t < a; ) {
          const o = e.charCodeAt(t);
          if ((o === 61 || o === 62) && o !== i && j4(e, t)) break;
          t++;
        }
      return t;
    }
    var QY = /^#!.*/;
    function ihe(e, t) {
      return E.assert(t === 0), QY.test(e);
    }
    function ahe(e, t) {
      const n = QY.exec(e)[0];
      return t = t + n.length, t;
    }
    function zj(e, t, n, i, a, o, c) {
      let _, u, d, g, h = !1, S = i, T = c;
      if (n === 0) {
        S = !0;
        const k = J7(t);
        k && (n = k.length);
      }
      e: for (; n >= 0 && n < t.length; ) {
        const k = t.charCodeAt(n);
        switch (k) {
          case 13:
            t.charCodeAt(n + 1) === 10 && n++;
          case 10:
            if (n++, i) break e;
            S = !0, h && (g = !0);
            continue;
          case 9:
          case 11:
          case 12:
          case 32:
            n++;
            continue;
          case 47:
            const D = t.charCodeAt(n + 1);
            let P = !1;
            if (D === 47 || D === 42) {
              const N = D === 47 ? 2 : 3, M = n;
              if (n += 2, D === 47) for (; n < t.length; ) {
                if (Uu(t.charCodeAt(n))) {
                  P = !0;
                  break;
                }
                n++;
              }
              else for (; n < t.length; ) {
                if (t.charCodeAt(n) === 42 && t.charCodeAt(n + 1) === 47) {
                  n += 2;
                  break;
                }
                n++;
              }
              if (S) {
                if (h && (T = a(_, u, d, g, o, T), !e && T))
                  return T;
                _ = M, u = n, d = N, g = P, h = !0;
              }
              continue;
            }
            break e;
          default:
            if (k > 127 && Rg(k)) {
              h && Uu(k) && (g = !0), n++;
              continue;
            }
            break e;
        }
      }
      return h && (T = a(_, u, d, g, o, T)), T;
    }
    function y3(e, t, n, i) {
      return zj(!1, e, t, !1, n, i);
    }
    function v3(e, t, n, i) {
      return zj(!1, e, t, !0, n, i);
    }
    function YY(e, t, n, i, a) {
      return zj(!0, e, t, !1, n, i, a);
    }
    function ZY(e, t, n, i, a) {
      return zj(!0, e, t, !0, n, i, a);
    }
    function she(e, t, n, i, a, o = []) {
      return o.push({
        kind: n,
        pos: e,
        end: t,
        hasTrailingNewLine: i
      }), o;
    }
    function jg(e, t) {
      return YY(e, t, she, void 0, void 0);
    }
    function Ly(e, t) {
      return ZY(e, t, she, void 0, void 0);
    }
    function J7(e) {
      const t = QY.exec(e);
      if (t) return t[0];
    }
    function sg(e, t) {
      return HY(e) || e === 36 || e === 95 || e > 127 && j7(e, t);
    }
    function jh(e, t, n) {
      return nhe(e) || e === 36 || (n === 1 ? e === 45 || e === 58 : !1) || e > 127 && KOe(e, t);
    }
    function Y_(e, t, n) {
      let i = B4(e, 0);
      if (!sg(i, t)) return !1;
      for (let a = Rd(i); a < e.length; a += Rd(i)) if (!jh(i = B4(e, a), t, n)) return !1;
      return !0;
    }
    function Bg(e, t, n = 0, i, a, o, c) {
      var _ = i, u, d, g, h, S, T, k, D, P = 0, N = 0, M = 0;
      Ea(_, o, c);
      var R = {
        getTokenFullStart: () => g,
        getStartPos: () => g,
        getTokenEnd: () => u,
        getTextPos: () => u,
        getToken: () => S,
        getTokenStart: () => h,
        getTokenPos: () => h,
        getTokenText: () => _.substring(h, u),
        getTokenValue: () => T,
        hasUnicodeEscape: () => (k & 1024) !== 0,
        hasExtendedUnicodeEscape: () => (k & 8) !== 0,
        hasPrecedingLineBreak: () => (k & 1) !== 0,
        hasPrecedingJSDocComment: () => (k & 2) !== 0,
        hasPrecedingJSDocLeadingAsterisks: () => (k & 32768) !== 0,
        isIdentifier: () => S === 80 || S > 118,
        isReservedWord: () => S >= 83 && S <= 118,
        isUnterminated: () => (k & 4) !== 0,
        getCommentDirectives: () => D,
        getNumericLiteralFlags: () => k & 25584,
        getTokenFlags: () => k,
        reScanGreaterToken: ue,
        reScanAsteriskEqualsToken: Ie,
        reScanSlashToken: Xe,
        reScanTemplateToken: Ct,
        reScanTemplateHeadOrNoSubstitutionTemplate: Kt,
        scanJsxIdentifier: ri,
        scanJsxAttributeValue: Zr,
        reScanJsxAttributeValue: ni,
        reScanJsxToken: zr,
        reScanLessThanToken: _i,
        reScanHashToken: Gr,
        reScanQuestionToken: Nt,
        reScanInvalidIdentifier: ae,
        scanJsxToken: Li,
        scanJsDocToken: Me,
        scanJSDocCommentTextToken: ra,
        scan: K,
        getText: zn,
        clearCommentDirectives: na,
        setText: Ea,
        setScriptTarget: Lr,
        setLanguageVariant: ha,
        setScriptKind: Ye,
        setJSDocParsingMode: Pt,
        setOnError: Da,
        resetTokenState: ne,
        setTextPos: ne,
        setSkipJsDocLeadingAsterisks: tt,
        tryScan: $n,
        lookAhead: Ur,
        scanRange: tr
      };
      return E.isDebugging && Object.defineProperty(R, "__debugShowCurrentPositionInText", { get: () => {
        const re = R.getText();
        return re.slice(0, R.getTokenFullStart()) + "║" + re.slice(R.getTokenFullStart());
      } }), R;
      function G(re) {
        return B4(_, re);
      }
      function L(re) {
        return re >= 0 && re < d ? G(re) : -1;
      }
      function z(re) {
        return _.charCodeAt(re);
      }
      function H(re) {
        return re >= 0 && re < d ? z(re) : -1;
      }
      function U(re, we = u, Ge, nt) {
        if (a) {
          const it = u;
          u = we, a(re, Ge || 0, nt), u = it;
        }
      }
      function pe() {
        let re = u, we = !1, Ge = !1, nt = "";
        for (; ; ) {
          const it = z(u);
          if (it === 95) {
            k |= 512, we ? (we = !1, Ge = !0, nt += _.substring(re, u)) : (k |= 16384, U(Ge ? p.Multiple_consecutive_numeric_separators_are_not_permitted : p.Numeric_separators_are_not_allowed_here, u, 1)), u++, re = u;
            continue;
          }
          if (qC(it)) {
            we = !0, Ge = !1, u++;
            continue;
          }
          break;
        }
        return z(u - 1) === 95 && (k |= 16384, U(p.Numeric_separators_are_not_allowed_here, u - 1, 1)), nt + _.substring(re, u);
      }
      function ie() {
        let re = u, we;
        if (z(u) === 48)
          if (u++, z(u) === 95)
            k |= 16896, U(p.Numeric_separators_are_not_allowed_here, u, 1), u--, we = pe();
          else if (!Q())
            k |= 8192, we = "" + +T;
          else if (!T) we = "0";
          else {
            T = "" + parseInt(T, 8), k |= 32;
            const Qe = S === 41, xt = (Qe ? "-" : "") + "0o" + (+T).toString(8);
            return Qe && re--, U(p.Octal_literals_are_not_allowed_Use_the_syntax_0, re, u - re, xt), 9;
          }
        else we = pe();
        let Ge, nt;
        z(u) === 46 && (u++, Ge = pe());
        let it = u;
        if (z(u) === 69 || z(u) === 101) {
          u++, k |= 16, (z(u) === 43 || z(u) === 45) && u++;
          const Qe = u, xt = pe();
          xt ? (nt = _.substring(it, Qe) + xt, it = u) : U(p.Digit_expected);
        }
        let ut;
        if (k & 512 ? (ut = we, Ge && (ut += "." + Ge), nt && (ut += nt)) : ut = _.substring(re, it), k & 8192)
          return U(p.Decimals_with_leading_zeros_are_not_allowed, re, it - re), T = "" + +ut, 9;
        if (Ge !== void 0 || k & 16)
          return W(re, Ge === void 0 && !!(k & 16)), T = "" + +ut, 9;
        {
          T = ut;
          const Qe = ot();
          return W(re), Qe;
        }
      }
      function W(re, we) {
        if (!sg(G(u), e)) return;
        const Ge = u, { length: nt } = ge();
        nt === 1 && _[Ge] === "n" ? U(we ? p.A_bigint_literal_cannot_use_exponential_notation : p.A_bigint_literal_must_be_an_integer, re, Ge - re + 1) : (U(p.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal, Ge, nt), u = Ge);
      }
      function Q() {
        const re = u;
        let we = !0;
        for (; qC(H(u)); )
          $Y(z(u)) || (we = !1), u++;
        return T = _.substring(re, u), we;
      }
      function se(re, we) {
        const Ge = fe(re, !1, we);
        return Ge ? parseInt(Ge, 16) : -1;
      }
      function he(re, we) {
        return fe(re, !0, we);
      }
      function fe(re, we, Ge) {
        let nt = [], it = !1, ut = !1;
        for (; nt.length < re || we; ) {
          let Qe = z(u);
          if (Ge && Qe === 95) {
            k |= 512, it ? (it = !1, ut = !0) : U(ut ? p.Multiple_consecutive_numeric_separators_are_not_permitted : p.Numeric_separators_are_not_allowed_here, u, 1), u++;
            continue;
          }
          if (it = Ge, Qe >= 65 && Qe <= 70) Qe += 32;
          else if (!(Qe >= 48 && Qe <= 57 || Qe >= 97 && Qe <= 102)) break;
          nt.push(Qe), u++, ut = !1;
        }
        return nt.length < re && (nt = []), z(u - 1) === 95 && U(p.Numeric_separators_are_not_allowed_here, u - 1, 1), String.fromCharCode(...nt);
      }
      function de(re = !1) {
        const we = z(u);
        u++;
        let Ge = "", nt = u;
        for (; ; ) {
          if (u >= d) {
            Ge += _.substring(nt, u), k |= 4, U(p.Unterminated_string_literal);
            break;
          }
          const it = z(u);
          if (it === we) {
            Ge += _.substring(nt, u), u++;
            break;
          }
          if (it === 92 && !re) {
            Ge += _.substring(nt, u), Ge += Se(3), nt = u;
            continue;
          }
          if ((it === 10 || it === 13) && !re) {
            Ge += _.substring(nt, u), k |= 4, U(p.Unterminated_string_literal);
            break;
          }
          u++;
        }
        return Ge;
      }
      function $(re) {
        const we = z(u) === 96;
        u++;
        let Ge = u, nt = "", it;
        for (; ; ) {
          if (u >= d) {
            nt += _.substring(Ge, u), k |= 4, U(p.Unterminated_template_literal), it = we ? 15 : 18;
            break;
          }
          const ut = z(u);
          if (ut === 96) {
            nt += _.substring(Ge, u), u++, it = we ? 15 : 18;
            break;
          }
          if (ut === 36 && u + 1 < d && z(u + 1) === 123) {
            nt += _.substring(Ge, u), u += 2, it = we ? 16 : 17;
            break;
          }
          if (ut === 92) {
            nt += _.substring(Ge, u), nt += Se(1 | (re ? 2 : 0)), Ge = u;
            continue;
          }
          if (ut === 13) {
            nt += _.substring(Ge, u), u++, u < d && z(u) === 10 && u++, nt += `
`, Ge = u;
            continue;
          }
          u++;
        }
        return E.assert(it !== void 0), T = nt, it;
      }
      function Se(re) {
        const we = u;
        if (u++, u >= d)
          return U(p.Unexpected_end_of_text), "";
        const Ge = z(u);
        switch (u++, Ge) {
          case 48:
            if (u >= d || !qC(z(u))) return "\0";
          case 49:
          case 50:
          case 51:
            u < d && $Y(z(u)) && u++;
          case 52:
          case 53:
          case 54:
          case 55:
            if (u < d && $Y(z(u)) && u++, k |= 2048, re & 6) {
              const ut = parseInt(_.substring(we + 1, u), 8);
              return re & 4 && !(re & 32) && Ge !== 48 ? U(p.Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead, we, u - we, "\\x" + ut.toString(16).padStart(2, "0")) : U(p.Octal_escape_sequences_are_not_allowed_Use_the_syntax_0, we, u - we, "\\x" + ut.toString(16).padStart(2, "0")), String.fromCharCode(ut);
            }
            return _.substring(we, u);
          case 56:
          case 57:
            return k |= 2048, re & 6 ? (re & 4 && !(re & 32) ? U(p.Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class, we, u - we) : U(p.Escape_sequence_0_is_not_allowed, we, u - we, _.substring(we, u)), String.fromCharCode(Ge)) : _.substring(we, u);
          case 98:
            return "\b";
          case 116:
            return "	";
          case 110:
            return `
`;
          case 118:
            return "\v";
          case 102:
            return "\f";
          case 114:
            return "\r";
          case 39:
            return "'";
          case 34:
            return '"';
          case 117:
            if (u < d && z(u) === 123) {
              u -= 2;
              const ut = Be(!!(re & 6));
              return re & 17 || (k |= 2048, re & 6 && U(p.Unicode_escape_sequences_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set, we, u - we)), ut;
            }
            for (; u < we + 6; u++) if (!(u < d && GY(z(u))))
              return k |= 2048, re & 6 && U(p.Hexadecimal_digit_expected), _.substring(we, u);
            k |= 1024;
            const nt = parseInt(_.substring(we + 2, u), 16), it = String.fromCharCode(nt);
            if (re & 16 && nt >= 55296 && nt <= 56319 && u + 6 < d && _.substring(u, u + 2) === "\\u" && z(u + 2) !== 123) {
              const ut = u;
              let Qe = u + 2;
              for (; Qe < ut + 6; Qe++) if (!GY(z(Qe))) return it;
              const xt = parseInt(_.substring(ut + 2, Qe), 16);
              if (xt >= 56320 && xt <= 57343)
                return u = Qe, it + String.fromCharCode(xt);
            }
            return it;
          case 120:
            for (; u < we + 4; u++) if (!(u < d && GY(z(u))))
              return k |= 2048, re & 6 && U(p.Hexadecimal_digit_expected), _.substring(we, u);
            return k |= 4096, String.fromCharCode(parseInt(_.substring(we + 2, u), 16));
          case 13:
            u < d && z(u) === 10 && u++;
          case 10:
          case 8232:
          case 8233:
            return "";
          default:
            return (re & 16 || re & 4 && !(re & 8) && jh(Ge, e)) && U(p.This_character_cannot_be_escaped_in_a_regular_expression, u - 2, 2), String.fromCharCode(Ge);
        }
      }
      function Be(re) {
        const we = u;
        u += 3;
        const Ge = u, nt = he(1, !1), it = nt ? parseInt(nt, 16) : -1;
        let ut = !1;
        return it < 0 ? (re && U(p.Hexadecimal_digit_expected), ut = !0) : it > 1114111 && (re && U(p.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive, Ge, u - Ge), ut = !0), u >= d ? (re && U(p.Unexpected_end_of_text), ut = !0) : z(u) === 125 ? u++ : (re && U(p.Unterminated_Unicode_escape_sequence), ut = !0), ut ? (k |= 2048, _.substring(we, u)) : (k |= 8, J4(it));
      }
      function ce() {
        if (u + 5 < d && z(u + 1) === 117) {
          const re = u;
          u += 2;
          const we = se(4, !1);
          return u = re, we;
        }
        return -1;
      }
      function oe() {
        if (G(u + 1) === 117 && G(u + 2) === 123) {
          const re = u;
          u += 3;
          const we = he(1, !1), Ge = we ? parseInt(we, 16) : -1;
          return u = re, Ge;
        }
        return -1;
      }
      function ge() {
        let re = "", we = u;
        for (; u < d; ) {
          let Ge = G(u);
          if (jh(Ge, e)) u += Rd(Ge);
          else if (Ge === 92) {
            if (Ge = oe(), Ge >= 0 && jh(Ge, e)) {
              re += Be(!0), we = u;
              continue;
            }
            if (Ge = ce(), !(Ge >= 0 && jh(Ge, e))) break;
            k |= 1024, re += _.substring(we, u), re += J4(Ge), u += 6, we = u;
          } else break;
        }
        return re += _.substring(we, u), re;
      }
      function Ae() {
        const re = T.length;
        if (re >= 2 && re <= 12) {
          const we = T.charCodeAt(0);
          if (we >= 97 && we <= 122) {
            const Ge = VOe.get(T);
            if (Ge !== void 0) return S = Ge;
          }
        }
        return S = 80;
      }
      function Ne(re) {
        let we = "", Ge = !1, nt = !1;
        for (; ; ) {
          const it = z(u);
          if (it === 95) {
            k |= 512, Ge ? (Ge = !1, nt = !0) : U(nt ? p.Multiple_consecutive_numeric_separators_are_not_permitted : p.Numeric_separators_are_not_allowed_here, u, 1), u++;
            continue;
          }
          if (Ge = !0, !qC(it) || it - 48 >= re) break;
          we += _[u], u++, nt = !1;
        }
        return z(u - 1) === 95 && U(p.Numeric_separators_are_not_allowed_here, u - 1, 1), we;
      }
      function ot() {
        return z(u) === 110 ? (T += "n", k & 384 && (T = JD(T) + "n"), u++, 10) : (T = "" + (k & 128 ? parseInt(T.slice(2), 2) : k & 256 ? parseInt(T.slice(2), 8) : +T), 9);
      }
      function K() {
        for (g = u, k = 0; ; ) {
          if (h = u, u >= d) return S = 1;
          const re = G(u);
          if (u === 0 && re === 35 && ihe(_, u)) {
            if (u = ahe(_, u), t) continue;
            return S = 6;
          }
          switch (re) {
            case 10:
            case 13:
              if (k |= 1, t) {
                u++;
                continue;
              } else
                return re === 13 && u + 1 < d && z(u + 1) === 10 ? u += 2 : u++, S = 4;
            case 9:
            case 11:
            case 12:
            case 32:
            case 160:
            case 5760:
            case 8192:
            case 8193:
            case 8194:
            case 8195:
            case 8196:
            case 8197:
            case 8198:
            case 8199:
            case 8200:
            case 8201:
            case 8202:
            case 8203:
            case 8239:
            case 8287:
            case 12288:
            case 65279:
              if (t) {
                u++;
                continue;
              } else {
                for (; u < d && hm(z(u)); ) u++;
                return S = 5;
              }
            case 33:
              return z(u + 1) === 61 ? z(u + 2) === 61 ? (u += 3, S = 38) : (u += 2, S = 36) : (u++, S = 54);
            case 34:
            case 39:
              return T = de(), S = 11;
            case 96:
              return S = $(!1);
            case 37:
              return z(u + 1) === 61 ? (u += 2, S = 70) : (u++, S = 45);
            case 38:
              return z(u + 1) === 38 ? z(u + 2) === 61 ? (u += 3, S = 77) : (u += 2, S = 56) : z(u + 1) === 61 ? (u += 2, S = 74) : (u++, S = 51);
            case 40:
              return u++, S = 21;
            case 41:
              return u++, S = 22;
            case 42:
              if (z(u + 1) === 61) return u += 2, S = 67;
              if (z(u + 1) === 42)
                return z(u + 2) === 61 ? (u += 3, S = 68) : (u += 2, S = 43);
              if (u++, P && (k & 32768) === 0 && k & 1) {
                k |= 32768;
                continue;
              }
              return S = 42;
            case 43:
              return z(u + 1) === 43 ? (u += 2, S = 46) : z(u + 1) === 61 ? (u += 2, S = 65) : (u++, S = 40);
            case 44:
              return u++, S = 28;
            case 45:
              return z(u + 1) === 45 ? (u += 2, S = 47) : z(u + 1) === 61 ? (u += 2, S = 66) : (u++, S = 41);
            case 46:
              return qC(z(u + 1)) ? (ie(), S = 9) : z(u + 1) === 46 && z(u + 2) === 46 ? (u += 3, S = 26) : (u++, S = 25);
            case 47:
              if (z(u + 1) === 47) {
                for (u += 2; u < d && !Uu(z(u)); )
                  u++;
                if (D = Xt(D, _.slice(h, u), QOe, h), t) continue;
                return S = 2;
              }
              if (z(u + 1) === 42) {
                u += 2;
                const Qe = z(u) === 42 && z(u + 1) !== 47;
                let xt = !1, Dt = h;
                for (; u < d; ) {
                  const Ve = z(u);
                  if (Ve === 42 && z(u + 1) === 47) {
                    u += 2, xt = !0;
                    break;
                  }
                  u++, Uu(Ve) && (Dt = u, k |= 1);
                }
                if (Qe && ke() && (k |= 2), D = Xt(D, _.slice(Dt, u), YOe, Dt), xt || U(p.Asterisk_Slash_expected), t) continue;
                return xt || (k |= 4), S = 3;
              }
              return z(u + 1) === 61 ? (u += 2, S = 69) : (u++, S = 44);
            case 48:
              if (u + 2 < d && (z(u + 1) === 88 || z(u + 1) === 120))
                return u += 2, T = he(1, !0), T || (U(p.Hexadecimal_digit_expected), T = "0"), T = "0x" + T, k |= 64, S = ot();
              if (u + 2 < d && (z(u + 1) === 66 || z(u + 1) === 98))
                return u += 2, T = Ne(2), T || (U(p.Binary_digit_expected), T = "0"), T = "0b" + T, k |= 128, S = ot();
              if (u + 2 < d && (z(u + 1) === 79 || z(u + 1) === 111))
                return u += 2, T = Ne(8), T || (U(p.Octal_digit_expected), T = "0"), T = "0o" + T, k |= 256, S = ot();
            case 49:
            case 50:
            case 51:
            case 52:
            case 53:
            case 54:
            case 55:
            case 56:
            case 57:
              return S = ie();
            case 58:
              return u++, S = 59;
            case 59:
              return u++, S = 27;
            case 60:
              if (j4(_, u)) {
                if (u = h3(_, u, U), t) continue;
                return S = 7;
              }
              return z(u + 1) === 60 ? z(u + 2) === 61 ? (u += 3, S = 71) : (u += 2, S = 48) : z(u + 1) === 61 ? (u += 2, S = 33) : n === 1 && z(u + 1) === 47 && z(u + 2) !== 42 ? (u += 2, S = 31) : (u++, S = 30);
            case 61:
              if (j4(_, u)) {
                if (u = h3(_, u, U), t) continue;
                return S = 7;
              }
              return z(u + 1) === 61 ? z(u + 2) === 61 ? (u += 3, S = 37) : (u += 2, S = 35) : z(u + 1) === 62 ? (u += 2, S = 39) : (u++, S = 64);
            case 62:
              if (j4(_, u)) {
                if (u = h3(_, u, U), t) continue;
                return S = 7;
              }
              return u++, S = 32;
            case 63:
              return z(u + 1) === 46 && !qC(z(u + 2)) ? (u += 2, S = 29) : z(u + 1) === 63 ? z(u + 2) === 61 ? (u += 3, S = 78) : (u += 2, S = 61) : (u++, S = 58);
            case 91:
              return u++, S = 23;
            case 93:
              return u++, S = 24;
            case 94:
              return z(u + 1) === 61 ? (u += 2, S = 79) : (u++, S = 53);
            case 123:
              return u++, S = 19;
            case 124:
              if (j4(_, u)) {
                if (u = h3(_, u, U), t) continue;
                return S = 7;
              }
              return z(u + 1) === 124 ? z(u + 2) === 61 ? (u += 3, S = 76) : (u += 2, S = 57) : z(u + 1) === 61 ? (u += 2, S = 75) : (u++, S = 52);
            case 125:
              return u++, S = 20;
            case 126:
              return u++, S = 55;
            case 64:
              return u++, S = 60;
            case 92:
              const we = oe();
              if (we >= 0 && sg(we, e))
                return T = Be(!0) + ge(), S = Ae();
              const Ge = ce();
              return Ge >= 0 && sg(Ge, e) ? (u += 6, k |= 1024, T = String.fromCharCode(Ge) + ge(), S = Ae()) : (U(p.Invalid_character), u++, S = 0);
            case 35:
              if (u !== 0 && _[u + 1] === "!")
                return U(p.can_only_be_used_at_the_start_of_a_file, u, 2), u++, S = 0;
              const nt = G(u + 1);
              if (nt === 92) {
                u++;
                const Qe = oe();
                if (Qe >= 0 && sg(Qe, e))
                  return T = "#" + Be(!0) + ge(), S = 81;
                const xt = ce();
                if (xt >= 0 && sg(xt, e))
                  return u += 6, k |= 1024, T = "#" + String.fromCharCode(xt) + ge(), S = 81;
                u--;
              }
              return sg(nt, e) ? (u++, Ce(nt, e)) : (T = "#", U(p.Invalid_character, u++, Rd(re))), S = 81;
            case 65533:
              return U(p.File_appears_to_be_binary, 0, 0), u = d, S = 8;
            default:
              const it = Ce(re, e);
              if (it) return S = it;
              if (hm(re)) {
                u += Rd(re);
                continue;
              } else if (Uu(re)) {
                k |= 1, u += Rd(re);
                continue;
              }
              const ut = Rd(re);
              return U(p.Invalid_character, u, ut), u += ut, S = 0;
          }
        }
      }
      function ke() {
        switch (M) {
          case 0:
            return !0;
          case 1:
            return !1;
        }
        return N !== 3 && N !== 4 ? !0 : M === 3 ? !1 : ZOe.test(_.slice(g, u));
      }
      function ae() {
        E.assert(S === 0, "'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."), u = h = g, k = 0;
        const re = G(u), we = Ce(re, 99);
        return we ? S = we : (u += Rd(re), S);
      }
      function Ce(re, we) {
        let Ge = re;
        if (sg(Ge, we)) {
          for (u += Rd(Ge); u < d && jh(Ge = G(u), we); ) u += Rd(Ge);
          return T = _.substring(h, u), Ge === 92 && (T += ge()), Ae();
        }
      }
      function ue() {
        if (S === 32) {
          if (z(u) === 62)
            return z(u + 1) === 62 ? z(u + 2) === 61 ? (u += 3, S = 73) : (u += 2, S = 50) : z(u + 1) === 61 ? (u += 2, S = 72) : (u++, S = 49);
          if (z(u) === 61)
            return u++, S = 34;
        }
        return S;
      }
      function Ie() {
        return E.assert(S === 67, "'reScanAsteriskEqualsToken' should only be called on a '*='"), u = h + 1, S = 64;
      }
      function Xe(re) {
        if (S === 44 || S === 69) {
          const we = h + 1;
          u = we;
          let Ge = !1, nt = !1, it = !1;
          for (; ; ) {
            const Qe = H(u);
            if (Qe === -1 || Uu(Qe)) {
              k |= 4;
              break;
            }
            if (Ge) Ge = !1;
            else {
              if (Qe === 47 && !it) break;
              Qe === 91 ? it = !0 : Qe === 92 ? Ge = !0 : Qe === 93 ? it = !1 : !it && Qe === 40 && H(u + 1) === 63 && H(u + 2) === 60 && H(u + 3) !== 61 && H(u + 3) !== 33 && (nt = !0);
            }
            u++;
          }
          const ut = u;
          if (k & 4) {
            u = we, Ge = !1;
            let Qe = 0, xt = !1, Dt = 0;
            for (; u < ut; ) {
              const Ve = z(u);
              if (Ge) Ge = !1;
              else if (Ve === 92) Ge = !0;
              else if (Ve === 91) Qe++;
              else if (Ve === 93 && Qe) Qe--;
              else if (!Qe) {
                if (Ve === 123) xt = !0;
                else if (Ve === 125 && xt) xt = !1;
                else if (!xt) {
                  if (Ve === 40) Dt++;
                  else if (Ve === 41 && Dt) Dt--;
                  else if (Ve === 41 || Ve === 93 || Ve === 125) break;
                }
              }
              u++;
            }
            for (; Rg(H(u - 1)) || H(u - 1) === 59; ) u--;
            U(p.Unterminated_regular_expression_literal, h, u - h);
          } else {
            u++;
            let Qe = 0;
            for (; ; ) {
              const xt = L(u);
              if (xt === -1 || !jh(xt, e)) break;
              const Dt = Rd(xt);
              if (re) {
                const Ve = Bj(xt);
                Ve === void 0 ? U(p.Unknown_regular_expression_flag, u, Dt) : Qe & Ve ? U(p.Duplicate_regular_expression_flag, u, Dt) : ((Qe | Ve) & 96) === 96 ? U(p.The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously, u, Dt) : (Qe |= Ve, Ut(Ve, Dt));
              }
              u += Dt;
            }
            re && tr(we, ut - we, () => {
              Ft(Qe, !0, nt);
            });
          }
          T = _.substring(h, u), S = 14;
        }
        return S;
      }
      function Ft(re, we, Ge) {
        var nt = !!(re & 64), it = !!(re & 96), ut = it || !we, Qe = !1, xt = 0, Dt, Ve, fr, rr = [], Oe;
        function rt(Jt) {
          for (; ; ) {
            if (rr.push(Oe), Oe = void 0, ee(Jt), Oe = rr.pop(), H(u) !== 124) return;
            u++;
          }
        }
        function ee(Jt) {
          let $t = !1;
          for (; ; ) {
            const Qt = u, ct = H(u);
            switch (ct) {
              case -1:
                return;
              case 94:
              case 36:
                u++, $t = !1;
                break;
              case 92:
                switch (u++, H(u)) {
                  case 98:
                  case 66:
                    u++, $t = !1;
                    break;
                  default:
                    j(), $t = !0;
                    break;
                }
                break;
              case 40:
                if (u++, H(u) === 63)
                  switch (u++, H(u)) {
                    case 61:
                    case 33:
                      u++, $t = !ut;
                      break;
                    case 60:
                      const os = u;
                      switch (u++, H(u)) {
                        case 61:
                        case 33:
                          u++, $t = !1;
                          break;
                        default:
                          ye(!1), Yt(62), e < 5 && U(p.Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later, os, u - os), xt++, $t = !0;
                          break;
                      }
                      break;
                    default:
                      const cs = u, xa = q(0);
                      H(u) === 45 && (u++, q(xa), u === cs + 1 && U(p.Subpattern_flags_must_be_present_when_there_is_a_minus_sign, cs, u - cs)), Yt(58), $t = !0;
                      break;
                  }
                else
                  xt++, $t = !0;
                rt(!0), Yt(41);
                break;
              case 123:
                u++;
                const wn = u;
                Q();
                const Mi = T;
                if (!ut && !Mi) {
                  $t = !0;
                  break;
                }
                if (H(u) === 44) {
                  u++, Q();
                  const os = T;
                  if (Mi) os && Number.parseInt(Mi) > Number.parseInt(os) && (ut || H(u) === 125) && U(p.Numbers_out_of_order_in_quantifier, wn, u - wn);
                  else if (os || H(u) === 125) U(p.Incomplete_quantifier_Digit_expected, wn, 0);
                  else {
                    U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, Qt, 1, String.fromCharCode(ct)), $t = !0;
                    break;
                  }
                } else if (!Mi) {
                  ut && U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, Qt, 1, String.fromCharCode(ct)), $t = !0;
                  break;
                }
                if (H(u) !== 125) if (ut)
                  U(p._0_expected, u, 0, "}"), u--;
                else {
                  $t = !0;
                  break;
                }
              case 42:
              case 43:
              case 63:
                u++, H(u) === 63 && u++, $t || U(p.There_is_nothing_available_for_repetition, Qt, u - Qt), $t = !1;
                break;
              case 46:
                u++, $t = !0;
                break;
              case 91:
                u++, nt ? Pr() : pr(), Yt(93), $t = !0;
                break;
              case 41:
                if (Jt) return;
              case 93:
              case 125:
                (ut || ct === 41) && U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u, 1, String.fromCharCode(ct)), u++, $t = !0;
                break;
              case 47:
              case 124:
                return;
              default:
                Ir(), $t = !0;
                break;
            }
          }
        }
        function q(Jt) {
          for (; ; ) {
            const $t = L(u);
            if ($t === -1 || !jh($t, e)) break;
            const Qt = Rd($t), ct = Bj($t);
            ct === void 0 ? U(p.Unknown_regular_expression_flag, u, Qt) : Jt & ct ? U(p.Duplicate_regular_expression_flag, u, Qt) : ct & 28 ? (Jt |= ct, Ut(ct, Qt)) : U(p.This_regular_expression_flag_cannot_be_toggled_within_a_subpattern, u, Qt), u += Qt;
          }
          return Jt;
        }
        function j() {
          switch (E.assertEqual(z(u - 1), 92), H(u)) {
            case 107:
              u++, H(u) === 60 ? (u++, ye(!0), Yt(62)) : (ut || Ge) && U(p.k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets, u - 2, 2);
              break;
            case 113:
              if (nt) {
                u++, U(p.q_is_only_available_inside_character_class, u - 2, 2);
                break;
              }
            default:
              E.assert(wt() || Re() || $e(!0));
              break;
          }
        }
        function Re() {
          E.assertEqual(z(u - 1), 92);
          const Jt = H(u);
          if (Jt >= 49 && Jt <= 57) {
            const $t = u;
            return Q(), fr = kr(fr, {
              pos: $t,
              end: u,
              value: +T
            }), !0;
          }
          return !1;
        }
        function $e(Jt) {
          E.assertEqual(z(u - 1), 92);
          let $t = H(u);
          switch ($t) {
            case -1:
              return U(p.Undetermined_character_escape, u - 1, 1), "\\";
            case 99:
              if (u++, $t = H(u), HY($t))
                return u++, String.fromCharCode($t & 31);
              if (ut) U(p.c_must_be_followed_by_an_ASCII_letter, u - 2, 2);
              else if (Jt)
                return u--, "\\";
              return String.fromCharCode($t);
            case 94:
            case 36:
            case 47:
            case 92:
            case 46:
            case 42:
            case 43:
            case 63:
            case 40:
            case 41:
            case 91:
            case 93:
            case 123:
            case 125:
            case 124:
              return u++, String.fromCharCode($t);
            default:
              return u--, Se(4 | (we ? 8 : 0) | (it ? 16 : 0) | (Jt ? 32 : 0));
          }
        }
        function ye(Jt) {
          E.assertEqual(z(u - 1), 60), h = u, Ce(L(u), e), u === h ? U(p.Expected_a_capturing_group_name) : Jt ? Ve = kr(Ve, {
            pos: h,
            end: u,
            name: T
          }) : Oe?.has(T) || rr.some(($t) => $t?.has(T)) ? U(p.Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other, h, u - h) : (Oe ?? (Oe = /* @__PURE__ */ new Set()), Oe.add(T), Dt ?? (Dt = /* @__PURE__ */ new Set()), Dt.add(T));
        }
        function Ke(Jt) {
          return Jt === 93 || Jt === -1 || u >= d;
        }
        function pr() {
          for (E.assertEqual(z(u - 1), 91), H(u) === 94 && u++; ; ) {
            if (Ke(H(u))) return;
            const Jt = u, $t = kt();
            if (H(u) === 45) {
              if (u++, Ke(H(u))) return;
              !$t && ut && U(p.A_character_class_range_must_not_be_bounded_by_another_character_class, Jt, u - 1 - Jt);
              const Qt = u, ct = kt();
              if (!ct && ut) {
                U(p.A_character_class_range_must_not_be_bounded_by_another_character_class, Qt, u - Qt);
                continue;
              }
              if (!$t) continue;
              const wn = B4($t, 0), Mi = B4(ct, 0);
              $t.length === Rd(wn) && ct.length === Rd(Mi) && wn > Mi && U(p.Range_out_of_order_in_character_class, Jt, u - Jt);
            }
          }
        }
        function Pr() {
          E.assertEqual(z(u - 1), 91);
          let Jt = !1;
          H(u) === 94 && (u++, Jt = !0);
          let $t = !1, Qt = H(u);
          if (Ke(Qt)) return;
          let ct = u, wn;
          switch (_.slice(u, u + 2)) {
            case "--":
            case "&&":
              U(p.Expected_a_class_set_operand), Qe = !1;
              break;
            default:
              wn = fn();
              break;
          }
          switch (H(u)) {
            case 45:
              if (H(u + 1) === 45) {
                Jt && Qe && U(p.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class, ct, u - ct), $t = Qe, vr(3), Qe = !Jt && $t;
                return;
              }
              break;
            case 38:
              if (H(u + 1) === 38) {
                vr(2), Jt && Qe && U(p.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class, ct, u - ct), $t = Qe, Qe = !Jt && $t;
                return;
              } else U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u, 1, String.fromCharCode(Qt));
              break;
            default:
              Jt && Qe && U(p.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class, ct, u - ct), $t = Qe;
              break;
          }
          for (; Qt = H(u), Qt !== -1; ) {
            switch (Qt) {
              case 45:
                if (u++, Qt = H(u), Ke(Qt)) {
                  Qe = !Jt && $t;
                  return;
                }
                if (Qt === 45) {
                  u++, U(p.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead, u - 2, 2), ct = u - 2, wn = _.slice(ct, u);
                  continue;
                } else {
                  wn || U(p.A_character_class_range_must_not_be_bounded_by_another_character_class, ct, u - 1 - ct);
                  const Mi = u, os = fn();
                  if (Jt && Qe && U(p.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class, Mi, u - Mi), $t || ($t = Qe), !os) {
                    U(p.A_character_class_range_must_not_be_bounded_by_another_character_class, Mi, u - Mi);
                    break;
                  }
                  if (!wn) break;
                  const cs = B4(wn, 0), xa = B4(os, 0);
                  wn.length === Rd(cs) && os.length === Rd(xa) && cs > xa && U(p.Range_out_of_order_in_character_class, ct, u - ct);
                }
                break;
              case 38:
                ct = u, u++, H(u) === 38 ? (u++, U(p.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead, u - 2, 2), H(u) === 38 && (U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u, 1, String.fromCharCode(Qt)), u++)) : U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u - 1, 1, String.fromCharCode(Qt)), wn = _.slice(ct, u);
                continue;
            }
            if (Ke(H(u))) break;
            switch (ct = u, _.slice(u, u + 2)) {
              case "--":
              case "&&":
                U(p.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead, u, 2), u += 2, wn = _.slice(ct, u);
                break;
              default:
                wn = fn();
                break;
            }
          }
          Qe = !Jt && $t;
        }
        function vr(Jt) {
          let $t = Qe;
          for (; ; ) {
            let Qt = H(u);
            if (Ke(Qt)) break;
            switch (Qt) {
              case 45:
                u++, H(u) === 45 ? (u++, Jt !== 3 && U(p.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead, u - 2, 2)) : U(p.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead, u - 1, 1);
                break;
              case 38:
                u++, H(u) === 38 ? (u++, Jt !== 2 && U(p.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead, u - 2, 2), H(u) === 38 && (U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u, 1, String.fromCharCode(Qt)), u++)) : U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u - 1, 1, String.fromCharCode(Qt));
                break;
              default:
                switch (Jt) {
                  case 3:
                    U(p._0_expected, u, 0, "--");
                    break;
                  case 2:
                    U(p._0_expected, u, 0, "&&");
                    break;
                  default:
                    break;
                }
                break;
            }
            if (Qt = H(u), Ke(Qt)) {
              U(p.Expected_a_class_set_operand);
              break;
            }
            fn(), $t && ($t = Qe);
          }
          Qe = $t;
        }
        function fn() {
          switch (Qe = !1, H(u)) {
            case -1:
              return "";
            case 91:
              return u++, Pr(), Yt(93), "";
            case 92:
              if (u++, wt()) return "";
              if (H(u) === 113)
                return u++, H(u) === 123 ? (u++, Cr(), Yt(125), "") : (U(p.q_must_be_followed_by_string_alternatives_enclosed_in_braces, u - 2, 2), "q");
              u--;
            default:
              return et();
          }
        }
        function Cr() {
          E.assertEqual(z(u - 1), 123);
          let Jt = 0;
          for (; ; ) switch (H(u)) {
            case -1:
              return;
            case 125:
              Jt !== 1 && (Qe = !0);
              return;
            case 124:
              Jt !== 1 && (Qe = !0), u++, o = u, Jt = 0;
              break;
            default:
              et(), Jt++;
              break;
          }
        }
        function et() {
          const Jt = H(u);
          if (Jt === -1) return "";
          if (Jt === 92) {
            u++;
            const $t = H(u);
            switch ($t) {
              case 98:
                return u++, "\b";
              case 38:
              case 45:
              case 33:
              case 35:
              case 37:
              case 44:
              case 58:
              case 59:
              case 60:
              case 61:
              case 62:
              case 64:
              case 96:
              case 126:
                return u++, String.fromCharCode($t);
              default:
                return $e(!1);
            }
          } else if (Jt === H(u + 1)) switch (Jt) {
            case 38:
            case 33:
            case 35:
            case 37:
            case 42:
            case 43:
            case 44:
            case 46:
            case 58:
            case 59:
            case 60:
            case 61:
            case 62:
            case 63:
            case 64:
            case 96:
            case 126:
              return U(p.A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash, u, 2), u += 2, _.substring(u - 2, u);
          }
          switch (Jt) {
            case 47:
            case 40:
            case 41:
            case 91:
            case 93:
            case 123:
            case 125:
            case 45:
            case 124:
              return U(p.Unexpected_0_Did_you_mean_to_escape_it_with_backslash, u, 1, String.fromCharCode(Jt)), u++, String.fromCharCode(Jt);
          }
          return Ir();
        }
        function kt() {
          if (H(u) === 92) {
            u++;
            const Jt = H(u);
            switch (Jt) {
              case 98:
                return u++, "\b";
              case 45:
                return u++, String.fromCharCode(Jt);
              default:
                return wt() ? "" : $e(!1);
            }
          } else return Ir();
        }
        function wt() {
          E.assertEqual(z(u - 1), 92);
          let Jt = !1;
          const $t = u - 1, Qt = H(u);
          switch (Qt) {
            case 100:
            case 68:
            case 115:
            case 83:
            case 119:
            case 87:
              return u++, !0;
            case 80:
              Jt = !0;
            case 112:
              if (u++, H(u) === 123) {
                u++;
                const ct = u, wn = qt();
                if (H(u) === 61) {
                  const Mi = ohe.get(wn);
                  if (u === ct) U(p.Expected_a_Unicode_property_name);
                  else if (Mi === void 0) {
                    U(p.Unknown_Unicode_property_name, ct, u - ct);
                    const xa = xb(wn, ohe.keys(), mo);
                    xa && U(p.Did_you_mean_0, ct, u - ct, xa);
                  }
                  u++;
                  const os = u, cs = qt();
                  if (u === os) U(p.Expected_a_Unicode_property_value);
                  else if (Mi !== void 0 && !b3[Mi].has(cs)) {
                    U(p.Unknown_Unicode_property_value, os, u - os);
                    const xa = xb(cs, b3[Mi], mo);
                    xa && U(p.Did_you_mean_0, os, u - os, xa);
                  }
                } else if (u === ct) U(p.Expected_a_Unicode_property_name_or_value);
                else if (lhe.has(wn)) nt ? Jt ? U(p.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class, ct, u - ct) : Qe = !0 : U(p.Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set, ct, u - ct);
                else if (!b3.General_Category.has(wn) && !che.has(wn)) {
                  U(p.Unknown_Unicode_property_name_or_value, ct, u - ct);
                  const Mi = xb(wn, [
                    ...b3.General_Category,
                    ...che,
                    ...lhe
                  ], mo);
                  Mi && U(p.Did_you_mean_0, ct, u - ct, Mi);
                }
                Yt(125), it || U(p.Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set, $t, u - $t);
              } else if (ut) U(p._0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces, u - 2, 2, String.fromCharCode(Qt));
              else
                return u--, !1;
              return !0;
          }
          return !1;
        }
        function qt() {
          let Jt = "";
          for (; ; ) {
            const $t = H(u);
            if ($t === -1 || !nhe($t)) break;
            Jt += String.fromCharCode($t), u++;
          }
          return Jt;
        }
        function Ir() {
          const Jt = it ? Rd(L(u)) : 1;
          return u += Jt, Jt > 0 ? _.substring(u - Jt, u) : "";
        }
        function Yt(Jt) {
          H(u) === Jt ? u++ : U(p._0_expected, u, 0, String.fromCharCode(Jt));
        }
        rt(!1), bt(Ve, (Jt) => {
          if (!Dt?.has(Jt.name) && (U(p.There_is_no_capturing_group_named_0_in_this_regular_expression, Jt.pos, Jt.end - Jt.pos, Jt.name), Dt)) {
            const $t = xb(Jt.name, Dt, mo);
            $t && U(p.Did_you_mean_0, Jt.pos, Jt.end - Jt.pos, $t);
          }
        }), bt(fr, (Jt) => {
          Jt.value > xt && (xt ? U(p.This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression, Jt.pos, Jt.end - Jt.pos, xt) : U(p.This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression, Jt.pos, Jt.end - Jt.pos));
        });
      }
      function Ut(re, we) {
        const Ge = qOe.get(re);
        Ge && e < Ge && U(p.This_regular_expression_flag_is_only_available_when_targeting_0_or_later, u, we, mO(Ge));
      }
      function Xt(re, we, Ge, nt) {
        const it = Ar(we.trimStart(), Ge);
        return it === void 0 ? re : kr(re, {
          range: {
            pos: nt,
            end: u
          },
          type: it
        });
      }
      function Ar(re, we) {
        const Ge = we.exec(re);
        if (Ge)
          switch (Ge[1]) {
            case "ts-expect-error":
              return 0;
            case "ts-ignore":
              return 1;
          }
      }
      function Ct(re) {
        return u = h, S = $(!re);
      }
      function Kt() {
        return u = h, S = $(!0);
      }
      function zr(re = !0) {
        return u = h = g, S = Li(re);
      }
      function _i() {
        return S === 48 ? (u = h + 1, S = 30) : S;
      }
      function Gr() {
        return S === 81 ? (u = h + 1, S = 63) : S;
      }
      function Nt() {
        return E.assert(S === 61, "'reScanQuestionToken' should only be called on a '??'"), u = h + 1, S = 58;
      }
      function Li(re = !0) {
        if (g = h = u, u >= d) return S = 1;
        let we = z(u);
        if (we === 60)
          return z(u + 1) === 47 ? (u += 2, S = 31) : (u++, S = 30);
        if (we === 123)
          return u++, S = 19;
        let Ge = 0;
        for (; u < d && (we = z(u), we !== 123); ) {
          if (we === 60) {
            if (j4(_, u))
              return u = h3(_, u, U), S = 7;
            break;
          }
          if (we === 62 && U(p.Unexpected_token_Did_you_mean_or_gt, u, 1), we === 125 && U(p.Unexpected_token_Did_you_mean_or_rbrace, u, 1), Uu(we) && Ge === 0) Ge = -1;
          else {
            if (!re && Uu(we) && Ge > 0) break;
            Rg(we) || (Ge = u);
          }
          u++;
        }
        return T = _.substring(g, u), Ge === -1 ? 13 : 12;
      }
      function ri() {
        if (M_(S)) {
          for (; u < d; ) {
            if (z(u) === 45) {
              T += "-", u++;
              continue;
            }
            const re = u;
            if (T += ge(), u === re) break;
          }
          return Ae();
        }
        return S;
      }
      function Zr() {
        switch (g = u, z(u)) {
          case 34:
          case 39:
            return T = de(!0), S = 11;
          default:
            return K();
        }
      }
      function ni() {
        return u = h = g, Zr();
      }
      function ra(re) {
        if (g = h = u, k = 0, u >= d) return S = 1;
        for (let we = z(u); u < d && !Uu(we) && we !== 96; we = G(++u)) if (!re) {
          if (we === 123) break;
          if (we === 64 && u - 1 >= 0 && hm(z(u - 1)) && !(u + 1 < d && Rg(z(u + 1)))) break;
        }
        return u === h ? Me() : (T = _.substring(h, u), S = 82);
      }
      function Me() {
        if (g = h = u, k = 0, u >= d) return S = 1;
        const re = G(u);
        switch (u += Rd(re), re) {
          case 9:
          case 11:
          case 12:
          case 32:
            for (; u < d && hm(z(u)); ) u++;
            return S = 5;
          case 64:
            return S = 60;
          case 13:
            z(u) === 10 && u++;
          case 10:
            return k |= 1, S = 4;
          case 42:
            return S = 42;
          case 123:
            return S = 19;
          case 125:
            return S = 20;
          case 91:
            return S = 23;
          case 93:
            return S = 24;
          case 40:
            return S = 21;
          case 41:
            return S = 22;
          case 60:
            return S = 30;
          case 62:
            return S = 32;
          case 61:
            return S = 64;
          case 44:
            return S = 28;
          case 46:
            return S = 25;
          case 96:
            return S = 62;
          case 35:
            return S = 63;
          case 92:
            u--;
            const we = oe();
            if (we >= 0 && sg(we, e))
              return T = Be(!0) + ge(), S = Ae();
            const Ge = ce();
            return Ge >= 0 && sg(Ge, e) ? (u += 6, k |= 1024, T = String.fromCharCode(Ge) + ge(), S = Ae()) : (u++, S = 0);
        }
        if (sg(re, e)) {
          let we = re;
          for (; u < d && jh(we = G(u), e) || we === 45; ) u += Rd(we);
          return T = _.substring(h, u), we === 92 && (T += ge()), S = Ae();
        } else return S = 0;
      }
      function vt(re, we) {
        const Ge = u, nt = g, it = h, ut = S, Qe = T, xt = k, Dt = re();
        return (!Dt || we) && (u = Ge, g = nt, h = it, S = ut, T = Qe, k = xt), Dt;
      }
      function tr(re, we, Ge) {
        const nt = d, it = u, ut = g, Qe = h, xt = S, Dt = T, Ve = k, fr = D;
        Ea(_, re, we);
        const rr = Ge();
        return d = nt, u = it, g = ut, h = Qe, S = xt, T = Dt, k = Ve, D = fr, rr;
      }
      function Ur(re) {
        return vt(re, !0);
      }
      function $n(re) {
        return vt(re, !1);
      }
      function zn() {
        return _;
      }
      function na() {
        D = void 0;
      }
      function Ea(re, we, Ge) {
        _ = re || "", d = Ge === void 0 ? _.length : we + Ge, ne(we || 0);
      }
      function Da(re) {
        a = re;
      }
      function Lr(re) {
        e = re;
      }
      function ha(re) {
        n = re;
      }
      function Ye(re) {
        N = re;
      }
      function Pt(re) {
        M = re;
      }
      function ne(re) {
        E.assert(re >= 0), u = re, g = re, h = re, S = 0, T = void 0, k = 0;
      }
      function tt(re) {
        P += re ? 1 : -1;
      }
    }
    function B4(e, t) {
      return e.codePointAt(t);
    }
    function Rd(e) {
      return e >= 65536 ? 2 : e === -1 ? 0 : 1;
    }
    function rFe(e) {
      if (E.assert(0 <= e && e <= 1114111), e <= 65535) return String.fromCharCode(e);
      const t = Math.floor((e - 65536) / 1024) + 55296, n = (e - 65536) % 1024 + 56320;
      return String.fromCharCode(t, n);
    }
    var nFe = String.fromCodePoint ? (e) => String.fromCodePoint(e) : rFe;
    function J4(e) {
      return nFe(e);
    }
    var ohe = new Map(Object.entries({
      General_Category: "General_Category",
      gc: "General_Category",
      Script: "Script",
      sc: "Script",
      Script_Extensions: "Script_Extensions",
      scx: "Script_Extensions"
    })), che = /* @__PURE__ */ new Set([
      "ASCII",
      "ASCII_Hex_Digit",
      "AHex",
      "Alphabetic",
      "Alpha",
      "Any",
      "Assigned",
      "Bidi_Control",
      "Bidi_C",
      "Bidi_Mirrored",
      "Bidi_M",
      "Case_Ignorable",
      "CI",
      "Cased",
      "Changes_When_Casefolded",
      "CWCF",
      "Changes_When_Casemapped",
      "CWCM",
      "Changes_When_Lowercased",
      "CWL",
      "Changes_When_NFKC_Casefolded",
      "CWKCF",
      "Changes_When_Titlecased",
      "CWT",
      "Changes_When_Uppercased",
      "CWU",
      "Dash",
      "Default_Ignorable_Code_Point",
      "DI",
      "Deprecated",
      "Dep",
      "Diacritic",
      "Dia",
      "Emoji",
      "Emoji_Component",
      "EComp",
      "Emoji_Modifier",
      "EMod",
      "Emoji_Modifier_Base",
      "EBase",
      "Emoji_Presentation",
      "EPres",
      "Extended_Pictographic",
      "ExtPict",
      "Extender",
      "Ext",
      "Grapheme_Base",
      "Gr_Base",
      "Grapheme_Extend",
      "Gr_Ext",
      "Hex_Digit",
      "Hex",
      "IDS_Binary_Operator",
      "IDSB",
      "IDS_Trinary_Operator",
      "IDST",
      "ID_Continue",
      "IDC",
      "ID_Start",
      "IDS",
      "Ideographic",
      "Ideo",
      "Join_Control",
      "Join_C",
      "Logical_Order_Exception",
      "LOE",
      "Lowercase",
      "Lower",
      "Math",
      "Noncharacter_Code_Point",
      "NChar",
      "Pattern_Syntax",
      "Pat_Syn",
      "Pattern_White_Space",
      "Pat_WS",
      "Quotation_Mark",
      "QMark",
      "Radical",
      "Regional_Indicator",
      "RI",
      "Sentence_Terminal",
      "STerm",
      "Soft_Dotted",
      "SD",
      "Terminal_Punctuation",
      "Term",
      "Unified_Ideograph",
      "UIdeo",
      "Uppercase",
      "Upper",
      "Variation_Selector",
      "VS",
      "White_Space",
      "space",
      "XID_Continue",
      "XIDC",
      "XID_Start",
      "XIDS"
    ]), lhe = /* @__PURE__ */ new Set([
      "Basic_Emoji",
      "Emoji_Keycap_Sequence",
      "RGI_Emoji_Modifier_Sequence",
      "RGI_Emoji_Flag_Sequence",
      "RGI_Emoji_Tag_Sequence",
      "RGI_Emoji_ZWJ_Sequence",
      "RGI_Emoji"
    ]), b3 = {
      General_Category: /* @__PURE__ */ new Set([
        "C",
        "Other",
        "Cc",
        "Control",
        "cntrl",
        "Cf",
        "Format",
        "Cn",
        "Unassigned",
        "Co",
        "Private_Use",
        "Cs",
        "Surrogate",
        "L",
        "Letter",
        "LC",
        "Cased_Letter",
        "Ll",
        "Lowercase_Letter",
        "Lm",
        "Modifier_Letter",
        "Lo",
        "Other_Letter",
        "Lt",
        "Titlecase_Letter",
        "Lu",
        "Uppercase_Letter",
        "M",
        "Mark",
        "Combining_Mark",
        "Mc",
        "Spacing_Mark",
        "Me",
        "Enclosing_Mark",
        "Mn",
        "Nonspacing_Mark",
        "N",
        "Number",
        "Nd",
        "Decimal_Number",
        "digit",
        "Nl",
        "Letter_Number",
        "No",
        "Other_Number",
        "P",
        "Punctuation",
        "punct",
        "Pc",
        "Connector_Punctuation",
        "Pd",
        "Dash_Punctuation",
        "Pe",
        "Close_Punctuation",
        "Pf",
        "Final_Punctuation",
        "Pi",
        "Initial_Punctuation",
        "Po",
        "Other_Punctuation",
        "Ps",
        "Open_Punctuation",
        "S",
        "Symbol",
        "Sc",
        "Currency_Symbol",
        "Sk",
        "Modifier_Symbol",
        "Sm",
        "Math_Symbol",
        "So",
        "Other_Symbol",
        "Z",
        "Separator",
        "Zl",
        "Line_Separator",
        "Zp",
        "Paragraph_Separator",
        "Zs",
        "Space_Separator"
      ]),
      Script: /* @__PURE__ */ new Set([
        "Adlm",
        "Adlam",
        "Aghb",
        "Caucasian_Albanian",
        "Ahom",
        "Arab",
        "Arabic",
        "Armi",
        "Imperial_Aramaic",
        "Armn",
        "Armenian",
        "Avst",
        "Avestan",
        "Bali",
        "Balinese",
        "Bamu",
        "Bamum",
        "Bass",
        "Bassa_Vah",
        "Batk",
        "Batak",
        "Beng",
        "Bengali",
        "Bhks",
        "Bhaiksuki",
        "Bopo",
        "Bopomofo",
        "Brah",
        "Brahmi",
        "Brai",
        "Braille",
        "Bugi",
        "Buginese",
        "Buhd",
        "Buhid",
        "Cakm",
        "Chakma",
        "Cans",
        "Canadian_Aboriginal",
        "Cari",
        "Carian",
        "Cham",
        "Cher",
        "Cherokee",
        "Chrs",
        "Chorasmian",
        "Copt",
        "Coptic",
        "Qaac",
        "Cpmn",
        "Cypro_Minoan",
        "Cprt",
        "Cypriot",
        "Cyrl",
        "Cyrillic",
        "Deva",
        "Devanagari",
        "Diak",
        "Dives_Akuru",
        "Dogr",
        "Dogra",
        "Dsrt",
        "Deseret",
        "Dupl",
        "Duployan",
        "Egyp",
        "Egyptian_Hieroglyphs",
        "Elba",
        "Elbasan",
        "Elym",
        "Elymaic",
        "Ethi",
        "Ethiopic",
        "Geor",
        "Georgian",
        "Glag",
        "Glagolitic",
        "Gong",
        "Gunjala_Gondi",
        "Gonm",
        "Masaram_Gondi",
        "Goth",
        "Gothic",
        "Gran",
        "Grantha",
        "Grek",
        "Greek",
        "Gujr",
        "Gujarati",
        "Guru",
        "Gurmukhi",
        "Hang",
        "Hangul",
        "Hani",
        "Han",
        "Hano",
        "Hanunoo",
        "Hatr",
        "Hatran",
        "Hebr",
        "Hebrew",
        "Hira",
        "Hiragana",
        "Hluw",
        "Anatolian_Hieroglyphs",
        "Hmng",
        "Pahawh_Hmong",
        "Hmnp",
        "Nyiakeng_Puachue_Hmong",
        "Hrkt",
        "Katakana_Or_Hiragana",
        "Hung",
        "Old_Hungarian",
        "Ital",
        "Old_Italic",
        "Java",
        "Javanese",
        "Kali",
        "Kayah_Li",
        "Kana",
        "Katakana",
        "Kawi",
        "Khar",
        "Kharoshthi",
        "Khmr",
        "Khmer",
        "Khoj",
        "Khojki",
        "Kits",
        "Khitan_Small_Script",
        "Knda",
        "Kannada",
        "Kthi",
        "Kaithi",
        "Lana",
        "Tai_Tham",
        "Laoo",
        "Lao",
        "Latn",
        "Latin",
        "Lepc",
        "Lepcha",
        "Limb",
        "Limbu",
        "Lina",
        "Linear_A",
        "Linb",
        "Linear_B",
        "Lisu",
        "Lyci",
        "Lycian",
        "Lydi",
        "Lydian",
        "Mahj",
        "Mahajani",
        "Maka",
        "Makasar",
        "Mand",
        "Mandaic",
        "Mani",
        "Manichaean",
        "Marc",
        "Marchen",
        "Medf",
        "Medefaidrin",
        "Mend",
        "Mende_Kikakui",
        "Merc",
        "Meroitic_Cursive",
        "Mero",
        "Meroitic_Hieroglyphs",
        "Mlym",
        "Malayalam",
        "Modi",
        "Mong",
        "Mongolian",
        "Mroo",
        "Mro",
        "Mtei",
        "Meetei_Mayek",
        "Mult",
        "Multani",
        "Mymr",
        "Myanmar",
        "Nagm",
        "Nag_Mundari",
        "Nand",
        "Nandinagari",
        "Narb",
        "Old_North_Arabian",
        "Nbat",
        "Nabataean",
        "Newa",
        "Nkoo",
        "Nko",
        "Nshu",
        "Nushu",
        "Ogam",
        "Ogham",
        "Olck",
        "Ol_Chiki",
        "Orkh",
        "Old_Turkic",
        "Orya",
        "Oriya",
        "Osge",
        "Osage",
        "Osma",
        "Osmanya",
        "Ougr",
        "Old_Uyghur",
        "Palm",
        "Palmyrene",
        "Pauc",
        "Pau_Cin_Hau",
        "Perm",
        "Old_Permic",
        "Phag",
        "Phags_Pa",
        "Phli",
        "Inscriptional_Pahlavi",
        "Phlp",
        "Psalter_Pahlavi",
        "Phnx",
        "Phoenician",
        "Plrd",
        "Miao",
        "Prti",
        "Inscriptional_Parthian",
        "Rjng",
        "Rejang",
        "Rohg",
        "Hanifi_Rohingya",
        "Runr",
        "Runic",
        "Samr",
        "Samaritan",
        "Sarb",
        "Old_South_Arabian",
        "Saur",
        "Saurashtra",
        "Sgnw",
        "SignWriting",
        "Shaw",
        "Shavian",
        "Shrd",
        "Sharada",
        "Sidd",
        "Siddham",
        "Sind",
        "Khudawadi",
        "Sinh",
        "Sinhala",
        "Sogd",
        "Sogdian",
        "Sogo",
        "Old_Sogdian",
        "Sora",
        "Sora_Sompeng",
        "Soyo",
        "Soyombo",
        "Sund",
        "Sundanese",
        "Sylo",
        "Syloti_Nagri",
        "Syrc",
        "Syriac",
        "Tagb",
        "Tagbanwa",
        "Takr",
        "Takri",
        "Tale",
        "Tai_Le",
        "Talu",
        "New_Tai_Lue",
        "Taml",
        "Tamil",
        "Tang",
        "Tangut",
        "Tavt",
        "Tai_Viet",
        "Telu",
        "Telugu",
        "Tfng",
        "Tifinagh",
        "Tglg",
        "Tagalog",
        "Thaa",
        "Thaana",
        "Thai",
        "Tibt",
        "Tibetan",
        "Tirh",
        "Tirhuta",
        "Tnsa",
        "Tangsa",
        "Toto",
        "Ugar",
        "Ugaritic",
        "Vaii",
        "Vai",
        "Vith",
        "Vithkuqi",
        "Wara",
        "Warang_Citi",
        "Wcho",
        "Wancho",
        "Xpeo",
        "Old_Persian",
        "Xsux",
        "Cuneiform",
        "Yezi",
        "Yezidi",
        "Yiii",
        "Yi",
        "Zanb",
        "Zanabazar_Square",
        "Zinh",
        "Inherited",
        "Qaai",
        "Zyyy",
        "Common",
        "Zzzz",
        "Unknown"
      ]),
      Script_Extensions: void 0
    };
    b3.Script_Extensions = b3.Script;
    function jl(e) {
      return Bf(e) || pf(e);
    }
    function GC(e) {
      return x4(e, ND, fO);
    }
    var KY = /* @__PURE__ */ new Map([
      [99, "lib.esnext.full.d.ts"],
      [12, "lib.es2025.full.d.ts"],
      [11, "lib.es2024.full.d.ts"],
      [10, "lib.es2023.full.d.ts"],
      [9, "lib.es2022.full.d.ts"],
      [8, "lib.es2021.full.d.ts"],
      [7, "lib.es2020.full.d.ts"],
      [6, "lib.es2019.full.d.ts"],
      [5, "lib.es2018.full.d.ts"],
      [4, "lib.es2017.full.d.ts"],
      [3, "lib.es2016.full.d.ts"],
      [2, "lib.es6.d.ts"]
    ]);
    function S3(e) {
      const t = Ps(e);
      switch (t) {
        case 99:
        case 12:
        case 11:
        case 10:
        case 9:
        case 8:
        case 7:
        case 6:
        case 5:
        case 4:
        case 3:
        case 2:
          return KY.get(t);
        default:
          return "lib.d.ts";
      }
    }
    function dc(e) {
      return e.start + e.length;
    }
    function eZ(e) {
      return e.length === 0;
    }
    function Wj(e, t) {
      return t >= e.start && t < dc(e);
    }
    function T3(e, t) {
      return t >= e.pos && t <= e.end;
    }
    function tZ(e, t) {
      return t.start >= e.start && dc(t) <= dc(e);
    }
    function Uj(e, t) {
      return t.pos >= e.start && t.end <= dc(e);
    }
    function rZ(e, t) {
      return t.start >= e.pos && dc(t) <= e.end;
    }
    function uhe(e, t) {
      return nZ(e, t) !== void 0;
    }
    function nZ(e, t) {
      const n = oZ(e, t);
      return n && n.length === 0 ? void 0 : n;
    }
    function iZ(e, t) {
      return k3(e.start, e.length, t.start, t.length);
    }
    function x3(e, t, n) {
      return k3(e.start, e.length, t, n);
    }
    function k3(e, t, n, i) {
      const a = e + t, o = n + i;
      return n <= a && o >= e;
    }
    function aZ(e, t) {
      return t <= dc(e) && t >= e.start;
    }
    function sZ(e, t) {
      return x3(t, e.pos, e.end - e.pos);
    }
    function oZ(e, t) {
      const n = Math.max(e.start, t.start), i = Math.min(dc(e), dc(t));
      return n <= i ? Vc(n, i) : void 0;
    }
    function Vj(e) {
      e = e.filter((i) => i.length > 0).sort((i, a) => i.start !== a.start ? i.start - a.start : i.length - a.length);
      const t = [];
      let n = 0;
      for (; n < e.length; ) {
        let i = e[n], a = n + 1;
        for (; a < e.length && iZ(i, e[a]); )
          i = Vc(Math.min(i.start, e[a].start), Math.max(dc(i), dc(e[a]))), a++;
        n = a, t.push(i);
      }
      return t;
    }
    function du(e, t) {
      if (e < 0) throw new Error("start < 0");
      if (t < 0) throw new Error("length < 0");
      return {
        start: e,
        length: t
      };
    }
    function Vc(e, t) {
      return du(e, t - e);
    }
    function z4(e) {
      return du(e.span.start, e.newLength);
    }
    function cZ(e) {
      return eZ(e.span) && e.newLength === 0;
    }
    function C3(e, t) {
      if (t < 0) throw new Error("newLength < 0");
      return {
        span: e,
        newLength: t
      };
    }
    var z7 = C3(du(0, 0), 0);
    function lZ(e) {
      if (e.length === 0) return z7;
      if (e.length === 1) return e[0];
      const t = e[0];
      let n = t.span.start, i = dc(t.span), a = n + t.newLength;
      for (let o = 1; o < e.length; o++) {
        const c = e[o], _ = n, u = i, d = a, g = c.span.start, h = dc(c.span), S = g + c.newLength;
        n = Math.min(_, g), i = Math.max(u, u + (h - d)), a = Math.max(S, S + (d - h));
      }
      return C3(Vc(n, i), a - n);
    }
    function _he(e) {
      if (e && e.kind === 169) {
        for (let t = e; t; t = t.parent) if (Ra(t) || Zn(t) || t.kind === 265) return t;
      }
    }
    function df(e, t) {
      return Fi(e) && Qn(e, 31) && t.kind === 177;
    }
    function uZ(e) {
      return Ja(e) ? hr(e.elements, _Z) : !1;
    }
    function _Z(e) {
      return Al(e) ? !0 : uZ(e.name);
    }
    function cS(e) {
      let t = e.parent;
      for (; Ns(t.parent); ) t = t.parent.parent;
      return t.parent;
    }
    function fZ(e, t) {
      Ns(e) && (e = cS(e));
      let n = t(e);
      return e.kind === 261 && (e = e.parent), e && e.kind === 262 && (n |= t(e), e = e.parent), e && e.kind === 244 && (n |= t(e)), n;
    }
    function nv(e) {
      return fZ(e, Pu);
    }
    function qj(e) {
      return fZ(e, lee);
    }
    function x0(e) {
      return fZ(e, iFe);
    }
    function iFe(e) {
      return e.flags;
    }
    var pZ = [
      "cs",
      "de",
      "es",
      "fr",
      "it",
      "ja",
      "ko",
      "pl",
      "pt-br",
      "ru",
      "tr",
      "zh-cn",
      "zh-tw"
    ];
    function Gj(e, t, n) {
      const i = e.toLowerCase(), a = /^([a-z]+)(?:[_-]([a-z]+))?$/.exec(i);
      if (!a) {
        n && n.push(nc(p.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1, "en", "ja-jp"));
        return;
      }
      const o = a[1], c = a[2];
      Gi(pZ, i) && !_(o, c, n) && _(o, void 0, n), bQ(e);
      function _(u, d, g) {
        let h = jn(Xn(us(t.getExecutingFilePath())), u);
        if (d && (h = h + "-" + d), h = t.resolvePath(jn(h, "diagnosticMessages.generated.json")), !t.fileExists(h)) return !1;
        let S = "";
        try {
          S = t.readFile(h);
        } catch {
          return g && g.push(nc(p.Unable_to_open_file_0, h)), !1;
        }
        try {
          wee(JSON.parse(S));
        } catch {
          return g && g.push(nc(p.Corrupted_locale_file_0, h)), !1;
        }
        return !0;
      }
    }
    function rc(e, t) {
      if (e) for (; e.original !== void 0; ) e = e.original;
      return !e || !t || t(e) ? e : void 0;
    }
    function cr(e, t) {
      for (; e; ) {
        const n = t(e);
        if (n === "quit") return;
        if (n) return e;
        e = e.parent;
      }
    }
    function W4(e) {
      return (e.flags & 16) === 0;
    }
    function Ca(e, t) {
      if (e === void 0 || W4(e)) return e;
      for (e = e.original; e; ) {
        if (W4(e)) return !t || t(e) ? e : void 0;
        e = e.original;
      }
    }
    function mc(e) {
      return e.length >= 2 && e.charCodeAt(0) === 95 && e.charCodeAt(1) === 95 ? "_" + e : e;
    }
    function Ti(e) {
      const t = e;
      return t.length >= 3 && t.charCodeAt(0) === 95 && t.charCodeAt(1) === 95 && t.charCodeAt(2) === 95 ? t.substr(1) : t;
    }
    function On(e) {
      return Ti(e.escapedText);
    }
    function lS(e) {
      const t = oS(e.escapedText);
      return t ? qn(t, z_) : void 0;
    }
    function kc(e) {
      return e.valueDeclaration && qu(e.valueDeclaration) ? On(e.valueDeclaration.name) : Ti(e.escapedName);
    }
    function fhe(e) {
      const t = e.parent.parent;
      if (t) {
        if (Jl(t)) return Hj(t);
        switch (t.kind) {
          case 244:
            if (t.declarationList && t.declarationList.declarations[0]) return Hj(t.declarationList.declarations[0]);
            break;
          case 245:
            let n = t.expression;
            switch (n.kind === 227 && n.operatorToken.kind === 64 && (n = n.left), n.kind) {
              case 212:
                return n.name;
              case 213:
                const i = n.argumentExpression;
                if (Fe(i)) return i;
            }
            break;
          case 218:
            return Hj(t.expression);
          case 257:
            if (Jl(t.statement) || dt(t.statement)) return Hj(t.statement);
            break;
        }
      }
    }
    function Hj(e) {
      const t = va(e);
      return t && Fe(t) ? t : void 0;
    }
    function E3(e, t) {
      return !!(Bl(e) && Fe(e.name) && On(e.name) === On(t) || $c(e) && _t(e.declarationList.declarations, (n) => E3(n, t)));
    }
    function dZ(e) {
      return e.name || fhe(e);
    }
    function Bl(e) {
      return !!e.name;
    }
    function W7(e) {
      switch (e.kind) {
        case 80:
          return e;
        case 349:
        case 342: {
          const { name: n } = e;
          if (n.kind === 167) return n.right;
          break;
        }
        case 214:
        case 227: {
          const n = e;
          switch (qc(n)) {
            case 1:
            case 4:
            case 5:
            case 3:
              return R5(n.left);
            case 7:
            case 8:
            case 9:
              return n.arguments[1];
            default:
              return;
          }
        }
        case 347:
          return dZ(e);
        case 341:
          return fhe(e);
        case 278: {
          const { expression: n } = e;
          return Fe(n) ? n : void 0;
        }
        case 213:
          const t = e;
          if (M5(t)) return t.argumentExpression;
      }
      return e.name;
    }
    function va(e) {
      if (e !== void 0)
        return W7(e) || (Lo(e) || Bo(e) || Hc(e) ? U7(e) : void 0);
    }
    function U7(e) {
      if (e.parent) {
        if (ol(e.parent) || Ns(e.parent)) return e.parent.name;
        if (un(e.parent) && e === e.parent.right) {
          if (Fe(e.parent.left)) return e.parent.left;
          if (jo(e.parent.left)) return R5(e.parent.left);
        } else if (ci(e.parent) && Fe(e.parent.name)) return e.parent.name;
      } else return;
    }
    function My(e) {
      if (tp(e)) return dn(e.modifiers, pl);
    }
    function kb(e) {
      if (Qn(e, 98303)) return dn(e.modifiers, hs);
    }
    function phe(e, t) {
      if (e.name) if (Fe(e.name)) {
        const n = e.name.escapedText;
        return q7(e.parent, t).filter((i) => np(i) && Fe(i.name) && i.name.escapedText === n);
      } else {
        const n = e.parent.parameters.indexOf(e);
        E.assert(n > -1, "Parameters should always be in their parents' parameter list");
        const i = q7(e.parent, t).filter(np);
        if (n < i.length) return [i[n]];
      }
      return Te;
    }
    function HC(e) {
      return phe(e, !1);
    }
    function mZ(e) {
      return phe(e, !0);
    }
    function dhe(e, t) {
      const n = e.name.escapedText;
      return q7(e.parent, t).filter((i) => ed(i) && i.typeParameters.some((a) => a.name.escapedText === n));
    }
    function gZ(e) {
      return dhe(e, !1);
    }
    function hZ(e) {
      return dhe(e, !0);
    }
    function yZ(e) {
      return !!qp(e, np);
    }
    function vZ(e) {
      return qp(e, yk);
    }
    function bZ(e) {
      return G7(e, sF);
    }
    function $j(e) {
      return qp(e, ire);
    }
    function mhe(e) {
      return qp(e, Bz);
    }
    function SZ(e) {
      return qp(e, Bz, !0);
    }
    function ghe(e) {
      return qp(e, Jz);
    }
    function TZ(e) {
      return qp(e, Jz, !0);
    }
    function hhe(e) {
      return qp(e, zz);
    }
    function xZ(e) {
      return qp(e, zz, !0);
    }
    function yhe(e) {
      return qp(e, Wz);
    }
    function kZ(e) {
      return qp(e, Wz, !0);
    }
    function CZ(e) {
      return qp(e, iF, !0);
    }
    function Xj(e) {
      return qp(e, Uz);
    }
    function EZ(e) {
      return qp(e, Uz, !0);
    }
    function Qj(e) {
      return qp(e, lN);
    }
    function V7(e) {
      return qp(e, Vz);
    }
    function DZ(e) {
      return qp(e, aF);
    }
    function vhe(e) {
      return qp(e, ed);
    }
    function Yj(e) {
      return qp(e, oF);
    }
    function iv(e) {
      const t = qp(e, ow);
      if (t && t.typeExpression && t.typeExpression.type) return t;
    }
    function k0(e) {
      let t = qp(e, ow);
      return !t && Fi(e) && (t = xr(HC(e), (n) => !!n.typeExpression)), t && t.typeExpression && t.typeExpression.type;
    }
    function D3(e) {
      const t = DZ(e);
      if (t && t.typeExpression) return t.typeExpression.type;
      const n = iv(e);
      if (n && n.typeExpression) {
        const i = n.typeExpression.type;
        if (C_(i)) {
          const a = xr(i.members, uk);
          return a && a.type;
        }
        if (mg(i) || R6(i)) return i.type;
      }
    }
    function q7(e, t) {
      var n;
      if (!dA(e)) return Te;
      let i = (n = e.jsDoc) == null ? void 0 : n.jsDocCache;
      if (i === void 0 || t) {
        const a = HB(e, t);
        E.assert(a.length < 2 || a[0] !== a[1]), i = ks(a, (o) => Hd(o) ? o.tags : o), t || (e.jsDoc ?? (e.jsDoc = []), e.jsDoc.jsDocCache = i);
      }
      return i;
    }
    function av(e) {
      return q7(e, !1);
    }
    function qp(e, t, n) {
      return xr(q7(e, n), t);
    }
    function G7(e, t) {
      return av(e).filter(t);
    }
    function bhe(e, t) {
      return av(e).filter((n) => n.kind === t);
    }
    function w3(e) {
      return typeof e == "string" ? e : e?.map((t) => t.kind === 322 ? t.text : aFe(t)).join("");
    }
    function aFe(e) {
      return `{@${e.kind === 325 ? "link" : e.kind === 326 ? "linkcode" : "linkplain"} ${e.name ? mf(e.name) : ""}${e.name && (e.text === "" || e.text.startsWith("://")) ? "" : " "}${e.text}}`;
    }
    function Ry(e) {
      if (z0(e)) {
        if (j6(e.parent)) {
          const t = _6(e.parent);
          if (t && It(t.tags)) return ks(t.tags, (n) => ed(n) ? n.typeParameters : void 0);
        }
        return Te;
      }
      if ($p(e))
        return E.assert(e.parent.kind === 321), ks(e.parent.tags, (t) => ed(t) ? t.typeParameters : void 0);
      if (e.typeParameters || gre(e) && e.typeParameters) return e.typeParameters;
      if (rn(e)) {
        const t = K5(e);
        if (t.length) return t;
        const n = k0(e);
        if (n && mg(n) && n.typeParameters) return n.typeParameters;
      }
      return Te;
    }
    function $C(e) {
      return e.constraint ? e.constraint : ed(e.parent) && e === e.parent.typeParameters[0] ? e.parent.constraint : void 0;
    }
    function Jg(e) {
      return e.kind === 80 || e.kind === 81;
    }
    function P3(e) {
      return e.kind === 179 || e.kind === 178;
    }
    function H7(e) {
      return Ln(e) && !!(e.flags & 64);
    }
    function Zj(e) {
      return Po(e) && !!(e.flags & 64);
    }
    function uS(e) {
      return za(e) && !!(e.flags & 64);
    }
    function Vu(e) {
      const t = e.kind;
      return !!(e.flags & 64) && (t === 212 || t === 213 || t === 214 || t === 236);
    }
    function U4(e) {
      return Vu(e) && !mk(e) && !!e.questionDotToken;
    }
    function $7(e) {
      return U4(e.parent) && e.parent.expression === e;
    }
    function V4(e) {
      return !Vu(e.parent) || U4(e.parent) || e !== e.parent.expression;
    }
    function Kj(e) {
      return e.kind === 227 && e.operatorToken.kind === 61;
    }
    function _d(e) {
      return xf(e) && Fe(e.typeName) && e.typeName.escapedText === "const" && !e.typeArguments;
    }
    function fd(e) {
      return Ic(e, 8);
    }
    function X7(e) {
      return mk(e) && !!(e.flags & 64);
    }
    function q4(e) {
      return e.kind === 253 || e.kind === 252;
    }
    function eB(e) {
      return e.kind === 281 || e.kind === 280;
    }
    function G4(e) {
      return e.kind === 349 || e.kind === 342;
    }
    function Q7(e) {
      return e >= 167;
    }
    function tB(e) {
      return e >= 0 && e <= 166;
    }
    function Tx(e) {
      return tB(e.kind);
    }
    function Cb(e) {
      return po(e, "pos") && po(e, "end");
    }
    function H4(e) {
      return 9 <= e && e <= 15;
    }
    function _S(e) {
      return H4(e.kind);
    }
    function rB(e) {
      switch (e.kind) {
        case 211:
        case 210:
        case 14:
        case 219:
        case 232:
          return !0;
      }
      return !1;
    }
    function jy(e) {
      return 15 <= e && e <= 18;
    }
    function wZ(e) {
      return jy(e.kind);
    }
    function Y7(e) {
      const t = e.kind;
      return t === 17 || t === 18;
    }
    function By(e) {
      return p_(e) || $u(e);
    }
    function XC(e) {
      switch (e.kind) {
        case 277:
          return e.isTypeOnly || e.parent.parent.phaseModifier === 156;
        case 275:
          return e.parent.phaseModifier === 156;
        case 274:
          return e.phaseModifier === 156;
        case 272:
          return e.isTypeOnly;
      }
      return !1;
    }
    function PZ(e) {
      switch (e.kind) {
        case 282:
          return e.isTypeOnly || e.parent.parent.isTypeOnly;
        case 279:
          return e.isTypeOnly && !!e.moduleSpecifier && !e.exportClause;
        case 281:
          return e.parent.isTypeOnly;
      }
      return !1;
    }
    function C0(e) {
      return XC(e) || PZ(e);
    }
    function AZ(e) {
      return cr(e, C0) !== void 0;
    }
    function nB(e) {
      return e.kind === 11 || jy(e.kind);
    }
    function NZ(e) {
      return Ts(e) || Fe(e);
    }
    function Ko(e) {
      var t;
      return Fe(e) && ((t = e.emitNode) == null ? void 0 : t.autoGenerate) !== void 0;
    }
    function fS(e) {
      var t;
      return Oi(e) && ((t = e.emitNode) == null ? void 0 : t.autoGenerate) !== void 0;
    }
    function A3(e) {
      const t = e.emitNode.autoGenerate.flags;
      return !!(t & 32) && !!(t & 16) && !!(t & 8);
    }
    function qu(e) {
      return (ga(e) || kx(e)) && Oi(e.name);
    }
    function QC(e) {
      return Ln(e) && Oi(e.name);
    }
    function Jy(e) {
      switch (e) {
        case 128:
        case 129:
        case 134:
        case 87:
        case 138:
        case 90:
        case 95:
        case 103:
        case 125:
        case 123:
        case 124:
        case 148:
        case 126:
        case 147:
        case 164:
          return !0;
      }
      return !1;
    }
    function $4(e) {
      return !!(Ux(e) & 31);
    }
    function iB(e) {
      return $4(e) || e === 126 || e === 164 || e === 129;
    }
    function hs(e) {
      return Jy(e.kind);
    }
    function S_(e) {
      const t = e.kind;
      return t === 167 || t === 80;
    }
    function il(e) {
      const t = e.kind;
      return t === 80 || t === 81 || t === 11 || t === 9 || t === 168;
    }
    function pS(e) {
      const t = e.kind;
      return t === 80 || t === 207 || t === 208;
    }
    function Ra(e) {
      return !!e && xx(e.kind);
    }
    function YC(e) {
      return !!e && (xx(e.kind) || Bc(e));
    }
    function So(e) {
      return e && She(e.kind);
    }
    function X4(e) {
      return e.kind === 112 || e.kind === 97;
    }
    function She(e) {
      switch (e) {
        case 263:
        case 175:
        case 177:
        case 178:
        case 179:
        case 219:
        case 220:
          return !0;
        default:
          return !1;
      }
    }
    function xx(e) {
      switch (e) {
        case 174:
        case 180:
        case 324:
        case 181:
        case 182:
        case 185:
        case 318:
        case 186:
          return !0;
        default:
          return She(e);
      }
    }
    function aB(e) {
      return Pi(e) || Vd(e) || Wa(e) && Ra(e.parent);
    }
    function al(e) {
      const t = e.kind;
      return t === 177 || t === 173 || t === 175 || t === 178 || t === 179 || t === 182 || t === 176 || t === 241;
    }
    function Zn(e) {
      return e && (e.kind === 264 || e.kind === 232);
    }
    function zy(e) {
      return e && (e.kind === 178 || e.kind === 179);
    }
    function R_(e) {
      return ga(e) && km(e);
    }
    function IZ(e) {
      return rn(e) && rk(e) ? (!Ob(e) || !Ky(e.expression)) && !SS(e, !0) : e.parent && Zn(e.parent) && ga(e) && !km(e);
    }
    function kx(e) {
      switch (e.kind) {
        case 175:
        case 178:
        case 179:
          return !0;
        default:
          return !1;
      }
    }
    function ec(e) {
      return hs(e) || pl(e);
    }
    function Eb(e) {
      const t = e.kind;
      return t === 181 || t === 180 || t === 172 || t === 174 || t === 182 || t === 178 || t === 179 || t === 355;
    }
    function Z7(e) {
      return Eb(e) || al(e);
    }
    function zg(e) {
      const t = e.kind;
      return t === 304 || t === 305 || t === 306 || t === 175 || t === 178 || t === 179;
    }
    function ui(e) {
      return MJ(e.kind);
    }
    function OZ(e) {
      switch (e.kind) {
        case 185:
        case 186:
          return !0;
      }
      return !1;
    }
    function Ja(e) {
      if (e) {
        const t = e.kind;
        return t === 208 || t === 207;
      }
      return !1;
    }
    function Q4(e) {
      const t = e.kind;
      return t === 210 || t === 211;
    }
    function K7(e) {
      const t = e.kind;
      return t === 209 || t === 233;
    }
    function N3(e) {
      switch (e.kind) {
        case 261:
        case 170:
        case 209:
          return !0;
      }
      return !1;
    }
    function FZ(e) {
      return ci(e) || Fi(e) || O3(e) || F3(e);
    }
    function I3(e) {
      return sB(e) || oB(e);
    }
    function sB(e) {
      switch (e.kind) {
        case 207:
        case 211:
          return !0;
      }
      return !1;
    }
    function O3(e) {
      switch (e.kind) {
        case 209:
        case 304:
        case 305:
        case 306:
          return !0;
      }
      return !1;
    }
    function oB(e) {
      switch (e.kind) {
        case 208:
        case 210:
          return !0;
      }
      return !1;
    }
    function F3(e) {
      switch (e.kind) {
        case 209:
        case 233:
        case 231:
        case 210:
        case 211:
        case 80:
        case 212:
        case 213:
          return !0;
      }
      return Hl(e, !0);
    }
    function LZ(e) {
      const t = e.kind;
      return t === 212 || t === 167 || t === 206;
    }
    function L3(e) {
      const t = e.kind;
      return t === 212 || t === 167;
    }
    function cB(e) {
      return Wy(e) || r1(e);
    }
    function Wy(e) {
      switch (e.kind) {
        case 214:
        case 215:
        case 216:
        case 171:
        case 287:
        case 286:
        case 290:
          return !0;
        case 227:
          return e.operatorToken.kind === 104;
        default:
          return !1;
      }
    }
    function ym(e) {
      return e.kind === 214 || e.kind === 215;
    }
    function Cx(e) {
      const t = e.kind;
      return t === 229 || t === 15;
    }
    function j_(e) {
      return The(fd(e).kind);
    }
    function The(e) {
      switch (e) {
        case 212:
        case 213:
        case 215:
        case 214:
        case 285:
        case 286:
        case 289:
        case 216:
        case 210:
        case 218:
        case 211:
        case 232:
        case 219:
        case 80:
        case 81:
        case 14:
        case 9:
        case 10:
        case 11:
        case 15:
        case 229:
        case 97:
        case 106:
        case 110:
        case 112:
        case 108:
        case 236:
        case 234:
        case 237:
        case 102:
        case 283:
          return !0;
        default:
          return !1;
      }
    }
    function lB(e) {
      return xhe(fd(e).kind);
    }
    function xhe(e) {
      switch (e) {
        case 225:
        case 226:
        case 221:
        case 222:
        case 223:
        case 224:
        case 217:
          return !0;
        default:
          return The(e);
      }
    }
    function MZ(e) {
      switch (e.kind) {
        case 226:
          return !0;
        case 225:
          return e.operator === 46 || e.operator === 47;
        default:
          return !1;
      }
    }
    function RZ(e) {
      switch (e.kind) {
        case 106:
        case 112:
        case 97:
        case 225:
          return !0;
        default:
          return _S(e);
      }
    }
    function dt(e) {
      return sFe(fd(e).kind);
    }
    function sFe(e) {
      switch (e) {
        case 228:
        case 230:
        case 220:
        case 227:
        case 231:
        case 235:
        case 233:
        case 357:
        case 356:
        case 239:
          return !0;
        default:
          return xhe(e);
      }
    }
    function Db(e) {
      const t = e.kind;
      return t === 217 || t === 235;
    }
    function Uy(e, t) {
      switch (e.kind) {
        case 249:
        case 250:
        case 251:
        case 247:
        case 248:
          return !0;
        case 257:
          return t && Uy(e.statement, t);
      }
      return !1;
    }
    function oFe(e) {
      return Xo(e) || tl(e);
    }
    function jZ(e) {
      return _t(e, oFe);
    }
    function e5(e) {
      return !q3(e) && !Xo(e) && !Qn(e, 32) && !o_(e);
    }
    function M3(e) {
      return q3(e) || Xo(e) || Qn(e, 32);
    }
    function wb(e) {
      return e.kind === 250 || e.kind === 251;
    }
    function t5(e) {
      return Wa(e) || dt(e);
    }
    function uB(e) {
      return Wa(e);
    }
    function bp(e) {
      return iu(e) || dt(e);
    }
    function BZ(e) {
      const t = e.kind;
      return t === 269 || t === 268 || t === 80;
    }
    function khe(e) {
      const t = e.kind;
      return t === 269 || t === 268;
    }
    function Che(e) {
      const t = e.kind;
      return t === 80 || t === 268;
    }
    function _B(e) {
      const t = e.kind;
      return t === 276 || t === 275;
    }
    function R3(e) {
      return e.kind === 268 || e.kind === 267;
    }
    function jd(e) {
      switch (e.kind) {
        case 220:
        case 227:
        case 209:
        case 214:
        case 180:
        case 264:
        case 232:
        case 176:
        case 177:
        case 186:
        case 181:
        case 213:
        case 267:
        case 307:
        case 278:
        case 279:
        case 282:
        case 263:
        case 219:
        case 185:
        case 178:
        case 80:
        case 274:
        case 272:
        case 277:
        case 182:
        case 265:
        case 339:
        case 341:
        case 318:
        case 342:
        case 349:
        case 324:
        case 347:
        case 323:
        case 292:
        case 293:
        case 294:
        case 201:
        case 175:
        case 174:
        case 268:
        case 203:
        case 281:
        case 271:
        case 275:
        case 215:
        case 15:
        case 9:
        case 211:
        case 170:
        case 212:
        case 304:
        case 173:
        case 172:
        case 179:
        case 305:
        case 308:
        case 306:
        case 11:
        case 266:
        case 188:
        case 169:
        case 261:
          return !0;
        default:
          return !1;
      }
    }
    function og(e) {
      switch (e.kind) {
        case 220:
        case 242:
        case 180:
        case 270:
        case 300:
        case 176:
        case 195:
        case 177:
        case 186:
        case 181:
        case 249:
        case 250:
        case 251:
        case 263:
        case 219:
        case 185:
        case 178:
        case 182:
        case 339:
        case 341:
        case 318:
        case 324:
        case 347:
        case 201:
        case 175:
        case 174:
        case 268:
        case 179:
        case 308:
        case 266:
          return !0;
        default:
          return !1;
      }
    }
    function cFe(e) {
      return e === 220 || e === 209 || e === 264 || e === 232 || e === 176 || e === 177 || e === 267 || e === 307 || e === 282 || e === 263 || e === 219 || e === 178 || e === 274 || e === 272 || e === 277 || e === 265 || e === 292 || e === 175 || e === 174 || e === 268 || e === 271 || e === 275 || e === 281 || e === 170 || e === 304 || e === 173 || e === 172 || e === 179 || e === 305 || e === 266 || e === 169 || e === 261 || e === 347 || e === 339 || e === 349 || e === 203;
    }
    function JZ(e) {
      return e === 263 || e === 283 || e === 264 || e === 265 || e === 266 || e === 267 || e === 268 || e === 273 || e === 272 || e === 279 || e === 278 || e === 271;
    }
    function zZ(e) {
      return e === 253 || e === 252 || e === 260 || e === 247 || e === 245 || e === 243 || e === 250 || e === 251 || e === 249 || e === 246 || e === 257 || e === 254 || e === 256 || e === 258 || e === 259 || e === 244 || e === 248 || e === 255 || e === 354;
    }
    function Jl(e) {
      return e.kind === 169 ? e.parent && e.parent.kind !== 346 || rn(e) : cFe(e.kind);
    }
    function WZ(e) {
      return JZ(e.kind);
    }
    function r5(e) {
      return zZ(e.kind);
    }
    function Ei(e) {
      const t = e.kind;
      return zZ(t) || JZ(t) || lFe(e);
    }
    function lFe(e) {
      return e.kind !== 242 || e.parent !== void 0 && (e.parent.kind === 259 || e.parent.kind === 300) ? !1 : !Ib(e);
    }
    function UZ(e) {
      const t = e.kind;
      return zZ(t) || JZ(t) || t === 242;
    }
    function VZ(e) {
      const t = e.kind;
      return t === 284 || t === 167 || t === 80;
    }
    function Y4(e) {
      const t = e.kind;
      return t === 110 || t === 80 || t === 212 || t === 296;
    }
    function j3(e) {
      const t = e.kind;
      return t === 285 || t === 295 || t === 286 || t === 12 || t === 289;
    }
    function n5(e) {
      const t = e.kind;
      return t === 292 || t === 294;
    }
    function qZ(e) {
      const t = e.kind;
      return t === 11 || t === 295;
    }
    function Gu(e) {
      const t = e.kind;
      return t === 287 || t === 286;
    }
    function GZ(e) {
      const t = e.kind;
      return t === 287 || t === 286 || t === 290;
    }
    function B3(e) {
      const t = e.kind;
      return t === 297 || t === 298;
    }
    function ZC(e) {
      return e.kind >= 310 && e.kind <= 352;
    }
    function i5(e) {
      return e.kind === 321 || e.kind === 320 || e.kind === 322 || Ex(e) || KC(e) || zS(e) || z0(e);
    }
    function KC(e) {
      return e.kind >= 328 && e.kind <= 352;
    }
    function vm(e) {
      return e.kind === 179;
    }
    function Wg(e) {
      return e.kind === 178;
    }
    function Jf(e) {
      if (!dA(e)) return !1;
      const { jsDoc: t } = e;
      return !!t && t.length > 0;
    }
    function a5(e) {
      return !!e.type;
    }
    function E0(e) {
      return !!e.initializer;
    }
    function dS(e) {
      switch (e.kind) {
        case 261:
        case 170:
        case 209:
        case 173:
        case 304:
        case 307:
          return !0;
        default:
          return !1;
      }
    }
    function fB(e) {
      return e.kind === 292 || e.kind === 294 || zg(e);
    }
    function pB(e) {
      return e.kind === 184 || e.kind === 234;
    }
    var Ehe = 1073741823;
    function HZ(e) {
      let t = Ehe;
      for (const n of e) {
        if (!n.length) continue;
        let i = 0;
        for (; i < n.length && i < t && Rg(n.charCodeAt(i)); i++) ;
        if (i < t && (t = i), t === 0) return 0;
      }
      return t === Ehe ? void 0 : t;
    }
    function Xs(e) {
      return e.kind === 11 || e.kind === 15;
    }
    function Ex(e) {
      return e.kind === 325 || e.kind === 326 || e.kind === 327;
    }
    function dB(e) {
      const t = Wo(e.parameters);
      return !!t && cg(t);
    }
    function cg(e) {
      const t = np(e) ? e.typeExpression && e.typeExpression.type : e.type;
      return e.dotDotDotToken !== void 0 || !!t && t.kind === 319;
    }
    function Dhe(e, t) {
      return t.text.substring(e.pos, e.end).includes("@internal");
    }
    function $Z(e, t) {
      t ?? (t = Sr(e));
      const n = Ca(e);
      if (n && n.kind === 170) {
        const i = n.parent.parameters.indexOf(n), a = i > 0 ? n.parent.parameters[i - 1] : void 0, o = t.text, c = a ? zi(Ly(o, gs(o, a.end + 1, !1, !0)), jg(o, e.pos)) : Ly(o, gs(o, e.pos, !1, !0));
        return _t(c) && Dhe(ws(c), t);
      }
      return !!bt(n && LB(n, t), (i) => Dhe(i, t));
    }
    var mB = [], Vy = "tslib", Z4 = 160, gB = 1e6, XZ = 500;
    function Ho(e, t) {
      const n = e.declarations;
      if (n) {
        for (const i of n) if (i.kind === t) return i;
      }
    }
    function QZ(e, t) {
      return dn(e.declarations || Te, (n) => n.kind === t);
    }
    function Ka(e) {
      const t = /* @__PURE__ */ new Map();
      if (e) for (const n of e) t.set(n.escapedName, n);
      return t;
    }
    function Ug(e) {
      return (e.flags & 33554432) !== 0;
    }
    function Dx(e) {
      return !!(e.flags & 1536) && e.escapedName.charCodeAt(0) === 34;
    }
    var s5 = uFe();
    function uFe() {
      var e = "";
      const t = (n) => e += n;
      return {
        getText: () => e,
        write: t,
        rawWrite: t,
        writeKeyword: t,
        writeOperator: t,
        writePunctuation: t,
        writeSpace: t,
        writeStringLiteral: t,
        writeLiteral: t,
        writeParameter: t,
        writeProperty: t,
        writeSymbol: (n, i) => t(n),
        writeTrailingSemicolon: t,
        writeComment: t,
        getTextPos: () => e.length,
        getLine: () => 0,
        getColumn: () => 0,
        getIndent: () => 0,
        isAtStartOfLine: () => !1,
        hasTrailingComment: () => !1,
        hasTrailingWhitespace: () => !!e.length && Rg(e.charCodeAt(e.length - 1)),
        writeLine: () => e += " ",
        increaseIndent: so,
        decreaseIndent: so,
        clear: () => e = ""
      };
    }
    function o5(e, t) {
      return e.configFilePath !== t.configFilePath || _Fe(e, t);
    }
    function _Fe(e, t) {
      return wx(e, t, _W);
    }
    function YZ(e, t) {
      return wx(e, t, jre);
    }
    function wx(e, t, n) {
      return e !== t && n.some((i) => !wO(gO(e, i), gO(t, i)));
    }
    function ZZ(e, t) {
      for (; ; ) {
        const n = t(e);
        if (n === "quit") return;
        if (n !== void 0) return n;
        if (Pi(e)) return;
        e = e.parent;
      }
    }
    function Dl(e, t) {
      const n = e.entries();
      for (const [i, a] of n) {
        const o = t(a, i);
        if (o) return o;
      }
    }
    function Vg(e, t) {
      const n = e.keys();
      for (const i of n) {
        const a = t(i);
        if (a) return a;
      }
    }
    function c5(e, t) {
      e.forEach((n, i) => {
        t.set(i, n);
      });
    }
    function e6(e) {
      const t = s5.getText();
      try {
        return e(s5), s5.getText();
      } finally {
        s5.clear(), s5.writeKeyword(t);
      }
    }
    function J3(e) {
      return e.end - e.pos;
    }
    function hB(e, t) {
      return e.path === t.path && !e.prepend == !t.prepend && !e.circular == !t.circular;
    }
    function KZ(e, t) {
      return e === t || e.resolvedModule === t.resolvedModule || !!e.resolvedModule && !!t.resolvedModule && e.resolvedModule.isExternalLibraryImport === t.resolvedModule.isExternalLibraryImport && e.resolvedModule.extension === t.resolvedModule.extension && e.resolvedModule.resolvedFileName === t.resolvedModule.resolvedFileName && e.resolvedModule.originalPath === t.resolvedModule.originalPath && fFe(e.resolvedModule.packageId, t.resolvedModule.packageId) && e.alternateResult === t.alternateResult;
    }
    function Px(e) {
      return e.resolvedModule;
    }
    function l5(e) {
      return e.resolvedTypeReferenceDirective;
    }
    function u5(e, t, n, i, a) {
      var o;
      const c = (o = t.getResolvedModule(e, n, i)) == null ? void 0 : o.alternateResult, _ = c && (Hu(t.getCompilerOptions()) === 2 ? [p.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler, [c]] : [p.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings, [c, c.includes(ah + "@types/") ? `@types/${Q6(a)}` : a]]), u = _ ? ba(void 0, _[0], ..._[1]) : t.typesPackageExists(a) ? ba(void 0, p.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1, a, Q6(a)) : t.packageBundlesTypes(a) ? ba(void 0, p.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1, a, n) : ba(void 0, p.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0, n, Q6(a));
      return u && (u.repopulateInfo = () => ({
        moduleReference: n,
        mode: i,
        packageName: a === n ? void 0 : a
      })), u;
    }
    function yB(e) {
      const t = Kg(e.fileName), n = e.packageJsonScope, i = t === ".ts" ? ".mts" : t === ".js" ? ".mjs" : void 0, a = n && !n.contents.packageJsonContent.type ? i ? ba(void 0, p.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1, i, jn(n.packageDirectory, "package.json")) : ba(void 0, p.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0, jn(n.packageDirectory, "package.json")) : i ? ba(void 0, p.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module, i) : ba(void 0, p.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module);
      return a.repopulateInfo = () => !0, a;
    }
    function fFe(e, t) {
      return e === t || !!e && !!t && e.name === t.name && e.subModuleName === t.subModuleName && e.version === t.version && e.peerDependencies === t.peerDependencies;
    }
    function _5({ name: e, subModuleName: t }) {
      return t ? `${e}/${t}` : e;
    }
    function sv(e) {
      return `${_5(e)}@${e.version}${e.peerDependencies ?? ""}`;
    }
    function eK(e, t) {
      return e === t || e.resolvedTypeReferenceDirective === t.resolvedTypeReferenceDirective || !!e.resolvedTypeReferenceDirective && !!t.resolvedTypeReferenceDirective && e.resolvedTypeReferenceDirective.resolvedFileName === t.resolvedTypeReferenceDirective.resolvedFileName && !!e.resolvedTypeReferenceDirective.primary == !!t.resolvedTypeReferenceDirective.primary && e.resolvedTypeReferenceDirective.originalPath === t.resolvedTypeReferenceDirective.originalPath;
    }
    function vB(e, t, n, i) {
      E.assert(e.length === t.length);
      for (let a = 0; a < e.length; a++) {
        const o = t[a], c = e[a], _ = n(c);
        if (_ ? !o || !i(_, o) : o) return !0;
      }
      return !1;
    }
    function Ax(e) {
      return pFe(e), (e.flags & 1048576) !== 0;
    }
    function pFe(e) {
      e.flags & 2097152 || (((e.flags & 262144) !== 0 || Fa(e, Ax)) && (e.flags |= 1048576), e.flags |= 2097152);
    }
    function Sr(e) {
      for (; e && e.kind !== 308; ) e = e.parent;
      return e;
    }
    function z3(e) {
      return Sr(e.valueDeclaration || wB(e));
    }
    function K4(e, t) {
      return !!e && (e.scriptKind === 1 || e.scriptKind === 2) && !e.checkJsDirective && t === void 0;
    }
    function tK(e) {
      switch (e.kind) {
        case 242:
        case 270:
        case 249:
        case 250:
        case 251:
          return !0;
      }
      return !1;
    }
    function qy(e, t) {
      return E.assert(e >= 0), Mg(t)[e];
    }
    function whe(e) {
      const t = Sr(e), n = Za(t, e.pos);
      return `${t.fileName}(${n.line + 1},${n.character + 1})`;
    }
    function W3(e, t) {
      E.assert(e >= 0);
      const n = Mg(t), i = e, a = t.text;
      if (i + 1 === n.length) return a.length - 1;
      {
        const o = n[i];
        let c = n[i + 1] - 1;
        for (E.assert(Uu(a.charCodeAt(c))); o <= c && Uu(a.charCodeAt(c)); ) c--;
        return c;
      }
    }
    function f5(e, t, n) {
      return !(n && n(t)) && !e.identifiers.has(t);
    }
    function Nc(e) {
      return e === void 0 ? !0 : e.pos === e.end && e.pos >= 0 && e.kind !== 1;
    }
    function Gp(e) {
      return !Nc(e);
    }
    function rK(e, t) {
      return $o(e) ? t === e.expression : Bc(e) ? t === e.modifiers : f_(e) ? t === e.initializer : ga(e) ? t === e.questionToken && R_(e) : ol(e) ? t === e.modifiers || t === e.questionToken || t === e.exclamationToken || U3(e.modifiers, t, ec) : Nu(e) ? t === e.equalsToken || t === e.modifiers || t === e.questionToken || t === e.exclamationToken || U3(e.modifiers, t, ec) : hc(e) ? t === e.exclamationToken : yc(e) ? t === e.typeParameters || t === e.type || U3(e.typeParameters, t, $o) : Dp(e) ? t === e.typeParameters || U3(e.typeParameters, t, $o) : ef(e) ? t === e.typeParameters || t === e.type || U3(e.typeParameters, t, $o) : cN(e) ? t === e.modifiers || U3(e.modifiers, t, ec) : !1;
    }
    function U3(e, t, n) {
      return !e || da(t) || !n(t) ? !1 : Gi(e, t);
    }
    function Phe(e, t, n) {
      if (t === void 0 || t.length === 0) return e;
      let i = 0;
      for (; i < e.length && n(e[i]); ++i) ;
      return e.splice(i, 0, ...t), e;
    }
    function Ahe(e, t, n) {
      if (t === void 0) return e;
      let i = 0;
      for (; i < e.length && n(e[i]); ++i) ;
      return e.splice(i, 0, t), e;
    }
    function Nhe(e) {
      return bm(e) || !!(Bs(e) & 2097152);
    }
    function qg(e, t) {
      return Phe(e, t, bm);
    }
    function bB(e, t) {
      return Phe(e, t, Nhe);
    }
    function Ihe(e, t) {
      return Ahe(e, t, bm);
    }
    function mS(e, t) {
      return Ahe(e, t, Nhe);
    }
    function SB(e, t, n) {
      if (e.charCodeAt(t + 1) === 47 && t + 2 < n && e.charCodeAt(t + 2) === 47) {
        const i = e.substring(t, n);
        return !!(TFe.test(i) || CFe.test(i) || EFe.test(i) || xFe.test(i) || kFe.test(i) || DFe.test(i));
      }
      return !1;
    }
    function p5(e, t) {
      return e.charCodeAt(t + 1) === 42 && e.charCodeAt(t + 2) === 33;
    }
    function nK(e, t) {
      const n = new Map(t.map((c) => [`${Za(e, c.range.end).line}`, c])), i = /* @__PURE__ */ new Map();
      return {
        getUnusedExpectations: a,
        markUsed: o
      };
      function a() {
        return ma(n.entries()).filter(([c, _]) => _.type === 0 && !i.get(c)).map(([c, _]) => _);
      }
      function o(c) {
        return n.has(`${c}`) ? (i.set(`${c}`, !0), !0) : !1;
      }
    }
    function ov(e, t, n) {
      if (Nc(e)) return e.pos;
      if (ZC(e) || e.kind === 12) return gs((t ?? Sr(e)).text, e.pos, !1, !0);
      if (n && Jf(e)) return ov(e.jsDoc[0], t);
      if (e.kind === 353) {
        t ?? (t = Sr(e));
        const i = ul(qz(e, t));
        if (i) return ov(i, t, n);
      }
      return gs((t ?? Sr(e)).text, e.pos, !1, !1, oD(e));
    }
    function TB(e, t) {
      const n = !Nc(e) && vd(e) ? Ya(e.modifiers, pl) : void 0;
      return n ? gs((t || Sr(e)).text, n.end) : ov(e, t);
    }
    function Pb(e, t, n = !1) {
      return eD(e.text, t, n);
    }
    function dFe(e) {
      return !!cr(e, wv);
    }
    function d5(e) {
      return !!(tl(e) && e.exportClause && gg(e.exportClause) && lg(e.exportClause.name));
    }
    function Gy(e) {
      return e.kind === 11 ? e.text : Ti(e.escapedText);
    }
    function Ab(e) {
      return e.kind === 11 ? mc(e.text) : e.escapedText;
    }
    function lg(e) {
      return (e.kind === 11 ? e.text : e.escapedText) === "default";
    }
    function eD(e, t, n = !1) {
      if (Nc(t)) return "";
      let i = e.substring(n ? t.pos : gs(e, t.pos), t.end);
      return dFe(t) && (i = i.split(/\r\n|\n|\r/).map((a) => a.replace(/^\s*\*/, "").trimStart()).join(`
`)), i;
    }
    function uc(e, t = !1) {
      return Pb(Sr(e), e, t);
    }
    function mFe(e) {
      return e.pos;
    }
    function t6(e, t) {
      return Lg(e, t, mFe, Fo);
    }
    function Bs(e) {
      const t = e.emitNode;
      return t && t.flags || 0;
    }
    function pd(e) {
      const t = e.emitNode;
      return t && t.internalFlags || 0;
    }
    var xB = /* @__PURE__ */ s_(() => new Map(Object.entries({
      Array: new Map(Object.entries({
        es2015: [
          "find",
          "findIndex",
          "fill",
          "copyWithin",
          "entries",
          "keys",
          "values"
        ],
        es2016: ["includes"],
        es2019: ["flat", "flatMap"],
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Iterator: new Map(Object.entries({ es2015: Te })),
      AsyncIterator: new Map(Object.entries({ es2015: Te })),
      ArrayBuffer: new Map(Object.entries({ es2024: [
        "maxByteLength",
        "resizable",
        "resize",
        "detached",
        "transfer",
        "transferToFixedLength"
      ] })),
      Atomics: new Map(Object.entries({
        es2017: [
          "add",
          "and",
          "compareExchange",
          "exchange",
          "isLockFree",
          "load",
          "or",
          "store",
          "sub",
          "wait",
          "notify",
          "xor"
        ],
        es2024: ["waitAsync"],
        esnext: ["pause"]
      })),
      SharedArrayBuffer: new Map(Object.entries({
        es2017: ["byteLength", "slice"],
        es2024: [
          "growable",
          "maxByteLength",
          "grow"
        ]
      })),
      AsyncIterable: new Map(Object.entries({ es2018: Te })),
      AsyncIterableIterator: new Map(Object.entries({ es2018: Te })),
      AsyncGenerator: new Map(Object.entries({ es2018: Te })),
      AsyncGeneratorFunction: new Map(Object.entries({ es2018: Te })),
      RegExp: new Map(Object.entries({
        es2015: [
          "flags",
          "sticky",
          "unicode"
        ],
        es2018: ["dotAll"],
        es2024: ["unicodeSets"]
      })),
      RegExpConstructor: new Map(Object.entries({ es2025: ["escape"] })),
      Reflect: new Map(Object.entries({ es2015: [
        "apply",
        "construct",
        "defineProperty",
        "deleteProperty",
        "get",
        "getOwnPropertyDescriptor",
        "getPrototypeOf",
        "has",
        "isExtensible",
        "ownKeys",
        "preventExtensions",
        "set",
        "setPrototypeOf"
      ] })),
      ArrayConstructor: new Map(Object.entries({
        es2015: ["from", "of"],
        esnext: ["fromAsync"]
      })),
      ObjectConstructor: new Map(Object.entries({
        es2015: [
          "assign",
          "getOwnPropertySymbols",
          "keys",
          "is",
          "setPrototypeOf"
        ],
        es2017: [
          "values",
          "entries",
          "getOwnPropertyDescriptors"
        ],
        es2019: ["fromEntries"],
        es2022: ["hasOwn"],
        es2024: ["groupBy"]
      })),
      NumberConstructor: new Map(Object.entries({ es2015: [
        "isFinite",
        "isInteger",
        "isNaN",
        "isSafeInteger",
        "parseFloat",
        "parseInt"
      ] })),
      Math: new Map(Object.entries({
        es2015: [
          "clz32",
          "imul",
          "sign",
          "log10",
          "log2",
          "log1p",
          "expm1",
          "cosh",
          "sinh",
          "tanh",
          "acosh",
          "asinh",
          "atanh",
          "hypot",
          "trunc",
          "fround",
          "cbrt"
        ],
        es2025: ["f16round"]
      })),
      Map: new Map(Object.entries({
        es2015: [
          "entries",
          "keys",
          "values"
        ],
        esnext: ["getOrInsert", "getOrInsertComputed"]
      })),
      MapConstructor: new Map(Object.entries({ es2024: ["groupBy"] })),
      Set: new Map(Object.entries({
        es2015: [
          "entries",
          "keys",
          "values"
        ],
        es2025: [
          "union",
          "intersection",
          "difference",
          "symmetricDifference",
          "isSubsetOf",
          "isSupersetOf",
          "isDisjointFrom"
        ]
      })),
      PromiseConstructor: new Map(Object.entries({
        es2015: [
          "all",
          "race",
          "reject",
          "resolve"
        ],
        es2020: ["allSettled"],
        es2021: ["any"],
        es2024: ["withResolvers"],
        es2025: ["try"]
      })),
      Symbol: new Map(Object.entries({
        es2015: ["for", "keyFor"],
        es2019: ["description"]
      })),
      WeakMap: new Map(Object.entries({
        es2015: [
          "entries",
          "keys",
          "values"
        ],
        esnext: ["getOrInsert", "getOrInsertComputed"]
      })),
      WeakSet: new Map(Object.entries({ es2015: [
        "entries",
        "keys",
        "values"
      ] })),
      String: new Map(Object.entries({
        es2015: [
          "codePointAt",
          "includes",
          "endsWith",
          "normalize",
          "repeat",
          "startsWith",
          "anchor",
          "big",
          "blink",
          "bold",
          "fixed",
          "fontcolor",
          "fontsize",
          "italics",
          "link",
          "small",
          "strike",
          "sub",
          "sup"
        ],
        es2017: ["padStart", "padEnd"],
        es2019: [
          "trimStart",
          "trimEnd",
          "trimLeft",
          "trimRight"
        ],
        es2020: ["matchAll"],
        es2021: ["replaceAll"],
        es2022: ["at"],
        es2024: ["isWellFormed", "toWellFormed"]
      })),
      StringConstructor: new Map(Object.entries({ es2015: ["fromCodePoint", "raw"] })),
      DateTimeFormat: new Map(Object.entries({ es2017: ["formatToParts"] })),
      Promise: new Map(Object.entries({
        es2015: Te,
        es2018: ["finally"]
      })),
      RegExpMatchArray: new Map(Object.entries({ es2018: ["groups"] })),
      RegExpExecArray: new Map(Object.entries({ es2018: ["groups"] })),
      Intl: new Map(Object.entries({
        es2018: ["PluralRules"],
        es2020: [
          "RelativeTimeFormat",
          "Locale",
          "DisplayNames"
        ],
        es2021: ["ListFormat", "DateTimeFormat"],
        es2022: ["Segmenter"],
        es2025: ["DurationFormat"]
      })),
      NumberFormat: new Map(Object.entries({ es2018: ["formatToParts"] })),
      SymbolConstructor: new Map(Object.entries({
        es2020: ["matchAll"],
        esnext: [
          "metadata",
          "dispose",
          "asyncDispose"
        ]
      })),
      DataView: new Map(Object.entries({
        es2020: [
          "setBigInt64",
          "setBigUint64",
          "getBigInt64",
          "getBigUint64"
        ],
        es2025: ["setFloat16", "getFloat16"]
      })),
      BigInt: new Map(Object.entries({ es2020: Te })),
      RelativeTimeFormat: new Map(Object.entries({ es2020: [
        "format",
        "formatToParts",
        "resolvedOptions"
      ] })),
      Int8Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Uint8Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ],
        esnext: [
          "toBase64",
          "setFromBase64",
          "toHex",
          "setFromHex"
        ]
      })),
      Uint8ClampedArray: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Int16Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Uint16Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Int32Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Uint32Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Float16Array: new Map(Object.entries({ es2025: Te })),
      Float32Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Float64Array: new Map(Object.entries({
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      BigInt64Array: new Map(Object.entries({
        es2020: Te,
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      BigUint64Array: new Map(Object.entries({
        es2020: Te,
        es2022: ["at"],
        es2023: [
          "findLastIndex",
          "findLast",
          "toReversed",
          "toSorted",
          "toSpliced",
          "with"
        ]
      })),
      Error: new Map(Object.entries({ es2022: ["cause"] })),
      ErrorConstructor: new Map(Object.entries({ esnext: ["isError"] })),
      Uint8ArrayConstructor: new Map(Object.entries({ esnext: ["fromBase64", "fromHex"] })),
      Date: new Map(Object.entries({ esnext: ["toTemporalInstant"] })),
      DisposableStack: new Map(Object.entries({ esnext: Te })),
      AsyncDisposableStack: new Map(Object.entries({ esnext: Te }))
    }))), iK = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NeverAsciiEscape = 1] = "NeverAsciiEscape", e[e.JsxAttributeEscape = 2] = "JsxAttributeEscape", e[e.TerminateUnterminatedLiterals = 4] = "TerminateUnterminatedLiterals", e[e.AllowNumericSeparator = 8] = "AllowNumericSeparator", e))(iK || {});
    function aK(e, t, n) {
      if (t && gFe(e, n)) return Pb(t, e);
      switch (e.kind) {
        case 11: {
          const i = n & 2 ? _J : n & 1 || Bs(e) & 16777216 ? dg : q5;
          return e.singleQuote ? "'" + i(e.text, 39) + "'" : '"' + i(e.text, 34) + '"';
        }
        case 15:
        case 16:
        case 17:
        case 18: {
          const i = n & 1 || Bs(e) & 16777216 ? dg : q5, a = e.rawText ?? lJ(i(e.text, 96));
          switch (e.kind) {
            case 15:
              return "`" + a + "`";
            case 16:
              return "`" + a + "${";
            case 17:
              return "}" + a + "${";
            case 18:
              return "}" + a + "`";
          }
          break;
        }
        case 9:
        case 10:
          return e.text;
        case 14:
          return n & 4 && e.isUnterminated ? e.text + (e.text.charCodeAt(e.text.length - 1) === 92 ? " /" : "/") : e.text;
      }
      return E.fail(`Literal kind '${e.kind}' not accounted for.`);
    }
    function gFe(e, t) {
      if (wo(e) || !e.parent || t & 4 && e.isUnterminated) return !1;
      if (V_(e)) {
        if (e.numericLiteralFlags & 26656) return !1;
        if (e.numericLiteralFlags & 512) return !!(t & 8);
      }
      return !E6(e);
    }
    function sK(e) {
      return Ta(e) ? `"${dg(e)}"` : "" + e;
    }
    function oK(e) {
      return nl(e).replace(/^(\d)/, "_$1").replace(/\W/g, "_");
    }
    function kB(e) {
      return (x0(e) & 7) !== 0 || CB(e);
    }
    function CB(e) {
      const t = xm(e);
      return t.kind === 261 && t.parent.kind === 300;
    }
    function o_(e) {
      return Qc(e) && (e.name.kind === 11 || ug(e));
    }
    function m5(e) {
      return Qc(e) && e.name.kind === 11;
    }
    function EB(e) {
      return Qc(e) && Ts(e.name);
    }
    function hFe(e) {
      return Qc(e) || Fe(e);
    }
    function V3(e) {
      return yFe(e.valueDeclaration);
    }
    function yFe(e) {
      return !!e && e.kind === 268 && !e.body;
    }
    function cK(e) {
      return e.kind === 308 || e.kind === 268 || YC(e);
    }
    function ug(e) {
      return !!(e.flags & 2048);
    }
    function Nb(e) {
      return o_(e) && DB(e);
    }
    function DB(e) {
      switch (e.parent.kind) {
        case 308:
          return Sl(e.parent);
        case 269:
          return o_(e.parent.parent) && Pi(e.parent.parent.parent) && !Sl(e.parent.parent.parent);
      }
      return !1;
    }
    function wB(e) {
      var t;
      return (t = e.declarations) == null ? void 0 : t.find((n) => !Nb(n) && !(Qc(n) && ug(n)));
    }
    function vFe(e) {
      return e === 1 || 100 <= e && e <= 199;
    }
    function r6(e, t) {
      return Sl(e) || vFe(u_(t)) && !!e.commonJsModuleIndicator;
    }
    function PB(e, t) {
      switch (e.scriptKind) {
        case 1:
        case 3:
        case 2:
        case 4:
          break;
        default:
          return !1;
      }
      return e.isDeclarationFile ? !1 : !!(OD(t) || pre(e.statements) || Sl(e) || Zp(t));
    }
    function AB(e) {
      return !!(e.flags & 33554432) || Qn(e, 128);
    }
    function NB(e, t) {
      switch (e.kind) {
        case 308:
        case 270:
        case 300:
        case 268:
        case 249:
        case 250:
        case 251:
        case 177:
        case 175:
        case 178:
        case 179:
        case 263:
        case 219:
        case 220:
        case 173:
        case 176:
          return !0;
        case 242:
          return !YC(t);
      }
      return !1;
    }
    function IB(e) {
      switch (E.type(e), e.kind) {
        case 339:
        case 347:
        case 324:
          return !0;
        default:
          return OB(e);
      }
    }
    function OB(e) {
      switch (E.type(e), e.kind) {
        case 180:
        case 181:
        case 174:
        case 182:
        case 185:
        case 186:
        case 318:
        case 264:
        case 232:
        case 265:
        case 266:
        case 346:
        case 263:
        case 175:
        case 177:
        case 178:
        case 179:
        case 219:
        case 220:
          return !0;
        default:
          return !1;
      }
    }
    function Nx(e) {
      switch (e.kind) {
        case 273:
        case 272:
          return !0;
        default:
          return !1;
      }
    }
    function lK(e) {
      return Nx(e) || $y(e);
    }
    function uK(e) {
      return Nx(e) || iA(e);
    }
    function g5(e) {
      switch (e.kind) {
        case 273:
        case 272:
        case 244:
        case 264:
        case 263:
        case 268:
        case 266:
        case 265:
        case 267:
          return !0;
        default:
          return !1;
      }
    }
    function _K(e) {
      return q3(e) || Qc(e) || Am(e) || B_(e);
    }
    function q3(e) {
      return Nx(e) || tl(e);
    }
    function h5(e) {
      return cr(e.parent, (t) => !!(BW(t) & 1));
    }
    function Bd(e) {
      return cr(e.parent, (t) => NB(t, t.parent));
    }
    function fK(e, t) {
      let n = Bd(e);
      for (; n; )
        t(n), n = Bd(n);
    }
    function Do(e) {
      return !e || J3(e) === 0 ? "(Missing)" : uc(e);
    }
    function pK(e) {
      return e.declaration ? Do(e.declaration.parameters[0].name) : void 0;
    }
    function G3(e) {
      return e.kind === 168 && !ep(e.expression);
    }
    function tD(e) {
      var t;
      switch (e.kind) {
        case 80:
        case 81:
          return (t = e.emitNode) != null && t.autoGenerate ? void 0 : e.escapedText;
        case 11:
        case 9:
        case 10:
        case 15:
          return mc(e.text);
        case 168:
          return ep(e.expression) ? mc(e.expression.text) : void 0;
        case 296:
          return tk(e);
        default:
          return E.assertNever(e);
      }
    }
    function Ix(e) {
      return E.checkDefined(tD(e));
    }
    function mf(e) {
      switch (e.kind) {
        case 110:
          return "this";
        case 81:
        case 80:
          return J3(e) === 0 ? On(e) : uc(e);
        case 167:
          return mf(e.left) + "." + mf(e.right);
        case 212:
          return Fe(e.name) || Oi(e.name) ? mf(e.expression) + "." + mf(e.name) : E.assertNever(e.name);
        case 312:
          return mf(e.left) + "#" + mf(e.right);
        case 296:
          return mf(e.namespace) + ":" + mf(e.name);
        default:
          return E.assertNever(e);
      }
    }
    function Kr(e, t, ...n) {
      return Sp(Sr(e), e, t, ...n);
    }
    function n6(e, t, n, ...i) {
      const a = gs(e.text, t.pos);
      return wl(e, a, t.end - a, n, ...i);
    }
    function Sp(e, t, n, ...i) {
      const a = gS(e, t);
      return wl(e, a.start, a.length, n, ...i);
    }
    function Gg(e, t, n, i) {
      const a = gS(e, t);
      return y5(e, a.start, a.length, n, i);
    }
    function H3(e, t, n, i) {
      const a = gs(e.text, t.pos);
      return y5(e, a, t.end - a, n, i);
    }
    function dK(e, t, n) {
      E.assertGreaterThanOrEqual(t, 0), E.assertGreaterThanOrEqual(n, 0), E.assertLessThanOrEqual(t, e.length), E.assertLessThanOrEqual(t + n, e.length);
    }
    function y5(e, t, n, i, a) {
      return dK(e.text, t, n), {
        file: e,
        start: t,
        length: n,
        code: i.code,
        category: i.category,
        messageText: i.next ? i : i.messageText,
        relatedInformation: a,
        canonicalHead: i.canonicalHead
      };
    }
    function FB(e, t, n) {
      return {
        file: e,
        start: 0,
        length: 0,
        code: t.code,
        category: t.category,
        messageText: t.next ? t : t.messageText,
        relatedInformation: n
      };
    }
    function mK(e) {
      return typeof e.messageText == "string" ? {
        code: e.code,
        category: e.category,
        messageText: e.messageText,
        next: e.next
      } : e.messageText;
    }
    function gK(e, t, n) {
      return {
        file: e,
        start: t.pos,
        length: t.end - t.pos,
        code: n.code,
        category: n.category,
        messageText: n.message
      };
    }
    function hK(e, ...t) {
      return {
        code: e.code,
        messageText: Qx(e, ...t)
      };
    }
    function _g(e, t) {
      const n = Bg(e.languageVersion, !0, e.languageVariant, e.text, void 0, t);
      return n.scan(), Vc(n.getTokenStart(), n.getTokenEnd());
    }
    function yK(e, t) {
      const n = Bg(e.languageVersion, !0, e.languageVariant, e.text, void 0, t);
      return n.scan(), n.getToken();
    }
    function bFe(e, t) {
      const n = gs(e.text, t.pos);
      if (t.body && t.body.kind === 242) {
        const { line: i } = Za(e, t.body.pos), { line: a } = Za(e, t.body.end);
        if (i < a) return du(n, W3(i, e) - n + 1);
      }
      return Vc(n, t.end);
    }
    function gS(e, t) {
      let n = t;
      switch (t.kind) {
        case 308: {
          const o = gs(e.text, 0, !1);
          return o === e.text.length ? du(0, 0) : _g(e, o);
        }
        case 261:
        case 209:
        case 264:
        case 232:
        case 265:
        case 268:
        case 267:
        case 307:
        case 263:
        case 219:
        case 175:
        case 178:
        case 179:
        case 266:
        case 173:
        case 172:
        case 275:
          n = t.name;
          break;
        case 220:
          return bFe(e, t);
        case 297:
        case 298:
          return Vc(gs(e.text, t.pos), t.statements.length > 0 ? t.statements[0].pos : t.end);
        case 254:
        case 230:
          return _g(e, gs(e.text, t.pos));
        case 239:
          return _g(e, gs(e.text, t.expression.end));
        case 351:
          return _g(e, gs(e.text, t.tagName.pos));
        case 177: {
          const o = t, c = gs(e.text, o.pos), _ = Bg(e.languageVersion, !0, e.languageVariant, e.text, void 0, c);
          let u = _.scan();
          for (; u !== 137 && u !== 1; ) u = _.scan();
          return Vc(c, _.getTokenEnd());
        }
      }
      if (n === void 0) return _g(e, t.pos);
      E.assert(!Hd(n));
      const i = Nc(n), a = i || sk(t) ? n.pos : gs(e.text, n.pos);
      return i ? (E.assert(a === n.pos, "This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"), E.assert(a === n.end, "This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")) : (E.assert(a >= n.pos, "This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"), E.assert(a <= n.end, "This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")), Vc(a, n.end);
    }
    function D0(e) {
      return e.kind === 308 && !gf(e);
    }
    function gf(e) {
      return (e.externalModuleIndicator || e.commonJsModuleIndicator) !== void 0;
    }
    function Tp(e) {
      return e.scriptKind === 6;
    }
    function cv(e) {
      return !!(nv(e) & 4096);
    }
    function $3(e) {
      return !!(nv(e) & 8 && !df(e, e.parent));
    }
    function X3(e) {
      return (x0(e) & 7) === 6;
    }
    function Q3(e) {
      return (x0(e) & 7) === 4;
    }
    function i6(e) {
      return (x0(e) & 7) === 2;
    }
    function vK(e) {
      const t = x0(e) & 7;
      return t === 2 || t === 4 || t === 6;
    }
    function v5(e) {
      return (x0(e) & 7) === 1;
    }
    function hS(e) {
      return e.kind === 214 && e.expression.kind === 108;
    }
    function B_(e) {
      if (e.kind !== 214) return !1;
      const t = e.expression;
      return t.kind === 102 || RS(t) && t.keywordToken === 102 && t.name.escapedText === "defer";
    }
    function a6(e) {
      return RS(e) && e.keywordToken === 102 && e.name.escapedText === "meta";
    }
    function Bh(e) {
      return Am(e) && B0(e.argument) && Ts(e.argument.literal);
    }
    function bm(e) {
      return e.kind === 245 && e.expression.kind === 11;
    }
    function Y3(e) {
      return !!(Bs(e) & 2097152);
    }
    function b5(e) {
      return Y3(e) && Xc(e);
    }
    function SFe(e) {
      return Fe(e.name) && !e.initializer;
    }
    function S5(e) {
      return Y3(e) && $c(e) && hr(e.declarationList.declarations, SFe);
    }
    function LB(e, t) {
      return e.kind !== 12 ? jg(t.text, e.pos) : void 0;
    }
    function MB(e, t) {
      return dn(e.kind === 170 || e.kind === 169 || e.kind === 219 || e.kind === 220 || e.kind === 218 || e.kind === 261 || e.kind === 282 ? zi(Ly(t, e.pos), jg(t, e.pos)) : jg(t, e.pos), (n) => n.end <= e.end && t.charCodeAt(n.pos + 1) === 42 && t.charCodeAt(n.pos + 2) === 42 && t.charCodeAt(n.pos + 3) !== 47);
    }
    var TFe = /^\/\/\/\s*<reference\s+path\s*=\s*(?:'[^']*'|"[^"]*").*?\/>/, xFe = /^\/\/\/\s*<reference\s+types\s*=\s*(?:'[^']*'|"[^"]*").*?\/>/, kFe = /^\/\/\/\s*<reference\s+lib\s*=\s*(?:'[^']*'|"[^"]*").*?\/>/, CFe = /^\/\/\/\s*<amd-dependency\s+path\s*=\s*(?:'[^']*'|"[^"]*").*?\/>/, EFe = /^\/\/\/\s*<amd-module\s+(?:\S.*?)??\/>/, DFe = /^\/\/\/\s*<reference\s+no-default-lib\s*=\s*(?:'[^']*'|"[^"]*")\s*\/>/;
    function Sm(e) {
      if (183 <= e.kind && e.kind <= 206) return !0;
      switch (e.kind) {
        case 133:
        case 159:
        case 150:
        case 163:
        case 154:
        case 136:
        case 155:
        case 151:
        case 157:
        case 106:
        case 146:
          return !0;
        case 116:
          return e.parent.kind !== 223;
        case 234:
          return Ohe(e);
        case 169:
          return e.parent.kind === 201 || e.parent.kind === 196;
        case 80:
          (e.parent.kind === 167 && e.parent.right === e || e.parent.kind === 212 && e.parent.name === e) && (e = e.parent), E.assert(e.kind === 80 || e.kind === 167 || e.kind === 212, "'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");
        case 167:
        case 212:
        case 110: {
          const { parent: t } = e;
          if (t.kind === 187) return !1;
          if (t.kind === 206) return !t.isTypeOf;
          if (183 <= t.kind && t.kind <= 206) return !0;
          switch (t.kind) {
            case 234:
              return Ohe(t);
            case 169:
              return e === t.constraint;
            case 346:
              return e === t.constraint;
            case 173:
            case 172:
            case 170:
            case 261:
              return e === t.type;
            case 263:
            case 219:
            case 220:
            case 177:
            case 175:
            case 174:
            case 178:
            case 179:
              return e === t.type;
            case 180:
            case 181:
            case 182:
              return e === t.type;
            case 217:
              return e === t.type;
            case 214:
            case 215:
            case 216:
              return Gi(t.typeArguments, e);
          }
        }
      }
      return !1;
    }
    function Ohe(e) {
      return sF(e.parent) || yk(e.parent) || kf(e.parent) && !rO(e);
    }
    function Hy(e, t) {
      return n(e);
      function n(i) {
        switch (i.kind) {
          case 254:
            return t(i);
          case 270:
          case 242:
          case 246:
          case 247:
          case 248:
          case 249:
          case 250:
          case 251:
          case 255:
          case 256:
          case 297:
          case 298:
          case 257:
          case 259:
          case 300:
            return Fa(i, n);
        }
      }
    }
    function RB(e, t) {
      return n(e);
      function n(i) {
        switch (i.kind) {
          case 230:
            const a = t(i);
            if (a) return a;
            const o = i.expression;
            return o ? n(o) : void 0;
          case 267:
          case 265:
          case 268:
          case 266:
            return;
          default:
            if (Ra(i)) {
              if (i.name && i.name.kind === 168) return n(i.name.expression);
            } else if (!Sm(i)) return Fa(i, n);
        }
      }
    }
    function jB(e) {
      return e && e.kind === 189 ? e.elementType : e && e.kind === 184 ? Fg(e.typeArguments) : void 0;
    }
    function bK(e) {
      switch (e.kind) {
        case 265:
        case 264:
        case 232:
        case 188:
          return e.members;
        case 211:
          return e.properties;
      }
    }
    function rD(e) {
      if (e) switch (e.kind) {
        case 209:
        case 307:
        case 170:
        case 304:
        case 173:
        case 172:
        case 305:
        case 261:
          return !0;
      }
      return !1;
    }
    function nD(e) {
      return e.parent.kind === 262 && e.parent.parent.kind === 244;
    }
    function SK(e) {
      return rn(e) ? bs(e.parent) && un(e.parent.parent) && qc(e.parent.parent) === 2 || T5(e.parent) : !1;
    }
    function T5(e) {
      return rn(e) ? un(e) && qc(e) === 1 : !1;
    }
    function TK(e) {
      return (ci(e) ? i6(e) && Fe(e.name) && nD(e) : ga(e) ? ES(e) && vl(e) : f_(e) && ES(e)) || T5(e);
    }
    function xK(e) {
      switch (e.kind) {
        case 175:
        case 174:
        case 177:
        case 178:
        case 179:
        case 263:
        case 219:
          return !0;
      }
      return !1;
    }
    function BB(e, t) {
      for (; ; ) {
        if (t && t(e), e.statement.kind !== 257) return e.statement;
        e = e.statement;
      }
    }
    function Ib(e) {
      return e && e.kind === 242 && Ra(e.parent);
    }
    function Hp(e) {
      return e && e.kind === 175 && e.parent.kind === 211;
    }
    function x5(e) {
      return (e.kind === 175 || e.kind === 178 || e.kind === 179) && (e.parent.kind === 211 || e.parent.kind === 232);
    }
    function kK(e) {
      return e && e.kind === 1;
    }
    function CK(e) {
      return e && e.kind === 0;
    }
    function s6(e, t, n, i) {
      return bt(e?.properties, (a) => {
        if (!ol(a)) return;
        const o = tD(a.name);
        return t === o || i && i === o ? n(a) : void 0;
      });
    }
    function iD(e) {
      if (e && e.statements.length) {
        const t = e.statements[0].expression;
        return qn(t, bs);
      }
    }
    function k5(e, t, n) {
      return Z3(e, t, (i) => hu(i.initializer) ? xr(i.initializer.elements, (a) => Ts(a) && a.text === n) : void 0);
    }
    function Z3(e, t, n) {
      return s6(iD(e), t, n);
    }
    function Kf(e) {
      return cr(e.parent, Ra);
    }
    function EK(e) {
      return cr(e.parent, So);
    }
    function nu(e) {
      return cr(e.parent, Zn);
    }
    function DK(e) {
      return cr(e.parent, (t) => Zn(t) || Ra(t) ? "quit" : Bc(t));
    }
    function C5(e) {
      return cr(e.parent, YC);
    }
    function E5(e) {
      const t = cr(e.parent, (n) => Zn(n) ? "quit" : pl(n));
      return t && Zn(t.parent) ? nu(t.parent) : nu(t ?? e);
    }
    function c_(e, t, n) {
      for (E.assert(e.kind !== 308); ; ) {
        if (e = e.parent, !e) return E.fail();
        switch (e.kind) {
          case 168:
            if (n && Zn(e.parent.parent)) return e;
            e = e.parent.parent;
            break;
          case 171:
            e.parent.kind === 170 && al(e.parent.parent) ? e = e.parent.parent : al(e.parent) && (e = e.parent);
            break;
          case 220:
            if (!t) continue;
          case 263:
          case 219:
          case 268:
          case 176:
          case 173:
          case 172:
          case 175:
          case 174:
          case 177:
          case 178:
          case 179:
          case 180:
          case 181:
          case 182:
          case 267:
          case 308:
            return e;
        }
      }
    }
    function wK(e) {
      switch (e.kind) {
        case 220:
        case 263:
        case 219:
        case 173:
          return !0;
        case 242:
          switch (e.parent.kind) {
            case 177:
            case 175:
            case 178:
            case 179:
              return !0;
            default:
              return !1;
          }
        default:
          return !1;
      }
    }
    function D5(e) {
      return Fe(e) && (sl(e.parent) || Xc(e.parent)) && e.parent.name === e && (e = e.parent), Pi(c_(e, !0, !1));
    }
    function PK(e) {
      const t = c_(e, !1, !1);
      if (t) switch (t.kind) {
        case 177:
        case 263:
        case 219:
          return t;
      }
    }
    function K3(e, t) {
      for (; ; ) {
        if (e = e.parent, !e) return;
        switch (e.kind) {
          case 168:
            e = e.parent;
            break;
          case 263:
          case 219:
          case 220:
            if (!t) continue;
          case 173:
          case 172:
          case 175:
          case 174:
          case 177:
          case 178:
          case 179:
          case 176:
            return e;
          case 171:
            e.parent.kind === 170 && al(e.parent.parent) ? e = e.parent.parent : al(e.parent) && (e = e.parent);
            break;
        }
      }
    }
    function lv(e) {
      if (e.kind === 219 || e.kind === 220) {
        let t = e, n = e.parent;
        for (; n.kind === 218; )
          t = n, n = n.parent;
        if (n.kind === 214 && n.expression === t) return n;
      }
    }
    function Z_(e) {
      const t = e.kind;
      return (t === 212 || t === 213) && e.expression.kind === 108;
    }
    function eA(e) {
      const t = e.kind;
      return (t === 212 || t === 213) && e.expression.kind === 110;
    }
    function w5(e) {
      var t;
      return !!e && ci(e) && ((t = e.initializer) == null ? void 0 : t.kind) === 110;
    }
    function AK(e) {
      return !!e && (Nu(e) || ol(e)) && un(e.parent.parent) && e.parent.parent.operatorToken.kind === 64 && e.parent.parent.right.kind === 110;
    }
    function tA(e) {
      switch (e.kind) {
        case 184:
          return e.typeName;
        case 234:
          return go(e.expression) ? e.expression : void 0;
        case 80:
        case 167:
          return e;
      }
    }
    function P5(e) {
      switch (e.kind) {
        case 216:
          return e.tag;
        case 287:
        case 286:
          return e.tagName;
        case 227:
          return e.right;
        case 290:
          return e;
        default:
          return e.expression;
      }
    }
    function rA(e, t, n, i) {
      if (e && Bl(t) && Oi(t.name)) return !1;
      switch (t.kind) {
        case 264:
          return !0;
        case 232:
          return !e;
        case 173:
          return n !== void 0 && (e ? sl(n) : Zn(n) && !Jb(t) && !SJ(t));
        case 178:
        case 179:
        case 175:
          return t.body !== void 0 && n !== void 0 && (e ? sl(n) : Zn(n));
        case 170:
          return e ? n !== void 0 && n.body !== void 0 && (n.kind === 177 || n.kind === 175 || n.kind === 179) && Rb(n) !== t && i !== void 0 && i.kind === 264 : !1;
      }
      return !1;
    }
    function o6(e, t, n, i) {
      return tp(t) && rA(e, t, n, i);
    }
    function nA(e, t, n, i) {
      return o6(e, t, n, i) || aD(e, t, n);
    }
    function aD(e, t, n) {
      switch (t.kind) {
        case 264:
          return _t(t.members, (i) => nA(e, i, t, n));
        case 232:
          return !e && _t(t.members, (i) => nA(e, i, t, n));
        case 175:
        case 179:
        case 177:
          return _t(t.parameters, (i) => o6(e, i, t, n));
        default:
          return !1;
      }
    }
    function w0(e, t) {
      if (o6(e, t)) return !0;
      const n = Xg(t);
      return !!n && aD(e, n, t);
    }
    function JB(e, t, n) {
      let i;
      if (zy(t)) {
        const { firstAccessor: a, secondAccessor: o, setAccessor: c } = Bb(n.members, t), _ = tp(a) ? a : o && tp(o) ? o : void 0;
        if (!_ || t !== _) return !1;
        i = c?.parameters;
      } else hc(t) && (i = t.parameters);
      if (o6(e, t, n)) return !0;
      if (i) {
        for (const a of i)
          if (!Yy(a) && o6(e, a, t, n))
            return !0;
      }
      return !1;
    }
    function zB(e) {
      if (e.textSourceNode) {
        switch (e.textSourceNode.kind) {
          case 11:
            return zB(e.textSourceNode);
          case 15:
            return e.text === "";
        }
        return !1;
      }
      return e.text === "";
    }
    function c6(e) {
      const { parent: t } = e;
      return t.kind === 287 || t.kind === 286 || t.kind === 288 ? t.tagName === e : !1;
    }
    function fg(e) {
      switch (e.kind) {
        case 108:
        case 106:
        case 112:
        case 97:
        case 14:
        case 210:
        case 211:
        case 212:
        case 213:
        case 214:
        case 215:
        case 216:
        case 235:
        case 217:
        case 239:
        case 236:
        case 218:
        case 219:
        case 232:
        case 220:
        case 223:
        case 221:
        case 222:
        case 225:
        case 226:
        case 227:
        case 228:
        case 231:
        case 229:
        case 233:
        case 285:
        case 286:
        case 289:
        case 230:
        case 224:
          return !0;
        case 237:
          return !B_(e.parent) || e.parent.expression !== e;
        case 234:
          return !kf(e.parent) && !yk(e.parent);
        case 167:
          for (; e.parent.kind === 167; ) e = e.parent;
          return e.parent.kind === 187 || Ex(e.parent) || sw(e.parent) || Pv(e.parent) || c6(e);
        case 312:
          for (; Pv(e.parent); ) e = e.parent;
          return e.parent.kind === 187 || Ex(e.parent) || sw(e.parent) || Pv(e.parent) || c6(e);
        case 81:
          return un(e.parent) && e.parent.left === e && e.parent.operatorToken.kind === 103;
        case 80:
          if (e.parent.kind === 187 || Ex(e.parent) || sw(e.parent) || Pv(e.parent) || c6(e)) return !0;
        case 9:
        case 10:
        case 11:
        case 15:
        case 110:
          return A5(e);
        default:
          return !1;
      }
    }
    function A5(e) {
      const { parent: t } = e;
      switch (t.kind) {
        case 261:
        case 170:
        case 173:
        case 172:
        case 307:
        case 304:
        case 209:
          return t.initializer === e;
        case 245:
        case 246:
        case 247:
        case 248:
        case 254:
        case 255:
        case 256:
        case 297:
        case 258:
          return t.expression === e;
        case 249:
          const n = t;
          return n.initializer === e && n.initializer.kind !== 262 || n.condition === e || n.incrementor === e;
        case 250:
        case 251:
          const i = t;
          return i.initializer === e && i.initializer.kind !== 262 || i.expression === e;
        case 217:
        case 235:
          return e === t.expression;
        case 240:
          return e === t.expression;
        case 168:
          return e === t.expression;
        case 171:
        case 295:
        case 294:
        case 306:
          return !0;
        case 234:
          return t.expression === e && !Sm(t);
        case 305:
          return t.objectAssignmentInitializer === e;
        case 239:
          return e === t.expression;
        default:
          return fg(t);
      }
    }
    function N5(e) {
      for (; e.kind === 167 || e.kind === 80; ) e = e.parent;
      return e.kind === 187;
    }
    function NK(e) {
      return gg(e) && !!e.parent.moduleSpecifier;
    }
    function uv(e) {
      return e.kind === 272 && e.moduleReference.kind === 284;
    }
    function sD(e) {
      return E.assert(uv(e)), e.moduleReference.expression;
    }
    function WB(e) {
      return $y(e) && Hx(e.initializer).arguments[0];
    }
    function yS(e) {
      return e.kind === 272 && e.moduleReference.kind !== 284;
    }
    function Hg(e) {
      return e?.kind === 308;
    }
    function T_(e) {
      return rn(e);
    }
    function rn(e) {
      return !!e && !!(e.flags & 524288);
    }
    function I5(e) {
      return !!e && !!(e.flags & 134217728);
    }
    function O5(e) {
      return !Tp(e);
    }
    function oD(e) {
      return !!e && !!(e.flags & 16777216);
    }
    function F5(e) {
      return xf(e) && Fe(e.typeName) && e.typeName.escapedText === "Object" && e.typeArguments && e.typeArguments.length === 2 && (e.typeArguments[0].kind === 154 || e.typeArguments[0].kind === 150);
    }
    function J_(e, t) {
      if (e.kind !== 214) return !1;
      const { expression: n, arguments: i } = e;
      if (n.kind !== 80 || n.escapedText !== "require" || i.length !== 1) return !1;
      const a = i[0];
      return !t || Xs(a);
    }
    function cD(e) {
      return Fhe(e, !1);
    }
    function $y(e) {
      return Fhe(e, !0);
    }
    function IK(e) {
      return Ns(e) && $y(e.parent.parent);
    }
    function OK(e) {
      if (cD(e)) return e.initializer.arguments[0];
      if ($y(e)) {
        const t = Hx(e.initializer);
        if (J_(t, !0)) return t.arguments[0];
      }
    }
    function Fhe(e, t) {
      return ci(e) && !!e.initializer && J_(t ? Hx(e.initializer) : e.initializer, !0);
    }
    function iA(e) {
      return $c(e) && e.declarationList.declarations.length > 0 && hr(e.declarationList.declarations, (t) => cD(t));
    }
    function aA(e) {
      return e === 39 || e === 34;
    }
    function L5(e, t) {
      return Pb(t, e).charCodeAt(0) === 34;
    }
    function lD(e) {
      return un(e) || jo(e) || Fe(e) || za(e);
    }
    function sA(e) {
      return rn(e) && e.initializer && un(e.initializer) && (e.initializer.operatorToken.kind === 57 || e.initializer.operatorToken.kind === 61) && e.name && go(e.name) && l6(e.name, e.initializer.left) ? e.initializer.right : e.initializer;
    }
    function uD(e) {
      const t = sA(e);
      return t && _v(t, Ky(e.name));
    }
    function wFe(e, t) {
      return bt(e.properties, (n) => ol(n) && Fe(n.name) && n.name.escapedText === "value" && n.initializer && _v(n.initializer, t));
    }
    function Ox(e) {
      if (e && e.parent && un(e.parent) && e.parent.operatorToken.kind === 64) {
        const t = Ky(e.parent.left);
        return _v(e.parent.right, t) || PFe(e.parent.left, e.parent.right, t);
      }
      if (e && za(e) && bS(e)) {
        const t = wFe(e.arguments[2], e.arguments[1].text === "prototype");
        if (t) return t;
      }
    }
    function _v(e, t) {
      if (za(e)) {
        const n = Gs(e.expression);
        return n.kind === 219 || n.kind === 220 ? e : void 0;
      }
      if (e.kind === 219 || e.kind === 232 || e.kind === 220 || bs(e) && (e.properties.length === 0 || t)) return e;
    }
    function PFe(e, t, n) {
      const i = un(t) && (t.operatorToken.kind === 57 || t.operatorToken.kind === 61) && _v(t.right, n);
      if (i && l6(e, t.left)) return i;
    }
    function FK(e) {
      const t = ci(e.parent) ? e.parent.name : un(e.parent) && e.parent.operatorToken.kind === 64 ? e.parent.left : void 0;
      return t && _v(e.right, Ky(t)) && go(t) && l6(t, e.left);
    }
    function UB(e) {
      if (un(e.parent)) {
        const t = (e.parent.operatorToken.kind === 57 || e.parent.operatorToken.kind === 61) && un(e.parent.parent) ? e.parent.parent : e.parent;
        if (t.operatorToken.kind === 64 && Fe(t.left)) return t.left;
      } else if (ci(e.parent)) return e.parent.name;
    }
    function l6(e, t) {
      return Tm(e) && Tm(t) ? Xp(e) === Xp(t) : Jg(e) && LK(t) && (t.expression.kind === 110 || Fe(t.expression) && (t.expression.escapedText === "window" || t.expression.escapedText === "self" || t.expression.escapedText === "global")) ? l6(e, cA(t)) : LK(e) && LK(t) ? Jh(e) === Jh(t) && l6(e.expression, t.expression) : !1;
    }
    function oA(e) {
      for (; Hl(e, !0); ) e = e.right;
      return e;
    }
    function vS(e) {
      return Fe(e) && e.escapedText === "exports";
    }
    function VB(e) {
      return Fe(e) && e.escapedText === "module";
    }
    function $g(e) {
      return (Ln(e) || qB(e)) && VB(e.expression) && Jh(e) === "exports";
    }
    function qc(e) {
      const t = AFe(e);
      return t === 5 || rn(e) ? t : 0;
    }
    function bS(e) {
      return It(e.arguments) === 3 && Ln(e.expression) && Fe(e.expression.expression) && On(e.expression.expression) === "Object" && On(e.expression.name) === "defineProperty" && ep(e.arguments[1]) && SS(e.arguments[0], !0);
    }
    function LK(e) {
      return Ln(e) || qB(e);
    }
    function qB(e) {
      return Po(e) && ep(e.argumentExpression);
    }
    function Ob(e, t) {
      return Ln(e) && (!t && e.expression.kind === 110 || Fe(e.name) && SS(e.expression, !0)) || M5(e, t);
    }
    function M5(e, t) {
      return qB(e) && (!t && e.expression.kind === 110 || go(e.expression) || Ob(e.expression, !0));
    }
    function SS(e, t) {
      return go(e) || Ob(e, t);
    }
    function cA(e) {
      return Ln(e) ? e.name : e.argumentExpression;
    }
    function AFe(e) {
      if (za(e)) {
        if (!bS(e)) return 0;
        const t = e.arguments[0];
        return vS(t) || $g(t) ? 8 : Ob(t) && Jh(t) === "prototype" ? 9 : 7;
      }
      return e.operatorToken.kind !== 64 || !jo(e.left) || NFe(oA(e)) ? 0 : SS(e.left.expression, !0) && Jh(e.left) === "prototype" && bs(GB(e)) ? 6 : lA(e.left);
    }
    function NFe(e) {
      return dk(e) && V_(e.expression) && e.expression.text === "0";
    }
    function R5(e) {
      if (Ln(e)) return e.name;
      const t = Gs(e.argumentExpression);
      return V_(t) || Xs(t) ? t : e;
    }
    function Jh(e) {
      const t = R5(e);
      if (t) {
        if (Fe(t)) return t.escapedText;
        if (Xs(t) || V_(t)) return mc(t.text);
      }
    }
    function lA(e) {
      if (e.expression.kind === 110) return 4;
      if ($g(e)) return 2;
      if (SS(e.expression, !0)) {
        if (Ky(e.expression)) return 3;
        let t = e;
        for (; !Fe(t.expression); ) t = t.expression;
        const n = t.expression;
        if ((n.escapedText === "exports" || n.escapedText === "module" && Jh(t) === "exports") && Ob(e)) return 1;
        if (SS(e, !0) || Po(e) && U5(e)) return 5;
      }
      return 0;
    }
    function GB(e) {
      for (; un(e.right); ) e = e.right;
      return e.right;
    }
    function uA(e) {
      return un(e) && qc(e) === 3;
    }
    function MK(e) {
      return rn(e) && e.parent && e.parent.kind === 245 && (!Po(e) || qB(e)) && !!iv(e.parent);
    }
    function _D(e, t) {
      const { valueDeclaration: n } = e;
      (!n || !(t.flags & 33554432 && !rn(t) && !(n.flags & 33554432)) && lD(n) && !lD(t) || n.kind !== t.kind && hFe(n)) && (e.valueDeclaration = t);
    }
    function RK(e) {
      if (!e || !e.valueDeclaration) return !1;
      const t = e.valueDeclaration;
      return t.kind === 263 || ci(t) && t.initializer && Ra(t.initializer);
    }
    function jK(e) {
      switch (e?.kind) {
        case 261:
        case 209:
        case 273:
        case 279:
        case 272:
        case 274:
        case 281:
        case 275:
        case 282:
        case 277:
        case 206:
          return !0;
      }
      return !1;
    }
    function Fx(e) {
      var t, n;
      switch (e.kind) {
        case 261:
        case 209:
          return (t = cr(e.initializer, (i) => J_(i, !0))) == null ? void 0 : t.arguments[0];
        case 273:
        case 279:
        case 352:
          return qn(e.moduleSpecifier, Xs);
        case 272:
          return qn((n = qn(e.moduleReference, qh)) == null ? void 0 : n.expression, Xs);
        case 274:
        case 281:
          return qn(e.parent.moduleSpecifier, Xs);
        case 275:
        case 282:
          return qn(e.parent.parent.moduleSpecifier, Xs);
        case 277:
          return qn(e.parent.parent.parent.moduleSpecifier, Xs);
        case 206:
          return Bh(e) ? e.argument.literal : void 0;
        default:
          E.assertNever(e);
      }
    }
    function fD(e) {
      return _A(e) || E.failBadSyntaxKind(e.parent);
    }
    function _A(e) {
      switch (e.parent.kind) {
        case 273:
        case 279:
        case 352:
          return e.parent;
        case 284:
          return e.parent.parent;
        case 214:
          return B_(e.parent) || J_(e.parent, !1) ? e.parent : void 0;
        case 202:
          if (!Ts(e)) break;
          return qn(e.parent.parent, Am);
        default:
          return;
      }
    }
    function fA(e, t) {
      return !!t.rewriteRelativeImportExtensions && Bf(e) && !$l(e) && wS(e);
    }
    function Lx(e) {
      switch (e.kind) {
        case 273:
        case 279:
        case 352:
          return e.moduleSpecifier;
        case 272:
          return e.moduleReference.kind === 284 ? e.moduleReference.expression : void 0;
        case 206:
          return Bh(e) ? e.argument.literal : void 0;
        case 214:
          return e.arguments[0];
        case 268:
          return e.name.kind === 11 ? e.name : void 0;
        default:
          return E.assertNever(e);
      }
    }
    function u6(e) {
      switch (e.kind) {
        case 273:
          return e.importClause && qn(e.importClause.namedBindings, nh);
        case 272:
          return e;
        case 279:
          return e.exportClause && qn(e.exportClause, gg);
        default:
          return E.assertNever(e);
      }
    }
    function TS(e) {
      return (e.kind === 273 || e.kind === 352) && !!e.importClause && !!e.importClause.name;
    }
    function BK(e, t) {
      if (e.name) {
        const n = t(e);
        if (n) return n;
      }
      if (e.namedBindings) {
        const n = nh(e.namedBindings) ? t(e.namedBindings) : bt(e.namedBindings.elements, t);
        if (n) return n;
      }
    }
    function Mx(e) {
      switch (e.kind) {
        case 170:
        case 175:
        case 174:
        case 305:
        case 304:
        case 173:
        case 172:
          return e.questionToken !== void 0;
      }
      return !1;
    }
    function Rx(e) {
      const t = R6(e) ? ul(e.parameters) : void 0, n = qn(t && t.name, Fe);
      return !!n && n.escapedText === "new";
    }
    function $p(e) {
      return e.kind === 347 || e.kind === 339 || e.kind === 341;
    }
    function pA(e) {
      return $p(e) || Kp(e);
    }
    function IFe(e) {
      return zl(e) && un(e.expression) && e.expression.operatorToken.kind === 64 ? oA(e.expression) : void 0;
    }
    function Lhe(e) {
      return zl(e) && un(e.expression) && qc(e.expression) !== 0 && un(e.expression.right) && (e.expression.right.operatorToken.kind === 57 || e.expression.right.operatorToken.kind === 61) ? e.expression.right.right : void 0;
    }
    function Mhe(e) {
      switch (e.kind) {
        case 244:
          const t = jx(e);
          return t && t.initializer;
        case 173:
          return e.initializer;
        case 304:
          return e.initializer;
      }
    }
    function jx(e) {
      return $c(e) ? ul(e.declarationList.declarations) : void 0;
    }
    function Rhe(e) {
      return Qc(e) && e.body && e.body.kind === 268 ? e.body : void 0;
    }
    function Bx(e) {
      if (e.kind >= 244 && e.kind <= 260) return !0;
      switch (e.kind) {
        case 80:
        case 110:
        case 108:
        case 167:
        case 237:
        case 213:
        case 212:
        case 209:
        case 219:
        case 220:
        case 175:
        case 178:
        case 179:
          return !0;
        default:
          return !1;
      }
    }
    function dA(e) {
      switch (e.kind) {
        case 220:
        case 227:
        case 242:
        case 253:
        case 180:
        case 297:
        case 264:
        case 232:
        case 176:
        case 177:
        case 186:
        case 181:
        case 252:
        case 260:
        case 247:
        case 213:
        case 243:
        case 1:
        case 267:
        case 307:
        case 278:
        case 279:
        case 282:
        case 245:
        case 250:
        case 251:
        case 249:
        case 263:
        case 219:
        case 185:
        case 178:
        case 80:
        case 246:
        case 273:
        case 272:
        case 182:
        case 265:
        case 318:
        case 324:
        case 257:
        case 175:
        case 174:
        case 268:
        case 203:
        case 271:
        case 211:
        case 170:
        case 218:
        case 212:
        case 304:
        case 173:
        case 172:
        case 254:
        case 241:
        case 179:
        case 305:
        case 306:
        case 256:
        case 258:
        case 259:
        case 266:
        case 169:
        case 261:
        case 244:
        case 248:
        case 255:
          return !0;
        default:
          return !1;
      }
    }
    function HB(e, t) {
      let n;
      rD(e) && E0(e) && Jf(e.initializer) && (n = Mn(n, jhe(e, e.initializer.jsDoc)));
      let i = e;
      for (; i && i.parent; ) {
        if (Jf(i) && (n = Mn(n, jhe(e, i.jsDoc))), i.kind === 170) {
          n = Mn(n, (t ? mZ : HC)(i));
          break;
        }
        if (i.kind === 169) {
          n = Mn(n, (t ? hZ : gZ)(i));
          break;
        }
        i = $B(i);
      }
      return n || Te;
    }
    function jhe(e, t) {
      const n = ws(t);
      return ks(t, (i) => {
        if (i === n) {
          const a = dn(i.tags, (o) => OFe(e, o));
          return i.tags === a ? [i] : a;
        } else return dn(i.tags, j6);
      });
    }
    function OFe(e, t) {
      return !(ow(t) || oF(t)) || !t.parent || !Hd(t.parent) || !E_(t.parent.parent) || t.parent.parent === e;
    }
    function $B(e) {
      const t = e.parent;
      if (t.kind === 304 || t.kind === 278 || t.kind === 173 || t.kind === 245 && e.kind === 212 || t.kind === 254 || Rhe(t) || Hl(e)) return t;
      if (t.parent && (jx(t.parent) === e || Hl(t))) return t.parent;
      if (t.parent && t.parent.parent && (jx(t.parent.parent) || Mhe(t.parent.parent) === e || Lhe(t.parent.parent))) return t.parent.parent;
    }
    function mA(e) {
      if (e.symbol) return e.symbol;
      if (!Fe(e.name)) return;
      const t = e.name.escapedText, n = fv(e);
      if (!n) return;
      const i = xr(n.parameters, (a) => a.name.kind === 80 && a.name.escapedText === t);
      return i && i.symbol;
    }
    function j5(e) {
      if (Hd(e.parent) && e.parent.tags) {
        const t = xr(e.parent.tags, $p);
        if (t) return t;
      }
      return fv(e);
    }
    function XB(e) {
      return G7(e, j6);
    }
    function fv(e) {
      const t = pv(e);
      if (t) return f_(t) && t.type && Ra(t.type) ? t.type : Ra(t) ? t : void 0;
    }
    function pv(e) {
      const t = Fb(e);
      if (t) return Lhe(t) || IFe(t) || Mhe(t) || jx(t) || Rhe(t) || t;
    }
    function Fb(e) {
      const t = _6(e);
      if (!t) return;
      const n = t.parent;
      if (n && n.jsDoc && t === Wo(n.jsDoc)) return n;
    }
    function _6(e) {
      return cr(e.parent, Hd);
    }
    function JK(e) {
      const t = e.name.escapedText, { typeParameters: n } = e.parent.parent.parent;
      return n && xr(n, (i) => i.name.escapedText === t);
    }
    function zK(e) {
      return !!e.typeArguments;
    }
    var WK = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Definite = 1] = "Definite", e[e.Compound = 2] = "Compound", e))(WK || {});
    function UK(e) {
      let t = e.parent;
      for (; ; ) {
        switch (t.kind) {
          case 227:
            const n = t, i = n.operatorToken.kind;
            return Uh(i) && n.left === e ? n : void 0;
          case 225:
          case 226:
            const a = t, o = a.operator;
            return o === 46 || o === 47 ? a : void 0;
          case 250:
          case 251:
            const c = t;
            return c.initializer === e ? c : void 0;
          case 218:
          case 210:
          case 231:
          case 236:
            e = t;
            break;
          case 306:
            e = t.parent;
            break;
          case 305:
            if (t.name !== e) return;
            e = t.parent;
            break;
          case 304:
            if (t.name === e) return;
            e = t.parent;
            break;
          default:
            return;
        }
        t = e.parent;
      }
    }
    function Xy(e) {
      const t = UK(e);
      if (!t) return 0;
      switch (t.kind) {
        case 227:
          const n = t.operatorToken.kind;
          return n === 64 || kD(n) ? 1 : 2;
        case 225:
        case 226:
          return 2;
        case 250:
        case 251:
          return 1;
      }
    }
    function Qy(e) {
      return !!UK(e);
    }
    function FFe(e) {
      const t = Gs(e.right);
      return t.kind === 227 && rW(t.operatorToken.kind);
    }
    function QB(e) {
      const t = UK(e);
      return !!t && Hl(t, !0) && FFe(t);
    }
    function VK(e) {
      switch (e.kind) {
        case 242:
        case 244:
        case 255:
        case 246:
        case 256:
        case 270:
        case 297:
        case 298:
        case 257:
        case 249:
        case 250:
        case 251:
        case 247:
        case 248:
        case 259:
        case 300:
          return !0;
      }
      return !1;
    }
    function xS(e) {
      return Lo(e) || Bo(e) || kx(e) || Xc(e) || yc(e);
    }
    function Bhe(e, t) {
      for (; e && e.kind === t; ) e = e.parent;
      return e;
    }
    function gA(e) {
      return Bhe(e, 197);
    }
    function dd(e) {
      return Bhe(e, 218);
    }
    function qK(e) {
      let t;
      for (; e && e.kind === 197; )
        t = e, e = e.parent;
      return [t, e];
    }
    function pD(e) {
      for (; FS(e); ) e = e.type;
      return e;
    }
    function Gs(e, t) {
      return Ic(e, t ? -2147483647 : 1);
    }
    function YB(e) {
      return e.kind !== 212 && e.kind !== 213 ? !1 : (e = dd(e.parent), e && e.kind === 221);
    }
    function Lb(e, t) {
      for (; e; ) {
        if (e === t) return !0;
        e = e.parent;
      }
      return !1;
    }
    function pg(e) {
      return !Pi(e) && !Ja(e) && Jl(e.parent) && e.parent.name === e;
    }
    function dD(e) {
      const t = e.parent;
      switch (e.kind) {
        case 11:
        case 15:
        case 9:
          if (_s(t)) return t.parent;
        case 80:
          if (Jl(t)) return t.name === e ? t : void 0;
          if (k_(t)) {
            const n = t.parent;
            return np(n) && n.name === t ? n : void 0;
          } else {
            const n = t.parent;
            return un(n) && qc(n) !== 0 && (n.left.symbol || n.symbol) && va(n) === e ? n : void 0;
          }
        case 81:
          return Jl(t) && t.name === e ? t : void 0;
        default:
          return;
      }
    }
    function hA(e) {
      return ep(e) && e.parent.kind === 168 && Jl(e.parent.parent);
    }
    function GK(e) {
      const t = e.parent;
      switch (t.kind) {
        case 173:
        case 172:
        case 175:
        case 174:
        case 178:
        case 179:
        case 307:
        case 304:
        case 212:
          return t.name === e;
        case 167:
          return t.right === e;
        case 209:
        case 277:
          return t.propertyName === e;
        case 282:
        case 292:
        case 286:
        case 287:
        case 288:
          return !0;
      }
      return !1;
    }
    function ZB(e) {
      switch (e.parent.kind) {
        case 274:
        case 277:
        case 275:
        case 282:
        case 278:
        case 272:
        case 281:
          return e.parent;
        case 167:
          do
            e = e.parent;
          while (e.parent.kind === 167);
          return ZB(e);
      }
    }
    function B5(e) {
      return go(e) || Hc(e);
    }
    function yA(e) {
      return B5(KB(e));
    }
    function KB(e) {
      return Xo(e) ? e.expression : e.right;
    }
    function HK(e) {
      return e.kind === 305 ? e.name : e.kind === 304 ? e.initializer : e.parent.right;
    }
    function Jd(e) {
      const t = Mb(e);
      if (t && rn(e)) {
        const n = vZ(e);
        if (n) return n.class;
      }
      return t;
    }
    function Mb(e) {
      const t = vA(e.heritageClauses, 96);
      return t && t.types.length > 0 ? t.types[0] : void 0;
    }
    function f6(e) {
      if (rn(e)) return bZ(e).map((t) => t.class);
      {
        const t = vA(e.heritageClauses, 119);
        return t?.types;
      }
    }
    function mD(e) {
      return au(e) ? gD(e) || Te : Zn(e) && zi(dx(Jd(e)), f6(e)) || Te;
    }
    function gD(e) {
      const t = vA(e.heritageClauses, 96);
      return t ? t.types : void 0;
    }
    function vA(e, t) {
      if (e) {
        for (const n of e) if (n.token === t) return n;
      }
    }
    function dv(e, t) {
      for (; e; ) {
        if (e.kind === t) return e;
        e = e.parent;
      }
    }
    function z_(e) {
      return 83 <= e && e <= 166;
    }
    function eJ(e) {
      return 19 <= e && e <= 79;
    }
    function J5(e) {
      return z_(e) || eJ(e);
    }
    function z5(e) {
      return 128 <= e && e <= 166;
    }
    function tJ(e) {
      return z_(e) && !z5(e);
    }
    function Jx(e) {
      const t = oS(e);
      return t !== void 0 && tJ(t);
    }
    function rJ(e) {
      const t = lS(e);
      return !!t && !z5(t);
    }
    function p6(e) {
      return 2 <= e && e <= 7;
    }
    var $K = /* @__PURE__ */ ((e) => (e[e.Normal = 0] = "Normal", e[e.Generator = 1] = "Generator", e[e.Async = 2] = "Async", e[e.Invalid = 4] = "Invalid", e[e.AsyncGenerator = 3] = "AsyncGenerator", e))($K || {});
    function Gc(e) {
      if (!e) return 4;
      let t = 0;
      switch (e.kind) {
        case 263:
        case 219:
        case 175:
          e.asteriskToken && (t |= 1);
        case 220:
          Qn(e, 1024) && (t |= 2);
          break;
      }
      return e.body || (t |= 4), t;
    }
    function hD(e) {
      switch (e.kind) {
        case 263:
        case 219:
        case 220:
        case 175:
          return e.body !== void 0 && e.asteriskToken === void 0 && Qn(e, 1024);
      }
      return !1;
    }
    function ep(e) {
      return Xs(e) || V_(e);
    }
    function W5(e) {
      return kv(e) && (e.operator === 40 || e.operator === 41) && V_(e.operand);
    }
    function zh(e) {
      const t = va(e);
      return !!t && U5(t);
    }
    function U5(e) {
      if (!(e.kind === 168 || e.kind === 213)) return !1;
      const t = Po(e) ? Gs(e.argumentExpression) : e.expression;
      return !ep(t) && !W5(t);
    }
    function kS(e) {
      switch (e.kind) {
        case 80:
        case 81:
          return e.escapedText;
        case 11:
        case 15:
        case 9:
        case 10:
          return mc(e.text);
        case 168:
          const t = e.expression;
          return ep(t) ? mc(t.text) : W5(t) ? t.operator === 41 ? as(t.operator) + t.operand.text : t.operand.text : void 0;
        case 296:
          return tk(e);
        default:
          return E.assertNever(e);
      }
    }
    function Tm(e) {
      switch (e.kind) {
        case 80:
        case 11:
        case 15:
        case 9:
          return !0;
        default:
          return !1;
      }
    }
    function Xp(e) {
      return Jg(e) ? On(e) : Gd(e) ? GD(e) : e.text;
    }
    function yD(e) {
      return Jg(e) ? e.escapedText : Gd(e) ? tk(e) : mc(e.text);
    }
    function bA(e, t) {
      return `__#${ss(e)}@${t}`;
    }
    function vD(e) {
      return ta(e.escapedName, "__@");
    }
    function nJ(e) {
      return ta(e.escapedName, "__#");
    }
    function LFe(e) {
      return Fe(e) ? On(e) === "__proto__" : Ts(e) && e.text === "__proto__";
    }
    function V5(e, t) {
      switch (e = Ic(e), e.kind) {
        case 232:
          if (cU(e)) return !1;
          break;
        case 219:
          if (e.name) return !1;
          break;
        case 220:
          break;
        default:
          return !1;
      }
      return typeof t == "function" ? t(e) : !0;
    }
    function iJ(e) {
      switch (e.kind) {
        case 304:
          return !LFe(e.name);
        case 305:
          return !!e.objectAssignmentInitializer;
        case 261:
          return Fe(e.name) && !!e.initializer;
        case 170:
          return Fe(e.name) && !!e.initializer && !e.dotDotDotToken;
        case 209:
          return Fe(e.name) && !!e.initializer && !e.dotDotDotToken;
        case 173:
          return !!e.initializer;
        case 227:
          switch (e.operatorToken.kind) {
            case 64:
            case 77:
            case 76:
            case 78:
              return Fe(e.left);
          }
          break;
        case 278:
          return !0;
      }
      return !1;
    }
    function hf(e, t) {
      if (!iJ(e)) return !1;
      switch (e.kind) {
        case 304:
          return V5(e.initializer, t);
        case 305:
          return V5(e.objectAssignmentInitializer, t);
        case 261:
        case 170:
        case 209:
        case 173:
          return V5(e.initializer, t);
        case 227:
          return V5(e.right, t);
        case 278:
          return V5(e.expression, t);
      }
    }
    function aJ(e) {
      return e.escapedText === "push" || e.escapedText === "unshift";
    }
    function mv(e) {
      return xm(e).kind === 170;
    }
    function xm(e) {
      for (; e.kind === 209; ) e = e.parent.parent;
      return e;
    }
    function sJ(e) {
      const t = e.kind;
      return t === 177 || t === 219 || t === 263 || t === 220 || t === 175 || t === 178 || t === 179 || t === 268 || t === 308;
    }
    function wo(e) {
      return Wd(e.pos) || Wd(e.end);
    }
    var XK = /* @__PURE__ */ ((e) => (e[e.Left = 0] = "Left", e[e.Right = 1] = "Right", e))(XK || {});
    function oJ(e) {
      const t = Jhe(e), n = e.kind === 215 && e.arguments !== void 0;
      return cJ(e.kind, t, n);
    }
    function cJ(e, t, n) {
      switch (e) {
        case 215:
          return n ? 0 : 1;
        case 225:
        case 222:
        case 223:
        case 221:
        case 224:
        case 228:
        case 230:
          return 1;
        case 227:
          switch (t) {
            case 43:
            case 64:
            case 65:
            case 66:
            case 68:
            case 67:
            case 69:
            case 70:
            case 71:
            case 72:
            case 73:
            case 74:
            case 79:
            case 75:
            case 76:
            case 77:
            case 78:
              return 1;
          }
      }
      return 0;
    }
    function bD(e) {
      const t = Jhe(e), n = e.kind === 215 && e.arguments !== void 0;
      return SA(e.kind, t, n);
    }
    function Jhe(e) {
      return e.kind === 227 ? e.operatorToken.kind : e.kind === 225 || e.kind === 226 ? e.operator : e.kind;
    }
    var QK = /* @__PURE__ */ ((e) => (e[e.Comma = 0] = "Comma", e[e.Spread = 1] = "Spread", e[e.Yield = 2] = "Yield", e[e.Assignment = 3] = "Assignment", e[e.Conditional = 4] = "Conditional", e[e.LogicalOR = 5] = "LogicalOR", e[e.Coalesce = 5] = "Coalesce", e[e.LogicalAND = 6] = "LogicalAND", e[e.BitwiseOR = 7] = "BitwiseOR", e[e.BitwiseXOR = 8] = "BitwiseXOR", e[e.BitwiseAND = 9] = "BitwiseAND", e[e.Equality = 10] = "Equality", e[e.Relational = 11] = "Relational", e[e.Shift = 12] = "Shift", e[e.Additive = 13] = "Additive", e[e.Multiplicative = 14] = "Multiplicative", e[e.Exponentiation = 15] = "Exponentiation", e[e.Unary = 16] = "Unary", e[e.Update = 17] = "Update", e[e.LeftHandSide = 18] = "LeftHandSide", e[e.Member = 19] = "Member", e[e.Primary = 20] = "Primary", e[e.Highest = 20] = "Highest", e[e.Lowest = 0] = "Lowest", e[e.Invalid = -1] = "Invalid", e))(QK || {});
    function SA(e, t, n) {
      switch (e) {
        case 357:
          return 0;
        case 231:
          return 1;
        case 230:
          return 2;
        case 228:
          return 4;
        case 227:
          switch (t) {
            case 28:
              return 0;
            case 64:
            case 65:
            case 66:
            case 68:
            case 67:
            case 69:
            case 70:
            case 71:
            case 72:
            case 73:
            case 74:
            case 79:
            case 75:
            case 76:
            case 77:
            case 78:
              return 3;
            default:
              return TA(t);
          }
        case 217:
        case 236:
        case 225:
        case 222:
        case 223:
        case 221:
        case 224:
          return 16;
        case 226:
          return 17;
        case 214:
          return 18;
        case 215:
          return n ? 19 : 18;
        case 216:
        case 212:
        case 213:
        case 237:
          return 19;
        case 235:
        case 239:
          return 11;
        case 110:
        case 108:
        case 80:
        case 81:
        case 106:
        case 112:
        case 97:
        case 9:
        case 10:
        case 11:
        case 210:
        case 211:
        case 219:
        case 220:
        case 232:
        case 14:
        case 15:
        case 229:
        case 218:
        case 233:
        case 285:
        case 286:
        case 289:
          return 20;
        default:
          return -1;
      }
    }
    function TA(e) {
      switch (e) {
        case 61:
          return 5;
        case 57:
          return 5;
        case 56:
          return 6;
        case 52:
          return 7;
        case 53:
          return 8;
        case 51:
          return 9;
        case 35:
        case 36:
        case 37:
        case 38:
          return 10;
        case 30:
        case 32:
        case 33:
        case 34:
        case 104:
        case 103:
        case 130:
        case 152:
          return 11;
        case 48:
        case 49:
        case 50:
          return 12;
        case 40:
        case 41:
          return 13;
        case 42:
        case 44:
        case 45:
          return 14;
        case 43:
          return 15;
      }
      return -1;
    }
    function d6(e) {
      return dn(e, (t) => {
        switch (t.kind) {
          case 295:
            return !!t.expression;
          case 12:
            return !t.containsOnlyTriviaWhiteSpaces;
          default:
            return !0;
        }
      });
    }
    function SD() {
      let e = [];
      const t = [], n = /* @__PURE__ */ new Map();
      let i = !1;
      return {
        add: o,
        lookup: a,
        getGlobalDiagnostics: c,
        getDiagnostics: _
      };
      function a(u) {
        let d;
        if (u.file ? d = n.get(u.file.fileName) : d = e, !d) return;
        const g = Lg(d, u, mo, Nee);
        if (g >= 0) return d[g];
        if (~g > 0 && fO(u, d[~g - 1])) return d[~g - 1];
      }
      function o(u) {
        let d;
        u.file ? (d = n.get(u.file.fileName), d || (d = [], n.set(u.file.fileName, d), wy(t, u.file.fileName, Du))) : (i && (i = !1, e = e.slice()), d = e), wy(d, u, Nee, fO);
      }
      function c() {
        return i = !0, e;
      }
      function _(u) {
        if (u) return n.get(u) || [];
        const d = wi(t, (g) => n.get(g));
        return e.length && d.unshift(...e), d;
      }
    }
    var MFe = /\$\{/g;
    function lJ(e) {
      return e.replace(MFe, "\\${");
    }
    function YK(e) {
      return !!((e.templateFlags || 0) & 2048);
    }
    function uJ(e) {
      return e && !!(IS(e) ? YK(e) : YK(e.head) || _t(e.templateSpans, (t) => YK(t.literal)));
    }
    var RFe = /[\\"\u0000-\u001f\u2028\u2029\u0085]/g, jFe = /[\\'\u0000-\u001f\u2028\u2029\u0085]/g, BFe = /\r\n|[\\`\u0000-\u0009\u000b-\u001f\u2028\u2029\u0085]/g, JFe = new Map(Object.entries({
      "	": "\\t",
      "\v": "\\v",
      "\f": "\\f",
      "\b": "\\b",
      "\r": "\\r",
      "\n": "\\n",
      "\\": "\\\\",
      '"': '\\"',
      "'": "\\'",
      "`": "\\`",
      "\u2028": "\\u2028",
      "\u2029": "\\u2029",
      "": "\\u0085",
      "\r\n": "\\r\\n"
    }));
    function zhe(e) {
      return "\\u" + ("0000" + e.toString(16).toUpperCase()).slice(-4);
    }
    function zFe(e, t, n) {
      if (e.charCodeAt(0) === 0) {
        const i = n.charCodeAt(t + e.length);
        return i >= 48 && i <= 57 ? "\\x00" : "\\0";
      }
      return JFe.get(e) || zhe(e.charCodeAt(0));
    }
    function dg(e, t) {
      const n = t === 96 ? BFe : t === 39 ? jFe : RFe;
      return e.replace(n, zFe);
    }
    var Whe = /[^\u0000-\u007F]/g;
    function q5(e, t) {
      return e = dg(e, t), Whe.test(e) ? e.replace(Whe, (n) => zhe(n.charCodeAt(0))) : e;
    }
    var WFe = /["\u0000-\u001f\u2028\u2029\u0085]/g, UFe = /['\u0000-\u001f\u2028\u2029\u0085]/g, VFe = new Map(Object.entries({
      '"': "&quot;",
      "'": "&apos;"
    }));
    function qFe(e) {
      return "&#x" + e.toString(16).toUpperCase() + ";";
    }
    function GFe(e) {
      return e.charCodeAt(0) === 0 ? "&#0;" : VFe.get(e) || qFe(e.charCodeAt(0));
    }
    function _J(e, t) {
      const n = t === 39 ? UFe : WFe;
      return e.replace(n, GFe);
    }
    function Qp(e) {
      const t = e.length;
      return t >= 2 && e.charCodeAt(0) === e.charCodeAt(t - 1) && HFe(e.charCodeAt(0)) ? e.substring(1, t - 1) : e;
    }
    function HFe(e) {
      return e === 39 || e === 34 || e === 96;
    }
    function m6(e) {
      const t = e.charCodeAt(0);
      return t >= 97 && t <= 122 || e.includes("-");
    }
    var xA = ["", "    "];
    function G5(e) {
      const t = xA[1];
      for (let n = xA.length; n <= e; n++) xA.push(xA[n - 1] + t);
      return xA[e];
    }
    function kA() {
      return xA[1].length;
    }
    function CA(e) {
      var t, n, i, a, o, c = !1;
      function _(D) {
        const P = Sx(D);
        P.length > 1 ? (a = a + P.length - 1, o = t.length - D.length + ws(P), i = o - t.length === 0) : i = !1;
      }
      function u(D) {
        D && D.length && (i && (D = G5(n) + D, i = !1), t += D, _(D));
      }
      function d(D) {
        D && (c = !1), u(D);
      }
      function g(D) {
        D && (c = !0), u(D);
      }
      function h() {
        t = "", n = 0, i = !0, a = 0, o = 0, c = !1;
      }
      function S(D) {
        D !== void 0 && (t += D, _(D), c = !1);
      }
      function T(D) {
        D && D.length && d(D);
      }
      function k(D) {
        (!i || D) && (t += e, a++, o = t.length, i = !0, c = !1);
      }
      return h(), {
        write: d,
        rawWrite: S,
        writeLiteral: T,
        writeLine: k,
        increaseIndent: () => {
          n++;
        },
        decreaseIndent: () => {
          n--;
        },
        getIndent: () => n,
        getTextPos: () => t.length,
        getLine: () => a,
        getColumn: () => i ? n * kA() : t.length - o,
        getText: () => t,
        isAtStartOfLine: () => i,
        hasTrailingComment: () => c,
        hasTrailingWhitespace: () => !!t.length && Rg(t.charCodeAt(t.length - 1)),
        clear: h,
        writeKeyword: d,
        writeOperator: d,
        writeParameter: d,
        writeProperty: d,
        writePunctuation: d,
        writeSpace: d,
        writeStringLiteral: d,
        writeSymbol: (D, P) => d(D),
        writeTrailingSemicolon: d,
        writeComment: g
      };
    }
    function fJ(e) {
      let t = !1;
      function n() {
        t && (e.writeTrailingSemicolon(";"), t = !1);
      }
      return {
        ...e,
        writeTrailingSemicolon() {
          t = !0;
        },
        writeLiteral(i) {
          n(), e.writeLiteral(i);
        },
        writeStringLiteral(i) {
          n(), e.writeStringLiteral(i);
        },
        writeSymbol(i, a) {
          n(), e.writeSymbol(i, a);
        },
        writePunctuation(i) {
          n(), e.writePunctuation(i);
        },
        writeKeyword(i) {
          n(), e.writeKeyword(i);
        },
        writeOperator(i) {
          n(), e.writeOperator(i);
        },
        writeParameter(i) {
          n(), e.writeParameter(i);
        },
        writeSpace(i) {
          n(), e.writeSpace(i);
        },
        writeProperty(i) {
          n(), e.writeProperty(i);
        },
        writeComment(i) {
          n(), e.writeComment(i);
        },
        writeLine() {
          n(), e.writeLine();
        },
        increaseIndent() {
          n(), e.increaseIndent();
        },
        decreaseIndent() {
          n(), e.decreaseIndent();
        }
      };
    }
    function CS(e) {
      return e.useCaseSensitiveFileNames ? e.useCaseSensitiveFileNames() : !1;
    }
    function Wh(e) {
      return pu(CS(e));
    }
    function pJ(e, t, n) {
      return t.moduleName || dJ(e, t.fileName, n && n.fileName);
    }
    function Uhe(e, t) {
      return e.getCanonicalFileName(ca(t, e.getCurrentDirectory()));
    }
    function ZK(e, t, n) {
      const i = t.getExternalModuleFileFromDeclaration(n);
      if (!i || i.isDeclarationFile) return;
      const a = Lx(n);
      if (!(a && Xs(a) && !Bf(a.text) && !Uhe(e, i.path).includes(Uhe(e, El(e.getCommonSourceDirectory())))))
        return pJ(e, i);
    }
    function dJ(e, t, n) {
      const i = (c) => e.getCanonicalFileName(c), a = Eo(n ? Xn(n) : e.getCommonSourceDirectory(), e.getCurrentDirectory(), i), o = __(bx(a, ca(t, e.getCurrentDirectory()), a, i, !1));
      return n ? sS(o) : o;
    }
    function KK(e, t, n) {
      const i = t.getCompilerOptions();
      let a;
      return i.outDir ? a = __(Y5(e, t, i.outDir)) : a = __(e), a + n;
    }
    function eee(e, t) {
      return H5(e, t.getCompilerOptions(), t);
    }
    function H5(e, t, n) {
      const i = t.declarationDir || t.outDir, a = i ? tee(e, i, n.getCurrentDirectory(), n.getCommonSourceDirectory(), (c) => n.getCanonicalFileName(c)) : e, o = $5(a);
      return __(a) + o;
    }
    function $5(e) {
      return jc(e, [".mjs", ".mts"]) ? ".d.mts" : jc(e, [".cjs", ".cts"]) ? ".d.cts" : jc(e, [".json"]) ? ".d.json.ts" : ".d.ts";
    }
    function mJ(e) {
      return jc(e, [
        ".d.mts",
        ".mjs",
        ".mts"
      ]) ? [".mts", ".mjs"] : jc(e, [
        ".d.cts",
        ".cjs",
        ".cts"
      ]) ? [".cts", ".cjs"] : jc(e, [".d.json.ts"]) ? [".json"] : [
        ".tsx",
        ".ts",
        ".jsx",
        ".js"
      ];
    }
    function gJ(e, t, n, i) {
      return n ? Fy(i(), Zf(n, e, t)) : e;
    }
    function X5(e, t) {
      var n;
      if (e.paths)
        return e.baseUrl ?? E.checkDefined(e.pathsBasePath || ((n = t.getCurrentDirectory) == null ? void 0 : n.call(t)), "Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.");
    }
    function Q5(e, t, n) {
      const i = e.getCompilerOptions();
      if (i.outFile) {
        const a = u_(i), o = i.emitDeclarationOnly || a === 2 || a === 4;
        return dn(e.getSourceFiles(), (c) => (o || !Sl(c)) && gv(c, e, n));
      } else return dn(t === void 0 ? e.getSourceFiles() : [t], (a) => gv(a, e, n));
    }
    function gv(e, t, n) {
      const i = t.getCompilerOptions();
      if (i.noEmitForJsFiles && T_(e) || e.isDeclarationFile || t.isSourceFileFromExternalLibrary(e)) return !1;
      if (n) return !0;
      if (t.isSourceOfProjectReferenceRedirect(e.fileName)) return !1;
      if (!Tp(e)) return !0;
      if (t.getRedirectFromSourceFile(e.fileName)) return !1;
      if (i.outFile) return !0;
      if (!i.outDir) return !1;
      if (i.rootDir || i.configFilePath) {
        const a = ca(Aw(i, () => [], t.getCurrentDirectory(), t.getCanonicalFileName), t.getCurrentDirectory()), o = tee(e.fileName, i.outDir, t.getCurrentDirectory(), a, t.getCanonicalFileName);
        if (Rh(e.fileName, o, t.getCurrentDirectory(), !t.useCaseSensitiveFileNames()) === 0) return !1;
      }
      return !0;
    }
    function Y5(e, t, n) {
      return tee(e, n, t.getCurrentDirectory(), t.getCommonSourceDirectory(), (i) => t.getCanonicalFileName(i));
    }
    function tee(e, t, n, i, a) {
      let o = ca(e, n);
      return o = a(o).indexOf(a(i)) === 0 ? o.substring(i.length) : o, jn(t, o);
    }
    function Z5(e, t, n, i, a, o, c) {
      e.writeFile(n, i, a, (_) => {
        t.add(nc(p.Could_not_write_file_0_Colon_1, n, _));
      }, o, c);
    }
    function Vhe(e, t, n) {
      e.length > Md(e) && !n(e) && (Vhe(Xn(e), t, n), t(e));
    }
    function hJ(e, t, n, i, a, o) {
      try {
        i(e, t, n);
      } catch {
        Vhe(Xn(us(e)), a, o), i(e, t, n);
      }
    }
    function TD(e, t) {
      return M4(Mg(e), t);
    }
    function g6(e, t) {
      return M4(e, t);
    }
    function Xg(e) {
      return xr(e.members, (t) => yc(t) && Gp(t.body));
    }
    function xD(e) {
      if (e && e.parameters.length > 0) {
        const t = e.parameters.length === 2 && Yy(e.parameters[0]);
        return e.parameters[t ? 1 : 0];
      }
    }
    function ree(e) {
      const t = xD(e);
      return t && t.type;
    }
    function Rb(e) {
      if (e.parameters.length && !z0(e)) {
        const t = e.parameters[0];
        if (Yy(t)) return t;
      }
    }
    function Yy(e) {
      return Zy(e.name);
    }
    function Zy(e) {
      return !!e && e.kind === 80 && yJ(e);
    }
    function zx(e) {
      return !!cr(e, (t) => t.kind === 187 ? !0 : t.kind === 80 || t.kind === 167 ? !1 : "quit");
    }
    function jb(e) {
      if (!Zy(e)) return !1;
      for (; k_(e.parent) && e.parent.left === e; ) e = e.parent;
      return e.parent.kind === 187;
    }
    function yJ(e) {
      return e.escapedText === "this";
    }
    function Bb(e, t) {
      let n, i, a, o;
      return zh(t) ? (n = t, t.kind === 178 ? a = t : t.kind === 179 ? o = t : E.fail("Accessor has wrong kind")) : bt(e, (c) => {
        zy(c) && es(c) === es(t) && kS(c.name) === kS(t.name) && (n ? i || (i = c) : n = c, c.kind === 178 && !a && (a = c), c.kind === 179 && !o && (o = c));
      }), {
        firstAccessor: n,
        secondAccessor: i,
        getAccessor: a,
        setAccessor: o
      };
    }
    function _l(e) {
      if (!rn(e) && Xc(e) || Kp(e)) return;
      const t = e.type;
      return t || !rn(e) ? t : G4(e) ? e.typeExpression && e.typeExpression.type : k0(e);
    }
    function nee(e) {
      return e.type;
    }
    function yf(e) {
      return z0(e) ? e.type && e.type.typeExpression && e.type.typeExpression.type : e.type || (rn(e) ? D3(e) : void 0);
    }
    function K5(e) {
      return ks(av(e), (t) => $Fe(t) ? t.typeParameters : void 0);
    }
    function $Fe(e) {
      return ed(e) && !(e.parent.kind === 321 && (e.parent.tags.some($p) || e.parent.tags.some(j6)));
    }
    function vJ(e) {
      const t = xD(e);
      return t && _l(t);
    }
    function XFe(e, t, n, i) {
      QFe(e, t, n.pos, i);
    }
    function QFe(e, t, n, i) {
      i && i.length && n !== i[0].pos && g6(e, n) !== g6(e, i[0].pos) && t.writeLine();
    }
    function iee(e, t, n, i) {
      n !== i && g6(e, n) !== g6(e, i) && t.writeLine();
    }
    function YFe(e, t, n, i, a, o, c, _) {
      if (i && i.length > 0) {
        a && n.writeSpace(" ");
        let u = !1;
        for (const d of i)
          u && (n.writeSpace(" "), u = !1), _(e, t, n, d.pos, d.end, c), d.hasTrailingNewLine ? n.writeLine() : u = !0;
        u && o && n.writeSpace(" ");
      }
    }
    function aee(e, t, n, i, a, o, c) {
      let _, u;
      if (c ? a.pos === 0 && (_ = dn(jg(e, a.pos), d)) : _ = jg(e, a.pos), _) {
        const g = [];
        let h;
        for (const S of _) {
          if (h) {
            const T = g6(t, h.end);
            if (g6(t, S.pos) >= T + 2) break;
          }
          g.push(S), h = S;
        }
        if (g.length) {
          const S = g6(t, ws(g).end);
          g6(t, gs(e, a.pos)) >= S + 2 && (XFe(t, n, a, _), YFe(e, t, n, g, !1, !0, o, i), u = {
            nodePos: a.pos,
            detachedCommentEndPos: ws(g).end
          });
        }
      }
      return u;
      function d(g) {
        return p5(e, g.pos);
      }
    }
    function h6(e, t, n, i, a, o) {
      if (e.charCodeAt(i + 1) === 42) {
        const c = VC(t, i), _ = t.length;
        let u;
        for (let d = i, g = c.line; d < a; g++) {
          const h = g + 1 === _ ? e.length + 1 : t[g + 1];
          if (d !== i) {
            u === void 0 && (u = qhe(e, t[c.line], i));
            const S = n.getIndent() * kA() - u + qhe(e, d, h);
            if (S > 0) {
              let T = S % kA();
              const k = G5((S - T) / kA());
              for (n.rawWrite(k); T; )
                n.rawWrite(" "), T--;
            } else n.rawWrite("");
          }
          ZFe(e, a, n, o, d, h), d = h;
        }
      } else n.writeComment(e.substring(i, a));
    }
    function ZFe(e, t, n, i, a, o) {
      const c = Math.min(t, o - 1), _ = e.substring(a, c).trim();
      _ ? (n.writeComment(_), c !== t && n.writeLine()) : n.rawWrite(i);
    }
    function qhe(e, t, n) {
      let i = 0;
      for (; t < n && hm(e.charCodeAt(t)); t++) e.charCodeAt(t) === 9 ? i += kA() - i % kA() : i++;
      return i;
    }
    function bJ(e) {
      return Pu(e) !== 0;
    }
    function see(e) {
      return P0(e) !== 0;
    }
    function vf(e, t) {
      return !!Wx(e, t);
    }
    function Qn(e, t) {
      return !!oee(e, t);
    }
    function es(e) {
      return al(e) && vl(e) || Bc(e);
    }
    function vl(e) {
      return Qn(e, 256);
    }
    function eO(e) {
      return vf(e, 16);
    }
    function Jb(e) {
      return Qn(e, 64);
    }
    function SJ(e) {
      return Qn(e, 128);
    }
    function km(e) {
      return Qn(e, 512);
    }
    function ES(e) {
      return vf(e, 8);
    }
    function tp(e) {
      return Qn(e, 32768);
    }
    function Wx(e, t) {
      return Pu(e) & t;
    }
    function oee(e, t) {
      return P0(e) & t;
    }
    function cee(e, t, n) {
      return e.kind >= 0 && e.kind <= 166 ? 0 : (e.modifierFlagsCache & 536870912 || (e.modifierFlagsCache = TJ(e) | 536870912), n || t && rn(e) ? (!(e.modifierFlagsCache & 268435456) && e.parent && (e.modifierFlagsCache |= Ghe(e) | 268435456), Hhe(e.modifierFlagsCache)) : KFe(e.modifierFlagsCache));
    }
    function Pu(e) {
      return cee(e, !0);
    }
    function lee(e) {
      return cee(e, !0, !0);
    }
    function P0(e) {
      return cee(e, !1);
    }
    function Ghe(e) {
      let t = 0;
      return e.parent && !Fi(e) && (rn(e) && (SZ(e) && (t |= 8388608), TZ(e) && (t |= 16777216), xZ(e) && (t |= 33554432), kZ(e) && (t |= 67108864), CZ(e) && (t |= 134217728)), EZ(e) && (t |= 65536)), t;
    }
    function KFe(e) {
      return e & 65535;
    }
    function Hhe(e) {
      return e & 131071 | (e & 260046848) >>> 23;
    }
    function e9e(e) {
      return Hhe(Ghe(e));
    }
    function uee(e) {
      return TJ(e) | e9e(e);
    }
    function TJ(e) {
      let t = vd(e) ? Cm(e.modifiers) : 0;
      return (e.flags & 8 || e.kind === 80 && e.flags & 4096) && (t |= 32), t;
    }
    function Cm(e) {
      let t = 0;
      if (e) for (const n of e) t |= Ux(n.kind);
      return t;
    }
    function Ux(e) {
      switch (e) {
        case 126:
          return 256;
        case 125:
          return 1;
        case 124:
          return 4;
        case 123:
          return 2;
        case 128:
          return 64;
        case 129:
          return 512;
        case 95:
          return 32;
        case 138:
          return 128;
        case 87:
          return 4096;
        case 90:
          return 2048;
        case 134:
          return 1024;
        case 148:
          return 8;
        case 164:
          return 16;
        case 103:
          return 8192;
        case 147:
          return 16384;
        case 171:
          return 32768;
      }
      return 0;
    }
    function EA(e) {
      return e === 57 || e === 56;
    }
    function _ee(e) {
      return EA(e) || e === 54;
    }
    function kD(e) {
      return e === 76 || e === 77 || e === 78;
    }
    function xJ(e) {
      return un(e) && kD(e.operatorToken.kind);
    }
    function tO(e) {
      return EA(e) || e === 61;
    }
    function DA(e) {
      return un(e) && tO(e.operatorToken.kind);
    }
    function Uh(e) {
      return e >= 64 && e <= 79;
    }
    function kJ(e) {
      const t = CJ(e);
      return t && !t.isImplements ? t.class : void 0;
    }
    function CJ(e) {
      if (rh(e)) {
        if (kf(e.parent) && Zn(e.parent.parent)) return {
          class: e.parent.parent,
          isImplements: e.parent.token === 119
        };
        if (yk(e.parent)) {
          const t = pv(e.parent);
          if (t && Zn(t)) return {
            class: t,
            isImplements: !1
          };
        }
      }
    }
    function Hl(e, t) {
      return un(e) && (t ? e.operatorToken.kind === 64 : Uh(e.operatorToken.kind)) && j_(e.left);
    }
    function A0(e) {
      if (Hl(e, !0)) {
        const t = e.left.kind;
        return t === 211 || t === 210;
      }
      return !1;
    }
    function rO(e) {
      return kJ(e) !== void 0;
    }
    function go(e) {
      return e.kind === 80 || PA(e);
    }
    function x_(e) {
      switch (e.kind) {
        case 80:
          return e;
        case 167:
          do
            e = e.left;
          while (e.kind !== 80);
          return e;
        case 212:
          do
            e = e.expression;
          while (e.kind !== 80);
          return e;
      }
    }
    function wA(e) {
      return e.kind === 80 || e.kind === 110 || e.kind === 108 || e.kind === 237 || e.kind === 212 && wA(e.expression) || e.kind === 218 && wA(e.expression);
    }
    function PA(e) {
      return Ln(e) && Fe(e.name) && go(e.expression);
    }
    function AA(e) {
      if (Ln(e)) {
        const t = AA(e.expression);
        if (t !== void 0) return t + "." + mf(e.name);
      } else if (Po(e)) {
        const t = AA(e.expression);
        if (t !== void 0 && il(e.argumentExpression)) return t + "." + kS(e.argumentExpression);
      } else {
        if (Fe(e)) return Ti(e.escapedText);
        if (Gd(e)) return GD(e);
      }
    }
    function Ky(e) {
      return Ob(e) && Jh(e) === "prototype";
    }
    function CD(e) {
      return e.parent.kind === 167 && e.parent.right === e || e.parent.kind === 212 && e.parent.name === e || e.parent.kind === 237 && e.parent.name === e;
    }
    function EJ(e) {
      return !!e.parent && (Ln(e.parent) && e.parent.name === e || Po(e.parent) && e.parent.argumentExpression === e);
    }
    function fee(e) {
      return k_(e.parent) && e.parent.right === e || Ln(e.parent) && e.parent.name === e || Pv(e.parent) && e.parent.right === e;
    }
    function nO(e) {
      return un(e) && e.operatorToken.kind === 104;
    }
    function pee(e) {
      return nO(e.parent) && e === e.parent.right;
    }
    function DJ(e) {
      return e.kind === 211 && e.properties.length === 0;
    }
    function dee(e) {
      return e.kind === 210 && e.elements.length === 0;
    }
    function ED(e) {
      if (!(!t9e(e) || !e.declarations)) {
        for (const t of e.declarations) if (t.localSymbol) return t.localSymbol;
      }
    }
    function t9e(e) {
      return e && It(e.declarations) > 0 && Qn(e.declarations[0], 2048);
    }
    function iO(e) {
      return xr(w9e, (t) => lc(e, t));
    }
    function r9e(e) {
      const t = [], n = e.length;
      for (let i = 0; i < n; i++) {
        const a = e.charCodeAt(i);
        a < 128 ? t.push(a) : a < 2048 ? (t.push(a >> 6 | 192), t.push(a & 63 | 128)) : a < 65536 ? (t.push(a >> 12 | 224), t.push(a >> 6 & 63 | 128), t.push(a & 63 | 128)) : a < 131072 ? (t.push(a >> 18 | 240), t.push(a >> 12 & 63 | 128), t.push(a >> 6 & 63 | 128), t.push(a & 63 | 128)) : E.assert(!1, "Unexpected code point");
      }
      return t;
    }
    var Vx = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    function mee(e) {
      let t = "";
      const n = r9e(e);
      let i = 0;
      const a = n.length;
      let o, c, _, u;
      for (; i < a; )
        o = n[i] >> 2, c = (n[i] & 3) << 4 | n[i + 1] >> 4, _ = (n[i + 1] & 15) << 2 | n[i + 2] >> 6, u = n[i + 2] & 63, i + 1 >= a ? _ = u = 64 : i + 2 >= a && (u = 64), t += Vx.charAt(o) + Vx.charAt(c) + Vx.charAt(_) + Vx.charAt(u), i += 3;
      return t;
    }
    function n9e(e) {
      let t = "", n = 0;
      const i = e.length;
      for (; n < i; ) {
        const a = e[n];
        if (a < 128)
          t += String.fromCharCode(a), n++;
        else if ((a & 192) === 192) {
          let o = a & 63;
          n++;
          let c = e[n];
          for (; (c & 192) === 128; )
            o = o << 6 | c & 63, n++, c = e[n];
          t += String.fromCharCode(o);
        } else
          t += String.fromCharCode(a), n++;
      }
      return t;
    }
    function gee(e, t) {
      return e && e.base64encode ? e.base64encode(t) : mee(t);
    }
    function hee(e, t) {
      if (e && e.base64decode) return e.base64decode(t);
      const n = t.length, i = [];
      let a = 0;
      for (; a < n && t.charCodeAt(a) !== Vx.charCodeAt(64); ) {
        const o = Vx.indexOf(t[a]), c = Vx.indexOf(t[a + 1]), _ = Vx.indexOf(t[a + 2]), u = Vx.indexOf(t[a + 3]), d = (o & 63) << 2 | c >> 4 & 3, g = (c & 15) << 4 | _ >> 2 & 15, h = (_ & 3) << 6 | u & 63;
        g === 0 && _ !== 0 ? i.push(d) : h === 0 && u !== 0 ? i.push(d, g) : i.push(d, g, h), a += 4;
      }
      return n9e(i);
    }
    function wJ(e, t) {
      const n = Ta(t) ? t : t.readFile(e);
      if (!n) return;
      let i = NA(n);
      if (i === void 0) {
        const a = gW(e, n);
        a.error || (i = a.config);
      }
      return i;
    }
    function y6(e, t) {
      return wJ(e, t) || {};
    }
    function NA(e) {
      try {
        return JSON.parse(e);
      } catch {
        return;
      }
    }
    function zd(e, t) {
      return !t.directoryExists || t.directoryExists(e);
    }
    var i9e = `\r
`, a9e = `
`;
    function N0(e) {
      switch (e.newLine) {
        case 0:
          return i9e;
        case 1:
        case void 0:
          return a9e;
      }
    }
    function bf(e, t = e) {
      return E.assert(t >= e || t === -1), {
        pos: e,
        end: t
      };
    }
    function aO(e, t) {
      return bf(e.pos, t);
    }
    function hv(e, t) {
      return bf(t, e.end);
    }
    function Vh(e) {
      const t = vd(e) ? Ya(e.modifiers, pl) : void 0;
      return t && !Wd(t.end) ? hv(e, t.end) : e;
    }
    function Em(e) {
      if (ga(e) || hc(e)) return hv(e, e.name.pos);
      const t = vd(e) ? Wo(e.modifiers) : void 0;
      return t && !Wd(t.end) ? hv(e, t.end) : Vh(e);
    }
    function PJ(e, t) {
      return bf(e, e + as(t).length);
    }
    function DS(e, t) {
      return vee(e, e, t);
    }
    function sO(e, t, n) {
      return xp(DD(e, n, !1), DD(t, n, !1), n);
    }
    function yee(e, t, n) {
      return xp(e.end, t.end, n);
    }
    function vee(e, t, n) {
      return xp(DD(e, n, !1), t.end, n);
    }
    function IA(e, t, n) {
      return xp(e.end, DD(t, n, !1), n);
    }
    function AJ(e, t, n, i) {
      const a = DD(t, n, i);
      return R4(n, e.end, a);
    }
    function $he(e, t, n) {
      return R4(n, e.end, t.end);
    }
    function bee(e, t) {
      return !xp(e.pos, e.end, t);
    }
    function xp(e, t, n) {
      return R4(n, e, t) === 0;
    }
    function DD(e, t, n) {
      return Wd(e.pos) ? -1 : gs(t.text, e.pos, !1, n);
    }
    function See(e, t, n, i) {
      const a = gs(n.text, e, !1, i);
      return R4(n, s9e(a, t, n) ?? t, a);
    }
    function Tee(e, t, n, i) {
      const a = gs(n.text, e, !1, i);
      return R4(n, e, Math.min(t, a));
    }
    function W_(e, t) {
      return NJ(e.pos, e.end, t);
    }
    function NJ(e, t, n) {
      return e <= n.pos && t >= n.end;
    }
    function s9e(e, t = 0, n) {
      for (; e-- > t; ) if (!Rg(n.text.charCodeAt(e))) return e;
    }
    function IJ(e) {
      const t = Ca(e);
      if (t) switch (t.parent.kind) {
        case 267:
        case 268:
          return t === t.parent.name;
      }
      return !1;
    }
    function wD(e) {
      return dn(e.declarations, OA);
    }
    function OA(e) {
      return ci(e) && e.initializer !== void 0;
    }
    function OJ(e) {
      return e.watch && po(e, "watch");
    }
    function md(e) {
      e.close();
    }
    function gc(e) {
      return e.flags & 33554432 ? e.links.checkFlags : 0;
    }
    function kp(e, t = !1) {
      if (e.valueDeclaration) {
        const n = nv(t && e.declarations && xr(e.declarations, ef) || e.flags & 32768 && xr(e.declarations, Dp) || e.valueDeclaration);
        return e.parent && e.parent.flags & 32 ? n : n & -8;
      }
      if (gc(e) & 6) {
        const n = e.links.checkFlags;
        return (n & 1024 ? 2 : n & 256 ? 1 : 4) | (n & 2048 ? 256 : 0);
      }
      return e.flags & 4194304 ? 257 : 0;
    }
    function mu(e, t) {
      return e.flags & 2097152 ? t.getAliasedSymbol(e) : e;
    }
    function v6(e) {
      return e.exportSymbol ? e.exportSymbol.flags | e.flags : e.flags;
    }
    function oO(e) {
      return PD(e) === 1;
    }
    function qx(e) {
      return PD(e) !== 0;
    }
    function PD(e) {
      const { parent: t } = e;
      switch (t?.kind) {
        case 218:
          return PD(t);
        case 226:
        case 225:
          const { operator: n } = t;
          return n === 46 || n === 47 ? 2 : 0;
        case 227:
          const { left: i, operatorToken: a } = t;
          return i === e && Uh(a.kind) ? a.kind === 64 ? 1 : 2 : 0;
        case 212:
          return t.name !== e ? 0 : PD(t);
        case 304: {
          const o = PD(t.parent);
          return e === t.name ? o9e(o) : o;
        }
        case 305:
          return e === t.objectAssignmentInitializer ? 0 : PD(t.parent);
        case 210:
          return PD(t);
        case 250:
        case 251:
          return e === t.initializer ? 1 : 0;
        default:
          return 0;
      }
    }
    function o9e(e) {
      switch (e) {
        case 0:
          return 1;
        case 1:
          return 0;
        case 2:
          return 2;
        default:
          return E.assertNever(e);
      }
    }
    function FJ(e, t) {
      if (!e || !t || Object.keys(e).length !== Object.keys(t).length) return !1;
      for (const n in e) if (typeof e[n] == "object") {
        if (!FJ(e[n], t[n])) return !1;
      } else if (typeof e[n] != "function" && e[n] !== t[n])
        return !1;
      return !0;
    }
    function K_(e, t) {
      e.forEach(t), e.clear();
    }
    function Qg(e, t, n) {
      const { onDeleteValue: i, onExistingValue: a } = n;
      e.forEach((o, c) => {
        var _;
        t?.has(c) ? a && a(o, (_ = t.get) == null ? void 0 : _.call(t, c), c) : (e.delete(c), i(o, c));
      });
    }
    function AD(e, t, n) {
      Qg(e, t, n);
      const { createNewValue: i } = n;
      t?.forEach((a, o) => {
        e.has(o) || e.set(o, i(o, a));
      });
    }
    function xee(e) {
      if (e.flags & 32) {
        const t = I0(e);
        return !!t && Qn(t, 64);
      }
      return !1;
    }
    function I0(e) {
      var t;
      return (t = e.declarations) == null ? void 0 : t.find(Zn);
    }
    function yn(e) {
      return e.flags & 403963917 ? e.objectFlags : 0;
    }
    function cO(e) {
      return !!e && !!e.declarations && !!e.declarations[0] && cN(e.declarations[0]);
    }
    function kee({ moduleSpecifier: e }) {
      return Ts(e) ? e.text : uc(e);
    }
    function LJ(e) {
      let t;
      return Fa(e, (n) => {
        Gp(n) && (t = n);
      }, (n) => {
        for (let i = n.length - 1; i >= 0; i--) if (Gp(n[i])) {
          t = n[i];
          break;
        }
      }), t;
    }
    function Yp(e, t) {
      return e.has(t) ? !1 : (e.add(t), !0);
    }
    function Gx(e) {
      return Zn(e) || au(e) || C_(e);
    }
    function MJ(e) {
      return e >= 183 && e <= 206 || e === 133 || e === 159 || e === 150 || e === 163 || e === 151 || e === 136 || e === 154 || e === 155 || e === 116 || e === 157 || e === 146 || e === 141 || e === 234 || e === 313 || e === 314 || e === 315 || e === 316 || e === 317 || e === 318 || e === 319;
    }
    function jo(e) {
      return e.kind === 212 || e.kind === 213;
    }
    function RJ(e) {
      return e.kind === 212 ? e.name : (E.assert(e.kind === 213), e.argumentExpression);
    }
    function lO(e) {
      return e.kind === 276 || e.kind === 280;
    }
    function Hx(e) {
      for (; jo(e); ) e = e.expression;
      return e;
    }
    function Cee(e, t) {
      if (jo(e.parent) && EJ(e)) return n(e.parent);
      function n(i) {
        if (i.kind === 212) {
          const a = t(i.name);
          if (a !== void 0) return a;
        } else if (i.kind === 213) if (Fe(i.argumentExpression) || Xs(i.argumentExpression)) {
          const a = t(i.argumentExpression);
          if (a !== void 0) return a;
        } else return;
        if (jo(i.expression)) return n(i.expression);
        if (Fe(i.expression)) return t(i.expression);
      }
    }
    function b6(e, t) {
      for (; ; ) {
        switch (e.kind) {
          case 226:
            e = e.operand;
            continue;
          case 227:
            e = e.left;
            continue;
          case 228:
            e = e.condition;
            continue;
          case 216:
            e = e.tag;
            continue;
          case 214:
            if (t) return e;
          case 235:
          case 213:
          case 212:
          case 236:
          case 356:
          case 239:
            e = e.expression;
            continue;
        }
        return e;
      }
    }
    function c9e(e, t) {
      this.flags = e, this.escapedName = t, this.declarations = void 0, this.valueDeclaration = void 0, this.id = 0, this.mergeId = 0, this.parent = void 0, this.members = void 0, this.exports = void 0, this.exportSymbol = void 0, this.constEnumOnlyModule = void 0, this.isReferenced = void 0, this.lastAssignmentPos = void 0, this.links = void 0;
    }
    function l9e(e, t) {
      this.flags = t, (E.isDebugging || sn) && (this.checker = e);
    }
    function u9e(e, t) {
      this.flags = t, E.isDebugging && (this.checker = e);
    }
    function Eee(e, t, n) {
      this.pos = t, this.end = n, this.kind = e, this.id = 0, this.flags = 0, this.modifierFlagsCache = 0, this.transformFlags = 0, this.parent = void 0, this.original = void 0, this.emitNode = void 0;
    }
    function _9e(e, t, n) {
      this.pos = t, this.end = n, this.kind = e, this.id = 0, this.flags = 0, this.transformFlags = 0, this.parent = void 0, this.emitNode = void 0;
    }
    function f9e(e, t, n) {
      this.pos = t, this.end = n, this.kind = e, this.id = 0, this.flags = 0, this.transformFlags = 0, this.parent = void 0, this.original = void 0, this.emitNode = void 0;
    }
    function p9e(e, t, n) {
      this.fileName = e, this.text = t, this.skipTrivia = n || ((i) => i);
    }
    var gu = {
      getNodeConstructor: () => Eee,
      getTokenConstructor: () => _9e,
      getIdentifierConstructor: () => f9e,
      getPrivateIdentifierConstructor: () => Eee,
      getSourceFileConstructor: () => Eee,
      getSymbolConstructor: () => c9e,
      getTypeConstructor: () => l9e,
      getSignatureConstructor: () => u9e,
      getSourceMapSourceConstructor: () => p9e
    }, Xhe = [];
    function Qhe(e) {
      Xhe.push(e), e(gu);
    }
    function Dee(e) {
      Object.assign(gu, e), bt(Xhe, (t) => t(gu));
    }
    function Yg(e, t) {
      return e.replace(/\{(\d+)\}/g, (n, i) => "" + E.checkDefined(t[+i]));
    }
    var uO;
    function wee(e) {
      uO = e;
    }
    function Pee(e) {
      !uO && e && (uO = e());
    }
    function Oa(e) {
      return uO && uO[e.key] || e.message;
    }
    function $x(e, t, n, i, a, ...o) {
      n + i > t.length && (i = t.length - n), dK(t, n, i);
      let c = Oa(a);
      return _t(o) && (c = Yg(c, o)), {
        file: void 0,
        start: n,
        length: i,
        messageText: c,
        category: a.category,
        code: a.code,
        reportsUnnecessary: a.reportsUnnecessary,
        fileName: e
      };
    }
    function d9e(e) {
      return e.file === void 0 && e.start !== void 0 && e.length !== void 0 && typeof e.fileName == "string";
    }
    function Yhe(e, t) {
      const n = t.fileName || "", i = t.text.length;
      E.assertEqual(e.fileName, n), E.assertLessThanOrEqual(e.start, i), E.assertLessThanOrEqual(e.start + e.length, i);
      const a = {
        file: t,
        start: e.start,
        length: e.length,
        messageText: e.messageText,
        category: e.category,
        code: e.code,
        reportsUnnecessary: e.reportsUnnecessary
      };
      if (e.relatedInformation) {
        a.relatedInformation = [];
        for (const o of e.relatedInformation) d9e(o) && o.fileName === n ? (E.assertLessThanOrEqual(o.start, i), E.assertLessThanOrEqual(o.start + o.length, i), a.relatedInformation.push(Yhe(o, t))) : a.relatedInformation.push(o);
      }
      return a;
    }
    function Xx(e, t) {
      const n = [];
      for (const i of e) n.push(Yhe(i, t));
      return n;
    }
    function wl(e, t, n, i, ...a) {
      dK(e.text, t, n);
      let o = Oa(i);
      return _t(a) && (o = Yg(o, a)), {
        file: e,
        start: t,
        length: n,
        messageText: o,
        category: i.category,
        code: i.code,
        reportsUnnecessary: i.reportsUnnecessary,
        reportsDeprecated: i.reportsDeprecated
      };
    }
    function Qx(e, ...t) {
      let n = Oa(e);
      return _t(t) && (n = Yg(n, t)), n;
    }
    function nc(e, ...t) {
      let n = Oa(e);
      return _t(t) && (n = Yg(n, t)), {
        file: void 0,
        start: void 0,
        length: void 0,
        messageText: n,
        category: e.category,
        code: e.code,
        reportsUnnecessary: e.reportsUnnecessary,
        reportsDeprecated: e.reportsDeprecated
      };
    }
    function _O(e, t) {
      return {
        file: void 0,
        start: void 0,
        length: void 0,
        code: e.code,
        category: e.category,
        messageText: e.next ? e : e.messageText,
        relatedInformation: t
      };
    }
    function ba(e, t, ...n) {
      let i = Oa(t);
      return _t(n) && (i = Yg(i, n)), {
        messageText: i,
        category: t.category,
        code: t.code,
        next: e === void 0 || Array.isArray(e) ? e : [e]
      };
    }
    function Aee(e, t) {
      let n = e;
      for (; n.next; ) n = n.next[0];
      n.next = [t];
    }
    function jJ(e) {
      return e.file ? e.file.path : void 0;
    }
    function ND(e, t) {
      return Nee(e, t) || m9e(e, t) || 0;
    }
    function Nee(e, t) {
      const n = BJ(e), i = BJ(t);
      return Du(jJ(e), jJ(t)) || Fo(e.start, t.start) || Fo(e.length, t.length) || Fo(n, i) || g9e(e, t) || 0;
    }
    function m9e(e, t) {
      return !e.relatedInformation && !t.relatedInformation ? 0 : e.relatedInformation && t.relatedInformation ? Fo(t.relatedInformation.length, e.relatedInformation.length) || bt(e.relatedInformation, (n, i) => {
        const a = t.relatedInformation[i];
        return ND(n, a);
      }) || 0 : e.relatedInformation ? -1 : 1;
    }
    function g9e(e, t) {
      let n = JJ(e), i = JJ(t);
      typeof n != "string" && (n = n.messageText), typeof i != "string" && (i = i.messageText);
      const a = typeof e.messageText != "string" ? e.messageText.next : void 0, o = typeof t.messageText != "string" ? t.messageText.next : void 0;
      let c = Du(n, i);
      return c || (c = h9e(a, o), c) ? c : e.canonicalHead && !t.canonicalHead ? -1 : t.canonicalHead && !e.canonicalHead ? 1 : 0;
    }
    function h9e(e, t) {
      return e === void 0 && t === void 0 ? 0 : e === void 0 ? 1 : t === void 0 ? -1 : Zhe(e, t) || Khe(e, t);
    }
    function Zhe(e, t) {
      if (e === void 0 && t === void 0) return 0;
      if (e === void 0) return 1;
      if (t === void 0) return -1;
      let n = Fo(t.length, e.length);
      if (n) return n;
      for (let i = 0; i < t.length; i++)
        if (n = Zhe(e[i].next, t[i].next), n) return n;
      return 0;
    }
    function Khe(e, t) {
      let n;
      for (let i = 0; i < t.length; i++) {
        if (n = Du(e[i].messageText, t[i].messageText), n) return n;
        if (e[i].next !== void 0 && (n = Khe(e[i].next, t[i].next), n))
          return n;
      }
      return 0;
    }
    function fO(e, t) {
      const n = BJ(e), i = BJ(t), a = JJ(e), o = JJ(t);
      return Du(jJ(e), jJ(t)) === 0 && Fo(e.start, t.start) === 0 && Fo(e.length, t.length) === 0 && Fo(n, i) === 0 && y9e(a, o);
    }
    function BJ(e) {
      var t;
      return ((t = e.canonicalHead) == null ? void 0 : t.code) || e.code;
    }
    function JJ(e) {
      var t;
      return ((t = e.canonicalHead) == null ? void 0 : t.messageText) || e.messageText;
    }
    function y9e(e, t) {
      return Du(typeof e == "string" ? e : e.messageText, typeof t == "string" ? t : t.messageText) === 0;
    }
    function FA(e) {
      return e === 4 || e === 2 || e === 1 || e === 6 ? 1 : 0;
    }
    function e0e(e) {
      if (e.transformFlags & 2)
        return Gu(e) || Dv(e) ? e : Fa(e, e0e);
    }
    function v9e(e) {
      return e.isDeclarationFile ? void 0 : e0e(e);
    }
    function b9e(e, t) {
      return (QS(e, t) === 99 || jc(e.fileName, [
        ".cjs",
        ".cts",
        ".mjs",
        ".mts"
      ])) && !e.isDeclarationFile ? !0 : void 0;
    }
    function LA(e) {
      switch (Oee(e)) {
        case 3:
          return (a) => {
            a.externalModuleIndicator = vN(a) || !a.isDeclarationFile || void 0;
          };
        case 1:
          return (a) => {
            a.externalModuleIndicator = vN(a);
          };
        case 2:
          const t = [vN];
          (e.jsx === 4 || e.jsx === 5) && t.push(v9e), t.push(b9e);
          const n = _f(...t);
          return (a) => {
            a.externalModuleIndicator = n(a, e);
          };
      }
    }
    function zJ(e) {
      const t = Hu(e);
      return 3 <= t && t <= 99 || MA(e) || RA(e);
    }
    function yv(e) {
      return _t(e.types, (t) => t === "*");
    }
    function opt(e) {
      return e;
    }
    var l_ = {
      allowImportingTsExtensions: {
        dependencies: ["rewriteRelativeImportExtensions"],
        computeValue: (e) => !!(e.allowImportingTsExtensions || e.rewriteRelativeImportExtensions)
      },
      target: {
        dependencies: [],
        computeValue: (e) => (e.target === 0 ? void 0 : e.target) ?? 12
      },
      module: {
        dependencies: ["target"],
        computeValue: (e) => {
          if (typeof e.module == "number") return e.module;
          const t = l_.target.computeValue(e);
          return t === 99 ? 99 : t >= 9 ? 7 : t >= 7 ? 6 : t >= 2 ? 5 : 1;
        }
      },
      moduleResolution: {
        dependencies: ["module", "target"],
        computeValue: (e) => {
          if (e.moduleResolution !== void 0) return e.moduleResolution;
          const t = l_.module.computeValue(e);
          switch (t) {
            case 0:
            case 2:
            case 3:
            case 4:
              return 1;
            case 199:
              return 99;
          }
          return 100 <= t && t < 199 ? 3 : 100;
        }
      },
      moduleDetection: {
        dependencies: ["module", "target"],
        computeValue: (e) => {
          if (e.moduleDetection !== void 0) return e.moduleDetection;
          const t = l_.module.computeValue(e);
          return 100 <= t && t <= 199 ? 3 : 2;
        }
      },
      isolatedModules: {
        dependencies: ["verbatimModuleSyntax"],
        computeValue: (e) => !!(e.isolatedModules || e.verbatimModuleSyntax)
      },
      esModuleInterop: {
        dependencies: [],
        computeValue: (e) => e.esModuleInterop !== void 0 ? e.esModuleInterop : !0
      },
      allowSyntheticDefaultImports: {
        dependencies: [],
        computeValue: (e) => e.allowSyntheticDefaultImports !== void 0 ? e.allowSyntheticDefaultImports : !0
      },
      resolvePackageJsonExports: {
        dependencies: [
          "moduleResolution",
          "module",
          "target"
        ],
        computeValue: (e) => {
          const t = l_.moduleResolution.computeValue(e);
          if (!S6(t)) return !1;
          if (e.resolvePackageJsonExports !== void 0) return e.resolvePackageJsonExports;
          switch (t) {
            case 3:
            case 99:
            case 100:
              return !0;
          }
          return !1;
        }
      },
      resolvePackageJsonImports: {
        dependencies: [
          "moduleResolution",
          "resolvePackageJsonExports",
          "module",
          "target"
        ],
        computeValue: (e) => {
          const t = l_.moduleResolution.computeValue(e);
          if (!S6(t)) return !1;
          if (e.resolvePackageJsonImports !== void 0) return e.resolvePackageJsonImports;
          switch (t) {
            case 3:
            case 99:
            case 100:
              return !0;
          }
          return !1;
        }
      },
      resolveJsonModule: {
        dependencies: [
          "moduleResolution",
          "module",
          "target"
        ],
        computeValue: (e) => {
          if (e.resolveJsonModule !== void 0) return e.resolveJsonModule;
          switch (l_.module.computeValue(e)) {
            case 102:
            case 199:
              return !0;
          }
          return l_.moduleResolution.computeValue(e) === 100;
        }
      },
      declaration: {
        dependencies: ["composite"],
        computeValue: (e) => !!(e.declaration || e.composite)
      },
      preserveConstEnums: {
        dependencies: ["isolatedModules", "verbatimModuleSyntax"],
        computeValue: (e) => !!(e.preserveConstEnums || l_.isolatedModules.computeValue(e))
      },
      incremental: {
        dependencies: ["composite"],
        computeValue: (e) => !!(e.incremental || e.composite)
      },
      declarationMap: {
        dependencies: ["declaration", "composite"],
        computeValue: (e) => !!(e.declarationMap && l_.declaration.computeValue(e))
      },
      allowJs: {
        dependencies: ["checkJs"],
        computeValue: (e) => e.allowJs === void 0 ? !!e.checkJs : e.allowJs
      },
      useDefineForClassFields: {
        dependencies: ["target", "module"],
        computeValue: (e) => e.useDefineForClassFields === void 0 ? l_.target.computeValue(e) >= 9 : e.useDefineForClassFields
      },
      noImplicitAny: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "noImplicitAny")
      },
      noImplicitThis: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "noImplicitThis")
      },
      strictNullChecks: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "strictNullChecks")
      },
      strictFunctionTypes: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "strictFunctionTypes")
      },
      strictBindCallApply: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "strictBindCallApply")
      },
      strictPropertyInitialization: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "strictPropertyInitialization")
      },
      strictBuiltinIteratorReturn: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "strictBuiltinIteratorReturn")
      },
      alwaysStrict: {
        dependencies: [],
        computeValue: (e) => e.alwaysStrict !== !1
      },
      useUnknownInCatchVariables: {
        dependencies: ["strict"],
        computeValue: (e) => Sf(e, "useUnknownInCatchVariables")
      }
    }, ID = l_, Iee = l_.allowImportingTsExtensions.computeValue, Ps = l_.target.computeValue, u_ = l_.module.computeValue, Hu = l_.moduleResolution.computeValue, Oee = l_.moduleDetection.computeValue, Zp = l_.isolatedModules.computeValue, Dm = l_.esModuleInterop.computeValue, Yx = l_.allowSyntheticDefaultImports.computeValue, MA = l_.resolvePackageJsonExports.computeValue, RA = l_.resolvePackageJsonImports.computeValue, zb = l_.resolveJsonModule.computeValue, U_ = l_.declaration.computeValue, e1 = l_.preserveConstEnums.computeValue, Wb = l_.incremental.computeValue, pO = l_.declarationMap.computeValue, t1 = l_.allowJs.computeValue, jA = l_.useDefineForClassFields.computeValue, OD = l_.alwaysStrict.computeValue;
    function BA(e) {
      return e >= 5 && e <= 99;
    }
    function dO(e) {
      switch (u_(e)) {
        case 0:
        case 4:
        case 3:
          return !1;
      }
      return !0;
    }
    function S6(e) {
      return e >= 3 && e <= 99 || e === 100;
    }
    function Fee(e) {
      return 101 <= e && e <= 199 || e === 200 || e === 99;
    }
    function Sf(e, t) {
      return e[t] === void 0 ? e.strict !== !1 : !!e[t];
    }
    function mO(e) {
      return Dl(uW.type, (t, n) => t === e ? n : void 0);
    }
    function WJ(e) {
      return e.useDefineForClassFields !== !1 && Ps(e) >= 9;
    }
    function Lee(e, t) {
      return wx(t, e, Lre);
    }
    function Mee(e, t) {
      return wx(t, e, Mre);
    }
    function Ree(e, t) {
      return wx(t, e, Rre);
    }
    function gO(e, t) {
      return t.strictFlag ? Sf(e, t.name) : t.allowJsFlag ? t1(e) : e[t.name];
    }
    function hO(e) {
      const t = e.jsx;
      return t === 2 || t === 4 || t === 5;
    }
    function JA(e, t) {
      const n = t?.pragmas.get("jsximportsource"), i = da(n) ? n[n.length - 1] : n, a = t?.pragmas.get("jsxruntime"), o = da(a) ? a[a.length - 1] : a;
      if (o?.arguments.factory !== "classic")
        return e.jsx === 4 || e.jsx === 5 || e.jsxImportSource || i || o?.arguments.factory === "automatic" ? i?.arguments.factory || e.jsxImportSource || "react" : void 0;
    }
    function yO(e, t) {
      return e ? `${e}/${t.jsx === 5 ? "jsx-dev-runtime" : "jsx-runtime"}` : void 0;
    }
    function UJ(e) {
      let t = !1;
      for (let n = 0; n < e.length; n++) if (e.charCodeAt(n) === 42) if (!t) t = !0;
      else return !1;
      return !0;
    }
    function VJ(e, t) {
      let n, i, a, o = !1;
      return {
        getSymlinkedFiles: () => a,
        getSymlinkedDirectories: () => n,
        getSymlinkedDirectoriesByRealpath: () => i,
        setSymlinkedFile: (u, d) => (a || (a = /* @__PURE__ */ new Map())).set(u, d),
        setSymlinkedDirectory: (u, d) => {
          let g = Eo(u, e, t);
          WD(g) || (g = El(g), d !== !1 && !n?.has(g) && (i || (i = Up())).add(d.realPath, u), (n || (n = /* @__PURE__ */ new Map())).set(g, d));
        },
        setSymlinksFromResolutions(u, d, g) {
          E.assert(!o), o = !0, u((h) => _(this, h.resolvedModule)), d((h) => _(this, h.resolvedTypeReferenceDirective)), g.forEach((h) => _(this, h.resolvedTypeReferenceDirective));
        },
        hasProcessedResolutions: () => o,
        setSymlinksFromResolution(u) {
          _(this, u);
        },
        hasAnySymlinks: c
      };
      function c() {
        return !!a?.size || !!n && !!Dl(n, (u) => !!u);
      }
      function _(u, d) {
        if (!d || !d.originalPath || !d.resolvedFileName) return;
        const { resolvedFileName: g, originalPath: h } = d;
        u.setSymlinkedFile(Eo(h, e, t), g);
        const [S, T] = S9e(g, h, e, t) || Te;
        S && T && u.setSymlinkedDirectory(T, {
          real: El(S),
          realPath: El(Eo(S, e, t))
        });
      }
    }
    function S9e(e, t, n, i) {
      const a = wu(ca(e, n)), o = wu(ca(t, n));
      let c = !1;
      for (; a.length >= 2 && o.length >= 2 && !t0e(a[a.length - 2], i) && !t0e(o[o.length - 2], i) && i(a[a.length - 1]) === i(o[o.length - 1]); )
        a.pop(), o.pop(), c = !0;
      return c ? [rv(a), rv(o)] : void 0;
    }
    function t0e(e, t) {
      return e !== void 0 && (t(e) === "node_modules" || ta(e, "@"));
    }
    function T9e(e) {
      return Ij(e.charCodeAt(0)) ? e.slice(1) : void 0;
    }
    function qJ(e, t, n) {
      const i = sj(e, t, n);
      return i === void 0 ? void 0 : T9e(i);
    }
    var jee = /[^\w\s/]/g;
    function r0e(e) {
      return e.replace(jee, x9e);
    }
    function x9e(e) {
      return "\\" + e;
    }
    var k9e = [42, 63], Bee = `(?!(?:${[
      "node_modules",
      "bower_components",
      "jspm_packages"
    ].join("|")})(?:/|$))`, n0e = {
      singleAsteriskRegexFragment: "(?:[^./]|(?:\\.(?!min\\.js$))?)*",
      doubleAsteriskRegexFragment: `(?:/${Bee}[^/.][^/]*)*?`,
      replaceWildcardCharacter: (e) => zee(e, n0e.singleAsteriskRegexFragment)
    }, i0e = {
      singleAsteriskRegexFragment: "[^/]*",
      doubleAsteriskRegexFragment: `(?:/${Bee}[^/.][^/]*)*?`,
      replaceWildcardCharacter: (e) => zee(e, i0e.singleAsteriskRegexFragment)
    }, a0e = {
      singleAsteriskRegexFragment: "[^/]*",
      doubleAsteriskRegexFragment: "(?:/.+?)?",
      replaceWildcardCharacter: (e) => zee(e, a0e.singleAsteriskRegexFragment)
    }, Jee = {
      files: n0e,
      directories: i0e,
      exclude: a0e
    };
    function FD(e, t, n) {
      const i = vO(e, t, n);
      if (!(!i || !i.length))
        return `^(?:${i.map((a) => `(?:${a})`).join("|")})${n === "exclude" ? "(?:$|/)" : "$"}`;
    }
    function vO(e, t, n) {
      if (!(e === void 0 || e.length === 0))
        return ks(e, (i) => i && bO(i, t, n, Jee[n]));
    }
    function GJ(e) {
      return !/[.*?]/.test(e);
    }
    function HJ(e, t, n) {
      const i = e && bO(e, t, n, Jee[n]);
      return i && `^(?:${i})${n === "exclude" ? "(?:$|/)" : "$"}`;
    }
    function bO(e, t, n, { singleAsteriskRegexFragment: i, doubleAsteriskRegexFragment: a, replaceWildcardCharacter: o } = Jee[n]) {
      let c = "", _ = !1;
      const u = F7(e, t), d = ws(u);
      if (n !== "exclude" && d === "**") return;
      u[0] = T0(u[0]), GJ(d) && u.push("**", "*");
      let g = 0;
      for (let h of u) {
        if (h === "**") c += a;
        else if (n === "directories" && (c += "(?:", g++), _ && (c += Co), n !== "exclude") {
          let S = "";
          h.charCodeAt(0) === 42 ? (S += "(?:[^./]" + i + ")?", h = h.substr(1)) : h.charCodeAt(0) === 63 && (S += "[^./]", h = h.substr(1)), S += h.replace(jee, o), S !== h && (c += Bee), c += S;
        } else c += h.replace(jee, o);
        _ = !0;
      }
      for (; g > 0; )
        c += ")?", g--;
      return c;
    }
    function zee(e, t) {
      return e === "*" ? t : e === "?" ? "[^/]" : "\\" + e;
    }
    function SO(e, t, n, i, a) {
      e = us(e), a = us(a);
      const o = jn(a, e);
      return {
        includeFilePatterns: or(vO(n, o, "files"), (c) => `^${c}$`),
        includeFilePattern: FD(n, o, "files"),
        includeDirectoryPattern: FD(n, o, "directories"),
        excludePattern: FD(t, o, "exclude"),
        basePaths: C9e(e, n, i)
      };
    }
    function O0(e, t) {
      return new RegExp(e, t ? "" : "i");
    }
    function $J(e, t, n, i, a, o, c, _, u) {
      e = us(e), o = us(o);
      const d = SO(e, n, i, a, o), g = d.includeFilePatterns && d.includeFilePatterns.map((N) => O0(N, a)), h = d.includeDirectoryPattern && O0(d.includeDirectoryPattern, a), S = d.excludePattern && O0(d.excludePattern, a), T = g ? g.map(() => []) : [[]], k = /* @__PURE__ */ new Map(), D = pu(a);
      for (const N of d.basePaths) P(N, jn(o, N), c);
      return Rf(T);
      function P(N, M, R) {
        const G = D(u(M));
        if (k.has(G)) return;
        k.set(G, !0);
        const { files: L, directories: z } = _(N);
        for (const H of uf(L, Du)) {
          const U = jn(N, H), pe = jn(M, H);
          if (!(t && !jc(U, t)) && !(S && S.test(pe)))
            if (!g) T[0].push(U);
            else {
              const ie = qs(g, (W) => W.test(pe));
              ie !== -1 && T[ie].push(U);
            }
        }
        if (!(R !== void 0 && (R--, R === 0)))
          for (const H of uf(z, Du)) {
            const U = jn(N, H), pe = jn(M, H);
            (!h || h.test(pe)) && (!S || !S.test(pe)) && P(U, pe, R);
          }
      }
    }
    function C9e(e, t, n) {
      const i = [e];
      if (t) {
        const a = [];
        for (const o of t) {
          const c = pf(o) ? o : us(jn(e, o));
          a.push(E9e(c));
        }
        a.sort(JC(!n));
        for (const o of a) hr(i, (c) => !vp(c, o, e, !n)) && i.push(o);
      }
      return i;
    }
    function E9e(e) {
      const t = Wu(e, k9e);
      return t < 0 ? UC(e) ? T0(Xn(e)) : e : e.substring(0, e.lastIndexOf(Co, t));
    }
    function TO(e, t) {
      return t || xO(e) || 3;
    }
    function xO(e) {
      switch (e.substr(e.lastIndexOf(".")).toLowerCase()) {
        case ".js":
        case ".cjs":
        case ".mjs":
          return 1;
        case ".jsx":
          return 2;
        case ".ts":
        case ".cts":
        case ".mts":
          return 3;
        case ".tsx":
          return 4;
        case ".json":
          return 6;
        default:
          return 0;
      }
    }
    var kO = [
      [
        ".ts",
        ".tsx",
        ".d.ts"
      ],
      [".cts", ".d.cts"],
      [".mts", ".d.mts"]
    ], XJ = Rf(kO), D9e = [...kO, [".json"]], w9e = [
      ".d.ts",
      ".d.cts",
      ".d.mts",
      ".cts",
      ".mts",
      ".ts",
      ".tsx"
    ], T6 = Rf([
      [".js", ".jsx"],
      [".mjs"],
      [".cjs"]
    ]), QJ = [
      [
        ".ts",
        ".tsx",
        ".d.ts",
        ".js",
        ".jsx"
      ],
      [
        ".cts",
        ".d.cts",
        ".cjs"
      ],
      [
        ".mts",
        ".d.mts",
        ".mjs"
      ]
    ], P9e = [...QJ, [".json"]], CO = [
      ".d.ts",
      ".d.cts",
      ".d.mts"
    ], zA = [
      ".ts",
      ".cts",
      ".mts",
      ".tsx"
    ], EO = [
      ".mts",
      ".d.mts",
      ".mjs",
      ".cts",
      ".d.cts",
      ".cjs"
    ];
    function LD(e, t) {
      const n = e && t1(e);
      if (!t || t.length === 0) return n ? QJ : kO;
      const i = n ? QJ : kO, a = Rf(i);
      return [...i, ...Rn(t, (o) => o.scriptKind === 7 || n && A9e(o.scriptKind) && !a.includes(o.extension) ? [o.extension] : void 0)];
    }
    function WA(e, t) {
      return !e || !zb(e) ? t : t === QJ ? P9e : t === kO ? D9e : [...t, [".json"]];
    }
    function A9e(e) {
      return e === 1 || e === 2;
    }
    function Zg(e) {
      return _t(T6, (t) => lc(e, t));
    }
    function wS(e) {
      return _t(XJ, (t) => lc(e, t));
    }
    function Wee(e) {
      return _t(zA, (t) => lc(e, t)) && !$l(e);
    }
    var Uee = /* @__PURE__ */ ((e) => (e[e.Minimal = 0] = "Minimal", e[e.Index = 1] = "Index", e[e.JsExtension = 2] = "JsExtension", e[e.TsExtension = 3] = "TsExtension", e))(Uee || {});
    function N9e({ imports: e }, t = _f(Zg, wS)) {
      return Hn(e, ({ text: n }) => Bf(n) && !jc(n, EO) ? t(n) : void 0) || !1;
    }
    function Vee(e, t, n, i) {
      const a = Hu(n), o = 3 <= a && a <= 99;
      if (e === "js" || t === 99 && o)
        return Y6(n) && c() !== 2 ? 3 : 2;
      if (e === "minimal") return 0;
      if (e === "index") return 1;
      if (!Y6(n)) return i && N9e(i) ? 2 : 0;
      return c();
      function c() {
        let _ = !1;
        const u = i?.imports.length ? i.imports : i && T_(i) ? I9e(i).map((d) => d.arguments[0]) : Te;
        for (const d of u) if (Bf(d.text)) {
          if (o && t === 1 && IU(i, d, n) === 99 || jc(d.text, EO)) continue;
          if (wS(d.text)) return 3;
          Zg(d.text) && (_ = !0);
        }
        return _ ? 2 : 0;
      }
    }
    function I9e(e) {
      let t = 0, n;
      for (const i of e.statements) {
        if (t > 3) break;
        iA(i) ? n = zi(n, i.declarationList.declarations.map((a) => a.initializer)) : zl(i) && J_(i.expression, !0) ? n = kr(n, i.expression) : t++;
      }
      return n || Te;
    }
    function YJ(e, t, n) {
      if (!e) return !1;
      const i = LD(t, n);
      for (const a of Rf(WA(t, i))) if (lc(e, a)) return !0;
      return !1;
    }
    function s0e(e) {
      const t = e.match(/\//g);
      return t ? t.length : 0;
    }
    function UA(e, t) {
      return Fo(s0e(e), s0e(t));
    }
    var qee = [
      ".d.ts",
      ".d.mts",
      ".d.cts",
      ".mjs",
      ".mts",
      ".cjs",
      ".cts",
      ".ts",
      ".js",
      ".tsx",
      ".jsx",
      ".json"
    ];
    function __(e) {
      for (const t of qee) {
        const n = Gee(e, t);
        if (n !== void 0) return n;
      }
      return e;
    }
    function Gee(e, t) {
      return lc(e, t) ? VA(e, t) : void 0;
    }
    function VA(e, t) {
      return e.substring(0, e.length - t.length);
    }
    function F0(e, t) {
      return m3(e, t, qee, !1);
    }
    function Zx(e) {
      const t = e.indexOf("*");
      return t === -1 ? e : e.indexOf("*", t + 1) !== -1 ? void 0 : {
        prefix: e.substr(0, t),
        suffix: e.substr(t + 1)
      };
    }
    var o0e = /* @__PURE__ */ new WeakMap();
    function qA(e) {
      let t = o0e.get(e);
      if (t !== void 0) return t;
      let n, i;
      const a = mm(e);
      for (const o of a) {
        const c = Zx(o);
        c !== void 0 && (typeof c == "string" ? (n ?? (n = /* @__PURE__ */ new Set())).add(c) : (i ?? (i = [])).push(c));
      }
      return o0e.set(e, t = {
        matchableStringSet: n,
        patterns: i
      }), t;
    }
    function Wd(e) {
      return !(e >= 0);
    }
    function DO(e) {
      return e === ".ts" || e === ".tsx" || e === ".d.ts" || e === ".cts" || e === ".mts" || e === ".d.mts" || e === ".d.cts" || ta(e, ".d.") && Uo(e, ".ts");
    }
    function MD(e) {
      return DO(e) || e === ".json";
    }
    function RD(e) {
      const t = Kg(e);
      return t !== void 0 ? t : E.fail(`File ${e} has unknown extension.`);
    }
    function c0e(e) {
      return Kg(e) !== void 0;
    }
    function Kg(e) {
      return xr(qee, (t) => lc(e, t));
    }
    function jD(e, t) {
      return e.checkJsDirective ? e.checkJsDirective.enabled : t.checkJs;
    }
    var ZJ = {
      files: Te,
      directories: Te
    };
    function KJ(e, t) {
      const { matchableStringSet: n, patterns: i } = e;
      if (n?.has(t)) return t;
      if (!(i === void 0 || i.length === 0))
        return aj(i, (a) => a, t);
    }
    function Hee(e, t) {
      const n = e.indexOf(t);
      return E.assert(n !== -1), e.slice(n);
    }
    function ts(e, ...t) {
      return t.length && (e.relatedInformation || (e.relatedInformation = []), E.assert(e.relatedInformation !== Te, "Diagnostic had empty array singleton for related info, but is still being constructed!"), e.relatedInformation.push(...t)), e;
    }
    function $ee(e, t) {
      E.assert(e.length !== 0);
      let n = t(e[0]), i = n;
      for (let a = 1; a < e.length; a++) {
        const o = t(e[a]);
        o < n ? n = o : o > i && (i = o);
      }
      return {
        min: n,
        max: i
      };
    }
    function ez(e) {
      return {
        pos: ov(e),
        end: e.end
      };
    }
    function tz(e, t) {
      return {
        pos: t.pos - 1,
        end: Math.min(e.text.length, gs(e.text, t.end) + 1)
      };
    }
    function x6(e, t, n) {
      return l0e(e, t, n, !1);
    }
    function Xee(e, t, n) {
      return l0e(e, t, n, !0);
    }
    function l0e(e, t, n, i) {
      return t.skipLibCheck && e.isDeclarationFile || t.skipDefaultLibCheck && n.isSourceFileDefaultLibrary(e) || !i && t.noCheck || n.isSourceOfProjectReferenceRedirect(e.fileName) || !BD(e, t);
    }
    function BD(e, t) {
      if (e.checkJsDirective && e.checkJsDirective.enabled === !1) return !1;
      if (e.scriptKind === 3 || e.scriptKind === 4 || e.scriptKind === 5) return !0;
      const n = (e.scriptKind === 1 || e.scriptKind === 2) && jD(e, t);
      return K4(e, t.checkJs) || n || e.scriptKind === 7;
    }
    function wO(e, t) {
      return e === t || typeof e == "object" && e !== null && typeof t == "object" && t !== null && dQ(e, t, wO);
    }
    function JD(e) {
      let t;
      switch (e.charCodeAt(1)) {
        case 98:
        case 66:
          t = 1;
          break;
        case 111:
        case 79:
          t = 3;
          break;
        case 120:
        case 88:
          t = 4;
          break;
        default:
          const d = e.length - 1;
          let g = 0;
          for (; e.charCodeAt(g) === 48; ) g++;
          return e.slice(g, d) || "0";
      }
      const n = 2, i = e.length - 1, a = (i - n) * t, o = new Uint16Array((a >>> 4) + (a & 15 ? 1 : 0));
      for (let d = i - 1, g = 0; d >= n; d--, g += t) {
        const h = g >>> 4, S = e.charCodeAt(d), T = (S <= 57 ? S - 48 : 10 + S - (S <= 70 ? 65 : 97)) << (g & 15);
        o[h] |= T;
        const k = T >>> 16;
        k && (o[h + 1] |= k);
      }
      let c = "", _ = o.length - 1, u = !0;
      for (; u; ) {
        let d = 0;
        u = !1;
        for (let g = _; g >= 0; g--) {
          const h = d << 16 | o[g], S = h / 10 | 0;
          o[g] = S, d = h - S * 10, S && !u && (_ = g, u = !0);
        }
        c = d + c;
      }
      return c;
    }
    function Ub({ negative: e, base10Value: t }) {
      return (e && t !== "0" ? "-" : "") + t;
    }
    function Qee(e) {
      if (PO(e, !1))
        return rz(e);
    }
    function rz(e) {
      const t = e.startsWith("-");
      return {
        negative: t,
        base10Value: JD(`${t ? e.slice(1) : e}n`)
      };
    }
    function PO(e, t) {
      if (e === "") return !1;
      const n = Bg(99, !1);
      let i = !0;
      n.setOnError(() => i = !1), n.setText(e + "n");
      let a = n.scan();
      const o = a === 41;
      o && (a = n.scan());
      const c = n.getTokenFlags();
      return i && a === 10 && n.getTokenEnd() === e.length + 1 && !(c & 512) && (!t || e === Ub({
        negative: o,
        base10Value: JD(n.getTokenValue())
      }));
    }
    function vv(e) {
      return !!(e.flags & 33554432) || oD(e) || N5(e) || L9e(e) || F9e(e) || !(fg(e) || O9e(e));
    }
    function O9e(e) {
      return Fe(e) && Nu(e.parent) && e.parent.name === e;
    }
    function F9e(e) {
      for (; e.kind === 80 || e.kind === 212; ) e = e.parent;
      if (e.kind !== 168) return !1;
      if (Qn(e.parent, 64)) return !0;
      const t = e.parent.parent.kind;
      return t === 265 || t === 188;
    }
    function L9e(e) {
      if (e.kind !== 80) return !1;
      const t = cr(e.parent, (n) => {
        switch (n.kind) {
          case 299:
            return !0;
          case 212:
          case 234:
            return !1;
          default:
            return "quit";
        }
      });
      return t?.token === 119 || t?.parent.kind === 265;
    }
    function Yee(e) {
      return xf(e) && Fe(e.typeName);
    }
    function Zee(e, t = S0) {
      if (e.length < 2) return !0;
      const n = e[0];
      for (let i = 1, a = e.length; i < a; i++) {
        const o = e[i];
        if (!t(n, o)) return !1;
      }
      return !0;
    }
    function zD(e, t) {
      return e.pos = t, e;
    }
    function k6(e, t) {
      return e.end = t, e;
    }
    function Ud(e, t, n) {
      return k6(zD(e, t), n);
    }
    function nz(e, t, n) {
      return Ud(e, t, t + n);
    }
    function Kee(e, t) {
      return e && (e.flags = t), e;
    }
    function eo(e, t) {
      return e && t && (e.parent = t), e;
    }
    function bv(e, t) {
      if (!e) return e;
      return bk(e, ZC(e) ? n : a), e;
      function n(o, c) {
        if (t && o.parent === c) return "skip";
        eo(o, c);
      }
      function i(o) {
        if (Jf(o)) for (const c of o.jsDoc)
          n(c, o), bk(c, n);
      }
      function a(o, c) {
        return n(o, c) || i(o);
      }
    }
    function M9e(e) {
      return !Al(e);
    }
    function iz(e) {
      return hu(e) && hr(e.elements, M9e);
    }
    function ete(e) {
      for (E.assertIsDefined(e.parent); ; ) {
        const t = e.parent;
        if (E_(t)) {
          e = t;
          continue;
        }
        if (zl(t) || dk(t) || Ev(t) && (t.initializer === e || t.incrementor === e)) return !0;
        if (nw(t)) {
          if (e !== ws(t.elements)) return !0;
          e = t;
          continue;
        }
        if (un(t) && t.operatorToken.kind === 28) {
          if (e === t.left) return !0;
          e = t;
          continue;
        }
        return !1;
      }
    }
    function WD(e) {
      return _t(N7, (t) => e.includes(t));
    }
    function tte(e) {
      if (!e.parent) return;
      switch (e.kind) {
        case 169:
          const { parent: n } = e;
          return n.kind === 196 ? void 0 : n.typeParameters;
        case 170:
          return e.parent.parameters;
        case 205:
          return e.parent.templateSpans;
        case 240:
          return e.parent.templateSpans;
        case 171: {
          const { parent: i } = e;
          return e2(i) ? i.modifiers : void 0;
        }
        case 299:
          return e.parent.heritageClauses;
      }
      const { parent: t } = e;
      if (KC(e)) return zS(e.parent) ? void 0 : e.parent.tags;
      switch (t.kind) {
        case 188:
        case 265:
          return Eb(e) ? t.members : void 0;
        case 193:
        case 194:
          return t.types;
        case 190:
        case 210:
        case 357:
        case 276:
        case 280:
          return t.elements;
        case 211:
        case 293:
          return t.properties;
        case 214:
        case 215:
          return ui(e) ? t.typeArguments : t.expression === e ? void 0 : t.arguments;
        case 285:
        case 289:
          return j3(e) ? t.children : void 0;
        case 287:
        case 286:
          return ui(e) ? t.typeArguments : void 0;
        case 242:
        case 297:
        case 298:
        case 269:
          return t.statements;
        case 270:
          return t.clauses;
        case 264:
        case 232:
          return al(e) ? t.members : void 0;
        case 267:
          return Gh(e) ? t.members : void 0;
        case 308:
          return t.statements;
      }
    }
    function AO(e) {
      if (!e.typeParameters) {
        if (_t(e.parameters, (t) => !_l(t))) return !0;
        if (e.kind !== 220) {
          const t = ul(e.parameters);
          if (!(t && Yy(t))) return !!(e.flags & 256);
        }
      }
      return !1;
    }
    function UD(e) {
      return e === "Infinity" || e === "-Infinity" || e === "NaN";
    }
    function rte(e) {
      return e.kind === 261 && e.parent.kind === 300;
    }
    function r1(e) {
      return e.kind === 219 || e.kind === 220;
    }
    function Vb(e) {
      return e.replace(/\$/g, () => "\\$");
    }
    function eh(e) {
      return (+e).toString() === e;
    }
    function NO(e, t, n, i, a) {
      const o = a && e === "new";
      return !o && Y_(e, t) ? A.createIdentifier(e) : !i && !o && eh(e) && +e >= 0 ? A.createNumericLiteral(+e) : A.createStringLiteral(e, !!n);
    }
    function VD(e) {
      return !!(e.flags & 524288 && e.isThisType);
    }
    function IO(e) {
      let t = 0, n = 0, i = 0, a = 0, o;
      ((d) => {
        d[d.BeforeNodeModules = 0] = "BeforeNodeModules", d[d.NodeModules = 1] = "NodeModules", d[d.Scope = 2] = "Scope", d[d.PackageContent = 3] = "PackageContent";
      })(o || (o = {}));
      let c = 0, _ = 0, u = 0;
      for (; _ >= 0; )
        switch (c = _, _ = e.indexOf("/", c + 1), u) {
          case 0:
            e.indexOf(ah, c) === c && (t = c, n = _, u = 1);
            break;
          case 1:
          case 2:
            u === 1 && e.charAt(c + 1) === "@" ? u = 2 : (i = _, u = 3);
            break;
          case 3:
            e.indexOf(ah, c) === c ? u = 1 : u = 3;
            break;
        }
      return a = c, u > 1 ? {
        topLevelNodeModulesIndex: t,
        topLevelPackageNameIndex: n,
        packageRootIndex: i,
        fileNameIndex: a
      } : void 0;
    }
    function Kx(e) {
      switch (e.kind) {
        case 169:
        case 264:
        case 265:
        case 266:
        case 267:
        case 347:
        case 339:
        case 341:
          return !0;
        case 274:
          return e.phaseModifier === 156;
        case 277:
          return e.parent.parent.phaseModifier === 156;
        case 282:
          return e.parent.parent.isTypeOnly;
        default:
          return !1;
      }
    }
    function GA(e) {
      return l1(e) || $c(e) || Xc(e) || sl(e) || au(e) || Kx(e) || Qc(e) && !Nb(e) && !ug(e);
    }
    function HA(e) {
      if (!G4(e)) return !1;
      const { isBracketed: t, typeExpression: n } = e;
      return t || !!n && n.type.kind === 317;
    }
    function az(e, t) {
      if (e.length === 0) return !1;
      const n = e.charCodeAt(0);
      return n === 35 ? e.length > 1 && sg(e.charCodeAt(1), t) : sg(n, t);
    }
    function nte(e) {
      var t;
      return ((t = xz(e)) == null ? void 0 : t.kind) === 0;
    }
    function OO(e) {
      return rn(e) && (e.type && e.type.kind === 317 || HC(e).some(HA));
    }
    function ek(e) {
      switch (e.kind) {
        case 173:
        case 172:
          return !!e.questionToken;
        case 170:
          return !!e.questionToken || OO(e);
        case 349:
        case 342:
          return HA(e);
        default:
          return !1;
      }
    }
    function ite(e) {
      const t = e.kind;
      return (t === 212 || t === 213) && mk(e.expression);
    }
    function sz(e) {
      return rn(e) && E_(e) && Jf(e) && !!Yj(e);
    }
    function oz(e) {
      return E.checkDefined(FO(e));
    }
    function FO(e) {
      const t = Yj(e);
      return t && t.typeExpression && t.typeExpression.type;
    }
    function qD(e) {
      return Fe(e) ? e.escapedText : tk(e);
    }
    function $A(e) {
      return Fe(e) ? On(e) : GD(e);
    }
    function ate(e) {
      const t = e.kind;
      return t === 80 || t === 296;
    }
    function tk(e) {
      return `${e.namespace.escapedText}:${On(e.name)}`;
    }
    function GD(e) {
      return `${On(e.namespace)}:${On(e.name)}`;
    }
    function cz(e) {
      return Fe(e) ? On(e) : GD(e);
    }
    function Cp(e) {
      return !!(e.flags & 19456);
    }
    function Ep(e) {
      return e.flags & 16384 ? e.escapedName : e.flags & 3072 ? mc("" + e.value) : E.fail();
    }
    function rk(e) {
      return !!e && (Ln(e) || Po(e) || un(e));
    }
    function ste(e) {
      return e === void 0 ? !1 : !!eE(e.attributes);
    }
    var R9e = String.prototype.replace;
    function PS(e, t) {
      return R9e.call(e, "*", t);
    }
    function LO(e) {
      return Fe(e.name) ? e.name.escapedText : mc(e.name.text);
    }
    function ote(e) {
      switch (e.kind) {
        case 169:
        case 170:
        case 173:
        case 172:
        case 186:
        case 185:
        case 180:
        case 181:
        case 182:
        case 175:
        case 174:
        case 176:
        case 177:
        case 178:
        case 179:
        case 184:
        case 183:
        case 187:
        case 188:
        case 189:
        case 190:
        case 193:
        case 194:
        case 197:
        case 191:
        case 192:
        case 198:
        case 199:
        case 195:
        case 196:
        case 204:
        case 206:
        case 203:
        case 329:
        case 330:
        case 347:
        case 339:
        case 341:
        case 346:
        case 345:
        case 325:
        case 326:
        case 327:
        case 342:
        case 349:
        case 318:
        case 316:
        case 315:
        case 313:
        case 314:
        case 323:
        case 319:
        case 310:
        case 334:
        case 336:
        case 335:
        case 351:
        case 344:
        case 200:
        case 201:
        case 263:
        case 242:
        case 269:
        case 244:
        case 245:
        case 246:
        case 247:
        case 248:
        case 249:
        case 250:
        case 251:
        case 252:
        case 253:
        case 254:
        case 255:
        case 256:
        case 257:
        case 258:
        case 259:
        case 261:
        case 209:
        case 264:
        case 265:
        case 266:
        case 267:
        case 268:
        case 273:
        case 272:
        case 279:
        case 278:
        case 243:
        case 260:
        case 283:
          return !0;
      }
      return !1;
    }
    function Pl(e, t = !1, n = !1, i = !1) {
      return {
        value: e,
        isSyntacticallyString: t,
        resolvedOtherFiles: n,
        hasExternalReferences: i
      };
    }
    function cte({ evaluateElementAccessExpression: e, evaluateEntityNameExpression: t }) {
      function n(a, o) {
        let c = !1, _ = !1, u = !1;
        switch (a = Gs(a), a.kind) {
          case 225:
            const d = n(a.operand, o);
            if (_ = d.resolvedOtherFiles, u = d.hasExternalReferences, typeof d.value == "number") switch (a.operator) {
              case 40:
                return Pl(d.value, c, _, u);
              case 41:
                return Pl(-d.value, c, _, u);
              case 55:
                return Pl(~d.value, c, _, u);
            }
            break;
          case 227: {
            const g = n(a.left, o), h = n(a.right, o);
            if (c = (g.isSyntacticallyString || h.isSyntacticallyString) && a.operatorToken.kind === 40, _ = g.resolvedOtherFiles || h.resolvedOtherFiles, u = g.hasExternalReferences || h.hasExternalReferences, typeof g.value == "number" && typeof h.value == "number") switch (a.operatorToken.kind) {
              case 52:
                return Pl(g.value | h.value, c, _, u);
              case 51:
                return Pl(g.value & h.value, c, _, u);
              case 49:
                return Pl(g.value >> h.value, c, _, u);
              case 50:
                return Pl(g.value >>> h.value, c, _, u);
              case 48:
                return Pl(g.value << h.value, c, _, u);
              case 53:
                return Pl(g.value ^ h.value, c, _, u);
              case 42:
                return Pl(g.value * h.value, c, _, u);
              case 44:
                return Pl(g.value / h.value, c, _, u);
              case 40:
                return Pl(g.value + h.value, c, _, u);
              case 41:
                return Pl(g.value - h.value, c, _, u);
              case 45:
                return Pl(g.value % h.value, c, _, u);
              case 43:
                return Pl(g.value ** h.value, c, _, u);
            }
            else if ((typeof g.value == "string" || typeof g.value == "number") && (typeof h.value == "string" || typeof h.value == "number") && a.operatorToken.kind === 40) return Pl("" + g.value + h.value, c, _, u);
            break;
          }
          case 11:
          case 15:
            return Pl(a.text, !0);
          case 229:
            return i(a, o);
          case 9:
            return Pl(+a.text);
          case 80:
            return t(a, o);
          case 212:
            if (go(a)) return t(a, o);
            break;
          case 213:
            return e(a, o);
        }
        return Pl(void 0, c, _, u);
      }
      function i(a, o) {
        let c = a.head.text, _ = !1, u = !1;
        for (const d of a.templateSpans) {
          const g = n(d.expression, o);
          if (g.value === void 0) return Pl(void 0, !0);
          c += g.value, c += d.literal.text, _ || (_ = g.resolvedOtherFiles), u || (u = g.hasExternalReferences);
        }
        return Pl(c, !0, _, u);
      }
      return n;
    }
    function lz(e) {
      return Db(e) && _d(e.type) || ow(e) && _d(e.typeExpression);
    }
    function XA(e) {
      const t = e.members;
      for (const n of t) if (n.kind === 177 && Gp(n.body)) return n;
    }
    function uz({ compilerOptions: e, requireSymbol: t, argumentsSymbol: n, error: i, getSymbolOfDeclaration: a, globals: o, lookup: c, setRequiresScopeChangeCache: _ = Tb, getRequiresScopeChangeCache: u = Tb, onPropertyWithInvalidInitializer: d = Mh, onFailedToResolveSymbol: g = Tb, onSuccessfullyResolvedSymbol: h = Tb }) {
      var S = e.verbatimModuleSyntax ? "verbatimModuleSyntax" : "isolatedModules", T = WJ(e), k = Ka();
      return D;
      function D(G, L, z, H, U, pe) {
        var ie, W, Q;
        const se = G;
        let he, fe, de, $, Se, Be = !1, ce;
        const oe = Ta(L) ? L : L.escapedText;
        e: for (; G; ) {
          if (oe === "const" && lz(G)) return;
          if (R3(G) && fe && G.name === fe && (fe = G, G = G.parent), og(G) && G.locals && !D0(G) && (he = c(G.locals, oe, z))) {
            let ge = !0;
            if (Ra(G) && fe && fe !== G.body ? (z & he.flags & 788968 && fe.kind !== 321 && (ge = he.flags & 262144 ? !!(fe.flags & 16) || fe === G.type || fe.kind === 170 || fe.kind === 342 || fe.kind === 343 || fe.kind === 169 : !1), z & he.flags & 3 && (P(he, G, fe) ? ge = !1 : he.flags & 1 && (ge = fe.kind === 170 || !!(fe.flags & 16) || fe === G.type && !!cr(he.valueDeclaration, Fi)))) : G.kind === 195 && (ge = fe === G.trueType), ge) break e;
            he = void 0;
          }
          switch (Be = Be || N(G, fe), G.kind) {
            case 308:
              if (!gf(G)) break;
            case 268:
              const ge = ((ie = a(G)) == null ? void 0 : ie.exports) || k;
              if (G.kind === 308 || Qc(G) && G.flags & 33554432 && !ug(G)) {
                if (he = ge.get("default")) {
                  const ot = ED(he);
                  if (ot && he.flags & z && ot.escapedName === oe) break e;
                  he = void 0;
                }
                const Ne = ge.get(oe);
                if (Ne && Ne.flags === 2097152 && (Ho(Ne, 282) || Ho(Ne, 281))) break;
              }
              if (oe !== "default" && (he = c(ge, oe, z & 2623475))) if (Pi(G) && G.commonJsModuleIndicator && !((W = he.declarations) != null && W.some($p))) he = void 0;
              else break e;
              break;
            case 267:
              if (he = c(((Q = a(G)) == null ? void 0 : Q.exports) || k, oe, z & 8)) {
                H && Zp(e) && !(G.flags & 33554432) && Sr(G) !== Sr(he.valueDeclaration) && i(se, p.Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead, Ti(oe), S, `${Ti(a(G).escapedName)}.${Ti(oe)}`);
                break e;
              }
              break;
            case 173:
              if (!es(G)) {
                const Ne = XA(G.parent);
                Ne && Ne.locals && c(Ne.locals, oe, z & 111551) && (E.assertNode(G, ga), $ = G);
              }
              break;
            case 264:
            case 232:
            case 265:
              if (he = c(a(G).members || k, oe, z & 788968)) {
                if (!R(he, G)) {
                  he = void 0;
                  break;
                }
                if (fe && es(fe)) {
                  H && i(se, p.Static_members_cannot_reference_class_type_parameters);
                  return;
                }
                break e;
              }
              if (Hc(G) && z & 32) {
                const Ne = G.name;
                if (Ne && oe === Ne.escapedText) {
                  he = G.symbol;
                  break e;
                }
              }
              break;
            case 234:
              if (fe === G.expression && G.parent.token === 96) {
                const Ne = G.parent.parent;
                if (Zn(Ne) && (he = c(a(Ne).members, oe, z & 788968))) {
                  H && i(se, p.Base_class_expressions_cannot_reference_class_type_parameters);
                  return;
                }
              }
              break;
            case 168:
              if (ce = G.parent.parent, (Zn(ce) || ce.kind === 265) && (he = c(a(ce).members, oe, z & 788968))) {
                H && i(se, p.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);
                return;
              }
              break;
            case 220:
              if (Ps(e) >= 2) break;
            case 175:
            case 177:
            case 178:
            case 179:
            case 263:
              if (z & 3 && oe === "arguments") {
                he = n;
                break e;
              }
              break;
            case 219:
              if (z & 3 && oe === "arguments") {
                he = n;
                break e;
              }
              if (z & 16) {
                const Ne = G.name;
                if (Ne && oe === Ne.escapedText) {
                  he = G.symbol;
                  break e;
                }
              }
              break;
            case 171:
              G.parent && G.parent.kind === 170 && (G = G.parent), G.parent && (al(G.parent) || G.parent.kind === 264) && (G = G.parent);
              break;
            case 347:
            case 339:
            case 341:
            case 352:
              const Ae = _6(G);
              Ae && (G = Ae.parent);
              break;
            case 170:
              fe && (fe === G.initializer || fe === G.name && Ja(fe)) && (Se || (Se = G));
              break;
            case 209:
              fe && (fe === G.initializer || fe === G.name && Ja(fe)) && mv(G) && !Se && (Se = G);
              break;
            case 196:
              if (z & 262144) {
                const Ne = G.typeParameter.name;
                if (Ne && oe === Ne.escapedText) {
                  he = G.typeParameter.symbol;
                  break e;
                }
              }
              break;
            case 282:
              fe && fe === G.propertyName && G.parent.parent.moduleSpecifier && (G = G.parent.parent.parent);
              break;
          }
          M(G, fe) && (de = G), fe = G, G = ed(G) ? j5(G) || G.parent : (np(G) || aF(G)) && fv(G) || G.parent;
        }
        if (U && he && (!de || he !== de.symbol) && (he.isReferenced |= z), !he) {
          if (fe && (E.assertNode(fe, Pi), fe.commonJsModuleIndicator && oe === "exports" && z & fe.symbol.flags))
            return fe.symbol;
          pe || (he = c(o, oe, z));
        }
        if (!he && se && rn(se) && se.parent && J_(se.parent, !1))
          return t;
        if (H) {
          if ($ && d(se, oe, $, he)) return;
          he ? h(se, he, z, fe, Se, Be) : g(se, L, z, H);
        }
        return he;
      }
      function P(G, L, z) {
        const H = Ps(e), U = L;
        if (Fi(z) && U.body && G.valueDeclaration && G.valueDeclaration.pos >= U.body.pos && G.valueDeclaration.end <= U.body.end && H >= 2) {
          let W = u(U);
          return W === void 0 && (W = bt(U.parameters, pe) || !1, _(U, W)), !W;
        }
        return !1;
        function pe(W) {
          return ie(W.name) || !!W.initializer && ie(W.initializer);
        }
        function ie(W) {
          switch (W.kind) {
            case 220:
            case 219:
            case 263:
            case 177:
              return !1;
            case 175:
            case 178:
            case 179:
            case 304:
              return ie(W.name);
            case 173:
              return vl(W) ? !T : ie(W.name);
            default:
              return Kj(W) || Vu(W) ? H < 7 : Ns(W) && W.dotDotDotToken && rp(W.parent) ? H < 4 : ui(W) ? !1 : Fa(W, ie) || !1;
          }
        }
      }
      function N(G, L) {
        return G.kind !== 220 && G.kind !== 219 ? Gb(G) || (So(G) || G.kind === 173 && !es(G)) && (!L || L !== G.name) : L && L === G.name ? !1 : G.asteriskToken || Qn(G, 1024) ? !0 : !lv(G);
      }
      function M(G, L) {
        switch (G.kind) {
          case 170:
            return !!L && L === G.name;
          case 263:
          case 264:
          case 265:
          case 267:
          case 266:
          case 268:
            return !0;
          default:
            return !1;
        }
      }
      function R(G, L) {
        if (G.declarations) {
          for (const z of G.declarations) if (z.kind === 169 && (ed(z.parent) ? Fb(z.parent) : z.parent) === L)
            return !(ed(z.parent) && xr(z.parent.parent.tags, $p));
        }
        return !1;
      }
    }
    function MO(e, t = !0) {
      switch (E.type(e), e.kind) {
        case 112:
        case 97:
        case 9:
        case 11:
        case 15:
          return !0;
        case 10:
          return t;
        case 225:
          return e.operator === 41 ? V_(e.operand) || t && E6(e.operand) : e.operator === 40 ? V_(e.operand) : !1;
        default:
          return !1;
      }
    }
    function lte(e) {
      for (; e.kind === 218; ) e = e.expression;
      return e;
    }
    function RO(e) {
      switch (E.type(e), e.kind) {
        case 170:
        case 172:
        case 173:
        case 209:
        case 212:
        case 213:
        case 227:
        case 261:
        case 278:
        case 304:
        case 305:
        case 342:
        case 349:
          return !0;
        default:
          return !1;
      }
    }
    function _z(e) {
      const t = cr(e, ic);
      return !!t && !t.importClause;
    }
    var ute = [
      "assert",
      "assert/strict",
      "async_hooks",
      "buffer",
      "child_process",
      "cluster",
      "console",
      "constants",
      "crypto",
      "dgram",
      "diagnostics_channel",
      "dns",
      "dns/promises",
      "domain",
      "events",
      "fs",
      "fs/promises",
      "http",
      "http2",
      "https",
      "inspector",
      "inspector/promises",
      "module",
      "net",
      "os",
      "path",
      "path/posix",
      "path/win32",
      "perf_hooks",
      "process",
      "punycode",
      "querystring",
      "readline",
      "readline/promises",
      "repl",
      "stream",
      "stream/consumers",
      "stream/promises",
      "stream/web",
      "string_decoder",
      "sys",
      "timers",
      "timers/promises",
      "tls",
      "trace_events",
      "tty",
      "url",
      "util",
      "util/types",
      "v8",
      "vm",
      "wasi",
      "worker_threads",
      "zlib"
    ], _te = new Set(ute), jO = /* @__PURE__ */ new Set([
      "node:quic",
      "node:sea",
      "node:sqlite",
      "node:test",
      "node:test/reporters"
    ]), nk = /* @__PURE__ */ new Set([
      ...ute,
      ...ute.map((e) => `node:${e}`),
      ...jO
    ]);
    function BO(e, t, n, i) {
      const a = rn(e), o = /import|require/g;
      for (; o.exec(e.text) !== null; ) {
        const c = j9e(e, o.lastIndex, t);
        if (a && J_(c, n)) i(c, c.arguments[0]);
        else if (B_(c) && c.arguments.length >= 1 && (!n || Xs(c.arguments[0]))) i(c, c.arguments[0]);
        else if (t && Bh(c)) i(c, c.argument.literal);
        else if (t && Fm(c)) {
          const _ = Lx(c);
          _ && Ts(_) && _.text && i(c, _);
        }
      }
    }
    function j9e(e, t, n) {
      const i = rn(e);
      let a = e;
      const o = (c) => {
        if (c.pos <= t && (t < c.end || t === c.end && c.kind === 1)) return c;
      };
      for (; ; ) {
        const c = i && n && Jf(a) && bt(a.jsDoc, o) || Fa(a, o);
        if (!c || RS(c)) return a;
        a = c;
      }
    }
    function fte(e) {
      return Ra(e) || z0(e) || LS(e);
    }
    function fz(e) {
      return Ny(e.fileName);
    }
    function pz(e) {
      const t = fz(e);
      return yF.get(t);
    }
    function dz(e, t) {
      return HD(void 0, e, (n) => n && t(n));
    }
    function HD(e, t, n, i) {
      let a;
      return o(e, t, void 0);
      function o(c, _, u) {
        if (i) {
          const g = i(c, u);
          if (g) return g;
        }
        let d;
        return bt(_, (g, h) => {
          if (g && a?.has(g.sourceFile.path)) {
            (d ?? (d = /* @__PURE__ */ new Set())).add(g);
            return;
          }
          const S = n(g, u, h);
          if (S || !g) return S;
          (a || (a = /* @__PURE__ */ new Set())).add(g.sourceFile.path);
        }) || bt(_, (g) => g && !d?.has(g) ? o(g.commandLine.projectReferences, g.references, g) : void 0);
      }
    }
    function mz(e, t, n) {
      return e && B9e(e, t, n);
    }
    function B9e(e, t, n) {
      return s6(e, t, (i) => hu(i.initializer) ? xr(i.initializer.elements, (a) => Ts(a) && a.text === n) : void 0);
    }
    function pte(e, t, n) {
      return gz(e, t, (i) => Ts(i.initializer) && i.initializer.text === n ? i.initializer : void 0);
    }
    function gz(e, t, n) {
      return s6(e, t, n);
    }
    function no(e, t = !0) {
      const n = e && u0e(e);
      return n && !t && Tf(n), bv(n, !1);
    }
    function QA(e, t, n) {
      let i = n(e);
      return i ? Fn(i, e) : i = u0e(e, n), i && !t && Tf(i), i;
    }
    function u0e(e, t) {
      const n = t ? (a) => QA(a, !0, t) : no, i = Tr(e, n, void 0, t ? (a) => a && hz(a, !0, t) : (a) => a && qb(a), n);
      return i === e ? pt(Ts(e) ? Fn(A.createStringLiteralFromNode(e), e) : V_(e) ? Fn(A.createNumericLiteral(e.text, e.numericLiteralFlags), e) : A.cloneNode(e), e) : (i.parent = void 0, i);
    }
    function qb(e, t = !0) {
      if (e) {
        const n = A.createNodeArray(e.map((i) => no(i, t)), e.hasTrailingComma);
        return pt(n, e), n;
      }
      return e;
    }
    function hz(e, t, n) {
      return A.createNodeArray(e.map((i) => QA(i, t, n)), e.hasTrailingComma);
    }
    function Tf(e) {
      yz(e), dte(e);
    }
    function yz(e) {
      mte(e, 1024, J9e);
    }
    function dte(e) {
      mte(e, 2048, LJ);
    }
    function mte(e, t, n) {
      wm(e, t);
      const i = n(e);
      i && mte(i, t, n);
    }
    function J9e(e) {
      return Fa(e, (t) => t);
    }
    function gte(e) {
      return Wa(e) || Vd(e) || Pi(e) || F6(e) || L6(e);
    }
    function $D(e) {
      return 244 <= e.kind && e.kind <= 260 ? $c(e) ? x0(e.declarationList) & 7 ? !0 : _t(e.declarationList.declarations, (t) => t.initializer !== void 0) : !0 : sl(e) || l1(e) || Qc(e);
    }
    function hte() {
      let e, t, n, i, a;
      return {
        createBaseSourceFileNode: o,
        createBaseIdentifierNode: c,
        createBasePrivateIdentifierNode: _,
        createBaseTokenNode: u,
        createBaseNode: d
      };
      function o(g) {
        return new (a || (a = gu.getSourceFileConstructor()))(g, -1, -1);
      }
      function c(g) {
        return new (n || (n = gu.getIdentifierConstructor()))(g, -1, -1);
      }
      function _(g) {
        return new (i || (i = gu.getPrivateIdentifierConstructor()))(g, -1, -1);
      }
      function u(g) {
        return new (t || (t = gu.getTokenConstructor()))(g, -1, -1);
      }
      function d(g) {
        return new (e || (e = gu.getNodeConstructor()))(g, -1, -1);
      }
    }
    function yte(e) {
      let t, n;
      return {
        getParenthesizeLeftSideOfBinaryForOperator: i,
        getParenthesizeRightSideOfBinaryForOperator: a,
        parenthesizeLeftSideOfBinary: g,
        parenthesizeRightSideOfBinary: h,
        parenthesizeExpressionOfComputedPropertyName: S,
        parenthesizeConditionOfConditionalExpression: T,
        parenthesizeBranchOfConditionalExpression: k,
        parenthesizeExpressionOfExportDefault: D,
        parenthesizeExpressionOfNew: P,
        parenthesizeLeftSideOfAccess: N,
        parenthesizeOperandOfPostfixUnary: M,
        parenthesizeOperandOfPrefixUnary: R,
        parenthesizeExpressionsOfCommaDelimitedList: G,
        parenthesizeExpressionForDisallowedComma: L,
        parenthesizeExpressionOfExpressionStatement: z,
        parenthesizeConciseBodyOfArrowFunction: H,
        parenthesizeCheckTypeOfConditionalType: U,
        parenthesizeExtendsTypeOfConditionalType: pe,
        parenthesizeConstituentTypesOfUnionType: W,
        parenthesizeConstituentTypeOfUnionType: ie,
        parenthesizeConstituentTypesOfIntersectionType: se,
        parenthesizeConstituentTypeOfIntersectionType: Q,
        parenthesizeOperandOfTypeOperator: he,
        parenthesizeOperandOfReadonlyTypeOperator: fe,
        parenthesizeNonArrayTypeOfPostfixType: de,
        parenthesizeElementTypesOfTupleType: $,
        parenthesizeElementTypeOfTupleType: Se,
        parenthesizeTypeOfOptionalType: ce,
        parenthesizeTypeArguments: Ae,
        parenthesizeLeadingTypeArgument: oe
      };
      function i(Ne) {
        t || (t = /* @__PURE__ */ new Map());
        let ot = t.get(Ne);
        return ot || (ot = (K) => g(Ne, K), t.set(Ne, ot)), ot;
      }
      function a(Ne) {
        n || (n = /* @__PURE__ */ new Map());
        let ot = n.get(Ne);
        return ot || (ot = (K) => h(Ne, void 0, K), n.set(Ne, ot)), ot;
      }
      function o(Ne, ot) {
        return Ne === 61 ? ot === 56 || ot === 57 : ot === 61 ? Ne === 56 || Ne === 57 : !1;
      }
      function c(Ne, ot, K, ke) {
        const ae = fd(ot);
        if (un(ae) && o(Ne, ae.operatorToken.kind)) return !0;
        const Ce = SA(227, Ne), ue = cJ(227, Ne);
        if (!K && ot.kind === 220 && Ce > 3) return !0;
        switch (Fo(bD(ae), Ce)) {
          case -1:
            return !(!K && ue === 1 && ot.kind === 230);
          case 1:
            return !1;
          case 0:
            if (K) return ue === 1;
            if (un(ae) && ae.operatorToken.kind === Ne) {
              if (_(Ne)) return !1;
              if (Ne === 40) {
                const Ie = ke ? u(ke) : 0;
                if (H4(Ie) && Ie === u(ae)) return !1;
              }
            }
            return oJ(ae) === 0;
        }
      }
      function _(Ne) {
        return Ne === 42 || Ne === 52 || Ne === 51 || Ne === 53 || Ne === 28;
      }
      function u(Ne) {
        if (Ne = fd(Ne), H4(Ne.kind)) return Ne.kind;
        if (Ne.kind === 227 && Ne.operatorToken.kind === 40) {
          if (Ne.cachedLiteralKind !== void 0) return Ne.cachedLiteralKind;
          const ot = u(Ne.left), K = H4(ot) && ot === u(Ne.right) ? ot : 0;
          return Ne.cachedLiteralKind = K, K;
        }
        return 0;
      }
      function d(Ne, ot, K, ke) {
        return fd(ot).kind === 218 ? ot : c(Ne, ot, K, ke) ? e.createParenthesizedExpression(ot) : ot;
      }
      function g(Ne, ot) {
        return d(Ne, ot, !0);
      }
      function h(Ne, ot, K) {
        return d(Ne, K, !1, ot);
      }
      function S(Ne) {
        return lw(Ne) ? e.createParenthesizedExpression(Ne) : Ne;
      }
      function T(Ne) {
        const ot = SA(228, 58);
        return Fo(bD(fd(Ne)), ot) !== 1 ? e.createParenthesizedExpression(Ne) : Ne;
      }
      function k(Ne) {
        return lw(fd(Ne)) ? e.createParenthesizedExpression(Ne) : Ne;
      }
      function D(Ne) {
        const ot = fd(Ne);
        let K = lw(ot);
        if (!K) switch (b6(ot, !1).kind) {
          case 232:
          case 219:
            K = !0;
        }
        return K ? e.createParenthesizedExpression(Ne) : Ne;
      }
      function P(Ne) {
        const ot = b6(Ne, !0);
        switch (ot.kind) {
          case 214:
            return e.createParenthesizedExpression(Ne);
          case 215:
            return ot.arguments ? Ne : e.createParenthesizedExpression(Ne);
        }
        return N(Ne);
      }
      function N(Ne, ot) {
        const K = fd(Ne);
        return j_(K) && (K.kind !== 215 || K.arguments) && (ot || !Vu(K)) ? Ne : pt(e.createParenthesizedExpression(Ne), Ne);
      }
      function M(Ne) {
        return j_(Ne) ? Ne : pt(e.createParenthesizedExpression(Ne), Ne);
      }
      function R(Ne) {
        return lB(Ne) ? Ne : pt(e.createParenthesizedExpression(Ne), Ne);
      }
      function G(Ne) {
        const ot = el(Ne, L);
        return pt(e.createNodeArray(ot, Ne.hasTrailingComma), Ne);
      }
      function L(Ne) {
        return bD(fd(Ne)) > SA(227, 28) ? Ne : pt(e.createParenthesizedExpression(Ne), Ne);
      }
      function z(Ne) {
        const ot = fd(Ne);
        if (za(ot)) {
          const ke = ot.expression, ae = fd(ke).kind;
          if (ae === 219 || ae === 220) {
            const Ce = e.updateCallExpression(ot, pt(e.createParenthesizedExpression(ke), ke), ot.typeArguments, ot.arguments);
            return e.restoreOuterExpressions(Ne, Ce, 8);
          }
        }
        const K = b6(ot, !1).kind;
        return K === 211 || K === 219 ? pt(e.createParenthesizedExpression(Ne), Ne) : Ne;
      }
      function H(Ne) {
        return !Wa(Ne) && (lw(Ne) || b6(Ne, !1).kind === 211) ? pt(e.createParenthesizedExpression(Ne), Ne) : Ne;
      }
      function U(Ne) {
        switch (Ne.kind) {
          case 185:
          case 186:
          case 195:
            return e.createParenthesizedType(Ne);
        }
        return Ne;
      }
      function pe(Ne) {
        return Ne.kind === 195 ? e.createParenthesizedType(Ne) : Ne;
      }
      function ie(Ne) {
        switch (Ne.kind) {
          case 193:
          case 194:
            return e.createParenthesizedType(Ne);
        }
        return U(Ne);
      }
      function W(Ne) {
        return e.createNodeArray(el(Ne, ie));
      }
      function Q(Ne) {
        switch (Ne.kind) {
          case 193:
          case 194:
            return e.createParenthesizedType(Ne);
        }
        return ie(Ne);
      }
      function se(Ne) {
        return e.createNodeArray(el(Ne, Q));
      }
      function he(Ne) {
        return Ne.kind === 194 ? e.createParenthesizedType(Ne) : Q(Ne);
      }
      function fe(Ne) {
        return Ne.kind === 199 ? e.createParenthesizedType(Ne) : he(Ne);
      }
      function de(Ne) {
        switch (Ne.kind) {
          case 196:
          case 199:
          case 187:
            return e.createParenthesizedType(Ne);
        }
        return he(Ne);
      }
      function $(Ne) {
        return e.createNodeArray(el(Ne, Se));
      }
      function Se(Ne) {
        return Be(Ne) ? e.createParenthesizedType(Ne) : Ne;
      }
      function Be(Ne) {
        return M6(Ne) ? Ne.postfix : w6(Ne) || mg(Ne) || D6(Ne) || Tv(Ne) ? Be(Ne.type) : Hb(Ne) ? Be(Ne.falseType) : j0(Ne) || pk(Ne) ? Be(ws(Ne.types)) : OS(Ne) ? !!Ne.typeParameter.constraint && Be(Ne.typeParameter.constraint) : !1;
      }
      function ce(Ne) {
        return Be(Ne) ? e.createParenthesizedType(Ne) : de(Ne);
      }
      function oe(Ne) {
        return OZ(Ne) && Ne.typeParameters ? e.createParenthesizedType(Ne) : Ne;
      }
      function ge(Ne, ot) {
        return ot === 0 ? oe(Ne) : Ne;
      }
      function Ae(Ne) {
        if (_t(Ne)) return e.createNodeArray(el(Ne, ge));
      }
    }
    var vte = {
      getParenthesizeLeftSideOfBinaryForOperator: (e) => mo,
      getParenthesizeRightSideOfBinaryForOperator: (e) => mo,
      parenthesizeLeftSideOfBinary: (e, t) => t,
      parenthesizeRightSideOfBinary: (e, t, n) => n,
      parenthesizeExpressionOfComputedPropertyName: mo,
      parenthesizeConditionOfConditionalExpression: mo,
      parenthesizeBranchOfConditionalExpression: mo,
      parenthesizeExpressionOfExportDefault: mo,
      parenthesizeExpressionOfNew: (e) => ns(e, j_),
      parenthesizeLeftSideOfAccess: (e) => ns(e, j_),
      parenthesizeOperandOfPostfixUnary: (e) => ns(e, j_),
      parenthesizeOperandOfPrefixUnary: (e) => ns(e, lB),
      parenthesizeExpressionsOfCommaDelimitedList: (e) => ns(e, Cb),
      parenthesizeExpressionForDisallowedComma: mo,
      parenthesizeExpressionOfExpressionStatement: mo,
      parenthesizeConciseBodyOfArrowFunction: mo,
      parenthesizeCheckTypeOfConditionalType: mo,
      parenthesizeExtendsTypeOfConditionalType: mo,
      parenthesizeConstituentTypesOfUnionType: (e) => ns(e, Cb),
      parenthesizeConstituentTypeOfUnionType: mo,
      parenthesizeConstituentTypesOfIntersectionType: (e) => ns(e, Cb),
      parenthesizeConstituentTypeOfIntersectionType: mo,
      parenthesizeOperandOfTypeOperator: mo,
      parenthesizeOperandOfReadonlyTypeOperator: mo,
      parenthesizeNonArrayTypeOfPostfixType: mo,
      parenthesizeElementTypesOfTupleType: (e) => ns(e, Cb),
      parenthesizeElementTypeOfTupleType: mo,
      parenthesizeTypeOfOptionalType: mo,
      parenthesizeTypeArguments: (e) => e && ns(e, Cb),
      parenthesizeLeadingTypeArgument: mo
    };
    function bte(e) {
      return {
        convertToFunctionBlock: t,
        convertToFunctionExpression: n,
        convertToClassExpression: i,
        convertToArrayAssignmentElement: a,
        convertToObjectAssignmentElement: o,
        convertToAssignmentPattern: c,
        convertToObjectAssignmentPattern: _,
        convertToArrayAssignmentPattern: u,
        convertToAssignmentElementTarget: d
      };
      function t(g, h) {
        if (Wa(g)) return g;
        const S = e.createReturnStatement(g);
        pt(S, g);
        const T = e.createBlock([S], h);
        return pt(T, g), T;
      }
      function n(g) {
        var h;
        if (!g.body) return E.fail("Cannot convert a FunctionDeclaration without a body");
        const S = e.createFunctionExpression((h = kb(g)) == null ? void 0 : h.filter((T) => !ck(T) && !XO(T)), g.asteriskToken, g.name, g.typeParameters, g.parameters, g.type, g.body);
        return Fn(S, g), pt(S, g), XD(g) && WO(S, !0), S;
      }
      function i(g) {
        var h;
        const S = e.createClassExpression((h = g.modifiers) == null ? void 0 : h.filter((T) => !ck(T) && !XO(T)), g.name, g.typeParameters, g.heritageClauses, g.members);
        return Fn(S, g), pt(S, g), XD(g) && WO(S, !0), S;
      }
      function a(g) {
        if (Ns(g)) {
          if (g.dotDotDotToken)
            return E.assertNode(g.name, Fe), Fn(pt(e.createSpreadElement(g.name), g), g);
          const h = d(g.name);
          return g.initializer ? Fn(pt(e.createAssignment(h, g.initializer), g), g) : h;
        }
        return ns(g, dt);
      }
      function o(g) {
        if (Ns(g)) {
          if (g.dotDotDotToken)
            return E.assertNode(g.name, Fe), Fn(pt(e.createSpreadAssignment(g.name), g), g);
          if (g.propertyName) {
            const h = d(g.name);
            return Fn(pt(e.createPropertyAssignment(g.propertyName, g.initializer ? e.createAssignment(h, g.initializer) : h), g), g);
          }
          return E.assertNode(g.name, Fe), Fn(pt(e.createShorthandPropertyAssignment(g.name, g.initializer), g), g);
        }
        return ns(g, zg);
      }
      function c(g) {
        switch (g.kind) {
          case 208:
          case 210:
            return u(g);
          case 207:
          case 211:
            return _(g);
        }
      }
      function _(g) {
        return rp(g) ? Fn(pt(e.createObjectLiteralExpression(or(g.elements, o)), g), g) : ns(g, bs);
      }
      function u(g) {
        return J0(g) ? Fn(pt(e.createArrayLiteralExpression(or(g.elements, a)), g), g) : ns(g, hu);
      }
      function d(g) {
        return Ja(g) ? c(g) : ns(g, dt);
      }
    }
    var Ste = {
      convertToFunctionBlock: is,
      convertToFunctionExpression: is,
      convertToClassExpression: is,
      convertToArrayAssignmentElement: is,
      convertToObjectAssignmentElement: is,
      convertToAssignmentPattern: is,
      convertToObjectAssignmentPattern: is,
      convertToArrayAssignmentPattern: is,
      convertToAssignmentElementTarget: is
    }, vz = 0, Tte = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.NoParenthesizerRules = 1] = "NoParenthesizerRules", e[e.NoNodeConverters = 2] = "NoNodeConverters", e[e.NoIndentationOnFreshPropertyAccess = 4] = "NoIndentationOnFreshPropertyAccess", e[e.NoOriginalNode = 8] = "NoOriginalNode", e))(Tte || {}), _0e = [];
    function f0e(e) {
      _0e.push(e);
    }
    function YA(e, t) {
      const n = e & 8 ? mo : Fn, i = s_(() => e & 1 ? vte : yte(N)), a = s_(() => e & 2 ? Ste : bte(N)), o = gm((v) => (w, B) => qe(w, v, B)), c = gm((v) => (w) => st(v, w)), _ = gm((v) => (w) => F(w, v)), u = gm((v) => () => wa(v)), d = gm((v) => (w) => aC(v, w)), g = gm((v) => (w, B) => $r(v, w, B)), h = gm((v) => (w, B) => ly(v, w, B)), S = gm((v) => (w, B) => uy(v, w, B)), T = gm((v) => (w, B) => P1(v, w, B)), k = gm((v) => (w, B, le) => A1(v, w, B, le)), D = gm((v) => (w, B, le) => cC(v, w, B, le)), P = gm((v) => (w, B, le, Ue) => vP(v, w, B, le, Ue)), N = {
        get parenthesizer() {
          return i();
        },
        get converters() {
          return a();
        },
        baseFactory: t,
        flags: e,
        createNodeArray: M,
        createNumericLiteral: z,
        createBigIntLiteral: H,
        createStringLiteral: pe,
        createStringLiteralFromNode: ie,
        createRegularExpressionLiteral: W,
        createLiteralLikeNode: Q,
        createIdentifier: fe,
        createTempVariable: de,
        createLoopVariable: $,
        createUniqueName: Se,
        getGeneratedNameForNode: Be,
        createPrivateIdentifier: oe,
        createUniquePrivateName: Ae,
        getGeneratedPrivateNameForNode: Ne,
        createToken: K,
        createSuper: ke,
        createThis: ae,
        createNull: Ce,
        createTrue: ue,
        createFalse: Ie,
        createModifier: Xe,
        createModifiersFromModifierFlags: Ft,
        createQualifiedName: Ut,
        updateQualifiedName: Xt,
        createComputedPropertyName: Ar,
        updateComputedPropertyName: Ct,
        createTypeParameterDeclaration: Kt,
        updateTypeParameterDeclaration: zr,
        createParameterDeclaration: _i,
        updateParameterDeclaration: Gr,
        createDecorator: Nt,
        updateDecorator: Li,
        createPropertySignature: ri,
        updatePropertySignature: Zr,
        createPropertyDeclaration: ra,
        updatePropertyDeclaration: Me,
        createMethodSignature: vt,
        updateMethodSignature: tr,
        createMethodDeclaration: Ur,
        updateMethodDeclaration: $n,
        createConstructorDeclaration: Lr,
        updateConstructorDeclaration: ha,
        createGetAccessorDeclaration: Pt,
        updateGetAccessorDeclaration: ne,
        createSetAccessorDeclaration: re,
        updateSetAccessorDeclaration: we,
        createCallSignature: nt,
        updateCallSignature: it,
        createConstructSignature: ut,
        updateConstructSignature: Qe,
        createIndexSignature: xt,
        updateIndexSignature: Dt,
        createClassStaticBlockDeclaration: na,
        updateClassStaticBlockDeclaration: Ea,
        createTemplateLiteralTypeSpan: Ve,
        updateTemplateLiteralTypeSpan: fr,
        createKeywordTypeNode: rr,
        createTypePredicateNode: Oe,
        updateTypePredicateNode: rt,
        createTypeReferenceNode: ee,
        updateTypeReferenceNode: q,
        createFunctionTypeNode: j,
        updateFunctionTypeNode: Re,
        createConstructorTypeNode: ye,
        updateConstructorTypeNode: Pr,
        createTypeQueryNode: Cr,
        updateTypeQueryNode: et,
        createTypeLiteralNode: kt,
        updateTypeLiteralNode: wt,
        createArrayTypeNode: qt,
        updateArrayTypeNode: Ir,
        createTupleTypeNode: Yt,
        updateTupleTypeNode: Jt,
        createNamedTupleMember: $t,
        updateNamedTupleMember: Qt,
        createOptionalTypeNode: ct,
        updateOptionalTypeNode: wn,
        createRestTypeNode: Mi,
        updateRestTypeNode: os,
        createUnionTypeNode: oo,
        updateUnionTypeNode: To,
        createIntersectionTypeNode: ia,
        updateIntersectionTypeNode: ja,
        createConditionalTypeNode: _o,
        updateConditionalTypeNode: Yc,
        createInferTypeNode: Ou,
        updateInferTypeNode: _c,
        createImportTypeNode: $a,
        updateImportTypeNode: Yi,
        createParenthesizedType: Is,
        updateParenthesizedType: Zt,
        createThisTypeNode: Mo,
        createTypeOperatorNode: ou,
        updateTypeOperatorNode: Wl,
        createIndexedAccessTypeNode: bu,
        updateIndexedAccessTypeNode: Ma,
        createMappedTypeNode: ac,
        updateMappedTypeNode: Qo,
        createLiteralTypeNode: I,
        updateLiteralTypeNode: je,
        createTemplateLiteralType: xl,
        updateTemplateLiteralType: fa,
        createObjectBindingPattern: lt,
        updateObjectBindingPattern: St,
        createArrayBindingPattern: jr,
        updateArrayBindingPattern: Bn,
        createBindingElement: tn,
        updateBindingElement: ai,
        createArrayLiteralExpression: ei,
        updateArrayLiteralExpression: La,
        createObjectLiteralExpression: ds,
        updateObjectLiteralExpression: cl,
        createPropertyAccessExpression: e & 4 ? (v, w) => ln(ml(v, w), 262144) : ml,
        updatePropertyAccessExpression: gl,
        createPropertyAccessChain: e & 4 ? (v, w, B) => ln(Os(v, w, B), 262144) : Os,
        updatePropertyAccessChain: Ao,
        createElementAccessExpression: rf,
        updateElementAccessExpression: Ip,
        createElementAccessChain: Pe,
        updateElementAccessChain: jt,
        createCallExpression: Hi,
        updateCallExpression: Js,
        createCallChain: io,
        updateCallChain: Qs,
        createNewExpression: Oc,
        updateNewExpression: Dc,
        createTaggedTemplateExpression: zs,
        updateTaggedTemplateExpression: bc,
        createTypeAssertion: Il,
        updateTypeAssertion: Op,
        createParenthesizedExpression: Wf,
        updateParenthesizedExpression: id,
        createFunctionExpression: ad,
        updateFunctionExpression: hl,
        createArrowFunction: ll,
        updateArrowFunction: Kd,
        createDeleteExpression: em,
        updateDeleteExpression: e0,
        createTypeOfExpression: Fu,
        updateTypeOfExpression: nf,
        createVoidExpression: A_,
        updateVoidExpression: t0,
        createAwaitExpression: Uf,
        updateAwaitExpression: Z,
        createPrefixUnaryExpression: st,
        updatePrefixUnaryExpression: Rt,
        createPostfixUnaryExpression: F,
        updatePostfixUnaryExpression: ve,
        createBinaryExpression: qe,
        updateBinaryExpression: Rr,
        createConditionalExpression: cn,
        updateConditionalExpression: dr,
        createTemplateExpression: Cn,
        updateTemplateExpression: fs,
        createTemplateHead: cu,
        createTemplateMiddle: lh,
        createTemplateTail: X0,
        createNoSubstitutionTemplateLiteral: Q0,
        createTemplateLiteralLikeNode: N_,
        createYieldExpression: vg,
        updateYieldExpression: r0,
        createSpreadElement: S1,
        updateSpreadElement: Y0,
        createClassExpression: Vf,
        updateClassExpression: bg,
        createOmittedExpression: T1,
        createExpressionWithTypeArguments: Sd,
        updateExpressionWithTypeArguments: qf,
        createAsExpression: ze,
        updateAsExpression: at,
        createNonNullExpression: At,
        updateNonNullExpression: yr,
        createSatisfiesExpression: Br,
        updateSatisfiesExpression: Tn,
        createNonNullChain: Er,
        updateNonNullChain: hn,
        createMetaProperty: Vr,
        updateMetaProperty: li,
        createTemplateSpan: ki,
        updateTemplateSpan: Zi,
        createSemicolonClassElement: yo,
        createBlock: Jc,
        updateBlock: Fp,
        createVariableStatement: Td,
        updateVariableStatement: tm,
        createEmptyStatement: xd,
        createExpressionStatement: rm,
        updateExpressionStatement: nm,
        createIfStatement: Wm,
        updateIfStatement: Qk,
        createDoStatement: g2,
        updateDoStatement: x1,
        createWhileStatement: sT,
        updateWhileStatement: h2,
        createForStatement: Um,
        updateForStatement: Yk,
        createForInStatement: Zk,
        updateForInStatement: gP,
        createForOfStatement: n0,
        updateForOfStatement: Kk,
        createContinueStatement: y2,
        updateContinueStatement: Z0,
        createBreakStatement: k1,
        updateBreakStatement: eC,
        createReturnStatement: PE,
        updateReturnStatement: tC,
        createWithStatement: oT,
        updateWithStatement: v2,
        createSwitchStatement: K0,
        updateSwitchStatement: AE,
        createLabeledStatement: rC,
        updateLabeledStatement: cT,
        createThrowStatement: b2,
        updateThrowStatement: NE,
        createTryStatement: nC,
        updateTryStatement: lT,
        createDebuggerStatement: ey,
        createVariableDeclaration: uh,
        updateVariableDeclaration: ty,
        createVariableDeclarationList: _h,
        updateVariableDeclarationList: Hv,
        createFunctionDeclaration: ry,
        updateFunctionDeclaration: S2,
        createClassDeclaration: C1,
        updateClassDeclaration: Ws,
        createInterfaceDeclaration: _T,
        updateInterfaceDeclaration: Ql,
        createTypeAliasDeclaration: im,
        updateTypeAliasDeclaration: fh,
        createEnumDeclaration: cp,
        updateEnumDeclaration: lp,
        createModuleDeclaration: Sc,
        updateModuleDeclaration: lu,
        createModuleBlock: Lc,
        updateModuleBlock: T2,
        createCaseBlock: ph,
        updateCaseBlock: Sg,
        createNamespaceExportDeclaration: Vm,
        updateNamespaceExportDeclaration: E1,
        createImportEqualsDeclaration: IE,
        updateImportEqualsDeclaration: $v,
        createImportDeclaration: iC,
        updateImportDeclaration: OE,
        createImportClause: ny,
        updateImportClause: Xv,
        createAssertClause: We,
        updateAssertClause: iy,
        createAssertEntry: Tg,
        updateAssertEntry: uu,
        createImportTypeAssertionContainer: am,
        updateImportTypeAssertionContainer: ay,
        createImportAttributes: kd,
        updateImportAttributes: Qv,
        createImportAttribute: Cd,
        updateImportAttribute: k2,
        createNamespaceImport: Fs,
        updateNamespaceImport: Pf,
        createNamespaceExport: fT,
        updateNamespaceExport: qm,
        createNamedImports: i0,
        updateNamedImports: Gm,
        createImportSpecifier: sy,
        updateImportSpecifier: Yv,
        createExportAssignment: oy,
        updateExportAssignment: pT,
        createExportDeclaration: to,
        updateExportDeclaration: dh,
        createNamedExports: Wi,
        updateNamedExports: Pn,
        createExportSpecifier: Ku,
        updateExportSpecifier: hP,
        createMissingDeclaration: cy,
        createExternalModuleReference: Sn,
        updateExternalModuleReference: Mu,
        get createJSDocAllType() {
          return u(313);
        },
        get createJSDocUnknownType() {
          return u(314);
        },
        get createJSDocNonNullableType() {
          return h(316);
        },
        get updateJSDocNonNullableType() {
          return S(316);
        },
        get createJSDocNullableType() {
          return h(315);
        },
        get updateJSDocNullableType() {
          return S(315);
        },
        get createJSDocOptionalType() {
          return d(317);
        },
        get updateJSDocOptionalType() {
          return g(317);
        },
        get createJSDocVariadicType() {
          return d(319);
        },
        get updateJSDocVariadicType() {
          return g(319);
        },
        get createJSDocNamepathType() {
          return d(320);
        },
        get updateJSDocNamepathType() {
          return g(320);
        },
        createJSDocFunctionType: sC,
        updateJSDocFunctionType: dT,
        createJSDocTypeLiteral: d_,
        updateJSDocTypeLiteral: xg,
        createJSDocTypeExpression: sd,
        updateJSDocTypeExpression: Zv,
        createJSDocSignature: mT,
        updateJSDocSignature: mh,
        createJSDocTemplateTag: _y,
        updateJSDocTemplateTag: D1,
        createJSDocTypedefTag: gT,
        updateJSDocTypedefTag: _p,
        createJSDocParameterTag: fy,
        updateJSDocParameterTag: oC,
        createJSDocPropertyTag: hT,
        updateJSDocPropertyTag: yT,
        createJSDocCallbackTag: Gf,
        updateJSDocCallbackTag: LE,
        createJSDocOverloadTag: gh,
        updateJSDocOverloadTag: w1,
        createJSDocAugmentsTag: $m,
        updateJSDocAugmentsTag: hh,
        createJSDocImplementsTag: Dd,
        updateJSDocImplementsTag: RE,
        createJSDocSeeTag: yh,
        updateJSDocSeeTag: Kv,
        createJSDocImportTag: zc,
        updateJSDocImportTag: Zl,
        createJSDocNameReference: Yl,
        updateJSDocNameReference: vT,
        createJSDocMemberName: vh,
        updateJSDocMemberName: bT,
        createJSDocLink: C2,
        updateJSDocLink: a0,
        createJSDocLinkCode: ST,
        updateJSDocLinkCode: TT,
        createJSDocLinkPlain: ME,
        updateJSDocLinkPlain: yP,
        get createJSDocTypeTag() {
          return D(345);
        },
        get updateJSDocTypeTag() {
          return P(345);
        },
        get createJSDocReturnTag() {
          return D(343);
        },
        get updateJSDocReturnTag() {
          return P(343);
        },
        get createJSDocThisTag() {
          return D(344);
        },
        get updateJSDocThisTag() {
          return P(344);
        },
        get createJSDocAuthorTag() {
          return T(331);
        },
        get updateJSDocAuthorTag() {
          return k(331);
        },
        get createJSDocClassTag() {
          return T(333);
        },
        get updateJSDocClassTag() {
          return k(333);
        },
        get createJSDocPublicTag() {
          return T(334);
        },
        get updateJSDocPublicTag() {
          return k(334);
        },
        get createJSDocPrivateTag() {
          return T(335);
        },
        get updateJSDocPrivateTag() {
          return k(335);
        },
        get createJSDocProtectedTag() {
          return T(336);
        },
        get updateJSDocProtectedTag() {
          return k(336);
        },
        get createJSDocReadonlyTag() {
          return T(337);
        },
        get updateJSDocReadonlyTag() {
          return k(337);
        },
        get createJSDocOverrideTag() {
          return T(338);
        },
        get updateJSDocOverrideTag() {
          return k(338);
        },
        get createJSDocDeprecatedTag() {
          return T(332);
        },
        get updateJSDocDeprecatedTag() {
          return k(332);
        },
        get createJSDocThrowsTag() {
          return D(350);
        },
        get updateJSDocThrowsTag() {
          return P(350);
        },
        get createJSDocSatisfiesTag() {
          return D(351);
        },
        get updateJSDocSatisfiesTag() {
          return P(351);
        },
        createJSDocEnumTag: s0,
        updateJSDocEnumTag: lC,
        createJSDocUnknownTag: xT,
        updateJSDocUnknownTag: jE,
        createJSDocText: uC,
        updateJSDocText: m_,
        createJSDocComment: Hf,
        updateJSDocComment: BE,
        createJsxElement: wd,
        updateJsxElement: JE,
        createJsxSelfClosingElement: py,
        updateJsxSelfClosingElement: kT,
        createJsxOpeningElement: _C,
        updateJsxOpeningElement: Tc,
        createJsxClosingElement: E2,
        updateJsxClosingElement: od,
        createJsxFragment: N1,
        createJsxText: Ru,
        updateJsxText: eb,
        createJsxOpeningFragment: tb,
        createJsxJsxClosingFragment: I1,
        updateJsxFragment: zE,
        createJsxAttribute: Af,
        updateJsxAttribute: D2,
        createJsxAttributes: Xm,
        updateJsxAttributes: WE,
        createJsxSpreadAttribute: CT,
        updateJsxSpreadAttribute: w2,
        createJsxExpression: O1,
        updateJsxExpression: P2,
        createJsxNamespacedName: UE,
        updateJsxNamespacedName: ET,
        createCaseClause: fC,
        updateCaseClause: DT,
        createDefaultClause: Tu,
        updateDefaultClause: kg,
        createHeritageClause: wT,
        updateHeritageClause: pC,
        createCatchClause: ys,
        updateCatchClause: mn,
        createPropertyAssignment: Nf,
        updatePropertyAssignment: ju,
        createShorthandPropertyAssignment: dC,
        updateShorthandPropertyAssignment: C,
        createSpreadAssignment: Et,
        updateSpreadAssignment: nr,
        createEnumMember: Nn,
        updateEnumMember: Ui,
        createSourceFile: oa,
        updateSourceFile: Lp,
        createRedirectedSourceFile: sa,
        createBundle: If,
        updateBundle: fp,
        createSyntheticExpression: PT,
        createSyntaxList: o0,
        createNotEmittedStatement: nb,
        createNotEmittedTypeElement: Yo,
        createPartiallyEmittedExpression: mC,
        updatePartiallyEmittedExpression: $f,
        createCommaListExpression: AT,
        updateCommaListExpression: F1,
        createSyntheticReferenceExpression: A2,
        updateSyntheticReferenceExpression: bP,
        cloneNode: GE,
        get createComma() {
          return o(28);
        },
        get createAssignment() {
          return o(64);
        },
        get createLogicalOr() {
          return o(57);
        },
        get createLogicalAnd() {
          return o(56);
        },
        get createBitwiseOr() {
          return o(52);
        },
        get createBitwiseXor() {
          return o(53);
        },
        get createBitwiseAnd() {
          return o(51);
        },
        get createStrictEquality() {
          return o(37);
        },
        get createStrictInequality() {
          return o(38);
        },
        get createEquality() {
          return o(35);
        },
        get createInequality() {
          return o(36);
        },
        get createLessThan() {
          return o(30);
        },
        get createLessThanEquals() {
          return o(33);
        },
        get createGreaterThan() {
          return o(32);
        },
        get createGreaterThanEquals() {
          return o(34);
        },
        get createLeftShift() {
          return o(48);
        },
        get createRightShift() {
          return o(49);
        },
        get createUnsignedRightShift() {
          return o(50);
        },
        get createAdd() {
          return o(40);
        },
        get createSubtract() {
          return o(41);
        },
        get createMultiply() {
          return o(42);
        },
        get createDivide() {
          return o(44);
        },
        get createModulo() {
          return o(45);
        },
        get createExponent() {
          return o(43);
        },
        get createPrefixPlus() {
          return c(40);
        },
        get createPrefixMinus() {
          return c(41);
        },
        get createPrefixIncrement() {
          return c(46);
        },
        get createPrefixDecrement() {
          return c(47);
        },
        get createBitwiseNot() {
          return c(55);
        },
        get createLogicalNot() {
          return c(54);
        },
        get createPostfixIncrement() {
          return _(46);
        },
        get createPostfixDecrement() {
          return _(47);
        },
        createImmediatelyInvokedFunctionExpression: L1,
        createImmediatelyInvokedArrowFunction: HE,
        createVoidZero: ib,
        createExportDefault: f8,
        createExternalModuleExport: N2,
        createTypeCheck: $E,
        createIsNotTypeCheck: p8,
        createMethodCall: dy,
        createGlobalMethodCall: O2,
        createFunctionBindCall: Xi,
        createFunctionCallCall: I2,
        createFunctionApplyCall: Xr,
        createArraySliceCall: ab,
        createArrayConcatCall: XE,
        createObjectDefinePropertyCall: hC,
        createObjectGetOwnPropertyDescriptorCall: F2,
        createReflectGetCall: TP,
        createReflectSetCall: hM,
        createPropertyDescriptor: M1,
        createCallBinding: kP,
        createAssignmentTargetWrapper: X,
        inlineExpressions: xe,
        getInternalName: Tt,
        getLocalName: zt,
        getExportName: Mr,
        getDeclarationName: Kn,
        getNamespaceMemberName: Ki,
        getExternalModuleOrNamespaceExportName: di,
        restoreOuterExpressions: d8,
        restoreEnclosingLabel: QE,
        createUseStrictPrologue: Bi,
        copyPrologue: xn,
        copyStandardPrologue: hi,
        copyCustomPrologue: No,
        ensureUseStrict: Pd,
        liftToBlock: Qm,
        mergeLexicalEnvironment: bh,
        replaceModifiers: Cg,
        replaceDecoratorsAndModifiers: M2,
        replacePropertyName: m8
      };
      return bt(_0e, (v) => v(N)), N;
      function M(v, w) {
        if (v === void 0 || v === Te) v = [];
        else if (Cb(v)) {
          if (w === void 0 || v.hasTrailingComma === w)
            return v.transformFlags === void 0 && d0e(v), E.attachNodeArrayDebugInfo(v), v;
          const Ue = v.slice();
          return Ue.pos = v.pos, Ue.end = v.end, Ue.hasTrailingComma = w, Ue.transformFlags = v.transformFlags, E.attachNodeArrayDebugInfo(Ue), Ue;
        }
        const B = v.length, le = B >= 1 && B <= 4 ? v.slice() : v;
        return le.pos = -1, le.end = -1, le.hasTrailingComma = !!w, le.transformFlags = 0, d0e(le), E.attachNodeArrayDebugInfo(le), le;
      }
      function R(v) {
        return t.createBaseNode(v);
      }
      function G(v) {
        const w = R(v);
        return w.symbol = void 0, w.localSymbol = void 0, w;
      }
      function L(v, w) {
        return v !== w && (v.typeArguments = w.typeArguments), nn(v, w);
      }
      function z(v, w = 0) {
        const B = typeof v == "number" ? v + "" : v;
        E.assert(B.charCodeAt(0) !== 45, "Negative numbers should be created in combination with createPrefixUnaryExpression");
        const le = G(9);
        return le.text = B, le.numericLiteralFlags = w, w & 384 && (le.transformFlags |= 1024), le;
      }
      function H(v) {
        const w = ot(10);
        return w.text = typeof v == "string" ? v : Ub(v) + "n", w.transformFlags |= 32, w;
      }
      function U(v, w) {
        const B = G(11);
        return B.text = v, B.singleQuote = w, B;
      }
      function pe(v, w, B) {
        const le = U(v, w);
        return le.hasExtendedUnicodeEscape = B, B && (le.transformFlags |= 1024), le;
      }
      function ie(v) {
        const w = U(Xp(v), void 0);
        return w.textSourceNode = v, w;
      }
      function W(v) {
        const w = ot(14);
        return w.text = v, w;
      }
      function Q(v, w) {
        switch (v) {
          case 9:
            return z(w, 0);
          case 10:
            return H(w);
          case 11:
            return pe(w, void 0);
          case 12:
            return Ru(w, !1);
          case 13:
            return Ru(w, !0);
          case 14:
            return W(w);
          case 15:
            return N_(v, w, void 0, 0);
        }
      }
      function se(v) {
        const w = t.createBaseIdentifierNode(80);
        return w.escapedText = v, w.jsDoc = void 0, w.flowNode = void 0, w.symbol = void 0, w;
      }
      function he(v, w, B, le) {
        const Ue = se(mc(v));
        return rN(Ue, {
          flags: w,
          id: vz,
          prefix: B,
          suffix: le
        }), vz++, Ue;
      }
      function fe(v, w, B) {
        w === void 0 && v && (w = oS(v)), w === 80 && (w = void 0);
        const le = se(mc(v));
        return B && (le.flags |= 256), le.escapedText === "await" && (le.transformFlags |= 67108864), le.flags & 256 && (le.transformFlags |= 1024), le;
      }
      function de(v, w, B, le) {
        let Ue = 1;
        w && (Ue |= 8);
        const Wt = he("", Ue, B, le);
        return v && v(Wt), Wt;
      }
      function $(v) {
        let w = 2;
        return v && (w |= 8), he("", w, void 0, void 0);
      }
      function Se(v, w = 0, B, le) {
        return E.assert(!(w & 7), "Argument out of range: flags"), E.assert((w & 48) !== 32, "GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"), he(v, 3 | w, B, le);
      }
      function Be(v, w = 0, B, le) {
        E.assert(!(w & 7), "Argument out of range: flags");
        const Ue = v ? Jg(v) ? Av(!1, B, v, le, On) : `generated@${Hs(v)}` : "";
        (B || le) && (w |= 16);
        const Wt = he(Ue, 4 | w, B, le);
        return Wt.original = v, Wt;
      }
      function ce(v) {
        const w = t.createBasePrivateIdentifierNode(81);
        return w.escapedText = v, w.transformFlags |= 16777216, w;
      }
      function oe(v) {
        return ta(v, "#") || E.fail("First character of private identifier must be #: " + v), ce(mc(v));
      }
      function ge(v, w, B, le) {
        const Ue = ce(mc(v));
        return rN(Ue, {
          flags: w,
          id: vz,
          prefix: B,
          suffix: le
        }), vz++, Ue;
      }
      function Ae(v, w, B) {
        return v && !ta(v, "#") && E.fail("First character of private identifier must be #: " + v), ge(v ?? "", 8 | (v ? 3 : 1), w, B);
      }
      function Ne(v, w, B) {
        const le = ge(Jg(v) ? Av(!0, w, v, B, On) : `#generated@${Hs(v)}`, 4 | (w || B ? 16 : 0), w, B);
        return le.original = v, le;
      }
      function ot(v) {
        return t.createBaseTokenNode(v);
      }
      function K(v) {
        E.assert(v >= 0 && v <= 166, "Invalid token"), E.assert(v <= 15 || v >= 18, "Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."), E.assert(v <= 9 || v >= 15, "Invalid token. Use 'createLiteralLikeNode' to create literals."), E.assert(v !== 80, "Invalid token. Use 'createIdentifier' to create identifiers");
        const w = ot(v);
        let B = 0;
        switch (v) {
          case 134:
            B = 384;
            break;
          case 160:
            B = 4;
            break;
          case 125:
          case 123:
          case 124:
          case 148:
          case 128:
          case 138:
          case 87:
          case 133:
          case 150:
          case 163:
          case 146:
          case 151:
          case 103:
          case 147:
          case 164:
          case 154:
          case 136:
          case 155:
          case 116:
          case 159:
          case 157:
            B = 1;
            break;
          case 108:
            B = 134218752, w.flowNode = void 0;
            break;
          case 126:
            B = 1024;
            break;
          case 129:
            B = 16777216;
            break;
          case 110:
            B = 16384, w.flowNode = void 0;
            break;
        }
        return B && (w.transformFlags |= B), w;
      }
      function ke() {
        return K(108);
      }
      function ae() {
        return K(110);
      }
      function Ce() {
        return K(106);
      }
      function ue() {
        return K(112);
      }
      function Ie() {
        return K(97);
      }
      function Xe(v) {
        return K(v);
      }
      function Ft(v) {
        const w = [];
        return v & 32 && w.push(Xe(95)), v & 128 && w.push(Xe(138)), v & 2048 && w.push(Xe(90)), v & 4096 && w.push(Xe(87)), v & 1 && w.push(Xe(125)), v & 2 && w.push(Xe(123)), v & 4 && w.push(Xe(124)), v & 64 && w.push(Xe(128)), v & 256 && w.push(Xe(126)), v & 16 && w.push(Xe(164)), v & 8 && w.push(Xe(148)), v & 512 && w.push(Xe(129)), v & 1024 && w.push(Xe(134)), v & 8192 && w.push(Xe(103)), v & 16384 && w.push(Xe(147)), w.length ? w : void 0;
      }
      function Ut(v, w) {
        const B = R(167);
        return B.left = v, B.right = yl(w), B.transformFlags |= bn(B.left) | ZA(B.right), B.flowNode = void 0, B;
      }
      function Xt(v, w, B) {
        return v.left !== w || v.right !== B ? nn(Ut(w, B), v) : v;
      }
      function Ar(v) {
        const w = R(168);
        return w.expression = i().parenthesizeExpressionOfComputedPropertyName(v), w.transformFlags |= bn(w.expression) | 132096, w;
      }
      function Ct(v, w) {
        return v.expression !== w ? nn(Ar(w), v) : v;
      }
      function Kt(v, w, B, le) {
        const Ue = G(169);
        return Ue.modifiers = Zs(v), Ue.name = yl(w), Ue.constraint = B, Ue.default = le, Ue.transformFlags = 1, Ue.expression = void 0, Ue.jsDoc = void 0, Ue;
      }
      function zr(v, w, B, le, Ue) {
        return v.modifiers !== w || v.name !== B || v.constraint !== le || v.default !== Ue ? nn(Kt(w, B, le, Ue), v) : v;
      }
      function _i(v, w, B, le, Ue, Wt) {
        const gn = G(170);
        return gn.modifiers = Zs(v), gn.dotDotDotToken = w, gn.name = yl(B), gn.questionToken = le, gn.type = Ue, gn.initializer = NT(Wt), Zy(gn.name) ? gn.transformFlags = 1 : gn.transformFlags = Us(gn.modifiers) | bn(gn.dotDotDotToken) | n1(gn.name) | bn(gn.questionToken) | bn(gn.initializer) | (gn.questionToken ?? gn.type ? 1 : 0) | (gn.dotDotDotToken ?? gn.initializer ? 1024 : 0) | (Cm(gn.modifiers) & 31 ? 8192 : 0), gn.jsDoc = void 0, gn;
      }
      function Gr(v, w, B, le, Ue, Wt, gn) {
        return v.modifiers !== w || v.dotDotDotToken !== B || v.name !== le || v.questionToken !== Ue || v.type !== Wt || v.initializer !== gn ? nn(_i(w, B, le, Ue, Wt, gn), v) : v;
      }
      function Nt(v) {
        const w = R(171);
        return w.expression = i().parenthesizeLeftSideOfAccess(v, !1), w.transformFlags |= bn(w.expression) | 33562625, w;
      }
      function Li(v, w) {
        return v.expression !== w ? nn(Nt(w), v) : v;
      }
      function ri(v, w, B, le) {
        const Ue = G(172);
        return Ue.modifiers = Zs(v), Ue.name = yl(w), Ue.type = le, Ue.questionToken = B, Ue.transformFlags = 1, Ue.initializer = void 0, Ue.jsDoc = void 0, Ue;
      }
      function Zr(v, w, B, le, Ue) {
        return v.modifiers !== w || v.name !== B || v.questionToken !== le || v.type !== Ue ? ni(ri(w, B, le, Ue), v) : v;
      }
      function ni(v, w) {
        return v !== w && (v.initializer = w.initializer), nn(v, w);
      }
      function ra(v, w, B, le, Ue) {
        const Wt = G(173);
        Wt.modifiers = Zs(v), Wt.name = yl(w), Wt.questionToken = B && a1(B) ? B : void 0, Wt.exclamationToken = B && iN(B) ? B : void 0, Wt.type = le, Wt.initializer = NT(Ue);
        const gn = Wt.flags & 33554432 || Cm(Wt.modifiers) & 128;
        return Wt.transformFlags = Us(Wt.modifiers) | n1(Wt.name) | bn(Wt.initializer) | (gn || Wt.questionToken || Wt.exclamationToken || Wt.type ? 1 : 0) | (_s(Wt.name) || Cm(Wt.modifiers) & 256 && Wt.initializer ? 8192 : 0) | 16777216, Wt.jsDoc = void 0, Wt;
      }
      function Me(v, w, B, le, Ue, Wt) {
        return v.modifiers !== w || v.name !== B || v.questionToken !== (le !== void 0 && a1(le) ? le : void 0) || v.exclamationToken !== (le !== void 0 && iN(le) ? le : void 0) || v.type !== Ue || v.initializer !== Wt ? nn(ra(w, B, le, Ue, Wt), v) : v;
      }
      function vt(v, w, B, le, Ue, Wt) {
        const gn = G(174);
        return gn.modifiers = Zs(v), gn.name = yl(w), gn.questionToken = B, gn.typeParameters = Zs(le), gn.parameters = Zs(Ue), gn.type = Wt, gn.transformFlags = 1, gn.jsDoc = void 0, gn.locals = void 0, gn.nextContainer = void 0, gn.typeArguments = void 0, gn;
      }
      function tr(v, w, B, le, Ue, Wt, gn) {
        return v.modifiers !== w || v.name !== B || v.questionToken !== le || v.typeParameters !== Ue || v.parameters !== Wt || v.type !== gn ? L(vt(w, B, le, Ue, Wt, gn), v) : v;
      }
      function Ur(v, w, B, le, Ue, Wt, gn, ua) {
        const vo = G(175);
        if (vo.modifiers = Zs(v), vo.asteriskToken = w, vo.name = yl(B), vo.questionToken = le, vo.exclamationToken = void 0, vo.typeParameters = Zs(Ue), vo.parameters = M(Wt), vo.type = gn, vo.body = ua, !vo.body) vo.transformFlags = 1;
        else {
          const Ad = Cm(vo.modifiers) & 1024, Sh = !!vo.asteriskToken, my = Ad && Sh;
          vo.transformFlags = Us(vo.modifiers) | bn(vo.asteriskToken) | n1(vo.name) | bn(vo.questionToken) | Us(vo.typeParameters) | Us(vo.parameters) | bn(vo.type) | bn(vo.body) & -67108865 | (my ? 128 : Ad ? 256 : Sh ? 2048 : 0) | (vo.questionToken || vo.typeParameters || vo.type ? 1 : 0) | 1024;
        }
        return vo.typeArguments = void 0, vo.jsDoc = void 0, vo.locals = void 0, vo.nextContainer = void 0, vo.flowNode = void 0, vo.endFlowNode = void 0, vo.returnFlowNode = void 0, vo;
      }
      function $n(v, w, B, le, Ue, Wt, gn, ua, vo) {
        return v.modifiers !== w || v.asteriskToken !== B || v.name !== le || v.questionToken !== Ue || v.typeParameters !== Wt || v.parameters !== gn || v.type !== ua || v.body !== vo ? zn(Ur(w, B, le, Ue, Wt, gn, ua, vo), v) : v;
      }
      function zn(v, w) {
        return v !== w && (v.exclamationToken = w.exclamationToken), nn(v, w);
      }
      function na(v) {
        const w = G(176);
        return w.body = v, w.transformFlags = bn(v) | 16777216, w.modifiers = void 0, w.jsDoc = void 0, w.locals = void 0, w.nextContainer = void 0, w.endFlowNode = void 0, w.returnFlowNode = void 0, w;
      }
      function Ea(v, w) {
        return v.body !== w ? Da(na(w), v) : v;
      }
      function Da(v, w) {
        return v !== w && (v.modifiers = w.modifiers), nn(v, w);
      }
      function Lr(v, w, B) {
        const le = G(177);
        return le.modifiers = Zs(v), le.parameters = M(w), le.body = B, le.body ? le.transformFlags = Us(le.modifiers) | Us(le.parameters) | bn(le.body) & -67108865 | 1024 : le.transformFlags = 1, le.typeParameters = void 0, le.type = void 0, le.typeArguments = void 0, le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le.endFlowNode = void 0, le.returnFlowNode = void 0, le;
      }
      function ha(v, w, B, le) {
        return v.modifiers !== w || v.parameters !== B || v.body !== le ? Ye(Lr(w, B, le), v) : v;
      }
      function Ye(v, w) {
        return v !== w && (v.typeParameters = w.typeParameters, v.type = w.type), L(v, w);
      }
      function Pt(v, w, B, le, Ue) {
        const Wt = G(178);
        return Wt.modifiers = Zs(v), Wt.name = yl(w), Wt.parameters = M(B), Wt.type = le, Wt.body = Ue, Wt.body ? Wt.transformFlags = Us(Wt.modifiers) | n1(Wt.name) | Us(Wt.parameters) | bn(Wt.type) | bn(Wt.body) & -67108865 | (Wt.type ? 1 : 0) : Wt.transformFlags = 1, Wt.typeArguments = void 0, Wt.typeParameters = void 0, Wt.jsDoc = void 0, Wt.locals = void 0, Wt.nextContainer = void 0, Wt.flowNode = void 0, Wt.endFlowNode = void 0, Wt.returnFlowNode = void 0, Wt;
      }
      function ne(v, w, B, le, Ue, Wt) {
        return v.modifiers !== w || v.name !== B || v.parameters !== le || v.type !== Ue || v.body !== Wt ? tt(Pt(w, B, le, Ue, Wt), v) : v;
      }
      function tt(v, w) {
        return v !== w && (v.typeParameters = w.typeParameters), L(v, w);
      }
      function re(v, w, B, le) {
        const Ue = G(179);
        return Ue.modifiers = Zs(v), Ue.name = yl(w), Ue.parameters = M(B), Ue.body = le, Ue.body ? Ue.transformFlags = Us(Ue.modifiers) | n1(Ue.name) | Us(Ue.parameters) | bn(Ue.body) & -67108865 | (Ue.type ? 1 : 0) : Ue.transformFlags = 1, Ue.typeArguments = void 0, Ue.typeParameters = void 0, Ue.type = void 0, Ue.jsDoc = void 0, Ue.locals = void 0, Ue.nextContainer = void 0, Ue.flowNode = void 0, Ue.endFlowNode = void 0, Ue.returnFlowNode = void 0, Ue;
      }
      function we(v, w, B, le, Ue) {
        return v.modifiers !== w || v.name !== B || v.parameters !== le || v.body !== Ue ? Ge(re(w, B, le, Ue), v) : v;
      }
      function Ge(v, w) {
        return v !== w && (v.typeParameters = w.typeParameters, v.type = w.type), L(v, w);
      }
      function nt(v, w, B) {
        const le = G(180);
        return le.typeParameters = Zs(v), le.parameters = Zs(w), le.type = B, le.transformFlags = 1, le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le.typeArguments = void 0, le;
      }
      function it(v, w, B, le) {
        return v.typeParameters !== w || v.parameters !== B || v.type !== le ? L(nt(w, B, le), v) : v;
      }
      function ut(v, w, B) {
        const le = G(181);
        return le.typeParameters = Zs(v), le.parameters = Zs(w), le.type = B, le.transformFlags = 1, le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le.typeArguments = void 0, le;
      }
      function Qe(v, w, B, le) {
        return v.typeParameters !== w || v.parameters !== B || v.type !== le ? L(ut(w, B, le), v) : v;
      }
      function xt(v, w, B) {
        const le = G(182);
        return le.modifiers = Zs(v), le.parameters = Zs(w), le.type = B, le.transformFlags = 1, le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le.typeArguments = void 0, le;
      }
      function Dt(v, w, B, le) {
        return v.parameters !== B || v.type !== le || v.modifiers !== w ? L(xt(w, B, le), v) : v;
      }
      function Ve(v, w) {
        const B = R(205);
        return B.type = v, B.literal = w, B.transformFlags = 1, B;
      }
      function fr(v, w, B) {
        return v.type !== w || v.literal !== B ? nn(Ve(w, B), v) : v;
      }
      function rr(v) {
        return K(v);
      }
      function Oe(v, w, B) {
        const le = R(183);
        return le.assertsModifier = v, le.parameterName = yl(w), le.type = B, le.transformFlags = 1, le;
      }
      function rt(v, w, B, le) {
        return v.assertsModifier !== w || v.parameterName !== B || v.type !== le ? nn(Oe(w, B, le), v) : v;
      }
      function ee(v, w) {
        const B = R(184);
        return B.typeName = yl(v), B.typeArguments = w && i().parenthesizeTypeArguments(M(w)), B.transformFlags = 1, B;
      }
      function q(v, w, B) {
        return v.typeName !== w || v.typeArguments !== B ? nn(ee(w, B), v) : v;
      }
      function j(v, w, B) {
        const le = G(185);
        return le.typeParameters = Zs(v), le.parameters = Zs(w), le.type = B, le.transformFlags = 1, le.modifiers = void 0, le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le.typeArguments = void 0, le;
      }
      function Re(v, w, B, le) {
        return v.typeParameters !== w || v.parameters !== B || v.type !== le ? $e(j(w, B, le), v) : v;
      }
      function $e(v, w) {
        return v !== w && (v.modifiers = w.modifiers), L(v, w);
      }
      function ye(...v) {
        return v.length === 4 ? Ke(...v) : v.length === 3 ? pr(...v) : E.fail("Incorrect number of arguments specified.");
      }
      function Ke(v, w, B, le) {
        const Ue = G(186);
        return Ue.modifiers = Zs(v), Ue.typeParameters = Zs(w), Ue.parameters = Zs(B), Ue.type = le, Ue.transformFlags = 1, Ue.jsDoc = void 0, Ue.locals = void 0, Ue.nextContainer = void 0, Ue.typeArguments = void 0, Ue;
      }
      function pr(v, w, B) {
        return Ke(void 0, v, w, B);
      }
      function Pr(...v) {
        return v.length === 5 ? vr(...v) : v.length === 4 ? fn(...v) : E.fail("Incorrect number of arguments specified.");
      }
      function vr(v, w, B, le, Ue) {
        return v.modifiers !== w || v.typeParameters !== B || v.parameters !== le || v.type !== Ue ? L(ye(w, B, le, Ue), v) : v;
      }
      function fn(v, w, B, le) {
        return vr(v, v.modifiers, w, B, le);
      }
      function Cr(v, w) {
        const B = R(187);
        return B.exprName = v, B.typeArguments = w && i().parenthesizeTypeArguments(w), B.transformFlags = 1, B;
      }
      function et(v, w, B) {
        return v.exprName !== w || v.typeArguments !== B ? nn(Cr(w, B), v) : v;
      }
      function kt(v) {
        const w = G(188);
        return w.members = M(v), w.transformFlags = 1, w;
      }
      function wt(v, w) {
        return v.members !== w ? nn(kt(w), v) : v;
      }
      function qt(v) {
        const w = R(189);
        return w.elementType = i().parenthesizeNonArrayTypeOfPostfixType(v), w.transformFlags = 1, w;
      }
      function Ir(v, w) {
        return v.elementType !== w ? nn(qt(w), v) : v;
      }
      function Yt(v) {
        const w = R(190);
        return w.elements = M(i().parenthesizeElementTypesOfTupleType(v)), w.transformFlags = 1, w;
      }
      function Jt(v, w) {
        return v.elements !== w ? nn(Yt(w), v) : v;
      }
      function $t(v, w, B, le) {
        const Ue = G(203);
        return Ue.dotDotDotToken = v, Ue.name = w, Ue.questionToken = B, Ue.type = le, Ue.transformFlags = 1, Ue.jsDoc = void 0, Ue;
      }
      function Qt(v, w, B, le, Ue) {
        return v.dotDotDotToken !== w || v.name !== B || v.questionToken !== le || v.type !== Ue ? nn($t(w, B, le, Ue), v) : v;
      }
      function ct(v) {
        const w = R(191);
        return w.type = i().parenthesizeTypeOfOptionalType(v), w.transformFlags = 1, w;
      }
      function wn(v, w) {
        return v.type !== w ? nn(ct(w), v) : v;
      }
      function Mi(v) {
        const w = R(192);
        return w.type = v, w.transformFlags = 1, w;
      }
      function os(v, w) {
        return v.type !== w ? nn(Mi(w), v) : v;
      }
      function cs(v, w, B) {
        const le = R(v);
        return le.types = N.createNodeArray(B(w)), le.transformFlags = 1, le;
      }
      function xa(v, w, B) {
        return v.types !== w ? nn(cs(v.kind, w, B), v) : v;
      }
      function oo(v) {
        return cs(193, v, i().parenthesizeConstituentTypesOfUnionType);
      }
      function To(v, w) {
        return xa(v, w, i().parenthesizeConstituentTypesOfUnionType);
      }
      function ia(v) {
        return cs(194, v, i().parenthesizeConstituentTypesOfIntersectionType);
      }
      function ja(v, w) {
        return xa(v, w, i().parenthesizeConstituentTypesOfIntersectionType);
      }
      function _o(v, w, B, le) {
        const Ue = R(195);
        return Ue.checkType = i().parenthesizeCheckTypeOfConditionalType(v), Ue.extendsType = i().parenthesizeExtendsTypeOfConditionalType(w), Ue.trueType = B, Ue.falseType = le, Ue.transformFlags = 1, Ue.locals = void 0, Ue.nextContainer = void 0, Ue;
      }
      function Yc(v, w, B, le, Ue) {
        return v.checkType !== w || v.extendsType !== B || v.trueType !== le || v.falseType !== Ue ? nn(_o(w, B, le, Ue), v) : v;
      }
      function Ou(v) {
        const w = R(196);
        return w.typeParameter = v, w.transformFlags = 1, w;
      }
      function _c(v, w) {
        return v.typeParameter !== w ? nn(Ou(w), v) : v;
      }
      function xl(v, w) {
        const B = R(204);
        return B.head = v, B.templateSpans = M(w), B.transformFlags = 1, B;
      }
      function fa(v, w, B) {
        return v.head !== w || v.templateSpans !== B ? nn(xl(w, B), v) : v;
      }
      function $a(v, w, B, le, Ue = !1) {
        const Wt = R(206);
        return Wt.argument = v, Wt.attributes = w, Wt.assertions && Wt.assertions.assertClause && Wt.attributes && (Wt.assertions.assertClause = Wt.attributes), Wt.qualifier = B, Wt.typeArguments = le && i().parenthesizeTypeArguments(le), Wt.isTypeOf = Ue, Wt.transformFlags = 1, Wt;
      }
      function Yi(v, w, B, le, Ue, Wt = v.isTypeOf) {
        return v.argument !== w || v.attributes !== B || v.qualifier !== le || v.typeArguments !== Ue || v.isTypeOf !== Wt ? nn($a(w, B, le, Ue, Wt), v) : v;
      }
      function Is(v) {
        const w = R(197);
        return w.type = v, w.transformFlags = 1, w;
      }
      function Zt(v, w) {
        return v.type !== w ? nn(Is(w), v) : v;
      }
      function Mo() {
        const v = R(198);
        return v.transformFlags = 1, v;
      }
      function ou(v, w) {
        const B = R(199);
        return B.operator = v, B.type = v === 148 ? i().parenthesizeOperandOfReadonlyTypeOperator(w) : i().parenthesizeOperandOfTypeOperator(w), B.transformFlags = 1, B;
      }
      function Wl(v, w) {
        return v.type !== w ? nn(ou(v.operator, w), v) : v;
      }
      function bu(v, w) {
        const B = R(200);
        return B.objectType = i().parenthesizeNonArrayTypeOfPostfixType(v), B.indexType = w, B.transformFlags = 1, B;
      }
      function Ma(v, w, B) {
        return v.objectType !== w || v.indexType !== B ? nn(bu(w, B), v) : v;
      }
      function ac(v, w, B, le, Ue, Wt) {
        const gn = G(201);
        return gn.readonlyToken = v, gn.typeParameter = w, gn.nameType = B, gn.questionToken = le, gn.type = Ue, gn.members = Wt && M(Wt), gn.transformFlags = 1, gn.locals = void 0, gn.nextContainer = void 0, gn;
      }
      function Qo(v, w, B, le, Ue, Wt, gn) {
        return v.readonlyToken !== w || v.typeParameter !== B || v.nameType !== le || v.questionToken !== Ue || v.type !== Wt || v.members !== gn ? nn(ac(w, B, le, Ue, Wt, gn), v) : v;
      }
      function I(v) {
        const w = R(202);
        return w.literal = v, w.transformFlags = 1, w;
      }
      function je(v, w) {
        return v.literal !== w ? nn(I(w), v) : v;
      }
      function lt(v) {
        const w = R(207);
        return w.elements = M(v), w.transformFlags |= Us(w.elements) | 525312, w.transformFlags & 32768 && (w.transformFlags |= 65664), w;
      }
      function St(v, w) {
        return v.elements !== w ? nn(lt(w), v) : v;
      }
      function jr(v) {
        const w = R(208);
        return w.elements = M(v), w.transformFlags |= Us(w.elements) | 525312, w;
      }
      function Bn(v, w) {
        return v.elements !== w ? nn(jr(w), v) : v;
      }
      function tn(v, w, B, le) {
        const Ue = G(209);
        return Ue.dotDotDotToken = v, Ue.propertyName = yl(w), Ue.name = yl(B), Ue.initializer = NT(le), Ue.transformFlags |= bn(Ue.dotDotDotToken) | n1(Ue.propertyName) | n1(Ue.name) | bn(Ue.initializer) | (Ue.dotDotDotToken ? 32768 : 0) | 1024, Ue.flowNode = void 0, Ue;
      }
      function ai(v, w, B, le, Ue) {
        return v.propertyName !== B || v.dotDotDotToken !== w || v.name !== le || v.initializer !== Ue ? nn(tn(w, B, le, Ue), v) : v;
      }
      function ei(v, w) {
        const B = R(210), le = v && Wo(v), Ue = M(v, le && Al(le) ? !0 : void 0);
        return B.elements = i().parenthesizeExpressionsOfCommaDelimitedList(Ue), B.multiLine = w, B.transformFlags |= Us(B.elements), B;
      }
      function La(v, w) {
        return v.elements !== w ? nn(ei(w, v.multiLine), v) : v;
      }
      function ds(v, w) {
        const B = G(211);
        return B.properties = M(v), B.multiLine = w, B.transformFlags |= Us(B.properties), B.jsDoc = void 0, B;
      }
      function cl(v, w) {
        return v.properties !== w ? nn(ds(w, v.multiLine), v) : v;
      }
      function vc(v, w, B) {
        const le = G(212);
        return le.expression = v, le.questionDotToken = w, le.name = B, le.transformFlags = bn(le.expression) | bn(le.questionDotToken) | (Fe(le.name) ? ZA(le.name) : bn(le.name) | 536870912), le.jsDoc = void 0, le.flowNode = void 0, le;
      }
      function ml(v, w) {
        const B = vc(i().parenthesizeLeftSideOfAccess(v, !1), void 0, yl(w));
        return KD(v) && (B.transformFlags |= 384), B;
      }
      function gl(v, w, B) {
        return H7(v) ? Ao(v, w, v.questionDotToken, ns(B, Fe)) : v.expression !== w || v.name !== B ? nn(ml(w, B), v) : v;
      }
      function Os(v, w, B) {
        const le = vc(i().parenthesizeLeftSideOfAccess(v, !0), w, yl(B));
        return le.flags |= 64, le.transformFlags |= 32, le;
      }
      function Ao(v, w, B, le) {
        return E.assert(!!(v.flags & 64), "Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."), v.expression !== w || v.questionDotToken !== B || v.name !== le ? nn(Os(w, B, le), v) : v;
      }
      function Su(v, w, B) {
        const le = G(213);
        return le.expression = v, le.questionDotToken = w, le.argumentExpression = B, le.transformFlags |= bn(le.expression) | bn(le.questionDotToken) | bn(le.argumentExpression), le.jsDoc = void 0, le.flowNode = void 0, le;
      }
      function rf(v, w) {
        const B = Su(i().parenthesizeLeftSideOfAccess(v, !1), void 0, c0(w));
        return KD(v) && (B.transformFlags |= 384), B;
      }
      function Ip(v, w, B) {
        return Zj(v) ? jt(v, w, v.questionDotToken, B) : v.expression !== w || v.argumentExpression !== B ? nn(rf(w, B), v) : v;
      }
      function Pe(v, w, B) {
        const le = Su(i().parenthesizeLeftSideOfAccess(v, !0), w, c0(B));
        return le.flags |= 64, le.transformFlags |= 32, le;
      }
      function jt(v, w, B, le) {
        return E.assert(!!(v.flags & 64), "Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."), v.expression !== w || v.questionDotToken !== B || v.argumentExpression !== le ? nn(Pe(w, B, le), v) : v;
      }
      function Yr(v, w, B, le) {
        const Ue = G(214);
        return Ue.expression = v, Ue.questionDotToken = w, Ue.typeArguments = B, Ue.arguments = le, Ue.transformFlags |= bn(Ue.expression) | bn(Ue.questionDotToken) | Us(Ue.typeArguments) | Us(Ue.arguments), Ue.typeArguments && (Ue.transformFlags |= 1), Z_(Ue.expression) && (Ue.transformFlags |= 16384), Ue;
      }
      function Hi(v, w, B) {
        const le = Yr(i().parenthesizeLeftSideOfAccess(v, !1), void 0, Zs(w), i().parenthesizeExpressionsOfCommaDelimitedList(M(B)));
        return ew(le.expression) && (le.transformFlags |= 8388608), le;
      }
      function Js(v, w, B, le) {
        return uS(v) ? Qs(v, w, v.questionDotToken, B, le) : v.expression !== w || v.typeArguments !== B || v.arguments !== le ? nn(Hi(w, B, le), v) : v;
      }
      function io(v, w, B, le) {
        const Ue = Yr(i().parenthesizeLeftSideOfAccess(v, !0), w, Zs(B), i().parenthesizeExpressionsOfCommaDelimitedList(M(le)));
        return Ue.flags |= 64, Ue.transformFlags |= 32, Ue;
      }
      function Qs(v, w, B, le, Ue) {
        return E.assert(!!(v.flags & 64), "Cannot update a CallExpression using updateCallChain. Use updateCall instead."), v.expression !== w || v.questionDotToken !== B || v.typeArguments !== le || v.arguments !== Ue ? nn(io(w, B, le, Ue), v) : v;
      }
      function Oc(v, w, B) {
        const le = G(215);
        return le.expression = i().parenthesizeExpressionOfNew(v), le.typeArguments = Zs(w), le.arguments = B ? i().parenthesizeExpressionsOfCommaDelimitedList(B) : void 0, le.transformFlags |= bn(le.expression) | Us(le.typeArguments) | Us(le.arguments) | 32, le.typeArguments && (le.transformFlags |= 1), le;
      }
      function Dc(v, w, B, le) {
        return v.expression !== w || v.typeArguments !== B || v.arguments !== le ? nn(Oc(w, B, le), v) : v;
      }
      function zs(v, w, B) {
        const le = R(216);
        return le.tag = i().parenthesizeLeftSideOfAccess(v, !1), le.typeArguments = Zs(w), le.template = B, le.transformFlags |= bn(le.tag) | Us(le.typeArguments) | bn(le.template) | 1024, le.typeArguments && (le.transformFlags |= 1), uJ(le.template) && (le.transformFlags |= 128), le;
      }
      function bc(v, w, B, le) {
        return v.tag !== w || v.typeArguments !== B || v.template !== le ? nn(zs(w, B, le), v) : v;
      }
      function Il(v, w) {
        const B = R(217);
        return B.expression = i().parenthesizeOperandOfPrefixUnary(w), B.type = v, B.transformFlags |= bn(B.expression) | bn(B.type) | 1, B;
      }
      function Op(v, w, B) {
        return v.type !== w || v.expression !== B ? nn(Il(w, B), v) : v;
      }
      function Wf(v) {
        const w = R(218);
        return w.expression = v, w.transformFlags = bn(w.expression), w.jsDoc = void 0, w;
      }
      function id(v, w) {
        return v.expression !== w ? nn(Wf(w), v) : v;
      }
      function ad(v, w, B, le, Ue, Wt, gn) {
        const ua = G(219);
        ua.modifiers = Zs(v), ua.asteriskToken = w, ua.name = yl(B), ua.typeParameters = Zs(le), ua.parameters = M(Ue), ua.type = Wt, ua.body = gn;
        const vo = Cm(ua.modifiers) & 1024, Ad = !!ua.asteriskToken, Sh = vo && Ad;
        return ua.transformFlags = Us(ua.modifiers) | bn(ua.asteriskToken) | n1(ua.name) | Us(ua.typeParameters) | Us(ua.parameters) | bn(ua.type) | bn(ua.body) & -67108865 | (Sh ? 128 : vo ? 256 : Ad ? 2048 : 0) | (ua.typeParameters || ua.type ? 1 : 0) | 4194304, ua.typeArguments = void 0, ua.jsDoc = void 0, ua.locals = void 0, ua.nextContainer = void 0, ua.flowNode = void 0, ua.endFlowNode = void 0, ua.returnFlowNode = void 0, ua;
      }
      function hl(v, w, B, le, Ue, Wt, gn, ua) {
        return v.name !== le || v.modifiers !== w || v.asteriskToken !== B || v.typeParameters !== Ue || v.parameters !== Wt || v.type !== gn || v.body !== ua ? L(ad(w, B, le, Ue, Wt, gn, ua), v) : v;
      }
      function ll(v, w, B, le, Ue, Wt) {
        const gn = G(220);
        gn.modifiers = Zs(v), gn.typeParameters = Zs(w), gn.parameters = M(B), gn.type = le, gn.equalsGreaterThanToken = Ue ?? K(39), gn.body = i().parenthesizeConciseBodyOfArrowFunction(Wt);
        const ua = Cm(gn.modifiers) & 1024;
        return gn.transformFlags = Us(gn.modifiers) | Us(gn.typeParameters) | Us(gn.parameters) | bn(gn.type) | bn(gn.equalsGreaterThanToken) | bn(gn.body) & -67108865 | (gn.typeParameters || gn.type ? 1 : 0) | (ua ? 16640 : 0) | 1024, gn.typeArguments = void 0, gn.jsDoc = void 0, gn.locals = void 0, gn.nextContainer = void 0, gn.flowNode = void 0, gn.endFlowNode = void 0, gn.returnFlowNode = void 0, gn;
      }
      function Kd(v, w, B, le, Ue, Wt, gn) {
        return v.modifiers !== w || v.typeParameters !== B || v.parameters !== le || v.type !== Ue || v.equalsGreaterThanToken !== Wt || v.body !== gn ? L(ll(w, B, le, Ue, Wt, gn), v) : v;
      }
      function em(v) {
        const w = R(221);
        return w.expression = i().parenthesizeOperandOfPrefixUnary(v), w.transformFlags |= bn(w.expression), w;
      }
      function e0(v, w) {
        return v.expression !== w ? nn(em(w), v) : v;
      }
      function Fu(v) {
        const w = R(222);
        return w.expression = i().parenthesizeOperandOfPrefixUnary(v), w.transformFlags |= bn(w.expression), w;
      }
      function nf(v, w) {
        return v.expression !== w ? nn(Fu(w), v) : v;
      }
      function A_(v) {
        const w = R(223);
        return w.expression = i().parenthesizeOperandOfPrefixUnary(v), w.transformFlags |= bn(w.expression), w;
      }
      function t0(v, w) {
        return v.expression !== w ? nn(A_(w), v) : v;
      }
      function Uf(v) {
        const w = R(224);
        return w.expression = i().parenthesizeOperandOfPrefixUnary(v), w.transformFlags |= bn(w.expression) | 2097536, w;
      }
      function Z(v, w) {
        return v.expression !== w ? nn(Uf(w), v) : v;
      }
      function st(v, w) {
        const B = R(225);
        return B.operator = v, B.operand = i().parenthesizeOperandOfPrefixUnary(w), B.transformFlags |= bn(B.operand), (v === 46 || v === 47) && Fe(B.operand) && !Ko(B.operand) && !Hh(B.operand) && (B.transformFlags |= 268435456), B;
      }
      function Rt(v, w) {
        return v.operand !== w ? nn(st(v.operator, w), v) : v;
      }
      function F(v, w) {
        const B = R(226);
        return B.operator = w, B.operand = i().parenthesizeOperandOfPostfixUnary(v), B.transformFlags |= bn(B.operand), Fe(B.operand) && !Ko(B.operand) && !Hh(B.operand) && (B.transformFlags |= 268435456), B;
      }
      function ve(v, w) {
        return v.operand !== w ? nn(F(w, v.operator), v) : v;
      }
      function qe(v, w, B) {
        const le = G(227), Ue = g8(w), Wt = Ue.kind;
        return le.left = i().parenthesizeLeftSideOfBinary(Wt, v), le.operatorToken = Ue, le.right = i().parenthesizeRightSideOfBinary(Wt, le.left, B), le.transformFlags |= bn(le.left) | bn(le.operatorToken) | bn(le.right), Wt === 61 ? le.transformFlags |= 32 : Wt === 64 ? bs(le.left) ? le.transformFlags |= 5248 | Bt(le.left) : hu(le.left) && (le.transformFlags |= 5120 | Bt(le.left)) : Wt === 43 || Wt === 68 ? le.transformFlags |= 512 : kD(Wt) && (le.transformFlags |= 16), Wt === 103 && Oi(le.left) && (le.transformFlags |= 536870912), le.jsDoc = void 0, le;
      }
      function Bt(v) {
        return yN(v) ? 65536 : 0;
      }
      function Rr(v, w, B, le) {
        return v.left !== w || v.operatorToken !== B || v.right !== le ? nn(qe(w, B, le), v) : v;
      }
      function cn(v, w, B, le, Ue) {
        const Wt = R(228);
        return Wt.condition = i().parenthesizeConditionOfConditionalExpression(v), Wt.questionToken = w ?? K(58), Wt.whenTrue = i().parenthesizeBranchOfConditionalExpression(B), Wt.colonToken = le ?? K(59), Wt.whenFalse = i().parenthesizeBranchOfConditionalExpression(Ue), Wt.transformFlags |= bn(Wt.condition) | bn(Wt.questionToken) | bn(Wt.whenTrue) | bn(Wt.colonToken) | bn(Wt.whenFalse), Wt.flowNodeWhenFalse = void 0, Wt.flowNodeWhenTrue = void 0, Wt;
      }
      function dr(v, w, B, le, Ue, Wt) {
        return v.condition !== w || v.questionToken !== B || v.whenTrue !== le || v.colonToken !== Ue || v.whenFalse !== Wt ? nn(cn(w, B, le, Ue, Wt), v) : v;
      }
      function Cn(v, w) {
        const B = R(229);
        return B.head = v, B.templateSpans = M(w), B.transformFlags |= bn(B.head) | Us(B.templateSpans) | 1024, B;
      }
      function fs(v, w, B) {
        return v.head !== w || v.templateSpans !== B ? nn(Cn(w, B), v) : v;
      }
      function ji(v, w, B, le = 0) {
        E.assert(!(le & -7177), "Unsupported template flags.");
        let Ue;
        if (B !== void 0 && B !== w && (Ue = z9e(v, B), typeof Ue == "object"))
          return E.fail("Invalid raw text");
        if (w === void 0) {
          if (Ue === void 0) return E.fail("Arguments 'text' and 'rawText' may not both be undefined.");
          w = Ue;
        } else Ue !== void 0 && E.assert(w === Ue, "Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");
        return w;
      }
      function Fc(v) {
        let w = 1024;
        return v && (w |= 128), w;
      }
      function Ul(v, w, B, le) {
        const Ue = ot(v);
        return Ue.text = w, Ue.rawText = B, Ue.templateFlags = le & 7176, Ue.transformFlags = Fc(Ue.templateFlags), Ue;
      }
      function Lu(v, w, B, le) {
        const Ue = G(v);
        return Ue.text = w, Ue.rawText = B, Ue.templateFlags = le & 7176, Ue.transformFlags = Fc(Ue.templateFlags), Ue;
      }
      function N_(v, w, B, le) {
        return v === 15 ? Lu(v, w, B, le) : Ul(v, w, B, le);
      }
      function cu(v, w, B) {
        return v = ji(16, v, w, B), N_(16, v, w, B);
      }
      function lh(v, w, B) {
        return v = ji(16, v, w, B), N_(17, v, w, B);
      }
      function X0(v, w, B) {
        return v = ji(16, v, w, B), N_(18, v, w, B);
      }
      function Q0(v, w, B) {
        return v = ji(16, v, w, B), Lu(15, v, w, B);
      }
      function vg(v, w) {
        E.assert(!v || !!w, "A `YieldExpression` with an asteriskToken must have an expression.");
        const B = R(230);
        return B.expression = w && i().parenthesizeExpressionForDisallowedComma(w), B.asteriskToken = v, B.transformFlags |= bn(B.expression) | bn(B.asteriskToken) | 1049728, B;
      }
      function r0(v, w, B) {
        return v.expression !== B || v.asteriskToken !== w ? nn(vg(w, B), v) : v;
      }
      function S1(v) {
        const w = R(231);
        return w.expression = i().parenthesizeExpressionForDisallowedComma(v), w.transformFlags |= bn(w.expression) | 33792, w;
      }
      function Y0(v, w) {
        return v.expression !== w ? nn(S1(w), v) : v;
      }
      function Vf(v, w, B, le, Ue) {
        const Wt = G(232);
        return Wt.modifiers = Zs(v), Wt.name = yl(w), Wt.typeParameters = Zs(B), Wt.heritageClauses = Zs(le), Wt.members = M(Ue), Wt.transformFlags |= Us(Wt.modifiers) | n1(Wt.name) | Us(Wt.typeParameters) | Us(Wt.heritageClauses) | Us(Wt.members) | (Wt.typeParameters ? 1 : 0) | 1024, Wt.jsDoc = void 0, Wt;
      }
      function bg(v, w, B, le, Ue, Wt) {
        return v.modifiers !== w || v.name !== B || v.typeParameters !== le || v.heritageClauses !== Ue || v.members !== Wt ? nn(Vf(w, B, le, Ue, Wt), v) : v;
      }
      function T1() {
        return R(233);
      }
      function Sd(v, w) {
        const B = R(234);
        return B.expression = i().parenthesizeLeftSideOfAccess(v, !1), B.typeArguments = w && i().parenthesizeTypeArguments(w), B.transformFlags |= bn(B.expression) | Us(B.typeArguments) | 1024, B;
      }
      function qf(v, w, B) {
        return v.expression !== w || v.typeArguments !== B ? nn(Sd(w, B), v) : v;
      }
      function ze(v, w) {
        const B = R(235);
        return B.expression = v, B.type = w, B.transformFlags |= bn(B.expression) | bn(B.type) | 1, B;
      }
      function at(v, w, B) {
        return v.expression !== w || v.type !== B ? nn(ze(w, B), v) : v;
      }
      function At(v) {
        const w = R(236);
        return w.expression = i().parenthesizeLeftSideOfAccess(v, !1), w.transformFlags |= bn(w.expression) | 1, w;
      }
      function yr(v, w) {
        return X7(v) ? hn(v, w) : v.expression !== w ? nn(At(w), v) : v;
      }
      function Br(v, w) {
        const B = R(239);
        return B.expression = v, B.type = w, B.transformFlags |= bn(B.expression) | bn(B.type) | 1, B;
      }
      function Tn(v, w, B) {
        return v.expression !== w || v.type !== B ? nn(Br(w, B), v) : v;
      }
      function Er(v) {
        const w = R(236);
        return w.flags |= 64, w.expression = i().parenthesizeLeftSideOfAccess(v, !0), w.transformFlags |= bn(w.expression) | 1, w;
      }
      function hn(v, w) {
        return E.assert(!!(v.flags & 64), "Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."), v.expression !== w ? nn(Er(w), v) : v;
      }
      function Vr(v, w) {
        const B = R(237);
        switch (B.keywordToken = v, B.name = w, B.transformFlags |= bn(B.name), v) {
          case 105:
            B.transformFlags |= 1024;
            break;
          case 102:
            B.transformFlags |= 32;
            break;
          default:
            return E.assertNever(v);
        }
        return B.flowNode = void 0, B;
      }
      function li(v, w) {
        return v.name !== w ? nn(Vr(v.keywordToken, w), v) : v;
      }
      function ki(v, w) {
        const B = R(240);
        return B.expression = v, B.literal = w, B.transformFlags |= bn(B.expression) | bn(B.literal) | 1024, B;
      }
      function Zi(v, w, B) {
        return v.expression !== w || v.literal !== B ? nn(ki(w, B), v) : v;
      }
      function yo() {
        const v = R(241);
        return v.transformFlags |= 1024, v;
      }
      function Jc(v, w) {
        const B = R(242);
        return B.statements = M(v), B.multiLine = w, B.transformFlags |= Us(B.statements), B.jsDoc = void 0, B.locals = void 0, B.nextContainer = void 0, B;
      }
      function Fp(v, w) {
        return v.statements !== w ? nn(Jc(w, v.multiLine), v) : v;
      }
      function Td(v, w) {
        const B = R(244);
        return B.modifiers = Zs(v), B.declarationList = da(w) ? _h(w) : w, B.transformFlags |= Us(B.modifiers) | bn(B.declarationList), Cm(B.modifiers) & 128 && (B.transformFlags = 1), B.jsDoc = void 0, B.flowNode = void 0, B;
      }
      function tm(v, w, B) {
        return v.modifiers !== w || v.declarationList !== B ? nn(Td(w, B), v) : v;
      }
      function xd() {
        const v = R(243);
        return v.jsDoc = void 0, v;
      }
      function rm(v) {
        const w = R(245);
        return w.expression = i().parenthesizeExpressionOfExpressionStatement(v), w.transformFlags |= bn(w.expression), w.jsDoc = void 0, w.flowNode = void 0, w;
      }
      function nm(v, w) {
        return v.expression !== w ? nn(rm(w), v) : v;
      }
      function Wm(v, w, B) {
        const le = R(246);
        return le.expression = v, le.thenStatement = af(w), le.elseStatement = af(B), le.transformFlags |= bn(le.expression) | bn(le.thenStatement) | bn(le.elseStatement), le.jsDoc = void 0, le.flowNode = void 0, le;
      }
      function Qk(v, w, B, le) {
        return v.expression !== w || v.thenStatement !== B || v.elseStatement !== le ? nn(Wm(w, B, le), v) : v;
      }
      function g2(v, w) {
        const B = R(247);
        return B.statement = af(v), B.expression = w, B.transformFlags |= bn(B.statement) | bn(B.expression), B.jsDoc = void 0, B.flowNode = void 0, B;
      }
      function x1(v, w, B) {
        return v.statement !== w || v.expression !== B ? nn(g2(w, B), v) : v;
      }
      function sT(v, w) {
        const B = R(248);
        return B.expression = v, B.statement = af(w), B.transformFlags |= bn(B.expression) | bn(B.statement), B.jsDoc = void 0, B.flowNode = void 0, B;
      }
      function h2(v, w, B) {
        return v.expression !== w || v.statement !== B ? nn(sT(w, B), v) : v;
      }
      function Um(v, w, B, le) {
        const Ue = R(249);
        return Ue.initializer = v, Ue.condition = w, Ue.incrementor = B, Ue.statement = af(le), Ue.transformFlags |= bn(Ue.initializer) | bn(Ue.condition) | bn(Ue.incrementor) | bn(Ue.statement), Ue.jsDoc = void 0, Ue.locals = void 0, Ue.nextContainer = void 0, Ue.flowNode = void 0, Ue;
      }
      function Yk(v, w, B, le, Ue) {
        return v.initializer !== w || v.condition !== B || v.incrementor !== le || v.statement !== Ue ? nn(Um(w, B, le, Ue), v) : v;
      }
      function Zk(v, w, B) {
        const le = R(250);
        return le.initializer = v, le.expression = w, le.statement = af(B), le.transformFlags |= bn(le.initializer) | bn(le.expression) | bn(le.statement), le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le.flowNode = void 0, le;
      }
      function gP(v, w, B, le) {
        return v.initializer !== w || v.expression !== B || v.statement !== le ? nn(Zk(w, B, le), v) : v;
      }
      function n0(v, w, B, le) {
        const Ue = R(251);
        return Ue.awaitModifier = v, Ue.initializer = w, Ue.expression = i().parenthesizeExpressionForDisallowedComma(B), Ue.statement = af(le), Ue.transformFlags |= bn(Ue.awaitModifier) | bn(Ue.initializer) | bn(Ue.expression) | bn(Ue.statement) | 1024, v && (Ue.transformFlags |= 128), Ue.jsDoc = void 0, Ue.locals = void 0, Ue.nextContainer = void 0, Ue.flowNode = void 0, Ue;
      }
      function Kk(v, w, B, le, Ue) {
        return v.awaitModifier !== w || v.initializer !== B || v.expression !== le || v.statement !== Ue ? nn(n0(w, B, le, Ue), v) : v;
      }
      function y2(v) {
        const w = R(252);
        return w.label = yl(v), w.transformFlags |= bn(w.label) | 4194304, w.jsDoc = void 0, w.flowNode = void 0, w;
      }
      function Z0(v, w) {
        return v.label !== w ? nn(y2(w), v) : v;
      }
      function k1(v) {
        const w = R(253);
        return w.label = yl(v), w.transformFlags |= bn(w.label) | 4194304, w.jsDoc = void 0, w.flowNode = void 0, w;
      }
      function eC(v, w) {
        return v.label !== w ? nn(k1(w), v) : v;
      }
      function PE(v) {
        const w = R(254);
        return w.expression = v, w.transformFlags |= bn(w.expression) | 4194432, w.jsDoc = void 0, w.flowNode = void 0, w;
      }
      function tC(v, w) {
        return v.expression !== w ? nn(PE(w), v) : v;
      }
      function oT(v, w) {
        const B = R(255);
        return B.expression = v, B.statement = af(w), B.transformFlags |= bn(B.expression) | bn(B.statement), B.jsDoc = void 0, B.flowNode = void 0, B;
      }
      function v2(v, w, B) {
        return v.expression !== w || v.statement !== B ? nn(oT(w, B), v) : v;
      }
      function K0(v, w) {
        const B = R(256);
        return B.expression = i().parenthesizeExpressionForDisallowedComma(v), B.caseBlock = w, B.transformFlags |= bn(B.expression) | bn(B.caseBlock), B.jsDoc = void 0, B.flowNode = void 0, B.possiblyExhaustive = !1, B;
      }
      function AE(v, w, B) {
        return v.expression !== w || v.caseBlock !== B ? nn(K0(w, B), v) : v;
      }
      function rC(v, w) {
        const B = R(257);
        return B.label = yl(v), B.statement = af(w), B.transformFlags |= bn(B.label) | bn(B.statement), B.jsDoc = void 0, B.flowNode = void 0, B;
      }
      function cT(v, w, B) {
        return v.label !== w || v.statement !== B ? nn(rC(w, B), v) : v;
      }
      function b2(v) {
        const w = R(258);
        return w.expression = v, w.transformFlags |= bn(w.expression), w.jsDoc = void 0, w.flowNode = void 0, w;
      }
      function NE(v, w) {
        return v.expression !== w ? nn(b2(w), v) : v;
      }
      function nC(v, w, B) {
        const le = R(259);
        return le.tryBlock = v, le.catchClause = w, le.finallyBlock = B, le.transformFlags |= bn(le.tryBlock) | bn(le.catchClause) | bn(le.finallyBlock), le.jsDoc = void 0, le.flowNode = void 0, le;
      }
      function lT(v, w, B, le) {
        return v.tryBlock !== w || v.catchClause !== B || v.finallyBlock !== le ? nn(nC(w, B, le), v) : v;
      }
      function ey() {
        const v = R(260);
        return v.jsDoc = void 0, v.flowNode = void 0, v;
      }
      function uh(v, w, B, le) {
        const Ue = G(261);
        return Ue.name = yl(v), Ue.exclamationToken = w, Ue.type = B, Ue.initializer = NT(le), Ue.transformFlags |= n1(Ue.name) | bn(Ue.initializer) | (Ue.exclamationToken ?? Ue.type ? 1 : 0), Ue.jsDoc = void 0, Ue;
      }
      function ty(v, w, B, le, Ue) {
        return v.name !== w || v.type !== le || v.exclamationToken !== B || v.initializer !== Ue ? nn(uh(w, B, le, Ue), v) : v;
      }
      function _h(v, w = 0) {
        const B = R(262);
        return B.flags |= w & 7, B.declarations = M(v), B.transformFlags |= Us(B.declarations) | 4194304, w & 7 && (B.transformFlags |= 263168), w & 4 && (B.transformFlags |= 4), B;
      }
      function Hv(v, w) {
        return v.declarations !== w ? nn(_h(w, v.flags), v) : v;
      }
      function ry(v, w, B, le, Ue, Wt, gn) {
        const ua = G(263);
        if (ua.modifiers = Zs(v), ua.asteriskToken = w, ua.name = yl(B), ua.typeParameters = Zs(le), ua.parameters = M(Ue), ua.type = Wt, ua.body = gn, !ua.body || Cm(ua.modifiers) & 128) ua.transformFlags = 1;
        else {
          const vo = Cm(ua.modifiers) & 1024, Ad = !!ua.asteriskToken, Sh = vo && Ad;
          ua.transformFlags = Us(ua.modifiers) | bn(ua.asteriskToken) | n1(ua.name) | Us(ua.typeParameters) | Us(ua.parameters) | bn(ua.type) | bn(ua.body) & -67108865 | (Sh ? 128 : vo ? 256 : Ad ? 2048 : 0) | (ua.typeParameters || ua.type ? 1 : 0) | 4194304;
        }
        return ua.typeArguments = void 0, ua.jsDoc = void 0, ua.locals = void 0, ua.nextContainer = void 0, ua.endFlowNode = void 0, ua.returnFlowNode = void 0, ua;
      }
      function S2(v, w, B, le, Ue, Wt, gn, ua) {
        return v.modifiers !== w || v.asteriskToken !== B || v.name !== le || v.typeParameters !== Ue || v.parameters !== Wt || v.type !== gn || v.body !== ua ? uT(ry(w, B, le, Ue, Wt, gn, ua), v) : v;
      }
      function uT(v, w) {
        return v !== w && v.modifiers === w.modifiers && (v.modifiers = w.modifiers), L(v, w);
      }
      function C1(v, w, B, le, Ue) {
        const Wt = G(264);
        return Wt.modifiers = Zs(v), Wt.name = yl(w), Wt.typeParameters = Zs(B), Wt.heritageClauses = Zs(le), Wt.members = M(Ue), Cm(Wt.modifiers) & 128 ? Wt.transformFlags = 1 : (Wt.transformFlags |= Us(Wt.modifiers) | n1(Wt.name) | Us(Wt.typeParameters) | Us(Wt.heritageClauses) | Us(Wt.members) | (Wt.typeParameters ? 1 : 0) | 1024, Wt.transformFlags & 8192 && (Wt.transformFlags |= 1)), Wt.jsDoc = void 0, Wt;
      }
      function Ws(v, w, B, le, Ue, Wt) {
        return v.modifiers !== w || v.name !== B || v.typeParameters !== le || v.heritageClauses !== Ue || v.members !== Wt ? nn(C1(w, B, le, Ue, Wt), v) : v;
      }
      function _T(v, w, B, le, Ue) {
        const Wt = G(265);
        return Wt.modifiers = Zs(v), Wt.name = yl(w), Wt.typeParameters = Zs(B), Wt.heritageClauses = Zs(le), Wt.members = M(Ue), Wt.transformFlags = 1, Wt.jsDoc = void 0, Wt;
      }
      function Ql(v, w, B, le, Ue, Wt) {
        return v.modifiers !== w || v.name !== B || v.typeParameters !== le || v.heritageClauses !== Ue || v.members !== Wt ? nn(_T(w, B, le, Ue, Wt), v) : v;
      }
      function im(v, w, B, le) {
        const Ue = G(266);
        return Ue.modifiers = Zs(v), Ue.name = yl(w), Ue.typeParameters = Zs(B), Ue.type = le, Ue.transformFlags = 1, Ue.jsDoc = void 0, Ue.locals = void 0, Ue.nextContainer = void 0, Ue;
      }
      function fh(v, w, B, le, Ue) {
        return v.modifiers !== w || v.name !== B || v.typeParameters !== le || v.type !== Ue ? nn(im(w, B, le, Ue), v) : v;
      }
      function cp(v, w, B) {
        const le = G(267);
        return le.modifiers = Zs(v), le.name = yl(w), le.members = M(B), le.transformFlags |= Us(le.modifiers) | bn(le.name) | Us(le.members) | 1, le.transformFlags &= -67108865, le.jsDoc = void 0, le;
      }
      function lp(v, w, B, le) {
        return v.modifiers !== w || v.name !== B || v.members !== le ? nn(cp(w, B, le), v) : v;
      }
      function Sc(v, w, B, le = 0) {
        const Ue = G(268);
        return Ue.modifiers = Zs(v), Ue.flags |= le & 2088, Ue.name = w, Ue.body = B, Cm(Ue.modifiers) & 128 ? Ue.transformFlags = 1 : Ue.transformFlags |= Us(Ue.modifiers) | bn(Ue.name) | bn(Ue.body) | 1, Ue.transformFlags &= -67108865, Ue.jsDoc = void 0, Ue.locals = void 0, Ue.nextContainer = void 0, Ue;
      }
      function lu(v, w, B, le) {
        return v.modifiers !== w || v.name !== B || v.body !== le ? nn(Sc(w, B, le, v.flags), v) : v;
      }
      function Lc(v) {
        const w = R(269);
        return w.statements = M(v), w.transformFlags |= Us(w.statements), w.jsDoc = void 0, w;
      }
      function T2(v, w) {
        return v.statements !== w ? nn(Lc(w), v) : v;
      }
      function ph(v) {
        const w = R(270);
        return w.clauses = M(v), w.transformFlags |= Us(w.clauses), w.locals = void 0, w.nextContainer = void 0, w;
      }
      function Sg(v, w) {
        return v.clauses !== w ? nn(ph(w), v) : v;
      }
      function Vm(v) {
        const w = G(271);
        return w.name = yl(v), w.transformFlags |= ZA(w.name) | 1, w.modifiers = void 0, w.jsDoc = void 0, w;
      }
      function E1(v, w) {
        return v.name !== w ? x2(Vm(w), v) : v;
      }
      function x2(v, w) {
        return v !== w && (v.modifiers = w.modifiers), nn(v, w);
      }
      function IE(v, w, B, le) {
        const Ue = G(272);
        return Ue.modifiers = Zs(v), Ue.name = yl(B), Ue.isTypeOnly = w, Ue.moduleReference = le, Ue.transformFlags |= Us(Ue.modifiers) | ZA(Ue.name) | bn(Ue.moduleReference), qh(Ue.moduleReference) || (Ue.transformFlags |= 1), Ue.transformFlags &= -67108865, Ue.jsDoc = void 0, Ue;
      }
      function $v(v, w, B, le, Ue) {
        return v.modifiers !== w || v.isTypeOnly !== B || v.name !== le || v.moduleReference !== Ue ? nn(IE(w, B, le, Ue), v) : v;
      }
      function iC(v, w, B, le) {
        const Ue = R(273);
        return Ue.modifiers = Zs(v), Ue.importClause = w, Ue.moduleSpecifier = B, Ue.attributes = Ue.assertClause = le, Ue.transformFlags |= bn(Ue.importClause) | bn(Ue.moduleSpecifier), Ue.transformFlags &= -67108865, Ue.jsDoc = void 0, Ue;
      }
      function OE(v, w, B, le, Ue) {
        return v.modifiers !== w || v.importClause !== B || v.moduleSpecifier !== le || v.attributes !== Ue ? nn(iC(w, B, le, Ue), v) : v;
      }
      function ny(v, w, B) {
        const le = G(274);
        return typeof v == "boolean" && (v = v ? 156 : void 0), le.isTypeOnly = v === 156, le.phaseModifier = v, le.name = w, le.namedBindings = B, le.transformFlags |= bn(le.name) | bn(le.namedBindings), v === 156 && (le.transformFlags |= 1), le.transformFlags &= -67108865, le;
      }
      function Xv(v, w, B, le) {
        return typeof w == "boolean" && (w = w ? 156 : void 0), v.phaseModifier !== w || v.name !== B || v.namedBindings !== le ? nn(ny(w, B, le), v) : v;
      }
      function We(v, w) {
        const B = R(301);
        return B.elements = M(v), B.multiLine = w, B.token = 132, B.transformFlags |= 4, B;
      }
      function iy(v, w, B) {
        return v.elements !== w || v.multiLine !== B ? nn(We(w, B), v) : v;
      }
      function Tg(v, w) {
        const B = R(302);
        return B.name = v, B.value = w, B.transformFlags |= 4, B;
      }
      function uu(v, w, B) {
        return v.name !== w || v.value !== B ? nn(Tg(w, B), v) : v;
      }
      function am(v, w) {
        const B = R(303);
        return B.assertClause = v, B.multiLine = w, B;
      }
      function ay(v, w, B) {
        return v.assertClause !== w || v.multiLine !== B ? nn(am(w, B), v) : v;
      }
      function kd(v, w, B) {
        const le = R(301);
        return le.token = B ?? 118, le.elements = M(v), le.multiLine = w, le.transformFlags |= 4, le;
      }
      function Qv(v, w, B) {
        return v.elements !== w || v.multiLine !== B ? nn(kd(w, B, v.token), v) : v;
      }
      function Cd(v, w) {
        const B = R(302);
        return B.name = v, B.value = w, B.transformFlags |= 4, B;
      }
      function k2(v, w, B) {
        return v.name !== w || v.value !== B ? nn(Cd(w, B), v) : v;
      }
      function Fs(v) {
        const w = G(275);
        return w.name = v, w.transformFlags |= bn(w.name), w.transformFlags &= -67108865, w;
      }
      function Pf(v, w) {
        return v.name !== w ? nn(Fs(w), v) : v;
      }
      function fT(v) {
        const w = G(281);
        return w.name = v, w.transformFlags |= bn(w.name) | 32, w.transformFlags &= -67108865, w;
      }
      function qm(v, w) {
        return v.name !== w ? nn(fT(w), v) : v;
      }
      function i0(v) {
        const w = R(276);
        return w.elements = M(v), w.transformFlags |= Us(w.elements), w.transformFlags &= -67108865, w;
      }
      function Gm(v, w) {
        return v.elements !== w ? nn(i0(w), v) : v;
      }
      function sy(v, w, B) {
        const le = G(277);
        return le.isTypeOnly = v, le.propertyName = w, le.name = B, le.transformFlags |= bn(le.propertyName) | bn(le.name), le.transformFlags &= -67108865, le;
      }
      function Yv(v, w, B, le) {
        return v.isTypeOnly !== w || v.propertyName !== B || v.name !== le ? nn(sy(w, B, le), v) : v;
      }
      function oy(v, w, B) {
        const le = G(278);
        return le.modifiers = Zs(v), le.isExportEquals = w, le.expression = w ? i().parenthesizeRightSideOfBinary(64, void 0, B) : i().parenthesizeExpressionOfExportDefault(B), le.transformFlags |= Us(le.modifiers) | bn(le.expression), le.transformFlags &= -67108865, le.jsDoc = void 0, le;
      }
      function pT(v, w, B) {
        return v.modifiers !== w || v.expression !== B ? nn(oy(w, v.isExportEquals, B), v) : v;
      }
      function to(v, w, B, le, Ue) {
        const Wt = G(279);
        return Wt.modifiers = Zs(v), Wt.isTypeOnly = w, Wt.exportClause = B, Wt.moduleSpecifier = le, Wt.attributes = Wt.assertClause = Ue, Wt.transformFlags |= Us(Wt.modifiers) | bn(Wt.exportClause) | bn(Wt.moduleSpecifier), Wt.transformFlags &= -67108865, Wt.jsDoc = void 0, Wt;
      }
      function dh(v, w, B, le, Ue, Wt) {
        return v.modifiers !== w || v.isTypeOnly !== B || v.exportClause !== le || v.moduleSpecifier !== Ue || v.attributes !== Wt ? FE(to(w, B, le, Ue, Wt), v) : v;
      }
      function FE(v, w) {
        return v !== w && v.modifiers === w.modifiers && (v.modifiers = w.modifiers), nn(v, w);
      }
      function Wi(v) {
        const w = R(280);
        return w.elements = M(v), w.transformFlags |= Us(w.elements), w.transformFlags &= -67108865, w;
      }
      function Pn(v, w) {
        return v.elements !== w ? nn(Wi(w), v) : v;
      }
      function Ku(v, w, B) {
        const le = R(282);
        return le.isTypeOnly = v, le.propertyName = yl(w), le.name = yl(B), le.transformFlags |= bn(le.propertyName) | bn(le.name), le.transformFlags &= -67108865, le.jsDoc = void 0, le;
      }
      function hP(v, w, B, le) {
        return v.isTypeOnly !== w || v.propertyName !== B || v.name !== le ? nn(Ku(w, B, le), v) : v;
      }
      function cy() {
        const v = G(283);
        return v.jsDoc = void 0, v;
      }
      function Sn(v) {
        const w = R(284);
        return w.expression = v, w.transformFlags |= bn(w.expression), w.transformFlags &= -67108865, w;
      }
      function Mu(v, w) {
        return v.expression !== w ? nn(Sn(w), v) : v;
      }
      function wa(v) {
        return R(v);
      }
      function ly(v, w, B = !1) {
        const le = aC(v, B ? w && i().parenthesizeNonArrayTypeOfPostfixType(w) : w);
        return le.postfix = B, le;
      }
      function aC(v, w) {
        const B = R(v);
        return B.type = w, B;
      }
      function uy(v, w, B) {
        return w.type !== B ? nn(ly(v, B, w.postfix), w) : w;
      }
      function $r(v, w, B) {
        return w.type !== B ? nn(aC(v, B), w) : w;
      }
      function sC(v, w) {
        const B = G(318);
        return B.parameters = Zs(v), B.type = w, B.transformFlags = Us(B.parameters) | (B.type ? 1 : 0), B.jsDoc = void 0, B.locals = void 0, B.nextContainer = void 0, B.typeArguments = void 0, B;
      }
      function dT(v, w, B) {
        return v.parameters !== w || v.type !== B ? nn(sC(w, B), v) : v;
      }
      function d_(v, w = !1) {
        const B = G(323);
        return B.jsDocPropertyTags = Zs(v), B.isArrayType = w, B;
      }
      function xg(v, w, B) {
        return v.jsDocPropertyTags !== w || v.isArrayType !== B ? nn(d_(w, B), v) : v;
      }
      function sd(v) {
        const w = R(310);
        return w.type = v, w;
      }
      function Zv(v, w) {
        return v.type !== w ? nn(sd(w), v) : v;
      }
      function mT(v, w, B) {
        const le = G(324);
        return le.typeParameters = Zs(v), le.parameters = M(w), le.type = B, le.jsDoc = void 0, le.locals = void 0, le.nextContainer = void 0, le;
      }
      function mh(v, w, B, le) {
        return v.typeParameters !== w || v.parameters !== B || v.type !== le ? nn(mT(w, B, le), v) : v;
      }
      function up(v) {
        const w = bz(v.kind);
        return v.tagName.escapedText === mc(w) ? v.tagName : fe(w);
      }
      function Hm(v, w, B) {
        const le = R(v);
        return le.tagName = w, le.comment = B, le;
      }
      function Ed(v, w, B) {
        const le = G(v);
        return le.tagName = w, le.comment = B, le;
      }
      function _y(v, w, B, le) {
        const Ue = Hm(346, v ?? fe("template"), le);
        return Ue.constraint = w, Ue.typeParameters = M(B), Ue;
      }
      function D1(v, w = up(v), B, le, Ue) {
        return v.tagName !== w || v.constraint !== B || v.typeParameters !== le || v.comment !== Ue ? nn(_y(w, B, le, Ue), v) : v;
      }
      function gT(v, w, B, le) {
        const Ue = Ed(347, v ?? fe("typedef"), le);
        return Ue.typeExpression = w, Ue.fullName = B, Ue.name = eW(B), Ue.locals = void 0, Ue.nextContainer = void 0, Ue;
      }
      function _p(v, w = up(v), B, le, Ue) {
        return v.tagName !== w || v.typeExpression !== B || v.fullName !== le || v.comment !== Ue ? nn(gT(w, B, le, Ue), v) : v;
      }
      function fy(v, w, B, le, Ue, Wt) {
        const gn = Ed(342, v ?? fe("param"), Wt);
        return gn.typeExpression = le, gn.name = w, gn.isNameFirst = !!Ue, gn.isBracketed = B, gn;
      }
      function oC(v, w = up(v), B, le, Ue, Wt, gn) {
        return v.tagName !== w || v.name !== B || v.isBracketed !== le || v.typeExpression !== Ue || v.isNameFirst !== Wt || v.comment !== gn ? nn(fy(w, B, le, Ue, Wt, gn), v) : v;
      }
      function hT(v, w, B, le, Ue, Wt) {
        const gn = Ed(349, v ?? fe("prop"), Wt);
        return gn.typeExpression = le, gn.name = w, gn.isNameFirst = !!Ue, gn.isBracketed = B, gn;
      }
      function yT(v, w = up(v), B, le, Ue, Wt, gn) {
        return v.tagName !== w || v.name !== B || v.isBracketed !== le || v.typeExpression !== Ue || v.isNameFirst !== Wt || v.comment !== gn ? nn(hT(w, B, le, Ue, Wt, gn), v) : v;
      }
      function Gf(v, w, B, le) {
        const Ue = Ed(339, v ?? fe("callback"), le);
        return Ue.typeExpression = w, Ue.fullName = B, Ue.name = eW(B), Ue.locals = void 0, Ue.nextContainer = void 0, Ue;
      }
      function LE(v, w = up(v), B, le, Ue) {
        return v.tagName !== w || v.typeExpression !== B || v.fullName !== le || v.comment !== Ue ? nn(Gf(w, B, le, Ue), v) : v;
      }
      function gh(v, w, B) {
        const le = Hm(340, v ?? fe("overload"), B);
        return le.typeExpression = w, le;
      }
      function w1(v, w = up(v), B, le) {
        return v.tagName !== w || v.typeExpression !== B || v.comment !== le ? nn(gh(w, B, le), v) : v;
      }
      function $m(v, w, B) {
        const le = Hm(329, v ?? fe("augments"), B);
        return le.class = w, le;
      }
      function hh(v, w = up(v), B, le) {
        return v.tagName !== w || v.class !== B || v.comment !== le ? nn($m(w, B, le), v) : v;
      }
      function Dd(v, w, B) {
        const le = Hm(330, v ?? fe("implements"), B);
        return le.class = w, le;
      }
      function yh(v, w, B) {
        const le = Hm(348, v ?? fe("see"), B);
        return le.name = w, le;
      }
      function Kv(v, w, B, le) {
        return v.tagName !== w || v.name !== B || v.comment !== le ? nn(yh(w, B, le), v) : v;
      }
      function Yl(v) {
        const w = R(311);
        return w.name = v, w;
      }
      function vT(v, w) {
        return v.name !== w ? nn(Yl(w), v) : v;
      }
      function vh(v, w) {
        const B = R(312);
        return B.left = v, B.right = w, B.transformFlags |= bn(B.left) | bn(B.right), B;
      }
      function bT(v, w, B) {
        return v.left !== w || v.right !== B ? nn(vh(w, B), v) : v;
      }
      function C2(v, w) {
        const B = R(325);
        return B.name = v, B.text = w, B;
      }
      function a0(v, w, B) {
        return v.name !== w ? nn(C2(w, B), v) : v;
      }
      function ST(v, w) {
        const B = R(326);
        return B.name = v, B.text = w, B;
      }
      function TT(v, w, B) {
        return v.name !== w ? nn(ST(w, B), v) : v;
      }
      function ME(v, w) {
        const B = R(327);
        return B.name = v, B.text = w, B;
      }
      function yP(v, w, B) {
        return v.name !== w ? nn(ME(w, B), v) : v;
      }
      function RE(v, w = up(v), B, le) {
        return v.tagName !== w || v.class !== B || v.comment !== le ? nn(Dd(w, B, le), v) : v;
      }
      function P1(v, w, B) {
        return Hm(v, w ?? fe(bz(v)), B);
      }
      function A1(v, w, B = up(w), le) {
        return w.tagName !== B || w.comment !== le ? nn(P1(v, B, le), w) : w;
      }
      function cC(v, w, B, le) {
        const Ue = Hm(v, w ?? fe(bz(v)), le);
        return Ue.typeExpression = B, Ue;
      }
      function vP(v, w, B = up(w), le, Ue) {
        return w.tagName !== B || w.typeExpression !== le || w.comment !== Ue ? nn(cC(v, B, le, Ue), w) : w;
      }
      function xT(v, w) {
        return Hm(328, v, w);
      }
      function jE(v, w, B) {
        return v.tagName !== w || v.comment !== B ? nn(xT(w, B), v) : v;
      }
      function s0(v, w, B) {
        const le = Ed(341, v ?? fe(bz(341)), B);
        return le.typeExpression = w, le.locals = void 0, le.nextContainer = void 0, le;
      }
      function lC(v, w = up(v), B, le) {
        return v.tagName !== w || v.typeExpression !== B || v.comment !== le ? nn(s0(w, B, le), v) : v;
      }
      function zc(v, w, B, le, Ue) {
        const Wt = Hm(352, v ?? fe("import"), Ue);
        return Wt.importClause = w, Wt.moduleSpecifier = B, Wt.attributes = le, Wt.comment = Ue, Wt;
      }
      function Zl(v, w, B, le, Ue, Wt) {
        return v.tagName !== w || v.comment !== Wt || v.importClause !== B || v.moduleSpecifier !== le || v.attributes !== Ue ? nn(zc(w, B, le, Ue, Wt), v) : v;
      }
      function uC(v) {
        const w = R(322);
        return w.text = v, w;
      }
      function m_(v, w) {
        return v.text !== w ? nn(uC(w), v) : v;
      }
      function Hf(v, w) {
        const B = R(321);
        return B.comment = v, B.tags = Zs(w), B;
      }
      function BE(v, w, B) {
        return v.comment !== w || v.tags !== B ? nn(Hf(w, B), v) : v;
      }
      function wd(v, w, B) {
        const le = R(285);
        return le.openingElement = v, le.children = M(w), le.closingElement = B, le.transformFlags |= bn(le.openingElement) | Us(le.children) | bn(le.closingElement) | 2, le;
      }
      function JE(v, w, B, le) {
        return v.openingElement !== w || v.children !== B || v.closingElement !== le ? nn(wd(w, B, le), v) : v;
      }
      function py(v, w, B) {
        const le = R(286);
        return le.tagName = v, le.typeArguments = Zs(w), le.attributes = B, le.transformFlags |= bn(le.tagName) | Us(le.typeArguments) | bn(le.attributes) | 2, le.typeArguments && (le.transformFlags |= 1), le;
      }
      function kT(v, w, B, le) {
        return v.tagName !== w || v.typeArguments !== B || v.attributes !== le ? nn(py(w, B, le), v) : v;
      }
      function _C(v, w, B) {
        const le = R(287);
        return le.tagName = v, le.typeArguments = Zs(w), le.attributes = B, le.transformFlags |= bn(le.tagName) | Us(le.typeArguments) | bn(le.attributes) | 2, w && (le.transformFlags |= 1), le;
      }
      function Tc(v, w, B, le) {
        return v.tagName !== w || v.typeArguments !== B || v.attributes !== le ? nn(_C(w, B, le), v) : v;
      }
      function E2(v) {
        const w = R(288);
        return w.tagName = v, w.transformFlags |= bn(w.tagName) | 2, w;
      }
      function od(v, w) {
        return v.tagName !== w ? nn(E2(w), v) : v;
      }
      function N1(v, w, B) {
        const le = R(289);
        return le.openingFragment = v, le.children = M(w), le.closingFragment = B, le.transformFlags |= bn(le.openingFragment) | Us(le.children) | bn(le.closingFragment) | 2, le;
      }
      function zE(v, w, B, le) {
        return v.openingFragment !== w || v.children !== B || v.closingFragment !== le ? nn(N1(w, B, le), v) : v;
      }
      function Ru(v, w) {
        const B = R(12);
        return B.text = v, B.containsOnlyTriviaWhiteSpaces = !!w, B.transformFlags |= 2, B;
      }
      function eb(v, w, B) {
        return v.text !== w || v.containsOnlyTriviaWhiteSpaces !== B ? nn(Ru(w, B), v) : v;
      }
      function tb() {
        const v = R(290);
        return v.transformFlags |= 2, v;
      }
      function I1() {
        const v = R(291);
        return v.transformFlags |= 2, v;
      }
      function Af(v, w) {
        const B = G(292);
        return B.name = v, B.initializer = w, B.transformFlags |= bn(B.name) | bn(B.initializer) | 2, B;
      }
      function D2(v, w, B) {
        return v.name !== w || v.initializer !== B ? nn(Af(w, B), v) : v;
      }
      function Xm(v) {
        const w = G(293);
        return w.properties = M(v), w.transformFlags |= Us(w.properties) | 2, w;
      }
      function WE(v, w) {
        return v.properties !== w ? nn(Xm(w), v) : v;
      }
      function CT(v) {
        const w = R(294);
        return w.expression = v, w.transformFlags |= bn(w.expression) | 2, w;
      }
      function w2(v, w) {
        return v.expression !== w ? nn(CT(w), v) : v;
      }
      function O1(v, w) {
        const B = R(295);
        return B.dotDotDotToken = v, B.expression = w, B.transformFlags |= bn(B.dotDotDotToken) | bn(B.expression) | 2, B;
      }
      function P2(v, w) {
        return v.expression !== w ? nn(O1(v.dotDotDotToken, w), v) : v;
      }
      function UE(v, w) {
        const B = R(296);
        return B.namespace = v, B.name = w, B.transformFlags |= bn(B.namespace) | bn(B.name) | 2, B;
      }
      function ET(v, w, B) {
        return v.namespace !== w || v.name !== B ? nn(UE(w, B), v) : v;
      }
      function fC(v, w) {
        const B = R(297);
        return B.expression = i().parenthesizeExpressionForDisallowedComma(v), B.statements = M(w), B.transformFlags |= bn(B.expression) | Us(B.statements), B.jsDoc = void 0, B;
      }
      function DT(v, w, B) {
        return v.expression !== w || v.statements !== B ? nn(fC(w, B), v) : v;
      }
      function Tu(v) {
        const w = R(298);
        return w.statements = M(v), w.transformFlags = Us(w.statements), w;
      }
      function kg(v, w) {
        return v.statements !== w ? nn(Tu(w), v) : v;
      }
      function wT(v, w) {
        const B = R(299);
        switch (B.token = v, B.types = M(w), B.transformFlags |= Us(B.types), v) {
          case 96:
            B.transformFlags |= 1024;
            break;
          case 119:
            B.transformFlags |= 1;
            break;
          default:
            return E.assertNever(v);
        }
        return B;
      }
      function pC(v, w) {
        return v.types !== w ? nn(wT(v.token, w), v) : v;
      }
      function ys(v, w) {
        const B = R(300);
        return B.variableDeclaration = _u(v), B.block = w, B.transformFlags |= bn(B.variableDeclaration) | bn(B.block) | (v ? 0 : 64), B.locals = void 0, B.nextContainer = void 0, B;
      }
      function mn(v, w, B) {
        return v.variableDeclaration !== w || v.block !== B ? nn(ys(w, B), v) : v;
      }
      function Nf(v, w) {
        const B = G(304);
        return B.name = yl(v), B.initializer = i().parenthesizeExpressionForDisallowedComma(w), B.transformFlags |= n1(B.name) | bn(B.initializer), B.modifiers = void 0, B.questionToken = void 0, B.exclamationToken = void 0, B.jsDoc = void 0, B;
      }
      function ju(v, w, B) {
        return v.name !== w || v.initializer !== B ? VE(Nf(w, B), v) : v;
      }
      function VE(v, w) {
        return v !== w && (v.modifiers = w.modifiers, v.questionToken = w.questionToken, v.exclamationToken = w.exclamationToken), nn(v, w);
      }
      function dC(v, w) {
        const B = G(305);
        return B.name = yl(v), B.objectAssignmentInitializer = w && i().parenthesizeExpressionForDisallowedComma(w), B.transformFlags |= ZA(B.name) | bn(B.objectAssignmentInitializer) | 1024, B.equalsToken = void 0, B.modifiers = void 0, B.questionToken = void 0, B.exclamationToken = void 0, B.jsDoc = void 0, B;
      }
      function C(v, w, B) {
        return v.name !== w || v.objectAssignmentInitializer !== B ? _e(dC(w, B), v) : v;
      }
      function _e(v, w) {
        return v !== w && (v.modifiers = w.modifiers, v.questionToken = w.questionToken, v.exclamationToken = w.exclamationToken, v.equalsToken = w.equalsToken), nn(v, w);
      }
      function Et(v) {
        const w = G(306);
        return w.expression = i().parenthesizeExpressionForDisallowedComma(v), w.transformFlags |= bn(w.expression) | 65664, w.jsDoc = void 0, w;
      }
      function nr(v, w) {
        return v.expression !== w ? nn(Et(w), v) : v;
      }
      function Nn(v, w) {
        const B = G(307);
        return B.name = yl(v), B.initializer = w && i().parenthesizeExpressionForDisallowedComma(w), B.transformFlags |= bn(B.name) | bn(B.initializer) | 1, B.jsDoc = void 0, B;
      }
      function Ui(v, w, B) {
        return v.name !== w || v.initializer !== B ? nn(Nn(w, B), v) : v;
      }
      function oa(v, w, B) {
        const le = t.createBaseSourceFileNode(308);
        return le.statements = M(v), le.endOfFileToken = w, le.flags |= B, le.text = "", le.fileName = "", le.path = "", le.resolvedPath = "", le.originalFileName = "", le.languageVersion = 12, le.languageVariant = 0, le.scriptKind = 0, le.isDeclarationFile = !1, le.hasNoDefaultLib = !1, le.transformFlags |= Us(le.statements) | bn(le.endOfFileToken), le.locals = void 0, le.nextContainer = void 0, le.endFlowNode = void 0, le.nodeCount = 0, le.identifierCount = 0, le.symbolCount = 0, le.parseDiagnostics = void 0, le.bindDiagnostics = void 0, le.bindSuggestionDiagnostics = void 0, le.lineMap = void 0, le.externalModuleIndicator = void 0, le.setExternalModuleIndicator = void 0, le.pragmas = void 0, le.checkJsDirective = void 0, le.referencedFiles = void 0, le.typeReferenceDirectives = void 0, le.libReferenceDirectives = void 0, le.amdDependencies = void 0, le.commentDirectives = void 0, le.identifiers = void 0, le.packageJsonLocations = void 0, le.packageJsonScope = void 0, le.imports = void 0, le.moduleAugmentations = void 0, le.ambientModuleNames = void 0, le.classifiableNames = void 0, le.impliedNodeFormat = void 0, le;
      }
      function sa(v) {
        const w = Object.create(v.redirectTarget);
        return Object.defineProperties(w, {
          id: {
            get() {
              return this.redirectInfo.redirectTarget.id;
            },
            set(B) {
              this.redirectInfo.redirectTarget.id = B;
            }
          },
          symbol: {
            get() {
              return this.redirectInfo.redirectTarget.symbol;
            },
            set(B) {
              this.redirectInfo.redirectTarget.symbol = B;
            }
          }
        }), w.redirectInfo = v, w;
      }
      function Vs(v) {
        const w = sa(v.redirectInfo);
        return w.flags |= v.flags & -17, w.fileName = v.fileName, w.path = v.path, w.resolvedPath = v.resolvedPath, w.originalFileName = v.originalFileName, w.packageJsonLocations = v.packageJsonLocations, w.packageJsonScope = v.packageJsonScope, w.emitNode = void 0, w;
      }
      function H_(v) {
        const w = t.createBaseSourceFileNode(308);
        w.flags |= v.flags & -17;
        for (const B in v)
          if (!(po(w, B) || !po(v, B))) {
            if (B === "emitNode") {
              w.emitNode = void 0;
              continue;
            }
            w[B] = v[B];
          }
        return w;
      }
      function Ys(v) {
        const w = v.redirectInfo ? Vs(v) : H_(v);
        return n(w, v), w;
      }
      function rb(v, w, B, le, Ue, Wt, gn) {
        const ua = Ys(v);
        return ua.statements = M(w), ua.isDeclarationFile = B, ua.referencedFiles = le, ua.typeReferenceDirectives = Ue, ua.hasNoDefaultLib = Wt, ua.libReferenceDirectives = gn, ua.transformFlags = Us(ua.statements) | bn(ua.endOfFileToken), ua;
      }
      function Lp(v, w, B = v.isDeclarationFile, le = v.referencedFiles, Ue = v.typeReferenceDirectives, Wt = !1, gn = v.libReferenceDirectives) {
        return v.statements !== w || v.isDeclarationFile !== B || v.referencedFiles !== le || v.typeReferenceDirectives !== Ue || v.libReferenceDirectives !== gn ? nn(rb(v, w, B, le, Ue, !1, gn), v) : v;
      }
      function If(v) {
        const w = R(309);
        return w.sourceFiles = v, w.syntheticFileReferences = void 0, w.syntheticTypeReferences = void 0, w.syntheticLibReferences = void 0, w;
      }
      function fp(v, w) {
        return v.sourceFiles !== w ? nn(If(w), v) : v;
      }
      function PT(v, w = !1, B) {
        const le = R(238);
        return le.type = v, le.isSpread = w, le.tupleNameSource = B, le;
      }
      function o0(v) {
        const w = R(353);
        return w._children = v, w;
      }
      function nb(v) {
        const w = R(354);
        return w.original = v, pt(w, v), w;
      }
      function mC(v, w) {
        const B = R(356);
        return B.expression = v, B.original = w, B.transformFlags |= bn(B.expression) | 1, pt(B, w), B;
      }
      function $f(v, w) {
        return v.expression !== w ? nn(mC(w, v.original), v) : v;
      }
      function Yo() {
        return R(355);
      }
      function qE(v) {
        if (wo(v) && !W4(v) && !v.original && !v.emitNode && !v.id) {
          if (nw(v)) return v.elements;
          if (un(v) && Mte(v.operatorToken)) return [v.left, v.right];
        }
        return v;
      }
      function AT(v) {
        const w = R(357);
        return w.elements = M(Rs(v, qE)), w.transformFlags |= Us(w.elements), w;
      }
      function F1(v, w) {
        return v.elements !== w ? nn(AT(w), v) : v;
      }
      function A2(v, w) {
        const B = R(358);
        return B.expression = v, B.thisArg = w, B.transformFlags |= bn(B.expression) | bn(B.thisArg), B;
      }
      function bP(v, w, B) {
        return v.expression !== w || v.thisArg !== B ? nn(A2(w, B), v) : v;
      }
      function mM(v) {
        const w = se(v.escapedText);
        return w.flags |= v.flags & -17, w.transformFlags = v.transformFlags, n(w, v), rN(w, { ...v.emitNode.autoGenerate }), w;
      }
      function gM(v) {
        const w = se(v.escapedText);
        w.flags |= v.flags & -17, w.jsDoc = v.jsDoc, w.flowNode = v.flowNode, w.symbol = v.symbol, w.transformFlags = v.transformFlags, n(w, v);
        const B = NS(v);
        return B && R0(w, B), w;
      }
      function gC(v) {
        const w = ce(v.escapedText);
        return w.flags |= v.flags & -17, w.transformFlags = v.transformFlags, n(w, v), rN(w, { ...v.emitNode.autoGenerate }), w;
      }
      function SP(v) {
        const w = ce(v.escapedText);
        return w.flags |= v.flags & -17, w.transformFlags = v.transformFlags, n(w, v), w;
      }
      function GE(v) {
        if (v === void 0) return v;
        if (Pi(v)) return Ys(v);
        if (Ko(v)) return mM(v);
        if (Fe(v)) return gM(v);
        if (fS(v)) return gC(v);
        if (Oi(v)) return SP(v);
        const w = Q7(v.kind) ? t.createBaseNode(v.kind) : t.createBaseTokenNode(v.kind);
        w.flags |= v.flags & -17, w.transformFlags = v.transformFlags, n(w, v);
        for (const B in v)
          po(w, B) || !po(v, B) || (w[B] = v[B]);
        return w;
      }
      function L1(v, w, B) {
        return Hi(ad(void 0, void 0, void 0, void 0, w ? [w] : [], void 0, Jc(v, !0)), void 0, B ? [B] : []);
      }
      function HE(v, w, B) {
        return Hi(ll(void 0, void 0, w ? [w] : [], void 0, void 0, Jc(v, !0)), void 0, B ? [B] : []);
      }
      function ib() {
        return A_(z("0"));
      }
      function f8(v) {
        return oy(void 0, !1, v);
      }
      function N2(v) {
        return to(void 0, !1, Wi([Ku(!1, void 0, v)]));
      }
      function $E(v, w) {
        return w === "null" ? N.createStrictEquality(v, Ce()) : w === "undefined" ? N.createStrictEquality(v, ib()) : N.createStrictEquality(Fu(v), pe(w));
      }
      function p8(v, w) {
        return w === "null" ? N.createStrictInequality(v, Ce()) : w === "undefined" ? N.createStrictInequality(v, ib()) : N.createStrictInequality(Fu(v), pe(w));
      }
      function dy(v, w, B) {
        return uS(v) ? io(Os(v, void 0, w), void 0, void 0, B) : Hi(ml(v, w), void 0, B);
      }
      function Xi(v, w, B) {
        return dy(v, "bind", [w, ...B]);
      }
      function I2(v, w, B) {
        return dy(v, "call", [w, ...B]);
      }
      function Xr(v, w, B) {
        return dy(v, "apply", [w, B]);
      }
      function O2(v, w, B) {
        return dy(fe(v), w, B);
      }
      function ab(v, w) {
        return dy(v, "slice", w === void 0 ? [] : [c0(w)]);
      }
      function XE(v, w) {
        return dy(v, "concat", w);
      }
      function hC(v, w, B) {
        return O2("Object", "defineProperty", [
          v,
          c0(w),
          B
        ]);
      }
      function F2(v, w) {
        return O2("Object", "getOwnPropertyDescriptor", [v, c0(w)]);
      }
      function TP(v, w, B) {
        return O2("Reflect", "get", B ? [
          v,
          w,
          B
        ] : [v, w]);
      }
      function hM(v, w, B, le) {
        return O2("Reflect", "set", le ? [
          v,
          w,
          B,
          le
        ] : [
          v,
          w,
          B
        ]);
      }
      function L2(v, w, B) {
        return B ? (v.push(Nf(w, B)), !0) : !1;
      }
      function M1(v, w) {
        const B = [];
        L2(B, "enumerable", c0(v.enumerable)), L2(B, "configurable", c0(v.configurable));
        let le = L2(B, "writable", c0(v.writable));
        le = L2(B, "value", v.value) || le;
        let Ue = L2(B, "get", v.get);
        return Ue = L2(B, "set", v.set) || Ue, E.assert(!(le && Ue), "A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."), ds(B, !w);
      }
      function yM(v, w) {
        switch (v.kind) {
          case 218:
            return id(v, w);
          case 217:
            return Op(v, v.type, w);
          case 235:
            return at(v, w, v.type);
          case 239:
            return Tn(v, w, v.type);
          case 236:
            return yr(v, w);
          case 234:
            return qf(v, w, v.typeArguments);
          case 356:
            return $f(v, w);
        }
      }
      function xP(v) {
        return E_(v) && wo(v) && wo(M0(v)) && wo(Pm(v)) && !_t(C6(v)) && !_t(tN(v));
      }
      function d8(v, w, B = 63) {
        return v && uF(v, B) && !xP(v) ? yM(v, d8(v.expression, w)) : w;
      }
      function QE(v, w, B) {
        if (!w) return v;
        const le = cT(w, w.label, c1(w.statement) ? QE(v, w.statement) : v);
        return B && B(w), le;
      }
      function YE(v, w) {
        const B = Gs(v);
        switch (B.kind) {
          case 80:
            return w;
          case 110:
          case 9:
          case 10:
          case 11:
            return !1;
          case 210:
            return B.elements.length !== 0;
          case 211:
            return B.properties.length > 0;
          default:
            return !0;
        }
      }
      function kP(v, w, B, le = !1) {
        const Ue = Ic(v, 63);
        let Wt, gn;
        return Z_(Ue) ? (Wt = ae(), gn = Ue) : KD(Ue) ? (Wt = ae(), gn = B !== void 0 && B < 2 ? pt(fe("_super"), Ue) : Ue) : Bs(Ue) & 8192 ? (Wt = ib(), gn = i().parenthesizeLeftSideOfAccess(Ue, !1)) : Ln(Ue) ? YE(Ue.expression, le) ? (Wt = de(w), gn = ml(pt(N.createAssignment(Wt, Ue.expression), Ue.expression), Ue.name), pt(gn, Ue)) : (Wt = Ue.expression, gn = Ue) : Po(Ue) ? YE(Ue.expression, le) ? (Wt = de(w), gn = rf(pt(N.createAssignment(Wt, Ue.expression), Ue.expression), Ue.argumentExpression), pt(gn, Ue)) : (Wt = Ue.expression, gn = Ue) : (Wt = ib(), gn = i().parenthesizeLeftSideOfAccess(v, !1)), {
          target: gn,
          thisArg: Wt
        };
      }
      function X(v, w) {
        return ml(Wf(ds([re(void 0, "value", [_i(void 0, void 0, v, void 0, void 0, void 0)], Jc([rm(w)]))])), "value");
      }
      function xe(v) {
        return v.length > 10 ? AT(v) : a_(v, N.createComma);
      }
      function He(v, w, B, le = 0, Ue) {
        const Wt = Ue ? v && W7(v) : va(v);
        if (Wt && Fe(Wt) && !Ko(Wt)) {
          const gn = eo(pt(GE(Wt), Wt), Wt.parent);
          return le |= Bs(Wt), B || (le |= 96), w || (le |= 3072), le && ln(gn, le), gn;
        }
        return Be(v);
      }
      function Tt(v, w, B) {
        return He(v, w, B, 98304);
      }
      function zt(v, w, B, le) {
        return He(v, w, B, 32768, le);
      }
      function Mr(v, w, B) {
        return He(v, w, B, 16384);
      }
      function Kn(v, w, B) {
        return He(v, w, B);
      }
      function Ki(v, w, B, le) {
        const Ue = ml(v, wo(w) ? w : GE(w));
        pt(Ue, w);
        let Wt = 0;
        return le || (Wt |= 96), B || (Wt |= 3072), Wt && ln(Ue, Wt), Ue;
      }
      function di(v, w, B, le) {
        return v && Qn(w, 32) ? Ki(v, He(w), B, le) : Mr(w, B, le);
      }
      function xn(v, w, B, le) {
        return No(v, w, hi(v, w, 0, B), le);
      }
      function ya(v) {
        return Ts(v.expression) && v.expression.text === "use strict";
      }
      function Bi() {
        return Xu(rm(pe("use strict")));
      }
      function hi(v, w, B = 0, le) {
        E.assert(w.length === 0, "Prologue directives should be at the first statement in the target statements array");
        let Ue = !1;
        const Wt = v.length;
        for (; B < Wt; ) {
          const gn = v[B];
          if (bm(gn))
            ya(gn) && (Ue = !0), w.push(gn);
          else break;
          B++;
        }
        return le && !Ue && w.push(Bi()), B;
      }
      function No(v, w, B, le, Ue = Sb) {
        const Wt = v.length;
        for (; B !== void 0 && B < Wt; ) {
          const gn = v[B];
          if (Bs(gn) & 2097152 && Ue(gn)) kr(w, le ? Ze(gn, le, Ei) : gn);
          else break;
          B++;
        }
        return B;
      }
      function Pd(v) {
        return Yz(v) ? v : pt(M([Bi(), ...v]), v);
      }
      function Qm(v) {
        return E.assert(hr(v, UZ), "Cannot lift nodes to a Block."), Fg(v) || Jc(v);
      }
      function Ym(v, w, B) {
        let le = B;
        for (; le < v.length && w(v[le]); ) le++;
        return le;
      }
      function bh(v, w) {
        if (!_t(w)) return v;
        const B = Ym(v, bm, 0), le = Ym(v, b5, B), Ue = Ym(v, S5, le), Wt = Ym(w, bm, 0), gn = Ym(w, b5, Wt), ua = Ym(w, S5, gn), vo = Ym(w, Y3, ua);
        E.assert(vo === w.length, "Expected declarations to be valid standard or custom prologues");
        const Ad = Cb(v) ? v.slice() : v;
        if (vo > ua && Ad.splice(Ue, 0, ...w.slice(ua, vo)), ua > gn && Ad.splice(le, 0, ...w.slice(gn, ua)), gn > Wt && Ad.splice(B, 0, ...w.slice(Wt, gn)), Wt > 0) if (B === 0) Ad.splice(0, 0, ...w.slice(0, Wt));
        else {
          const Sh = /* @__PURE__ */ new Map();
          for (let my = 0; my < B; my++) {
            const yC = v[my];
            Sh.set(yC.expression.text, !0);
          }
          for (let my = Wt - 1; my >= 0; my--) {
            const yC = w[my];
            Sh.has(yC.expression.text) || Ad.unshift(yC);
          }
        }
        return Cb(v) ? pt(M(Ad, v.hasTrailingComma), v) : v;
      }
      function Cg(v, w) {
        let B;
        return typeof w == "number" ? B = Ft(w) : B = w, $o(v) ? zr(v, B, v.name, v.constraint, v.default) : Fi(v) ? Gr(v, B, v.dotDotDotToken, v.name, v.questionToken, v.type, v.initializer) : D6(v) ? vr(v, B, v.typeParameters, v.parameters, v.type) : f_(v) ? Zr(v, B, v.name, v.questionToken, v.type) : ga(v) ? Me(v, B, v.name, v.questionToken ?? v.exclamationToken, v.type, v.initializer) : gd(v) ? tr(v, B, v.name, v.questionToken, v.typeParameters, v.parameters, v.type) : hc(v) ? $n(v, B, v.asteriskToken, v.name, v.questionToken, v.typeParameters, v.parameters, v.type, v.body) : yc(v) ? ha(v, B, v.parameters, v.body) : Dp(v) ? ne(v, B, v.name, v.parameters, v.type, v.body) : ef(v) ? we(v, B, v.name, v.parameters, v.body) : s1(v) ? Dt(v, B, v.parameters, v.type) : Lo(v) ? hl(v, B, v.asteriskToken, v.name, v.typeParameters, v.parameters, v.type, v.body) : Bo(v) ? Kd(v, B, v.typeParameters, v.parameters, v.type, v.equalsGreaterThanToken, v.body) : Hc(v) ? bg(v, B, v.name, v.typeParameters, v.heritageClauses, v.members) : $c(v) ? tm(v, B, v.declarationList) : Xc(v) ? S2(v, B, v.asteriskToken, v.name, v.typeParameters, v.parameters, v.type, v.body) : sl(v) ? Ws(v, B, v.name, v.typeParameters, v.heritageClauses, v.members) : au(v) ? Ql(v, B, v.name, v.typeParameters, v.heritageClauses, v.members) : Kp(v) ? fh(v, B, v.name, v.typeParameters, v.type) : l1(v) ? lp(v, B, v.name, v.members) : Qc(v) ? lu(v, B, v.name, v.body) : bl(v) ? $v(v, B, v.isTypeOnly, v.name, v.moduleReference) : ic(v) ? OE(v, B, v.importClause, v.moduleSpecifier, v.attributes) : Xo(v) ? pT(v, B, v.expression) : tl(v) ? dh(v, B, v.isTypeOnly, v.exportClause, v.moduleSpecifier, v.attributes) : E.assertNever(v);
      }
      function M2(v, w) {
        return Fi(v) ? Gr(v, w, v.dotDotDotToken, v.name, v.questionToken, v.type, v.initializer) : ga(v) ? Me(v, w, v.name, v.questionToken ?? v.exclamationToken, v.type, v.initializer) : hc(v) ? $n(v, w, v.asteriskToken, v.name, v.questionToken, v.typeParameters, v.parameters, v.type, v.body) : Dp(v) ? ne(v, w, v.name, v.parameters, v.type, v.body) : ef(v) ? we(v, w, v.name, v.parameters, v.body) : Hc(v) ? bg(v, w, v.name, v.typeParameters, v.heritageClauses, v.members) : sl(v) ? Ws(v, w, v.name, v.typeParameters, v.heritageClauses, v.members) : E.assertNever(v);
      }
      function m8(v, w) {
        switch (v.kind) {
          case 178:
            return ne(v, v.modifiers, w, v.parameters, v.type, v.body);
          case 179:
            return we(v, v.modifiers, w, v.parameters, v.body);
          case 175:
            return $n(v, v.modifiers, v.asteriskToken, w, v.questionToken, v.typeParameters, v.parameters, v.type, v.body);
          case 174:
            return tr(v, v.modifiers, w, v.questionToken, v.typeParameters, v.parameters, v.type);
          case 173:
            return Me(v, v.modifiers, w, v.questionToken ?? v.exclamationToken, v.type, v.initializer);
          case 172:
            return Zr(v, v.modifiers, w, v.questionToken, v.type);
          case 304:
            return ju(v, w, v.initializer);
        }
      }
      function Zs(v) {
        return v ? M(v) : void 0;
      }
      function yl(v) {
        return typeof v == "string" ? fe(v) : v;
      }
      function c0(v) {
        return typeof v == "string" ? pe(v) : typeof v == "number" ? z(v) : typeof v == "boolean" ? v ? ue() : Ie() : v;
      }
      function NT(v) {
        return v && i().parenthesizeExpressionForDisallowedComma(v);
      }
      function g8(v) {
        return typeof v == "number" ? K(v) : v;
      }
      function af(v) {
        return v && Yte(v) ? pt(n(xd(), v), v) : v;
      }
      function _u(v) {
        return typeof v == "string" || v && !ci(v) ? uh(v, void 0, void 0, void 0) : v;
      }
      function nn(v, w) {
        return v !== w && (n(v, w), pt(v, w)), v;
      }
    }
    function bz(e) {
      switch (e) {
        case 345:
          return "type";
        case 343:
          return "returns";
        case 344:
          return "this";
        case 341:
          return "enum";
        case 331:
          return "author";
        case 333:
          return "class";
        case 334:
          return "public";
        case 335:
          return "private";
        case 336:
          return "protected";
        case 337:
          return "readonly";
        case 338:
          return "override";
        case 346:
          return "template";
        case 347:
          return "typedef";
        case 342:
          return "param";
        case 349:
          return "prop";
        case 339:
          return "callback";
        case 340:
          return "overload";
        case 329:
          return "augments";
        case 330:
          return "implements";
        case 352:
          return "import";
        default:
          return E.fail(`Unsupported kind: ${E.formatSyntaxKind(e)}`);
      }
    }
    var L0, p0e = {};
    function z9e(e, t) {
      switch (L0 || (L0 = Bg(99, !1, 0)), e) {
        case 15:
          L0.setText("`" + t + "`");
          break;
        case 16:
          L0.setText("`" + t + "${");
          break;
        case 17:
          L0.setText("}" + t + "${");
          break;
        case 18:
          L0.setText("}" + t + "`");
          break;
      }
      let n = L0.scan();
      if (n === 20 && (n = L0.reScanTemplateToken(!1)), L0.isUnterminated())
        return L0.setText(void 0), p0e;
      let i;
      switch (n) {
        case 15:
        case 16:
        case 17:
        case 18:
          i = L0.getTokenValue();
          break;
      }
      return i === void 0 || L0.scan() !== 1 ? (L0.setText(void 0), p0e) : (L0.setText(void 0), i);
    }
    function n1(e) {
      return e && Fe(e) ? ZA(e) : bn(e);
    }
    function ZA(e) {
      return bn(e) & -67108865;
    }
    function W9e(e, t) {
      return t | e.transformFlags & 134234112;
    }
    function bn(e) {
      if (!e) return 0;
      const t = e.transformFlags & ~U9e(e.kind);
      return Bl(e) && il(e.name) ? W9e(e.name, t) : t;
    }
    function Us(e) {
      return e ? e.transformFlags : 0;
    }
    function d0e(e) {
      let t = 0;
      for (const n of e) t |= bn(n);
      e.transformFlags = t;
    }
    function U9e(e) {
      if (e >= 183 && e <= 206) return -2;
      switch (e) {
        case 214:
        case 215:
        case 210:
          return -2147450880;
        case 268:
          return -1941676032;
        case 170:
          return -2147483648;
        case 220:
          return -2072174592;
        case 219:
        case 263:
          return -1937940480;
        case 262:
          return -2146893824;
        case 264:
        case 232:
          return -2147344384;
        case 177:
          return -1937948672;
        case 173:
          return -2013249536;
        case 175:
        case 178:
        case 179:
          return -2005057536;
        case 133:
        case 150:
        case 163:
        case 146:
        case 154:
        case 151:
        case 136:
        case 155:
        case 116:
        case 169:
        case 172:
        case 174:
        case 180:
        case 181:
        case 182:
        case 265:
        case 266:
          return -2;
        case 211:
          return -2147278848;
        case 300:
          return -2147418112;
        case 207:
        case 208:
          return -2147450880;
        case 217:
        case 239:
        case 235:
        case 356:
        case 218:
        case 108:
          return -2147483648;
        case 212:
        case 213:
          return -2147483648;
        default:
          return -2147483648;
      }
    }
    var JO = hte();
    function zO(e) {
      return e.flags |= 16, e;
    }
    var A = YA(4, {
      createBaseSourceFileNode: (e) => zO(JO.createBaseSourceFileNode(e)),
      createBaseIdentifierNode: (e) => zO(JO.createBaseIdentifierNode(e)),
      createBasePrivateIdentifierNode: (e) => zO(JO.createBasePrivateIdentifierNode(e)),
      createBaseTokenNode: (e) => zO(JO.createBaseTokenNode(e)),
      createBaseNode: (e) => zO(JO.createBaseNode(e))
    }), m0e;
    function g0e(e, t, n) {
      return new (m0e || (m0e = gu.getSourceMapSourceConstructor()))(e, t, n);
    }
    function Fn(e, t) {
      if (e.original !== t && (e.original = t, t)) {
        const n = t.emitNode;
        n && (e.emitNode = V9e(n, e.emitNode));
      }
      return e;
    }
    function V9e(e, t) {
      const { flags: n, internalFlags: i, leadingComments: a, trailingComments: o, commentRange: c, sourceMapRange: _, tokenSourceMapRanges: u, constantValue: d, helpers: g, startsOnNewLine: h, snippetElement: S, classThis: T, assignedName: k } = e;
      if (t || (t = {}), n && (t.flags = n), i && (t.internalFlags = i & -9), a && (t.leadingComments = Mn(a.slice(), t.leadingComments)), o && (t.trailingComments = Mn(o.slice(), t.trailingComments)), c && (t.commentRange = c), _ && (t.sourceMapRange = _), u && (t.tokenSourceMapRanges = q9e(u, t.tokenSourceMapRanges)), d !== void 0 && (t.constantValue = d), g) for (const D of g) t.helpers = Lh(t.helpers, D);
      return h !== void 0 && (t.startsOnNewLine = h), S !== void 0 && (t.snippetElement = S), T && (t.classThis = T), k && (t.assignedName = k), t;
    }
    function q9e(e, t) {
      t || (t = []);
      for (const n in e) t[n] = e[n];
      return t;
    }
    function Au(e) {
      if (e.emitNode)
        E.assert(!(e.emitNode.internalFlags & 8), "Invalid attempt to mutate an immutable node.");
      else {
        if (W4(e)) {
          if (e.kind === 308) return e.emitNode = { annotatedNodes: [e] };
          Au(Sr(Ca(Sr(e))) ?? E.fail("Could not determine parsed source file.")).annotatedNodes.push(e);
        }
        e.emitNode = {};
      }
      return e.emitNode;
    }
    function Sz(e) {
      var t, n;
      const i = (n = (t = Sr(Ca(e))) == null ? void 0 : t.emitNode) == null ? void 0 : n.annotatedNodes;
      if (i) for (const a of i) a.emitNode = void 0;
    }
    function KA(e) {
      const t = Au(e);
      return t.flags |= 3072, t.leadingComments = void 0, t.trailingComments = void 0, e;
    }
    function ln(e, t) {
      return Au(e).flags = t, e;
    }
    function wm(e, t) {
      const n = Au(e);
      return n.flags = n.flags | t, e;
    }
    function eN(e, t) {
      return Au(e).internalFlags = t, e;
    }
    function AS(e, t) {
      const n = Au(e);
      return n.internalFlags = n.internalFlags | t, e;
    }
    function M0(e) {
      var t;
      return ((t = e.emitNode) == null ? void 0 : t.sourceMapRange) ?? e;
    }
    function As(e, t) {
      return Au(e).sourceMapRange = t, e;
    }
    function h0e(e, t) {
      var n, i;
      return (i = (n = e.emitNode) == null ? void 0 : n.tokenSourceMapRanges) == null ? void 0 : i[t];
    }
    function xte(e, t, n) {
      const i = Au(e), a = i.tokenSourceMapRanges ?? (i.tokenSourceMapRanges = []);
      return a[t] = n, e;
    }
    function XD(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.startsOnNewLine;
    }
    function WO(e, t) {
      return Au(e).startsOnNewLine = t, e;
    }
    function Pm(e) {
      var t;
      return ((t = e.emitNode) == null ? void 0 : t.commentRange) ?? e;
    }
    function fl(e, t) {
      return Au(e).commentRange = t, e;
    }
    function C6(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.leadingComments;
    }
    function Sv(e, t) {
      return Au(e).leadingComments = t, e;
    }
    function i1(e, t, n, i) {
      return Sv(e, kr(C6(e), {
        kind: t,
        pos: -1,
        end: -1,
        hasTrailingNewLine: i,
        text: n
      }));
    }
    function tN(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.trailingComments;
    }
    function ik(e, t) {
      return Au(e).trailingComments = t, e;
    }
    function QD(e, t, n, i) {
      return ik(e, kr(tN(e), {
        kind: t,
        pos: -1,
        end: -1,
        hasTrailingNewLine: i,
        text: n
      }));
    }
    function kte(e, t) {
      Sv(e, C6(t)), ik(e, tN(t));
      const n = Au(t);
      return n.leadingComments = void 0, n.trailingComments = void 0, e;
    }
    function Cte(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.constantValue;
    }
    function Ete(e, t) {
      const n = Au(e);
      return n.constantValue = t, e;
    }
    function ak(e, t) {
      const n = Au(e);
      return n.helpers = kr(n.helpers, t), e;
    }
    function th(e, t) {
      if (_t(t)) {
        const n = Au(e);
        for (const i of t) n.helpers = Lh(n.helpers, i);
      }
      return e;
    }
    function y0e(e, t) {
      var n;
      const i = (n = e.emitNode) == null ? void 0 : n.helpers;
      return i ? k4(i, t) : !1;
    }
    function Tz(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.helpers;
    }
    function Dte(e, t, n) {
      const i = e.emitNode, a = i && i.helpers;
      if (!_t(a)) return;
      const o = Au(t);
      let c = 0;
      for (let _ = 0; _ < a.length; _++) {
        const u = a[_];
        n(u) ? (c++, o.helpers = Lh(o.helpers, u)) : c > 0 && (a[_ - c] = u);
      }
      c > 0 && (a.length -= c);
    }
    function xz(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.snippetElement;
    }
    function kz(e, t) {
      const n = Au(e);
      return n.snippetElement = t, e;
    }
    function Cz(e) {
      return Au(e).internalFlags |= 4, e;
    }
    function wte(e, t) {
      const n = Au(e);
      return n.typeNode = t, e;
    }
    function Pte(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.typeNode;
    }
    function R0(e, t) {
      return Au(e).identifierTypeArguments = t, e;
    }
    function NS(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.identifierTypeArguments;
    }
    function rN(e, t) {
      return Au(e).autoGenerate = t, e;
    }
    function v0e(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.autoGenerate;
    }
    function Ate(e, t) {
      return Au(e).generatedImportReference = t, e;
    }
    function Nte(e) {
      var t;
      return (t = e.emitNode) == null ? void 0 : t.generatedImportReference;
    }
    var Ite = /* @__PURE__ */ ((e) => (e.Field = "f", e.Method = "m", e.Accessor = "a", e))(Ite || {});
    function Ote(e) {
      const t = e.factory, n = s_(() => eN(t.createTrue(), 8)), i = s_(() => eN(t.createFalse(), 8));
      return {
        getUnscopedHelperName: a,
        createDecorateHelper: o,
        createMetadataHelper: c,
        createParamHelper: _,
        createESDecorateHelper: D,
        createRunInitializersHelper: P,
        createAssignHelper: N,
        createAwaitHelper: M,
        createAsyncGeneratorHelper: R,
        createAsyncDelegatorHelper: G,
        createAsyncValuesHelper: L,
        createRestHelper: z,
        createAwaiterHelper: H,
        createExtendsHelper: U,
        createTemplateObjectHelper: pe,
        createSpreadArrayHelper: ie,
        createPropKeyHelper: W,
        createSetFunctionNameHelper: Q,
        createValuesHelper: se,
        createReadHelper: he,
        createGeneratorHelper: fe,
        createImportStarHelper: de,
        createImportStarCallbackHelper: $,
        createImportDefaultHelper: Se,
        createExportStarHelper: Be,
        createClassPrivateFieldGetHelper: ce,
        createClassPrivateFieldSetHelper: oe,
        createClassPrivateFieldInHelper: ge,
        createAddDisposableResourceHelper: Ae,
        createDisposeResourcesHelper: Ne,
        createRewriteRelativeImportExtensionsHelper: ot
      };
      function a(K) {
        return ln(t.createIdentifier(K), 8196);
      }
      function o(K, ke, ae, Ce) {
        e.requestEmitHelper(G9e);
        const ue = [];
        return ue.push(t.createArrayLiteralExpression(K, !0)), ue.push(ke), ae && (ue.push(ae), Ce && ue.push(Ce)), t.createCallExpression(a("__decorate"), void 0, ue);
      }
      function c(K, ke) {
        return e.requestEmitHelper(H9e), t.createCallExpression(a("__metadata"), void 0, [t.createStringLiteral(K), ke]);
      }
      function _(K, ke, ae) {
        return e.requestEmitHelper($9e), pt(t.createCallExpression(a("__param"), void 0, [t.createNumericLiteral(ke + ""), K]), ae);
      }
      function u(K) {
        const ke = [
          t.createPropertyAssignment(t.createIdentifier("kind"), t.createStringLiteral("class")),
          t.createPropertyAssignment(t.createIdentifier("name"), K.name),
          t.createPropertyAssignment(t.createIdentifier("metadata"), K.metadata)
        ];
        return t.createObjectLiteralExpression(ke);
      }
      function d(K) {
        const ke = K.computed ? t.createElementAccessExpression(t.createIdentifier("obj"), K.name) : t.createPropertyAccessExpression(t.createIdentifier("obj"), K.name);
        return t.createPropertyAssignment("get", t.createArrowFunction(void 0, void 0, [t.createParameterDeclaration(void 0, void 0, t.createIdentifier("obj"))], void 0, void 0, ke));
      }
      function g(K) {
        const ke = K.computed ? t.createElementAccessExpression(t.createIdentifier("obj"), K.name) : t.createPropertyAccessExpression(t.createIdentifier("obj"), K.name);
        return t.createPropertyAssignment("set", t.createArrowFunction(void 0, void 0, [t.createParameterDeclaration(void 0, void 0, t.createIdentifier("obj")), t.createParameterDeclaration(void 0, void 0, t.createIdentifier("value"))], void 0, void 0, t.createBlock([t.createExpressionStatement(t.createAssignment(ke, t.createIdentifier("value")))])));
      }
      function h(K) {
        const ke = K.computed ? K.name : Fe(K.name) ? t.createStringLiteralFromNode(K.name) : K.name;
        return t.createPropertyAssignment("has", t.createArrowFunction(void 0, void 0, [t.createParameterDeclaration(void 0, void 0, t.createIdentifier("obj"))], void 0, void 0, t.createBinaryExpression(ke, 103, t.createIdentifier("obj"))));
      }
      function S(K, ke) {
        const ae = [];
        return ae.push(h(K)), ke.get && ae.push(d(K)), ke.set && ae.push(g(K)), t.createObjectLiteralExpression(ae);
      }
      function T(K) {
        const ke = [
          t.createPropertyAssignment(t.createIdentifier("kind"), t.createStringLiteral(K.kind)),
          t.createPropertyAssignment(t.createIdentifier("name"), K.name.computed ? K.name.name : t.createStringLiteralFromNode(K.name.name)),
          t.createPropertyAssignment(t.createIdentifier("static"), K.static ? t.createTrue() : t.createFalse()),
          t.createPropertyAssignment(t.createIdentifier("private"), K.private ? t.createTrue() : t.createFalse()),
          t.createPropertyAssignment(t.createIdentifier("access"), S(K.name, K.access)),
          t.createPropertyAssignment(t.createIdentifier("metadata"), K.metadata)
        ];
        return t.createObjectLiteralExpression(ke);
      }
      function k(K) {
        return K.kind === "class" ? u(K) : T(K);
      }
      function D(K, ke, ae, Ce, ue, Ie) {
        return e.requestEmitHelper(X9e), t.createCallExpression(a("__esDecorate"), void 0, [
          K ?? t.createNull(),
          ke ?? t.createNull(),
          ae,
          k(Ce),
          ue,
          Ie
        ]);
      }
      function P(K, ke, ae) {
        return e.requestEmitHelper(Q9e), t.createCallExpression(a("__runInitializers"), void 0, ae ? [
          K,
          ke,
          ae
        ] : [K, ke]);
      }
      function N(K) {
        return Ps(e.getCompilerOptions()) >= 2 ? t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"), "assign"), void 0, K) : (e.requestEmitHelper(Y9e), t.createCallExpression(a("__assign"), void 0, K));
      }
      function M(K) {
        return e.requestEmitHelper(UO), t.createCallExpression(a("__await"), void 0, [K]);
      }
      function R(K, ke) {
        return e.requestEmitHelper(UO), e.requestEmitHelper(Z9e), (K.emitNode || (K.emitNode = {})).flags |= 1572864, t.createCallExpression(a("__asyncGenerator"), void 0, [
          ke ? t.createThis() : t.createVoidZero(),
          t.createIdentifier("arguments"),
          K
        ]);
      }
      function G(K) {
        return e.requestEmitHelper(UO), e.requestEmitHelper(K9e), t.createCallExpression(a("__asyncDelegator"), void 0, [K]);
      }
      function L(K) {
        return e.requestEmitHelper(eLe), t.createCallExpression(a("__asyncValues"), void 0, [K]);
      }
      function z(K, ke, ae, Ce) {
        e.requestEmitHelper(tLe);
        const ue = [];
        let Ie = 0;
        for (let Xe = 0; Xe < ke.length - 1; Xe++) {
          const Ft = Kz(ke[Xe]);
          if (Ft) if (_s(Ft)) {
            E.assertIsDefined(ae, "Encountered computed property name but 'computedTempVariables' argument was not provided.");
            const Ut = ae[Ie];
            Ie++, ue.push(t.createConditionalExpression(t.createTypeCheck(Ut, "symbol"), void 0, Ut, void 0, t.createAdd(Ut, t.createStringLiteral(""))));
          } else ue.push(t.createStringLiteralFromNode(Ft));
        }
        return t.createCallExpression(a("__rest"), void 0, [K, pt(t.createArrayLiteralExpression(ue), Ce)]);
      }
      function H(K, ke, ae, Ce, ue) {
        e.requestEmitHelper(rLe);
        const Ie = t.createFunctionExpression(void 0, t.createToken(42), void 0, void 0, Ce ?? [], void 0, ue);
        return (Ie.emitNode || (Ie.emitNode = {})).flags |= 1572864, t.createCallExpression(a("__awaiter"), void 0, [
          K ? t.createThis() : t.createVoidZero(),
          ke ?? t.createVoidZero(),
          ae ? _N(t, ae) : t.createVoidZero(),
          Ie
        ]);
      }
      function U(K) {
        return e.requestEmitHelper(nLe), t.createCallExpression(a("__extends"), void 0, [K, t.createUniqueName("_super", 48)]);
      }
      function pe(K, ke) {
        return e.requestEmitHelper(iLe), t.createCallExpression(a("__makeTemplateObject"), void 0, [K, ke]);
      }
      function ie(K, ke, ae) {
        return e.requestEmitHelper(sLe), t.createCallExpression(a("__spreadArray"), void 0, [
          K,
          ke,
          ae ? n() : i()
        ]);
      }
      function W(K) {
        return e.requestEmitHelper(oLe), t.createCallExpression(a("__propKey"), void 0, [K]);
      }
      function Q(K, ke, ae) {
        return e.requestEmitHelper(cLe), e.factory.createCallExpression(a("__setFunctionName"), void 0, ae ? [
          K,
          ke,
          e.factory.createStringLiteral(ae)
        ] : [K, ke]);
      }
      function se(K) {
        return e.requestEmitHelper(lLe), t.createCallExpression(a("__values"), void 0, [K]);
      }
      function he(K, ke) {
        return e.requestEmitHelper(aLe), t.createCallExpression(a("__read"), void 0, ke !== void 0 ? [K, t.createNumericLiteral(ke + "")] : [K]);
      }
      function fe(K) {
        return e.requestEmitHelper(uLe), t.createCallExpression(a("__generator"), void 0, [t.createThis(), K]);
      }
      function de(K) {
        return e.requestEmitHelper(S0e), t.createCallExpression(a("__importStar"), void 0, [K]);
      }
      function $() {
        return e.requestEmitHelper(S0e), a("__importStar");
      }
      function Se(K) {
        return e.requestEmitHelper(_Le), t.createCallExpression(a("__importDefault"), void 0, [K]);
      }
      function Be(K, ke = t.createIdentifier("exports")) {
        return e.requestEmitHelper(fLe), e.requestEmitHelper(Lte), t.createCallExpression(a("__exportStar"), void 0, [K, ke]);
      }
      function ce(K, ke, ae, Ce) {
        e.requestEmitHelper(pLe);
        let ue;
        return Ce ? ue = [
          K,
          ke,
          t.createStringLiteral(ae),
          Ce
        ] : ue = [
          K,
          ke,
          t.createStringLiteral(ae)
        ], t.createCallExpression(a("__classPrivateFieldGet"), void 0, ue);
      }
      function oe(K, ke, ae, Ce, ue) {
        e.requestEmitHelper(dLe);
        let Ie;
        return ue ? Ie = [
          K,
          ke,
          ae,
          t.createStringLiteral(Ce),
          ue
        ] : Ie = [
          K,
          ke,
          ae,
          t.createStringLiteral(Ce)
        ], t.createCallExpression(a("__classPrivateFieldSet"), void 0, Ie);
      }
      function ge(K, ke) {
        return e.requestEmitHelper(mLe), t.createCallExpression(a("__classPrivateFieldIn"), void 0, [K, ke]);
      }
      function Ae(K, ke, ae) {
        return e.requestEmitHelper(gLe), t.createCallExpression(a("__addDisposableResource"), void 0, [
          K,
          ke,
          ae ? t.createTrue() : t.createFalse()
        ]);
      }
      function Ne(K) {
        return e.requestEmitHelper(hLe), t.createCallExpression(a("__disposeResources"), void 0, [K]);
      }
      function ot(K) {
        return e.requestEmitHelper(yLe), t.createCallExpression(a("__rewriteRelativeImportExtension"), void 0, e.getCompilerOptions().jsx === 1 ? [K, t.createTrue()] : [K]);
      }
    }
    function Fte(e, t) {
      return e === t || e.priority === t.priority ? 0 : e.priority === void 0 ? 1 : t.priority === void 0 ? -1 : Fo(e.priority, t.priority);
    }
    function b0e(e, ...t) {
      return (n) => {
        let i = "";
        for (let a = 0; a < t.length; a++)
          i += e[a], i += n(t[a]);
        return i += e[e.length - 1], i;
      };
    }
    var G9e = {
      name: "typescript:decorate",
      importName: "__decorate",
      scoped: !1,
      priority: 2,
      text: `
            var __decorate = (this && this.__decorate) || function (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;
            };`
    }, H9e = {
      name: "typescript:metadata",
      importName: "__metadata",
      scoped: !1,
      priority: 3,
      text: `
            var __metadata = (this && this.__metadata) || function (k, v) {
                if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
            };`
    }, $9e = {
      name: "typescript:param",
      importName: "__param",
      scoped: !1,
      priority: 4,
      text: `
            var __param = (this && this.__param) || function (paramIndex, decorator) {
                return function (target, key) { decorator(target, key, paramIndex); }
            };`
    }, X9e = {
      name: "typescript:esDecorate",
      importName: "__esDecorate",
      scoped: !1,
      priority: 2,
      text: `
        var __esDecorate = (this && this.__esDecorate) || function (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;
        };`
    }, Q9e = {
      name: "typescript:runInitializers",
      importName: "__runInitializers",
      scoped: !1,
      priority: 2,
      text: `
        var __runInitializers = (this && this.__runInitializers) || function (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;
        };`
    }, Y9e = {
      name: "typescript:assign",
      importName: "__assign",
      scoped: !1,
      priority: 1,
      text: `
            var __assign = (this && this.__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);
            };`
    }, UO = {
      name: "typescript:await",
      importName: "__await",
      scoped: !1,
      text: `
            var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`
    }, Z9e = {
      name: "typescript:asyncGenerator",
      importName: "__asyncGenerator",
      scoped: !1,
      dependencies: [UO],
      text: `
        var __asyncGenerator = (this && this.__asyncGenerator) || function (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]); }
        };`
    }, K9e = {
      name: "typescript:asyncDelegator",
      importName: "__asyncDelegator",
      scoped: !1,
      dependencies: [UO],
      text: `
            var __asyncDelegator = (this && this.__asyncDelegator) || function (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; }
            };`
    }, eLe = {
      name: "typescript:asyncValues",
      importName: "__asyncValues",
      scoped: !1,
      text: `
            var __asyncValues = (this && this.__asyncValues) || function (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); }
            };`
    }, tLe = {
      name: "typescript:rest",
      importName: "__rest",
      scoped: !1,
      text: `
            var __rest = (this && this.__rest) || function (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;
            };`
    }, rLe = {
      name: "typescript:awaiter",
      importName: "__awaiter",
      scoped: !1,
      priority: 5,
      text: `
            var __awaiter = (this && this.__awaiter) || function (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());
                });
            };`
    }, nLe = {
      name: "typescript:extends",
      importName: "__extends",
      scoped: !1,
      priority: 0,
      text: `
            var __extends = (this && this.__extends) || (function () {
                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);
                };

                return function (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 __());
                };
            })();`
    }, iLe = {
      name: "typescript:makeTemplateObject",
      importName: "__makeTemplateObject",
      scoped: !1,
      priority: 0,
      text: `
            var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
                if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
                return cooked;
            };`
    }, aLe = {
      name: "typescript:read",
      importName: "__read",
      scoped: !1,
      text: `
            var __read = (this && this.__read) || function (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;
            };`
    }, sLe = {
      name: "typescript:spreadArray",
      importName: "__spreadArray",
      scoped: !1,
      text: `
            var __spreadArray = (this && this.__spreadArray) || function (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));
            };`
    }, oLe = {
      name: "typescript:propKey",
      importName: "__propKey",
      scoped: !1,
      text: `
        var __propKey = (this && this.__propKey) || function (x) {
            return typeof x === "symbol" ? x : "".concat(x);
        };`
    }, cLe = {
      name: "typescript:setFunctionName",
      importName: "__setFunctionName",
      scoped: !1,
      text: `
        var __setFunctionName = (this && this.__setFunctionName) || function (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 });
        };`
    }, lLe = {
      name: "typescript:values",
      importName: "__values",
      scoped: !1,
      text: `
            var __values = (this && this.__values) || function(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.");
            };`
    }, uLe = {
      name: "typescript:generator",
      importName: "__generator",
      scoped: !1,
      priority: 6,
      text: `
            var __generator = (this && this.__generator) || function (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 };
                }
            };`
    }, Lte = {
      name: "typescript:commonjscreatebinding",
      importName: "__createBinding",
      scoped: !1,
      priority: 1,
      text: `
            var __createBinding = (this && this.__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];
            }));`
    }, S0e = {
      name: "typescript:commonjsimportstar",
      importName: "__importStar",
      scoped: !1,
      dependencies: [Lte, {
        name: "typescript:commonjscreatevalue",
        importName: "__setModuleDefault",
        scoped: !1,
        priority: 1,
        text: `
            var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
                Object.defineProperty(o, "default", { enumerable: true, value: v });
            }) : function(o, v) {
                o["default"] = v;
            });`
      }],
      priority: 2,
      text: `
            var __importStar = (this && this.__importStar) || (function () {
                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);
                };
                return function (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;
                };
            })();`
    }, _Le = {
      name: "typescript:commonjsimportdefault",
      importName: "__importDefault",
      scoped: !1,
      text: `
            var __importDefault = (this && this.__importDefault) || function (mod) {
                return (mod && mod.__esModule) ? mod : { "default": mod };
            };`
    }, fLe = {
      name: "typescript:export-star",
      importName: "__exportStar",
      scoped: !1,
      dependencies: [Lte],
      priority: 2,
      text: `
            var __exportStar = (this && this.__exportStar) || function(m, exports) {
                for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
            };`
    }, pLe = {
      name: "typescript:classPrivateFieldGet",
      importName: "__classPrivateFieldGet",
      scoped: !1,
      text: `
            var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (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);
            };`
    }, dLe = {
      name: "typescript:classPrivateFieldSet",
      importName: "__classPrivateFieldSet",
      scoped: !1,
      text: `
            var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (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;
            };`
    }, mLe = {
      name: "typescript:classPrivateFieldIn",
      importName: "__classPrivateFieldIn",
      scoped: !1,
      text: `
            var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(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);
            };`
    }, gLe = {
      name: "typescript:addDisposableResource",
      importName: "__addDisposableResource",
      scoped: !1,
      text: `
        var __addDisposableResource = (this && this.__addDisposableResource) || function (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;
        };`
    }, hLe = {
      name: "typescript:disposeResources",
      importName: "__disposeResources",
      scoped: !1,
      text: `
        var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
            return function (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();
            };
        })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
            var e = new Error(message);
            return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
        });`
    }, yLe = {
      name: "typescript:rewriteRelativeImportExtensions",
      importName: "__rewriteRelativeImportExtension",
      scoped: !1,
      text: `
        var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (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;
        };`
    }, VO = {
      name: "typescript:async-super",
      scoped: !0,
      text: b0e`
            const ${"_superIndex"} = name => super[name];`
    }, qO = {
      name: "typescript:advanced-async-super",
      scoped: !0,
      text: b0e`
            const ${"_superIndex"} = (function (geti, seti) {
                const cache = Object.create(null);
                return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });
            })(name => super[name], (name, value) => super[name] = value);`
    };
    function YD(e, t) {
      return za(e) && Fe(e.expression) && (Bs(e.expression) & 8192) !== 0 && e.expression.escapedText === t;
    }
    function V_(e) {
      return e.kind === 9;
    }
    function E6(e) {
      return e.kind === 10;
    }
    function Ts(e) {
      return e.kind === 11;
    }
    function sk(e) {
      return e.kind === 12;
    }
    function Ez(e) {
      return e.kind === 14;
    }
    function IS(e) {
      return e.kind === 15;
    }
    function ok(e) {
      return e.kind === 16;
    }
    function Dz(e) {
      return e.kind === 17;
    }
    function GO(e) {
      return e.kind === 18;
    }
    function HO(e) {
      return e.kind === 26;
    }
    function Mte(e) {
      return e.kind === 28;
    }
    function wz(e) {
      return e.kind === 40;
    }
    function Pz(e) {
      return e.kind === 41;
    }
    function nN(e) {
      return e.kind === 42;
    }
    function iN(e) {
      return e.kind === 54;
    }
    function a1(e) {
      return e.kind === 58;
    }
    function Rte(e) {
      return e.kind === 59;
    }
    function $O(e) {
      return e.kind === 29;
    }
    function jte(e) {
      return e.kind === 39;
    }
    function Fe(e) {
      return e.kind === 80;
    }
    function Oi(e) {
      return e.kind === 81;
    }
    function ck(e) {
      return e.kind === 95;
    }
    function XO(e) {
      return e.kind === 90;
    }
    function ZD(e) {
      return e.kind === 134;
    }
    function Bte(e) {
      return e.kind === 131;
    }
    function Az(e) {
      return e.kind === 135;
    }
    function Jte(e) {
      return e.kind === 148;
    }
    function lk(e) {
      return e.kind === 126;
    }
    function zte(e) {
      return e.kind === 128;
    }
    function Wte(e) {
      return e.kind === 164;
    }
    function Nz(e) {
      return e.kind === 129;
    }
    function KD(e) {
      return e.kind === 108;
    }
    function ew(e) {
      return e.kind === 102;
    }
    function Ute(e) {
      return e.kind === 84;
    }
    function k_(e) {
      return e.kind === 167;
    }
    function _s(e) {
      return e.kind === 168;
    }
    function $o(e) {
      return e.kind === 169;
    }
    function Fi(e) {
      return e.kind === 170;
    }
    function pl(e) {
      return e.kind === 171;
    }
    function f_(e) {
      return e.kind === 172;
    }
    function ga(e) {
      return e.kind === 173;
    }
    function gd(e) {
      return e.kind === 174;
    }
    function hc(e) {
      return e.kind === 175;
    }
    function Bc(e) {
      return e.kind === 176;
    }
    function yc(e) {
      return e.kind === 177;
    }
    function Dp(e) {
      return e.kind === 178;
    }
    function ef(e) {
      return e.kind === 179;
    }
    function uk(e) {
      return e.kind === 180;
    }
    function tw(e) {
      return e.kind === 181;
    }
    function s1(e) {
      return e.kind === 182;
    }
    function _k(e) {
      return e.kind === 183;
    }
    function xf(e) {
      return e.kind === 184;
    }
    function mg(e) {
      return e.kind === 185;
    }
    function D6(e) {
      return e.kind === 186;
    }
    function Gb(e) {
      return e.kind === 187;
    }
    function C_(e) {
      return e.kind === 188;
    }
    function aN(e) {
      return e.kind === 189;
    }
    function fk(e) {
      return e.kind === 190;
    }
    function w6(e) {
      return e.kind === 203;
    }
    function QO(e) {
      return e.kind === 191;
    }
    function YO(e) {
      return e.kind === 192;
    }
    function j0(e) {
      return e.kind === 193;
    }
    function pk(e) {
      return e.kind === 194;
    }
    function Hb(e) {
      return e.kind === 195;
    }
    function OS(e) {
      return e.kind === 196;
    }
    function FS(e) {
      return e.kind === 197;
    }
    function rw(e) {
      return e.kind === 198;
    }
    function Tv(e) {
      return e.kind === 199;
    }
    function $b(e) {
      return e.kind === 200;
    }
    function LS(e) {
      return e.kind === 201;
    }
    function B0(e) {
      return e.kind === 202;
    }
    function Am(e) {
      return e.kind === 206;
    }
    function Iz(e) {
      return e.kind === 205;
    }
    function Vte(e) {
      return e.kind === 204;
    }
    function rp(e) {
      return e.kind === 207;
    }
    function J0(e) {
      return e.kind === 208;
    }
    function Ns(e) {
      return e.kind === 209;
    }
    function hu(e) {
      return e.kind === 210;
    }
    function bs(e) {
      return e.kind === 211;
    }
    function Ln(e) {
      return e.kind === 212;
    }
    function Po(e) {
      return e.kind === 213;
    }
    function za(e) {
      return e.kind === 214;
    }
    function Xb(e) {
      return e.kind === 215;
    }
    function xv(e) {
      return e.kind === 216;
    }
    function ZO(e) {
      return e.kind === 217;
    }
    function E_(e) {
      return e.kind === 218;
    }
    function Lo(e) {
      return e.kind === 219;
    }
    function Bo(e) {
      return e.kind === 220;
    }
    function qte(e) {
      return e.kind === 221;
    }
    function P6(e) {
      return e.kind === 222;
    }
    function dk(e) {
      return e.kind === 223;
    }
    function o1(e) {
      return e.kind === 224;
    }
    function kv(e) {
      return e.kind === 225;
    }
    function Oz(e) {
      return e.kind === 226;
    }
    function un(e) {
      return e.kind === 227;
    }
    function MS(e) {
      return e.kind === 228;
    }
    function KO(e) {
      return e.kind === 229;
    }
    function sN(e) {
      return e.kind === 230;
    }
    function wp(e) {
      return e.kind === 231;
    }
    function Hc(e) {
      return e.kind === 232;
    }
    function Al(e) {
      return e.kind === 233;
    }
    function rh(e) {
      return e.kind === 234;
    }
    function A6(e) {
      return e.kind === 235;
    }
    function N6(e) {
      return e.kind === 239;
    }
    function mk(e) {
      return e.kind === 236;
    }
    function RS(e) {
      return e.kind === 237;
    }
    function T0e(e) {
      return e.kind === 238;
    }
    function Gte(e) {
      return e.kind === 356;
    }
    function nw(e) {
      return e.kind === 357;
    }
    function I6(e) {
      return e.kind === 240;
    }
    function Hte(e) {
      return e.kind === 241;
    }
    function Wa(e) {
      return e.kind === 242;
    }
    function $c(e) {
      return e.kind === 244;
    }
    function Fz(e) {
      return e.kind === 243;
    }
    function zl(e) {
      return e.kind === 245;
    }
    function Cv(e) {
      return e.kind === 246;
    }
    function x0e(e) {
      return e.kind === 247;
    }
    function Lz(e) {
      return e.kind === 248;
    }
    function Ev(e) {
      return e.kind === 249;
    }
    function eF(e) {
      return e.kind === 250;
    }
    function oN(e) {
      return e.kind === 251;
    }
    function k0e(e) {
      return e.kind === 252;
    }
    function C0e(e) {
      return e.kind === 253;
    }
    function zf(e) {
      return e.kind === 254;
    }
    function $te(e) {
      return e.kind === 255;
    }
    function iw(e) {
      return e.kind === 256;
    }
    function c1(e) {
      return e.kind === 257;
    }
    function Mz(e) {
      return e.kind === 258;
    }
    function jS(e) {
      return e.kind === 259;
    }
    function E0e(e) {
      return e.kind === 260;
    }
    function ci(e) {
      return e.kind === 261;
    }
    function iu(e) {
      return e.kind === 262;
    }
    function Xc(e) {
      return e.kind === 263;
    }
    function sl(e) {
      return e.kind === 264;
    }
    function au(e) {
      return e.kind === 265;
    }
    function Kp(e) {
      return e.kind === 266;
    }
    function l1(e) {
      return e.kind === 267;
    }
    function Qc(e) {
      return e.kind === 268;
    }
    function Vd(e) {
      return e.kind === 269;
    }
    function aw(e) {
      return e.kind === 270;
    }
    function cN(e) {
      return e.kind === 271;
    }
    function bl(e) {
      return e.kind === 272;
    }
    function ic(e) {
      return e.kind === 273;
    }
    function hd(e) {
      return e.kind === 274;
    }
    function D0e(e) {
      return e.kind === 303;
    }
    function Xte(e) {
      return e.kind === 301;
    }
    function w0e(e) {
      return e.kind === 302;
    }
    function BS(e) {
      return e.kind === 301;
    }
    function Qte(e) {
      return e.kind === 302;
    }
    function nh(e) {
      return e.kind === 275;
    }
    function gg(e) {
      return e.kind === 281;
    }
    function Nm(e) {
      return e.kind === 276;
    }
    function p_(e) {
      return e.kind === 277;
    }
    function Xo(e) {
      return e.kind === 278;
    }
    function tl(e) {
      return e.kind === 279;
    }
    function Pp(e) {
      return e.kind === 280;
    }
    function $u(e) {
      return e.kind === 282;
    }
    function tF(e) {
      return e.kind === 80 || e.kind === 11;
    }
    function P0e(e) {
      return e.kind === 283;
    }
    function Yte(e) {
      return e.kind === 354;
    }
    function gk(e) {
      return e.kind === 358;
    }
    function qh(e) {
      return e.kind === 284;
    }
    function Im(e) {
      return e.kind === 285;
    }
    function JS(e) {
      return e.kind === 286;
    }
    function qd(e) {
      return e.kind === 287;
    }
    function Qb(e) {
      return e.kind === 288;
    }
    function Dv(e) {
      return e.kind === 289;
    }
    function yd(e) {
      return e.kind === 290;
    }
    function Zte(e) {
      return e.kind === 291;
    }
    function Om(e) {
      return e.kind === 292;
    }
    function Yb(e) {
      return e.kind === 293;
    }
    function hk(e) {
      return e.kind === 294;
    }
    function O6(e) {
      return e.kind === 295;
    }
    function Gd(e) {
      return e.kind === 296;
    }
    function F6(e) {
      return e.kind === 297;
    }
    function L6(e) {
      return e.kind === 298;
    }
    function kf(e) {
      return e.kind === 299;
    }
    function Zb(e) {
      return e.kind === 300;
    }
    function ol(e) {
      return e.kind === 304;
    }
    function Nu(e) {
      return e.kind === 305;
    }
    function ih(e) {
      return e.kind === 306;
    }
    function Gh(e) {
      return e.kind === 307;
    }
    function Pi(e) {
      return e.kind === 308;
    }
    function Kte(e) {
      return e.kind === 309;
    }
    function wv(e) {
      return e.kind === 310;
    }
    function sw(e) {
      return e.kind === 311;
    }
    function Pv(e) {
      return e.kind === 312;
    }
    function ere(e) {
      return e.kind === 325;
    }
    function tre(e) {
      return e.kind === 326;
    }
    function A0e(e) {
      return e.kind === 327;
    }
    function rre(e) {
      return e.kind === 313;
    }
    function nre(e) {
      return e.kind === 314;
    }
    function M6(e) {
      return e.kind === 315;
    }
    function rF(e) {
      return e.kind === 316;
    }
    function Rz(e) {
      return e.kind === 317;
    }
    function R6(e) {
      return e.kind === 318;
    }
    function nF(e) {
      return e.kind === 319;
    }
    function N0e(e) {
      return e.kind === 320;
    }
    function Hd(e) {
      return e.kind === 321;
    }
    function zS(e) {
      return e.kind === 323;
    }
    function z0(e) {
      return e.kind === 324;
    }
    function yk(e) {
      return e.kind === 329;
    }
    function I0e(e) {
      return e.kind === 331;
    }
    function ire(e) {
      return e.kind === 333;
    }
    function jz(e) {
      return e.kind === 339;
    }
    function Bz(e) {
      return e.kind === 334;
    }
    function Jz(e) {
      return e.kind === 335;
    }
    function zz(e) {
      return e.kind === 336;
    }
    function Wz(e) {
      return e.kind === 337;
    }
    function iF(e) {
      return e.kind === 338;
    }
    function j6(e) {
      return e.kind === 340;
    }
    function Uz(e) {
      return e.kind === 332;
    }
    function O0e(e) {
      return e.kind === 348;
    }
    function lN(e) {
      return e.kind === 341;
    }
    function np(e) {
      return e.kind === 342;
    }
    function aF(e) {
      return e.kind === 343;
    }
    function Vz(e) {
      return e.kind === 344;
    }
    function ow(e) {
      return e.kind === 345;
    }
    function ed(e) {
      return e.kind === 346;
    }
    function WS(e) {
      return e.kind === 347;
    }
    function F0e(e) {
      return e.kind === 328;
    }
    function are(e) {
      return e.kind === 349;
    }
    function sF(e) {
      return e.kind === 330;
    }
    function oF(e) {
      return e.kind === 351;
    }
    function L0e(e) {
      return e.kind === 350;
    }
    function Fm(e) {
      return e.kind === 352;
    }
    function B6(e) {
      return e.kind === 353;
    }
    var cw = /* @__PURE__ */ new WeakMap();
    function qz(e, t) {
      var n;
      const i = e.kind;
      return Q7(i) ? i === 353 ? e._children : (n = cw.get(t)) == null ? void 0 : n.get(e) : Te;
    }
    function sre(e, t, n) {
      e.kind === 353 && E.fail("Should not need to re-set the children of a SyntaxList.");
      let i = cw.get(t);
      return i === void 0 && (i = /* @__PURE__ */ new WeakMap(), cw.set(t, i)), i.set(e, n), n;
    }
    function Gz(e, t) {
      var n;
      e.kind === 353 && E.fail("Did not expect to unset the children of a SyntaxList."), (n = cw.get(t)) == null || n.delete(e);
    }
    function ore(e, t) {
      const n = cw.get(e);
      n !== void 0 && (cw.delete(e), cw.set(t, n));
    }
    function uN(e) {
      return e.createExportDeclaration(void 0, !1, e.createNamedExports([]), void 0);
    }
    function US(e, t, n, i) {
      if (_s(n)) return pt(e.createElementAccessExpression(t, n.expression), i);
      {
        const a = pt(Jg(n) ? e.createPropertyAccessExpression(t, n) : e.createElementAccessExpression(t, n), n);
        return wm(a, 128), a;
      }
    }
    function cre(e, t) {
      const n = Nv.createIdentifier(e || "React");
      return eo(n, Ca(t)), n;
    }
    function lre(e, t, n) {
      if (k_(t)) {
        const i = lre(e, t.left, n), a = e.createIdentifier(On(t.right));
        return a.escapedText = t.right.escapedText, e.createPropertyAccessExpression(i, a);
      } else return cre(On(t), n);
    }
    function Hz(e, t, n, i) {
      return t ? lre(e, t, i) : e.createPropertyAccessExpression(cre(n, i), "createElement");
    }
    function vLe(e, t, n, i) {
      return t ? lre(e, t, i) : e.createPropertyAccessExpression(cre(n, i), "Fragment");
    }
    function ure(e, t, n, i, a, o) {
      const c = [n];
      if (i && c.push(i), a && a.length > 0)
        if (i || c.push(e.createNull()), a.length > 1) for (const _ of a)
          Xu(_), c.push(_);
        else c.push(a[0]);
      return pt(e.createCallExpression(t, void 0, c), o);
    }
    function _re(e, t, n, i, a, o, c) {
      const _ = [vLe(e, n, i, o), e.createNull()];
      if (a && a.length > 0) if (a.length > 1) for (const u of a)
        Xu(u), _.push(u);
      else _.push(a[0]);
      return pt(e.createCallExpression(Hz(e, t, i, o), void 0, _), c);
    }
    function $z(e, t, n) {
      if (iu(t)) {
        const i = js(t.declarations), a = e.updateVariableDeclaration(i, i.name, void 0, void 0, n);
        return pt(e.createVariableStatement(void 0, e.updateVariableDeclarationList(t, [a])), t);
      } else {
        const i = pt(e.createAssignment(t, n), t);
        return pt(e.createExpressionStatement(i), t);
      }
    }
    function _N(e, t) {
      if (k_(t)) {
        const n = _N(e, t.left), i = eo(pt(e.cloneNode(t.right), t.right), t.right.parent);
        return pt(e.createPropertyAccessExpression(n, i), t);
      } else return eo(pt(e.cloneNode(t), t), t.parent);
    }
    function Xz(e, t) {
      return Fe(t) ? e.createStringLiteralFromNode(t) : _s(t) ? eo(pt(e.cloneNode(t.expression), t.expression), t.expression.parent) : eo(pt(e.cloneNode(t), t), t.parent);
    }
    function bLe(e, t, n, i, a) {
      const { firstAccessor: o, getAccessor: c, setAccessor: _ } = Bb(t, n);
      if (n === o) return pt(e.createObjectDefinePropertyCall(i, Xz(e, n.name), e.createPropertyDescriptor({
        enumerable: e.createFalse(),
        configurable: !0,
        get: c && pt(Fn(e.createFunctionExpression(kb(c), void 0, void 0, void 0, c.parameters, void 0, c.body), c), c),
        set: _ && pt(Fn(e.createFunctionExpression(kb(_), void 0, void 0, void 0, _.parameters, void 0, _.body), _), _)
      }, !a)), o);
    }
    function SLe(e, t, n) {
      return Fn(pt(e.createAssignment(US(e, n, t.name, t.name), t.initializer), t), t);
    }
    function TLe(e, t, n) {
      return Fn(pt(e.createAssignment(US(e, n, t.name, t.name), e.cloneNode(t.name)), t), t);
    }
    function xLe(e, t, n) {
      return Fn(pt(e.createAssignment(US(e, n, t.name, t.name), Fn(pt(e.createFunctionExpression(kb(t), t.asteriskToken, void 0, void 0, t.parameters, void 0, t.body), t), t)), t), t);
    }
    function fre(e, t, n, i) {
      switch (n.name && Oi(n.name) && E.failBadSyntaxKind(n.name, "Private identifiers are not allowed in object literals."), n.kind) {
        case 178:
        case 179:
          return bLe(e, t.properties, n, i, !!t.multiLine);
        case 304:
          return SLe(e, n, i);
        case 305:
          return TLe(e, n, i);
        case 175:
          return xLe(e, n, i);
      }
    }
    function cF(e, t, n, i, a) {
      const o = t.operator;
      E.assert(o === 46 || o === 47, "Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");
      const c = e.createTempVariable(i);
      n = e.createAssignment(c, n), pt(n, t.operand);
      let _ = kv(t) ? e.createPrefixUnaryExpression(o, c) : e.createPostfixUnaryExpression(c, o);
      return pt(_, t), a && (_ = e.createAssignment(a, _), pt(_, t)), n = e.createComma(n, _), pt(n, t), Oz(t) && (n = e.createComma(n, c), pt(n, t)), n;
    }
    function Qz(e) {
      return (Bs(e) & 65536) !== 0;
    }
    function Hh(e) {
      return (Bs(e) & 32768) !== 0;
    }
    function lF(e) {
      return (Bs(e) & 16384) !== 0;
    }
    function M0e(e) {
      return Ts(e.expression) && e.expression.text === "use strict";
    }
    function Yz(e) {
      for (const t of e) if (bm(t)) {
        if (M0e(t)) return t;
      } else break;
    }
    function pre(e) {
      const t = ul(e);
      return t !== void 0 && bm(t) && M0e(t);
    }
    function fN(e) {
      return e.kind === 227 && e.operatorToken.kind === 28;
    }
    function lw(e) {
      return fN(e) || nw(e);
    }
    function Kb(e) {
      return E_(e) && rn(e) && !!iv(e);
    }
    function J6(e) {
      const t = k0(e);
      return E.assertIsDefined(t), t;
    }
    function uF(e, t = 63) {
      switch (e.kind) {
        case 218:
          return t & -2147483648 && Kb(e) ? !1 : (t & 1) !== 0;
        case 217:
        case 235:
          return (t & 2) !== 0;
        case 239:
          return (t & 34) !== 0;
        case 234:
          return (t & 16) !== 0;
        case 236:
          return (t & 4) !== 0;
        case 356:
          return (t & 8) !== 0;
      }
      return !1;
    }
    function Ic(e, t = 63) {
      for (; uF(e, t); ) e = e.expression;
      return e;
    }
    function dre(e, t = 63) {
      let n = e.parent;
      for (; uF(n, t); )
        n = n.parent, E.assert(n);
      return n;
    }
    function Xu(e) {
      return WO(e, !0);
    }
    function pN(e) {
      const t = rc(e, Pi), n = t && t.emitNode;
      return n && n.externalHelpersModuleName;
    }
    function mre(e) {
      const t = rc(e, Pi), n = t && t.emitNode;
      return !!n && (!!n.externalHelpersModuleName || !!n.externalHelpers);
    }
    function Zz(e, t, n, i, a, o, c) {
      if (i.importHelpers && r6(n, i)) {
        const _ = u_(i), u = QS(n, i), d = kLe(n);
        if (u !== 1 && (_ >= 5 && _ <= 99 || u === 99 || u === void 0 && _ === 200)) {
          if (d) {
            const g = [];
            for (const h of d) {
              const S = h.importName;
              S && hp(g, S);
            }
            if (_t(g)) {
              g.sort(Du);
              const h = e.createNamedImports(or(g, (k) => f5(n, k) ? e.createImportSpecifier(!1, void 0, e.createIdentifier(k)) : e.createImportSpecifier(!1, e.createIdentifier(k), t.getUnscopedHelperName(k)))), S = Au(rc(n, Pi));
              S.externalHelpers = !0;
              const T = e.createImportDeclaration(void 0, e.createImportClause(void 0, void 0, h), e.createStringLiteral(Vy), void 0);
              return AS(T, 2), T;
            }
          }
        } else {
          const g = CLe(e, n, i, d, a, o || c);
          if (g) {
            const h = e.createImportEqualsDeclaration(void 0, !1, g, e.createExternalModuleReference(e.createStringLiteral(Vy)));
            return AS(h, 2), h;
          }
        }
      }
    }
    function kLe(e) {
      return dn(Tz(e), (t) => !t.scoped);
    }
    function CLe(e, t, n, i, a, o) {
      const c = pN(t);
      if (c) return c;
      if (_t(i) || (a || Dm(n) && o) && Fw(t, n) < 4) {
        const _ = Au(rc(t, Pi));
        return _.externalHelpersModuleName || (_.externalHelpersModuleName = e.createUniqueName(Vy));
      }
    }
    function z6(e, t, n) {
      const i = u6(t);
      if (i && !TS(t) && !d5(t)) {
        const a = i.name;
        return a.kind === 11 ? e.getGeneratedNameForNode(t) : Ko(a) ? a : e.createIdentifier(Pb(n, a) || On(a));
      }
      if (t.kind === 273 && t.importClause || t.kind === 279 && t.moduleSpecifier) return e.getGeneratedNameForNode(t);
    }
    function vk(e, t, n, i, a, o) {
      const c = Lx(t);
      if (c && Ts(c)) return DLe(t, i, e, a, o) || ELe(e, c, n) || e.cloneNode(c);
    }
    function ELe(e, t, n) {
      const i = n.renamedDependencies && n.renamedDependencies.get(t.text);
      return i ? e.createStringLiteral(i) : void 0;
    }
    function dN(e, t, n, i) {
      if (t) {
        if (t.moduleName) return e.createStringLiteral(t.moduleName);
        if (!t.isDeclarationFile && i.outFile) return e.createStringLiteral(dJ(n, t.fileName));
      }
    }
    function DLe(e, t, n, i, a) {
      return dN(n, i.getExternalModuleFileFromDeclaration(e), t, a);
    }
    function mN(e) {
      if (N3(e)) return e.initializer;
      if (ol(e)) {
        const t = e.initializer;
        return Hl(t, !0) ? t.right : void 0;
      }
      if (Nu(e)) return e.objectAssignmentInitializer;
      if (Hl(e, !0)) return e.right;
      if (wp(e)) return mN(e.expression);
    }
    function u1(e) {
      if (N3(e)) return e.name;
      if (zg(e)) {
        switch (e.kind) {
          case 304:
            return u1(e.initializer);
          case 305:
            return e.name;
          case 306:
            return u1(e.expression);
        }
        return;
      }
      return Hl(e, !0) ? u1(e.left) : wp(e) ? u1(e.expression) : e;
    }
    function _F(e) {
      switch (e.kind) {
        case 170:
        case 209:
          return e.dotDotDotToken;
        case 231:
        case 306:
          return e;
      }
    }
    function Kz(e) {
      const t = fF(e);
      return E.assert(!!t || ih(e), "Invalid property name for binding element."), t;
    }
    function fF(e) {
      switch (e.kind) {
        case 209:
          if (e.propertyName) {
            const n = e.propertyName;
            return Oi(n) ? E.failBadSyntaxKind(n) : _s(n) && R0e(n.expression) ? n.expression : n;
          }
          break;
        case 304:
          if (e.name) {
            const n = e.name;
            return Oi(n) ? E.failBadSyntaxKind(n) : _s(n) && R0e(n.expression) ? n.expression : n;
          }
          break;
        case 306:
          return e.name && Oi(e.name) ? E.failBadSyntaxKind(e.name) : e.name;
      }
      const t = u1(e);
      if (t && il(t)) return t;
    }
    function R0e(e) {
      const t = e.kind;
      return t === 11 || t === 9;
    }
    function W6(e) {
      switch (e.kind) {
        case 207:
        case 208:
        case 210:
          return e.elements;
        case 211:
          return e.properties;
      }
    }
    function eW(e) {
      if (e) {
        let t = e;
        for (; ; ) {
          if (Fe(t) || !t.body) return Fe(t) ? t : t.name;
          t = t.body;
        }
      }
    }
    function j0e(e) {
      const t = e.kind;
      return t === 177 || t === 179;
    }
    function gre(e) {
      const t = e.kind;
      return t === 177 || t === 178 || t === 179;
    }
    function tW(e) {
      const t = e.kind;
      return t === 304 || t === 305 || t === 263 || t === 177 || t === 182 || t === 176 || t === 283 || t === 244 || t === 265 || t === 266 || t === 267 || t === 268 || t === 272 || t === 273 || t === 271 || t === 279 || t === 278;
    }
    function hre(e) {
      const t = e.kind;
      return t === 176 || t === 304 || t === 305 || t === 283 || t === 271;
    }
    function yre(e) {
      return a1(e) || iN(e);
    }
    function vre(e) {
      return Fe(e) || rw(e);
    }
    function bre(e) {
      return Jte(e) || wz(e) || Pz(e);
    }
    function Sre(e) {
      return a1(e) || wz(e) || Pz(e);
    }
    function Tre(e) {
      return Fe(e) || Ts(e);
    }
    function wLe(e) {
      return e === 43;
    }
    function PLe(e) {
      return e === 42 || e === 44 || e === 45;
    }
    function ALe(e) {
      return wLe(e) || PLe(e);
    }
    function NLe(e) {
      return e === 40 || e === 41;
    }
    function ILe(e) {
      return NLe(e) || ALe(e);
    }
    function OLe(e) {
      return e === 48 || e === 49 || e === 50;
    }
    function rW(e) {
      return OLe(e) || ILe(e);
    }
    function FLe(e) {
      return e === 30 || e === 33 || e === 32 || e === 34 || e === 104 || e === 103;
    }
    function LLe(e) {
      return FLe(e) || rW(e);
    }
    function MLe(e) {
      return e === 35 || e === 37 || e === 36 || e === 38;
    }
    function RLe(e) {
      return MLe(e) || LLe(e);
    }
    function jLe(e) {
      return e === 51 || e === 52 || e === 53;
    }
    function BLe(e) {
      return jLe(e) || RLe(e);
    }
    function JLe(e) {
      return e === 56 || e === 57;
    }
    function zLe(e) {
      return JLe(e) || BLe(e);
    }
    function WLe(e) {
      return e === 61 || zLe(e) || Uh(e);
    }
    function ULe(e) {
      return WLe(e) || e === 28;
    }
    function xre(e) {
      return ULe(e.kind);
    }
    var nW;
    ((e) => {
      function t(g, h, S, T, k, D, P) {
        const N = h > 0 ? k[h - 1] : void 0;
        return E.assertEqual(S[h], t), k[h] = g.onEnter(T[h], N, P), S[h] = _(g, t), h;
      }
      e.enter = t;
      function n(g, h, S, T, k, D, P) {
        E.assertEqual(S[h], n), E.assertIsDefined(g.onLeft), S[h] = _(g, n);
        const N = g.onLeft(T[h].left, k[h], T[h]);
        return N ? (d(h, T, N), u(h, S, T, k, N)) : h;
      }
      e.left = n;
      function i(g, h, S, T, k, D, P) {
        return E.assertEqual(S[h], i), E.assertIsDefined(g.onOperator), S[h] = _(g, i), g.onOperator(T[h].operatorToken, k[h], T[h]), h;
      }
      e.operator = i;
      function a(g, h, S, T, k, D, P) {
        E.assertEqual(S[h], a), E.assertIsDefined(g.onRight), S[h] = _(g, a);
        const N = g.onRight(T[h].right, k[h], T[h]);
        return N ? (d(h, T, N), u(h, S, T, k, N)) : h;
      }
      e.right = a;
      function o(g, h, S, T, k, D, P) {
        E.assertEqual(S[h], o), S[h] = _(g, o);
        const N = g.onExit(T[h], k[h]);
        if (h > 0) {
          if (h--, g.foldState) {
            const M = S[h] === o ? "right" : "left";
            k[h] = g.foldState(k[h], N, M);
          }
        } else D.value = N;
        return h;
      }
      e.exit = o;
      function c(g, h, S, T, k, D, P) {
        return E.assertEqual(S[h], c), h;
      }
      e.done = c;
      function _(g, h) {
        switch (h) {
          case t:
            if (g.onLeft) return n;
          case n:
            if (g.onOperator) return i;
          case i:
            if (g.onRight) return a;
          case a:
            return o;
          case o:
            return c;
          case c:
            return c;
          default:
            E.fail("Invalid state");
        }
      }
      e.nextState = _;
      function u(g, h, S, T, k) {
        return g++, h[g] = t, S[g] = k, T[g] = void 0, g;
      }
      function d(g, h, S) {
        if (E.shouldAssert(2)) for (; g >= 0; )
          E.assert(h[g] !== S, "Circular traversal detected."), g--;
      }
    })(nW || (nW = {}));
    var VLe = class {
      constructor(e, t, n, i, a, o) {
        this.onEnter = e, this.onLeft = t, this.onOperator = n, this.onRight = i, this.onExit = a, this.foldState = o;
      }
    };
    function pF(e, t, n, i, a, o) {
      const c = new VLe(e, t, n, i, a, o);
      return _;
      function _(u, d) {
        const g = { value: void 0 }, h = [nW.enter], S = [u], T = [void 0];
        let k = 0;
        for (; h[k] !== nW.done; ) k = h[k](c, k, h, S, T, g, d);
        return E.assertEqual(k, 0), g.value;
      }
    }
    function qLe(e) {
      return e === 95 || e === 90;
    }
    function gN(e) {
      const t = e.kind;
      return qLe(t);
    }
    function kre(e, t) {
      if (t !== void 0)
        return t.length === 0 ? t : pt(e.createNodeArray([], t.hasTrailingComma), t);
    }
    function hN(e) {
      var t;
      const n = e.emitNode.autoGenerate;
      if (n.flags & 4) {
        const i = n.id;
        let a = e, o = a.original;
        for (; o; ) {
          a = o;
          const c = (t = a.emitNode) == null ? void 0 : t.autoGenerate;
          if (Jg(a) && (c === void 0 || c.flags & 4 && c.id !== i)) break;
          o = a.original;
        }
        return a;
      }
      return e;
    }
    function U6(e, t) {
      return typeof e == "object" ? Av(!1, e.prefix, e.node, e.suffix, t) : typeof e == "string" ? e.length > 0 && e.charCodeAt(0) === 35 ? e.slice(1) : e : "";
    }
    function GLe(e, t) {
      return typeof e == "string" ? e : HLe(e, E.checkDefined(t));
    }
    function HLe(e, t) {
      return fS(e) ? t(e).slice(1) : Ko(e) ? t(e) : Oi(e) ? e.escapedText.slice(1) : On(e);
    }
    function Av(e, t, n, i, a) {
      return t = U6(t, a), i = U6(i, a), n = GLe(n, a), `${e ? "#" : ""}${t}${n}${i}`;
    }
    function iW(e, t, n, i) {
      return e.updatePropertyDeclaration(t, n, e.getGeneratedPrivateNameForNode(t.name, void 0, "_accessor_storage"), void 0, void 0, i);
    }
    function Cre(e, t, n, i, a = e.createThis()) {
      return e.createGetAccessorDeclaration(n, i, [], void 0, e.createBlock([e.createReturnStatement(e.createPropertyAccessExpression(a, e.getGeneratedPrivateNameForNode(t.name, void 0, "_accessor_storage")))]));
    }
    function Ere(e, t, n, i, a = e.createThis()) {
      return e.createSetAccessorDeclaration(n, i, [e.createParameterDeclaration(void 0, void 0, "value")], e.createBlock([e.createExpressionStatement(e.createAssignment(e.createPropertyAccessExpression(a, e.getGeneratedPrivateNameForNode(t.name, void 0, "_accessor_storage")), e.createIdentifier("value")))]));
    }
    function dF(e) {
      let t = e.expression;
      for (; ; ) {
        if (t = Ic(t), nw(t)) {
          t = ws(t.elements);
          continue;
        }
        if (fN(t)) {
          t = t.right;
          continue;
        }
        if (Hl(t, !0) && Ko(t.left)) return t;
        break;
      }
    }
    function $Le(e) {
      return E_(e) && wo(e) && !e.emitNode;
    }
    function mF(e, t) {
      if ($Le(e)) mF(e.expression, t);
      else if (fN(e))
        mF(e.left, t), mF(e.right, t);
      else if (nw(e)) for (const n of e.elements) mF(n, t);
      else t.push(e);
    }
    function Dre(e) {
      const t = [];
      return mF(e, t), t;
    }
    function yN(e) {
      if (e.transformFlags & 65536) return !0;
      if (e.transformFlags & 128) for (const t of W6(e)) {
        const n = u1(t);
        if (n && Q4(n) && (n.transformFlags & 65536 || n.transformFlags & 128 && yN(n)))
          return !0;
      }
      return !1;
    }
    function pt(e, t) {
      return t ? Ud(e, t.pos, t.end) : e;
    }
    function vd(e) {
      const t = e.kind;
      return t === 169 || t === 170 || t === 172 || t === 173 || t === 174 || t === 175 || t === 177 || t === 178 || t === 179 || t === 182 || t === 186 || t === 219 || t === 220 || t === 232 || t === 244 || t === 263 || t === 264 || t === 265 || t === 266 || t === 267 || t === 268 || t === 272 || t === 273 || t === 278 || t === 279;
    }
    function e2(e) {
      const t = e.kind;
      return t === 170 || t === 173 || t === 175 || t === 178 || t === 179 || t === 232 || t === 264;
    }
    var B0e, J0e, z0e, W0e, U0e, wre = {
      createBaseSourceFileNode: (e) => new (U0e || (U0e = gu.getSourceFileConstructor()))(e, -1, -1),
      createBaseIdentifierNode: (e) => new (z0e || (z0e = gu.getIdentifierConstructor()))(e, -1, -1),
      createBasePrivateIdentifierNode: (e) => new (W0e || (W0e = gu.getPrivateIdentifierConstructor()))(e, -1, -1),
      createBaseTokenNode: (e) => new (J0e || (J0e = gu.getTokenConstructor()))(e, -1, -1),
      createBaseNode: (e) => new (B0e || (B0e = gu.getNodeConstructor()))(e, -1, -1)
    }, Nv = YA(1, wre);
    function Gt(e, t) {
      return t && e(t);
    }
    function Ai(e, t, n) {
      if (n) {
        if (t) return t(n);
        for (const i of n) {
          const a = e(i);
          if (a) return a;
        }
      }
    }
    function aW(e, t) {
      return e.charCodeAt(t + 1) === 42 && e.charCodeAt(t + 2) === 42 && e.charCodeAt(t + 3) !== 47;
    }
    function vN(e) {
      return bt(e.statements, XLe) || QLe(e);
    }
    function XLe(e) {
      return vd(e) && YLe(e, 95) || bl(e) && qh(e.moduleReference) || ic(e) || Xo(e) || tl(e) ? e : void 0;
    }
    function QLe(e) {
      return e.flags & 8388608 ? V0e(e) : void 0;
    }
    function V0e(e) {
      return ZLe(e) ? e : Fa(e, V0e);
    }
    function YLe(e, t) {
      return _t(e.modifiers, (n) => n.kind === t);
    }
    function ZLe(e) {
      return RS(e) && e.keywordToken === 102 && e.name.escapedText === "meta";
    }
    var KLe = {
      167: function(t, n, i) {
        return Gt(n, t.left) || Gt(n, t.right);
      },
      169: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.constraint) || Gt(n, t.default) || Gt(n, t.expression);
      },
      305: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.exclamationToken) || Gt(n, t.equalsToken) || Gt(n, t.objectAssignmentInitializer);
      },
      306: function(t, n, i) {
        return Gt(n, t.expression);
      },
      170: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.dotDotDotToken) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.type) || Gt(n, t.initializer);
      },
      173: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.exclamationToken) || Gt(n, t.type) || Gt(n, t.initializer);
      },
      172: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.type) || Gt(n, t.initializer);
      },
      304: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.exclamationToken) || Gt(n, t.initializer);
      },
      261: function(t, n, i) {
        return Gt(n, t.name) || Gt(n, t.exclamationToken) || Gt(n, t.type) || Gt(n, t.initializer);
      },
      209: function(t, n, i) {
        return Gt(n, t.dotDotDotToken) || Gt(n, t.propertyName) || Gt(n, t.name) || Gt(n, t.initializer);
      },
      182: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type);
      },
      186: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type);
      },
      185: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type);
      },
      180: q0e,
      181: q0e,
      175: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.asteriskToken) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.exclamationToken) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.body);
      },
      174: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.questionToken) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type);
      },
      177: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.body);
      },
      178: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.body);
      },
      179: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.body);
      },
      263: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.asteriskToken) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.body);
      },
      219: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.asteriskToken) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.body);
      },
      220: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Ai(n, i, t.typeParameters) || Ai(n, i, t.parameters) || Gt(n, t.type) || Gt(n, t.equalsGreaterThanToken) || Gt(n, t.body);
      },
      176: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.body);
      },
      184: function(t, n, i) {
        return Gt(n, t.typeName) || Ai(n, i, t.typeArguments);
      },
      183: function(t, n, i) {
        return Gt(n, t.assertsModifier) || Gt(n, t.parameterName) || Gt(n, t.type);
      },
      187: function(t, n, i) {
        return Gt(n, t.exprName) || Ai(n, i, t.typeArguments);
      },
      188: function(t, n, i) {
        return Ai(n, i, t.members);
      },
      189: function(t, n, i) {
        return Gt(n, t.elementType);
      },
      190: function(t, n, i) {
        return Ai(n, i, t.elements);
      },
      193: G0e,
      194: G0e,
      195: function(t, n, i) {
        return Gt(n, t.checkType) || Gt(n, t.extendsType) || Gt(n, t.trueType) || Gt(n, t.falseType);
      },
      196: function(t, n, i) {
        return Gt(n, t.typeParameter);
      },
      206: function(t, n, i) {
        return Gt(n, t.argument) || Gt(n, t.attributes) || Gt(n, t.qualifier) || Ai(n, i, t.typeArguments);
      },
      303: function(t, n, i) {
        return Gt(n, t.assertClause);
      },
      197: H0e,
      199: H0e,
      200: function(t, n, i) {
        return Gt(n, t.objectType) || Gt(n, t.indexType);
      },
      201: function(t, n, i) {
        return Gt(n, t.readonlyToken) || Gt(n, t.typeParameter) || Gt(n, t.nameType) || Gt(n, t.questionToken) || Gt(n, t.type) || Ai(n, i, t.members);
      },
      202: function(t, n, i) {
        return Gt(n, t.literal);
      },
      203: function(t, n, i) {
        return Gt(n, t.dotDotDotToken) || Gt(n, t.name) || Gt(n, t.questionToken) || Gt(n, t.type);
      },
      207: $0e,
      208: $0e,
      210: function(t, n, i) {
        return Ai(n, i, t.elements);
      },
      211: function(t, n, i) {
        return Ai(n, i, t.properties);
      },
      212: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.questionDotToken) || Gt(n, t.name);
      },
      213: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.questionDotToken) || Gt(n, t.argumentExpression);
      },
      214: X0e,
      215: X0e,
      216: function(t, n, i) {
        return Gt(n, t.tag) || Gt(n, t.questionDotToken) || Ai(n, i, t.typeArguments) || Gt(n, t.template);
      },
      217: function(t, n, i) {
        return Gt(n, t.type) || Gt(n, t.expression);
      },
      218: function(t, n, i) {
        return Gt(n, t.expression);
      },
      221: function(t, n, i) {
        return Gt(n, t.expression);
      },
      222: function(t, n, i) {
        return Gt(n, t.expression);
      },
      223: function(t, n, i) {
        return Gt(n, t.expression);
      },
      225: function(t, n, i) {
        return Gt(n, t.operand);
      },
      230: function(t, n, i) {
        return Gt(n, t.asteriskToken) || Gt(n, t.expression);
      },
      224: function(t, n, i) {
        return Gt(n, t.expression);
      },
      226: function(t, n, i) {
        return Gt(n, t.operand);
      },
      227: function(t, n, i) {
        return Gt(n, t.left) || Gt(n, t.operatorToken) || Gt(n, t.right);
      },
      235: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.type);
      },
      236: function(t, n, i) {
        return Gt(n, t.expression);
      },
      239: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.type);
      },
      237: function(t, n, i) {
        return Gt(n, t.name);
      },
      228: function(t, n, i) {
        return Gt(n, t.condition) || Gt(n, t.questionToken) || Gt(n, t.whenTrue) || Gt(n, t.colonToken) || Gt(n, t.whenFalse);
      },
      231: function(t, n, i) {
        return Gt(n, t.expression);
      },
      242: Q0e,
      269: Q0e,
      308: function(t, n, i) {
        return Ai(n, i, t.statements) || Gt(n, t.endOfFileToken);
      },
      244: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.declarationList);
      },
      262: function(t, n, i) {
        return Ai(n, i, t.declarations);
      },
      245: function(t, n, i) {
        return Gt(n, t.expression);
      },
      246: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.thenStatement) || Gt(n, t.elseStatement);
      },
      247: function(t, n, i) {
        return Gt(n, t.statement) || Gt(n, t.expression);
      },
      248: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.statement);
      },
      249: function(t, n, i) {
        return Gt(n, t.initializer) || Gt(n, t.condition) || Gt(n, t.incrementor) || Gt(n, t.statement);
      },
      250: function(t, n, i) {
        return Gt(n, t.initializer) || Gt(n, t.expression) || Gt(n, t.statement);
      },
      251: function(t, n, i) {
        return Gt(n, t.awaitModifier) || Gt(n, t.initializer) || Gt(n, t.expression) || Gt(n, t.statement);
      },
      252: Y0e,
      253: Y0e,
      254: function(t, n, i) {
        return Gt(n, t.expression);
      },
      255: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.statement);
      },
      256: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.caseBlock);
      },
      270: function(t, n, i) {
        return Ai(n, i, t.clauses);
      },
      297: function(t, n, i) {
        return Gt(n, t.expression) || Ai(n, i, t.statements);
      },
      298: function(t, n, i) {
        return Ai(n, i, t.statements);
      },
      257: function(t, n, i) {
        return Gt(n, t.label) || Gt(n, t.statement);
      },
      258: function(t, n, i) {
        return Gt(n, t.expression);
      },
      259: function(t, n, i) {
        return Gt(n, t.tryBlock) || Gt(n, t.catchClause) || Gt(n, t.finallyBlock);
      },
      300: function(t, n, i) {
        return Gt(n, t.variableDeclaration) || Gt(n, t.block);
      },
      171: function(t, n, i) {
        return Gt(n, t.expression);
      },
      264: Z0e,
      232: Z0e,
      265: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Ai(n, i, t.heritageClauses) || Ai(n, i, t.members);
      },
      266: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Ai(n, i, t.typeParameters) || Gt(n, t.type);
      },
      267: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Ai(n, i, t.members);
      },
      307: function(t, n, i) {
        return Gt(n, t.name) || Gt(n, t.initializer);
      },
      268: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.body);
      },
      272: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name) || Gt(n, t.moduleReference);
      },
      273: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.importClause) || Gt(n, t.moduleSpecifier) || Gt(n, t.attributes);
      },
      274: function(t, n, i) {
        return Gt(n, t.name) || Gt(n, t.namedBindings);
      },
      301: function(t, n, i) {
        return Ai(n, i, t.elements);
      },
      302: function(t, n, i) {
        return Gt(n, t.name) || Gt(n, t.value);
      },
      271: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.name);
      },
      275: function(t, n, i) {
        return Gt(n, t.name);
      },
      281: function(t, n, i) {
        return Gt(n, t.name);
      },
      276: K0e,
      280: K0e,
      279: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.exportClause) || Gt(n, t.moduleSpecifier) || Gt(n, t.attributes);
      },
      277: eye,
      282: eye,
      278: function(t, n, i) {
        return Ai(n, i, t.modifiers) || Gt(n, t.expression);
      },
      229: function(t, n, i) {
        return Gt(n, t.head) || Ai(n, i, t.templateSpans);
      },
      240: function(t, n, i) {
        return Gt(n, t.expression) || Gt(n, t.literal);
      },
      204: function(t, n, i) {
        return Gt(n, t.head) || Ai(n, i, t.templateSpans);
      },
      205: function(t, n, i) {
        return Gt(n, t.type) || Gt(n, t.literal);
      },
      168: function(t, n, i) {
        return Gt(n, t.expression);
      },
      299: function(t, n, i) {
        return Ai(n, i, t.types);
      },
      234: function(t, n, i) {
        return Gt(n, t.expression) || Ai(n, i, t.typeArguments);
      },
      284: function(t, n, i) {
        return Gt(n, t.expression);
      },
      283: function(t, n, i) {
        return Ai(n, i, t.modifiers);
      },
      357: function(t, n, i) {
        return Ai(n, i, t.elements);
      },
      285: function(t, n, i) {
        return Gt(n, t.openingElement) || Ai(n, i, t.children) || Gt(n, t.closingElement);
      },
      289: function(t, n, i) {
        return Gt(n, t.openingFragment) || Ai(n, i, t.children) || Gt(n, t.closingFragment);
      },
      286: tye,
      287: tye,
      293: function(t, n, i) {
        return Ai(n, i, t.properties);
      },
      292: function(t, n, i) {
        return Gt(n, t.name) || Gt(n, t.initializer);
      },
      294: function(t, n, i) {
        return Gt(n, t.expression);
      },
      295: function(t, n, i) {
        return Gt(n, t.dotDotDotToken) || Gt(n, t.expression);
      },
      288: function(t, n, i) {
        return Gt(n, t.tagName);
      },
      296: function(t, n, i) {
        return Gt(n, t.namespace) || Gt(n, t.name);
      },
      191: uw,
      192: uw,
      310: uw,
      316: uw,
      315: uw,
      317: uw,
      319: uw,
      318: function(t, n, i) {
        return Ai(n, i, t.parameters) || Gt(n, t.type);
      },
      321: function(t, n, i) {
        return (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment)) || Ai(n, i, t.tags);
      },
      348: function(t, n, i) {
        return Gt(n, t.tagName) || Gt(n, t.name) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment));
      },
      311: function(t, n, i) {
        return Gt(n, t.name);
      },
      312: function(t, n, i) {
        return Gt(n, t.left) || Gt(n, t.right);
      },
      342: rye,
      349: rye,
      331: function(t, n, i) {
        return Gt(n, t.tagName) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment));
      },
      330: function(t, n, i) {
        return Gt(n, t.tagName) || Gt(n, t.class) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment));
      },
      329: function(t, n, i) {
        return Gt(n, t.tagName) || Gt(n, t.class) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment));
      },
      346: function(t, n, i) {
        return Gt(n, t.tagName) || Gt(n, t.constraint) || Ai(n, i, t.typeParameters) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment));
      },
      347: function(t, n, i) {
        return Gt(n, t.tagName) || (t.typeExpression && t.typeExpression.kind === 310 ? Gt(n, t.typeExpression) || Gt(n, t.fullName) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment)) : Gt(n, t.fullName) || Gt(n, t.typeExpression) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment)));
      },
      339: function(t, n, i) {
        return Gt(n, t.tagName) || Gt(n, t.fullName) || Gt(n, t.typeExpression) || (typeof t.comment == "string" ? void 0 : Ai(n, i, t.comment));
      },
      343: _w,
      345: _w,
      344: _w,
      341: _w,
      351: _w,
      350: _w,
      340: _w,
      324: function(t, n, i) {
        return bt(t.typeParameters, n) || bt(t.parameters, n) || Gt(n, t.type);
      },
      325: Pre,
      326: Pre,
      327: Pre,
      323: function(t, n, i) {
        return bt(t.jsDocPropertyTags, n);
      },
      328: V6,
      333: V6,
      334: V6,
      335: V6,
      336: V6,
      337: V6,
      332: V6,
      338: V6,
      352: eMe,
      356: tMe
    };
    function q0e(e, t, n) {
      return Ai(t, n, e.typeParameters) || Ai(t, n, e.parameters) || Gt(t, e.type);
    }
    function G0e(e, t, n) {
      return Ai(t, n, e.types);
    }
    function H0e(e, t, n) {
      return Gt(t, e.type);
    }
    function $0e(e, t, n) {
      return Ai(t, n, e.elements);
    }
    function X0e(e, t, n) {
      return Gt(t, e.expression) || Gt(t, e.questionDotToken) || Ai(t, n, e.typeArguments) || Ai(t, n, e.arguments);
    }
    function Q0e(e, t, n) {
      return Ai(t, n, e.statements);
    }
    function Y0e(e, t, n) {
      return Gt(t, e.label);
    }
    function Z0e(e, t, n) {
      return Ai(t, n, e.modifiers) || Gt(t, e.name) || Ai(t, n, e.typeParameters) || Ai(t, n, e.heritageClauses) || Ai(t, n, e.members);
    }
    function K0e(e, t, n) {
      return Ai(t, n, e.elements);
    }
    function eye(e, t, n) {
      return Gt(t, e.propertyName) || Gt(t, e.name);
    }
    function tye(e, t, n) {
      return Gt(t, e.tagName) || Ai(t, n, e.typeArguments) || Gt(t, e.attributes);
    }
    function uw(e, t, n) {
      return Gt(t, e.type);
    }
    function rye(e, t, n) {
      return Gt(t, e.tagName) || (e.isNameFirst ? Gt(t, e.name) || Gt(t, e.typeExpression) : Gt(t, e.typeExpression) || Gt(t, e.name)) || (typeof e.comment == "string" ? void 0 : Ai(t, n, e.comment));
    }
    function _w(e, t, n) {
      return Gt(t, e.tagName) || Gt(t, e.typeExpression) || (typeof e.comment == "string" ? void 0 : Ai(t, n, e.comment));
    }
    function Pre(e, t, n) {
      return Gt(t, e.name);
    }
    function V6(e, t, n) {
      return Gt(t, e.tagName) || (typeof e.comment == "string" ? void 0 : Ai(t, n, e.comment));
    }
    function eMe(e, t, n) {
      return Gt(t, e.tagName) || Gt(t, e.importClause) || Gt(t, e.moduleSpecifier) || Gt(t, e.attributes) || (typeof e.comment == "string" ? void 0 : Ai(t, n, e.comment));
    }
    function tMe(e, t, n) {
      return Gt(t, e.expression);
    }
    function Fa(e, t, n) {
      if (e === void 0 || e.kind <= 166) return;
      const i = KLe[e.kind];
      return i === void 0 ? void 0 : i(e, t, n);
    }
    function bk(e, t, n) {
      const i = nye(e), a = [];
      for (; a.length < i.length; ) a.push(e);
      for (; i.length !== 0; ) {
        const o = i.pop(), c = a.pop();
        if (da(o)) {
          if (n) {
            const _ = n(o, c);
            if (_) {
              if (_ === "skip") continue;
              return _;
            }
          }
          for (let _ = o.length - 1; _ >= 0; --_)
            i.push(o[_]), a.push(c);
        } else {
          const _ = t(o, c);
          if (_) {
            if (_ === "skip") continue;
            return _;
          }
          if (o.kind >= 167) for (const u of nye(o))
            i.push(u), a.push(o);
        }
      }
    }
    function nye(e) {
      const t = [];
      return Fa(e, n, n), t;
      function n(i) {
        t.unshift(i);
      }
    }
    function iye(e) {
      e.externalModuleIndicator = vN(e);
    }
    function Sk(e, t, n, i = !1, a) {
      var o, c;
      (o = sn) == null || o.push(sn.Phase.Parse, "createSourceFile", { path: e }, !0), pc("beforeParse");
      let _;
      const { languageVersion: u, setExternalModuleIndicator: d, impliedNodeFormat: g, jsDocParsingMode: h } = typeof n == "object" ? n : { languageVersion: n };
      if (u === 100) _ = Iv.parseSourceFile(e, t, u, void 0, i, 6, so, h);
      else {
        const S = g === void 0 ? d : (T) => (T.impliedNodeFormat = g, (d || iye)(T));
        _ = Iv.parseSourceFile(e, t, u, void 0, i, a, S, h);
      }
      return pc("afterParse"), yp("Parse", "beforeParse", "afterParse"), (c = sn) == null || c.pop(), _;
    }
    function Tk(e, t) {
      return Iv.parseIsolatedEntityName(e, t);
    }
    function bN(e, t) {
      return Iv.parseJsonText(e, t);
    }
    function Sl(e) {
      return e.externalModuleIndicator !== void 0;
    }
    function sW(e, t, n, i = !1) {
      const a = oW.updateSourceFile(e, t, n, i);
      return a.flags |= e.flags & 12582912, a;
    }
    function Are(e, t, n) {
      const i = Iv.JSDocParser.parseIsolatedJSDocComment(e, t, n);
      return i && i.jsDoc && Iv.fixupParentReferences(i.jsDoc), i;
    }
    function aye(e, t, n) {
      return Iv.JSDocParser.parseJSDocTypeExpressionForTests(e, t, n);
    }
    var Iv;
    ((e) => {
      var t = Bg(99, !0), n = 40960, i, a, o, c, _;
      function u(X) {
        return ue++, X;
      }
      var d = YA(11, {
        createBaseSourceFileNode: (X) => u(new _(X, 0, 0)),
        createBaseIdentifierNode: (X) => u(new o(X, 0, 0)),
        createBasePrivateIdentifierNode: (X) => u(new c(X, 0, 0)),
        createBaseTokenNode: (X) => u(new a(X, 0, 0)),
        createBaseNode: (X) => u(new i(X, 0, 0))
      }), { createNodeArray: g, createNumericLiteral: h, createStringLiteral: S, createLiteralLikeNode: T, createIdentifier: k, createPrivateIdentifier: D, createToken: P, createArrayLiteralExpression: N, createObjectLiteralExpression: M, createPropertyAccessExpression: R, createPropertyAccessChain: G, createElementAccessExpression: L, createElementAccessChain: z, createCallExpression: H, createCallChain: U, createNewExpression: pe, createParenthesizedExpression: ie, createBlock: W, createVariableStatement: Q, createExpressionStatement: se, createIfStatement: he, createWhileStatement: fe, createForStatement: de, createForOfStatement: $, createVariableDeclaration: Se, createVariableDeclarationList: Be } = d, ce, oe, ge, Ae, Ne, ot, K, ke, ae, Ce, ue, Ie, Xe, Ft, Ut, Xt, Ar = !0, Ct = !1;
      function Kt(X, xe, He, Tt, zt = !1, Mr, Kn, Ki = 0) {
        var di;
        if (Mr = TO(X, Mr), Mr === 6) {
          const ya = _i(X, xe, He, Tt, zt);
          return CN(ya, (di = ya.statements[0]) == null ? void 0 : di.expression, ya.parseDiagnostics, !1, void 0), ya.referencedFiles = Te, ya.typeReferenceDirectives = Te, ya.libReferenceDirectives = Te, ya.amdDependencies = Te, ya.hasNoDefaultLib = !1, ya.pragmas = mi, ya;
        }
        Gr(X, xe, He, Tt, Mr, Ki);
        const xn = Li(He, zt, Mr, Kn || iye, Ki);
        return Nt(), xn;
      }
      e.parseSourceFile = Kt;
      function zr(X, xe) {
        Gr("", X, xe, void 0, 1, 0), ye();
        const He = Z(!0), Tt = j() === 1 && !K.length;
        return Nt(), Tt ? He : void 0;
      }
      e.parseIsolatedEntityName = zr;
      function _i(X, xe, He = 2, Tt, zt = !1) {
        Gr(X, xe, He, Tt, 6, 0), oe = Xt, ye();
        const Mr = ee();
        let Kn, Ki;
        if (j() === 1)
          Kn = Is([], Mr, Mr), Ki = _c();
        else {
          let ya;
          for (; j() !== 1; ) {
            let hi;
            switch (j()) {
              case 23:
                hi = Gf();
                break;
              case 112:
              case 97:
              case 106:
                hi = _c();
                break;
              case 41:
                Yt(() => ye() === 9 && ye() !== 59) ? hi = Cd() : hi = gh();
                break;
              case 9:
              case 11:
                if (Yt(() => ye() !== 59)) {
                  hi = Cn();
                  break;
                }
              default:
                hi = gh();
                break;
            }
            ya && da(ya) ? ya.push(hi) : ya ? ya = [ya, hi] : (ya = hi, j() !== 1 && Ve(p.Unexpected_token));
          }
          const Bi = se(da(ya) ? Zt(N(ya), Mr) : E.checkDefined(ya));
          Zt(Bi, Mr), Kn = Is([Bi], Mr), Ki = Yc(1, p.Unexpected_token);
        }
        const di = Me(X, 2, 6, !1, Kn, Ki, oe, so);
        zt && ra(di), di.nodeCount = ue, di.identifierCount = Xe, di.identifiers = Ie, di.parseDiagnostics = Xx(K, di), ke && (di.jsDocDiagnostics = Xx(ke, di));
        const xn = di;
        return Nt(), xn;
      }
      e.parseJsonText = _i;
      function Gr(X, xe, He, Tt, zt, Mr) {
        switch (i = gu.getNodeConstructor(), a = gu.getTokenConstructor(), o = gu.getIdentifierConstructor(), c = gu.getPrivateIdentifierConstructor(), _ = gu.getSourceFileConstructor(), ce = us(X), ge = xe, Ae = He, ae = Tt, Ne = zt, ot = FA(zt), K = [], Ft = 0, Ie = /* @__PURE__ */ new Map(), Xe = 0, ue = 0, oe = 0, Ar = !0, Ne) {
          case 1:
          case 2:
            Xt = 524288;
            break;
          case 6:
            Xt = 134742016;
            break;
          default:
            Xt = 0;
            break;
        }
        Ct = !1, t.setText(ge), t.setOnError(rt), t.setScriptTarget(Ae), t.setLanguageVariant(ot), t.setScriptKind(Ne), t.setJSDocParsingMode(Mr);
      }
      function Nt() {
        t.clearCommentDirectives(), t.setText(""), t.setOnError(void 0), t.setScriptKind(0), t.setJSDocParsingMode(0), ge = void 0, Ae = void 0, ae = void 0, Ne = void 0, ot = void 0, oe = 0, K = void 0, ke = void 0, Ft = 0, Ie = void 0, Ut = void 0, Ar = !0;
      }
      function Li(X, xe, He, Tt, zt) {
        const Mr = $l(ce);
        Mr && (Xt |= 33554432), oe = Xt, ye();
        const Kn = Qs(0, od);
        E.assert(j() === 1);
        const Ki = q(), di = Zr(_c(), Ki), xn = Me(ce, X, He, Mr, Kn, di, oe, Tt);
        return cW(xn, ge), lW(xn, ya), xn.commentDirectives = t.getCommentDirectives(), xn.nodeCount = ue, xn.identifierCount = Xe, xn.identifiers = Ie, xn.parseDiagnostics = Xx(K, xn), xn.jsDocParsingMode = zt, ke && (xn.jsDocDiagnostics = Xx(ke, xn)), xe && ra(xn), xn;
        function ya(Bi, hi, No) {
          K.push($x(ce, ge, Bi, hi, No));
        }
      }
      let ri = !1;
      function Zr(X, xe) {
        if (!xe) return X;
        E.assert(!X.jsDoc);
        const He = Rn(MB(X, ge), (Tt) => kP.parseJSDocComment(X, Tt.pos, Tt.end - Tt.pos));
        return He.length && (X.jsDoc = He), ri && (ri = !1, X.flags |= 536870912), X;
      }
      function ni(X) {
        const xe = ae, He = oW.createSyntaxCursor(X);
        ae = { currentNode: ya };
        const Tt = [], zt = K;
        K = [];
        let Mr = 0, Kn = di(X.statements, 0);
        for (; Kn !== -1; ) {
          const Bi = X.statements[Mr], hi = X.statements[Kn];
          Mn(Tt, X.statements, Mr, Kn), Mr = xn(X.statements, Kn);
          const No = qs(zt, (Qm) => Qm.start >= Bi.pos), Pd = No >= 0 ? qs(zt, (Qm) => Qm.start >= hi.pos, No) : -1;
          No >= 0 && Mn(K, zt, No, Pd >= 0 ? Pd : void 0), Ir(() => {
            const Qm = Xt;
            for (Xt |= 65536, t.resetTokenState(hi.pos), ye(); j() !== 1; ) {
              const Ym = t.getTokenFullStart(), bh = Oc(0, od);
              if (Tt.push(bh), Ym === t.getTokenFullStart() && ye(), Mr >= 0) {
                const Cg = X.statements[Mr];
                if (bh.end === Cg.pos) break;
                bh.end > Cg.pos && (Mr = xn(X.statements, Mr + 1));
              }
            }
            Xt = Qm;
          }, 2), Kn = Mr >= 0 ? di(X.statements, Mr) : -1;
        }
        if (Mr >= 0) {
          const Bi = X.statements[Mr];
          Mn(Tt, X.statements, Mr);
          const hi = qs(zt, (No) => No.start >= Bi.pos);
          hi >= 0 && Mn(K, zt, hi);
        }
        return ae = xe, d.updateSourceFile(X, pt(g(Tt), X.statements));
        function Ki(Bi) {
          return !(Bi.flags & 65536) && !!(Bi.transformFlags & 67108864);
        }
        function di(Bi, hi) {
          for (let No = hi; No < Bi.length; No++) if (Ki(Bi[No])) return No;
          return -1;
        }
        function xn(Bi, hi) {
          for (let No = hi; No < Bi.length; No++) if (!Ki(Bi[No])) return No;
          return -1;
        }
        function ya(Bi) {
          const hi = He.currentNode(Bi);
          return Ar && hi && Ki(hi) && Nre(hi), hi;
        }
      }
      function ra(X) {
        bv(X, !0);
      }
      e.fixupParentReferences = ra;
      function Me(X, xe, He, Tt, zt, Mr, Kn, Ki) {
        let di = d.createSourceFile(zt, Mr, Kn);
        if (nz(di, 0, ge.length), xn(di), !Tt && Sl(di) && di.transformFlags & 67108864) {
          const ya = di;
          di = ni(di), ya !== di && xn(di);
        }
        return di;
        function xn(ya) {
          ya.text = ge, ya.bindDiagnostics = [], ya.bindSuggestionDiagnostics = void 0, ya.languageVersion = xe, ya.fileName = X, ya.languageVariant = FA(He), ya.isDeclarationFile = Tt, ya.scriptKind = He, Ki(ya), ya.setExternalModuleIndicator = Ki;
        }
      }
      function vt(X, xe) {
        X ? Xt |= xe : Xt &= ~xe;
      }
      function tr(X) {
        vt(X, 8192);
      }
      function Ur(X) {
        vt(X, 16384);
      }
      function $n(X) {
        vt(X, 32768);
      }
      function zn(X) {
        vt(X, 65536);
      }
      function na(X, xe) {
        const He = X & Xt;
        if (He) {
          vt(!1, He);
          const Tt = xe();
          return vt(!0, He), Tt;
        }
        return xe();
      }
      function Ea(X, xe) {
        const He = X & ~Xt;
        if (He) {
          vt(!0, He);
          const Tt = xe();
          return vt(!1, He), Tt;
        }
        return xe();
      }
      function Da(X) {
        return na(8192, X);
      }
      function Lr(X) {
        return Ea(8192, X);
      }
      function ha(X) {
        return na(131072, X);
      }
      function Ye(X) {
        return Ea(131072, X);
      }
      function Pt(X) {
        return Ea(16384, X);
      }
      function ne(X) {
        return Ea(32768, X);
      }
      function tt(X) {
        return Ea(65536, X);
      }
      function re(X) {
        return na(65536, X);
      }
      function we(X) {
        return Ea(81920, X);
      }
      function Ge(X) {
        return na(81920, X);
      }
      function nt(X) {
        return (Xt & X) !== 0;
      }
      function it() {
        return nt(16384);
      }
      function ut() {
        return nt(8192);
      }
      function Qe() {
        return nt(131072);
      }
      function xt() {
        return nt(32768);
      }
      function Dt() {
        return nt(65536);
      }
      function Ve(X, ...xe) {
        return rr(t.getTokenStart(), t.getTokenEnd(), X, ...xe);
      }
      function fr(X, xe, He, ...Tt) {
        const zt = Wo(K);
        let Mr;
        return (!zt || X !== zt.start) && (Mr = $x(ce, ge, X, xe, He, ...Tt), K.push(Mr)), Ct = !0, Mr;
      }
      function rr(X, xe, He, ...Tt) {
        return fr(X, xe - X, He, ...Tt);
      }
      function Oe(X, xe, ...He) {
        rr(X.pos, X.end, xe, ...He);
      }
      function rt(X, xe, He) {
        fr(t.getTokenEnd(), xe, X, He);
      }
      function ee() {
        return t.getTokenFullStart();
      }
      function q() {
        return t.hasPrecedingJSDocComment();
      }
      function j() {
        return Ce;
      }
      function Re() {
        return Ce = t.scan();
      }
      function $e(X) {
        return ye(), X();
      }
      function ye() {
        return z_(Ce) && (t.hasUnicodeEscape() || t.hasExtendedUnicodeEscape()) && rr(t.getTokenStart(), t.getTokenEnd(), p.Keywords_cannot_contain_escape_characters), Re();
      }
      function Ke() {
        return Ce = t.scanJsDocToken();
      }
      function pr(X) {
        return Ce = t.scanJSDocCommentTextToken(X);
      }
      function Pr() {
        return Ce = t.reScanGreaterToken();
      }
      function vr() {
        return Ce = t.reScanSlashToken();
      }
      function fn(X) {
        return Ce = t.reScanTemplateToken(X);
      }
      function Cr() {
        return Ce = t.reScanLessThanToken();
      }
      function et() {
        return Ce = t.reScanHashToken();
      }
      function kt() {
        return Ce = t.scanJsxIdentifier();
      }
      function wt() {
        return Ce = t.scanJsxToken();
      }
      function qt() {
        return Ce = t.scanJsxAttributeValue();
      }
      function Ir(X, xe) {
        const He = Ce, Tt = K.length, zt = Ct, Mr = Xt, Kn = xe !== 0 ? t.lookAhead(X) : t.tryScan(X);
        return E.assert(Mr === Xt), (!Kn || xe !== 0) && (Ce = He, xe !== 2 && (K.length = Tt), Ct = zt), Kn;
      }
      function Yt(X) {
        return Ir(X, 1);
      }
      function Jt(X) {
        return Ir(X, 0);
      }
      function $t() {
        return j() === 80 ? !0 : j() > 118;
      }
      function Qt() {
        return j() === 80 ? !0 : j() === 127 && it() || j() === 135 && Dt() ? !1 : j() > 118;
      }
      function ct(X, xe, He = !0) {
        return j() === X ? (He && ye(), !0) : (xe ? Ve(xe) : Ve(p._0_expected, as(X)), !1);
      }
      const wn = Object.keys(R7).filter((X) => X.length > 2);
      function Mi(X) {
        if (xv(X)) {
          rr(gs(ge, X.template.pos), X.template.end, p.Module_declaration_names_may_only_use_or_quoted_strings);
          return;
        }
        const xe = Fe(X) ? On(X) : void 0;
        if (!xe || !Y_(xe, Ae)) {
          Ve(p._0_expected, as(27));
          return;
        }
        const He = gs(ge, X.pos);
        switch (xe) {
          case "const":
          case "let":
          case "var":
            rr(He, X.end, p.Variable_declaration_not_allowed_at_this_location);
            return;
          case "declare":
            return;
          case "interface":
            os(p.Interface_name_cannot_be_0, p.Interface_must_be_given_a_name, 19);
            return;
          case "is":
            rr(He, t.getTokenStart(), p.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);
            return;
          case "module":
          case "namespace":
            os(p.Namespace_name_cannot_be_0, p.Namespace_must_be_given_a_name, 19);
            return;
          case "type":
            os(p.Type_alias_name_cannot_be_0, p.Type_alias_must_be_given_a_name, 64);
            return;
        }
        const Tt = xb(xe, wn, mo) ?? cs(xe);
        if (Tt) {
          rr(He, X.end, p.Unknown_keyword_or_identifier_Did_you_mean_0, Tt);
          return;
        }
        j() !== 0 && rr(He, X.end, p.Unexpected_keyword_or_identifier);
      }
      function os(X, xe, He) {
        j() === He ? Ve(xe) : Ve(X, t.getTokenValue());
      }
      function cs(X) {
        for (const xe of wn) if (X.length > xe.length + 2 && ta(X, xe)) return `${xe} ${X.slice(xe.length)}`;
      }
      function xa(X, xe, He) {
        if (j() === 60 && !t.hasPrecedingLineBreak()) {
          Ve(p.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);
          return;
        }
        if (j() === 21) {
          Ve(p.Cannot_start_a_function_call_in_a_type_annotation), ye();
          return;
        }
        if (xe && !fa()) {
          He ? Ve(p._0_expected, as(27)) : Ve(p.Expected_for_property_initializer);
          return;
        }
        if (!$a()) {
          if (He) {
            Ve(p._0_expected, as(27));
            return;
          }
          Mi(X);
        }
      }
      function oo(X) {
        return j() === X ? (Ke(), !0) : (E.assert(J5(X)), Ve(p._0_expected, as(X)), !1);
      }
      function To(X, xe, He, Tt) {
        if (j() === xe) {
          ye();
          return;
        }
        const zt = Ve(p._0_expected, as(xe));
        He && zt && ts(zt, $x(ce, ge, Tt, 1, p.The_parser_expected_to_find_a_1_to_match_the_0_token_here, as(X), as(xe)));
      }
      function ia(X) {
        return j() === X ? (ye(), !0) : !1;
      }
      function ja(X) {
        if (j() === X) return _c();
      }
      function _o(X) {
        if (j() === X) return xl();
      }
      function Yc(X, xe, He) {
        return ja(X) || Mo(X, !1, xe || p._0_expected, He || as(X));
      }
      function Ou(X) {
        const xe = _o(X);
        return xe || (E.assert(J5(X)), Mo(X, !1, p._0_expected, as(X)));
      }
      function _c() {
        const X = ee(), xe = j();
        return ye(), Zt(P(xe), X);
      }
      function xl() {
        const X = ee(), xe = j();
        return Ke(), Zt(P(xe), X);
      }
      function fa() {
        return j() === 27 ? !0 : j() === 20 || j() === 1 || t.hasPrecedingLineBreak();
      }
      function $a() {
        return fa() ? (j() === 27 && ye(), !0) : !1;
      }
      function Yi() {
        return $a() || ct(27);
      }
      function Is(X, xe, He, Tt) {
        const zt = g(X, Tt);
        return Ud(zt, xe, He ?? t.getTokenFullStart()), zt;
      }
      function Zt(X, xe, He) {
        return Ud(X, xe, He ?? t.getTokenFullStart()), Xt && (X.flags |= Xt), Ct && (Ct = !1, X.flags |= 262144), X;
      }
      function Mo(X, xe, He, ...Tt) {
        xe ? fr(t.getTokenFullStart(), 0, He, ...Tt) : He && Ve(He, ...Tt);
        const zt = ee();
        return Zt(X === 80 ? k("", void 0) : jy(X) ? d.createTemplateLiteralLikeNode(X, "", "", void 0) : X === 9 ? h("", void 0) : X === 11 ? S("", void 0) : X === 283 ? d.createMissingDeclaration() : P(X), zt);
      }
      function ou(X) {
        let xe = Ie.get(X);
        return xe === void 0 && Ie.set(X, xe = X), xe;
      }
      function Wl(X, xe, He) {
        if (X) {
          Xe++;
          const Ki = t.hasPrecedingJSDocLeadingAsterisks() ? t.getTokenStart() : ee(), di = j(), xn = ou(t.getTokenValue()), ya = t.hasExtendedUnicodeEscape();
          return Re(), Zt(k(xn, di, ya), Ki);
        }
        if (j() === 81)
          return Ve(He || p.Private_identifiers_are_not_allowed_outside_class_bodies), Wl(!0);
        if (j() === 0 && t.tryScan(() => t.reScanInvalidIdentifier() === 80)) return Wl(!0);
        Xe++;
        const Tt = j() === 1, zt = t.isReservedWord(), Mr = t.getTokenText(), Kn = zt ? p.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here : p.Identifier_expected;
        return Mo(80, Tt, xe || Kn, Mr);
      }
      function bu(X) {
        return Wl($t(), void 0, X);
      }
      function Ma(X, xe) {
        return Wl(Qt(), X, xe);
      }
      function ac(X) {
        return Wl(M_(j()), X);
      }
      function Qo() {
        return (t.hasUnicodeEscape() || t.hasExtendedUnicodeEscape()) && Ve(p.Unicode_escape_sequence_cannot_appear_here), Wl(M_(j()));
      }
      function I() {
        return M_(j()) || j() === 11 || j() === 9 || j() === 10;
      }
      function je() {
        return M_(j()) || j() === 11;
      }
      function lt(X) {
        if (j() === 11 || j() === 9 || j() === 10) {
          const xe = Cn();
          return xe.text = ou(xe.text), xe;
        }
        return X && j() === 23 ? jr() : j() === 81 ? Bn() : ac();
      }
      function St() {
        return lt(!0);
      }
      function jr() {
        const X = ee();
        ct(23);
        const xe = Da(Sc);
        return ct(24), Zt(d.createComputedPropertyName(xe), X);
      }
      function Bn() {
        const X = ee(), xe = D(ou(t.getTokenValue()));
        return ye(), Zt(xe, X);
      }
      function tn(X) {
        return j() === X && Jt(ei);
      }
      function ai() {
        return ye(), t.hasPrecedingLineBreak() ? !1 : vc();
      }
      function ei() {
        switch (j()) {
          case 87:
            return ye() === 94;
          case 95:
            return ye(), j() === 90 ? Yt(gl) : j() === 156 ? Yt(ds) : La();
          case 90:
            return gl();
          case 126:
            return ye(), vc();
          case 139:
          case 153:
            return ye(), ml();
          default:
            return ai();
        }
      }
      function La() {
        return j() === 60 || j() !== 42 && j() !== 130 && j() !== 19 && vc();
      }
      function ds() {
        return ye(), La();
      }
      function cl() {
        return Jy(j()) && Jt(ei);
      }
      function vc() {
        return j() === 23 || j() === 19 || j() === 42 || j() === 26 || I();
      }
      function ml() {
        return j() === 23 || I();
      }
      function gl() {
        return ye(), j() === 86 || j() === 100 || j() === 120 || j() === 60 || j() === 128 && Yt(lC) || j() === 134 && Yt(zc);
      }
      function Os(X, xe) {
        if (Dc(X)) return !0;
        switch (X) {
          case 0:
          case 1:
          case 3:
            return !(j() === 27 && xe) && Hf();
          case 2:
            return j() === 84 || j() === 90;
          case 4:
            return Yt(tm);
          case 5:
            return Yt(VE) || j() === 27 && !xe;
          case 6:
            return j() === 23 || I();
          case 12:
            switch (j()) {
              case 23:
              case 42:
              case 26:
              case 25:
                return !0;
              default:
                return I();
            }
          case 18:
            return I();
          case 9:
            return j() === 23 || j() === 26 || I();
          case 24:
            return je();
          case 7:
            return j() === 19 ? Yt(Ao) : xe ? Qt() && !Pe() : fh() && !Pe();
          case 8:
            return O1();
          case 10:
            return j() === 28 || j() === 26 || O1();
          case 19:
            return j() === 103 || j() === 87 || Qt();
          case 15:
            switch (j()) {
              case 28:
              case 25:
                return !0;
            }
          case 11:
            return j() === 26 || cp();
          case 16:
            return ze(!1);
          case 17:
            return ze(!0);
          case 20:
          case 21:
            return j() === 28 || K0();
          case 22:
            return nb();
          case 23:
            return j() === 161 && Yt(tb) ? !1 : j() === 11 ? !0 : M_(j());
          case 13:
            return M_(j()) || j() === 19;
          case 14:
            return !0;
          case 25:
            return !0;
          case 26:
            return E.fail("ParsingContext.Count used as a context");
          default:
            E.assertNever(X, "Non-exhaustive case in 'isListElement'.");
        }
      }
      function Ao() {
        if (E.assert(j() === 19), ye() === 20) {
          const X = ye();
          return X === 28 || X === 19 || X === 96 || X === 119;
        }
        return !0;
      }
      function Su() {
        return ye(), Qt();
      }
      function rf() {
        return ye(), M_(j());
      }
      function Ip() {
        return ye(), qY(j());
      }
      function Pe() {
        return j() === 119 || j() === 96 ? Yt(jt) : !1;
      }
      function jt() {
        return ye(), cp();
      }
      function Yr() {
        return ye(), K0();
      }
      function Hi(X) {
        if (j() === 1) return !0;
        switch (X) {
          case 1:
          case 2:
          case 4:
          case 5:
          case 6:
          case 12:
          case 9:
          case 23:
          case 24:
            return j() === 20;
          case 3:
            return j() === 20 || j() === 84 || j() === 90;
          case 7:
            return j() === 19 || j() === 96 || j() === 119;
          case 8:
            return Js();
          case 19:
            return j() === 32 || j() === 21 || j() === 19 || j() === 96 || j() === 119;
          case 11:
            return j() === 22 || j() === 27;
          case 15:
          case 21:
          case 10:
            return j() === 24;
          case 17:
          case 16:
          case 18:
            return j() === 22 || j() === 24;
          case 20:
            return j() !== 28;
          case 22:
            return j() === 19 || j() === 20;
          case 13:
            return j() === 32 || j() === 44;
          case 14:
            return j() === 30 && Yt(GE);
          default:
            return !1;
        }
      }
      function Js() {
        return !!(fa() || Tg(j()) || j() === 39);
      }
      function io() {
        E.assert(Ft, "Missing parsing context");
        for (let X = 0; X < 26; X++) if (Ft & 1 << X && (Os(X, !0) || Hi(X)))
          return !0;
        return !1;
      }
      function Qs(X, xe) {
        const He = Ft;
        Ft |= 1 << X;
        const Tt = [], zt = ee();
        for (; !Hi(X); ) {
          if (Os(X, !1)) {
            Tt.push(Oc(X, xe));
            continue;
          }
          if (em(X)) break;
        }
        return Ft = He, Is(Tt, zt);
      }
      function Oc(X, xe) {
        const He = Dc(X);
        return He ? zs(He) : xe();
      }
      function Dc(X, xe) {
        var He;
        if (!ae || !bc(X) || Ct) return;
        const Tt = ae.currentNode(xe ?? t.getTokenFullStart());
        if (!(Nc(Tt) || nMe(Tt) || Ax(Tt)) && (Tt.flags & 101441536) === Xt && Il(Tt, X))
          return dA(Tt) && ((He = Tt.jsDoc) != null && He.jsDocCache) && (Tt.jsDoc.jsDocCache = void 0), Tt;
      }
      function zs(X) {
        return t.resetTokenState(X.end), ye(), X;
      }
      function bc(X) {
        switch (X) {
          case 5:
          case 2:
          case 0:
          case 1:
          case 3:
          case 6:
          case 4:
          case 8:
          case 17:
          case 16:
            return !0;
        }
        return !1;
      }
      function Il(X, xe) {
        switch (xe) {
          case 5:
            return Op(X);
          case 2:
            return Wf(X);
          case 0:
          case 1:
          case 3:
            return id(X);
          case 6:
            return ad(X);
          case 4:
            return hl(X);
          case 8:
            return ll(X);
          case 17:
          case 16:
            return Kd(X);
        }
        return !1;
      }
      function Op(X) {
        if (X) switch (X.kind) {
          case 177:
          case 182:
          case 178:
          case 179:
          case 173:
          case 241:
            return !0;
          case 175:
            const xe = X;
            return !(xe.name.kind === 80 && xe.name.escapedText === "constructor");
        }
        return !1;
      }
      function Wf(X) {
        if (X) switch (X.kind) {
          case 297:
          case 298:
            return !0;
        }
        return !1;
      }
      function id(X) {
        if (X) switch (X.kind) {
          case 263:
          case 244:
          case 242:
          case 246:
          case 245:
          case 258:
          case 254:
          case 256:
          case 253:
          case 252:
          case 250:
          case 251:
          case 249:
          case 248:
          case 255:
          case 243:
          case 259:
          case 257:
          case 247:
          case 260:
          case 273:
          case 272:
          case 279:
          case 278:
          case 268:
          case 264:
          case 265:
          case 267:
          case 266:
            return !0;
        }
        return !1;
      }
      function ad(X) {
        return X.kind === 307;
      }
      function hl(X) {
        if (X) switch (X.kind) {
          case 181:
          case 174:
          case 182:
          case 172:
          case 180:
            return !0;
        }
        return !1;
      }
      function ll(X) {
        return X.kind !== 261 ? !1 : X.initializer === void 0;
      }
      function Kd(X) {
        return X.kind !== 170 ? !1 : X.initializer === void 0;
      }
      function em(X) {
        return e0(X), io() ? !0 : (ye(), !1);
      }
      function e0(X) {
        switch (X) {
          case 0:
            return j() === 90 ? Ve(p._0_expected, as(95)) : Ve(p.Declaration_or_statement_expected);
          case 1:
            return Ve(p.Declaration_or_statement_expected);
          case 2:
            return Ve(p.case_or_default_expected);
          case 3:
            return Ve(p.Statement_expected);
          case 18:
          case 4:
            return Ve(p.Property_or_signature_expected);
          case 5:
            return Ve(p.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);
          case 6:
            return Ve(p.Enum_member_expected);
          case 7:
            return Ve(p.Expression_expected);
          case 8:
            return z_(j()) ? Ve(p._0_is_not_allowed_as_a_variable_declaration_name, as(j())) : Ve(p.Variable_declaration_expected);
          case 9:
            return Ve(p.Property_destructuring_pattern_expected);
          case 10:
            return Ve(p.Array_element_destructuring_pattern_expected);
          case 11:
            return Ve(p.Argument_expression_expected);
          case 12:
            return Ve(p.Property_assignment_expected);
          case 15:
            return Ve(p.Expression_or_comma_expected);
          case 17:
            return Ve(p.Parameter_declaration_expected);
          case 16:
            return z_(j()) ? Ve(p._0_is_not_allowed_as_a_parameter_name, as(j())) : Ve(p.Parameter_declaration_expected);
          case 19:
            return Ve(p.Type_parameter_declaration_expected);
          case 20:
            return Ve(p.Type_argument_expected);
          case 21:
            return Ve(p.Type_expected);
          case 22:
            return Ve(p.Unexpected_token_expected);
          case 23:
            return j() === 161 ? Ve(p._0_expected, "}") : Ve(p.Identifier_expected);
          case 13:
            return Ve(p.Identifier_expected);
          case 14:
            return Ve(p.Identifier_expected);
          case 24:
            return Ve(p.Identifier_or_string_literal_expected);
          case 25:
            return Ve(p.Identifier_expected);
          case 26:
            return E.fail("ParsingContext.Count used as a context");
          default:
            E.assertNever(X);
        }
      }
      function Fu(X, xe, He) {
        const Tt = Ft;
        Ft |= 1 << X;
        const zt = [], Mr = ee();
        let Kn = -1;
        for (; ; ) {
          if (Os(X, !1)) {
            const Ki = t.getTokenFullStart(), di = Oc(X, xe);
            if (!di) {
              Ft = Tt;
              return;
            }
            if (zt.push(di), Kn = t.getTokenStart(), ia(28)) continue;
            if (Kn = -1, Hi(X)) break;
            ct(28, nf(X)), He && j() === 27 && !t.hasPrecedingLineBreak() && ye(), Ki === t.getTokenFullStart() && ye();
            continue;
          }
          if (Hi(X) || em(X)) break;
        }
        return Ft = Tt, Is(zt, Mr, void 0, Kn >= 0);
      }
      function nf(X) {
        return X === 6 ? p.An_enum_member_name_must_be_followed_by_a_or : void 0;
      }
      function A_() {
        const X = Is([], ee());
        return X.isMissingList = !0, X;
      }
      function t0(X) {
        return !!X.isMissingList;
      }
      function Uf(X, xe, He, Tt) {
        if (ct(He)) {
          const zt = Fu(X, xe);
          return ct(Tt), zt;
        }
        return A_();
      }
      function Z(X, xe) {
        const He = ee();
        let Tt = X ? ac(xe) : Ma(xe);
        for (; ia(25) && j() !== 30; )
          Tt = Zt(d.createQualifiedName(Tt, Rt(X, !1, !0)), He);
        return Tt;
      }
      function st(X, xe) {
        return Zt(d.createQualifiedName(X, xe), X.pos);
      }
      function Rt(X, xe, He) {
        if (t.hasPrecedingLineBreak() && M_(j()) && Yt(s0))
          return Mo(80, !0, p.Identifier_expected);
        if (j() === 81) {
          const Tt = Bn();
          return xe ? Tt : Mo(80, !0, p.Identifier_expected);
        }
        return X ? He ? ac() : Qo() : Ma();
      }
      function F(X) {
        const xe = ee(), He = [];
        let Tt;
        do
          Tt = dr(X), He.push(Tt);
        while (Tt.literal.kind === 17);
        return Is(He, xe);
      }
      function ve(X) {
        const xe = ee();
        return Zt(d.createTemplateExpression(fs(X), F(X)), xe);
      }
      function qe() {
        const X = ee();
        return Zt(d.createTemplateLiteralType(fs(!1), Bt()), X);
      }
      function Bt() {
        const X = ee(), xe = [];
        let He;
        do
          He = Rr(), xe.push(He);
        while (He.literal.kind === 17);
        return Is(xe, X);
      }
      function Rr() {
        const X = ee();
        return Zt(d.createTemplateLiteralTypeSpan(Ql(), cn(!1)), X);
      }
      function cn(X) {
        return j() === 20 ? (fn(X), ji()) : Yc(18, p._0_expected, as(20));
      }
      function dr(X) {
        const xe = ee();
        return Zt(d.createTemplateSpan(Da(Sc), cn(X)), xe);
      }
      function Cn() {
        return Ul(j());
      }
      function fs(X) {
        !X && t.getTokenFlags() & 26656 && fn(!1);
        const xe = Ul(j());
        return E.assert(xe.kind === 16, "Template head has wrong token kind"), xe;
      }
      function ji() {
        const X = Ul(j());
        return E.assert(X.kind === 17 || X.kind === 18, "Template fragment has wrong token kind"), X;
      }
      function Fc(X) {
        const xe = X === 15 || X === 18, He = t.getTokenText();
        return He.substring(1, He.length - (t.isUnterminated() ? 0 : xe ? 1 : 2));
      }
      function Ul(X) {
        const xe = ee(), He = jy(X) ? d.createTemplateLiteralLikeNode(X, t.getTokenValue(), Fc(X), t.getTokenFlags() & 7176) : X === 9 ? h(t.getTokenValue(), t.getNumericLiteralFlags()) : X === 11 ? S(t.getTokenValue(), void 0, t.hasExtendedUnicodeEscape()) : H4(X) ? T(X, t.getTokenValue()) : E.fail();
        return t.hasExtendedUnicodeEscape() && (He.hasExtendedUnicodeEscape = !0), t.isUnterminated() && (He.isUnterminated = !0), ye(), Zt(He, xe);
      }
      function Lu() {
        return Z(!0, p.Type_expected);
      }
      function N_() {
        if (!t.hasPrecedingLineBreak() && Cr() === 30) return Uf(20, Ql, 30, 32);
      }
      function cu() {
        const X = ee();
        return Zt(d.createTypeReferenceNode(Lu(), N_()), X);
      }
      function lh(X) {
        switch (X.kind) {
          case 184:
            return Nc(X.typeName);
          case 185:
          case 186: {
            const { parameters: xe, type: He } = X;
            return t0(xe) || lh(He);
          }
          case 197:
            return lh(X.type);
          default:
            return !1;
        }
      }
      function X0(X) {
        return ye(), Zt(d.createTypePredicateNode(void 0, X, Ql()), X.pos);
      }
      function Q0() {
        const X = ee();
        return ye(), Zt(d.createThisTypeNode(), X);
      }
      function vg() {
        const X = ee();
        return ye(), Zt(d.createJSDocAllType(), X);
      }
      function r0() {
        const X = ee();
        return ye(), Zt(d.createJSDocNonNullableType(v2(), !1), X);
      }
      function S1() {
        const X = ee();
        return ye(), j() === 28 || j() === 20 || j() === 22 || j() === 32 || j() === 64 || j() === 52 ? Zt(d.createJSDocUnknownType(), X) : Zt(d.createJSDocNullableType(Ql(), !1), X);
      }
      function Y0() {
        const X = ee(), xe = q();
        if (Jt(gC)) {
          const He = li(36), Tt = Er(59, !1);
          return Zr(Zt(d.createJSDocFunctionType(He, Tt), X), xe);
        }
        return Zt(d.createTypeReferenceNode(ac(), void 0), X);
      }
      function Vf() {
        const X = ee();
        let xe;
        return (j() === 110 || j() === 105) && (xe = ac(), ct(59)), Zt(d.createParameterDeclaration(void 0, void 0, xe, void 0, bg(), void 0), X);
      }
      function bg() {
        t.setSkipJsDocLeadingAsterisks(!0);
        const X = ee();
        if (ia(144)) {
          const Tt = d.createJSDocNamepathType(void 0);
          e: for (; ; ) switch (j()) {
            case 20:
            case 1:
            case 28:
            case 5:
              break e;
            default:
              Ke();
          }
          return t.setSkipJsDocLeadingAsterisks(!1), Zt(Tt, X);
        }
        const xe = ia(26);
        let He = C1();
        return t.setSkipJsDocLeadingAsterisks(!1), xe && (He = Zt(d.createJSDocVariadicType(He), X)), j() === 64 ? (ye(), Zt(d.createJSDocOptionalType(He), X)) : He;
      }
      function T1() {
        const X = ee();
        ct(114);
        const xe = Z(!0), He = t.hasPrecedingLineBreak() ? void 0 : o0();
        return Zt(d.createTypeQueryNode(xe, He), X);
      }
      function Sd() {
        const X = ee(), xe = Nn(!1, !0), He = Ma();
        let Tt, zt;
        ia(96) && (K0() || !cp() ? Tt = Ql() : zt = i0());
        const Mr = ia(64) ? Ql() : void 0, Kn = d.createTypeParameterDeclaration(xe, He, Tt, Mr);
        return Kn.expression = zt, Zt(Kn, X);
      }
      function qf() {
        if (j() === 30) return Uf(19, Sd, 30, 32);
      }
      function ze(X) {
        return j() === 26 || O1() || Jy(j()) || j() === 60 || K0(!X);
      }
      function at(X) {
        const xe = P2(p.Private_identifiers_cannot_be_used_as_parameters);
        return J3(xe) === 0 && !_t(X) && Jy(j()) && ye(), xe;
      }
      function At() {
        return $t() || j() === 23 || j() === 19;
      }
      function yr(X) {
        return Tn(X);
      }
      function Br(X) {
        return Tn(X, !1);
      }
      function Tn(X, xe = !0) {
        const He = ee(), Tt = q(), zt = X ? tt(() => Nn(!0)) : re(() => Nn(!0));
        if (j() === 110) {
          const di = d.createParameterDeclaration(zt, void 0, Wl(!0), void 0, im(), void 0), xn = ul(zt);
          return xn && Oe(xn, p.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters), Zr(Zt(di, He), Tt);
        }
        const Mr = Ar;
        Ar = !1;
        const Kn = ja(26);
        if (!xe && !At()) return;
        const Ki = Zr(Zt(d.createParameterDeclaration(zt, Kn, at(zt), ja(58), im(), lu()), He), Tt);
        return Ar = Mr, Ki;
      }
      function Er(X, xe) {
        if (hn(X, xe)) return ha(C1);
      }
      function hn(X, xe) {
        return X === 39 ? (ct(X), !0) : ia(59) ? !0 : xe && j() === 39 ? (Ve(p._0_expected, as(59)), ye(), !0) : !1;
      }
      function Vr(X, xe) {
        const He = it(), Tt = Dt();
        Ur(!!(X & 1)), zn(!!(X & 2));
        const zt = X & 32 ? Fu(17, Vf) : Fu(16, () => xe ? yr(Tt) : Br(Tt));
        return Ur(He), zn(Tt), zt;
      }
      function li(X) {
        if (!ct(21)) return A_();
        const xe = Vr(X, !0);
        return ct(22), xe;
      }
      function ki() {
        ia(28) || Yi();
      }
      function Zi(X) {
        const xe = ee(), He = q();
        X === 181 && ct(105);
        const Tt = qf(), zt = li(4), Mr = Er(59, !0);
        return ki(), Zr(Zt(X === 180 ? d.createCallSignature(Tt, zt, Mr) : d.createConstructSignature(Tt, zt, Mr), xe), He);
      }
      function yo() {
        return j() === 23 && Yt(Jc);
      }
      function Jc() {
        if (ye(), j() === 26 || j() === 24) return !0;
        if (Jy(j())) {
          if (ye(), Qt()) return !0;
        } else if (Qt()) ye();
        else return !1;
        return j() === 59 || j() === 28 ? !0 : j() !== 58 ? !1 : (ye(), j() === 59 || j() === 28 || j() === 24);
      }
      function Fp(X, xe, He) {
        const Tt = Uf(16, () => yr(!1), 23, 24), zt = im();
        return ki(), Zr(Zt(d.createIndexSignature(He, Tt, zt), X), xe);
      }
      function Td(X, xe, He) {
        const Tt = St(), zt = ja(58);
        let Mr;
        if (j() === 21 || j() === 30) {
          const Kn = qf(), Ki = li(4), di = Er(59, !0);
          Mr = d.createMethodSignature(He, Tt, zt, Kn, Ki, di);
        } else {
          const Kn = im();
          Mr = d.createPropertySignature(He, Tt, zt, Kn), j() === 64 && (Mr.initializer = lu());
        }
        return ki(), Zr(Zt(Mr, X), xe);
      }
      function tm() {
        if (j() === 21 || j() === 30 || j() === 139 || j() === 153) return !0;
        let X = !1;
        for (; Jy(j()); )
          X = !0, ye();
        return j() === 23 ? !0 : (I() && (X = !0, ye()), X ? j() === 21 || j() === 30 || j() === 58 || j() === 59 || j() === 28 || fa() : !1);
      }
      function xd() {
        if (j() === 21 || j() === 30) return Zi(180);
        if (j() === 105 && Yt(rm)) return Zi(181);
        const X = ee(), xe = q(), He = Nn(!1);
        return tn(139) ? ju(X, xe, He, 178, 4) : tn(153) ? ju(X, xe, He, 179, 4) : yo() ? Fp(X, xe, He) : Td(X, xe, He);
      }
      function rm() {
        return ye(), j() === 21 || j() === 30;
      }
      function nm() {
        return ye() === 25;
      }
      function Wm() {
        switch (ye()) {
          case 21:
          case 30:
          case 25:
            return !0;
        }
        return !1;
      }
      function Qk() {
        const X = ee();
        return Zt(d.createTypeLiteralNode(g2()), X);
      }
      function g2() {
        let X;
        return ct(19) ? (X = Qs(4, xd), ct(20)) : X = A_(), X;
      }
      function x1() {
        return ye(), j() === 40 || j() === 41 ? ye() === 148 : (j() === 148 && ye(), j() === 23 && Su() && ye() === 103);
      }
      function sT() {
        const X = ee(), xe = ac();
        ct(103);
        const He = Ql();
        return Zt(d.createTypeParameterDeclaration(void 0, xe, He, void 0), X);
      }
      function h2() {
        const X = ee();
        ct(19);
        let xe;
        (j() === 148 || j() === 40 || j() === 41) && (xe = _c(), xe.kind !== 148 && ct(148)), ct(23);
        const He = sT(), Tt = ia(130) ? Ql() : void 0;
        ct(24);
        let zt;
        (j() === 58 || j() === 40 || j() === 41) && (zt = _c(), zt.kind !== 58 && ct(58));
        const Mr = im();
        Yi();
        const Kn = Qs(4, xd);
        return ct(20), Zt(d.createMappedTypeNode(xe, He, Tt, zt, Mr, Kn), X);
      }
      function Um() {
        const X = ee();
        if (ia(26)) return Zt(d.createRestTypeNode(Ql()), X);
        const xe = Ql();
        if (M6(xe) && xe.pos === xe.type.pos) {
          const He = d.createOptionalTypeNode(xe.type);
          return pt(He, xe), He.flags = xe.flags, He;
        }
        return xe;
      }
      function Yk() {
        return ye() === 59 || j() === 58 && ye() === 59;
      }
      function Zk() {
        return j() === 26 ? M_(ye()) && Yk() : M_(j()) && Yk();
      }
      function gP() {
        if (Yt(Zk)) {
          const X = ee(), xe = q(), He = ja(26), Tt = ac(), zt = ja(58);
          ct(59);
          const Mr = Um();
          return Zr(Zt(d.createNamedTupleMember(He, Tt, zt, Mr), X), xe);
        }
        return Um();
      }
      function n0() {
        const X = ee();
        return Zt(d.createTupleTypeNode(Uf(21, gP, 23, 24)), X);
      }
      function Kk() {
        const X = ee();
        ct(21);
        const xe = Ql();
        return ct(22), Zt(d.createParenthesizedType(xe), X);
      }
      function y2() {
        let X;
        if (j() === 128) {
          const xe = ee();
          ye(), X = Is([Zt(P(128), xe)], xe);
        }
        return X;
      }
      function Z0() {
        const X = ee(), xe = q(), He = y2(), Tt = ia(105);
        E.assert(!He || Tt, "Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");
        const zt = qf(), Mr = li(4), Kn = Er(39, !1);
        return Zr(Zt(Tt ? d.createConstructorTypeNode(He, zt, Mr, Kn) : d.createFunctionTypeNode(zt, Mr, Kn), X), xe);
      }
      function k1() {
        const X = _c();
        return j() === 25 ? void 0 : X;
      }
      function eC(X) {
        const xe = ee();
        X && ye();
        let He = j() === 112 || j() === 97 || j() === 106 ? _c() : Ul(j());
        return X && (He = Zt(d.createPrefixUnaryExpression(41, He), xe)), Zt(d.createLiteralTypeNode(He), xe);
      }
      function PE() {
        return ye(), j() === 102;
      }
      function tC() {
        oe |= 4194304;
        const X = ee(), xe = ia(114);
        ct(102), ct(21);
        const He = Ql();
        let Tt;
        if (ia(28)) {
          const Kn = t.getTokenStart();
          ct(19);
          const Ki = j();
          if (Ki === 118 || Ki === 132 ? ye() : Ve(p._0_expected, as(118)), ct(59), Tt = $E(Ki, !0), ia(28), !ct(20)) {
            const di = Wo(K);
            di && di.code === p._0_expected.code && ts(di, $x(ce, ge, Kn, 1, p.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
          }
        }
        ct(22);
        const zt = ia(25) ? Lu() : void 0, Mr = N_();
        return Zt(d.createImportTypeNode(He, Tt, zt, Mr, xe), X);
      }
      function oT() {
        return ye(), j() === 9 || j() === 10;
      }
      function v2() {
        switch (j()) {
          case 133:
          case 159:
          case 154:
          case 150:
          case 163:
          case 155:
          case 136:
          case 157:
          case 146:
          case 151:
            return Jt(k1) || cu();
          case 67:
            t.reScanAsteriskEqualsToken();
          case 42:
            return vg();
          case 61:
            t.reScanQuestionToken();
          case 58:
            return S1();
          case 100:
            return Y0();
          case 54:
            return r0();
          case 15:
          case 11:
          case 9:
          case 10:
          case 112:
          case 97:
          case 106:
            return eC();
          case 41:
            return Yt(oT) ? eC(!0) : cu();
          case 116:
            return _c();
          case 110: {
            const X = Q0();
            return j() === 142 && !t.hasPrecedingLineBreak() ? X0(X) : X;
          }
          case 114:
            return Yt(PE) ? tC() : T1();
          case 19:
            return Yt(x1) ? h2() : Qk();
          case 23:
            return n0();
          case 21:
            return Kk();
          case 102:
            return tC();
          case 131:
            return Yt(s0) ? _T() : cu();
          case 16:
            return qe();
          default:
            return cu();
        }
      }
      function K0(X) {
        switch (j()) {
          case 133:
          case 159:
          case 154:
          case 150:
          case 163:
          case 136:
          case 148:
          case 155:
          case 158:
          case 116:
          case 157:
          case 106:
          case 110:
          case 114:
          case 146:
          case 19:
          case 23:
          case 30:
          case 52:
          case 51:
          case 105:
          case 11:
          case 9:
          case 10:
          case 112:
          case 97:
          case 151:
          case 42:
          case 58:
          case 54:
          case 26:
          case 140:
          case 102:
          case 131:
          case 15:
          case 16:
            return !0;
          case 100:
            return !X;
          case 41:
            return !X && Yt(oT);
          case 21:
            return !X && Yt(AE);
          default:
            return Qt();
        }
      }
      function AE() {
        return ye(), j() === 22 || ze(!1) || K0();
      }
      function rC() {
        const X = ee();
        let xe = v2();
        for (; !t.hasPrecedingLineBreak(); ) switch (j()) {
          case 54:
            ye(), xe = Zt(d.createJSDocNonNullableType(xe, !0), X);
            break;
          case 58:
            if (Yt(Yr)) return xe;
            ye(), xe = Zt(d.createJSDocNullableType(xe, !0), X);
            break;
          case 23:
            if (ct(23), K0()) {
              const He = Ql();
              ct(24), xe = Zt(d.createIndexedAccessTypeNode(xe, He), X);
            } else
              ct(24), xe = Zt(d.createArrayTypeNode(xe), X);
            break;
          default:
            return xe;
        }
        return xe;
      }
      function cT(X) {
        const xe = ee();
        return ct(X), Zt(d.createTypeOperatorNode(X, lT()), xe);
      }
      function b2() {
        if (ia(96)) {
          const X = Ye(Ql);
          if (Qe() || j() !== 58) return X;
        }
      }
      function NE() {
        const X = ee(), xe = Ma(), He = Jt(b2);
        return Zt(d.createTypeParameterDeclaration(void 0, xe, He), X);
      }
      function nC() {
        const X = ee();
        return ct(140), Zt(d.createInferTypeNode(NE()), X);
      }
      function lT() {
        const X = j();
        switch (X) {
          case 143:
          case 158:
          case 148:
            return cT(X);
          case 140:
            return nC();
        }
        return ha(rC);
      }
      function ey(X) {
        if (ry()) {
          const xe = Z0();
          let He;
          return mg(xe) ? He = X ? p.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type : p.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type : He = X ? p.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type : p.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type, Oe(xe, He), xe;
        }
      }
      function uh(X, xe, He) {
        const Tt = ee(), zt = X === 52, Mr = ia(X);
        let Kn = Mr && ey(zt) || xe();
        if (j() === X || Mr) {
          const Ki = [Kn];
          for (; ia(X); ) Ki.push(ey(zt) || xe());
          Kn = Zt(He(Is(Ki, Tt)), Tt);
        }
        return Kn;
      }
      function ty() {
        return uh(51, lT, d.createIntersectionTypeNode);
      }
      function _h() {
        return uh(52, ty, d.createUnionTypeNode);
      }
      function Hv() {
        return ye(), j() === 105;
      }
      function ry() {
        return j() === 30 || j() === 21 && Yt(uT) ? !0 : j() === 105 || j() === 128 && Yt(Hv);
      }
      function S2() {
        if (Jy(j()) && Nn(!1), Qt() || j() === 110)
          return ye(), !0;
        if (j() === 23 || j() === 19) {
          const X = K.length;
          return P2(), X === K.length;
        }
        return !1;
      }
      function uT() {
        return ye(), !!(j() === 22 || j() === 26 || S2() && (j() === 59 || j() === 28 || j() === 58 || j() === 64 || j() === 22 && (ye(), j() === 39)));
      }
      function C1() {
        const X = ee(), xe = Qt() && Jt(Ws), He = Ql();
        return xe ? Zt(d.createTypePredicateNode(void 0, xe, He), X) : He;
      }
      function Ws() {
        const X = Ma();
        if (j() === 142 && !t.hasPrecedingLineBreak())
          return ye(), X;
      }
      function _T() {
        const X = ee(), xe = Yc(131), He = j() === 110 ? Q0() : Ma(), Tt = ia(142) ? Ql() : void 0;
        return Zt(d.createTypePredicateNode(xe, He, Tt), X);
      }
      function Ql() {
        if (Xt & 81920) return na(81920, Ql);
        if (ry()) return Z0();
        const X = ee(), xe = _h();
        if (!Qe() && !t.hasPrecedingLineBreak() && ia(96)) {
          const He = Ye(Ql);
          ct(58);
          const Tt = ha(Ql);
          ct(59);
          const zt = ha(Ql);
          return Zt(d.createConditionalTypeNode(xe, He, Tt, zt), X);
        }
        return xe;
      }
      function im() {
        return ia(59) ? Ql() : void 0;
      }
      function fh() {
        switch (j()) {
          case 110:
          case 108:
          case 106:
          case 112:
          case 97:
          case 9:
          case 10:
          case 11:
          case 15:
          case 16:
          case 21:
          case 23:
          case 19:
          case 100:
          case 86:
          case 105:
          case 44:
          case 69:
          case 80:
            return !0;
          case 102:
            return Yt(Wm);
          default:
            return Qt();
        }
      }
      function cp() {
        if (fh()) return !0;
        switch (j()) {
          case 40:
          case 41:
          case 55:
          case 54:
          case 91:
          case 114:
          case 116:
          case 46:
          case 47:
          case 30:
          case 135:
          case 127:
          case 81:
          case 60:
            return !0;
          default:
            return am() ? !0 : Qt();
        }
      }
      function lp() {
        return j() !== 19 && j() !== 100 && j() !== 86 && j() !== 60 && cp();
      }
      function Sc() {
        const X = xt();
        X && $n(!1);
        const xe = ee();
        let He = Lc(!0), Tt;
        for (; Tt = ja(28); ) He = kd(He, Tt, Lc(!0), xe);
        return X && $n(!0), He;
      }
      function lu() {
        return ia(64) ? Lc(!0) : void 0;
      }
      function Lc(X) {
        if (T2()) return Sg();
        const xe = E1(X) || iC(X);
        if (xe) return xe;
        const He = ee(), Tt = q(), zt = iy(0);
        return zt.kind === 80 && j() === 39 ? Vm(He, zt, X, Tt, void 0) : j_(zt) && Uh(Pr()) ? kd(zt, _c(), Lc(X), He) : We(zt, He, X);
      }
      function T2() {
        return j() === 127 ? it() ? !0 : Yt(Zl) : !1;
      }
      function ph() {
        return ye(), !t.hasPrecedingLineBreak() && Qt();
      }
      function Sg() {
        const X = ee();
        return ye(), !t.hasPrecedingLineBreak() && (j() === 42 || cp()) ? Zt(d.createYieldExpression(ja(42), Lc(!0)), X) : Zt(d.createYieldExpression(void 0, void 0), X);
      }
      function Vm(X, xe, He, Tt, zt) {
        E.assert(j() === 39, "parseSimpleArrowFunctionExpression should only have been called if we had a =>");
        const Mr = d.createParameterDeclaration(void 0, void 0, xe, void 0, void 0, void 0);
        Zt(Mr, xe.pos);
        const Kn = Is([Mr], Mr.pos, Mr.end), Ki = Yc(39), di = Xv(!!zt, He);
        return Zr(Zt(d.createArrowFunction(zt, void 0, Kn, void 0, Ki, di), X), Tt);
      }
      function E1(X) {
        const xe = x2();
        if (xe !== 0)
          return xe === 1 ? ny(!0, !0) : Jt(() => $v(X));
      }
      function x2() {
        return j() === 21 || j() === 30 || j() === 134 ? Yt(IE) : j() === 39 ? 1 : 0;
      }
      function IE() {
        if (j() === 134 && (ye(), t.hasPrecedingLineBreak() || j() !== 21 && j() !== 30))
          return 0;
        const X = j(), xe = ye();
        if (X === 21) {
          if (xe === 22) switch (ye()) {
            case 39:
            case 59:
            case 19:
              return 1;
            default:
              return 0;
          }
          if (xe === 23 || xe === 19) return 2;
          if (xe === 26) return 1;
          if (Jy(xe) && xe !== 134 && Yt(Su))
            return ye() === 130 ? 0 : 1;
          if (!Qt() && xe !== 110) return 0;
          switch (ye()) {
            case 59:
              return 1;
            case 58:
              return ye(), j() === 59 || j() === 28 || j() === 64 || j() === 22 ? 1 : 0;
            case 28:
            case 64:
            case 22:
              return 2;
          }
          return 0;
        } else
          return E.assert(X === 30), !Qt() && j() !== 87 ? 0 : ot === 1 ? Yt(() => {
            ia(87);
            const He = ye();
            if (He === 96) switch (ye()) {
              case 64:
              case 32:
              case 44:
                return !1;
              default:
                return !0;
            }
            else if (He === 28 || He === 64) return !0;
            return !1;
          }) ? 1 : 0 : 2;
      }
      function $v(X) {
        const xe = t.getTokenStart();
        if (Ut?.has(xe)) return;
        const He = ny(!1, X);
        return He || (Ut || (Ut = /* @__PURE__ */ new Set())).add(xe), He;
      }
      function iC(X) {
        if (j() === 134 && Yt(OE) === 1) {
          const xe = ee(), He = q(), Tt = Ui();
          return Vm(xe, iy(0), X, He, Tt);
        }
      }
      function OE() {
        if (j() === 134) {
          if (ye(), t.hasPrecedingLineBreak() || j() === 39) return 0;
          const X = iy(0);
          if (!t.hasPrecedingLineBreak() && X.kind === 80 && j() === 39) return 1;
        }
        return 0;
      }
      function ny(X, xe) {
        const He = ee(), Tt = q(), zt = Ui(), Mr = _t(zt, ZD) ? 2 : 0, Kn = qf();
        let Ki;
        if (ct(21)) {
          if (X)
            Ki = Vr(Mr, X);
          else {
            const Qm = Vr(Mr, X);
            if (!Qm) return;
            Ki = Qm;
          }
          if (!ct(22) && !X) return;
        } else {
          if (!X) return;
          Ki = A_();
        }
        const di = j() === 59, xn = Er(59, !1);
        if (xn && !X && lh(xn)) return;
        let ya = xn;
        for (; ya?.kind === 197; ) ya = ya.type;
        const Bi = ya && R6(ya);
        if (!X && j() !== 39 && (Bi || j() !== 19)) return;
        const hi = j(), No = Yc(39), Pd = hi === 39 || hi === 19 ? Xv(_t(zt, ZD), xe) : Ma();
        if (!(!xe && di && j() !== 59))
          return Zr(Zt(d.createArrowFunction(zt, Kn, Ki, xn, No, Pd), He), Tt);
      }
      function Xv(X, xe) {
        if (j() === 19) return yh(X ? 2 : 0);
        if (j() !== 27 && j() !== 100 && j() !== 86 && Hf() && !lp()) return yh(16 | (X ? 2 : 0));
        const He = it();
        Ur(!1);
        const Tt = Ar;
        Ar = !1;
        const zt = X ? tt(() => Lc(xe)) : re(() => Lc(xe));
        return Ar = Tt, Ur(He), zt;
      }
      function We(X, xe, He) {
        const Tt = ja(58);
        if (!Tt) return X;
        let zt;
        return Zt(d.createConditionalExpression(X, Tt, na(n, () => Lc(!1)), zt = Yc(59), Gp(zt) ? Lc(He) : Mo(80, !1, p._0_expected, as(59))), xe);
      }
      function iy(X) {
        const xe = ee();
        return uu(X, i0(), xe);
      }
      function Tg(X) {
        return X === 103 || X === 165;
      }
      function uu(X, xe, He) {
        for (; ; ) {
          Pr();
          const Tt = TA(j());
          if (!(j() === 43 ? Tt >= X : Tt > X) || j() === 103 && ut()) break;
          if (j() === 130 || j() === 152) {
            if (t.hasPrecedingLineBreak()) break;
            {
              const zt = j();
              ye(), xe = zt === 152 ? ay(xe, Ql()) : Qv(xe, Ql());
            }
          } else xe = kd(xe, _c(), iy(Tt), He);
        }
        return xe;
      }
      function am() {
        return ut() && j() === 103 ? !1 : TA(j()) > 0;
      }
      function ay(X, xe) {
        return Zt(d.createSatisfiesExpression(X, xe), X.pos);
      }
      function kd(X, xe, He, Tt) {
        return Zt(d.createBinaryExpression(X, xe, He), Tt);
      }
      function Qv(X, xe) {
        return Zt(d.createAsExpression(X, xe), X.pos);
      }
      function Cd() {
        const X = ee();
        return Zt(d.createPrefixUnaryExpression(j(), $e(Gm)), X);
      }
      function k2() {
        const X = ee();
        return Zt(d.createDeleteExpression($e(Gm)), X);
      }
      function Fs() {
        const X = ee();
        return Zt(d.createTypeOfExpression($e(Gm)), X);
      }
      function Pf() {
        const X = ee();
        return Zt(d.createVoidExpression($e(Gm)), X);
      }
      function fT() {
        return j() === 135 ? Dt() ? !0 : Yt(Zl) : !1;
      }
      function qm() {
        const X = ee();
        return Zt(d.createAwaitExpression($e(Gm)), X);
      }
      function i0() {
        if (sy()) {
          const He = ee(), Tt = Yv();
          return j() === 43 ? uu(TA(j()), Tt, He) : Tt;
        }
        const X = j(), xe = Gm();
        if (j() === 43) {
          const He = gs(ge, xe.pos), { end: Tt } = xe;
          xe.kind === 217 ? rr(He, Tt, p.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses) : (E.assert(J5(X)), rr(He, Tt, p.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses, as(X)));
        }
        return xe;
      }
      function Gm() {
        switch (j()) {
          case 40:
          case 41:
          case 55:
          case 54:
            return Cd();
          case 91:
            return k2();
          case 114:
            return Fs();
          case 116:
            return Pf();
          case 30:
            return ot === 1 ? dh(!0, void 0, void 0, !0) : dT();
          case 135:
            if (fT()) return qm();
          default:
            return Yv();
        }
      }
      function sy() {
        switch (j()) {
          case 40:
          case 41:
          case 55:
          case 54:
          case 91:
          case 114:
          case 116:
          case 135:
            return !1;
          case 30:
            if (ot !== 1) return !1;
          default:
            return !0;
        }
      }
      function Yv() {
        if (j() === 46 || j() === 47) {
          const xe = ee();
          return Zt(d.createPrefixUnaryExpression(j(), $e(oy)), xe);
        } else if (ot === 1 && j() === 30 && Yt(Ip)) return dh(!0);
        const X = oy();
        if (E.assert(j_(X)), (j() === 46 || j() === 47) && !t.hasPrecedingLineBreak()) {
          const xe = j();
          return ye(), Zt(d.createPostfixUnaryExpression(X, xe), X.pos);
        }
        return X;
      }
      function oy() {
        const X = ee();
        let xe;
        return j() === 102 ? Yt(rm) ? (oe |= 4194304, xe = _c()) : Yt(nm) ? (ye(), ye(), xe = Zt(d.createMetaProperty(102, ac()), X), xe.name.escapedText === "defer" ? (j() === 21 || j() === 30) && (oe |= 4194304) : oe |= 8388608) : xe = pT() : xe = j() === 108 ? to() : pT(), Ed(X, xe);
      }
      function pT() {
        return mh(ee(), _p(), !0);
      }
      function to() {
        const X = ee();
        let xe = _c();
        if (j() === 30) {
          const He = ee(), Tt = Jt(D1);
          Tt !== void 0 && (rr(He, ee(), p.super_may_not_use_type_arguments), up() || (xe = d.createExpressionWithTypeArguments(xe, Tt)));
        }
        return j() === 21 || j() === 25 || j() === 23 ? xe : (Yc(25, p.super_must_be_followed_by_an_argument_list_or_member_access), Zt(R(xe, Rt(!0, !0, !0)), X));
      }
      function dh(X, xe, He, Tt = !1) {
        const zt = ee(), Mr = hP(X);
        let Kn;
        if (Mr.kind === 287) {
          let Ki = Pn(Mr), di;
          const xn = Ki[Ki.length - 1];
          if (xn?.kind === 285 && !Ov(xn.openingElement.tagName, xn.closingElement.tagName) && Ov(Mr.tagName, xn.closingElement.tagName)) {
            const ya = xn.children.end, Bi = Zt(d.createJsxElement(xn.openingElement, xn.children, Zt(d.createJsxClosingElement(Zt(k(""), ya, ya)), ya, ya)), xn.openingElement.pos, ya);
            Ki = Is([...Ki.slice(0, Ki.length - 1), Bi], Ki.pos, ya), di = xn.closingElement;
          } else
            di = $r(Mr, X), Ov(Mr.tagName, di.tagName) || (He && qd(He) && Ov(di.tagName, He.tagName) ? Oe(Mr.tagName, p.JSX_element_0_has_no_corresponding_closing_tag, eD(ge, Mr.tagName)) : Oe(di.tagName, p.Expected_corresponding_JSX_closing_tag_for_0, eD(ge, Mr.tagName)));
          Kn = Zt(d.createJsxElement(Mr, Ki, di), zt);
        } else Mr.kind === 290 ? Kn = Zt(d.createJsxFragment(Mr, Pn(Mr), sC(X)), zt) : (E.assert(Mr.kind === 286), Kn = Mr);
        if (!Tt && X && j() === 30) {
          const Ki = typeof xe > "u" ? Kn.pos : xe, di = Jt(() => dh(!0, Ki));
          if (di) {
            const xn = Mo(28, !1);
            return nz(xn, di.pos, 0), rr(gs(ge, Ki), di.end, p.JSX_expressions_must_have_one_parent_element), Zt(d.createBinaryExpression(Kn, xn, di), zt);
          }
        }
        return Kn;
      }
      function FE() {
        const X = ee(), xe = d.createJsxText(t.getTokenValue(), Ce === 13);
        return Ce = t.scanJsxToken(), Zt(xe, X);
      }
      function Wi(X, xe) {
        switch (xe) {
          case 1:
            if (yd(X)) Oe(X, p.JSX_fragment_has_no_corresponding_closing_tag);
            else {
              const He = X.tagName;
              rr(Math.min(gs(ge, He.pos), He.end), He.end, p.JSX_element_0_has_no_corresponding_closing_tag, eD(ge, X.tagName));
            }
            return;
          case 31:
          case 7:
            return;
          case 12:
          case 13:
            return FE();
          case 19:
            return Mu(!1);
          case 30:
            return dh(!1, void 0, X);
          default:
            return E.assertNever(xe);
        }
      }
      function Pn(X) {
        const xe = [], He = ee(), Tt = Ft;
        for (Ft |= 16384; ; ) {
          const zt = Wi(X, Ce = t.reScanJsxToken());
          if (!zt || (xe.push(zt), qd(X) && zt?.kind === 285 && !Ov(zt.openingElement.tagName, zt.closingElement.tagName) && Ov(X.tagName, zt.closingElement.tagName))) break;
        }
        return Ft = Tt, Is(xe, He);
      }
      function Ku() {
        const X = ee();
        return Zt(d.createJsxAttributes(Qs(13, wa)), X);
      }
      function hP(X) {
        const xe = ee();
        if (ct(30), j() === 32)
          return wt(), Zt(d.createJsxOpeningFragment(), xe);
        const He = cy(), Tt = (Xt & 524288) === 0 ? o0() : void 0, zt = Ku();
        let Mr;
        return j() === 32 ? (wt(), Mr = d.createJsxOpeningElement(He, Tt, zt)) : (ct(44), ct(32, void 0, !1) && (X ? ye() : wt()), Mr = d.createJsxSelfClosingElement(He, Tt, zt)), Zt(Mr, xe);
      }
      function cy() {
        const X = ee(), xe = Sn();
        if (Gd(xe)) return xe;
        let He = xe;
        for (; ia(25); ) He = Zt(R(He, Rt(!0, !1, !1)), X);
        return He;
      }
      function Sn() {
        const X = ee();
        kt();
        const xe = j() === 110, He = Qo();
        return ia(59) ? (kt(), Zt(d.createJsxNamespacedName(He, Qo()), X)) : xe ? Zt(d.createToken(110), X) : He;
      }
      function Mu(X) {
        const xe = ee();
        if (!ct(19)) return;
        let He, Tt;
        return j() !== 20 && (X || (He = ja(26)), Tt = Sc()), X ? ct(20) : ct(20, void 0, !1) && wt(), Zt(d.createJsxExpression(He, Tt), xe);
      }
      function wa() {
        if (j() === 19) return uy();
        const X = ee();
        return Zt(d.createJsxAttribute(aC(), ly()), X);
      }
      function ly() {
        if (j() === 64) {
          if (qt() === 11) return Cn();
          if (j() === 19) return Mu(!0);
          if (j() === 30) return dh(!0);
          Ve(p.or_JSX_element_expected);
        }
      }
      function aC() {
        const X = ee();
        kt();
        const xe = Qo();
        return ia(59) ? (kt(), Zt(d.createJsxNamespacedName(xe, Qo()), X)) : xe;
      }
      function uy() {
        const X = ee();
        ct(19), ct(26);
        const xe = Sc();
        return ct(20), Zt(d.createJsxSpreadAttribute(xe), X);
      }
      function $r(X, xe) {
        const He = ee();
        ct(31);
        const Tt = cy();
        return ct(32, void 0, !1) && (xe || !Ov(X.tagName, Tt) ? ye() : wt()), Zt(d.createJsxClosingElement(Tt), He);
      }
      function sC(X) {
        const xe = ee();
        return ct(31), ct(32, p.Expected_corresponding_closing_tag_for_JSX_fragment, !1) && (X ? ye() : wt()), Zt(d.createJsxJsxClosingFragment(), xe);
      }
      function dT() {
        E.assert(ot !== 1, "Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");
        const X = ee();
        ct(30);
        const xe = Ql();
        ct(32);
        const He = Gm();
        return Zt(d.createTypeAssertion(xe, He), X);
      }
      function d_() {
        return ye(), M_(j()) || j() === 23 || up();
      }
      function xg() {
        return j() === 29 && Yt(d_);
      }
      function sd(X) {
        if (X.flags & 64) return !0;
        if (mk(X)) {
          let xe = X.expression;
          for (; mk(xe) && !(xe.flags & 64); ) xe = xe.expression;
          if (xe.flags & 64) {
            for (; mk(X); )
              X.flags |= 64, X = X.expression;
            return !0;
          }
        }
        return !1;
      }
      function Zv(X, xe, He) {
        const Tt = Rt(!0, !0, !0), zt = He || sd(xe), Mr = zt ? G(xe, He, Tt) : R(xe, Tt);
        return zt && Oi(Mr.name) && Oe(Mr.name, p.An_optional_chain_cannot_contain_private_identifiers), rh(xe) && xe.typeArguments && rr(xe.typeArguments.pos - 1, gs(ge, xe.typeArguments.end) + 1, p.An_instantiation_expression_cannot_be_followed_by_a_property_access), Zt(Mr, X);
      }
      function mT(X, xe, He) {
        let Tt;
        if (j() === 24) Tt = Mo(80, !0, p.An_element_access_expression_should_take_an_argument);
        else {
          const zt = Da(Sc);
          ep(zt) && (zt.text = ou(zt.text)), Tt = zt;
        }
        return ct(24), Zt(He || sd(xe) ? z(xe, He, Tt) : L(xe, Tt), X);
      }
      function mh(X, xe, He) {
        for (; ; ) {
          let Tt, zt = !1;
          if (He && xg() ? (Tt = Yc(29), zt = M_(j())) : zt = ia(25), zt) {
            xe = Zv(X, xe, Tt);
            continue;
          }
          if ((Tt || !xt()) && ia(23)) {
            xe = mT(X, xe, Tt);
            continue;
          }
          if (up()) {
            xe = !Tt && xe.kind === 234 ? Hm(X, xe.expression, Tt, xe.typeArguments) : Hm(X, xe, Tt, void 0);
            continue;
          }
          if (!Tt) {
            if (j() === 54 && !t.hasPrecedingLineBreak()) {
              ye(), xe = Zt(d.createNonNullExpression(xe), X);
              continue;
            }
            const Mr = Jt(D1);
            if (Mr) {
              xe = Zt(d.createExpressionWithTypeArguments(xe, Mr), X);
              continue;
            }
          }
          return xe;
        }
      }
      function up() {
        return j() === 15 || j() === 16;
      }
      function Hm(X, xe, He, Tt) {
        const zt = d.createTaggedTemplateExpression(xe, Tt, j() === 15 ? (fn(!0), Cn()) : ve(!0));
        return (He || xe.flags & 64) && (zt.flags |= 64), zt.questionDotToken = He, Zt(zt, X);
      }
      function Ed(X, xe) {
        for (; ; ) {
          xe = mh(X, xe, !0);
          let He;
          const Tt = ja(29);
          if (Tt && (He = Jt(D1), up())) {
            xe = Hm(X, xe, Tt, He);
            continue;
          }
          if (He || j() === 21) {
            !Tt && xe.kind === 234 && (He = xe.typeArguments, xe = xe.expression);
            const zt = _y();
            xe = Zt(Tt || sd(xe) ? U(xe, Tt, He, zt) : H(xe, He, zt), X);
            continue;
          }
          if (Tt) {
            const zt = Mo(80, !1, p.Identifier_expected);
            xe = Zt(G(xe, Tt, zt), X);
          }
          break;
        }
        return xe;
      }
      function _y() {
        ct(21);
        const X = Fu(11, yT);
        return ct(22), X;
      }
      function D1() {
        if ((Xt & 524288) !== 0 || Cr() !== 30) return;
        ye();
        const X = Fu(20, Ql);
        if (Pr() === 32)
          return ye(), X && gT() ? X : void 0;
      }
      function gT() {
        switch (j()) {
          case 21:
          case 15:
          case 16:
            return !0;
          case 30:
          case 32:
          case 40:
          case 41:
            return !1;
        }
        return t.hasPrecedingLineBreak() || am() || !cp();
      }
      function _p() {
        switch (j()) {
          case 15:
            t.getTokenFlags() & 26656 && fn(!1);
          case 9:
          case 10:
          case 11:
            return Cn();
          case 110:
          case 108:
          case 106:
          case 112:
          case 97:
            return _c();
          case 21:
            return fy();
          case 23:
            return Gf();
          case 19:
            return gh();
          case 134:
            if (!Yt(zc)) break;
            return w1();
          case 60:
            return sa();
          case 86:
            return Vs();
          case 100:
            return w1();
          case 105:
            return hh();
          case 44:
          case 69:
            if (vr() === 14) return Cn();
            break;
          case 16:
            return ve(!1);
          case 81:
            return Bn();
        }
        return Ma(p.Expression_expected);
      }
      function fy() {
        const X = ee(), xe = q();
        ct(21);
        const He = Da(Sc);
        return ct(22), Zr(Zt(ie(He), X), xe);
      }
      function oC() {
        const X = ee();
        ct(26);
        const xe = Lc(!0);
        return Zt(d.createSpreadElement(xe), X);
      }
      function hT() {
        return j() === 26 ? oC() : j() === 28 ? Zt(d.createOmittedExpression(), ee()) : Lc(!0);
      }
      function yT() {
        return na(n, hT);
      }
      function Gf() {
        const X = ee(), xe = t.getTokenStart(), He = ct(23), Tt = t.hasPrecedingLineBreak(), zt = Fu(15, hT);
        return To(23, 24, He, xe), Zt(N(zt, Tt), X);
      }
      function LE() {
        const X = ee(), xe = q();
        if (ja(26)) {
          const xn = Lc(!0);
          return Zr(Zt(d.createSpreadAssignment(xn), X), xe);
        }
        const He = Nn(!0);
        if (tn(139)) return ju(X, xe, He, 178, 0);
        if (tn(153)) return ju(X, xe, He, 179, 0);
        const Tt = ja(42), zt = Qt(), Mr = St(), Kn = ja(58), Ki = ja(54);
        if (Tt || j() === 21 || j() === 30) return ys(X, xe, He, Tt, Mr, Kn, Ki);
        let di;
        if (zt && j() !== 59) {
          const xn = ja(64), ya = xn ? Da(() => Lc(!0)) : void 0;
          di = d.createShorthandPropertyAssignment(Mr, ya), di.equalsToken = xn;
        } else {
          ct(59);
          const xn = Da(() => Lc(!0));
          di = d.createPropertyAssignment(Mr, xn);
        }
        return di.modifiers = He, di.questionToken = Kn, di.exclamationToken = Ki, Zr(Zt(di, X), xe);
      }
      function gh() {
        const X = ee(), xe = t.getTokenStart(), He = ct(19), Tt = t.hasPrecedingLineBreak(), zt = Fu(12, LE, !0);
        return To(19, 20, He, xe), Zt(M(zt, Tt), X);
      }
      function w1() {
        const X = xt();
        $n(!1);
        const xe = ee(), He = q(), Tt = Nn(!1);
        ct(100);
        const zt = ja(42), Mr = zt ? 1 : 0, Kn = _t(Tt, ZD) ? 2 : 0, Ki = Mr && Kn ? we($m) : Mr ? Pt($m) : Kn ? tt($m) : $m(), di = qf(), xn = li(Mr | Kn), ya = Er(59, !1), Bi = yh(Mr | Kn);
        return $n(X), Zr(Zt(d.createFunctionExpression(Tt, zt, Ki, di, xn, ya, Bi), xe), He);
      }
      function $m() {
        return $t() ? bu() : void 0;
      }
      function hh() {
        const X = ee();
        if (ct(105), ia(25)) {
          const zt = ac();
          return Zt(d.createMetaProperty(105, zt), X);
        }
        let xe = mh(ee(), _p(), !1), He;
        xe.kind === 234 && (He = xe.typeArguments, xe = xe.expression), j() === 29 && Ve(p.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0, eD(ge, xe));
        const Tt = j() === 21 ? _y() : void 0;
        return Zt(pe(xe, He, Tt), X);
      }
      function Dd(X, xe) {
        const He = ee(), Tt = q(), zt = t.getTokenStart(), Mr = ct(19, xe);
        if (Mr || X) {
          const Kn = t.hasPrecedingLineBreak(), Ki = Qs(1, od);
          To(19, 20, Mr, zt);
          const di = Zr(Zt(W(Ki, Kn), He), Tt);
          return j() === 64 && (Ve(p.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses), ye()), di;
        } else return Zr(Zt(W(A_(), void 0), He), Tt);
      }
      function yh(X, xe) {
        const He = it();
        Ur(!!(X & 1));
        const Tt = Dt();
        zn(!!(X & 2));
        const zt = Ar;
        Ar = !1;
        const Mr = xt();
        Mr && $n(!1);
        const Kn = Dd(!!(X & 16), xe);
        return Mr && $n(!0), Ar = zt, Ur(He), zn(Tt), Kn;
      }
      function Kv() {
        const X = ee(), xe = q();
        return ct(27), Zr(Zt(d.createEmptyStatement(), X), xe);
      }
      function Yl() {
        const X = ee(), xe = q();
        ct(101);
        const He = t.getTokenStart(), Tt = ct(21), zt = Da(Sc);
        return To(21, 22, Tt, He), Zr(Zt(he(zt, od(), ia(93) ? od() : void 0), X), xe);
      }
      function vT() {
        const X = ee(), xe = q();
        ct(92);
        const He = od();
        ct(117);
        const Tt = t.getTokenStart(), zt = ct(21), Mr = Da(Sc);
        return To(21, 22, zt, Tt), ia(27), Zr(Zt(d.createDoStatement(He, Mr), X), xe);
      }
      function vh() {
        const X = ee(), xe = q();
        ct(117);
        const He = t.getTokenStart(), Tt = ct(21), zt = Da(Sc);
        return To(21, 22, Tt, He), Zr(Zt(fe(zt, od()), X), xe);
      }
      function bT() {
        const X = ee(), xe = q();
        ct(99);
        const He = ja(135);
        ct(21);
        let Tt;
        j() !== 27 && (j() === 115 || j() === 121 || j() === 87 || j() === 160 && Yt(JE) || j() === 135 && Yt(Tc) ? Tt = fC(!0) : Tt = Lr(Sc));
        let zt;
        if (He ? ct(165) : ia(165)) {
          const Mr = Da(() => Lc(!0));
          ct(22), zt = $(He, Tt, Mr, od());
        } else if (ia(103)) {
          const Mr = Da(Sc);
          ct(22), zt = d.createForInStatement(Tt, Mr, od());
        } else {
          ct(27);
          const Mr = j() !== 27 && j() !== 22 ? Da(Sc) : void 0;
          ct(27);
          const Kn = j() !== 22 ? Da(Sc) : void 0;
          ct(22), zt = de(Tt, Mr, Kn, od());
        }
        return Zr(Zt(zt, X), xe);
      }
      function C2(X) {
        const xe = ee(), He = q();
        ct(X === 253 ? 83 : 88);
        const Tt = fa() ? void 0 : Ma();
        return Yi(), Zr(Zt(X === 253 ? d.createBreakStatement(Tt) : d.createContinueStatement(Tt), xe), He);
      }
      function a0() {
        const X = ee(), xe = q();
        ct(107);
        const He = fa() ? void 0 : Da(Sc);
        return Yi(), Zr(Zt(d.createReturnStatement(He), X), xe);
      }
      function ST() {
        const X = ee(), xe = q();
        ct(118);
        const He = t.getTokenStart(), Tt = ct(21), zt = Da(Sc);
        To(21, 22, Tt, He);
        const Mr = Ea(67108864, od);
        return Zr(Zt(d.createWithStatement(zt, Mr), X), xe);
      }
      function TT() {
        const X = ee(), xe = q();
        ct(84);
        const He = Da(Sc);
        ct(59);
        const Tt = Qs(3, od);
        return Zr(Zt(d.createCaseClause(He, Tt), X), xe);
      }
      function ME() {
        const X = ee();
        ct(90), ct(59);
        const xe = Qs(3, od);
        return Zt(d.createDefaultClause(xe), X);
      }
      function yP() {
        return j() === 84 ? TT() : ME();
      }
      function RE() {
        const X = ee();
        ct(19);
        const xe = Qs(2, yP);
        return ct(20), Zt(d.createCaseBlock(xe), X);
      }
      function P1() {
        const X = ee(), xe = q();
        ct(109), ct(21);
        const He = Da(Sc);
        ct(22);
        const Tt = RE();
        return Zr(Zt(d.createSwitchStatement(He, Tt), X), xe);
      }
      function A1() {
        const X = ee(), xe = q();
        ct(111);
        let He = t.hasPrecedingLineBreak() ? void 0 : Da(Sc);
        return He === void 0 && (Xe++, He = Zt(k(""), ee())), $a() || Mi(He), Zr(Zt(d.createThrowStatement(He), X), xe);
      }
      function cC() {
        const X = ee(), xe = q();
        ct(113);
        const He = Dd(!1), Tt = j() === 85 ? vP() : void 0;
        let zt;
        return (!Tt || j() === 98) && (ct(98, p.catch_or_finally_expected), zt = Dd(!1)), Zr(Zt(d.createTryStatement(He, Tt, zt), X), xe);
      }
      function vP() {
        const X = ee();
        ct(85);
        let xe;
        ia(21) ? (xe = ET(), ct(22)) : xe = void 0;
        const He = Dd(!1);
        return Zt(d.createCatchClause(xe, He), X);
      }
      function xT() {
        const X = ee(), xe = q();
        return ct(89), Yi(), Zr(Zt(d.createDebuggerStatement(), X), xe);
      }
      function jE() {
        const X = ee();
        let xe = q(), He;
        const Tt = j() === 21, zt = Da(Sc);
        return Fe(zt) && ia(59) ? He = d.createLabeledStatement(zt, od()) : ($a() || Mi(zt), He = se(zt), Tt && (xe = !1)), Zr(Zt(He, X), xe);
      }
      function s0() {
        return ye(), M_(j()) && !t.hasPrecedingLineBreak();
      }
      function lC() {
        return ye(), j() === 86 && !t.hasPrecedingLineBreak();
      }
      function zc() {
        return ye(), j() === 100 && !t.hasPrecedingLineBreak();
      }
      function Zl() {
        return ye(), (M_(j()) || j() === 9 || j() === 10 || j() === 11) && !t.hasPrecedingLineBreak();
      }
      function uC() {
        for (; ; ) switch (j()) {
          case 115:
          case 121:
          case 87:
          case 100:
          case 86:
          case 94:
            return !0;
          case 160:
            return _C();
          case 135:
            return E2();
          case 120:
          case 156:
          case 166:
            return ph();
          case 144:
          case 145:
            return Af();
          case 128:
          case 129:
          case 134:
          case 138:
          case 123:
          case 124:
          case 125:
          case 148:
            const X = j();
            if (ye(), t.hasPrecedingLineBreak()) return !1;
            if (X === 138 && j() === 156) return !0;
            continue;
          case 162:
            return ye(), j() === 19 || j() === 80 || j() === 95;
          case 102:
            return ye(), j() === 166 || j() === 11 || j() === 42 || j() === 19 || M_(j());
          case 95:
            let xe = ye();
            if (xe === 156 && (xe = Yt(ye)), xe === 64 || xe === 42 || xe === 19 || xe === 90 || xe === 130 || xe === 60) return !0;
            continue;
          case 126:
            ye();
            continue;
          default:
            return !1;
        }
      }
      function m_() {
        return Yt(uC);
      }
      function Hf() {
        switch (j()) {
          case 60:
          case 27:
          case 19:
          case 115:
          case 121:
          case 160:
          case 100:
          case 86:
          case 94:
          case 101:
          case 92:
          case 117:
          case 99:
          case 88:
          case 83:
          case 107:
          case 118:
          case 109:
          case 111:
          case 113:
          case 89:
          case 85:
          case 98:
            return !0;
          case 102:
            return m_() || Yt(Wm);
          case 87:
          case 95:
            return m_();
          case 134:
          case 138:
          case 120:
          case 144:
          case 145:
          case 156:
          case 162:
          case 166:
            return !0;
          case 129:
          case 125:
          case 123:
          case 124:
          case 126:
          case 148:
            return m_() || !Yt(s0);
          default:
            return cp();
        }
      }
      function BE() {
        return ye(), $t() || j() === 19 || j() === 23;
      }
      function wd() {
        return Yt(BE);
      }
      function JE() {
        return kT(!0);
      }
      function py() {
        return ye(), j() === 64 || j() === 27 || j() === 59;
      }
      function kT(X) {
        return ye(), X && j() === 165 ? Yt(py) : ($t() || j() === 19) && !t.hasPrecedingLineBreak();
      }
      function _C() {
        return Yt(kT);
      }
      function Tc(X) {
        return ye() === 160 ? kT(X) : !1;
      }
      function E2() {
        return Yt(Tc);
      }
      function od() {
        switch (j()) {
          case 27:
            return Kv();
          case 19:
            return Dd(!1);
          case 115:
            return Tu(ee(), q(), void 0);
          case 121:
            if (wd()) return Tu(ee(), q(), void 0);
            break;
          case 135:
            if (E2()) return Tu(ee(), q(), void 0);
            break;
          case 160:
            if (_C()) return Tu(ee(), q(), void 0);
            break;
          case 100:
            return kg(ee(), q(), void 0);
          case 86:
            return H_(ee(), q(), void 0);
          case 101:
            return Yl();
          case 92:
            return vT();
          case 117:
            return vh();
          case 99:
            return bT();
          case 88:
            return C2(252);
          case 83:
            return C2(253);
          case 107:
            return a0();
          case 118:
            return ST();
          case 109:
            return P1();
          case 111:
            return A1();
          case 113:
          case 85:
          case 98:
            return cC();
          case 89:
            return xT();
          case 60:
            return zE();
          case 134:
          case 120:
          case 156:
          case 144:
          case 145:
          case 138:
          case 87:
          case 94:
          case 95:
          case 102:
          case 123:
          case 124:
          case 125:
          case 128:
          case 129:
          case 126:
          case 148:
          case 162:
            if (m_()) return zE();
            break;
        }
        return jE();
      }
      function N1(X) {
        return X.kind === 138;
      }
      function zE() {
        const X = ee(), xe = q(), He = Nn(!0);
        if (_t(He, N1)) {
          const Tt = Ru(X);
          if (Tt) return Tt;
          for (const zt of He) zt.flags |= 33554432;
          return Ea(33554432, () => eb(X, xe, He));
        } else return eb(X, xe, He);
      }
      function Ru(X) {
        return Ea(33554432, () => {
          const xe = Dc(Ft, X);
          if (xe) return zs(xe);
        });
      }
      function eb(X, xe, He) {
        switch (j()) {
          case 115:
          case 121:
          case 87:
          case 160:
            return Tu(X, xe, He);
          case 135:
            if (!E2()) break;
            return Tu(X, xe, He);
          case 100:
            return kg(X, xe, He);
          case 86:
            return H_(X, xe, He);
          case 120:
            return $f(X, xe, He);
          case 156:
            return Yo(X, xe, He);
          case 94:
            return AT(X, xe, He);
          case 162:
          case 144:
          case 145:
            return mM(X, xe, He);
          case 102:
            return HE(X, xe, He);
          case 95:
            switch (ye(), j()) {
              case 90:
              case 64:
                return d8(X, xe, He);
              case 130:
                return L1(X, xe, He);
              default:
                return xP(X, xe, He);
            }
        }
        if (He) {
          const Tt = Mo(283, !0, p.Declaration_expected);
          return zD(Tt, X), Tt.modifiers = He, Tt;
        }
      }
      function tb() {
        return ye() === 11;
      }
      function I1() {
        return ye(), j() === 161 || j() === 64;
      }
      function Af() {
        return ye(), !t.hasPrecedingLineBreak() && (Qt() || j() === 11);
      }
      function D2(X, xe) {
        if (j() !== 19) {
          if (X & 4) {
            ki();
            return;
          }
          if (fa()) {
            Yi();
            return;
          }
        }
        return yh(X, xe);
      }
      function Xm() {
        const X = ee();
        if (j() === 28) return Zt(d.createOmittedExpression(), X);
        const xe = ja(26), He = P2(), Tt = lu();
        return Zt(d.createBindingElement(xe, void 0, He, Tt), X);
      }
      function WE() {
        const X = ee(), xe = ja(26), He = $t();
        let Tt = St(), zt;
        He && j() !== 59 ? (zt = Tt, Tt = void 0) : (ct(59), zt = P2());
        const Mr = lu();
        return Zt(d.createBindingElement(xe, Tt, zt, Mr), X);
      }
      function CT() {
        const X = ee();
        ct(19);
        const xe = Da(() => Fu(9, WE));
        return ct(20), Zt(d.createObjectBindingPattern(xe), X);
      }
      function w2() {
        const X = ee();
        ct(23);
        const xe = Da(() => Fu(10, Xm));
        return ct(24), Zt(d.createArrayBindingPattern(xe), X);
      }
      function O1() {
        return j() === 19 || j() === 23 || j() === 81 || $t();
      }
      function P2(X) {
        return j() === 23 ? w2() : j() === 19 ? CT() : bu(X);
      }
      function UE() {
        return ET(!0);
      }
      function ET(X) {
        const xe = ee(), He = q(), Tt = P2(p.Private_identifiers_are_not_allowed_in_variable_declarations);
        let zt;
        X && Tt.kind === 80 && j() === 54 && !t.hasPrecedingLineBreak() && (zt = _c());
        const Mr = im(), Kn = Tg(j()) ? void 0 : lu();
        return Zr(Zt(Se(Tt, zt, Mr, Kn), xe), He);
      }
      function fC(X) {
        const xe = ee();
        let He = 0;
        switch (j()) {
          case 115:
            break;
          case 121:
            He |= 1;
            break;
          case 87:
            He |= 2;
            break;
          case 160:
            He |= 4;
            break;
          case 135:
            if (!E2()) break;
            He |= 6, ye();
            break;
          default:
            E.fail();
        }
        ye();
        let Tt;
        if (j() === 165 && Yt(DT)) Tt = A_();
        else {
          const zt = ut();
          tr(X), Tt = Fu(8, X ? ET : UE), tr(zt);
        }
        return Zt(Be(Tt, He), xe);
      }
      function DT() {
        return Su() && ye() === 22;
      }
      function Tu(X, xe, He) {
        const Tt = fC(!1);
        return Yi(), Zr(Zt(Q(He, Tt), X), xe);
      }
      function kg(X, xe, He) {
        const Tt = Dt(), zt = Cm(He);
        ct(100);
        const Mr = ja(42), Kn = zt & 2048 ? $m() : bu(), Ki = Mr ? 1 : 0, di = zt & 1024 ? 2 : 0, xn = qf();
        zt & 32 && zn(!0);
        const ya = li(Ki | di), Bi = Er(59, !1), hi = D2(Ki | di, p.or_expected);
        return zn(Tt), Zr(Zt(d.createFunctionDeclaration(He, Mr, Kn, xn, ya, Bi, hi), X), xe);
      }
      function wT() {
        if (j() === 137) return ct(137);
        if (j() === 11 && Yt(ye) === 21) return Jt(() => {
          const X = Cn();
          return X.text === "constructor" ? X : void 0;
        });
      }
      function pC(X, xe, He) {
        return Jt(() => {
          if (wT()) {
            const Tt = qf(), zt = li(0), Mr = Er(59, !1), Kn = D2(0, p.or_expected), Ki = d.createConstructorDeclaration(He, zt, Kn);
            return Ki.typeParameters = Tt, Ki.type = Mr, Zr(Zt(Ki, X), xe);
          }
        });
      }
      function ys(X, xe, He, Tt, zt, Mr, Kn, Ki) {
        const di = Tt ? 1 : 0, xn = _t(He, ZD) ? 2 : 0, ya = qf(), Bi = li(di | xn), hi = Er(59, !1), No = D2(di | xn, Ki), Pd = d.createMethodDeclaration(He, Tt, zt, Mr, ya, Bi, hi, No);
        return Pd.exclamationToken = Kn, Zr(Zt(Pd, X), xe);
      }
      function mn(X, xe, He, Tt, zt) {
        const Mr = !zt && !t.hasPrecedingLineBreak() ? ja(54) : void 0, Kn = im(), Ki = na(90112, lu);
        return xa(Tt, Kn, Ki), Zr(Zt(d.createPropertyDeclaration(He, Tt, zt || Mr, Kn, Ki), X), xe);
      }
      function Nf(X, xe, He) {
        const Tt = ja(42), zt = St(), Mr = ja(58);
        return Tt || j() === 21 || j() === 30 ? ys(X, xe, He, Tt, zt, Mr, void 0, p.or_expected) : mn(X, xe, He, zt, Mr);
      }
      function ju(X, xe, He, Tt, zt) {
        const Mr = St(), Kn = qf(), Ki = li(0), di = Er(59, !1), xn = D2(zt), ya = Tt === 178 ? d.createGetAccessorDeclaration(He, Mr, Ki, di, xn) : d.createSetAccessorDeclaration(He, Mr, Ki, xn);
        return ya.typeParameters = Kn, ef(ya) && (ya.type = di), Zr(Zt(ya, X), xe);
      }
      function VE() {
        let X;
        if (j() === 60) return !0;
        for (; Jy(j()); ) {
          if (X = j(), iB(X)) return !0;
          ye();
        }
        if (j() === 42 || (I() && (X = j(), ye()), j() === 23)) return !0;
        if (X !== void 0) {
          if (!z_(X) || X === 153 || X === 139) return !0;
          switch (j()) {
            case 21:
            case 30:
            case 54:
            case 59:
            case 64:
            case 58:
              return !0;
            default:
              return fa();
          }
        }
        return !1;
      }
      function dC(X, xe, He) {
        Yc(126);
        const Tt = C(), zt = Zr(Zt(d.createClassStaticBlockDeclaration(Tt), X), xe);
        return zt.modifiers = He, zt;
      }
      function C() {
        const X = it(), xe = Dt();
        Ur(!1), zn(!0);
        const He = Dd(!1);
        return Ur(X), zn(xe), He;
      }
      function _e() {
        if (Dt() && j() === 135) {
          const X = ee(), xe = Ma(p.Expression_expected);
          return ye(), Ed(X, mh(X, xe, !0));
        }
        return oy();
      }
      function Et() {
        const X = ee();
        if (!ia(60)) return;
        const xe = ne(_e);
        return Zt(d.createDecorator(xe), X);
      }
      function nr(X, xe, He) {
        const Tt = ee(), zt = j();
        if (j() === 87 && xe) {
          if (!Jt(ai)) return;
        } else {
          if (He && j() === 126 && Yt(SP)) return;
          if (X && j() === 126) return;
          if (!cl()) return;
        }
        return Zt(P(zt), Tt);
      }
      function Nn(X, xe, He) {
        const Tt = ee();
        let zt, Mr, Kn, Ki = !1, di = !1, xn = !1;
        if (X && j() === 60) for (; Mr = Et(); ) zt = kr(zt, Mr);
        for (; Kn = nr(Ki, xe, He); )
          Kn.kind === 126 && (Ki = !0), zt = kr(zt, Kn), di = !0;
        if (di && X && j() === 60) for (; Mr = Et(); )
          zt = kr(zt, Mr), xn = !0;
        if (xn) for (; Kn = nr(Ki, xe, He); )
          Kn.kind === 126 && (Ki = !0), zt = kr(zt, Kn);
        return zt && Is(zt, Tt);
      }
      function Ui() {
        let X;
        if (j() === 134) {
          const xe = ee();
          ye(), X = Is([Zt(P(134), xe)], xe);
        }
        return X;
      }
      function oa() {
        const X = ee(), xe = q();
        if (j() === 27)
          return ye(), Zr(Zt(d.createSemicolonClassElement(), X), xe);
        const He = Nn(!0, !0, !0);
        if (j() === 126 && Yt(SP)) return dC(X, xe, He);
        if (tn(139)) return ju(X, xe, He, 178, 0);
        if (tn(153)) return ju(X, xe, He, 179, 0);
        if (j() === 137 || j() === 11) {
          const Tt = pC(X, xe, He);
          if (Tt) return Tt;
        }
        if (yo()) return Fp(X, xe, He);
        if (M_(j()) || j() === 11 || j() === 9 || j() === 10 || j() === 42 || j() === 23) if (_t(He, N1)) {
          for (const Tt of He) Tt.flags |= 33554432;
          return Ea(33554432, () => Nf(X, xe, He));
        } else return Nf(X, xe, He);
        return He ? mn(X, xe, He, Mo(80, !0, p.Declaration_expected), void 0) : E.fail("Should not have attempted to parse class member declaration.");
      }
      function sa() {
        const X = ee(), xe = q(), He = Nn(!0);
        if (j() === 86) return Ys(X, xe, He, 232);
        const Tt = Mo(283, !0, p.Expression_expected);
        return zD(Tt, X), Tt.modifiers = He, Tt;
      }
      function Vs() {
        return Ys(ee(), q(), void 0, 232);
      }
      function H_(X, xe, He) {
        return Ys(X, xe, He, 264);
      }
      function Ys(X, xe, He, Tt) {
        const zt = Dt();
        ct(86);
        const Mr = rb(), Kn = qf();
        _t(He, ck) && zn(!0);
        const Ki = If();
        let di;
        return ct(19) ? (di = mC(), ct(20)) : di = A_(), zn(zt), Zr(Zt(Tt === 264 ? d.createClassDeclaration(He, Mr, Kn, Ki, di) : d.createClassExpression(He, Mr, Kn, Ki, di), X), xe);
      }
      function rb() {
        return $t() && !Lp() ? Wl($t()) : void 0;
      }
      function Lp() {
        return j() === 119 && Yt(rf);
      }
      function If() {
        if (nb()) return Qs(22, fp);
      }
      function fp() {
        const X = ee(), xe = j();
        E.assert(xe === 96 || xe === 119), ye();
        const He = Fu(7, PT);
        return Zt(d.createHeritageClause(xe, He), X);
      }
      function PT() {
        const X = ee(), xe = oy();
        if (xe.kind === 234) return xe;
        const He = o0();
        return Zt(d.createExpressionWithTypeArguments(xe, He), X);
      }
      function o0() {
        return j() === 30 ? Uf(20, Ql, 30, 32) : void 0;
      }
      function nb() {
        return j() === 96 || j() === 119;
      }
      function mC() {
        return Qs(5, oa);
      }
      function $f(X, xe, He) {
        ct(120);
        const Tt = Ma(), zt = qf(), Mr = If(), Kn = g2();
        return Zr(Zt(d.createInterfaceDeclaration(He, Tt, zt, Mr, Kn), X), xe);
      }
      function Yo(X, xe, He) {
        ct(156), t.hasPrecedingLineBreak() && Ve(p.Line_break_not_permitted_here);
        const Tt = Ma(), zt = qf();
        ct(64);
        const Mr = j() === 141 && Jt(k1) || Ql();
        return Yi(), Zr(Zt(d.createTypeAliasDeclaration(He, Tt, zt, Mr), X), xe);
      }
      function qE() {
        const X = ee(), xe = q(), He = St(), Tt = Da(lu);
        return Zr(Zt(d.createEnumMember(He, Tt), X), xe);
      }
      function AT(X, xe, He) {
        ct(94);
        const Tt = Ma();
        let zt;
        return ct(19) ? (zt = Ge(() => Fu(6, qE)), ct(20)) : zt = A_(), Zr(Zt(d.createEnumDeclaration(He, Tt, zt), X), xe);
      }
      function F1() {
        const X = ee();
        let xe;
        return ct(19) ? (xe = Qs(1, od), ct(20)) : xe = A_(), Zt(d.createModuleBlock(xe), X);
      }
      function A2(X, xe, He, Tt) {
        const zt = Tt & 32, Mr = Tt & 8 ? ac() : Ma(), Kn = ia(25) ? A2(ee(), !1, void 0, 8 | zt) : F1();
        return Zr(Zt(d.createModuleDeclaration(He, Mr, Kn, Tt), X), xe);
      }
      function bP(X, xe, He) {
        let Tt = 0, zt;
        j() === 162 ? (zt = Ma(), Tt |= 2048) : (zt = Cn(), zt.text = ou(zt.text));
        let Mr;
        return j() === 19 ? Mr = F1() : Yi(), Zr(Zt(d.createModuleDeclaration(He, zt, Mr, Tt), X), xe);
      }
      function mM(X, xe, He) {
        let Tt = 0;
        if (j() === 162) return bP(X, xe, He);
        if (ia(145)) Tt |= 32;
        else if (ct(144), j() === 11) return bP(X, xe, He);
        return A2(X, xe, He, Tt);
      }
      function gM() {
        return j() === 149 && Yt(gC);
      }
      function gC() {
        return ye() === 21;
      }
      function SP() {
        return ye() === 19;
      }
      function GE() {
        return ye() === 44;
      }
      function L1(X, xe, He) {
        ct(130), ct(145);
        const Tt = Ma();
        Yi();
        const zt = d.createNamespaceExportDeclaration(Tt);
        return zt.modifiers = He, Zr(Zt(zt, X), xe);
      }
      function HE(X, xe, He) {
        ct(102);
        const Tt = t.getTokenFullStart();
        let zt;
        Qt() && (zt = Ma());
        let Mr;
        if (zt?.escapedText === "type" && (j() !== 161 || Qt() && Yt(I1)) && (Qt() || p8()) ? (Mr = 156, zt = Qt() ? Ma() : void 0) : zt?.escapedText === "defer" && (j() === 161 ? !Yt(tb) : j() !== 28 && j() !== 64) && (Mr = 166, zt = Qt() ? Ma() : void 0), zt && !dy() && Mr !== 166) return Xi(X, xe, He, zt, Mr === 156);
        const Kn = ib(zt, Tt, Mr, void 0), Ki = ab(), di = f8();
        return Yi(), Zr(Zt(d.createImportDeclaration(He, Kn, Ki, di), X), xe);
      }
      function ib(X, xe, He, Tt = !1) {
        let zt;
        return (X || j() === 42 || j() === 19) && (zt = I2(X, xe, He, Tt), ct(161)), zt;
      }
      function f8() {
        const X = j();
        if (X === 118 || X === 132 && !t.hasPrecedingLineBreak()) return $E(X);
      }
      function N2() {
        const X = ee(), xe = M_(j()) ? ac() : Ul(11);
        ct(59);
        const He = Lc(!0);
        return Zt(d.createImportAttribute(xe, He), X);
      }
      function $E(X, xe) {
        const He = ee();
        xe || ct(X);
        const Tt = t.getTokenStart();
        if (ct(19)) {
          const zt = t.hasPrecedingLineBreak(), Mr = Fu(24, N2, !0);
          if (!ct(20)) {
            const Kn = Wo(K);
            Kn && Kn.code === p._0_expected.code && ts(Kn, $x(ce, ge, Tt, 1, p.The_parser_expected_to_find_a_1_to_match_the_0_token_here, "{", "}"));
          }
          return Zt(d.createImportAttributes(Mr, zt, X), He);
        } else {
          const zt = Is([], ee(), void 0, !1);
          return Zt(d.createImportAttributes(zt, !1, X), He);
        }
      }
      function p8() {
        return j() === 42 || j() === 19;
      }
      function dy() {
        return j() === 28 || j() === 161;
      }
      function Xi(X, xe, He, Tt, zt) {
        ct(64);
        const Mr = Xr();
        return Yi(), Zr(Zt(d.createImportEqualsDeclaration(He, zt, Tt, Mr), X), xe);
      }
      function I2(X, xe, He, Tt) {
        let zt;
        return (!X || ia(28)) && (Tt && t.setSkipJsDocLeadingAsterisks(!0), j() === 42 ? zt = XE() : zt = TP(276), Tt && t.setSkipJsDocLeadingAsterisks(!1)), Zt(d.createImportClause(He, X, zt), xe);
      }
      function Xr() {
        return gM() ? O2() : Z(!1);
      }
      function O2() {
        const X = ee();
        ct(149), ct(21);
        const xe = ab();
        return ct(22), Zt(d.createExternalModuleReference(xe), X);
      }
      function ab() {
        if (j() === 11) {
          const X = Cn();
          return X.text = ou(X.text), X;
        } else return Sc();
      }
      function XE() {
        const X = ee();
        ct(42), ct(130);
        const xe = Ma();
        return Zt(d.createNamespaceImport(xe), X);
      }
      function hC() {
        return M_(j()) || j() === 11;
      }
      function F2(X) {
        return j() === 11 ? Cn() : X();
      }
      function TP(X) {
        const xe = ee();
        return Zt(X === 276 ? d.createNamedImports(Uf(23, L2, 19, 20)) : d.createNamedExports(Uf(23, hM, 19, 20)), xe);
      }
      function hM() {
        const X = q();
        return Zr(M1(282), X);
      }
      function L2() {
        return M1(277);
      }
      function M1(X) {
        const xe = ee();
        let He = z_(j()) && !Qt(), Tt = t.getTokenStart(), zt = t.getTokenEnd(), Mr = !1, Kn, Ki = !0, di = F2(ac);
        if (di.kind === 80 && di.escapedText === "type")
          if (j() === 130) {
            const ya = ac();
            if (j() === 130) {
              const Bi = ac();
              hC() ? (Mr = !0, Kn = ya, di = F2(xn), Ki = !1) : (Kn = di, di = Bi, Ki = !1);
            } else hC() ? (Kn = di, Ki = !1, di = F2(xn)) : (Mr = !0, di = ya);
          } else hC() && (Mr = !0, di = F2(xn));
        return Ki && j() === 130 && (Kn = di, ct(130), di = F2(xn)), X === 277 && (di.kind !== 80 ? (rr(gs(ge, di.pos), di.end, p.Identifier_expected), di = Ud(Mo(80, !1), di.pos, di.pos)) : He && rr(Tt, zt, p.Identifier_expected)), Zt(X === 277 ? d.createImportSpecifier(Mr, Kn, di) : d.createExportSpecifier(Mr, Kn, di), xe);
        function xn() {
          return He = z_(j()) && !Qt(), Tt = t.getTokenStart(), zt = t.getTokenEnd(), ac();
        }
      }
      function yM(X) {
        return Zt(d.createNamespaceExport(F2(ac)), X);
      }
      function xP(X, xe, He) {
        const Tt = Dt();
        zn(!0);
        let zt, Mr, Kn;
        const Ki = ia(156), di = ee();
        ia(42) ? (ia(130) && (zt = yM(di)), ct(161), Mr = ab()) : (zt = TP(280), (j() === 161 || j() === 11 && !t.hasPrecedingLineBreak()) && (ct(161), Mr = ab()));
        const xn = j();
        return Mr && (xn === 118 || xn === 132) && !t.hasPrecedingLineBreak() && (Kn = $E(xn)), Yi(), zn(Tt), Zr(Zt(d.createExportDeclaration(He, Ki, zt, Mr, Kn), X), xe);
      }
      function d8(X, xe, He) {
        const Tt = Dt();
        zn(!0);
        let zt;
        ia(64) ? zt = !0 : ct(90);
        const Mr = Lc(!0);
        return Yi(), zn(Tt), Zr(Zt(d.createExportAssignment(He, zt, Mr), X), xe);
      }
      let QE;
      ((X) => {
        X[X.SourceElements = 0] = "SourceElements", X[X.BlockStatements = 1] = "BlockStatements", X[X.SwitchClauses = 2] = "SwitchClauses", X[X.SwitchClauseStatements = 3] = "SwitchClauseStatements", X[X.TypeMembers = 4] = "TypeMembers", X[X.ClassMembers = 5] = "ClassMembers", X[X.EnumMembers = 6] = "EnumMembers", X[X.HeritageClauseElement = 7] = "HeritageClauseElement", X[X.VariableDeclarations = 8] = "VariableDeclarations", X[X.ObjectBindingElements = 9] = "ObjectBindingElements", X[X.ArrayBindingElements = 10] = "ArrayBindingElements", X[X.ArgumentExpressions = 11] = "ArgumentExpressions", X[X.ObjectLiteralMembers = 12] = "ObjectLiteralMembers", X[X.JsxAttributes = 13] = "JsxAttributes", X[X.JsxChildren = 14] = "JsxChildren", X[X.ArrayLiteralMembers = 15] = "ArrayLiteralMembers", X[X.Parameters = 16] = "Parameters", X[X.JSDocParameters = 17] = "JSDocParameters", X[X.RestProperties = 18] = "RestProperties", X[X.TypeParameters = 19] = "TypeParameters", X[X.TypeArguments = 20] = "TypeArguments", X[X.TupleElementTypes = 21] = "TupleElementTypes", X[X.HeritageClauses = 22] = "HeritageClauses", X[X.ImportOrExportSpecifiers = 23] = "ImportOrExportSpecifiers", X[X.ImportAttributes = 24] = "ImportAttributes", X[X.JSDocComment = 25] = "JSDocComment", X[X.Count = 26] = "Count";
      })(QE || (QE = {}));
      let YE;
      ((X) => {
        X[X.False = 0] = "False", X[X.True = 1] = "True", X[X.Unknown = 2] = "Unknown";
      })(YE || (YE = {}));
      let kP;
      ((X) => {
        function xe(xn, ya, Bi) {
          Gr("file.js", xn, 99, void 0, 1, 0), t.setText(xn, ya, Bi), Ce = t.scan();
          const hi = He(), No = Me("file.js", 99, 1, !1, [], P(1), 0, so), Pd = Xx(K, No);
          return ke && (No.jsDocDiagnostics = Xx(ke, No)), Nt(), hi ? {
            jsDocTypeExpression: hi,
            diagnostics: Pd
          } : void 0;
        }
        X.parseJSDocTypeExpressionForTests = xe;
        function He(xn) {
          const ya = ee(), Bi = (xn ? ia : ct)(19), hi = Ea(16777216, bg);
          (!xn || Bi) && oo(20);
          const No = d.createJSDocTypeExpression(hi);
          return ra(No), Zt(No, ya);
        }
        X.parseJSDocTypeExpression = He;
        function Tt() {
          const xn = ee(), ya = ia(19), Bi = ee();
          let hi = Z(!1);
          for (; j() === 81; )
            et(), Ke(), hi = Zt(d.createJSDocMemberName(hi, Ma()), Bi);
          ya && oo(20);
          const No = d.createJSDocNameReference(hi);
          return ra(No), Zt(No, xn);
        }
        X.parseJSDocNameReference = Tt;
        function zt(xn, ya, Bi) {
          Gr("", xn, 99, void 0, 1, 0);
          const hi = Ea(16777216, () => di(ya, Bi)), No = Xx(K, {
            languageVariant: 0,
            text: xn
          });
          return Nt(), hi ? {
            jsDoc: hi,
            diagnostics: No
          } : void 0;
        }
        X.parseIsolatedJSDocComment = zt;
        function Mr(xn, ya, Bi) {
          const hi = Ce, No = K.length, Pd = Ct, Qm = Ea(16777216, () => di(ya, Bi));
          return eo(Qm, xn), Xt & 524288 && (ke || (ke = []), Mn(ke, K, No)), Ce = hi, K.length = No, Ct = Pd, Qm;
        }
        X.parseJSDocComment = Mr;
        let Kn;
        ((xn) => {
          xn[xn.BeginningOfLine = 0] = "BeginningOfLine", xn[xn.SawAsterisk = 1] = "SawAsterisk", xn[xn.SavingComments = 2] = "SavingComments", xn[xn.SavingBackticks = 3] = "SavingBackticks";
        })(Kn || (Kn = {}));
        let Ki;
        ((xn) => {
          xn[xn.Property = 1] = "Property", xn[xn.Parameter = 2] = "Parameter", xn[xn.CallbackParameter = 4] = "CallbackParameter";
        })(Ki || (Ki = {}));
        function di(xn = 0, ya) {
          const Bi = ge, hi = ya === void 0 ? Bi.length : xn + ya;
          if (ya = hi - xn, E.assert(xn >= 0), E.assert(xn <= hi), E.assert(hi <= Bi.length), !aW(Bi, xn)) return;
          let No, Pd, Qm, Ym, bh, Cg = [];
          const M2 = [], m8 = Ft;
          Ft |= 1 << 25;
          const Zs = t.scanRange(xn + 3, ya - 5, yl);
          return Ft = m8, Zs;
          function yl() {
            let ft = 1, kn, Wn = xn - (Bi.lastIndexOf(`
`, xn) + 1) + 4;
            function ti(Io) {
              kn || (kn = Wn), Cg.push(Io), Wn += Io.length;
            }
            for (Ke(); OT(5); ) ;
            OT(4) && (ft = 0, Wn = 0);
            e: for (; ; ) {
              switch (j()) {
                case 60:
                  NT(Cg), bh || (bh = ee()), ua(nn(Wn)), ft = 0, kn = void 0;
                  break;
                case 4:
                  Cg.push(t.getTokenText()), ft = 0, Wn = 0;
                  break;
                case 42:
                  const Io = t.getTokenText();
                  ft === 1 ? (ft = 2, ti(Io)) : (E.assert(ft === 0), ft = 1, Wn += Io.length);
                  break;
                case 5:
                  E.assert(ft !== 2, "whitespace shouldn't come from the scanner while saving top-level comment text");
                  const Vl = t.getTokenText();
                  kn !== void 0 && Wn + Vl.length > kn && Cg.push(Vl.slice(kn - Wn)), Wn += Vl.length;
                  break;
                case 1:
                  break e;
                case 82:
                  ft = 2, ti(t.getTokenValue());
                  break;
                case 19:
                  ft = 2;
                  const Mp = t.getTokenFullStart(), e_ = B(t.getTokenEnd() - 1);
                  if (e_) {
                    Ym || c0(Cg), M2.push(Zt(d.createJSDocText(Cg.join("")), Ym ?? xn, Mp)), M2.push(e_), Cg = [], Ym = t.getTokenEnd();
                    break;
                  }
                default:
                  ft = 2, ti(t.getTokenText());
                  break;
              }
              ft === 2 ? pr(!1) : Ke();
            }
            const vi = Cg.join("").trimEnd();
            M2.length && vi.length && M2.push(Zt(d.createJSDocText(vi), Ym ?? xn, bh)), M2.length && No && E.assertIsDefined(bh, "having parsed tags implies that the end of the comment span should be set");
            const Ks = No && Is(No, Pd, Qm);
            return Zt(d.createJSDocComment(M2.length ? Is(M2, xn, bh) : vi.length ? vi : void 0, Ks), xn, hi);
          }
          function c0(ft) {
            for (; ft.length && (ft[0] === `
` || ft[0] === "\r"); ) ft.shift();
          }
          function NT(ft) {
            for (; ft.length; ) {
              const kn = ft[ft.length - 1].trimEnd();
              if (kn === "") ft.pop();
              else if (kn.length < ft[ft.length - 1].length) {
                ft[ft.length - 1] = kn;
                break;
              } else break;
            }
          }
          function g8() {
            for (; ; ) {
              if (Ke(), j() === 1) return !0;
              if (!(j() === 5 || j() === 4)) return !1;
            }
          }
          function af() {
            if (!((j() === 5 || j() === 4) && Yt(g8)))
              for (; j() === 5 || j() === 4; ) Ke();
          }
          function _u() {
            if ((j() === 5 || j() === 4) && Yt(g8))
              return "";
            let ft = t.hasPrecedingLineBreak(), kn = !1, Wn = "";
            for (; ft && j() === 42 || j() === 5 || j() === 4; )
              Wn += t.getTokenText(), j() === 4 ? (ft = !0, kn = !0, Wn = "") : j() === 42 && (ft = !1), Ke();
            return kn ? Wn : "";
          }
          function nn(ft) {
            E.assert(j() === 60);
            const kn = t.getTokenStart();
            Ke();
            const Wn = cd(void 0), ti = _u();
            let vi;
            switch (Wn.escapedText) {
              case "author":
                vi = EP(kn, Wn, ft, ti);
                break;
              case "implements":
                vi = wfe(kn, Wn, ft, ti);
                break;
              case "augments":
              case "extends":
                vi = Pfe(kn, Wn, ft, ti);
                break;
              case "class":
              case "constructor":
                vi = vC(kn, d.createJSDocClassTag, Wn, ft, ti);
                break;
              case "public":
                vi = vC(kn, d.createJSDocPublicTag, Wn, ft, ti);
                break;
              case "private":
                vi = vC(kn, d.createJSDocPrivateTag, Wn, ft, ti);
                break;
              case "protected":
                vi = vC(kn, d.createJSDocProtectedTag, Wn, ft, ti);
                break;
              case "readonly":
                vi = vC(kn, d.createJSDocReadonlyTag, Wn, ft, ti);
                break;
              case "override":
                vi = vC(kn, d.createJSDocOverrideTag, Wn, ft, ti);
                break;
              case "deprecated":
                ri = !0, vi = vC(kn, d.createJSDocDeprecatedTag, Wn, ft, ti);
                break;
              case "this":
                vi = i$(kn, Wn, ft, ti);
                break;
              case "enum":
                vi = IT(kn, Wn, ft, ti);
                break;
              case "arg":
              case "argument":
              case "param":
                return my(kn, Wn, 2, ft);
              case "return":
              case "returns":
                vi = Cfe(kn, Wn, ft, ti);
                break;
              case "template":
                vi = bC(kn, Wn, ft, ti);
                break;
              case "type":
                vi = CP(kn, Wn, ft, ti);
                break;
              case "typedef":
                vi = DP(kn, Wn, ft, ti);
                break;
              case "callback":
                vi = a$(kn, Wn, ft, ti);
                break;
              case "overload":
                vi = s$(kn, Wn, ft, ti);
                break;
              case "satisfies":
                vi = h8(kn, Wn, ft, ti);
                break;
              case "see":
                vi = Efe(kn, Wn, ft, ti);
                break;
              case "exception":
              case "throws":
                vi = Dfe(kn, Wn, ft, ti);
                break;
              case "import":
                vi = n$(kn, Wn, ft, ti);
                break;
              default:
                vi = gn(kn, Wn, ft, ti);
                break;
            }
            return vi;
          }
          function v(ft, kn, Wn, ti) {
            return ti || (Wn += kn - ft), w(Wn, ti.slice(Wn));
          }
          function w(ft, kn) {
            const Wn = ee();
            let ti = [];
            const vi = [];
            let Ks, Io = 0, Vl;
            function Mp(j1) {
              Vl || (Vl = ft), ti.push(j1), ft += j1.length;
            }
            kn !== void 0 && (kn !== "" && Mp(kn), Io = 1);
            let e_ = j();
            e: for (; ; ) {
              switch (e_) {
                case 4:
                  Io = 0, ti.push(t.getTokenText()), ft = 0;
                  break;
                case 60:
                  t.resetTokenState(t.getTokenEnd() - 1);
                  break e;
                case 1:
                  break e;
                case 5:
                  E.assert(Io !== 2 && Io !== 3, "whitespace shouldn't come from the scanner while saving comment text");
                  const j1 = t.getTokenText();
                  Vl !== void 0 && ft + j1.length > Vl && (ti.push(j1.slice(Vl - ft)), Io = 2), ft += j1.length;
                  break;
                case 19:
                  Io = 2;
                  const FT = t.getTokenFullStart(), SC = B(t.getTokenEnd() - 1);
                  SC ? (vi.push(Zt(d.createJSDocText(ti.join("")), Ks ?? Wn, FT)), vi.push(SC), ti = [], Ks = t.getTokenEnd()) : Mp(t.getTokenText());
                  break;
                case 62:
                  Io === 3 ? Io = 2 : Io = 3, Mp(t.getTokenText());
                  break;
                case 82:
                  Io !== 3 && (Io = 2), Mp(t.getTokenValue());
                  break;
                case 42:
                  if (Io === 0) {
                    Io = 1, ft += 1;
                    break;
                  }
                default:
                  Io !== 3 && (Io = 2), Mp(t.getTokenText());
                  break;
              }
              Io === 2 || Io === 3 ? e_ = pr(Io === 3) : e_ = Ke();
            }
            c0(ti);
            const R1 = ti.join("").trimEnd();
            if (vi.length)
              return R1.length && vi.push(Zt(d.createJSDocText(R1), Ks ?? Wn)), Is(vi, Wn, t.getTokenEnd());
            if (R1.length) return R1;
          }
          function B(ft) {
            const kn = Jt(Ue);
            if (!kn) return;
            Ke(), af();
            const Wn = le(), ti = [];
            for (; j() !== 20 && j() !== 4 && j() !== 1; )
              ti.push(t.getTokenText()), Ke();
            return Zt((kn === "link" ? d.createJSDocLink : kn === "linkcode" ? d.createJSDocLinkCode : d.createJSDocLinkPlain)(Wn, ti.join("")), ft, t.getTokenEnd());
          }
          function le() {
            if (M_(j())) {
              const ft = ee();
              let kn = ac();
              for (; ia(25); ) kn = Zt(d.createQualifiedName(kn, j() === 81 ? Mo(80, !1) : ac()), ft);
              for (; j() === 81; )
                et(), Ke(), kn = Zt(d.createJSDocMemberName(kn, Ma()), ft);
              return kn;
            }
          }
          function Ue() {
            if (_u(), j() === 19 && Ke() === 60 && M_(Ke())) {
              const ft = t.getTokenValue();
              if (Wt(ft)) return ft;
            }
          }
          function Wt(ft) {
            return ft === "link" || ft === "linkcode" || ft === "linkplain";
          }
          function gn(ft, kn, Wn, ti) {
            return Zt(d.createJSDocUnknownTag(kn, v(ft, ee(), Wn, ti)), ft);
          }
          function ua(ft) {
            ft && (No ? No.push(ft) : (No = [ft], Pd = ft.pos), Qm = ft.end);
          }
          function vo() {
            return _u(), j() === 19 ? He() : void 0;
          }
          function Ad() {
            const ft = OT(23);
            ft && af();
            const kn = OT(62), Wn = Mfe();
            return kn && Ou(62), ft && (af(), ja(64) && Sc(), ct(24)), {
              name: Wn,
              isBracketed: ft
            };
          }
          function Sh(ft) {
            switch (ft.kind) {
              case 151:
                return !0;
              case 189:
                return Sh(ft.elementType);
              default:
                return xf(ft) && Fe(ft.typeName) && ft.typeName.escapedText === "Object" && !ft.typeArguments;
            }
          }
          function my(ft, kn, Wn, ti) {
            let vi = vo(), Ks = !vi;
            _u();
            const { name: Io, isBracketed: Vl } = Ad(), Mp = _u();
            Ks && !Yt(Ue) && (vi = vo());
            const e_ = v(ft, ee(), ti, Mp), R1 = yC(vi, Io, Wn, ti);
            return R1 && (vi = R1, Ks = !0), Zt(Wn === 1 ? d.createJSDocPropertyTag(kn, Io, Vl, vi, Ks, e_) : d.createJSDocParameterTag(kn, Io, Vl, vi, Ks, e_), ft);
          }
          function yC(ft, kn, Wn, ti) {
            if (ft && Sh(ft.type)) {
              const vi = ee();
              let Ks, Io;
              for (; Ks = Jt(() => y8(Wn, ti, kn)); ) Ks.kind === 342 || Ks.kind === 349 ? Io = kr(Io, Ks) : Ks.kind === 346 && Oe(Ks.tagName, p.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);
              if (Io) {
                const Vl = Zt(d.createJSDocTypeLiteral(Io, ft.type.kind === 189), vi);
                return Zt(d.createJSDocTypeExpression(Vl), vi);
              }
            }
          }
          function Cfe(ft, kn, Wn, ti) {
            _t(No, aF) && rr(kn.pos, t.getTokenStart(), p._0_tag_already_specified, Ti(kn.escapedText));
            const vi = vo();
            return Zt(d.createJSDocReturnTag(kn, vi, v(ft, ee(), Wn, ti)), ft);
          }
          function CP(ft, kn, Wn, ti) {
            _t(No, ow) && rr(kn.pos, t.getTokenStart(), p._0_tag_already_specified, Ti(kn.escapedText));
            const vi = He(!0), Ks = Wn !== void 0 && ti !== void 0 ? v(ft, ee(), Wn, ti) : void 0;
            return Zt(d.createJSDocTypeTag(kn, vi, Ks), ft);
          }
          function Efe(ft, kn, Wn, ti) {
            const vi = j() === 23 || Yt(() => Ke() === 60 && M_(Ke()) && Wt(t.getTokenValue())) ? void 0 : Tt(), Ks = Wn !== void 0 && ti !== void 0 ? v(ft, ee(), Wn, ti) : void 0;
            return Zt(d.createJSDocSeeTag(kn, vi, Ks), ft);
          }
          function Dfe(ft, kn, Wn, ti) {
            const vi = vo(), Ks = v(ft, ee(), Wn, ti);
            return Zt(d.createJSDocThrowsTag(kn, vi, Ks), ft);
          }
          function EP(ft, kn, Wn, ti) {
            const vi = ee(), Ks = ZE();
            let Io = t.getTokenFullStart();
            const Vl = v(ft, Io, Wn, ti);
            Vl || (Io = t.getTokenFullStart());
            const Mp = typeof Vl != "string" ? Is(zi([Zt(Ks, vi, Io)], Vl), vi) : Ks.text + Vl;
            return Zt(d.createJSDocAuthorTag(kn, Mp), ft);
          }
          function ZE() {
            const ft = [];
            let kn = !1, Wn = t.getToken();
            for (; Wn !== 1 && Wn !== 4; ) {
              if (Wn === 30) kn = !0;
              else {
                if (Wn === 60 && !kn) break;
                if (Wn === 32 && kn) {
                  ft.push(t.getTokenText()), t.resetTokenState(t.getTokenEnd());
                  break;
                }
              }
              ft.push(t.getTokenText()), Wn = Ke();
            }
            return d.createJSDocText(ft.join(""));
          }
          function wfe(ft, kn, Wn, ti) {
            const vi = gy();
            return Zt(d.createJSDocImplementsTag(kn, vi, v(ft, ee(), Wn, ti)), ft);
          }
          function Pfe(ft, kn, Wn, ti) {
            const vi = gy();
            return Zt(d.createJSDocAugmentsTag(kn, vi, v(ft, ee(), Wn, ti)), ft);
          }
          function h8(ft, kn, Wn, ti) {
            const vi = He(!1), Ks = Wn !== void 0 && ti !== void 0 ? v(ft, ee(), Wn, ti) : void 0;
            return Zt(d.createJSDocSatisfiesTag(kn, vi, Ks), ft);
          }
          function n$(ft, kn, Wn, ti) {
            const vi = t.getTokenFullStart();
            let Ks;
            Qt() && (Ks = Ma());
            const Io = ib(Ks, vi, 156, !0), Vl = ab(), Mp = f8(), e_ = Wn !== void 0 && ti !== void 0 ? v(ft, ee(), Wn, ti) : void 0;
            return Zt(d.createJSDocImportTag(kn, Io, Vl, Mp, e_), ft);
          }
          function gy() {
            const ft = ia(19), kn = ee(), Wn = Afe();
            t.setSkipJsDocLeadingAsterisks(!0);
            const ti = o0();
            t.setSkipJsDocLeadingAsterisks(!1);
            const vi = Zt(d.createExpressionWithTypeArguments(Wn, ti), kn);
            return ft && (af(), ct(20)), vi;
          }
          function Afe() {
            const ft = ee();
            let kn = cd();
            for (; ia(25); ) {
              const Wn = cd();
              kn = Zt(R(kn, Wn), ft);
            }
            return kn;
          }
          function vC(ft, kn, Wn, ti, vi) {
            return Zt(kn(Wn, v(ft, ee(), ti, vi)), ft);
          }
          function i$(ft, kn, Wn, ti) {
            const vi = He(!0);
            return af(), Zt(d.createJSDocThisTag(kn, vi, v(ft, ee(), Wn, ti)), ft);
          }
          function IT(ft, kn, Wn, ti) {
            const vi = He(!0);
            return af(), Zt(d.createJSDocEnumTag(kn, vi, v(ft, ee(), Wn, ti)), ft);
          }
          function DP(ft, kn, Wn, ti) {
            let vi = vo();
            _u();
            const Ks = vM();
            af();
            let Io = w(Wn), Vl;
            if (!vi || Sh(vi.type)) {
              let Mp, e_, R1, j1 = !1;
              for (; (Mp = Jt(() => Ife(Wn))) && Mp.kind !== 346; )
                if (j1 = !0, Mp.kind === 345) if (e_) {
                  const FT = Ve(p.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);
                  FT && ts(FT, $x(ce, ge, 0, 0, p.The_tag_was_first_specified_here));
                  break;
                } else e_ = Mp;
                else R1 = kr(R1, Mp);
              if (j1) {
                const FT = vi && vi.type.kind === 189, SC = d.createJSDocTypeLiteral(R1, FT);
                vi = e_ && e_.typeExpression && !Sh(e_.typeExpression.type) ? e_.typeExpression : Zt(SC, ft), Vl = vi.end;
              }
            }
            return Vl = Vl || Io !== void 0 ? ee() : (Ks ?? vi ?? kn).end, Io || (Io = v(ft, Vl, Wn, ti)), Zt(d.createJSDocTypedefTag(kn, vi, Ks, Io), ft, Vl);
          }
          function vM(ft) {
            const kn = t.getTokenStart();
            if (!M_(j())) return;
            const Wn = cd();
            if (ia(25)) {
              const ti = vM(!0);
              return Zt(d.createModuleDeclaration(void 0, Wn, ti, ft ? 8 : void 0), kn);
            }
            return ft && (Wn.flags |= 4096), Wn;
          }
          function Nfe(ft) {
            const kn = ee();
            let Wn, ti;
            for (; Wn = Jt(() => y8(4, ft)); ) {
              if (Wn.kind === 346) {
                Oe(Wn.tagName, p.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);
                break;
              }
              ti = kr(ti, Wn);
            }
            return Is(ti || [], kn);
          }
          function KE(ft, kn) {
            const Wn = Nfe(kn), ti = Jt(() => {
              if (OT(60)) {
                const vi = nn(kn);
                if (vi && vi.kind === 343) return vi;
              }
            });
            return Zt(d.createJSDocSignature(void 0, Wn, ti), ft);
          }
          function a$(ft, kn, Wn, ti) {
            const vi = vM();
            af();
            let Ks = w(Wn);
            const Io = KE(ft, Wn);
            Ks || (Ks = v(ft, ee(), Wn, ti));
            const Vl = Ks !== void 0 ? ee() : Io.end;
            return Zt(d.createJSDocCallbackTag(kn, Io, vi, Ks), ft, Vl);
          }
          function s$(ft, kn, Wn, ti) {
            af();
            let vi = w(Wn);
            const Ks = KE(ft, Wn);
            vi || (vi = v(ft, ee(), Wn, ti));
            const Io = vi !== void 0 ? ee() : Ks.end;
            return Zt(d.createJSDocOverloadTag(kn, Ks, vi), ft, Io);
          }
          function wP(ft, kn) {
            for (; !Fe(ft) || !Fe(kn); ) if (!Fe(ft) && !Fe(kn) && ft.right.escapedText === kn.right.escapedText)
              ft = ft.left, kn = kn.left;
            else return !1;
            return ft.escapedText === kn.escapedText;
          }
          function Ife(ft) {
            return y8(1, ft);
          }
          function y8(ft, kn, Wn) {
            let ti = !0, vi = !1;
            for (; ; ) switch (Ke()) {
              case 60:
                if (ti) {
                  const Ks = Ofe(ft, kn);
                  return Ks && (Ks.kind === 342 || Ks.kind === 349) && Wn && (Fe(Ks.name) || !wP(Wn, Ks.name.left)) ? !1 : Ks;
                }
                vi = !1;
                break;
              case 4:
                ti = !0, vi = !1;
                break;
              case 42:
                vi && (ti = !1), vi = !0;
                break;
              case 80:
                ti = !1;
                break;
              case 1:
                return !1;
            }
          }
          function Ofe(ft, kn) {
            E.assert(j() === 60);
            const Wn = t.getTokenFullStart();
            Ke();
            const ti = cd(), vi = _u();
            let Ks;
            switch (ti.escapedText) {
              case "type":
                return ft === 1 && CP(Wn, ti);
              case "prop":
              case "property":
                Ks = 1;
                break;
              case "arg":
              case "argument":
              case "param":
                Ks = 6;
                break;
              case "template":
                return bC(Wn, ti, kn, vi);
              case "this":
                return i$(Wn, ti, kn, vi);
              default:
                return !1;
            }
            return ft & Ks ? my(Wn, ti, ft, kn) : !1;
          }
          function Ffe() {
            const ft = ee(), kn = OT(23);
            kn && af();
            const Wn = Nn(!1, !0), ti = cd(p.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);
            let vi;
            if (kn && (af(), ct(64), vi = Ea(16777216, bg), ct(24)), !Nc(ti))
              return Zt(d.createTypeParameterDeclaration(Wn, ti, void 0, vi), ft);
          }
          function Lfe() {
            const ft = ee(), kn = [];
            do {
              af();
              const Wn = Ffe();
              Wn !== void 0 && kn.push(Wn), _u();
            } while (OT(28));
            return Is(kn, ft);
          }
          function bC(ft, kn, Wn, ti) {
            const vi = j() === 19 ? He() : void 0, Ks = Lfe();
            return Zt(d.createJSDocTemplateTag(kn, vi, Ks, v(ft, ee(), Wn, ti)), ft);
          }
          function OT(ft) {
            return j() === ft ? (Ke(), !0) : !1;
          }
          function Mfe() {
            let ft = cd();
            for (ia(23) && ct(24); ia(25); ) {
              const kn = cd();
              ia(23) && ct(24), ft = st(ft, kn);
            }
            return ft;
          }
          function cd(ft) {
            if (!M_(j())) return Mo(80, !ft, ft || p.Identifier_expected);
            Xe++;
            const kn = t.getTokenStart(), Wn = t.getTokenEnd(), ti = j(), vi = Zt(k(ou(t.getTokenValue()), ti), kn, Wn);
            return Ke(), vi;
          }
        }
      })(kP = e.JSDocParser || (e.JSDocParser = {}));
    })(Iv || (Iv = {}));
    var sye = /* @__PURE__ */ new WeakSet();
    function rMe(e) {
      sye.has(e) && E.fail("Source file has already been incrementally parsed"), sye.add(e);
    }
    var oye = /* @__PURE__ */ new WeakSet();
    function nMe(e) {
      return oye.has(e);
    }
    function Nre(e) {
      oye.add(e);
    }
    var oW;
    ((e) => {
      function t(T, k, D, P) {
        if (P = P || E.shouldAssert(2), g(T, k, D, P), cZ(D)) return T;
        if (T.statements.length === 0) return Iv.parseSourceFile(T.fileName, k, T.languageVersion, void 0, !0, T.scriptKind, T.setExternalModuleIndicator, T.jsDocParsingMode);
        rMe(T), Iv.fixupParentReferences(T);
        const N = T.text, M = h(T), R = u(T, D);
        g(T, k, R, P), E.assert(R.span.start <= D.span.start), E.assert(dc(R.span) === dc(D.span)), E.assert(dc(z4(R)) === dc(z4(D)));
        const G = z4(R).length - R.span.length;
        _(T, R.span.start, dc(R.span), dc(z4(R)), G, N, k, P);
        const L = Iv.parseSourceFile(T.fileName, k, T.languageVersion, M, !0, T.scriptKind, T.setExternalModuleIndicator, T.jsDocParsingMode);
        return L.commentDirectives = n(T.commentDirectives, L.commentDirectives, R.span.start, dc(R.span), G, N, k, P), L.impliedNodeFormat = T.impliedNodeFormat, ore(T, L), L;
      }
      e.updateSourceFile = t;
      function n(T, k, D, P, N, M, R, G) {
        if (!T) return k;
        let L, z = !1;
        for (const U of T) {
          const { range: pe, type: ie } = U;
          if (pe.end < D) L = kr(L, U);
          else if (pe.pos > P) {
            H();
            const W = {
              range: {
                pos: pe.pos + N,
                end: pe.end + N
              },
              type: ie
            };
            L = kr(L, W), G && E.assert(M.substring(pe.pos, pe.end) === R.substring(W.range.pos, W.range.end));
          }
        }
        return H(), L;
        function H() {
          z || (z = !0, L ? k && L.push(...k) : L = k);
        }
      }
      function i(T, k, D, P, N, M, R) {
        D ? L(T) : G(T);
        return;
        function G(z) {
          let H = "";
          if (R && a(z) && (H = N.substring(z.pos, z.end)), Gz(z, k), Ud(z, z.pos + P, z.end + P), R && a(z) && E.assert(H === M.substring(z.pos, z.end)), Fa(z, G, L), Jf(z)) for (const U of z.jsDoc) G(U);
          c(z, R);
        }
        function L(z) {
          Ud(z, z.pos + P, z.end + P);
          for (const H of z) G(H);
        }
      }
      function a(T) {
        switch (T.kind) {
          case 11:
          case 9:
          case 80:
            return !0;
        }
        return !1;
      }
      function o(T, k, D, P, N) {
        E.assert(T.end >= k, "Adjusting an element that was entirely before the change range"), E.assert(T.pos <= D, "Adjusting an element that was entirely after the change range"), E.assert(T.pos <= T.end);
        const M = Math.min(T.pos, P), R = T.end >= D ? T.end + N : Math.min(T.end, P);
        if (E.assert(M <= R), T.parent) {
          const G = T.parent;
          E.assertGreaterThanOrEqual(M, G.pos), E.assertLessThanOrEqual(R, G.end);
        }
        Ud(T, M, R);
      }
      function c(T, k) {
        if (k) {
          let D = T.pos;
          const P = (N) => {
            E.assert(N.pos >= D), D = N.end;
          };
          if (Jf(T)) for (const N of T.jsDoc) P(N);
          Fa(T, P), E.assert(D <= T.end);
        }
      }
      function _(T, k, D, P, N, M, R, G) {
        L(T);
        return;
        function L(H) {
          if (E.assert(H.pos <= H.end), H.pos > D) {
            i(H, T, !1, N, M, R, G);
            return;
          }
          const U = H.end;
          if (U >= k) {
            if (Nre(H), Gz(H, T), o(H, k, D, P, N), Fa(H, L, z), Jf(H)) for (const pe of H.jsDoc) L(pe);
            c(H, G);
            return;
          }
          E.assert(U < k);
        }
        function z(H) {
          if (E.assert(H.pos <= H.end), H.pos > D) {
            i(H, T, !0, N, M, R, G);
            return;
          }
          const U = H.end;
          if (U >= k) {
            Nre(H), o(H, k, D, P, N);
            for (const pe of H) L(pe);
            return;
          }
          E.assert(U < k);
        }
      }
      function u(T, k) {
        let P = k.span.start;
        for (let N = 0; P > 0 && N <= 1; N++) {
          const M = d(T, P);
          E.assert(M.pos <= P);
          const R = M.pos;
          P = Math.max(0, R - 1);
        }
        return C3(Vc(P, dc(k.span)), k.newLength + (k.span.start - P));
      }
      function d(T, k) {
        let D = T, P;
        if (Fa(T, M), P) {
          const R = N(P);
          R.pos > D.pos && (D = R);
        }
        return D;
        function N(R) {
          for (; ; ) {
            const G = LJ(R);
            if (G) R = G;
            else return R;
          }
        }
        function M(R) {
          if (!Nc(R))
            if (R.pos <= k) {
              if (R.pos >= D.pos && (D = R), k < R.end)
                return Fa(R, M), !0;
              E.assert(R.end <= k), P = R;
            } else
              return E.assert(R.pos > k), !0;
        }
      }
      function g(T, k, D, P) {
        const N = T.text;
        if (D && (E.assert(N.length - D.span.length + D.newLength === k.length), P || E.shouldAssert(3))) {
          const M = N.substr(0, D.span.start), R = k.substr(0, D.span.start);
          E.assert(M === R);
          const G = N.substring(dc(D.span), N.length), L = k.substring(dc(z4(D)), k.length);
          E.assert(G === L);
        }
      }
      function h(T) {
        let k = T.statements, D = 0;
        E.assert(D < k.length);
        let P = k[D], N = -1;
        return { currentNode(R) {
          return R !== N && (P && P.end === R && D < k.length - 1 && (D++, P = k[D]), (!P || P.pos !== R) && M(R)), N = R, E.assert(!P || P.pos === R), P;
        } };
        function M(R) {
          k = void 0, D = -1, P = void 0, Fa(T, G, L);
          return;
          function G(z) {
            return R >= z.pos && R < z.end ? (Fa(z, G, L), !0) : !1;
          }
          function L(z) {
            if (R >= z.pos && R < z.end) for (let H = 0; H < z.length; H++) {
              const U = z[H];
              if (U) {
                if (U.pos === R)
                  return k = z, D = H, P = U, !0;
                if (U.pos < R && R < U.end)
                  return Fa(U, G, L), !0;
              }
            }
            return !1;
          }
        }
      }
      e.createSyntaxCursor = h;
      let S;
      ((T) => {
        T[T.Value = -1] = "Value";
      })(S || (S = {}));
    })(oW || (oW = {}));
    function $l(e) {
      return gF(e) !== void 0;
    }
    function gF(e) {
      const t = hx(e, CO, !1);
      if (t) return t;
      if (lc(e, ".ts")) {
        const n = nl(e), i = n.lastIndexOf(".d.");
        if (i >= 0) return n.substring(i);
      }
    }
    function iMe(e, t, n, i) {
      if (e) {
        if (e === "import") return 99;
        if (e === "require") return 1;
        i(t, n - t, p.resolution_mode_should_be_either_require_or_import);
      }
    }
    function cW(e, t) {
      const n = [];
      for (const i of jg(t, 0) || Te) cMe(n, i, t.substring(i.pos, i.end));
      e.pragmas = /* @__PURE__ */ new Map();
      for (const i of n) {
        if (e.pragmas.has(i.name)) {
          const a = e.pragmas.get(i.name);
          a instanceof Array ? a.push(i.args) : e.pragmas.set(i.name, [a, i.args]);
          continue;
        }
        e.pragmas.set(i.name, i.args);
      }
    }
    function lW(e, t) {
      e.checkJsDirective = void 0, e.referencedFiles = [], e.typeReferenceDirectives = [], e.libReferenceDirectives = [], e.amdDependencies = [], e.pragmas.forEach((n, i) => {
        switch (i) {
          case "reference": {
            const a = e.referencedFiles, o = e.typeReferenceDirectives, c = e.libReferenceDirectives;
            bt(fx(n), (_) => {
              const { types: u, lib: d, path: g, ["resolution-mode"]: h, preserve: S } = _.arguments, T = S === "true" ? !0 : void 0;
              if (_.arguments["no-default-lib"] !== "true")
                if (u) {
                  const k = iMe(h, u.pos, u.end, t);
                  o.push({
                    pos: u.pos,
                    end: u.end,
                    fileName: u.value,
                    ...k ? { resolutionMode: k } : {},
                    ...T ? { preserve: T } : {}
                  });
                } else d ? c.push({
                  pos: d.pos,
                  end: d.end,
                  fileName: d.value,
                  ...T ? { preserve: T } : {}
                }) : g ? a.push({
                  pos: g.pos,
                  end: g.end,
                  fileName: g.value,
                  ...T ? { preserve: T } : {}
                }) : t(_.range.pos, _.range.end - _.range.pos, p.Invalid_reference_directive_syntax);
            });
            break;
          }
          case "amd-dependency":
            e.amdDependencies = or(fx(n), (a) => ({
              name: a.arguments.name,
              path: a.arguments.path
            }));
            break;
          case "amd-module":
            if (n instanceof Array) for (const a of n)
              e.moduleName && t(a.range.pos, a.range.end - a.range.pos, p.An_AMD_module_cannot_have_multiple_name_assignments), e.moduleName = a.arguments.name;
            else e.moduleName = n.arguments.name;
            break;
          case "ts-nocheck":
          case "ts-check":
            bt(fx(n), (a) => {
              (!e.checkJsDirective || a.range.pos > e.checkJsDirective.pos) && (e.checkJsDirective = {
                enabled: i === "ts-check",
                end: a.range.end,
                pos: a.range.pos
              });
            });
            break;
          case "jsx":
          case "jsxfrag":
          case "jsximportsource":
          case "jsxruntime":
            return;
          default:
            E.fail("Unhandled pragma kind");
        }
      });
    }
    var Ire = /* @__PURE__ */ new Map();
    function aMe(e) {
      if (Ire.has(e)) return Ire.get(e);
      const t = new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`, "im");
      return Ire.set(e, t), t;
    }
    var sMe = /^\/\/\/\s*<(\S+)\s.*?\/>/m, oMe = /^\/\/\/?\s*@([^\s:]+)((?:[^\S\r\n]|:).*)?$/m;
    function cMe(e, t, n) {
      const i = t.kind === 2 && sMe.exec(n);
      if (i) {
        const o = i[1].toLowerCase(), c = P7[o];
        if (!c || !(c.kind & 1)) return;
        if (c.args) {
          const _ = {};
          for (const u of c.args) {
            const d = aMe(u.name).exec(n);
            if (!d && !u.optional) return;
            if (d) {
              const g = d[2] || d[3];
              if (u.captureSpan) {
                const h = t.pos + d.index + d[1].length + 1;
                _[u.name] = {
                  value: g,
                  pos: h,
                  end: h + g.length
                };
              } else _[u.name] = g;
            }
          }
          e.push({
            name: o,
            args: {
              arguments: _,
              range: t
            }
          });
        } else e.push({
          name: o,
          args: {
            arguments: {},
            range: t
          }
        });
        return;
      }
      const a = t.kind === 2 && oMe.exec(n);
      if (a) return cye(e, t, 2, a);
      if (t.kind === 3) {
        const o = /@(\S+)(\s+(?:\S.*)?)?$/gm;
        let c;
        for (; c = o.exec(n); ) cye(e, t, 4, c);
      }
    }
    function cye(e, t, n, i) {
      if (!i) return;
      const a = i[1].toLowerCase(), o = P7[a];
      if (!o || !(o.kind & n)) return;
      const c = i[2], _ = lMe(o, c);
      _ !== "fail" && e.push({
        name: a,
        args: {
          arguments: _,
          range: t
        }
      });
    }
    function lMe(e, t) {
      if (!t) return {};
      if (!e.args) return {};
      const n = t.trim().split(/\s+/), i = {};
      for (let a = 0; a < e.args.length; a++) {
        const o = e.args[a];
        if (!n[a] && !o.optional) return "fail";
        if (o.captureSpan) return E.fail("Capture spans not yet implemented for non-xml pragmas");
        i[o.name] = n[a];
      }
      return i;
    }
    function Ov(e, t) {
      return e.kind !== t.kind ? !1 : e.kind === 80 ? e.escapedText === t.escapedText : e.kind === 110 ? !0 : e.kind === 296 ? e.namespace.escapedText === t.namespace.escapedText && e.name.escapedText === t.name.escapedText : e.name.escapedText === t.name.escapedText && Ov(e.expression, t.expression);
    }
    var Ore = {
      name: "compileOnSave",
      type: "boolean",
      defaultValueDescription: !1
    }, lye = new Map(Object.entries({
      preserve: 1,
      "react-native": 3,
      "react-jsx": 4,
      "react-jsxdev": 5,
      react: 2
    })), SN = new Map(cx(lye.entries(), ([e, t]) => ["" + t, e])), uye = [
      ["es5", "lib.es5.d.ts"],
      ["es6", "lib.es2015.d.ts"],
      ["es2015", "lib.es2015.d.ts"],
      ["es7", "lib.es2016.d.ts"],
      ["es2016", "lib.es2016.d.ts"],
      ["es2017", "lib.es2017.d.ts"],
      ["es2018", "lib.es2018.d.ts"],
      ["es2019", "lib.es2019.d.ts"],
      ["es2020", "lib.es2020.d.ts"],
      ["es2021", "lib.es2021.d.ts"],
      ["es2022", "lib.es2022.d.ts"],
      ["es2023", "lib.es2023.d.ts"],
      ["es2024", "lib.es2024.d.ts"],
      ["es2025", "lib.es2025.d.ts"],
      ["esnext", "lib.esnext.d.ts"],
      ["dom", "lib.dom.d.ts"],
      ["dom.iterable", "lib.dom.iterable.d.ts"],
      ["dom.asynciterable", "lib.dom.asynciterable.d.ts"],
      ["webworker", "lib.webworker.d.ts"],
      ["webworker.importscripts", "lib.webworker.importscripts.d.ts"],
      ["webworker.iterable", "lib.webworker.iterable.d.ts"],
      ["webworker.asynciterable", "lib.webworker.asynciterable.d.ts"],
      ["scripthost", "lib.scripthost.d.ts"],
      ["es2015.core", "lib.es2015.core.d.ts"],
      ["es2015.collection", "lib.es2015.collection.d.ts"],
      ["es2015.generator", "lib.es2015.generator.d.ts"],
      ["es2015.iterable", "lib.es2015.iterable.d.ts"],
      ["es2015.promise", "lib.es2015.promise.d.ts"],
      ["es2015.proxy", "lib.es2015.proxy.d.ts"],
      ["es2015.reflect", "lib.es2015.reflect.d.ts"],
      ["es2015.symbol", "lib.es2015.symbol.d.ts"],
      ["es2015.symbol.wellknown", "lib.es2015.symbol.wellknown.d.ts"],
      ["es2016.array.include", "lib.es2016.array.include.d.ts"],
      ["es2016.intl", "lib.es2016.intl.d.ts"],
      ["es2017.arraybuffer", "lib.es2017.arraybuffer.d.ts"],
      ["es2017.date", "lib.es2017.date.d.ts"],
      ["es2017.object", "lib.es2017.object.d.ts"],
      ["es2017.sharedmemory", "lib.es2017.sharedmemory.d.ts"],
      ["es2017.string", "lib.es2017.string.d.ts"],
      ["es2017.intl", "lib.es2017.intl.d.ts"],
      ["es2017.typedarrays", "lib.es2017.typedarrays.d.ts"],
      ["es2018.asyncgenerator", "lib.es2018.asyncgenerator.d.ts"],
      ["es2018.asynciterable", "lib.es2018.asynciterable.d.ts"],
      ["es2018.intl", "lib.es2018.intl.d.ts"],
      ["es2018.promise", "lib.es2018.promise.d.ts"],
      ["es2018.regexp", "lib.es2018.regexp.d.ts"],
      ["es2019.array", "lib.es2019.array.d.ts"],
      ["es2019.object", "lib.es2019.object.d.ts"],
      ["es2019.string", "lib.es2019.string.d.ts"],
      ["es2019.symbol", "lib.es2019.symbol.d.ts"],
      ["es2019.intl", "lib.es2019.intl.d.ts"],
      ["es2020.bigint", "lib.es2020.bigint.d.ts"],
      ["es2020.date", "lib.es2020.date.d.ts"],
      ["es2020.promise", "lib.es2020.promise.d.ts"],
      ["es2020.sharedmemory", "lib.es2020.sharedmemory.d.ts"],
      ["es2020.string", "lib.es2020.string.d.ts"],
      ["es2020.symbol.wellknown", "lib.es2020.symbol.wellknown.d.ts"],
      ["es2020.intl", "lib.es2020.intl.d.ts"],
      ["es2020.number", "lib.es2020.number.d.ts"],
      ["es2021.promise", "lib.es2021.promise.d.ts"],
      ["es2021.string", "lib.es2021.string.d.ts"],
      ["es2021.weakref", "lib.es2021.weakref.d.ts"],
      ["es2021.intl", "lib.es2021.intl.d.ts"],
      ["es2022.array", "lib.es2022.array.d.ts"],
      ["es2022.error", "lib.es2022.error.d.ts"],
      ["es2022.intl", "lib.es2022.intl.d.ts"],
      ["es2022.object", "lib.es2022.object.d.ts"],
      ["es2022.string", "lib.es2022.string.d.ts"],
      ["es2022.regexp", "lib.es2022.regexp.d.ts"],
      ["es2023.array", "lib.es2023.array.d.ts"],
      ["es2023.collection", "lib.es2023.collection.d.ts"],
      ["es2023.intl", "lib.es2023.intl.d.ts"],
      ["es2024.arraybuffer", "lib.es2024.arraybuffer.d.ts"],
      ["es2024.collection", "lib.es2024.collection.d.ts"],
      ["es2024.object", "lib.es2024.object.d.ts"],
      ["es2024.promise", "lib.es2024.promise.d.ts"],
      ["es2024.regexp", "lib.es2024.regexp.d.ts"],
      ["es2024.sharedmemory", "lib.es2024.sharedmemory.d.ts"],
      ["es2024.string", "lib.es2024.string.d.ts"],
      ["es2025.collection", "lib.es2025.collection.d.ts"],
      ["es2025.float16", "lib.es2025.float16.d.ts"],
      ["es2025.intl", "lib.es2025.intl.d.ts"],
      ["es2025.iterator", "lib.es2025.iterator.d.ts"],
      ["es2025.promise", "lib.es2025.promise.d.ts"],
      ["es2025.regexp", "lib.es2025.regexp.d.ts"],
      ["esnext.asynciterable", "lib.es2018.asynciterable.d.ts"],
      ["esnext.symbol", "lib.es2019.symbol.d.ts"],
      ["esnext.bigint", "lib.es2020.bigint.d.ts"],
      ["esnext.weakref", "lib.es2021.weakref.d.ts"],
      ["esnext.object", "lib.es2024.object.d.ts"],
      ["esnext.regexp", "lib.es2024.regexp.d.ts"],
      ["esnext.string", "lib.es2024.string.d.ts"],
      ["esnext.float16", "lib.es2025.float16.d.ts"],
      ["esnext.iterator", "lib.es2025.iterator.d.ts"],
      ["esnext.promise", "lib.es2025.promise.d.ts"],
      ["esnext.array", "lib.esnext.array.d.ts"],
      ["esnext.collection", "lib.esnext.collection.d.ts"],
      ["esnext.date", "lib.esnext.date.d.ts"],
      ["esnext.decorators", "lib.esnext.decorators.d.ts"],
      ["esnext.disposable", "lib.esnext.disposable.d.ts"],
      ["esnext.error", "lib.esnext.error.d.ts"],
      ["esnext.intl", "lib.esnext.intl.d.ts"],
      ["esnext.sharedmemory", "lib.esnext.sharedmemory.d.ts"],
      ["esnext.temporal", "lib.esnext.temporal.d.ts"],
      ["esnext.typedarrays", "lib.esnext.typedarrays.d.ts"],
      ["decorators", "lib.decorators.d.ts"],
      ["decorators.legacy", "lib.decorators.legacy.d.ts"]
    ], hF = uye.map((e) => e[0]), yF = new Map(uye), xk = [
      {
        name: "watchFile",
        type: new Map(Object.entries({
          fixedpollinginterval: 0,
          prioritypollinginterval: 1,
          dynamicprioritypolling: 2,
          fixedchunksizepolling: 3,
          usefsevents: 4,
          usefseventsonparentdirectory: 5
        })),
        category: p.Watch_and_Build_Modes,
        description: p.Specify_how_the_TypeScript_watch_mode_works,
        defaultValueDescription: 4
      },
      {
        name: "watchDirectory",
        type: new Map(Object.entries({
          usefsevents: 0,
          fixedpollinginterval: 1,
          dynamicprioritypolling: 2,
          fixedchunksizepolling: 3
        })),
        category: p.Watch_and_Build_Modes,
        description: p.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,
        defaultValueDescription: 0
      },
      {
        name: "fallbackPolling",
        type: new Map(Object.entries({
          fixedinterval: 0,
          priorityinterval: 1,
          dynamicpriority: 2,
          fixedchunksize: 3
        })),
        category: p.Watch_and_Build_Modes,
        description: p.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,
        defaultValueDescription: 1
      },
      {
        name: "synchronousWatchDirectory",
        type: "boolean",
        category: p.Watch_and_Build_Modes,
        description: p.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,
        defaultValueDescription: !1
      },
      {
        name: "excludeDirectories",
        type: "list",
        element: {
          name: "excludeDirectory",
          type: "string",
          isFilePath: !0,
          extraValidation: Kre
        },
        allowConfigDirTemplateSubstitution: !0,
        category: p.Watch_and_Build_Modes,
        description: p.Remove_a_list_of_directories_from_the_watch_process
      },
      {
        name: "excludeFiles",
        type: "list",
        element: {
          name: "excludeFile",
          type: "string",
          isFilePath: !0,
          extraValidation: Kre
        },
        allowConfigDirTemplateSubstitution: !0,
        category: p.Watch_and_Build_Modes,
        description: p.Remove_a_list_of_files_from_the_watch_mode_s_processing
      }
    ], vF = [
      {
        name: "help",
        shortName: "h",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        isCommandLineOnly: !0,
        category: p.Command_line_Options,
        description: p.Print_this_message,
        defaultValueDescription: !1
      },
      {
        name: "help",
        shortName: "?",
        type: "boolean",
        isCommandLineOnly: !0,
        category: p.Command_line_Options,
        defaultValueDescription: !1
      },
      {
        name: "watch",
        shortName: "w",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        isCommandLineOnly: !0,
        category: p.Command_line_Options,
        description: p.Watch_input_files,
        defaultValueDescription: !1
      },
      {
        name: "preserveWatchOutput",
        type: "boolean",
        showInSimplifiedHelpView: !1,
        category: p.Output_Formatting,
        description: p.Disable_wiping_the_console_in_watch_mode,
        defaultValueDescription: !1
      },
      {
        name: "listFiles",
        type: "boolean",
        category: p.Compiler_Diagnostics,
        description: p.Print_all_of_the_files_read_during_the_compilation,
        defaultValueDescription: !1
      },
      {
        name: "explainFiles",
        type: "boolean",
        category: p.Compiler_Diagnostics,
        description: p.Print_files_read_during_the_compilation_including_why_it_was_included,
        defaultValueDescription: !1
      },
      {
        name: "listEmittedFiles",
        type: "boolean",
        category: p.Compiler_Diagnostics,
        description: p.Print_the_names_of_emitted_files_after_a_compilation,
        defaultValueDescription: !1
      },
      {
        name: "pretty",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Output_Formatting,
        description: p.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,
        defaultValueDescription: !0
      },
      {
        name: "traceResolution",
        type: "boolean",
        category: p.Compiler_Diagnostics,
        description: p.Log_paths_used_during_the_moduleResolution_process,
        defaultValueDescription: !1
      },
      {
        name: "diagnostics",
        type: "boolean",
        category: p.Compiler_Diagnostics,
        description: p.Output_compiler_performance_information_after_building,
        defaultValueDescription: !1
      },
      {
        name: "extendedDiagnostics",
        type: "boolean",
        category: p.Compiler_Diagnostics,
        description: p.Output_more_detailed_compiler_performance_information_after_building,
        defaultValueDescription: !1
      },
      {
        name: "generateCpuProfile",
        type: "string",
        isFilePath: !0,
        paramType: p.FILE_OR_DIRECTORY,
        category: p.Compiler_Diagnostics,
        description: p.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,
        defaultValueDescription: "profile.cpuprofile"
      },
      {
        name: "generateTrace",
        type: "string",
        isFilePath: !0,
        paramType: p.DIRECTORY,
        category: p.Compiler_Diagnostics,
        description: p.Generates_an_event_trace_and_a_list_of_types
      },
      {
        name: "incremental",
        shortName: "i",
        type: "boolean",
        category: p.Projects,
        description: p.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,
        transpileOptionValue: void 0,
        defaultValueDescription: p.false_unless_composite_is_set
      },
      {
        name: "declaration",
        shortName: "d",
        type: "boolean",
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        transpileOptionValue: void 0,
        description: p.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,
        defaultValueDescription: p.false_unless_composite_is_set
      },
      {
        name: "declarationMap",
        type: "boolean",
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        defaultValueDescription: !1,
        description: p.Create_sourcemaps_for_d_ts_files
      },
      {
        name: "emitDeclarationOnly",
        type: "boolean",
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        description: p.Only_output_d_ts_files_and_not_JavaScript_files,
        transpileOptionValue: void 0,
        defaultValueDescription: !1
      },
      {
        name: "sourceMap",
        type: "boolean",
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        defaultValueDescription: !1,
        description: p.Create_source_map_files_for_emitted_JavaScript_files
      },
      {
        name: "inlineSourceMap",
        type: "boolean",
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Include_sourcemap_files_inside_the_emitted_JavaScript,
        defaultValueDescription: !1
      },
      {
        name: "noCheck",
        type: "boolean",
        showInSimplifiedHelpView: !1,
        category: p.Compiler_Diagnostics,
        description: p.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,
        transpileOptionValue: !0,
        defaultValueDescription: !1
      },
      {
        name: "noEmit",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        description: p.Disable_emitting_files_from_a_compilation,
        transpileOptionValue: void 0,
        defaultValueDescription: !1
      },
      {
        name: "assumeChangesOnlyAffectDirectDependencies",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Watch_and_Build_Modes,
        description: p.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,
        defaultValueDescription: !1
      },
      {
        name: "locale",
        type: "string",
        category: p.Command_line_Options,
        isCommandLineOnly: !0,
        description: p.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,
        defaultValueDescription: p.Platform_specific
      }
    ], uW = {
      name: "target",
      shortName: "t",
      type: new Map(Object.entries({
        es3: 0,
        es5: 1,
        es6: 2,
        es2015: 2,
        es2016: 3,
        es2017: 4,
        es2018: 5,
        es2019: 6,
        es2020: 7,
        es2021: 8,
        es2022: 9,
        es2023: 10,
        es2024: 11,
        es2025: 12,
        esnext: 99
      })),
      affectsSourceFile: !0,
      affectsModuleResolution: !0,
      affectsEmit: !0,
      affectsBuildInfo: !0,
      deprecatedKeys: /* @__PURE__ */ new Set(["es3", "es5"]),
      paramType: p.VERSION,
      showInSimplifiedHelpView: !0,
      category: p.Language_and_Environment,
      description: p.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,
      defaultValueDescription: 12
    }, Fre = {
      name: "module",
      shortName: "m",
      type: new Map(Object.entries({
        none: 0,
        commonjs: 1,
        amd: 2,
        system: 4,
        umd: 3,
        es6: 5,
        es2015: 5,
        es2020: 6,
        es2022: 7,
        esnext: 99,
        node16: 100,
        node18: 101,
        node20: 102,
        nodenext: 199,
        preserve: 200
      })),
      deprecatedKeys: /* @__PURE__ */ new Set([
        "none",
        "amd",
        "system",
        "umd"
      ]),
      affectsSourceFile: !0,
      affectsModuleResolution: !0,
      affectsEmit: !0,
      affectsBuildInfo: !0,
      paramType: p.KIND,
      showInSimplifiedHelpView: !0,
      category: p.Modules,
      description: p.Specify_what_module_code_is_generated,
      defaultValueDescription: void 0
    }, _ye = [
      {
        name: "all",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Command_line_Options,
        description: p.Show_all_compiler_options,
        defaultValueDescription: !1
      },
      {
        name: "version",
        shortName: "v",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Command_line_Options,
        description: p.Print_the_compiler_s_version,
        defaultValueDescription: !1
      },
      {
        name: "init",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Command_line_Options,
        description: p.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,
        defaultValueDescription: !1
      },
      {
        name: "project",
        shortName: "p",
        type: "string",
        isFilePath: !0,
        showInSimplifiedHelpView: !0,
        category: p.Command_line_Options,
        paramType: p.FILE_OR_DIRECTORY,
        description: p.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json
      },
      {
        name: "showConfig",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Command_line_Options,
        isCommandLineOnly: !0,
        description: p.Print_the_final_configuration_instead_of_building,
        defaultValueDescription: !1
      },
      {
        name: "listFilesOnly",
        type: "boolean",
        category: p.Command_line_Options,
        isCommandLineOnly: !0,
        description: p.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,
        defaultValueDescription: !1
      },
      {
        name: "ignoreConfig",
        type: "boolean",
        showInSimplifiedHelpView: !0,
        category: p.Command_line_Options,
        isCommandLineOnly: !0,
        description: p.Ignore_the_tsconfig_found_and_build_with_commandline_options_and_files,
        defaultValueDescription: !1
      },
      uW,
      Fre,
      {
        name: "lib",
        type: "list",
        element: {
          name: "lib",
          type: yF,
          defaultValueDescription: void 0
        },
        affectsProgramStructure: !0,
        showInSimplifiedHelpView: !0,
        category: p.Language_and_Environment,
        description: p.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,
        transpileOptionValue: void 0
      },
      {
        name: "allowJs",
        type: "boolean",
        allowJsFlag: !0,
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.JavaScript_Support,
        description: p.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJs_option_to_get_errors_from_these_files,
        defaultValueDescription: p.false_unless_checkJs_is_set
      },
      {
        name: "checkJs",
        type: "boolean",
        affectsModuleResolution: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.JavaScript_Support,
        description: p.Enable_error_reporting_in_type_checked_JavaScript_files,
        defaultValueDescription: !1
      },
      {
        name: "jsx",
        type: lye,
        affectsSourceFile: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsModuleResolution: !0,
        affectsSemanticDiagnostics: !0,
        paramType: p.KIND,
        showInSimplifiedHelpView: !0,
        category: p.Language_and_Environment,
        description: p.Specify_what_JSX_code_is_generated,
        defaultValueDescription: void 0
      },
      {
        name: "outFile",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsDeclarationPath: !0,
        isFilePath: !0,
        paramType: p.FILE,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        description: p.Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output,
        transpileOptionValue: void 0
      },
      {
        name: "outDir",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsDeclarationPath: !0,
        isFilePath: !0,
        paramType: p.DIRECTORY,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        description: p.Specify_an_output_folder_for_all_emitted_files
      },
      {
        name: "rootDir",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsDeclarationPath: !0,
        isFilePath: !0,
        paramType: p.LOCATION,
        category: p.Modules,
        description: p.Specify_the_root_folder_within_your_source_files,
        defaultValueDescription: p.Computed_from_the_list_of_input_files
      },
      {
        name: "composite",
        type: "boolean",
        affectsBuildInfo: !0,
        isTSConfigOnly: !0,
        category: p.Projects,
        transpileOptionValue: void 0,
        defaultValueDescription: !1,
        description: p.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references
      },
      {
        name: "tsBuildInfoFile",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        isFilePath: !0,
        paramType: p.FILE,
        category: p.Projects,
        transpileOptionValue: void 0,
        defaultValueDescription: ".tsbuildinfo",
        description: p.Specify_the_path_to_tsbuildinfo_incremental_compilation_file
      },
      {
        name: "removeComments",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Emit,
        defaultValueDescription: !1,
        description: p.Disable_emitting_comments
      },
      {
        name: "importHelpers",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsSourceFile: !0,
        category: p.Emit,
        description: p.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,
        defaultValueDescription: !1
      },
      {
        name: "importsNotUsedAsValues",
        type: new Map(Object.entries({
          remove: 0,
          preserve: 1,
          error: 2
        })),
        affectsEmit: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Backwards_Compatibility,
        description: p.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,
        defaultValueDescription: 0
      },
      {
        name: "downlevelIteration",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,
        defaultValueDescription: !1
      },
      {
        name: "isolatedModules",
        type: "boolean",
        category: p.Interop_Constraints,
        description: p.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,
        transpileOptionValue: !0,
        defaultValueDescription: !1
      },
      {
        name: "verbatimModuleSyntax",
        type: "boolean",
        affectsEmit: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Interop_Constraints,
        description: p.Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting,
        defaultValueDescription: !1
      },
      {
        name: "isolatedDeclarations",
        type: "boolean",
        category: p.Interop_Constraints,
        description: p.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,
        defaultValueDescription: !1,
        affectsBuildInfo: !0,
        affectsSemanticDiagnostics: !0
      },
      {
        name: "erasableSyntaxOnly",
        type: "boolean",
        category: p.Interop_Constraints,
        description: p.Do_not_allow_runtime_constructs_that_are_not_part_of_ECMAScript,
        defaultValueDescription: !1,
        affectsBuildInfo: !0,
        affectsSemanticDiagnostics: !0
      },
      {
        name: "libReplacement",
        type: "boolean",
        affectsProgramStructure: !0,
        category: p.Language_and_Environment,
        description: p.Enable_lib_replacement,
        defaultValueDescription: !1
      },
      {
        name: "strict",
        type: "boolean",
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Type_Checking,
        description: p.Enable_all_strict_type_checking_options,
        defaultValueDescription: !0
      },
      {
        name: "noImplicitAny",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "strictNullChecks",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.When_type_checking_take_into_account_null_and_undefined,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "strictFunctionTypes",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "strictBindCallApply",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "strictPropertyInitialization",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "strictBuiltinIteratorReturn",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.Built_in_iterators_are_instantiated_with_a_TReturn_type_of_undefined_instead_of_any,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "stableTypeOrdering",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        showInHelp: !1,
        category: p.Type_Checking,
        description: p.Ensure_types_are_ordered_stably_and_deterministically_across_compilations,
        defaultValueDescription: !1
      },
      {
        name: "noImplicitThis",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.Enable_error_reporting_when_this_is_given_the_type_any,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "useUnknownInCatchVariables",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        strictFlag: !0,
        category: p.Type_Checking,
        description: p.Default_catch_clause_variables_as_unknown_instead_of_any,
        defaultValueDescription: p.true_unless_strict_is_false
      },
      {
        name: "alwaysStrict",
        type: "boolean",
        affectsSourceFile: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Ensure_use_strict_is_always_emitted,
        defaultValueDescription: !0
      },
      {
        name: "noUnusedLocals",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Enable_error_reporting_when_local_variables_aren_t_read,
        defaultValueDescription: !1
      },
      {
        name: "noUnusedParameters",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Raise_an_error_when_a_function_parameter_isn_t_read,
        defaultValueDescription: !1
      },
      {
        name: "exactOptionalPropertyTypes",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Interpret_optional_property_types_as_written_rather_than_adding_undefined,
        defaultValueDescription: !1
      },
      {
        name: "noImplicitReturns",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,
        defaultValueDescription: !1
      },
      {
        name: "noFallthroughCasesInSwitch",
        type: "boolean",
        affectsBindDiagnostics: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,
        defaultValueDescription: !1
      },
      {
        name: "noUncheckedIndexedAccess",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Add_undefined_to_a_type_when_accessed_using_an_index,
        defaultValueDescription: !1
      },
      {
        name: "noImplicitOverride",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,
        defaultValueDescription: !1
      },
      {
        name: "noPropertyAccessFromIndexSignature",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !1,
        category: p.Type_Checking,
        description: p.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,
        defaultValueDescription: !1
      },
      {
        name: "moduleResolution",
        type: new Map(Object.entries({
          node10: 2,
          node: 2,
          classic: 1,
          node16: 3,
          nodenext: 99,
          bundler: 100
        })),
        deprecatedKeys: /* @__PURE__ */ new Set([
          "node",
          "node10",
          "classic"
        ]),
        affectsSourceFile: !0,
        affectsModuleResolution: !0,
        paramType: p.STRATEGY,
        category: p.Modules,
        description: p.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,
        defaultValueDescription: p.nodenext_if_module_is_nodenext_node16_if_module_is_node16_or_node18_otherwise_bundler
      },
      {
        name: "baseUrl",
        type: "string",
        affectsModuleResolution: !0,
        isFilePath: !0,
        category: p.Modules,
        description: p.Specify_the_base_directory_to_resolve_non_relative_module_names
      },
      {
        name: "paths",
        type: "object",
        affectsModuleResolution: !0,
        allowConfigDirTemplateSubstitution: !0,
        isTSConfigOnly: !0,
        category: p.Modules,
        description: p.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,
        transpileOptionValue: void 0
      },
      {
        name: "rootDirs",
        type: "list",
        isTSConfigOnly: !0,
        element: {
          name: "rootDirs",
          type: "string",
          isFilePath: !0
        },
        affectsModuleResolution: !0,
        allowConfigDirTemplateSubstitution: !0,
        category: p.Modules,
        description: p.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,
        transpileOptionValue: void 0,
        defaultValueDescription: p.Computed_from_the_list_of_input_files
      },
      {
        name: "typeRoots",
        type: "list",
        element: {
          name: "typeRoots",
          type: "string",
          isFilePath: !0
        },
        affectsModuleResolution: !0,
        allowConfigDirTemplateSubstitution: !0,
        category: p.Modules,
        description: p.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types
      },
      {
        name: "types",
        type: "list",
        element: {
          name: "types",
          type: "string"
        },
        affectsProgramStructure: !0,
        showInSimplifiedHelpView: !0,
        category: p.Modules,
        description: p.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,
        transpileOptionValue: void 0
      },
      {
        name: "allowSyntheticDefaultImports",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Interop_Constraints,
        description: p.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,
        defaultValueDescription: !0
      },
      {
        name: "esModuleInterop",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        showInSimplifiedHelpView: !0,
        category: p.Interop_Constraints,
        description: p.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,
        defaultValueDescription: !0
      },
      {
        name: "preserveSymlinks",
        type: "boolean",
        category: p.Interop_Constraints,
        description: p.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,
        defaultValueDescription: !1
      },
      {
        name: "allowUmdGlobalAccess",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Modules,
        description: p.Allow_accessing_UMD_globals_from_modules,
        defaultValueDescription: !1
      },
      {
        name: "moduleSuffixes",
        type: "list",
        element: {
          name: "suffix",
          type: "string"
        },
        listPreserveFalsyValues: !0,
        affectsModuleResolution: !0,
        category: p.Modules,
        description: p.List_of_file_name_suffixes_to_search_when_resolving_a_module
      },
      {
        name: "allowImportingTsExtensions",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Modules,
        description: p.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,
        defaultValueDescription: !1,
        transpileOptionValue: void 0
      },
      {
        name: "rewriteRelativeImportExtensions",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Modules,
        description: p.Rewrite_ts_tsx_mts_and_cts_file_extensions_in_relative_import_paths_to_their_JavaScript_equivalent_in_output_files,
        defaultValueDescription: !1
      },
      {
        name: "resolvePackageJsonExports",
        type: "boolean",
        affectsModuleResolution: !0,
        category: p.Modules,
        description: p.Use_the_package_json_exports_field_when_resolving_package_imports,
        defaultValueDescription: p.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false
      },
      {
        name: "resolvePackageJsonImports",
        type: "boolean",
        affectsModuleResolution: !0,
        category: p.Modules,
        description: p.Use_the_package_json_imports_field_when_resolving_imports,
        defaultValueDescription: p.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false
      },
      {
        name: "customConditions",
        type: "list",
        element: {
          name: "condition",
          type: "string"
        },
        affectsModuleResolution: !0,
        category: p.Modules,
        description: p.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports
      },
      {
        name: "noUncheckedSideEffectImports",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Modules,
        description: p.Check_side_effect_imports,
        defaultValueDescription: !0
      },
      {
        name: "sourceRoot",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        paramType: p.LOCATION,
        category: p.Emit,
        description: p.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code
      },
      {
        name: "mapRoot",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        paramType: p.LOCATION,
        category: p.Emit,
        description: p.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations
      },
      {
        name: "inlineSources",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,
        defaultValueDescription: !1
      },
      {
        name: "experimentalDecorators",
        type: "boolean",
        affectsEmit: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Language_and_Environment,
        description: p.Enable_experimental_support_for_legacy_experimental_decorators,
        defaultValueDescription: !1
      },
      {
        name: "emitDecoratorMetadata",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Language_and_Environment,
        description: p.Emit_design_type_metadata_for_decorated_declarations_in_source_files,
        defaultValueDescription: !1
      },
      {
        name: "jsxFactory",
        type: "string",
        category: p.Language_and_Environment,
        description: p.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,
        defaultValueDescription: "`React.createElement`"
      },
      {
        name: "jsxFragmentFactory",
        type: "string",
        category: p.Language_and_Environment,
        description: p.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,
        defaultValueDescription: "React.Fragment"
      },
      {
        name: "jsxImportSource",
        type: "string",
        affectsSemanticDiagnostics: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsModuleResolution: !0,
        affectsSourceFile: !0,
        category: p.Language_and_Environment,
        description: p.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,
        defaultValueDescription: "react"
      },
      {
        name: "resolveJsonModule",
        type: "boolean",
        affectsModuleResolution: !0,
        category: p.Modules,
        description: p.Enable_importing_json_files,
        defaultValueDescription: !1
      },
      {
        name: "allowArbitraryExtensions",
        type: "boolean",
        affectsProgramStructure: !0,
        category: p.Modules,
        description: p.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,
        defaultValueDescription: !1
      },
      {
        name: "out",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsDeclarationPath: !0,
        isFilePath: !1,
        category: p.Backwards_Compatibility,
        paramType: p.FILE,
        transpileOptionValue: void 0,
        description: p.Deprecated_setting_Use_outFile_instead
      },
      {
        name: "reactNamespace",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Language_and_Environment,
        description: p.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,
        defaultValueDescription: "`React`"
      },
      {
        name: "skipDefaultLibCheck",
        type: "boolean",
        affectsBuildInfo: !0,
        category: p.Completeness,
        description: p.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,
        defaultValueDescription: !1
      },
      {
        name: "charset",
        type: "string",
        category: p.Backwards_Compatibility,
        description: p.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,
        defaultValueDescription: "utf8"
      },
      {
        name: "emitBOM",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,
        defaultValueDescription: !1
      },
      {
        name: "newLine",
        type: new Map(Object.entries({
          crlf: 0,
          lf: 1
        })),
        affectsEmit: !0,
        affectsBuildInfo: !0,
        paramType: p.NEWLINE,
        category: p.Emit,
        description: p.Set_the_newline_character_for_emitting_files,
        defaultValueDescription: "lf"
      },
      {
        name: "noErrorTruncation",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Output_Formatting,
        description: p.Disable_truncating_types_in_error_messages,
        defaultValueDescription: !1
      },
      {
        name: "noLib",
        type: "boolean",
        category: p.Language_and_Environment,
        affectsProgramStructure: !0,
        description: p.Disable_including_any_library_files_including_the_default_lib_d_ts,
        transpileOptionValue: !0,
        defaultValueDescription: !1
      },
      {
        name: "noResolve",
        type: "boolean",
        affectsModuleResolution: !0,
        category: p.Modules,
        description: p.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,
        transpileOptionValue: !0,
        defaultValueDescription: !1
      },
      {
        name: "stripInternal",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,
        defaultValueDescription: !1
      },
      {
        name: "disableSizeLimit",
        type: "boolean",
        affectsProgramStructure: !0,
        category: p.Editor_Support,
        description: p.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,
        defaultValueDescription: !1
      },
      {
        name: "disableSourceOfProjectReferenceRedirect",
        type: "boolean",
        isTSConfigOnly: !0,
        category: p.Projects,
        description: p.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,
        defaultValueDescription: !1
      },
      {
        name: "disableSolutionSearching",
        type: "boolean",
        isTSConfigOnly: !0,
        category: p.Projects,
        description: p.Opt_a_project_out_of_multi_project_reference_checking_when_editing,
        defaultValueDescription: !1
      },
      {
        name: "disableReferencedProjectLoad",
        type: "boolean",
        isTSConfigOnly: !0,
        category: p.Projects,
        description: p.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,
        defaultValueDescription: !1
      },
      {
        name: "noImplicitUseStrict",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Backwards_Compatibility,
        description: p.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,
        defaultValueDescription: !1
      },
      {
        name: "noEmitHelpers",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,
        defaultValueDescription: !1
      },
      {
        name: "noEmitOnError",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        transpileOptionValue: void 0,
        description: p.Disable_emitting_files_if_any_type_checking_errors_are_reported,
        defaultValueDescription: !1
      },
      {
        name: "preserveConstEnums",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Emit,
        description: p.Disable_erasing_const_enum_declarations_in_generated_code,
        defaultValueDescription: !1
      },
      {
        name: "declarationDir",
        type: "string",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        affectsDeclarationPath: !0,
        isFilePath: !0,
        paramType: p.DIRECTORY,
        category: p.Emit,
        transpileOptionValue: void 0,
        description: p.Specify_the_output_directory_for_generated_declaration_files
      },
      {
        name: "skipLibCheck",
        type: "boolean",
        affectsBuildInfo: !0,
        category: p.Completeness,
        description: p.Skip_type_checking_all_d_ts_files,
        defaultValueDescription: !1
      },
      {
        name: "allowUnusedLabels",
        type: "boolean",
        affectsBindDiagnostics: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Disable_error_reporting_for_unused_labels,
        defaultValueDescription: void 0
      },
      {
        name: "allowUnreachableCode",
        type: "boolean",
        affectsBindDiagnostics: !0,
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Type_Checking,
        description: p.Disable_error_reporting_for_unreachable_code,
        defaultValueDescription: void 0
      },
      {
        name: "suppressExcessPropertyErrors",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Backwards_Compatibility,
        description: p.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,
        defaultValueDescription: !1
      },
      {
        name: "suppressImplicitAnyIndexErrors",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Backwards_Compatibility,
        description: p.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,
        defaultValueDescription: !1
      },
      {
        name: "forceConsistentCasingInFileNames",
        type: "boolean",
        affectsModuleResolution: !0,
        category: p.Interop_Constraints,
        description: p.Ensure_that_casing_is_correct_in_imports,
        defaultValueDescription: !0
      },
      {
        name: "maxNodeModuleJsDepth",
        type: "number",
        affectsModuleResolution: !0,
        category: p.JavaScript_Support,
        description: p.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,
        defaultValueDescription: 0
      },
      {
        name: "noStrictGenericChecks",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsBuildInfo: !0,
        category: p.Backwards_Compatibility,
        description: p.Disable_strict_checking_of_generic_signatures_in_function_types,
        defaultValueDescription: !1
      },
      {
        name: "useDefineForClassFields",
        type: "boolean",
        affectsSemanticDiagnostics: !0,
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Language_and_Environment,
        description: p.Emit_ECMAScript_standard_compliant_class_fields,
        defaultValueDescription: p.true_for_ES2022_and_above_including_ESNext
      },
      {
        name: "preserveValueImports",
        type: "boolean",
        affectsEmit: !0,
        affectsBuildInfo: !0,
        category: p.Backwards_Compatibility,
        description: p.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,
        defaultValueDescription: !1
      },
      {
        name: "keyofStringsOnly",
        type: "boolean",
        category: p.Backwards_Compatibility,
        description: p.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,
        defaultValueDescription: !1
      },
      {
        name: "plugins",
        type: "list",
        isTSConfigOnly: !0,
        element: {
          name: "plugin",
          type: "object"
        },
        description: p.Specify_a_list_of_language_service_plugins_to_include,
        category: p.Editor_Support
      },
      {
        name: "moduleDetection",
        type: new Map(Object.entries({
          auto: 2,
          legacy: 1,
          force: 3
        })),
        affectsSourceFile: !0,
        affectsModuleResolution: !0,
        description: p.Control_what_method_is_used_to_detect_module_format_JS_files,
        category: p.Language_and_Environment,
        defaultValueDescription: p.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules
      },
      {
        name: "ignoreDeprecations",
        type: "string",
        defaultValueDescription: void 0
      }
    ], $d = [...vF, ..._ye], Lre = $d.filter((e) => !!e.affectsSemanticDiagnostics), Mre = $d.filter((e) => !!e.affectsEmit), Rre = $d.filter((e) => !!e.affectsDeclarationPath), _W = $d.filter((e) => !!e.affectsModuleResolution), fW = $d.filter((e) => !!e.affectsSourceFile || !!e.affectsBindDiagnostics), jre = $d.filter((e) => !!e.affectsProgramStructure), Bre = $d.filter((e) => po(e, "transpileOptionValue")), uMe = $d.filter((e) => e.allowConfigDirTemplateSubstitution || !e.isCommandLineOnly && e.isFilePath), _Me = xk.filter((e) => e.allowConfigDirTemplateSubstitution || !e.isCommandLineOnly && e.isFilePath), Jre = $d.filter(fMe);
    function fMe(e) {
      return !Ta(e.type);
    }
    var kk = {
      name: "build",
      type: "boolean",
      shortName: "b",
      showInSimplifiedHelpView: !0,
      category: p.Command_line_Options,
      description: p.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,
      defaultValueDescription: !1
    }, pW = [
      kk,
      {
        name: "verbose",
        shortName: "v",
        category: p.Command_line_Options,
        description: p.Enable_verbose_logging,
        type: "boolean",
        defaultValueDescription: !1
      },
      {
        name: "dry",
        shortName: "d",
        category: p.Command_line_Options,
        description: p.Show_what_would_be_built_or_deleted_if_specified_with_clean,
        type: "boolean",
        defaultValueDescription: !1
      },
      {
        name: "force",
        shortName: "f",
        category: p.Command_line_Options,
        description: p.Build_all_projects_including_those_that_appear_to_be_up_to_date,
        type: "boolean",
        defaultValueDescription: !1
      },
      {
        name: "clean",
        category: p.Command_line_Options,
        description: p.Delete_the_outputs_of_all_projects,
        type: "boolean",
        defaultValueDescription: !1
      },
      {
        name: "stopBuildOnErrors",
        category: p.Command_line_Options,
        description: p.Skip_building_downstream_projects_on_error_in_upstream_project,
        type: "boolean",
        defaultValueDescription: !1
      }
    ], TN = [...vF, ...pW], bF = [
      {
        name: "enable",
        type: "boolean",
        defaultValueDescription: !1
      },
      {
        name: "include",
        type: "list",
        element: {
          name: "include",
          type: "string"
        }
      },
      {
        name: "exclude",
        type: "list",
        element: {
          name: "exclude",
          type: "string"
        }
      },
      {
        name: "disableFilenameBasedTypeAcquisition",
        type: "boolean",
        defaultValueDescription: !1
      }
    ];
    function SF(e) {
      const t = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
      return bt(e, (i) => {
        t.set(i.name.toLowerCase(), i), i.shortName && n.set(i.shortName, i.name);
      }), {
        optionsNameMap: t,
        shortOptionNames: n
      };
    }
    var fye;
    function q6() {
      return fye || (fye = SF($d));
    }
    var pMe = {
      diagnostic: p.Compiler_option_0_may_only_be_used_with_build,
      getOptionsNameMap: yye
    }, pye = {
      module: 1,
      target: 3,
      strict: !0,
      esModuleInterop: !0,
      forceConsistentCasingInFileNames: !0,
      skipLibCheck: !0
    };
    function zre(e) {
      return dye(e, nc);
    }
    function dye(e, t) {
      const n = ma(e.type.keys()), i = (e.deprecatedKeys ? n.filter((a) => !e.deprecatedKeys.has(a)) : n).map((a) => `'${a}'`).join(", ");
      return t(p.Argument_for_0_option_must_be_Colon_1, `--${e.name}`, i);
    }
    function TF(e, t, n) {
      return Zye(e, (t ?? "").trim(), n);
    }
    function Wre(e, t = "", n) {
      if (t = t.trim(), ta(t, "-")) return;
      if (e.type === "listOrElement" && !t.includes(",")) return Ck(e, t, n);
      if (t === "") return [];
      const i = t.split(",");
      switch (e.element.type) {
        case "number":
          return Rn(i, (a) => Ck(e.element, parseInt(a), n));
        case "string":
          return Rn(i, (a) => Ck(e.element, a || "", n));
        case "boolean":
        case "object":
          return E.fail(`List of ${e.element.type} is not yet supported.`);
        default:
          return Rn(i, (a) => TF(e.element, a, n));
      }
    }
    function mye(e) {
      return e.name;
    }
    function Ure(e, t, n, i, a) {
      var o;
      const c = (o = t.alternateMode) == null ? void 0 : o.getOptionsNameMap().optionsNameMap.get(e.toLowerCase());
      if (c) return Fv(a, i, c !== kk ? t.alternateMode.diagnostic : p.Option_build_must_be_the_first_command_line_argument, e);
      const _ = xb(e, t.optionDeclarations, mye);
      return _ ? Fv(a, i, t.unknownDidYouMeanDiagnostic, n || e, _.name) : Fv(a, i, t.unknownOptionDiagnostic, n || e);
    }
    function dW(e, t, n) {
      const i = {};
      let a;
      const o = [], c = [];
      return _(t), {
        options: i,
        watchOptions: a,
        fileNames: o,
        errors: c
      };
      function _(d) {
        let g = 0;
        for (; g < d.length; ) {
          const h = d[g];
          if (g++, h.charCodeAt(0) === 64) u(h.slice(1));
          else if (h.charCodeAt(0) === 45) {
            const S = h.slice(h.charCodeAt(1) === 45 ? 2 : 1), T = qre(e.getOptionsNameMap, S, !0);
            if (T) g = gye(d, g, e, T, i, c);
            else {
              const k = qre(yW.getOptionsNameMap, S, !0);
              k ? g = gye(d, g, yW, k, a || (a = {}), c) : c.push(Ure(S, e, h));
            }
          } else o.push(h);
        }
      }
      function u(d) {
        const g = fw(d, n || ((T) => Cl.readFile(T)));
        if (!Ta(g)) {
          c.push(g);
          return;
        }
        const h = [];
        let S = 0;
        for (; ; ) {
          for (; S < g.length && g.charCodeAt(S) <= 32; ) S++;
          if (S >= g.length) break;
          const T = S;
          if (g.charCodeAt(T) === 34) {
            for (S++; S < g.length && g.charCodeAt(S) !== 34; ) S++;
            S < g.length ? (h.push(g.substring(T + 1, S)), S++) : c.push(nc(p.Unterminated_quoted_string_in_response_file_0, d));
          } else {
            for (; g.charCodeAt(S) > 32; ) S++;
            h.push(g.substring(T, S));
          }
        }
        _(h);
      }
    }
    function gye(e, t, n, i, a, o) {
      if (i.isTSConfigOnly) {
        const c = e[t];
        c === "null" ? (a[i.name] = void 0, t++) : i.type === "boolean" ? c === "false" ? (a[i.name] = Ck(i, !1, o), t++) : (c === "true" && t++, o.push(nc(p.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line, i.name))) : (o.push(nc(p.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line, i.name)), c && !ta(c, "-") && t++);
      } else if (!e[t] && i.type !== "boolean" && o.push(nc(n.optionTypeMismatchDiagnostic, i.name, vW(i))), e[t] !== "null") switch (i.type) {
        case "number":
          a[i.name] = Ck(i, parseInt(e[t]), o), t++;
          break;
        case "boolean":
          const c = e[t];
          a[i.name] = Ck(i, c !== "false", o), (c === "false" || c === "true") && t++;
          break;
        case "string":
          a[i.name] = Ck(i, e[t] || "", o), t++;
          break;
        case "list":
          const _ = Wre(i, e[t], o);
          a[i.name] = _ || [], _ && t++;
          break;
        case "listOrElement":
          E.fail("listOrElement not supported here");
          break;
        default:
          a[i.name] = TF(i, e[t], o), t++;
          break;
      }
      else
        a[i.name] = void 0, t++;
      return t;
    }
    var xF = {
      alternateMode: pMe,
      getOptionsNameMap: q6,
      optionDeclarations: $d,
      unknownOptionDiagnostic: p.Unknown_compiler_option_0,
      unknownDidYouMeanDiagnostic: p.Unknown_compiler_option_0_Did_you_mean_1,
      optionTypeMismatchDiagnostic: p.Compiler_option_0_expects_an_argument
    };
    function Vre(e, t) {
      return dW(xF, e, t);
    }
    function mW(e, t) {
      return qre(q6, e, t);
    }
    function qre(e, t, n = !1) {
      t = t.toLowerCase();
      const { optionsNameMap: i, shortOptionNames: a } = e();
      if (n) {
        const o = a.get(t);
        o !== void 0 && (t = o);
      }
      return i.get(t);
    }
    var hye;
    function yye() {
      return hye || (hye = SF(TN));
    }
    var dMe = {
      alternateMode: {
        diagnostic: p.Compiler_option_0_may_not_be_used_with_build,
        getOptionsNameMap: q6
      },
      getOptionsNameMap: yye,
      optionDeclarations: TN,
      unknownOptionDiagnostic: p.Unknown_build_option_0,
      unknownDidYouMeanDiagnostic: p.Unknown_build_option_0_Did_you_mean_1,
      optionTypeMismatchDiagnostic: p.Build_option_0_requires_a_value_of_type_1
    };
    function Gre(e) {
      const { options: t, watchOptions: n, fileNames: i, errors: a } = dW(dMe, e), o = t;
      return i.length === 0 && i.push("."), o.clean && o.force && a.push(nc(p.Options_0_and_1_cannot_be_combined, "clean", "force")), o.clean && o.verbose && a.push(nc(p.Options_0_and_1_cannot_be_combined, "clean", "verbose")), o.clean && o.watch && a.push(nc(p.Options_0_and_1_cannot_be_combined, "clean", "watch")), o.watch && o.dry && a.push(nc(p.Options_0_and_1_cannot_be_combined, "watch", "dry")), {
        buildOptions: o,
        watchOptions: n,
        projects: i,
        errors: a
      };
    }
    function q_(e, ...t) {
      return ns(nc(e, ...t).messageText, Ta);
    }
    function xN(e, t, n, i, a, o) {
      const c = fw(e, (d) => n.readFile(d));
      if (!Ta(c)) {
        n.onUnRecoverableConfigFileDiagnostic(c);
        return;
      }
      const _ = bN(e, c), u = n.getCurrentDirectory();
      return _.path = Eo(e, u, pu(n.useCaseSensitiveFileNames)), _.resolvedPath = _.path, _.originalFileName = _.fileName, EN(_, n, ca(Xn(e), u), t, ca(e, u), void 0, o, i, a);
    }
    function kN(e, t) {
      const n = fw(e, t);
      return Ta(n) ? gW(e, n) : {
        config: {},
        error: n
      };
    }
    function gW(e, t) {
      const n = bN(e, t);
      return {
        config: Nye(n, n.parseDiagnostics, void 0),
        error: n.parseDiagnostics.length ? n.parseDiagnostics[0] : void 0
      };
    }
    function Hre(e, t) {
      const n = fw(e, t);
      return Ta(n) ? bN(e, n) : {
        fileName: e,
        parseDiagnostics: [n]
      };
    }
    function fw(e, t) {
      let n;
      try {
        n = t(e);
      } catch (i) {
        return nc(p.Cannot_read_file_0_Colon_1, e, i.message);
      }
      return n === void 0 ? nc(p.Cannot_read_file_0, e) : n;
    }
    function hW(e) {
      return jC(e, mye);
    }
    var vye = {
      optionDeclarations: bF,
      unknownOptionDiagnostic: p.Unknown_type_acquisition_option_0,
      unknownDidYouMeanDiagnostic: p.Unknown_type_acquisition_option_0_Did_you_mean_1
    }, bye;
    function Sye() {
      return bye || (bye = SF(xk));
    }
    var yW = {
      getOptionsNameMap: Sye,
      optionDeclarations: xk,
      unknownOptionDiagnostic: p.Unknown_watch_option_0,
      unknownDidYouMeanDiagnostic: p.Unknown_watch_option_0_Did_you_mean_1,
      optionTypeMismatchDiagnostic: p.Watch_option_0_requires_a_value_of_type_1
    }, Tye;
    function xye() {
      return Tye || (Tye = hW($d));
    }
    var kye;
    function Cye() {
      return kye || (kye = hW(xk));
    }
    var Eye;
    function Dye() {
      return Eye || (Eye = hW(bF));
    }
    var kF = {
      name: "extends",
      type: "listOrElement",
      element: {
        name: "extends",
        type: "string"
      },
      category: p.File_Management,
      disallowNullOrUndefined: !0
    }, wye = {
      name: "compilerOptions",
      type: "object",
      elementOptions: xye(),
      extraKeyDiagnostics: xF
    }, Pye = {
      name: "watchOptions",
      type: "object",
      elementOptions: Cye(),
      extraKeyDiagnostics: yW
    }, Aye = {
      name: "typeAcquisition",
      type: "object",
      elementOptions: Dye(),
      extraKeyDiagnostics: vye
    }, $re;
    function mMe() {
      return $re === void 0 && ($re = {
        name: void 0,
        type: "object",
        elementOptions: hW([
          wye,
          Pye,
          Aye,
          kF,
          {
            name: "references",
            type: "list",
            element: {
              name: "references",
              type: "object"
            },
            category: p.Projects
          },
          {
            name: "files",
            type: "list",
            element: {
              name: "files",
              type: "string"
            },
            category: p.File_Management
          },
          {
            name: "include",
            type: "list",
            element: {
              name: "include",
              type: "string"
            },
            category: p.File_Management,
            defaultValueDescription: p.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk
          },
          {
            name: "exclude",
            type: "list",
            element: {
              name: "exclude",
              type: "string"
            },
            category: p.File_Management,
            defaultValueDescription: p.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified
          },
          Ore
        ])
      }), $re;
    }
    function Nye(e, t, n) {
      var i;
      const a = (i = e.statements[0]) == null ? void 0 : i.expression;
      if (a && a.kind !== 211) {
        if (t.push(Sp(e, a, p.The_root_value_of_a_0_file_must_be_an_object, nl(e.fileName) === "jsconfig.json" ? "jsconfig.json" : "tsconfig.json")), hu(a)) {
          const o = xr(a.elements, bs);
          if (o) return CN(e, o, t, !0, n);
        }
        return {};
      }
      return CN(e, a, t, !0, n);
    }
    function Xre(e, t) {
      var n;
      return CN(e, (n = e.statements[0]) == null ? void 0 : n.expression, t, !0, void 0);
    }
    function CN(e, t, n, i, a) {
      if (!t) return i ? {} : void 0;
      return _(t, a?.rootOptions);
      function o(d, g) {
        var h;
        const S = i ? {} : void 0;
        for (const T of d.properties) {
          if (T.kind !== 304) {
            n.push(Sp(e, T, p.Property_assignment_expected));
            continue;
          }
          T.questionToken && n.push(Sp(e, T.questionToken, p.The_0_modifier_can_only_be_used_in_TypeScript_files, "?")), u(T.name) || n.push(Sp(e, T.name, p.String_literal_with_double_quotes_expected));
          const k = G3(T.name) ? void 0 : Ix(T.name), D = k && Ti(k), P = D ? (h = g?.elementOptions) == null ? void 0 : h.get(D) : void 0, N = _(T.initializer, P);
          typeof D < "u" && (i && (S[D] = N), a?.onPropertySet(D, N, T, g, P));
        }
        return S;
      }
      function c(d, g) {
        if (!i) {
          d.forEach((h) => _(h, g));
          return;
        }
        return dn(d.map((h) => _(h, g)), (h) => h !== void 0);
      }
      function _(d, g) {
        switch (d.kind) {
          case 112:
            return !0;
          case 97:
            return !1;
          case 106:
            return null;
          case 11:
            return u(d) || n.push(Sp(e, d, p.String_literal_with_double_quotes_expected)), d.text;
          case 9:
            return Number(d.text);
          case 225:
            if (d.operator !== 41 || d.operand.kind !== 9) break;
            return -Number(d.operand.text);
          case 211:
            return o(d, g);
          case 210:
            return c(d.elements, g && g.element);
        }
        g ? n.push(Sp(e, d, p.Compiler_option_0_requires_a_value_of_type_1, g.name, vW(g))) : n.push(Sp(e, d, p.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal));
      }
      function u(d) {
        return Ts(d) && L5(d, e);
      }
    }
    function vW(e) {
      return e.type === "listOrElement" ? `${vW(e.element)} or Array` : e.type === "list" ? "Array" : Ta(e.type) ? e.type : "string";
    }
    function Iye(e, t) {
      if (e) {
        if (DN(t)) return !e.disallowNullOrUndefined;
        if (e.type === "list") return da(t);
        if (e.type === "listOrElement") return da(t) || Iye(e.element, t);
        const n = Ta(e.type) ? e.type : "string";
        return typeof t === n;
      }
      return !1;
    }
    function bW(e, t, n) {
      var i, a, o;
      const c = pu(n.useCaseSensitiveFileNames), _ = or(dn(e.fileNames, (a = (i = e.options.configFile) == null ? void 0 : i.configFileSpecs) != null && a.validatedIncludeSpecs ? yMe(t, e.options.configFile.configFileSpecs.validatedIncludeSpecs, e.options.configFile.configFileSpecs.validatedExcludeSpecs, n) : Sb), (k) => vx(ca(t, n.getCurrentDirectory()), ca(k, n.getCurrentDirectory()), c)), u = {
        configFilePath: ca(t, n.getCurrentDirectory()),
        useCaseSensitiveFileNames: n.useCaseSensitiveFileNames
      }, d = SW(e.options, u), g = e.watchOptions && vMe(e.watchOptions), h = {
        compilerOptions: {
          ...CF(d),
          showConfig: void 0,
          configFile: void 0,
          configFilePath: void 0,
          help: void 0,
          init: void 0,
          listFiles: void 0,
          listEmittedFiles: void 0,
          project: void 0,
          build: void 0,
          version: void 0
        },
        watchOptions: g && CF(g),
        references: or(e.projectReferences, (k) => ({
          ...k,
          path: k.originalPath ? k.originalPath : "",
          originalPath: void 0
        })),
        files: It(_) ? _ : void 0,
        ...(o = e.options.configFile) != null && o.configFileSpecs ? {
          include: hMe(e.options.configFile.configFileSpecs.validatedIncludeSpecs),
          exclude: e.options.configFile.configFileSpecs.validatedExcludeSpecs
        } : {},
        compileOnSave: e.compileOnSave ? !0 : void 0
      }, S = new Set(d.keys()), T = {};
      for (const k in ID) !S.has(k) && gMe(k, S) && ID[k].computeValue(e.options) !== ID[k].computeValue({}) && (T[k] = ID[k].computeValue(e.options));
      return rS(h.compilerOptions, CF(SW(T, u))), h;
    }
    function gMe(e, t) {
      const n = /* @__PURE__ */ new Set();
      return i(e);
      function i(a) {
        var o;
        return Yp(n, a) ? _t((o = ID[a]) == null ? void 0 : o.dependencies, (c) => t.has(c) || i(c)) : !1;
      }
    }
    function CF(e) {
      return Object.fromEntries(e);
    }
    function hMe(e) {
      if (It(e)) {
        if (It(e) !== 1) return e;
        if (e[0] !== Rye)
          return e;
      }
    }
    function yMe(e, t, n, i) {
      if (!t) return Sb;
      const a = SO(e, n, t, i.useCaseSensitiveFileNames, i.getCurrentDirectory()), o = a.excludePattern && O0(a.excludePattern, i.useCaseSensitiveFileNames), c = a.includeFilePattern && O0(a.includeFilePattern, i.useCaseSensitiveFileNames);
      return c ? o ? (_) => !(c.test(_) && !o.test(_)) : (_) => !c.test(_) : o ? (_) => o.test(_) : Sb;
    }
    function Oye(e) {
      switch (e.type) {
        case "string":
        case "number":
        case "boolean":
        case "object":
          return;
        case "list":
        case "listOrElement":
          return Oye(e.element);
        default:
          return e.type;
      }
    }
    function EF(e, t) {
      return Dl(t, (n, i) => {
        if (n === e) return i;
      });
    }
    function SW(e, t) {
      return Fye(e, q6(), t);
    }
    function vMe(e) {
      return Fye(e, Sye());
    }
    function Fye(e, { optionsNameMap: t }, n) {
      const i = /* @__PURE__ */ new Map(), a = n && pu(n.useCaseSensitiveFileNames);
      for (const o in e) if (po(e, o)) {
        if (t.has(o) && (t.get(o).category === p.Command_line_Options || t.get(o).category === p.Output_Formatting)) continue;
        const c = e[o], _ = t.get(o.toLowerCase());
        if (_) {
          E.assert(_.type !== "listOrElement");
          const u = Oye(_);
          u ? _.type === "list" ? i.set(o, c.map((d) => EF(d, u))) : i.set(o, EF(c, u)) : n && _.isFilePath ? i.set(o, vx(n.configFilePath, ca(c, Xn(n.configFilePath)), a)) : n && _.type === "list" && _.element.isFilePath ? i.set(o, c.map((d) => vx(n.configFilePath, ca(d, Xn(n.configFilePath)), a))) : i.set(o, c);
        }
      }
      return i;
    }
    function Qre(e, t) {
      const i = [], a = Object.keys(e).filter((g) => g !== "init" && g !== "help" && g !== "watch");
      if (i.push("{"), i.push(`  // ${Oa(p.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)}`), i.push('  "compilerOptions": {'), c(p.File_Layout), _("rootDir", "./src", "optional"), _("outDir", "./dist", "optional"), o(), c(p.Environment_Settings), c(p.See_also_https_Colon_Slash_Slashaka_ms_Slashtsconfig_Slashmodule), _("module", 199), _("target", 99), _("types", []), e.lib && _("lib", e.lib), c(p.For_nodejs_Colon), i.push('    // "lib": ["esnext"],'), i.push('    // "types": ["node"],'), c(p.and_npm_install_D_types_Slashnode), o(), c(p.Other_Outputs), _("sourceMap", !0), _("declaration", !0), _("declarationMap", !0), o(), c(p.Stricter_Typechecking_Options), _("noUncheckedIndexedAccess", !0), _("exactOptionalPropertyTypes", !0), o(), c(p.Style_Options), _("noImplicitReturns", !0, "optional"), _("noImplicitOverride", !0, "optional"), _("noUnusedLocals", !0, "optional"), _("noUnusedParameters", !0, "optional"), _("noFallthroughCasesInSwitch", !0, "optional"), _("noPropertyAccessFromIndexSignature", !0, "optional"), o(), c(p.Recommended_Options), _("strict", !0), _("jsx", 4), _("verbatimModuleSyntax", !0), _("isolatedModules", !0), _("noUncheckedSideEffectImports", !0), _("moduleDetection", 3), _("skipLibCheck", !0), a.length > 0)
        for (o(); a.length > 0; ) _(a[0], e[a[0]]);
      function o() {
        i.push("");
      }
      function c(g) {
        i.push(`    // ${Oa(g)}`);
      }
      function _(g, h, S = "never") {
        const T = a.indexOf(g);
        T >= 0 && a.splice(T, 1);
        let k;
        S === "always" ? k = !0 : S === "never" ? k = !1 : k = !po(e, g);
        const D = e[g] ?? h;
        k ? i.push(`    // "${g}": ${u(g, D)},`) : i.push(`    "${g}": ${u(g, D)},`);
      }
      function u(g, h) {
        const S = $d.filter((k) => k.name === g)[0];
        S || E.fail(`No option named ${g}?`);
        const T = S.type instanceof Map ? S.type : void 0;
        if (da(h)) {
          const k = "element" in S && S.element.type instanceof Map ? S.element.type : void 0;
          return `[${h.map((D) => d(D, k)).join(", ")}]`;
        } else return d(h, T);
      }
      function d(g, h) {
        return h && (g = EF(g, h) ?? E.fail(`No matching value of ${g}`)), JSON.stringify(g);
      }
      return i.push("  }"), i.push("}"), i.push(""), i.join(t);
    }
    function DF(e, t) {
      const n = {}, i = q6().optionsNameMap;
      for (const a in e) po(e, a) && (n[a] = bMe(i.get(a.toLowerCase()), e[a], t));
      return n.configFilePath && (n.configFilePath = t(n.configFilePath)), n;
    }
    function bMe(e, t, n) {
      if (e && !DN(t)) {
        if (e.type === "list") {
          const i = t;
          if (e.element.isFilePath && i.length) return i.map(n);
        } else if (e.isFilePath) return n(t);
        E.assert(e.type !== "listOrElement");
      }
      return t;
    }
    function Lye(e, t, n, i, a, o, c, _, u) {
      return jye(e, void 0, t, n, i, u, a, o, c, _);
    }
    function EN(e, t, n, i, a, o, c, _, u) {
      var d, g;
      (d = sn) == null || d.push(sn.Phase.Parse, "parseJsonSourceFileConfigFileContent", { path: e.fileName });
      const h = jye(void 0, e, t, n, i, u, a, o, c, _);
      return (g = sn) == null || g.pop(), h;
    }
    function TW(e, t) {
      t && Object.defineProperty(e, "configFile", {
        enumerable: !1,
        writable: !1,
        value: t
      });
    }
    function DN(e) {
      return e == null;
    }
    function Mye(e, t) {
      return Xn(ca(e, t));
    }
    var Rye = "**/*";
    function jye(e, t, n, i, a = {}, o, c, _ = [], u = [], d) {
      E.assert(e === void 0 && t !== void 0 || e !== void 0 && t === void 0);
      const g = [], h = Vye(e, t, n, i, c, _, g, d), { raw: S } = h, T = Bye(YR(a, h.options || {}), uMe, i), k = wF(o && h.watchOptions ? YR(o, h.watchOptions) : h.watchOptions || o, i);
      T.configFilePath = c && ru(c);
      const D = us(c ? Mye(c, i) : i), P = N();
      return t && (t.configFileSpecs = P), TW(T, t), {
        options: T,
        watchOptions: k,
        fileNames: M(D),
        projectReferences: R(D),
        typeAcquisition: h.typeAcquisition || CW(),
        raw: S,
        errors: g,
        wildcardDirectories: IMe(P, D, n.useCaseSensitiveFileNames),
        compileOnSave: !!S.compileOnSave
      };
      function N() {
        const U = z("references", (ce) => typeof ce == "object", "object"), pe = G(L("files"));
        if (pe) {
          const ce = U === "no-prop" || da(U) && U.length === 0, oe = po(S, "extends");
          if (pe.length === 0 && ce && !oe) if (t) {
            const ge = c || "tsconfig.json", Ae = p.The_files_list_in_config_file_0_is_empty, Ne = Fv(t, Z3(t, "files", (ot) => ot.initializer), Ae, ge);
            g.push(Ne);
          } else H(p.The_files_list_in_config_file_0_is_empty, c || "tsconfig.json");
        }
        let ie = G(L("include"));
        const W = L("exclude");
        let Q = !1, se = G(W);
        if (W === "no-prop") {
          const ce = T.outDir, oe = T.declarationDir;
          (ce || oe) && (se = dn([ce, oe], (ge) => !!ge));
        }
        pe === void 0 && ie === void 0 && (ie = [Rye], Q = !0);
        let he, fe, de, $;
        ie && (he = t1e(ie, g, !0, t, "include"), de = PF(he, D) || he), se && (fe = t1e(se, g, !1, t, "exclude"), $ = PF(fe, D) || fe);
        const Se = dn(pe, Ta), Be = PF(Se, D) || Se;
        return {
          filesSpecs: pe,
          includeSpecs: ie,
          excludeSpecs: se,
          validatedFilesSpec: Be,
          validatedIncludeSpecs: de,
          validatedExcludeSpecs: $,
          validatedFilesSpecBeforeSubstitution: Se,
          validatedIncludeSpecsBeforeSubstitution: he,
          validatedExcludeSpecsBeforeSubstitution: fe,
          isDefaultIncludeSpec: Q
        };
      }
      function M(U) {
        const pe = pw(P, U, T, n, u);
        return Uye(pe, wN(S), _) && g.push(Wye(P, c)), pe;
      }
      function R(U) {
        let pe;
        const ie = z("references", (W) => typeof W == "object", "object");
        if (da(ie)) for (const W of ie) typeof W.path != "string" ? H(p.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string") : (pe || (pe = [])).push({
          path: ca(W.path, U),
          originalPath: W.path,
          prepend: W.prepend,
          circular: W.circular
        });
        return pe;
      }
      function G(U) {
        return da(U) ? U : void 0;
      }
      function L(U) {
        return z(U, Ta, "string");
      }
      function z(U, pe, ie) {
        if (po(S, U) && !DN(S[U])) if (da(S[U])) {
          const W = S[U];
          return !t && !hr(W, pe) && g.push(nc(p.Compiler_option_0_requires_a_value_of_type_1, U, ie)), W;
        } else
          return H(p.Compiler_option_0_requires_a_value_of_type_1, U, "Array"), "not-array";
        return "no-prop";
      }
      function H(U, ...pe) {
        t || g.push(nc(U, ...pe));
      }
    }
    function wF(e, t) {
      return Bye(e, _Me, t);
    }
    function Bye(e, t, n) {
      if (!e) return e;
      let i;
      for (const o of t) if (e[o.name] !== void 0) {
        const c = e[o.name];
        switch (o.type) {
          case "string":
            E.assert(o.isFilePath), xW(c) && a(o, zye(c, n));
            break;
          case "list":
            E.assert(o.element.isFilePath);
            const _ = PF(c, n);
            _ && a(o, _);
            break;
          case "object":
            E.assert(o.name === "paths");
            const u = SMe(c, n);
            u && a(o, u);
            break;
          default:
            E.fail("option type not supported");
        }
      }
      return i || e;
      function a(o, c) {
        (i ?? (i = rS({}, e)))[o.name] = c;
      }
    }
    var Jye = "${configDir}";
    function xW(e) {
      return Ta(e) && ta(e, Jye, !0);
    }
    function zye(e, t) {
      return ca(e.replace(Jye, "./"), t);
    }
    function PF(e, t) {
      if (!e) return e;
      let n;
      return e.forEach((i, a) => {
        xW(i) && ((n ?? (n = e.slice()))[a] = zye(i, t));
      }), n;
    }
    function SMe(e, t) {
      let n;
      return mm(e).forEach((i) => {
        if (!da(e[i])) return;
        const a = PF(e[i], t);
        a && ((n ?? (n = rS({}, e)))[i] = a);
      }), n;
    }
    function TMe(e) {
      return e.code === p.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code;
    }
    function Wye({ includeSpecs: e, excludeSpecs: t }, n) {
      return nc(p.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2, n || "tsconfig.json", JSON.stringify(e || []), JSON.stringify(t || []));
    }
    function Uye(e, t, n) {
      return e.length === 0 && t && (!n || n.length === 0);
    }
    function kW(e) {
      return !e.fileNames.length && po(e.raw, "references");
    }
    function wN(e) {
      return !po(e, "files") && !po(e, "references");
    }
    function AF(e, t, n, i, a) {
      const o = i.length;
      return Uye(e, a) ? i.push(Wye(n, t)) : T4(i, (c) => !TMe(c)), o !== i.length;
    }
    function xMe(e) {
      return !!e.options;
    }
    function Vye(e, t, n, i, a, o, c, _) {
      var u;
      i = ru(i);
      const d = ca(a || "", i);
      if (o.includes(d))
        return c.push(nc(p.Circularity_detected_while_resolving_configuration_Colon_0, [...o, d].join(" -> "))), { raw: e || Xre(t, c) };
      const g = e ? kMe(e, n, i, a, c) : CMe(t, n, i, a, c);
      if ((u = g.options) != null && u.paths && (g.options.pathsBasePath = i), g.extendedConfigPath) {
        o = o.concat([d]);
        const T = { options: {} };
        Ta(g.extendedConfigPath) ? h(T, g.extendedConfigPath) : g.extendedConfigPath.forEach((k) => h(T, k)), T.include && (g.raw.include = T.include), T.exclude && (g.raw.exclude = T.exclude), T.files && (g.raw.files = T.files), g.raw.compileOnSave === void 0 && T.compileOnSave && (g.raw.compileOnSave = T.compileOnSave), t && T.extendedSourceFiles && (t.extendedSourceFiles = ma(T.extendedSourceFiles.keys())), g.options = rS(T.options, g.options), g.watchOptions = g.watchOptions && T.watchOptions ? S(T, g.watchOptions) : g.watchOptions || T.watchOptions;
      }
      return g;
      function h(T, k) {
        const D = EMe(t, k, n, o, c, _, T);
        if (D && xMe(D)) {
          const P = D.raw;
          let N;
          const M = (R) => {
            g.raw[R] || P[R] && (T[R] = or(P[R], (G) => xW(G) || pf(G) ? G : jn(N || (N = F4(Xn(k), i, pu(n.useCaseSensitiveFileNames))), G)));
          };
          M("include"), M("exclude"), M("files"), P.compileOnSave !== void 0 && (T.compileOnSave = P.compileOnSave), rS(T.options, D.options), T.watchOptions = T.watchOptions && D.watchOptions ? S(T, D.watchOptions) : T.watchOptions || D.watchOptions;
        }
      }
      function S(T, k) {
        return T.watchOptionsCopied ? rS(T.watchOptions, k) : (T.watchOptionsCopied = !0, rS({}, T.watchOptions, k));
      }
    }
    function kMe(e, t, n, i, a) {
      po(e, "excludes") && a.push(nc(p.Unknown_option_excludes_Did_you_mean_exclude));
      const o = Qye(e.compilerOptions, n, a, i), c = Yye(e.typeAcquisition, n, a, i), _ = wMe(e.watchOptions, n, a);
      return e.compileOnSave = DMe(e, n, a), {
        raw: e,
        options: o,
        watchOptions: _,
        typeAcquisition: c,
        extendedConfigPath: e.extends || e.extends === "" ? qye(e.extends, t, n, i, a) : void 0
      };
    }
    function qye(e, t, n, i, a, o, c, _) {
      let u;
      const d = i ? Mye(i, n) : n;
      if (Ta(e)) u = Gye(e, t, d, a, c, _);
      else if (da(e)) {
        u = [];
        for (let g = 0; g < e.length; g++) {
          const h = e[g];
          Ta(h) ? u = kr(u, Gye(h, t, d, a, c?.elements[g], _)) : VS(kF.element, e, n, a, o, c?.elements[g], _);
        }
      } else VS(kF, e, n, a, o, c, _);
      return u;
    }
    function CMe(e, t, n, i, a) {
      const o = Xye(i);
      let c, _, u, d;
      const g = mMe(), h = Nye(e, a, {
        rootOptions: g,
        onPropertySet: S
      });
      return c || (c = CW(i)), d && h && h.compilerOptions === void 0 && a.push(Sp(e, d[0], p._0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file, Ix(d[0]))), {
        raw: h,
        options: o,
        watchOptions: _,
        typeAcquisition: c,
        extendedConfigPath: u
      };
      function S(T, k, D, P, N) {
        if (N && N !== kF && (k = VS(N, k, n, a, D, D.initializer, e)), P?.name)
          if (N) {
            let M;
            P === wye ? M = o : P === Pye ? M = _ ?? (_ = {}) : P === Aye ? M = c ?? (c = CW(i)) : E.fail("Unknown option"), M[N.name] = k;
          } else T && P?.extraKeyDiagnostics && (P.elementOptions ? a.push(Ure(T, P.extraKeyDiagnostics, void 0, D.name, e)) : a.push(Sp(e, D.name, P.extraKeyDiagnostics.unknownOptionDiagnostic, T)));
        else P === g && (N === kF ? u = qye(k, t, n, i, a, D, D.initializer, e) : N || (T === "excludes" && a.push(Sp(e, D.name, p.Unknown_option_excludes_Did_you_mean_exclude)), xr(_ye, (M) => M.name === T) && (d = kr(d, D.name))));
      }
    }
    function Gye(e, t, n, i, a, o) {
      if (e = ru(e), pf(e) || ta(e, "./") || ta(e, "../")) {
        let _ = ca(e, n);
        if (!t.fileExists(_) && !Uo(_, ".json") && (_ = `${_}.json`, !t.fileExists(_))) {
          i.push(Fv(o, a, p.File_0_not_found, e));
          return;
        }
        return _;
      }
      const c = mne(e, jn(n, "tsconfig.json"), t);
      if (c.resolvedModule) return c.resolvedModule.resolvedFileName;
      e === "" ? i.push(Fv(o, a, p.Compiler_option_0_cannot_be_given_an_empty_string, "extends")) : i.push(Fv(o, a, p.File_0_not_found, e));
    }
    function EMe(e, t, n, i, a, o, c) {
      const _ = n.useCaseSensitiveFileNames ? t : Ny(t);
      let u, d, g;
      if (o && (u = o.get(_)) ? { extendedResult: d, extendedConfig: g } = u : (d = Hre(t, (h) => n.readFile(h)), d.parseDiagnostics.length || (g = Vye(void 0, d, n, Xn(t), nl(t), i, a, o)), o && o.set(_, {
        extendedResult: d,
        extendedConfig: g
      })), e && ((c.extendedSourceFiles ?? (c.extendedSourceFiles = /* @__PURE__ */ new Set())).add(d.fileName), d.extendedSourceFiles))
        for (const h of d.extendedSourceFiles) c.extendedSourceFiles.add(h);
      if (d.parseDiagnostics.length) {
        a.push(...d.parseDiagnostics);
        return;
      }
      return g;
    }
    function DMe(e, t, n) {
      if (!po(e, Ore.name)) return !1;
      const i = VS(Ore, e.compileOnSave, t, n);
      return typeof i == "boolean" && i;
    }
    function Hye(e, t, n) {
      const i = [];
      return {
        options: Qye(e, t, i, n),
        errors: i
      };
    }
    function $ye(e, t, n) {
      const i = [];
      return {
        options: Yye(e, t, i, n),
        errors: i
      };
    }
    function Xye(e) {
      return e && nl(e) === "jsconfig.json" ? {
        allowJs: !0,
        maxNodeModuleJsDepth: 2,
        allowSyntheticDefaultImports: !0,
        skipLibCheck: !0,
        noEmit: !0
      } : {};
    }
    function Qye(e, t, n, i) {
      const a = Xye(i);
      return Yre(xye(), e, t, a, xF, n), i && (a.configFilePath = ru(i)), a;
    }
    function CW(e) {
      return {
        enable: !!e && nl(e) === "jsconfig.json",
        include: [],
        exclude: []
      };
    }
    function Yye(e, t, n, i) {
      const a = CW(i);
      return Yre(Dye(), e, t, a, vye, n), a;
    }
    function wMe(e, t, n) {
      return Yre(Cye(), e, t, void 0, yW, n);
    }
    function Yre(e, t, n, i, a, o) {
      if (t) {
        for (const c in t) {
          const _ = e.get(c);
          _ ? (i || (i = {}))[_.name] = VS(_, t[c], n, o) : o.push(Ure(c, a));
        }
        return i;
      }
    }
    function Fv(e, t, n, ...i) {
      return e && t ? Sp(e, t, n, ...i) : nc(n, ...i);
    }
    function VS(e, t, n, i, a, o, c) {
      if (e.isCommandLineOnly) {
        i.push(Fv(c, a?.name, p.Option_0_can_only_be_specified_on_command_line, e.name));
        return;
      }
      if (Iye(e, t)) {
        const _ = e.type;
        if (_ === "list" && da(t)) return Kye(e, t, n, i, a, o, c);
        if (_ === "listOrElement") return da(t) ? Kye(e, t, n, i, a, o, c) : VS(e.element, t, n, i, a, o, c);
        if (!Ta(e.type)) return Zye(e, t, i, o, c);
        const u = Ck(e, t, i, o, c);
        return DN(u) ? u : PMe(e, n, u);
      } else i.push(Fv(c, o, p.Compiler_option_0_requires_a_value_of_type_1, e.name, vW(e)));
    }
    function PMe(e, t, n) {
      return e.isFilePath && (n = ru(n), n = xW(n) ? n : ca(n, t), n === "" && (n = ".")), n;
    }
    function Ck(e, t, n, i, a) {
      var o;
      if (DN(t)) return;
      const c = (o = e.extraValidation) == null ? void 0 : o.call(e, t);
      if (!c) return t;
      n.push(Fv(a, i, ...c));
    }
    function Zye(e, t, n, i, a) {
      if (DN(t)) return;
      const o = t.toLowerCase(), c = e.type.get(o);
      if (c !== void 0) return Ck(e, c, n, i, a);
      n.push(dye(e, (_, ...u) => Fv(a, i, _, ...u)));
    }
    function Kye(e, t, n, i, a, o, c) {
      return dn(or(t, (_, u) => VS(e.element, _, n, i, a, o?.elements[u], c)), (_) => e.listPreserveFalsyValues ? !0 : !!_);
    }
    var AMe = /(?:^|\/)\*\*\/?$/, NMe = /^[^*?]*(?=\/[^/]*[*?])/;
    function pw(e, t, n, i, a = Te) {
      t = us(t);
      const o = pu(i.useCaseSensitiveFileNames), c = /* @__PURE__ */ new Map(), _ = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Map(), { validatedFilesSpec: d, validatedIncludeSpecs: g, validatedExcludeSpecs: h } = e, S = LD(n, a), T = WA(n, S);
      if (d) for (const N of d) {
        const M = ca(N, t);
        c.set(o(M), M);
      }
      let k;
      if (g && g.length > 0) for (const N of i.readDirectory(t, Rf(T), h, g, void 0)) {
        if (lc(N, ".json")) {
          if (!k) {
            const R = or(vO(g.filter((G) => Uo(G, ".json")), t, "files"), (G) => `^${G}$`);
            k = R ? R.map((G) => O0(G, i.useCaseSensitiveFileNames)) : Te;
          }
          if (qs(k, (R) => R.test(N)) !== -1) {
            const R = o(N);
            !c.has(R) && !u.has(R) && u.set(R, N);
          }
          continue;
        }
        if (FMe(N, c, _, S, o)) continue;
        LMe(N, _, S, o);
        const M = o(N);
        !c.has(M) && !_.has(M) && _.set(M, N);
      }
      const D = ma(c.values()), P = ma(_.values());
      return D.concat(P, ma(u.values()));
    }
    function Zre(e, t, n, i, a) {
      const { validatedFilesSpec: o, validatedIncludeSpecs: c, validatedExcludeSpecs: _ } = t;
      if (!It(c) || !It(_)) return !1;
      n = us(n);
      const u = pu(i);
      if (o) {
        for (const d of o) if (u(ca(d, n)) === e) return !1;
      }
      return IF(e, _, i, a, n);
    }
    function e1e(e) {
      const t = ta(e, "**/") ? 0 : e.indexOf("/**/");
      return t === -1 ? !1 : (Uo(e, "/..") ? e.length : e.lastIndexOf("/../")) > t;
    }
    function NF(e, t, n, i) {
      return IF(e, dn(t, (a) => !e1e(a)), n, i);
    }
    function IF(e, t, n, i, a) {
      const o = FD(t, jn(us(i), a), "exclude"), c = o && O0(o, n);
      return c ? c.test(e) ? !0 : !UC(e) && c.test(El(e)) : !1;
    }
    function t1e(e, t, n, i, a) {
      return e.filter((c) => {
        if (!Ta(c)) return !1;
        const _ = Kre(c, n);
        return _ !== void 0 && t.push(o(..._)), _ === void 0;
      });
      function o(c, _) {
        return Fv(i, k5(i, a, _), c, _);
      }
    }
    function Kre(e, t) {
      if (E.assert(typeof e == "string"), t && AMe.test(e)) return [p.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0, e];
      if (e1e(e)) return [p.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0, e];
    }
    function IMe({ validatedIncludeSpecs: e, validatedExcludeSpecs: t }, n, i) {
      const a = FD(t, n, "exclude"), o = a && new RegExp(a, i ? "" : "i"), c = {}, _ = /* @__PURE__ */ new Map();
      if (e !== void 0) {
        const u = [];
        for (const d of e) {
          const g = us(jn(n, d));
          if (o && o.test(g)) continue;
          const h = OMe(g, i);
          if (h) {
            const { key: S, path: T, flags: k } = h, D = _.get(S), P = D !== void 0 ? c[D] : void 0;
            (P === void 0 || P < k) && (c[D !== void 0 ? D : T] = k, D === void 0 && _.set(S, T), k === 1 && u.push(S));
          }
        }
        for (const d in c) if (po(c, d)) for (const g of u) {
          const h = ene(d, i);
          h !== g && vp(g, h, n, !i) && delete c[d];
        }
      }
      return c;
    }
    function ene(e, t) {
      return t ? e : Ny(e);
    }
    function OMe(e, t) {
      const n = NMe.exec(e);
      if (n) {
        const i = e.indexOf("?"), a = e.indexOf("*"), o = e.lastIndexOf(Co);
        return {
          key: ene(n[0], t),
          path: n[0],
          flags: i !== -1 && i < o || a !== -1 && a < o ? 1 : 0
        };
      }
      if (GJ(e.substring(e.lastIndexOf(Co) + 1))) {
        const i = T0(e);
        return {
          key: ene(i, t),
          path: i,
          flags: 1
        };
      }
    }
    function FMe(e, t, n, i, a) {
      const o = bt(i, (c) => jc(e, c) ? c : void 0);
      if (!o) return !1;
      for (const c of o) {
        if (lc(e, c) && (c !== ".ts" || !lc(e, ".d.ts"))) return !1;
        const _ = a(F0(e, c));
        if (t.has(_) || n.has(_)) {
          if (c === ".d.ts" && (lc(e, ".js") || lc(e, ".jsx"))) continue;
          return !0;
        }
      }
      return !1;
    }
    function LMe(e, t, n, i) {
      const a = bt(n, (o) => jc(e, o) ? o : void 0);
      if (a)
        for (let o = a.length - 1; o >= 0; o--) {
          const c = a[o];
          if (lc(e, c)) return;
          const _ = i(F0(e, c));
          t.delete(_);
        }
    }
    function tne(e) {
      const t = {};
      for (const n in e) if (po(e, n)) {
        const i = mW(n);
        i !== void 0 && (t[n] = rne(e[n], i));
      }
      return t;
    }
    function rne(e, t) {
      if (e === void 0) return e;
      switch (t.type) {
        case "object":
          return "";
        case "string":
          return "";
        case "number":
          return typeof e == "number" ? e : "";
        case "boolean":
          return typeof e == "boolean" ? e : "";
        case "listOrElement":
          if (!da(e)) return rne(e, t.element);
        case "list":
          const n = t.element;
          return da(e) ? Rn(e, (i) => rne(i, n)) : "";
        default:
          return Dl(t.type, (i, a) => {
            if (i === e) return a;
          });
      }
    }
    function _a(e, t, ...n) {
      e.trace(Qx(t, ...n));
    }
    function _1(e, t) {
      return !!e.traceResolution && t.trace !== void 0;
    }
    function Ek(e, t, n) {
      let i;
      if (t && e) {
        const a = e.contents.packageJsonContent;
        typeof a.name == "string" && typeof a.version == "string" && (i = {
          name: a.name,
          subModuleName: t.path.slice(e.packageDirectory.length + Co.length),
          version: a.version,
          peerDependencies: rRe(e, n)
        });
      }
      return t && {
        path: t.path,
        extension: t.ext,
        packageId: i,
        resolvedUsingTsExtension: t.resolvedUsingTsExtension
      };
    }
    function EW(e) {
      return Ek(void 0, e, void 0);
    }
    function r1e(e) {
      if (e)
        return E.assert(e.packageId === void 0), {
          path: e.path,
          ext: e.extension,
          resolvedUsingTsExtension: e.resolvedUsingTsExtension
        };
    }
    function OF(e) {
      const t = [];
      return e & 1 && t.push("TypeScript"), e & 2 && t.push("JavaScript"), e & 4 && t.push("Declaration"), e & 8 && t.push("JSON"), t.join(", ");
    }
    function MMe(e) {
      const t = [];
      return e & 1 && t.push(...zA), e & 2 && t.push(...T6), e & 4 && t.push(...CO), e & 8 && t.push(".json"), t;
    }
    function nne(e) {
      if (e)
        return E.assert(DO(e.extension)), {
          fileName: e.path,
          packageId: e.packageId
        };
    }
    function n1e(e, t, n, i, a, o, c, _, u) {
      if (!c.resultFromCache && !c.compilerOptions.preserveSymlinks && t && n && !t.originalPath && !jl(e)) {
        const { resolvedFileName: d, originalPath: g } = s1e(t.path, c.host, c.traceEnabled);
        g && (t = {
          ...t,
          path: d,
          originalPath: g
        });
      }
      return i1e(t, n, i, a, o, c.resultFromCache, _, u);
    }
    function i1e(e, t, n, i, a, o, c, _) {
      return o ? c?.isReadonly ? {
        ...o,
        failedLookupLocations: ine(o.failedLookupLocations, n),
        affectingLocations: ine(o.affectingLocations, i),
        resolutionDiagnostics: ine(o.resolutionDiagnostics, a)
      } : (o.failedLookupLocations = G6(o.failedLookupLocations, n), o.affectingLocations = G6(o.affectingLocations, i), o.resolutionDiagnostics = G6(o.resolutionDiagnostics, a), o) : {
        resolvedModule: e && {
          resolvedFileName: e.path,
          originalPath: e.originalPath === !0 ? void 0 : e.originalPath,
          extension: e.extension,
          isExternalLibraryImport: t,
          packageId: e.packageId,
          resolvedUsingTsExtension: !!e.resolvedUsingTsExtension
        },
        failedLookupLocations: dw(n),
        affectingLocations: dw(i),
        resolutionDiagnostics: dw(a),
        alternateResult: _
      };
    }
    function dw(e) {
      return e.length ? e : void 0;
    }
    function G6(e, t) {
      return t?.length ? e?.length ? (e.push(...t), e) : t : e;
    }
    function ine(e, t) {
      return e?.length ? t.length ? [...e, ...t] : e.slice() : dw(t);
    }
    function ane(e, t, n, i) {
      if (!po(e, t)) {
        i.traceEnabled && _a(i.host, p.package_json_does_not_have_a_0_field, t);
        return;
      }
      const a = e[t];
      if (typeof a !== n || a === null) {
        i.traceEnabled && _a(i.host, p.Expected_type_of_0_field_in_package_json_to_be_1_got_2, t, n, a === null ? "null" : typeof a);
        return;
      }
      return a;
    }
    function DW(e, t, n, i) {
      const a = ane(e, t, "string", i);
      if (a === void 0) return;
      if (!a) {
        i.traceEnabled && _a(i.host, p.package_json_had_a_falsy_0_field, t);
        return;
      }
      const o = us(jn(n, a));
      return i.traceEnabled && _a(i.host, p.package_json_has_0_field_1_that_references_2, t, a, o), o;
    }
    function RMe(e, t, n) {
      return DW(e, "typings", t, n) || DW(e, "types", t, n);
    }
    function jMe(e, t, n) {
      return DW(e, "tsconfig", t, n);
    }
    function BMe(e, t, n) {
      return DW(e, "main", t, n);
    }
    function JMe(e, t) {
      const n = ane(e, "typesVersions", "object", t);
      if (n !== void 0)
        return t.traceEnabled && _a(t.host, p.package_json_has_a_typesVersions_field_with_version_specific_path_mappings), n;
    }
    function zMe(e, t) {
      const n = JMe(e, t);
      if (n === void 0) return;
      if (t.traceEnabled)
        for (const c in n) po(n, c) && !E7.tryParse(c) && _a(t.host, p.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range, c);
      const i = FF(n);
      if (!i) {
        t.traceEnabled && _a(t.host, p.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0, Un);
        return;
      }
      const { version: a, paths: o } = i;
      if (typeof o != "object") {
        t.traceEnabled && _a(t.host, p.Expected_type_of_0_field_in_package_json_to_be_1_got_2, `typesVersions['${a}']`, "object", typeof o);
        return;
      }
      return i;
    }
    var sne;
    function FF(e) {
      sne || (sne = new Ld(Qr));
      for (const t in e) {
        if (!po(e, t)) continue;
        const n = E7.tryParse(t);
        if (n !== void 0 && n.test(sne))
          return {
            version: t,
            paths: e[t]
          };
      }
    }
    function mw(e, t) {
      if (e.typeRoots) return e.typeRoots;
      let n;
      if (e.configFilePath ? n = Xn(e.configFilePath) : t.getCurrentDirectory && (n = t.getCurrentDirectory()), n !== void 0) return WMe(n);
    }
    function WMe(e) {
      let t;
      return L4(us(e), (n) => {
        const i = jn(n, UMe);
        (t ?? (t = [])).push(i);
      }), t;
    }
    var UMe = jn("node_modules", "@types");
    function a1e(e, t, n) {
      return Rh(e, t, !(typeof n.useCaseSensitiveFileNames == "function" ? n.useCaseSensitiveFileNames() : n.useCaseSensitiveFileNames)) === 0;
    }
    function s1e(e, t, n) {
      const i = m1e(e, t, n), a = a1e(e, i, t);
      return {
        resolvedFileName: a ? e : i,
        originalPath: a ? void 0 : e
      };
    }
    function o1e(e, t, n) {
      return jn(e, Uo(e, "/node_modules/@types") || Uo(e, "/node_modules/@types/") ? w1e(t, n) : t);
    }
    function one(e, t, n, i, a, o, c) {
      E.assert(typeof e == "string", "Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");
      const _ = _1(n, i);
      a && (n = a.commandLine.options);
      const u = t ? Xn(t) : void 0;
      let d = u ? o?.getFromDirectoryCache(e, c, u, a) : void 0;
      if (!d && u && !jl(e) && (d = o?.getFromNonRelativeNameCache(e, c, u, a)), d)
        return _ && (_a(i, p.Resolving_type_reference_directive_0_containing_file_1, e, t), a && _a(i, p.Using_compiler_options_of_project_reference_redirect_0, a.sourceFile.fileName), _a(i, p.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1, e, u), L(d)), d;
      const g = mw(n, i);
      _ && (t === void 0 ? g === void 0 ? _a(i, p.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set, e) : _a(i, p.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1, e, g) : g === void 0 ? _a(i, p.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set, e, t) : _a(i, p.Resolving_type_reference_directive_0_containing_file_1_root_directory_2, e, t, g), a && _a(i, p.Using_compiler_options_of_project_reference_redirect_0, a.sourceFile.fileName));
      const h = [], S = [];
      let T = cne(n);
      c !== void 0 && (T |= 94);
      const k = Hu(n);
      c === 99 && 3 <= k && k <= 99 && (T |= 32);
      const D = T & 8 ? f1(n, c) : [], P = [], N = {
        compilerOptions: n,
        host: i,
        traceEnabled: _,
        failedLookupLocations: h,
        affectingLocations: S,
        packageJsonInfoCache: o,
        features: T,
        conditions: D,
        requestContainingDirectory: u,
        reportDiagnostic: (U) => {
          P.push(U);
        },
        isConfigLookup: !1,
        candidateIsFromPackageJsonField: !1,
        resolvedPackageDirectory: !1
      };
      let M = z(), R = !0;
      M || (M = H(), R = !1);
      let G;
      if (M) {
        const { fileName: U, packageId: pe } = M;
        let ie = U, W;
        n.preserveSymlinks || ({ resolvedFileName: ie, originalPath: W } = s1e(U, i, _)), G = {
          primary: R,
          resolvedFileName: ie,
          originalPath: W,
          packageId: pe,
          isExternalLibraryImport: p1(U)
        };
      }
      return d = {
        resolvedTypeReferenceDirective: G,
        failedLookupLocations: dw(h),
        affectingLocations: dw(S),
        resolutionDiagnostics: dw(P)
      }, u && o && !o.isReadonly && (o.getOrCreateCacheForDirectory(u, a).set(e, c, d), jl(e) || o.getOrCreateCacheForNonRelativeName(e, c, a).set(u, d)), _ && L(d), d;
      function L(U) {
        var pe;
        (pe = U.resolvedTypeReferenceDirective) != null && pe.resolvedFileName ? U.resolvedTypeReferenceDirective.packageId ? _a(i, p.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3, e, U.resolvedTypeReferenceDirective.resolvedFileName, sv(U.resolvedTypeReferenceDirective.packageId), U.resolvedTypeReferenceDirective.primary) : _a(i, p.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2, e, U.resolvedTypeReferenceDirective.resolvedFileName, U.resolvedTypeReferenceDirective.primary) : _a(i, p.Type_reference_directive_0_was_not_resolved, e);
      }
      function z() {
        if (g && g.length)
          return _ && _a(i, p.Resolving_with_primary_search_path_0, g.join(", ")), Hn(g, (U) => {
            const pe = o1e(U, e, N), ie = zd(U, i);
            if (!ie && _ && _a(i, p.Directory_0_does_not_exist_skipping_all_lookups_in_it, U), n.typeRoots) {
              const W = X6(4, pe, !ie, N);
              if (W) {
                const Q = AN(W.path);
                return nne(Ek(Q ? GS(Q, !1, N) : void 0, W, N));
              }
            }
            return nne(hne(4, pe, !ie, N));
          });
        _ && _a(i, p.Root_directory_cannot_be_determined_skipping_primary_search_paths);
      }
      function H() {
        const U = t && Xn(t);
        if (U !== void 0) {
          let pe;
          if (!n.typeRoots || !Uo(t, Iw))
            if (_ && _a(i, p.Looking_up_in_node_modules_folder_initial_location_0, U), jl(e)) {
              const { path: ie } = d1e(U, e);
              pe = NW(4, ie, !1, N, !0);
            } else {
              const ie = k1e(4, e, U, N, void 0, void 0);
              pe = ie && ie.value;
            }
          else _ && _a(i, p.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);
          return nne(pe);
        } else _ && _a(i, p.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder);
      }
    }
    function cne(e) {
      let t = 0;
      switch (Hu(e)) {
        case 3:
          t = 30;
          break;
        case 99:
          t = 94;
          break;
        case 100:
          t = 94;
          break;
      }
      return e.resolvePackageJsonExports ? t |= 8 : e.resolvePackageJsonExports === !1 && (t &= -9), e.resolvePackageJsonImports ? t |= 2 : e.resolvePackageJsonImports === !1 && (t &= -3), t;
    }
    function f1(e, t) {
      const n = Hu(e);
      if (t === void 0) {
        if (n === 100) t = 99;
        else if (n === 2) return [];
      }
      const i = t === 99 ? ["import"] : ["require"];
      return e.noDtsResolution || i.push("types"), n !== 100 && i.push("node"), zi(i, e.customConditions);
    }
    function wW(e, t, n, i, a) {
      const o = hw(a?.getPackageJsonInfoCache(), i, n);
      return hg(i, t, (c) => {
        if (nl(c) !== "node_modules") return GS(jn(jn(c, "node_modules"), e), !1, o);
      });
    }
    function LF(e, t) {
      if (!yv(e)) return e.types ?? [];
      const n = [];
      if (t.directoryExists && t.getDirectories) {
        const i = mw(e, t);
        if (i) {
          for (const a of i) if (t.directoryExists(a)) for (const o of t.getDirectories(a)) {
            const c = us(o), _ = jn(a, c, "package.json");
            if (!(t.fileExists(_) && y6(_, t).typings === null)) {
              const u = nl(c);
              u.charCodeAt(0) !== 46 && n.push(u);
            }
          }
        }
      }
      return Z1(Rf(e.types.map((i) => i === "*" ? n : i)), S0);
    }
    function MF(e) {
      return !!e?.contents;
    }
    function lne(e) {
      return !!e && !e.contents;
    }
    function une(e) {
      var t;
      if (e === null || typeof e != "object") return "" + e;
      if (da(e)) return `[${(t = e.map((i) => une(i))) == null ? void 0 : t.join(",")}]`;
      let n = "{";
      for (const i in e) po(e, i) && (n += `${i}: ${une(e[i])}`);
      return n + "}";
    }
    function PW(e, t) {
      return t.map((n) => une(gO(e, n))).join("|") + `|${e.pathsBasePath}`;
    }
    function c1e(e, t) {
      const n = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
      let a = /* @__PURE__ */ new Map();
      return e && n.set(e, a), {
        getMapOfCacheRedirects: o,
        getOrCreateMapOfCacheRedirects: c,
        update: _,
        clear: d,
        getOwnMap: () => a
      };
      function o(h) {
        return h ? u(h.commandLine.options, !1) : a;
      }
      function c(h) {
        return h ? u(h.commandLine.options, !0) : a;
      }
      function _(h) {
        e !== h && (e ? a = u(h, !0) : n.set(h, a), e = h);
      }
      function u(h, S) {
        let T = n.get(h);
        if (T) return T;
        const k = g(h);
        if (T = i.get(k), !T) {
          if (e) {
            const D = g(e);
            D === k ? T = a : i.has(D) || i.set(D, a);
          }
          S && (T ?? (T = /* @__PURE__ */ new Map())), T && i.set(k, T);
        }
        return T && n.set(h, T), T;
      }
      function d() {
        const h = e && t.get(e);
        a.clear(), n.clear(), t.clear(), i.clear(), e && (h && t.set(e, h), n.set(e, a));
      }
      function g(h) {
        let S = t.get(h);
        return S || t.set(h, S = PW(h, _W)), S;
      }
    }
    function VMe(e, t) {
      let n;
      return {
        getPackageJsonInfo: i,
        setPackageJsonInfo: a,
        clear: o,
        getInternalMap: c
      };
      function i(_) {
        return n?.get(Eo(_, e, t));
      }
      function a(_, u) {
        (n || (n = /* @__PURE__ */ new Map())).set(Eo(_, e, t), u);
      }
      function o() {
        n = void 0;
      }
      function c() {
        return n;
      }
    }
    function l1e(e, t, n, i) {
      const a = e.getOrCreateMapOfCacheRedirects(t);
      let o = a.get(n);
      return o || (o = i(), a.set(n, o)), o;
    }
    function qMe(e, t, n, i) {
      const a = c1e(n, i);
      return {
        getFromDirectoryCache: u,
        getOrCreateCacheForDirectory: _,
        clear: o,
        update: c,
        directoryToModuleNameMap: a
      };
      function o() {
        a.clear();
      }
      function c(d) {
        a.update(d);
      }
      function _(d, g) {
        return l1e(a, g, Eo(d, e, t), () => H6());
      }
      function u(d, g, h, S) {
        var T, k;
        const D = Eo(h, e, t);
        return (k = (T = a.getMapOfCacheRedirects(S)) == null ? void 0 : T.get(D)) == null ? void 0 : k.get(d, g);
      }
    }
    function gw(e, t) {
      return t === void 0 ? e : `${t}|${e}`;
    }
    function H6() {
      const e = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map(), n = {
        get(a, o) {
          return e.get(i(a, o));
        },
        set(a, o, c) {
          return e.set(i(a, o), c), n;
        },
        delete(a, o) {
          return e.delete(i(a, o)), n;
        },
        has(a, o) {
          return e.has(i(a, o));
        },
        forEach(a) {
          return e.forEach((o, c) => {
            const [_, u] = t.get(c);
            return a(o, _, u);
          });
        },
        size() {
          return e.size;
        }
      };
      return n;
      function i(a, o) {
        const c = gw(a, o);
        return t.set(c, [a, o]), c;
      }
    }
    function GMe(e) {
      return e.resolvedModule && (e.resolvedModule.originalPath || e.resolvedModule.resolvedFileName);
    }
    function HMe(e) {
      return e.resolvedTypeReferenceDirective && (e.resolvedTypeReferenceDirective.originalPath || e.resolvedTypeReferenceDirective.resolvedFileName);
    }
    function $Me(e, t, n, i, a) {
      const o = c1e(n, a);
      return {
        getFromNonRelativeNameCache: u,
        getOrCreateCacheForNonRelativeName: d,
        clear: c,
        update: _
      };
      function c() {
        o.clear();
      }
      function _(h) {
        o.update(h);
      }
      function u(h, S, T, k) {
        var D, P;
        return E.assert(!jl(h)), (P = (D = o.getMapOfCacheRedirects(k)) == null ? void 0 : D.get(gw(h, S))) == null ? void 0 : P.get(T);
      }
      function d(h, S, T) {
        return E.assert(!jl(h)), l1e(o, T, gw(h, S), g);
      }
      function g() {
        const h = /* @__PURE__ */ new Map();
        return {
          get: S,
          set: T
        };
        function S(D) {
          return h.get(Eo(D, e, t));
        }
        function T(D, P) {
          const N = Eo(D, e, t);
          if (h.has(N)) return;
          h.set(N, P);
          const M = i(P), R = M && k(N, M);
          let G = N;
          for (; G !== R; ) {
            const L = Xn(G);
            if (L === G || h.has(L)) break;
            h.set(L, P), G = L;
          }
        }
        function k(D, P) {
          const N = Eo(Xn(P), e, t);
          let M = 0;
          const R = Math.min(D.length, N.length);
          for (; M < R && D.charCodeAt(M) === N.charCodeAt(M); ) M++;
          if (M === D.length && (N.length === M || N[M] === Co)) return D;
          const G = Md(D);
          if (M < G) return;
          const L = D.lastIndexOf(Co, M - 1);
          if (L !== -1)
            return D.substr(0, Math.max(L, G));
        }
      }
    }
    function u1e(e, t, n, i, a, o) {
      o ?? (o = /* @__PURE__ */ new Map());
      const c = qMe(e, t, n, o), _ = $Me(e, t, n, a, o);
      return i ?? (i = VMe(e, t)), {
        ...i,
        ...c,
        ..._,
        clear: u,
        update: g,
        getPackageJsonInfoCache: () => i,
        clearAllExceptPackageJsonInfoCache: d,
        optionsToRedirectsKey: o
      };
      function u() {
        d(), i.clear();
      }
      function d() {
        c.clear(), _.clear();
      }
      function g(h) {
        c.update(h), _.update(h);
      }
    }
    function $6(e, t, n, i, a) {
      const o = u1e(e, t, n, i, GMe, a);
      return o.getOrCreateCacheForModuleName = (c, _, u) => o.getOrCreateCacheForNonRelativeName(c, _, u), o;
    }
    function RF(e, t, n, i, a) {
      return u1e(e, t, n, i, HMe, a);
    }
    function AW(e) {
      return {
        moduleResolution: 2,
        traceResolution: e.traceResolution
      };
    }
    function jF(e, t, n, i, a) {
      return qS(e, t, AW(n), i, a);
    }
    function _1e(e, t, n, i) {
      const a = Xn(t);
      return n.getFromDirectoryCache(e, i, a, void 0);
    }
    function qS(e, t, n, i, a, o, c) {
      const _ = _1(n, i);
      o && (n = o.commandLine.options), _ && (_a(i, p.Resolving_module_0_from_1, e, t), o && _a(i, p.Using_compiler_options_of_project_reference_redirect_0, o.sourceFile.fileName));
      const u = Xn(t);
      let d = a?.getFromDirectoryCache(e, c, u, o);
      if (d)
        _ && _a(i, p.Resolution_for_module_0_was_found_in_cache_from_location_1, e, u);
      else {
        let g = n.moduleResolution;
        switch (g === void 0 ? (g = Hu(n), _ && _a(i, p.Module_resolution_kind_is_not_specified_using_0, WC[g])) : _ && _a(i, p.Explicitly_specified_module_resolution_kind_Colon_0, WC[g]), g) {
          case 3:
            d = ZMe(e, t, n, i, a, o, c);
            break;
          case 99:
            d = KMe(e, t, n, i, a, o, c);
            break;
          case 2:
            d = dne(e, t, n, i, a, o, c ? f1(n, c) : void 0);
            break;
          case 1:
            d = bne(e, t, n, i, a, o);
            break;
          case 100:
            d = pne(e, t, n, i, a, o, c ? f1(n, c) : void 0);
            break;
          default:
            return E.fail(`Unexpected moduleResolution: ${g}`);
        }
        a && !a.isReadonly && (a.getOrCreateCacheForDirectory(u, o).set(e, c, d), jl(e) || a.getOrCreateCacheForNonRelativeName(e, c, o).set(u, d));
      }
      return _ && (d.resolvedModule ? d.resolvedModule.packageId ? _a(i, p.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2, e, d.resolvedModule.resolvedFileName, sv(d.resolvedModule.packageId)) : _a(i, p.Module_name_0_was_successfully_resolved_to_1, e, d.resolvedModule.resolvedFileName) : _a(i, p.Module_name_0_was_not_resolved, e)), d;
    }
    function f1e(e, t, n, i, a) {
      const o = XMe(e, t, i, a);
      return o ? o.value : jl(t) ? QMe(e, t, n, i, a) : YMe(e, t, i, a);
    }
    function XMe(e, t, n, i) {
      const { baseUrl: a, paths: o } = i.compilerOptions;
      if (o && !Bf(t))
        return i.traceEnabled && (a && _a(i.host, p.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1, a, t), _a(i.host, p.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0, t)), yne(e, t, X5(i.compilerOptions, i.host), o, qA(o), n, !1, i);
    }
    function QMe(e, t, n, i, a) {
      if (!a.compilerOptions.rootDirs) return;
      a.traceEnabled && _a(a.host, p.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0, t);
      const o = us(jn(n, t));
      let c, _;
      for (const u of a.compilerOptions.rootDirs) {
        let d = us(u);
        Uo(d, Co) || (d += Co);
        const g = ta(o, d) && (_ === void 0 || _.length < d.length);
        a.traceEnabled && _a(a.host, p.Checking_if_0_is_the_longest_matching_prefix_for_1_2, d, o, g), g && (_ = d, c = u);
      }
      if (_) {
        a.traceEnabled && _a(a.host, p.Longest_matching_prefix_for_0_is_1, o, _);
        const u = o.substr(_.length);
        a.traceEnabled && _a(a.host, p.Loading_0_from_the_root_dir_1_candidate_location_2, u, _, o);
        const d = i(e, o, !zd(n, a.host), a);
        if (d) return d;
        a.traceEnabled && _a(a.host, p.Trying_other_entries_in_rootDirs);
        for (const g of a.compilerOptions.rootDirs) {
          if (g === c) continue;
          const h = jn(us(g), u);
          a.traceEnabled && _a(a.host, p.Loading_0_from_the_root_dir_1_candidate_location_2, u, g, h);
          const S = i(e, h, !zd(Xn(h), a.host), a);
          if (S) return S;
        }
        a.traceEnabled && _a(a.host, p.Module_resolution_using_rootDirs_has_failed);
      }
    }
    function YMe(e, t, n, i) {
      const { baseUrl: a } = i.compilerOptions;
      if (!a) return;
      i.traceEnabled && _a(i.host, p.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1, a, t);
      const o = us(jn(a, t));
      return i.traceEnabled && _a(i.host, p.Resolving_module_name_0_relative_to_base_url_1_2, t, a, o), n(e, o, !zd(Xn(o), i.host), i);
    }
    function _ne(e, t, n) {
      const { resolvedModule: i, failedLookupLocations: a } = eRe(e, t, n);
      if (!i) throw new Error(`Could not resolve JS module '${e}' starting at '${t}'. Looked in: ${a?.join(", ")}`);
      return i.resolvedFileName;
    }
    var fne = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Imports = 2] = "Imports", e[e.SelfName = 4] = "SelfName", e[e.Exports = 8] = "Exports", e[e.ExportsPatternTrailers = 16] = "ExportsPatternTrailers", e[e.ImportsPatternRoot = 64] = "ImportsPatternRoot", e[e.AllFeatures = 94] = "AllFeatures", e[e.Node16Default = 30] = "Node16Default", e[e.NodeNextDefault = 94] = "NodeNextDefault", e[e.BundlerDefault = 94] = "BundlerDefault", e[e.EsmMode = 32] = "EsmMode", e))(fne || {});
    function ZMe(e, t, n, i, a, o, c) {
      return p1e(30, e, t, n, i, a, o, c);
    }
    function KMe(e, t, n, i, a, o, c) {
      return p1e(94, e, t, n, i, a, o, c);
    }
    function p1e(e, t, n, i, a, o, c, _, u) {
      const d = Xn(n), g = _ === 99 ? 32 : 0;
      let h = i.noDtsResolution ? 3 : 7;
      return zb(i) && (h |= 8), PN(e | g, t, d, i, a, o, h, !1, c, u);
    }
    function eRe(e, t, n) {
      return PN(0, e, t, {
        moduleResolution: 2,
        allowJs: !0
      }, n, void 0, 2, !1, void 0, void 0);
    }
    function pne(e, t, n, i, a, o, c) {
      const _ = Xn(t);
      let u = n.noDtsResolution ? 3 : 7;
      return zb(n) && (u |= 8), PN(cne(n), e, _, n, i, a, u, !1, o, c);
    }
    function dne(e, t, n, i, a, o, c, _) {
      let u;
      return _ ? u = 8 : n.noDtsResolution ? (u = 3, zb(n) && (u |= 8)) : u = zb(n) ? 15 : 7, PN(c ? 94 : 0, e, Xn(t), n, i, a, u, !!_, o, c);
    }
    function mne(e, t, n) {
      return PN(94, e, Xn(t), { moduleResolution: 99 }, n, void 0, 8, !0, void 0, void 0);
    }
    function PN(e, t, n, i, a, o, c, _, u, d) {
      var g, h, S, T, k;
      const D = _1(i, a), P = [], N = [], M = Hu(i);
      d ?? (d = f1(i, M === 100 || M === 2 ? void 0 : e & 32 ? 99 : 1));
      const R = [], G = {
        compilerOptions: i,
        host: a,
        traceEnabled: D,
        failedLookupLocations: P,
        affectingLocations: N,
        packageJsonInfoCache: o,
        features: e,
        conditions: d ?? Te,
        requestContainingDirectory: n,
        reportDiagnostic: (U) => {
          R.push(U);
        },
        isConfigLookup: _,
        candidateIsFromPackageJsonField: !1,
        resolvedPackageDirectory: !1
      };
      D && S6(M) && _a(a, p.Resolving_in_0_mode_with_conditions_1, e & 32 ? "ESM" : "CJS", G.conditions.map((U) => `'${U}'`).join(", "));
      let L;
      if (M === 2) {
        const U = c & 5, pe = c & -6;
        L = U && H(U, G) || pe && H(pe, G) || void 0;
      } else L = H(c, G);
      let z;
      if (G.resolvedPackageDirectory && !_ && !jl(t)) {
        const U = L?.value && c & 5 && !S1e(5, L.value.resolved.extension);
        if ((g = L?.value) != null && g.isExternalLibraryImport && U && e & 8 && d?.includes("import")) {
          d1(G, p.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);
          const pe = {
            ...G,
            features: G.features & -9,
            reportDiagnostic: so
          }, ie = H(c & 5, pe);
          (h = ie?.value) != null && h.isExternalLibraryImport && (z = ie.value.resolved.path);
        } else if ((!L?.value || U) && M === 2) {
          d1(G, p.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);
          const pe = {
            ...G.compilerOptions,
            moduleResolution: 100
          }, ie = {
            ...G,
            compilerOptions: pe,
            features: 94,
            conditions: f1(pe),
            reportDiagnostic: so
          }, W = H(c & 5, ie);
          (S = W?.value) != null && S.isExternalLibraryImport && (z = W.value.resolved.path);
        }
      }
      return n1e(t, (T = L?.value) == null ? void 0 : T.resolved, (k = L?.value) == null ? void 0 : k.isExternalLibraryImport, P, N, R, G, o, z);
      function H(U, pe) {
        const W = f1e(U, t, n, (Q, se, he, fe) => NW(Q, se, he, fe, !0), pe);
        if (W) return Ap({
          resolved: W,
          isExternalLibraryImport: p1(W.path)
        });
        if (jl(t)) {
          const { path: Q, parts: se } = d1e(n, t), he = NW(U, Q, !1, pe, !0);
          return he && Ap({
            resolved: he,
            isExternalLibraryImport: Gi(se, "node_modules")
          });
        } else {
          if (e & 2 && ta(t, "#")) {
            const se = sRe(U, t, n, pe, o, u);
            if (se) return se.value && { value: {
              resolved: se.value,
              isExternalLibraryImport: !1
            } };
          }
          if (e & 4) {
            const se = aRe(U, t, n, pe, o, u);
            if (se) return se.value && { value: {
              resolved: se.value,
              isExternalLibraryImport: !1
            } };
          }
          if (t.includes(":")) {
            D && _a(a, p.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1, t, OF(U));
            return;
          }
          D && _a(a, p.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1, t, OF(U));
          let Q = k1e(U, t, n, pe, o, u);
          return U & 4 && (Q ?? (Q = A1e(t, pe))), Q && { value: Q.value && {
            resolved: Q.value,
            isExternalLibraryImport: !0
          } };
        }
      }
    }
    function d1e(e, t) {
      const n = jn(e, t), i = wu(n), a = Wo(i);
      return {
        path: a === "." || a === ".." ? El(us(n)) : us(n),
        parts: i
      };
    }
    function m1e(e, t, n) {
      if (!t.realpath) return e;
      const i = us(t.realpath(e));
      return n && _a(t, p.Resolving_real_path_for_0_result_1, e, i), i;
    }
    function NW(e, t, n, i, a) {
      if (i.traceEnabled && _a(i.host, p.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1, t, OF(e)), !Oy(t)) {
        if (!n) {
          const c = Xn(t);
          zd(c, i.host) || (i.traceEnabled && _a(i.host, p.Directory_0_does_not_exist_skipping_all_lookups_in_it, c), n = !0);
        }
        const o = X6(e, t, n, i);
        if (o) {
          const c = a ? AN(o.path) : void 0;
          return Ek(c ? GS(c, !1, i) : void 0, o, i);
        }
      }
      if (n || zd(t, i.host) || (i.traceEnabled && _a(i.host, p.Directory_0_does_not_exist_skipping_all_lookups_in_it, t), n = !0), !(i.features & 32)) return hne(e, t, n, i, a);
    }
    var ah = "/node_modules/";
    function p1(e) {
      return e.includes(ah);
    }
    function AN(e, t) {
      const n = us(e), i = n.lastIndexOf(ah);
      if (i === -1) return;
      const a = i + ah.length;
      let o = g1e(n, a, t);
      return n.charCodeAt(a) === 64 && (o = g1e(n, o, t)), n.slice(0, o);
    }
    function g1e(e, t, n) {
      const i = e.indexOf(Co, t + 1);
      return i === -1 ? n ? e.length : t : i;
    }
    function gne(e, t, n, i) {
      return EW(X6(e, t, n, i));
    }
    function X6(e, t, n, i) {
      const a = h1e(e, t, n, i);
      if (a) return a;
      if (!(i.features & 32)) {
        const o = y1e(t, e, "", n, i);
        if (o) return o;
      }
    }
    function h1e(e, t, n, i) {
      if (!nl(t).includes(".")) return;
      let a = __(t);
      a === t && (a = t.substring(0, t.lastIndexOf(".")));
      const o = t.substring(a.length);
      return i.traceEnabled && _a(i.host, p.File_name_0_has_a_1_extension_stripping_it, t, o), y1e(a, e, o, n, i);
    }
    function IW(e, t, n, i, a) {
      if (e & 1 && jc(t, zA) || e & 4 && jc(t, CO)) {
        const o = OW(t, i, a), c = iO(t);
        return o !== void 0 ? {
          path: t,
          ext: c,
          resolvedUsingTsExtension: n ? !Uo(n, c) : void 0
        } : void 0;
      }
      return a.isConfigLookup && e === 8 && lc(t, ".json") ? OW(t, i, a) !== void 0 ? {
        path: t,
        ext: ".json",
        resolvedUsingTsExtension: void 0
      } : void 0 : h1e(e, t, i, a);
    }
    function y1e(e, t, n, i, a) {
      if (!i) {
        const c = Xn(e);
        c && (i = !zd(c, a.host));
      }
      switch (n) {
        case ".mjs":
        case ".mts":
        case ".d.mts":
          return t & 1 && o(".mts", n === ".mts" || n === ".d.mts") || t & 4 && o(".d.mts", n === ".mts" || n === ".d.mts") || t & 2 && o(".mjs") || void 0;
        case ".cjs":
        case ".cts":
        case ".d.cts":
          return t & 1 && o(".cts", n === ".cts" || n === ".d.cts") || t & 4 && o(".d.cts", n === ".cts" || n === ".d.cts") || t & 2 && o(".cjs") || void 0;
        case ".json":
          return t & 4 && o(".d.json.ts") || t & 8 && o(".json") || void 0;
        case ".tsx":
        case ".jsx":
          return t & 1 && (o(".tsx", n === ".tsx") || o(".ts", n === ".tsx")) || t & 4 && o(".d.ts", n === ".tsx") || t & 2 && (o(".jsx") || o(".js")) || void 0;
        case ".ts":
        case ".d.ts":
        case ".js":
        case "":
          return t & 1 && (o(".ts", n === ".ts" || n === ".d.ts") || o(".tsx", n === ".ts" || n === ".d.ts")) || t & 4 && o(".d.ts", n === ".ts" || n === ".d.ts") || t & 2 && (o(".js") || o(".jsx")) || a.isConfigLookup && o(".json") || void 0;
        default:
          return t & 4 && !$l(e + n) && o(`.d${n}.ts`) || void 0;
      }
      function o(c, _) {
        const u = OW(e + c, i, a);
        return u === void 0 ? void 0 : {
          path: u,
          ext: c,
          resolvedUsingTsExtension: !a.candidateIsFromPackageJsonField && _
        };
      }
    }
    function OW(e, t, n) {
      var i;
      if (!((i = n.compilerOptions.moduleSuffixes) != null && i.length)) return v1e(e, t, n);
      const a = Kg(e) ?? "", o = a ? VA(e, a) : e;
      return bt(n.compilerOptions.moduleSuffixes, (c) => v1e(o + c + a, t, n));
    }
    function v1e(e, t, n) {
      var i;
      if (!t) {
        if (n.host.fileExists(e))
          return n.traceEnabled && _a(n.host, p.File_0_exists_use_it_as_a_name_resolution_result, e), e;
        n.traceEnabled && _a(n.host, p.File_0_does_not_exist, e);
      }
      (i = n.failedLookupLocations) == null || i.push(e);
    }
    function hne(e, t, n, i, a = !0) {
      const o = a ? GS(t, n, i) : void 0;
      return Ek(o, LW(e, t, n, i, o), i);
    }
    function FW(e, t, n, i, a) {
      if (!a && e.contents.resolvedEntrypoints !== void 0) return e.contents.resolvedEntrypoints;
      let o;
      const c = 5 | (a ? 2 : 0), _ = cne(t), u = hw(i?.getPackageJsonInfoCache(), n, t);
      u.conditions = f1(t), u.requestContainingDirectory = e.packageDirectory;
      const d = LW(c, e.packageDirectory, !1, u, e);
      if (o = kr(o, d?.path), _ & 8 && e.contents.packageJsonContent.exports) {
        const g = Z1([f1(t, 99), f1(t, 1)], jf);
        for (const h of g) {
          const S = {
            ...u,
            failedLookupLocations: [],
            conditions: h,
            host: n
          }, T = tRe(e, e.contents.packageJsonContent.exports, S, c);
          if (T) for (const k of T) o = Lh(o, k.path);
        }
      }
      return e.contents.resolvedEntrypoints = o || !1;
    }
    function tRe(e, t, n, i) {
      let a;
      if (da(t)) for (const c of t) o(c);
      else if (typeof t == "object" && t !== null && JF(t)) for (const c in t) o(t[c]);
      else o(t);
      return a;
      function o(c) {
        var _, u;
        if (typeof c == "string" && ta(c, "./")) if (c.includes("*") && n.host.readDirectory) {
          if (c.indexOf("*") !== c.lastIndexOf("*")) return !1;
          n.host.readDirectory(e.packageDirectory, MMe(i), void 0, [L7(PS(c, "**/*"), ".*")]).forEach((d) => {
            a = Lh(a, {
              path: d,
              ext: hx(d),
              resolvedUsingTsExtension: void 0
            });
          });
        } else {
          const d = wu(c).slice(2);
          if (d.includes("..") || d.includes(".") || d.includes("node_modules")) return !1;
          const g = IW(i, ca(jn(e.packageDirectory, c), (u = (_ = n.host).getCurrentDirectory) == null ? void 0 : u.call(_)), c, !1, n);
          if (g)
            return a = Lh(a, g, (h, S) => h.path === S.path), !0;
        }
        else if (Array.isArray(c)) {
          for (const d of c) if (o(d)) return !0;
        } else if (typeof c == "object" && c !== null) return bt(mm(c), (d) => {
          if (d === "default" || Gi(n.conditions, d) || NN(n.conditions, d))
            return o(c[d]), !0;
        });
      }
    }
    function hw(e, t, n) {
      return {
        host: t,
        compilerOptions: n,
        traceEnabled: _1(n, t),
        failedLookupLocations: void 0,
        affectingLocations: void 0,
        packageJsonInfoCache: e,
        features: 0,
        conditions: Te,
        requestContainingDirectory: void 0,
        reportDiagnostic: so,
        isConfigLookup: !1,
        candidateIsFromPackageJsonField: !1,
        resolvedPackageDirectory: !1
      };
    }
    function yw(e, t) {
      return hg(t.host, e, (n) => GS(n, !1, t));
    }
    function b1e(e, t) {
      return e.contents.versionPaths === void 0 && (e.contents.versionPaths = zMe(e.contents.packageJsonContent, t) || !1), e.contents.versionPaths || void 0;
    }
    function rRe(e, t) {
      return e.contents.peerDependencies === void 0 && (e.contents.peerDependencies = nRe(e, t) || !1), e.contents.peerDependencies || void 0;
    }
    function nRe(e, t) {
      const n = ane(e.contents.packageJsonContent, "peerDependencies", "object", t);
      if (n === void 0) return;
      t.traceEnabled && _a(t.host, p.package_json_has_a_peerDependencies_field);
      const i = m1e(e.packageDirectory, t.host, t.traceEnabled), a = i.substring(0, i.lastIndexOf("node_modules") + 12) + Co;
      let o = "";
      for (const c in n) if (po(n, c)) {
        const _ = GS(a + c, !1, t);
        if (_) {
          const u = _.contents.packageJsonContent.version;
          o += `+${c}@${u}`, t.traceEnabled && _a(t.host, p.Found_peerDependency_0_with_1_version, c, u);
        } else t.traceEnabled && _a(t.host, p.Failed_to_find_peerDependency_0, c);
      }
      return o;
    }
    function GS(e, t, n) {
      var i, a, o, c, _, u;
      const { host: d, traceEnabled: g } = n, h = jn(e, "package.json");
      if (t) {
        (i = n.failedLookupLocations) == null || i.push(h);
        return;
      }
      const S = (a = n.packageJsonInfoCache) == null ? void 0 : a.getPackageJsonInfo(h);
      if (S !== void 0) {
        if (MF(S))
          return g && _a(d, p.File_0_exists_according_to_earlier_cached_lookups, h), (o = n.affectingLocations) == null || o.push(h), S.packageDirectory === e ? S : {
            packageDirectory: e,
            contents: S.contents
          };
        S.directoryExists && g && _a(d, p.File_0_does_not_exist_according_to_earlier_cached_lookups, h), (c = n.failedLookupLocations) == null || c.push(h);
        return;
      }
      const T = zd(e, d);
      if (T && d.fileExists(h)) {
        const k = y6(h, d);
        g && _a(d, p.Found_package_json_at_0, h);
        const D = {
          packageDirectory: e,
          contents: {
            packageJsonContent: k,
            versionPaths: void 0,
            resolvedEntrypoints: void 0,
            peerDependencies: void 0
          }
        };
        return n.packageJsonInfoCache && !n.packageJsonInfoCache.isReadonly && n.packageJsonInfoCache.setPackageJsonInfo(h, D), (_ = n.affectingLocations) == null || _.push(h), D;
      } else
        T && g && _a(d, p.File_0_does_not_exist, h), n.packageJsonInfoCache && !n.packageJsonInfoCache.isReadonly && n.packageJsonInfoCache.setPackageJsonInfo(h, {
          packageDirectory: e,
          directoryExists: T
        }), (u = n.failedLookupLocations) == null || u.push(h);
    }
    function LW(e, t, n, i, a) {
      const o = a && b1e(a, i);
      let c;
      a && a1e(a?.packageDirectory, t, i.host) && (i.isConfigLookup ? c = jMe(a.contents.packageJsonContent, a.packageDirectory, i) : c = e & 4 && RMe(a.contents.packageJsonContent, a.packageDirectory, i) || e & 7 && BMe(a.contents.packageJsonContent, a.packageDirectory, i) || void 0);
      const _ = (S, T, k, D) => {
        const P = IW(S, T, void 0, k, D);
        if (P) return EW(P);
        const N = S === 4 ? 5 : S, M = D.features, R = D.candidateIsFromPackageJsonField;
        D.candidateIsFromPackageJsonField = !0, a?.contents.packageJsonContent.type !== "module" && (D.features &= -33);
        const G = NW(N, T, k, D, !1);
        return D.features = M, D.candidateIsFromPackageJsonField = R, G;
      }, u = c ? !zd(Xn(c), i.host) : void 0, d = n || !zd(t, i.host), g = jn(t, i.isConfigLookup ? "tsconfig" : "index");
      if (o && (!c || vp(t, c))) {
        const S = Zf(t, c || g, !1);
        i.traceEnabled && _a(i.host, p.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2, o.version, Qr, S);
        const T = qA(o.paths), k = yne(e, S, t, o.paths, T, _, u || d, i);
        if (k) return r1e(k.value);
      }
      const h = c && r1e(_(e, c, u, i));
      if (h) return h;
      if (!(i.features & 32)) return X6(e, g, d, i);
    }
    function S1e(e, t) {
      return e & 2 && (t === ".js" || t === ".jsx" || t === ".mjs" || t === ".cjs") || e & 1 && (t === ".ts" || t === ".tsx" || t === ".mts" || t === ".cts") || e & 4 && (t === ".d.ts" || t === ".d.mts" || t === ".d.cts") || e & 8 && t === ".json" || !1;
    }
    function BF(e) {
      let t = e.indexOf(Co);
      return e[0] === "@" && (t = e.indexOf(Co, t + 1)), t === -1 ? {
        packageName: e,
        rest: ""
      } : {
        packageName: e.slice(0, t),
        rest: e.slice(t + 1)
      };
    }
    function JF(e) {
      return hr(mm(e), (t) => ta(t, "."));
    }
    function iRe(e) {
      return !_t(mm(e), (t) => ta(t, "."));
    }
    function aRe(e, t, n, i, a, o) {
      var c, _;
      const u = yw(ca(n, (_ = (c = i.host).getCurrentDirectory) == null ? void 0 : _.call(c)), i);
      if (!u || !u.contents.packageJsonContent.exports || typeof u.contents.packageJsonContent.name != "string") return;
      const d = wu(t), g = wu(u.contents.packageJsonContent.name);
      if (!hr(g, (D, P) => d[P] === D)) return;
      const h = d.slice(g.length), S = It(h) ? `.${Co}${h.join(Co)}` : ".";
      if (t1(i.compilerOptions) && !p1(n)) return MW(u, e, S, i, a, o);
      const T = e & 5, k = e & -6;
      return MW(u, T, S, i, a, o) || MW(u, k, S, i, a, o);
    }
    function MW(e, t, n, i, a, o) {
      if (e.contents.packageJsonContent.exports) {
        if (n === ".") {
          let c;
          if (typeof e.contents.packageJsonContent.exports == "string" || Array.isArray(e.contents.packageJsonContent.exports) || typeof e.contents.packageJsonContent.exports == "object" && iRe(e.contents.packageJsonContent.exports) ? c = e.contents.packageJsonContent.exports : po(e.contents.packageJsonContent.exports, ".") && (c = e.contents.packageJsonContent.exports["."]), c) return x1e(t, i, a, o, n, e, !1)(c, "", !1, ".");
        } else if (JF(e.contents.packageJsonContent.exports)) {
          if (typeof e.contents.packageJsonContent.exports != "object")
            return i.traceEnabled && _a(i.host, p.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1, n, e.packageDirectory), Ap(void 0);
          const c = T1e(t, i, a, o, n, e.contents.packageJsonContent.exports, e, !1);
          if (c) return c;
        }
        return i.traceEnabled && _a(i.host, p.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1, n, e.packageDirectory), Ap(void 0);
      }
    }
    function sRe(e, t, n, i, a, o) {
      var c, _;
      if (t === "#" || ta(t, "#/") && !(i.features & 64))
        return i.traceEnabled && _a(i.host, p.Invalid_import_specifier_0_has_no_possible_resolutions, t), Ap(void 0);
      const u = ca(n, (_ = (c = i.host).getCurrentDirectory) == null ? void 0 : _.call(c)), d = yw(u, i);
      if (!d)
        return i.traceEnabled && _a(i.host, p.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve, u), Ap(void 0);
      if (!d.contents.packageJsonContent.imports)
        return i.traceEnabled && _a(i.host, p.package_json_scope_0_has_no_imports_defined, d.packageDirectory), Ap(void 0);
      const g = T1e(e, i, a, o, t, d.contents.packageJsonContent.imports, d, !0);
      return g || (i.traceEnabled && _a(i.host, p.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1, t, d.packageDirectory), Ap(void 0));
    }
    function RW(e, t) {
      const n = e.indexOf("*"), i = t.indexOf("*"), a = n === -1 ? e.length : n + 1, o = i === -1 ? t.length : i + 1;
      return a > o ? -1 : o > a || n === -1 ? 1 : i === -1 || e.length > t.length ? -1 : t.length > e.length ? 1 : 0;
    }
    function T1e(e, t, n, i, a, o, c, _) {
      const u = x1e(e, t, n, i, a, c, _);
      if (!Uo(a, Co) && !a.includes("*") && po(o, a)) {
        const h = o[a];
        return u(h, "", !1, a);
      }
      const d = uf(dn(mm(o), (h) => oRe(h) || Uo(h, "/")), RW);
      for (const h of d) if (t.features & 16 && g(h, a)) {
        const S = o[h], T = h.indexOf("*");
        return u(S, a.substring(h.substring(0, T).length, a.length - (h.length - 1 - T)), !0, h);
      } else if (Uo(h, "*") && ta(a, h.substring(0, h.length - 1))) {
        const S = o[h];
        return u(S, a.substring(h.length - 1), !0, h);
      } else if (ta(a, h)) {
        const S = o[h];
        return u(S, a.substring(h.length), !1, h);
      }
      function g(h, S) {
        if (Uo(h, "*")) return !1;
        const T = h.indexOf("*");
        return T === -1 ? !1 : ta(S, h.substring(0, T)) && Uo(S, h.substring(T + 1));
      }
    }
    function oRe(e) {
      const t = e.indexOf("*");
      return t !== -1 && t === e.lastIndexOf("*");
    }
    function x1e(e, t, n, i, a, o, c) {
      return _;
      function _(u, d, g, h) {
        var S, T;
        if (typeof u == "string") {
          if (!g && d.length > 0 && !Uo(u, "/"))
            return t.traceEnabled && _a(t.host, p.package_json_scope_0_has_invalid_type_for_target_of_specifier_1, o.packageDirectory, a), Ap(void 0);
          if (!ta(u, "./")) {
            if (c && !ta(u, "../") && !ta(u, "/") && !pf(u)) {
              const z = g ? u.replace(/\*/g, d) : u + d;
              d1(t, p.Using_0_subpath_1_with_target_2, "imports", h, z), d1(t, p.Resolving_module_0_from_1, z, o.packageDirectory + "/");
              const H = PN(t.features, z, o.packageDirectory + "/", t.compilerOptions, t.host, n, e, !1, i, t.conditions);
              return (S = t.failedLookupLocations) == null || S.push(...H.failedLookupLocations ?? Te), (T = t.affectingLocations) == null || T.push(...H.affectingLocations ?? Te), Ap(H.resolvedModule ? {
                path: H.resolvedModule.resolvedFileName,
                extension: H.resolvedModule.extension,
                packageId: H.resolvedModule.packageId,
                originalPath: H.resolvedModule.originalPath,
                resolvedUsingTsExtension: H.resolvedModule.resolvedUsingTsExtension
              } : void 0);
            }
            return t.traceEnabled && _a(t.host, p.package_json_scope_0_has_invalid_type_for_target_of_specifier_1, o.packageDirectory, a), Ap(void 0);
          }
          const N = (Bf(u) ? wu(u).slice(1) : wu(u)).slice(1);
          if (N.includes("..") || N.includes(".") || N.includes("node_modules"))
            return t.traceEnabled && _a(t.host, p.package_json_scope_0_has_invalid_type_for_target_of_specifier_1, o.packageDirectory, a), Ap(void 0);
          const M = jn(o.packageDirectory, u), R = wu(d);
          if (R.includes("..") || R.includes(".") || R.includes("node_modules"))
            return t.traceEnabled && _a(t.host, p.package_json_scope_0_has_invalid_type_for_target_of_specifier_1, o.packageDirectory, a), Ap(void 0);
          t.traceEnabled && _a(t.host, p.Using_0_subpath_1_with_target_2, c ? "imports" : "exports", h, g ? u.replace(/\*/g, d) : u + d);
          const G = k(g ? M.replace(/\*/g, d) : M + d), L = P(G, d, jn(o.packageDirectory, "package.json"), c);
          return L || Ap(Ek(o, IW(e, G, u, !1, t), t));
        } else if (typeof u == "object" && u !== null) if (Array.isArray(u)) {
          if (!It(u))
            return t.traceEnabled && _a(t.host, p.package_json_scope_0_has_invalid_type_for_target_of_specifier_1, o.packageDirectory, a), Ap(void 0);
          for (const N of u) {
            const M = _(N, d, g, h);
            if (M) return M;
          }
        } else {
          d1(t, p.Entering_conditional_exports);
          for (const N of mm(u)) if (N === "default" || t.conditions.includes(N) || NN(t.conditions, N)) {
            d1(t, p.Matched_0_condition_1, c ? "imports" : "exports", N);
            const M = u[N], R = _(M, d, g, h);
            if (R)
              return R.value && d1(t, p.Resolved_under_condition_0, N), d1(t, p.Exiting_conditional_exports), R;
            d1(t, p.Failed_to_resolve_under_condition_0, N);
          } else d1(t, p.Saw_non_matching_condition_0, N);
          d1(t, p.Exiting_conditional_exports);
          return;
        }
        else if (u === null)
          return t.traceEnabled && _a(t.host, p.package_json_scope_0_explicitly_maps_specifier_1_to_null, o.packageDirectory, a), { value: void 0 };
        return t.traceEnabled && _a(t.host, p.package_json_scope_0_has_invalid_type_for_target_of_specifier_1, o.packageDirectory, a), Ap(void 0);
        function k(N) {
          var M, R;
          return N === void 0 ? N : ca(N, (R = (M = t.host).getCurrentDirectory) == null ? void 0 : R.call(M));
        }
        function D(N, M) {
          return El(jn(N, M));
        }
        function P(N, M, R, G) {
          var L, z, H, U;
          if (!t.isConfigLookup && (t.compilerOptions.declarationDir || t.compilerOptions.outDir) && !N.includes("/node_modules/") && (!t.compilerOptions.configFile || vp(o.packageDirectory, k(t.compilerOptions.configFile.fileName), !jW(t)))) {
            const ie = Wh({ useCaseSensitiveFileNames: () => jW(t) }), W = [];
            if (t.compilerOptions.rootDir || t.compilerOptions.configFilePath) {
              const Q = k(Aw(t.compilerOptions, () => [], ((z = (L = t.host).getCurrentDirectory) == null ? void 0 : z.call(L)) || "", ie));
              W.push(Q);
            } else if (t.requestContainingDirectory) {
              const Q = k(jn(t.requestContainingDirectory, "index.ts")), se = k(Aw(t.compilerOptions, () => [Q, k(R)], ((U = (H = t.host).getCurrentDirectory) == null ? void 0 : U.call(H)) || "", ie));
              W.push(se);
              let he = El(se);
              for (; he && he.length > 1; ) {
                const fe = wu(he);
                fe.pop();
                const de = rv(fe);
                W.unshift(de), he = El(de);
              }
            }
            W.length > 1 && t.reportDiagnostic(nc(G ? p.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate : p.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate, M === "" ? "." : M, R));
            for (const Q of W) {
              const se = pe(Q);
              for (const he of se) if (vp(he, N, !jW(t))) {
                const fe = jn(Q, N.slice(he.length + 1));
                for (const de of [
                  ".mjs",
                  ".cjs",
                  ".js",
                  ".json",
                  ".d.mts",
                  ".d.cts",
                  ".d.ts"
                ]) if (lc(fe, de)) {
                  const $ = mJ(fe);
                  for (const Se of $) {
                    if (!S1e(e, Se)) continue;
                    const Be = m3(fe, Se, de, !jW(t));
                    if (t.host.fileExists(Be)) return Ap(Ek(o, IW(e, Be, void 0, !1, t), t));
                  }
                }
              }
            }
          }
          return;
          function pe(ie) {
            var W, Q;
            const se = t.compilerOptions.configFile ? ((Q = (W = t.host).getCurrentDirectory) == null ? void 0 : Q.call(W)) || "" : ie, he = [];
            return t.compilerOptions.declarationDir && he.push(k(D(se, t.compilerOptions.declarationDir))), t.compilerOptions.outDir && t.compilerOptions.outDir !== t.compilerOptions.declarationDir && he.push(k(D(se, t.compilerOptions.outDir))), he;
          }
        }
      }
    }
    function NN(e, t) {
      if (!e.includes("types") || !ta(t, "types@")) return !1;
      const n = E7.tryParse(t.substring(6));
      return n ? n.test(Qr) : !1;
    }
    function k1e(e, t, n, i, a, o) {
      return C1e(e, t, n, i, !1, a, o);
    }
    function cRe(e, t, n) {
      return C1e(4, e, t, n, !0, void 0, void 0);
    }
    function C1e(e, t, n, i, a, o, c) {
      const _ = i.features === 0 ? void 0 : i.features & 32 || i.conditions.includes("import") ? 99 : 1, u = e & 5, d = e & -6;
      if (u) {
        d1(i, p.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0, OF(u));
        const h = g(u);
        if (h) return h;
      }
      if (d && !a)
        return d1(i, p.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0, OF(d)), g(d);
      function g(h) {
        return hg(i.host, ru(n), (S) => {
          if (nl(S) !== "node_modules") {
            const T = P1e(o, t, _, S, c, i);
            return T || Ap(E1e(h, t, S, i, a, o, c));
          }
        });
      }
    }
    function hg(e, t, n) {
      var i;
      const a = (i = e?.getGlobalTypingsCacheLocation) == null ? void 0 : i.call(e);
      return L4(t, (o) => {
        const c = n(o);
        if (c !== void 0) return c;
        if (o === a) return !1;
      }) || void 0;
    }
    function E1e(e, t, n, i, a, o, c) {
      const _ = jn(n, "node_modules"), u = zd(_, i.host);
      if (!u && i.traceEnabled && _a(i.host, p.Directory_0_does_not_exist_skipping_all_lookups_in_it, _), !a) {
        const d = D1e(e, t, _, u, i, o, c);
        if (d) return d;
      }
      if (e & 4) {
        const d = jn(_, "@types");
        let g = u;
        return u && !zd(d, i.host) && (i.traceEnabled && _a(i.host, p.Directory_0_does_not_exist_skipping_all_lookups_in_it, d), g = !1), D1e(4, w1e(t, i), d, g, i, o, c);
      }
    }
    function D1e(e, t, n, i, a, o, c) {
      var _, u;
      const d = us(jn(n, t)), { packageName: g, rest: h } = BF(t), S = jn(n, g);
      let T, k = GS(d, !i, a);
      if (h !== "" && k && (!(a.features & 8) || !po(((_ = T = GS(S, !i, a)) == null ? void 0 : _.contents.packageJsonContent) ?? Te, "exports"))) {
        const N = X6(e, d, !i, a);
        if (N) return EW(N);
        const M = LW(e, d, !i, a, k);
        return Ek(k, M, a);
      }
      const D = (N, M, R, G) => {
        let L = (h || !(G.features & 32)) && X6(N, M, R, G) || LW(N, M, R, G, k);
        return !L && !h && k && (k.contents.packageJsonContent.exports === void 0 || k.contents.packageJsonContent.exports === null) && G.features & 32 && (L = X6(N, jn(M, "index.js"), R, G)), Ek(k, L, G);
      };
      if (h !== "" && (k = T ?? GS(S, !i, a)), k && (a.resolvedPackageDirectory = !0), k && k.contents.packageJsonContent.exports && a.features & 8) return (u = MW(k, e, jn(".", h), a, o, c)) == null ? void 0 : u.value;
      const P = h !== "" && k ? b1e(k, a) : void 0;
      if (P) {
        a.traceEnabled && _a(a.host, p.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2, P.version, Qr, h);
        const N = i && zd(S, a.host), M = qA(P.paths), R = yne(e, h, S, P.paths, M, D, !N, a);
        if (R) return R.value;
      }
      return D(e, d, !i, a);
    }
    function yne(e, t, n, i, a, o, c, _) {
      const u = KJ(a, t);
      if (u) {
        const d = Ta(u) ? void 0 : kQ(u, t), g = Ta(u) ? u : xQ(u);
        return _.traceEnabled && _a(_.host, p.Module_name_0_matched_pattern_1, t, g), { value: bt(i[g], (h) => {
          const S = d ? PS(h, d) : h, T = us(jn(n, S));
          _.traceEnabled && _a(_.host, p.Trying_substitution_0_candidate_module_location_Colon_1, h, S);
          const k = Kg(h);
          if (k !== void 0) {
            const D = OW(T, c, _);
            if (D !== void 0) return EW({
              path: D,
              ext: k,
              resolvedUsingTsExtension: void 0
            });
          }
          return o(e, T, c || !zd(Xn(T), _.host), _);
        }) };
      }
    }
    var vne = "__";
    function w1e(e, t) {
      const n = Q6(e);
      return t.traceEnabled && n !== e && _a(t.host, p.Scoped_package_detected_looking_in_0, n), n;
    }
    function zF(e) {
      return `@types/${Q6(e)}`;
    }
    function Q6(e) {
      if (ta(e, "@")) {
        const t = e.replace(Co, vne);
        if (t !== e) return t.slice(1);
      }
      return e;
    }
    function vw(e) {
      const t = C4(e, "@types/");
      return t !== e ? IN(t) : e;
    }
    function IN(e) {
      return e.includes(vne) ? "@" + e.replace(vne, Co) : e;
    }
    function P1e(e, t, n, i, a, o) {
      const c = e && e.getFromNonRelativeNameCache(t, n, i, a);
      if (c)
        return o.traceEnabled && _a(o.host, p.Resolution_for_module_0_was_found_in_cache_from_location_1, t, i), o.resultFromCache = c, { value: c.resolvedModule && {
          path: c.resolvedModule.resolvedFileName,
          originalPath: c.resolvedModule.originalPath || !0,
          extension: c.resolvedModule.extension,
          packageId: c.resolvedModule.packageId,
          resolvedUsingTsExtension: c.resolvedModule.resolvedUsingTsExtension
        } };
    }
    function bne(e, t, n, i, a, o) {
      const c = _1(n, i), _ = [], u = [], d = Xn(t), g = [], h = {
        compilerOptions: n,
        host: i,
        traceEnabled: c,
        failedLookupLocations: _,
        affectingLocations: u,
        packageJsonInfoCache: a,
        features: 0,
        conditions: [],
        requestContainingDirectory: d,
        reportDiagnostic: (k) => {
          g.push(k);
        },
        isConfigLookup: !1,
        candidateIsFromPackageJsonField: !1,
        resolvedPackageDirectory: !1
      }, S = T(5) || T(2 | (n.resolveJsonModule ? 8 : 0));
      return n1e(e, S && S.value, S?.value && p1(S.value.path), _, u, g, h, a);
      function T(k) {
        const D = f1e(k, e, d, gne, h);
        if (D) return { value: D };
        if (jl(e))
          return Ap(gne(k, us(jn(d, e)), !1, h));
        {
          const P = hg(h.host, d, (N) => {
            const M = P1e(a, e, void 0, N, o, h);
            return M || Ap(gne(k, us(jn(N, e)), !1, h));
          });
          if (P) return P;
          if (k & 5) {
            let N = cRe(e, d, h);
            return k & 4 && (N ?? (N = A1e(e, h))), N;
          }
        }
      }
    }
    function A1e(e, t) {
      if (t.compilerOptions.typeRoots)
        for (const n of t.compilerOptions.typeRoots) {
          const i = o1e(n, e, t), a = zd(n, t.host);
          !a && t.traceEnabled && _a(t.host, p.Directory_0_does_not_exist_skipping_all_lookups_in_it, n);
          const o = X6(4, i, !a, t);
          if (o) {
            const _ = AN(o.path);
            return Ap(Ek(_ ? GS(_, !1, t) : void 0, o, t));
          }
          const c = hne(4, i, !a, t);
          if (c) return Ap(c);
        }
    }
    function Y6(e, t) {
      return Iee(e) || !!t && $l(t);
    }
    function Sne(e, t, n, i, a, o) {
      const c = _1(n, i);
      c && _a(i, p.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2, t, e, a);
      const _ = [], u = [], d = [], g = {
        compilerOptions: n,
        host: i,
        traceEnabled: c,
        failedLookupLocations: _,
        affectingLocations: u,
        packageJsonInfoCache: o,
        features: 0,
        conditions: [],
        requestContainingDirectory: void 0,
        reportDiagnostic: (h) => {
          d.push(h);
        },
        isConfigLookup: !1,
        candidateIsFromPackageJsonField: !1,
        resolvedPackageDirectory: !1
      };
      return i1e(E1e(4, e, a, g, !1, void 0, void 0), !0, _, u, d, g.resultFromCache, void 0);
    }
    function Ap(e) {
      return e !== void 0 ? { value: e } : void 0;
    }
    function d1(e, t, ...n) {
      e.traceEnabled && _a(e.host, t, ...n);
    }
    function jW(e) {
      return e.host.useCaseSensitiveFileNames ? typeof e.host.useCaseSensitiveFileNames == "boolean" ? e.host.useCaseSensitiveFileNames : e.host.useCaseSensitiveFileNames() : !0;
    }
    var Tne = /* @__PURE__ */ ((e) => (e[e.NonInstantiated = 0] = "NonInstantiated", e[e.Instantiated = 1] = "Instantiated", e[e.ConstEnumOnly = 2] = "ConstEnumOnly", e))(Tne || {});
    function m1(e, t) {
      return e.body && !e.body.parent && (eo(e.body, e), bv(e.body, !1)), e.body ? xne(e.body, t) : 1;
    }
    function xne(e, t = /* @__PURE__ */ new Map()) {
      const n = Hs(e);
      if (t.has(n)) return t.get(n) || 0;
      t.set(n, void 0);
      const i = lRe(e, t);
      return t.set(n, i), i;
    }
    function lRe(e, t) {
      switch (e.kind) {
        case 265:
        case 266:
          return 0;
        case 267:
          if (cv(e)) return 2;
          break;
        case 273:
        case 272:
          if (!Qn(e, 32)) return 0;
          break;
        case 279:
          const n = e;
          if (!n.moduleSpecifier && n.exportClause && n.exportClause.kind === 280) {
            let i = 0;
            for (const a of n.exportClause.elements) {
              const o = uRe(a, t);
              if (o > i && (i = o), i === 1) return i;
            }
            return i;
          }
          break;
        case 269: {
          let i = 0;
          return Fa(e, (a) => {
            const o = xne(a, t);
            switch (o) {
              case 0:
                return;
              case 2:
                i = 2;
                return;
              case 1:
                return i = 1, !0;
              default:
                E.assertNever(o);
            }
          }), i;
        }
        case 268:
          return m1(e, t);
        case 80:
          if (e.flags & 4096) return 0;
      }
      return 1;
    }
    function uRe(e, t) {
      const n = e.propertyName || e.name;
      if (n.kind !== 80) return 1;
      let i = e.parent;
      for (; i; ) {
        if (Wa(i) || Vd(i) || Pi(i)) {
          const a = i.statements;
          let o;
          for (const c of a) if (E3(c, n)) {
            c.parent || (eo(c, i), bv(c, !1));
            const _ = xne(c, t);
            if ((o === void 0 || _ > o) && (o = _), o === 1) return o;
            c.kind === 272 && (o = 1);
          }
          if (o !== void 0) return o;
        }
        i = i.parent;
      }
      return 1;
    }
    var kne = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.IsContainer = 1] = "IsContainer", e[e.IsBlockScopedContainer = 2] = "IsBlockScopedContainer", e[e.IsControlFlowContainer = 4] = "IsControlFlowContainer", e[e.IsFunctionLike = 8] = "IsFunctionLike", e[e.IsFunctionExpression = 16] = "IsFunctionExpression", e[e.HasLocals = 32] = "HasLocals", e[e.IsInterface = 64] = "IsInterface", e[e.IsObjectLiteralOrClassExpressionMethodOrAccessor = 128] = "IsObjectLiteralOrClassExpressionMethodOrAccessor", e[e.PropagatesThisKeyword = 256] = "PropagatesThisKeyword", e))(kne || {});
    function sh(e, t, n) {
      return E.attachFlowNodeDebugInfo({
        flags: e,
        id: 0,
        node: t,
        antecedent: n
      });
    }
    var _Re = /* @__PURE__ */ fRe();
    function Cne(e, t) {
      pc("beforeBind"), _Re(e, t), pc("afterBind"), yp("Bind", "beforeBind", "afterBind");
    }
    function fRe() {
      var e, t, n, i, a, o, c, _, u, d, g, h, S, T, k, D, P, N, M, R, G, L, z, H, U, pe = !1, ie = 0, W, Q, se = sh(1, void 0, void 0), he = ee();
      return de;
      function fe(F, ve, ...qe) {
        return Sp(Sr(F) || e, F, ve, ...qe);
      }
      function de(F, ve) {
        var qe, Bt;
        e = F, t = ve, n = Ps(t), U = $(e, ve), Q = /* @__PURE__ */ new Set(), ie = 0, W = gu.getSymbolConstructor(), E.attachFlowNodeDebugInfo(se), e.locals || ((qe = sn) == null || qe.push(sn.Phase.Bind, "bindSourceFile", { path: e.path }, !0), St(e), (Bt = sn) == null || Bt.pop(), e.symbolCount = ie, e.classifiableNames = Q, Yc(), Ou()), e = void 0, t = void 0, n = void 0, i = void 0, a = void 0, o = void 0, c = void 0, _ = void 0, u = void 0, g = void 0, d = !1, h = void 0, S = void 0, T = void 0, k = void 0, D = void 0, P = void 0, N = void 0, R = void 0, G = !1, L = !1, z = !1, pe = !1, H = 0;
      }
      function $(F, ve) {
        return OD(ve) && !F.isDeclarationFile ? !0 : !!F.externalModuleIndicator;
      }
      function Se(F, ve) {
        return ie++, new W(F, ve);
      }
      function Be(F, ve, qe) {
        F.flags |= qe, ve.symbol = F, F.declarations = Lh(F.declarations, ve), qe & 1955 && !F.exports && (F.exports = Ka()), qe & 6240 && !F.members && (F.members = Ka()), F.constEnumOnlyModule && F.flags & 304 && (F.constEnumOnlyModule = !1), qe & 111551 && _D(F, ve);
      }
      function ce(F) {
        if (F.kind === 278) return F.isExportEquals ? "export=" : "default";
        const ve = va(F);
        if (ve) {
          if (o_(F)) {
            const qe = Xp(ve);
            return ug(F) ? "__global" : `"${qe}"`;
          }
          if (ve.kind === 168) {
            const qe = ve.expression;
            if (ep(qe)) return mc(qe.text);
            if (W5(qe)) return as(qe.operator) + qe.operand.text;
            E.fail("Only computed properties with literal names have declaration names");
          }
          if (Oi(ve)) {
            const qe = nu(F);
            if (!qe) return;
            const Bt = qe.symbol;
            return bA(Bt, ve.escapedText);
          }
          return Gd(ve) ? tk(ve) : Tm(ve) ? yD(ve) : void 0;
        }
        switch (F.kind) {
          case 177:
            return "__constructor";
          case 185:
          case 180:
          case 324:
            return "__call";
          case 186:
          case 181:
            return "__new";
          case 182:
            return "__index";
          case 279:
            return "__export";
          case 308:
            return "export=";
          case 227:
            if (qc(F) === 2) return "export=";
            E.fail("Unknown binary declaration kind");
            break;
          case 318:
            return Rx(F) ? "__new" : "__call";
          case 170:
            return E.assert(F.parent.kind === 318, "Impossible parameter parent kind", () => `parent is: ${E.formatSyntaxKind(F.parent.kind)}, expected JSDocFunctionType`), "arg" + F.parent.parameters.indexOf(F);
        }
      }
      function oe(F) {
        return Bl(F) ? Do(F.name) : Ti(E.checkDefined(ce(F)));
      }
      function ge(F, ve, qe, Bt, Rr, cn, dr) {
        E.assert(dr || !zh(qe));
        const Cn = Qn(qe, 2048) || $u(qe) && lg(qe.name), fs = dr ? "__computed" : Cn && ve ? "default" : ce(qe);
        let ji;
        if (fs === void 0) ji = Se(0, "__missing");
        else if (ji = F.get(fs), Bt & 2885600 && Q.add(fs), !ji)
          F.set(fs, ji = Se(0, fs)), cn && (ji.isReplaceableByMethod = !0);
        else {
          if (cn && !ji.isReplaceableByMethod) return ji;
          if (ji.flags & Rr) {
            if (ji.isReplaceableByMethod) F.set(fs, ji = Se(0, fs));
            else if (!(Bt & 3 && ji.flags & 67108864)) {
              Bl(qe) && eo(qe.name, qe);
              let Fc = ji.flags & 2 ? p.Cannot_redeclare_block_scoped_variable_0 : p.Duplicate_identifier_0, Ul = !0;
              (ji.flags & 384 || Bt & 384) && (Fc = p.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations, Ul = !1);
              let Lu = !1;
              It(ji.declarations) && (Cn || ji.declarations && ji.declarations.length && qe.kind === 278 && !qe.isExportEquals) && (Fc = p.A_module_cannot_have_multiple_default_exports, Ul = !1, Lu = !0);
              const N_ = [];
              Kp(qe) && Nc(qe.type) && Qn(qe, 32) && ji.flags & 2887656 && N_.push(fe(qe, p.Did_you_mean_0, `export type { ${Ti(qe.name.escapedText)} }`));
              const cu = va(qe) || qe;
              bt(ji.declarations, (X0, Q0) => {
                const vg = va(X0) || X0, r0 = Ul ? fe(vg, Fc, oe(X0)) : fe(vg, Fc);
                e.bindDiagnostics.push(Lu ? ts(r0, fe(cu, Q0 === 0 ? p.Another_export_default_is_here : p.and_here)) : r0), Lu && N_.push(fe(vg, p.The_first_export_default_is_here));
              });
              const lh = Ul ? fe(cu, Fc, oe(qe)) : fe(cu, Fc);
              e.bindDiagnostics.push(ts(lh, ...N_)), ji = Se(0, fs);
            }
          }
        }
        return Be(ji, qe, Bt), ji.parent ? E.assert(ji.parent === ve, "Existing symbol parent should match new one") : ji.parent = ve, ji;
      }
      function Ae(F, ve, qe) {
        const Bt = !!(nv(F) & 32) || Ne(F);
        if (ve & 2097152) return F.kind === 282 || F.kind === 272 && Bt ? ge(a.symbol.exports, a.symbol, F, ve, qe) : (E.assertNode(a, og), ge(a.locals, void 0, F, ve, qe));
        if ($p(F) && E.assert(rn(F)), !o_(F) && (Bt || a.flags & 128)) {
          if (!og(a) || !a.locals || Qn(F, 2048) && !ce(F)) return ge(a.symbol.exports, a.symbol, F, ve, qe);
          const Rr = ve & 111551 ? 1048576 : 0, cn = ge(a.locals, void 0, F, Rr, qe);
          return cn.exportSymbol = ge(a.symbol.exports, a.symbol, F, ve, qe), F.localSymbol = cn, cn;
        } else
          return E.assertNode(a, og), ge(a.locals, void 0, F, ve, qe);
      }
      function Ne(F) {
        if (F.parent && Qc(F) && (F = F.parent), !$p(F)) return !1;
        if (!lN(F) && F.fullName) return !0;
        const ve = va(F);
        return ve ? !!(PA(ve.parent) && Wf(ve.parent) || Jl(ve.parent) && nv(ve.parent) & 32) : !1;
      }
      function ot(F, ve) {
        const qe = a, Bt = o, Rr = c, cn = L;
        if (F.kind === 220 && F.body.kind !== 242 && (L = !0), ve & 1 ? (F.kind !== 220 && (o = a), a = c = F, ve & 32 && (a.locals = Ka(), Jt(a))) : ve & 2 && (c = F, ve & 32 && (c.locals = void 0)), ve & 4) {
          const dr = h, Cn = S, fs = T, ji = k, Fc = N, Ul = R, Lu = G, N_ = d, cu = ve & 16 && !Qn(F, 1024) && !F.asteriskToken && !!lv(F) || F.kind === 176;
          cu || (h = sh(2, void 0, void 0), ve & 144 && (h.node = F)), k = cu || F.kind === 177 || rn(F) && (F.kind === 263 || F.kind === 219) ? Ct() : void 0, N = void 0, S = void 0, T = void 0, R = void 0, G = !1, d = !1, Ce(F), F.flags &= -5889, !(h.flags & 1) && ve & 8 && Gp(F.body) && (F.flags |= 512, G && (F.flags |= 1024), F.endFlowNode = h), d && (F.flags |= 256), F.kind === 308 && (F.flags |= H, F.endFlowNode = h), k && (Gr(k, h), h = ni(k), (F.kind === 177 || F.kind === 176 || rn(F) && (F.kind === 263 || F.kind === 219)) && (F.returnFlowNode = h)), cu || (h = dr), S = Cn, T = fs, k = ji, N = Fc, R = Ul, G = Lu, d = ve & 256 ? N_ || d : N_;
        } else if (ve & 64) {
          const dr = d;
          d = !1, Ce(F), E.assertNotNode(F, Fe), F.flags = d ? F.flags | 256 : F.flags & -257, d = dr;
        } else Ce(F);
        L = cn, a = qe, o = Bt, c = Rr;
      }
      function K(F) {
        ke(F, (ve) => ve.kind === 263 ? St(ve) : void 0), ke(F, (ve) => ve.kind !== 263 ? St(ve) : void 0);
      }
      function ke(F, ve = St) {
        F !== void 0 && bt(F, ve);
      }
      function ae(F) {
        Fa(F, St, ke);
      }
      function Ce(F) {
        const ve = pe;
        if (pe = !1, $D(F) && (F.flags &= -1073741825), h === se) {
          Bx(F) && (F.flowNode = void 0), $D(F) && (F.flags |= 1073741824), ae(F), jr(F), pe = ve;
          return;
        }
        switch (244 <= F.kind && F.kind <= 260 && Bx(F) && (F.flowNode = h), F.kind) {
          case 248:
            Ea(F);
            break;
          case 247:
            Da(F);
            break;
          case 249:
            Lr(F);
            break;
          case 250:
          case 251:
            ha(F);
            break;
          case 246:
            Ye(F);
            break;
          case 254:
          case 258:
            Pt(F);
            break;
          case 253:
          case 252:
            re(F);
            break;
          case 259:
            we(F);
            break;
          case 256:
            Ge(F);
            break;
          case 270:
            nt(F);
            break;
          case 297:
            it(F);
            break;
          case 245:
            ut(F);
            break;
          case 257:
            xt(F);
            break;
          case 225:
            rr(F);
            break;
          case 226:
            Oe(F);
            break;
          case 227:
            if (A0(F)) {
              pe = ve, rt(F);
              return;
            }
            he(F);
            break;
          case 221:
            q(F);
            break;
          case 228:
            j(F);
            break;
          case 261:
            $e(F);
            break;
          case 212:
          case 213:
            Ir(F);
            break;
          case 214:
            Yt(F);
            break;
          case 236:
            qt(F);
            break;
          case 347:
          case 339:
          case 341:
            Pr(F);
            break;
          case 352:
            fn(F);
            break;
          case 308:
            K(F.statements), St(F.endOfFileToken);
            break;
          case 242:
          case 269:
            K(F.statements);
            break;
          case 209:
            ye(F);
            break;
          case 170:
            Ke(F);
            break;
          case 211:
          case 210:
          case 304:
          case 231:
            pe = ve;
          default:
            ae(F);
            break;
        }
        jr(F), pe = ve;
      }
      function ue(F) {
        switch (F.kind) {
          case 80:
          case 110:
            return !0;
          case 212:
          case 213:
            return Xe(F);
          case 214:
            return Ft(F);
          case 218:
            if (Kb(F)) return !1;
          case 236:
            return ue(F.expression);
          case 227:
            return Xt(F);
          case 225:
            return F.operator === 54 && ue(F.operand);
          case 222:
            return ue(F.expression);
        }
        return !1;
      }
      function Ie(F) {
        switch (F.kind) {
          case 80:
          case 110:
          case 108:
          case 237:
            return !0;
          case 212:
          case 218:
          case 236:
            return Ie(F.expression);
          case 213:
            return (ep(F.argumentExpression) || go(F.argumentExpression)) && Ie(F.expression);
          case 227:
            return F.operatorToken.kind === 28 && Ie(F.right) || Uh(F.operatorToken.kind) && j_(F.left);
        }
        return !1;
      }
      function Xe(F) {
        return Ie(F) || Vu(F) && Xe(F.expression);
      }
      function Ft(F) {
        if (F.arguments) {
          for (const ve of F.arguments) if (Xe(ve)) return !0;
        }
        return !!(F.expression.kind === 212 && Xe(F.expression.expression));
      }
      function Ut(F, ve) {
        return P6(F) && Ar(F.expression) && Xs(ve);
      }
      function Xt(F) {
        switch (F.operatorToken.kind) {
          case 64:
          case 76:
          case 77:
          case 78:
            return Xe(F.left);
          case 35:
          case 36:
          case 37:
          case 38:
            const ve = Gs(F.left), qe = Gs(F.right);
            return Ar(ve) || Ar(qe) || Ut(qe, ve) || Ut(ve, qe) || X4(qe) && ue(ve) || X4(ve) && ue(qe);
          case 104:
            return Ar(F.left);
          case 103:
            return ue(F.right);
          case 28:
            return ue(F.right);
        }
        return !1;
      }
      function Ar(F) {
        switch (F.kind) {
          case 218:
            return Ar(F.expression);
          case 227:
            switch (F.operatorToken.kind) {
              case 64:
                return Ar(F.left);
              case 28:
                return Ar(F.right);
            }
        }
        return Xe(F);
      }
      function Ct() {
        return sh(4, void 0, void 0);
      }
      function Kt() {
        return sh(8, void 0, void 0);
      }
      function zr(F, ve, qe) {
        return sh(1024, {
          target: F,
          antecedents: ve
        }, qe);
      }
      function _i(F) {
        F.flags |= F.flags & 2048 ? 4096 : 2048;
      }
      function Gr(F, ve) {
        !(ve.flags & 1) && !Gi(F.antecedent, ve) && ((F.antecedent || (F.antecedent = [])).push(ve), _i(ve));
      }
      function Nt(F, ve, qe) {
        return ve.flags & 1 ? ve : qe ? (qe.kind === 112 && F & 64 || qe.kind === 97 && F & 32) && !$7(qe) && !Kj(qe.parent) ? se : ue(qe) ? (_i(ve), sh(F, qe, ve)) : ve : F & 32 ? ve : se;
      }
      function Li(F, ve, qe, Bt) {
        return _i(F), sh(128, {
          switchStatement: ve,
          clauseStart: qe,
          clauseEnd: Bt
        }, F);
      }
      function ri(F, ve, qe) {
        _i(ve), z = !0;
        const Bt = sh(F, qe, ve);
        return N && Gr(N, Bt), Bt;
      }
      function Zr(F, ve) {
        return _i(F), z = !0, sh(512, ve, F);
      }
      function ni(F) {
        const ve = F.antecedent;
        return ve ? ve.length === 1 ? ve[0] : F : se;
      }
      function ra(F) {
        const ve = F.parent;
        switch (ve.kind) {
          case 246:
          case 248:
          case 247:
            return ve.expression === F;
          case 249:
          case 228:
            return ve.condition === F;
        }
        return !1;
      }
      function Me(F) {
        for (; ; ) if (F.kind === 218) F = F.expression;
        else if (F.kind === 225 && F.operator === 54) F = F.operand;
        else return DA(F);
      }
      function vt(F) {
        return xJ(Gs(F));
      }
      function tr(F) {
        for (; E_(F.parent) || kv(F.parent) && F.parent.operator === 54; ) F = F.parent;
        return !ra(F) && !Me(F.parent) && !(Vu(F.parent) && F.parent.expression === F);
      }
      function Ur(F, ve, qe, Bt) {
        const Rr = D, cn = P;
        D = qe, P = Bt, F(ve), D = Rr, P = cn;
      }
      function $n(F, ve, qe) {
        Ur(St, F, ve, qe), (!F || !vt(F) && !Me(F) && !(Vu(F) && V4(F))) && (Gr(ve, Nt(32, h, F)), Gr(qe, Nt(64, h, F)));
      }
      function zn(F, ve, qe) {
        const Bt = S, Rr = T;
        S = ve, T = qe, St(F), S = Bt, T = Rr;
      }
      function na(F, ve) {
        let qe = R;
        for (; qe && F.parent.kind === 257; )
          qe.continueTarget = ve, qe = qe.next, F = F.parent;
        return ve;
      }
      function Ea(F) {
        const ve = na(F, Kt()), qe = Ct(), Bt = Ct();
        Gr(ve, h), h = ve, $n(F.expression, qe, Bt), h = ni(qe), zn(F.statement, Bt, ve), Gr(ve, h), h = ni(Bt);
      }
      function Da(F) {
        const ve = Kt(), qe = na(F, Ct()), Bt = Ct();
        Gr(ve, h), h = ve, zn(F.statement, Bt, qe), Gr(qe, h), h = ni(qe), $n(F.expression, ve, Bt), h = ni(Bt);
      }
      function Lr(F) {
        const ve = na(F, Kt()), qe = Ct(), Bt = Ct(), Rr = Ct();
        St(F.initializer), Gr(ve, h), h = ve, $n(F.condition, qe, Rr), h = ni(qe), zn(F.statement, Rr, Bt), Gr(Bt, h), h = ni(Bt), St(F.incrementor), Gr(ve, h), h = ni(Rr);
      }
      function ha(F) {
        const ve = na(F, Kt()), qe = Ct();
        St(F.expression), Gr(ve, h), h = ve, F.kind === 251 && St(F.awaitModifier), Gr(qe, h), St(F.initializer), F.initializer.kind !== 262 && Ve(F.initializer), zn(F.statement, qe, ve), Gr(ve, h), h = ni(qe);
      }
      function Ye(F) {
        const ve = Ct(), qe = Ct(), Bt = Ct();
        $n(F.expression, ve, qe), h = ni(ve), St(F.thenStatement), Gr(Bt, h), h = ni(qe), St(F.elseStatement), Gr(Bt, h), h = ni(Bt);
      }
      function Pt(F) {
        const ve = L;
        L = !0, St(F.expression), L = ve, F.kind === 254 && (G = !0, k && Gr(k, h)), h = se, z = !0;
      }
      function ne(F) {
        for (let ve = R; ve; ve = ve.next) if (ve.name === F) return ve;
      }
      function tt(F, ve, qe) {
        const Bt = F.kind === 253 ? ve : qe;
        Bt && (Gr(Bt, h), h = se, z = !0);
      }
      function re(F) {
        if (St(F.label), F.label) {
          const ve = ne(F.label.escapedText);
          ve && (ve.referenced = !0, tt(F, ve.breakTarget, ve.continueTarget));
        } else tt(F, S, T);
      }
      function we(F) {
        const ve = k, qe = N, Bt = Ct(), Rr = Ct();
        let cn = Ct();
        if (F.finallyBlock && (k = Rr), Gr(cn, h), N = cn, St(F.tryBlock), Gr(Bt, h), F.catchClause && (h = ni(cn), cn = Ct(), Gr(cn, h), N = cn, St(F.catchClause), Gr(Bt, h)), k = ve, N = qe, F.finallyBlock) {
          const dr = Ct();
          dr.antecedent = zi(zi(Bt.antecedent, cn.antecedent), Rr.antecedent), h = dr, St(F.finallyBlock), h.flags & 1 ? h = se : (k && Rr.antecedent && Gr(k, zr(dr, Rr.antecedent, h)), N && cn.antecedent && Gr(N, zr(dr, cn.antecedent, h)), h = Bt.antecedent ? zr(dr, Bt.antecedent, h) : se);
        } else h = ni(Bt);
      }
      function Ge(F) {
        const ve = Ct();
        St(F.expression);
        const qe = S, Bt = M;
        S = ve, M = h, St(F.caseBlock), Gr(ve, h);
        const Rr = bt(F.caseBlock.clauses, (cn) => cn.kind === 298);
        F.possiblyExhaustive = !Rr && !ve.antecedent, Rr || Gr(ve, Li(M, F, 0, 0)), S = qe, M = Bt, h = ni(ve);
      }
      function nt(F) {
        const ve = F.clauses, qe = F.parent.expression.kind === 112 || ue(F.parent.expression);
        let Bt = se;
        for (let Rr = 0; Rr < ve.length; Rr++) {
          const cn = Rr;
          for (; !ve[Rr].statements.length && Rr + 1 < ve.length; )
            Bt === se && (h = M), St(ve[Rr]), Rr++;
          const dr = Ct();
          Gr(dr, qe ? Li(M, F.parent, cn, Rr + 1) : M), Gr(dr, Bt), h = ni(dr);
          const Cn = ve[Rr];
          St(Cn), Bt = h, !(h.flags & 1) && Rr !== ve.length - 1 && t.noFallthroughCasesInSwitch && (Cn.fallthroughFlowNode = h);
        }
      }
      function it(F) {
        const ve = h;
        h = M, St(F.expression), h = ve, ke(F.statements);
      }
      function ut(F) {
        St(F.expression), Qe(F.expression);
      }
      function Qe(F) {
        if (F.kind === 214) {
          const ve = F;
          ve.expression.kind !== 108 && wA(ve.expression) && (h = Zr(h, ve));
        }
      }
      function xt(F) {
        const ve = Ct();
        R = {
          next: R,
          name: F.label.escapedText,
          breakTarget: ve,
          continueTarget: void 0,
          referenced: !1
        }, St(F.label), St(F.statement), R.referenced || (F.label.flags |= 1073741824), R = R.next, Gr(ve, h), h = ni(ve);
      }
      function Dt(F) {
        F.kind === 227 && F.operatorToken.kind === 64 ? Ve(F.left) : Ve(F);
      }
      function Ve(F) {
        if (Ie(F)) h = ri(16, h, F);
        else if (F.kind === 210) for (const ve of F.elements) ve.kind === 231 ? Ve(ve.expression) : Dt(ve);
        else if (F.kind === 211)
          for (const ve of F.properties) ve.kind === 304 ? Dt(ve.initializer) : ve.kind === 305 ? Ve(ve.name) : ve.kind === 306 && Ve(ve.expression);
      }
      function fr(F, ve, qe) {
        const Bt = Ct();
        F.operatorToken.kind === 56 || F.operatorToken.kind === 77 ? $n(F.left, Bt, qe) : $n(F.left, ve, Bt), h = ni(Bt), St(F.operatorToken), kD(F.operatorToken.kind) ? (Ur(St, F.right, ve, qe), Ve(F.left), Gr(ve, Nt(32, h, F)), Gr(qe, Nt(64, h, F))) : $n(F.right, ve, qe);
      }
      function rr(F) {
        if (F.operator === 54) {
          const ve = D;
          D = P, P = ve, ae(F), P = D, D = ve;
        } else
          ae(F), (F.operator === 46 || F.operator === 47) && Ve(F.operand);
      }
      function Oe(F) {
        ae(F), (F.operator === 46 || F.operator === 47) && Ve(F.operand);
      }
      function rt(F) {
        pe ? (pe = !1, St(F.operatorToken), St(F.right), pe = !0, St(F.left)) : (pe = !0, St(F.left), pe = !1, St(F.operatorToken), St(F.right)), Ve(F.left);
      }
      function ee() {
        return pF(F, ve, qe, Bt, Rr, void 0);
        function F(dr, Cn) {
          if (Cn) {
            Cn.stackIndex++, eo(dr, i);
            const ji = U;
            ai(dr);
            const Fc = i;
            i = dr, Cn.skip = !1, Cn.inStrictModeStack[Cn.stackIndex] = ji, Cn.parentStack[Cn.stackIndex] = Fc;
          } else Cn = {
            stackIndex: 0,
            skip: !1,
            inStrictModeStack: [void 0],
            parentStack: [void 0]
          };
          const fs = dr.operatorToken.kind;
          if (tO(fs) || kD(fs)) {
            if (tr(dr)) {
              const ji = Ct(), Fc = h, Ul = z;
              z = !1, fr(dr, ji, ji), h = z ? ni(ji) : Fc, z || (z = Ul);
            } else fr(dr, D, P);
            Cn.skip = !0;
          }
          return Cn;
        }
        function ve(dr, Cn, fs) {
          if (!Cn.skip) {
            const ji = cn(dr);
            return fs.operatorToken.kind === 28 && Qe(dr), ji;
          }
        }
        function qe(dr, Cn, fs) {
          Cn.skip || St(dr);
        }
        function Bt(dr, Cn, fs) {
          if (!Cn.skip) {
            const ji = cn(dr);
            return fs.operatorToken.kind === 28 && Qe(dr), ji;
          }
        }
        function Rr(dr, Cn) {
          if (!Cn.skip) {
            const Fc = dr.operatorToken.kind;
            if (Uh(Fc) && !Qy(dr) && (Ve(dr.left), Fc === 64 && dr.left.kind === 213)) {
              const Ul = dr.left;
              Ar(Ul.expression) && (h = ri(256, h, dr));
            }
          }
          const fs = Cn.inStrictModeStack[Cn.stackIndex], ji = Cn.parentStack[Cn.stackIndex];
          fs !== void 0 && (U = fs), ji !== void 0 && (i = ji), Cn.skip = !1, Cn.stackIndex--;
        }
        function cn(dr) {
          if (dr && un(dr) && !A0(dr)) return dr;
          St(dr);
        }
      }
      function q(F) {
        ae(F), F.expression.kind === 212 && Ve(F.expression);
      }
      function j(F) {
        const ve = Ct(), qe = Ct(), Bt = Ct(), Rr = h, cn = z;
        z = !1, $n(F.condition, ve, qe), h = ni(ve), L && (F.flowNodeWhenTrue = h), St(F.questionToken), St(F.whenTrue), Gr(Bt, h), h = ni(qe), L && (F.flowNodeWhenFalse = h), St(F.colonToken), St(F.whenFalse), Gr(Bt, h), h = z ? ni(Bt) : Rr, z || (z = cn);
      }
      function Re(F) {
        const ve = Al(F) ? void 0 : F.name;
        if (Ja(ve)) for (const qe of ve.elements) Re(qe);
        else h = ri(16, h, F);
      }
      function $e(F) {
        ae(F), (F.initializer || wb(F.parent.parent)) && Re(F);
      }
      function ye(F) {
        St(F.dotDotDotToken), St(F.propertyName), pr(F.initializer), St(F.name);
      }
      function Ke(F) {
        ke(F.modifiers), St(F.dotDotDotToken), St(F.questionToken), St(F.type), pr(F.initializer), St(F.name);
      }
      function pr(F) {
        if (!F) return;
        const ve = h;
        if (St(F), ve === se || ve === h) return;
        const qe = Ct();
        Gr(qe, ve), Gr(qe, h), h = ni(qe);
      }
      function Pr(F) {
        St(F.tagName), F.kind !== 341 && F.fullName && (eo(F.fullName, F), bv(F.fullName, !1)), typeof F.comment != "string" && ke(F.comment);
      }
      function vr(F) {
        ae(F);
        const ve = fv(F);
        ve && ve.kind !== 175 && Be(ve.symbol, ve, 32);
      }
      function fn(F) {
        St(F.tagName), St(F.moduleSpecifier), St(F.attributes), typeof F.comment != "string" && ke(F.comment);
      }
      function Cr(F, ve, qe) {
        Ur(St, F, ve, qe), (!Vu(F) || V4(F)) && (Gr(ve, Nt(32, h, F)), Gr(qe, Nt(64, h, F)));
      }
      function et(F) {
        switch (F.kind) {
          case 212:
            St(F.questionDotToken), St(F.name);
            break;
          case 213:
            St(F.questionDotToken), St(F.argumentExpression);
            break;
          case 214:
            St(F.questionDotToken), ke(F.typeArguments), ke(F.arguments);
            break;
        }
      }
      function kt(F, ve, qe) {
        const Bt = U4(F) ? Ct() : void 0;
        Cr(F.expression, Bt || ve, qe), Bt && (h = ni(Bt)), Ur(et, F, ve, qe), V4(F) && (Gr(ve, Nt(32, h, F)), Gr(qe, Nt(64, h, F)));
      }
      function wt(F) {
        if (tr(F)) {
          const ve = Ct(), qe = h, Bt = z;
          kt(F, ve, ve), h = z ? ni(ve) : qe, z || (z = Bt);
        } else kt(F, D, P);
      }
      function qt(F) {
        Vu(F) ? wt(F) : ae(F);
      }
      function Ir(F) {
        Vu(F) ? wt(F) : ae(F);
      }
      function Yt(F) {
        if (Vu(F)) wt(F);
        else {
          const ve = Gs(F.expression);
          ve.kind === 219 || ve.kind === 220 ? (ke(F.typeArguments), ke(F.arguments), St(F.expression)) : (ae(F), F.expression.kind === 108 && (h = Zr(h, F)));
        }
        if (F.expression.kind === 212) {
          const ve = F.expression;
          Fe(ve.name) && Ar(ve.expression) && aJ(ve.name) && (h = ri(256, h, F));
        }
      }
      function Jt(F) {
        _ && (_.nextContainer = F), _ = F;
      }
      function $t(F, ve, qe) {
        switch (a.kind) {
          case 268:
            return Ae(F, ve, qe);
          case 308:
            return ct(F, ve, qe);
          case 232:
          case 264:
            return Qt(F, ve, qe);
          case 267:
            return ge(a.symbol.exports, a.symbol, F, ve, qe);
          case 188:
          case 323:
          case 211:
          case 265:
          case 293:
            return ge(a.symbol.members, a.symbol, F, ve, qe);
          case 185:
          case 186:
          case 180:
          case 181:
          case 324:
          case 182:
          case 175:
          case 174:
          case 177:
          case 178:
          case 179:
          case 263:
          case 219:
          case 220:
          case 318:
          case 176:
          case 266:
          case 201:
            return a.locals && E.assertNode(a, og), ge(a.locals, void 0, F, ve, qe);
        }
      }
      function Qt(F, ve, qe) {
        return es(F) ? ge(a.symbol.exports, a.symbol, F, ve, qe) : ge(a.symbol.members, a.symbol, F, ve, qe);
      }
      function ct(F, ve, qe) {
        return Sl(e) ? Ae(F, ve, qe) : ge(e.locals, void 0, F, ve, qe);
      }
      function wn(F) {
        const ve = Pi(F) ? F : qn(F.body, Vd);
        return !!ve && ve.statements.some((qe) => tl(qe) || Xo(qe));
      }
      function Mi(F) {
        F.flags & 33554432 && !wn(F) ? F.flags |= 128 : F.flags &= -129;
      }
      function os(F) {
        if (Mi(F), o_(F))
          if (Qn(F, 32) && lt(F, p.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible), DB(F)) cs(F);
          else {
            let ve;
            if (F.name.kind === 11) {
              const { text: Bt } = F.name;
              ve = Zx(Bt), ve === void 0 && lt(F.name, p.Pattern_0_can_have_at_most_one_Asterisk_character, Bt);
            }
            const qe = $t(F, 512, 110735);
            e.patternAmbientModules = kr(e.patternAmbientModules, ve && !Ta(ve) ? {
              pattern: ve,
              symbol: qe
            } : void 0);
          }
        else {
          const ve = cs(F);
          if (ve !== 0) {
            const { symbol: qe } = F;
            qe.constEnumOnlyModule = !(qe.flags & 304) && ve === 2 && qe.constEnumOnlyModule !== !1;
          }
        }
      }
      function cs(F) {
        const ve = m1(F), qe = ve !== 0;
        return $t(F, qe ? 512 : 1024, qe ? 110735 : 0), ve;
      }
      function xa(F) {
        const ve = Se(131072, ce(F));
        Be(ve, F, 131072);
        const qe = Se(2048, "__type");
        Be(qe, F, 2048), qe.members = Ka(), qe.members.set(ve.escapedName, ve);
      }
      function oo(F) {
        return ja(F, 4096, "__object");
      }
      function To(F) {
        return ja(F, 4096, "__jsxAttributes");
      }
      function ia(F, ve, qe) {
        return $t(F, ve, qe);
      }
      function ja(F, ve, qe) {
        const Bt = Se(ve, qe);
        return ve & 106508 && (Bt.parent = a.symbol), Be(Bt, F, ve), Bt;
      }
      function _o(F, ve, qe) {
        switch (c.kind) {
          case 268:
            Ae(F, ve, qe);
            break;
          case 308:
            if (gf(a)) {
              Ae(F, ve, qe);
              break;
            }
          default:
            E.assertNode(c, og), c.locals || (c.locals = Ka(), Jt(c)), ge(c.locals, void 0, F, ve, qe);
        }
      }
      function Yc() {
        if (!u) return;
        const F = a, ve = _, qe = c, Bt = i, Rr = h;
        for (const cn of u) {
          const dr = cn.parent.parent;
          a = h5(dr) || e, c = Bd(dr) || e, h = sh(2, void 0, void 0), i = cn, St(cn.typeExpression);
          const Cn = va(cn);
          if ((lN(cn) || !cn.fullName) && Cn && PA(Cn.parent)) {
            const fs = Wf(Cn.parent);
            if (fs) {
              Il(e.symbol, Cn.parent, fs, !!cr(Cn, (Fc) => Ln(Fc) && Fc.name.escapedText === "prototype"), !1);
              const ji = a;
              switch (lA(Cn.parent)) {
                case 1:
                case 2:
                  gf(e) ? a = e : a = void 0;
                  break;
                case 4:
                  a = Cn.parent.expression;
                  break;
                case 3:
                  a = Cn.parent.expression.name;
                  break;
                case 5:
                  a = t2(e, Cn.parent.expression) ? e : Ln(Cn.parent.expression) ? Cn.parent.expression.name : Cn.parent.expression;
                  break;
                case 0:
                  return E.fail("Shouldn't have detected typedef or enum on non-assignment declaration");
              }
              a && Ae(cn, 524288, 788968), a = ji;
            }
          } else lN(cn) || !cn.fullName || cn.fullName.kind === 80 ? (i = cn.parent, _o(cn, 524288, 788968)) : St(cn.fullName);
        }
        a = F, _ = ve, c = qe, i = Bt, h = Rr;
      }
      function Ou() {
        if (g === void 0) return;
        const F = a, ve = _, qe = c, Bt = i, Rr = h;
        for (const cn of g) {
          const dr = Fb(cn), Cn = dr ? h5(dr) : void 0, fs = dr ? Bd(dr) : void 0;
          a = Cn || e, c = fs || e, h = sh(2, void 0, void 0), i = cn, St(cn.importClause);
        }
        a = F, _ = ve, c = qe, i = Bt, h = Rr;
      }
      function _c(F) {
        if (!e.parseDiagnostics.length && !(F.flags & 33554432) && !(F.flags & 16777216) && !GK(F)) {
          const ve = lS(F);
          if (ve === void 0) return;
          U && ve >= 119 && ve <= 127 ? e.bindDiagnostics.push(fe(F, xl(F), Do(F))) : ve === 135 ? Sl(e) && D5(F) ? e.bindDiagnostics.push(fe(F, p.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module, Do(F))) : F.flags & 65536 && e.bindDiagnostics.push(fe(F, p.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here, Do(F))) : ve === 127 && F.flags & 16384 && e.bindDiagnostics.push(fe(F, p.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here, Do(F)));
        }
      }
      function xl(F) {
        return nu(F) ? p.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode : e.externalModuleIndicator ? p.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode : p.Identifier_expected_0_is_a_reserved_word_in_strict_mode;
      }
      function fa(F) {
        F.escapedText === "#constructor" && (e.parseDiagnostics.length || e.bindDiagnostics.push(fe(F, p.constructor_is_a_reserved_word, Do(F))));
      }
      function $a(F) {
        U && j_(F.left) && Uh(F.operatorToken.kind) && Mo(F, F.left);
      }
      function Yi(F) {
        U && F.variableDeclaration && Mo(F, F.variableDeclaration.name);
      }
      function Is(F) {
        if (U && F.expression.kind === 80) {
          const ve = gS(e, F.expression);
          e.bindDiagnostics.push(wl(e, ve.start, ve.length, p.delete_cannot_be_called_on_an_identifier_in_strict_mode));
        }
      }
      function Zt(F) {
        return Fe(F) && (F.escapedText === "eval" || F.escapedText === "arguments");
      }
      function Mo(F, ve) {
        if (ve && ve.kind === 80) {
          const qe = ve;
          if (Zt(qe)) {
            const Bt = gS(e, ve);
            e.bindDiagnostics.push(wl(e, Bt.start, Bt.length, ou(F), On(qe)));
          }
        }
      }
      function ou(F) {
        return nu(F) ? p.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode : e.externalModuleIndicator ? p.Invalid_use_of_0_Modules_are_automatically_in_strict_mode : p.Invalid_use_of_0_in_strict_mode;
      }
      function Wl(F) {
        U && !(F.flags & 33554432) && Mo(F, F.name);
      }
      function bu(F) {
        return nu(F) ? p.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode : e.externalModuleIndicator ? p.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode : p.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5;
      }
      function Ma(F) {
        if (n < 2 && c.kind !== 308 && c.kind !== 268 && !YC(c)) {
          const ve = gS(e, F);
          e.bindDiagnostics.push(wl(e, ve.start, ve.length, bu(F)));
        }
      }
      function ac(F) {
        U && Mo(F, F.operand);
      }
      function Qo(F) {
        U && (F.operator === 46 || F.operator === 47) && Mo(F, F.operand);
      }
      function I(F) {
        U && lt(F, p.with_statements_are_not_allowed_in_strict_mode);
      }
      function je(F) {
        U && Ps(t) >= 2 && (WZ(F.statement) || $c(F.statement)) && lt(F.label, p.A_label_is_not_allowed_here);
      }
      function lt(F, ve, ...qe) {
        const Bt = _g(e, F.pos);
        e.bindDiagnostics.push(wl(e, Bt.start, Bt.length, ve, ...qe));
      }
      function St(F) {
        if (!F) return;
        eo(F, i), sn && (F.tracingPath = e.path);
        const ve = U;
        if (ai(F), F.kind > 166) {
          const qe = i;
          i = F;
          const Bt = BW(F);
          Bt === 0 ? Ce(F) : ot(F, Bt), i = qe;
        } else {
          const qe = i;
          F.kind === 1 && (i = F), jr(F), i = qe;
        }
        U = ve;
      }
      function jr(F) {
        if (Jf(F)) if (rn(F)) for (const ve of F.jsDoc) St(ve);
        else for (const ve of F.jsDoc)
          eo(ve, F), bv(ve, !1);
      }
      function Bn(F) {
        if (!U) for (const ve of F) {
          if (!bm(ve)) return;
          if (tn(ve)) {
            U = !0;
            return;
          }
        }
      }
      function tn(F) {
        const ve = Pb(e, F.expression);
        return ve === '"use strict"' || ve === "'use strict'";
      }
      function ai(F) {
        switch (F.kind) {
          case 80:
            if (F.flags & 4096) {
              let Bt = F.parent;
              for (; Bt && !$p(Bt); ) Bt = Bt.parent;
              _o(Bt, 524288, 788968);
              break;
            }
          case 110:
            return F.kind === 110 && (d = !0), h && (dt(F) || i.kind === 305) && (F.flowNode = h), _c(F);
          case 167:
            h && N5(F) && (F.flowNode = h);
            break;
          case 237:
          case 108:
            F.flowNode = h;
            break;
          case 81:
            return fa(F);
          case 212:
          case 213:
            const ve = F;
            h && Ie(ve) && (ve.flowNode = h), MK(ve) && Js(ve), rn(ve) && e.commonJsModuleIndicator && $g(ve) && !WF(c, "module") && ge(e.locals, void 0, ve.expression, 134217729, 111550);
            break;
          case 227:
            switch (qc(F)) {
              case 1:
                rf(F);
                break;
              case 2:
                Ip(F);
                break;
              case 3:
                Oc(F.left, F);
                break;
              case 6:
                io(F);
                break;
              case 4:
                jt(F);
                break;
              case 5:
                const Bt = F.left.expression;
                if (rn(F) && Fe(Bt)) {
                  const Rr = WF(c, Bt.escapedText);
                  if (w5(Rr?.valueDeclaration)) {
                    jt(F);
                    break;
                  }
                }
                zs(F);
                break;
              case 0:
                break;
              default:
                E.fail("Unknown binary expression special property assignment kind");
            }
            return $a(F);
          case 300:
            return Yi(F);
          case 221:
            return Is(F);
          case 226:
            return ac(F);
          case 225:
            return Qo(F);
          case 255:
            return I(F);
          case 257:
            return je(F);
          case 198:
            d = !0;
            return;
          case 183:
            break;
          case 169:
            return Rt(F);
          case 170:
            return A_(F);
          case 261:
            return nf(F);
          case 209:
            return F.flowNode = h, nf(F);
          case 173:
          case 172:
            return ei(F);
          case 304:
          case 305:
            return Z(F, 4, 0);
          case 307:
            return Z(F, 8, 900095);
          case 180:
          case 181:
          case 182:
            return $t(F, 131072, 0);
          case 175:
          case 174:
            return Z(F, 8192 | (F.questionToken ? 16777216 : 0), Hp(F) ? 0 : 103359);
          case 263:
            return t0(F);
          case 177:
            return $t(F, 16384, 0);
          case 178:
            return Z(F, 32768, 46015);
          case 179:
            return Z(F, 65536, 78783);
          case 185:
          case 318:
          case 324:
          case 186:
            return xa(F);
          case 188:
          case 323:
          case 201:
            return La(F);
          case 333:
            return vr(F);
          case 211:
            return oo(F);
          case 219:
          case 220:
            return Uf(F);
          case 214:
            switch (qc(F)) {
              case 7:
                return Dc(F);
              case 8:
                return Su(F);
              case 9:
                return Qs(F);
              case 0:
                break;
              default:
                return E.fail("Unknown call expression assignment declaration kind");
            }
            rn(F) && em(F);
            break;
          case 232:
          case 264:
            return U = !0, e0(F);
          case 265:
            return _o(F, 64, 788872);
          case 266:
            return _o(F, 524288, 788968);
          case 267:
            return Fu(F);
          case 268:
            return os(F);
          case 293:
            return To(F);
          case 292:
            return ia(F, 4, 0);
          case 272:
          case 275:
          case 277:
          case 282:
            return $t(F, 2097152, 2097152);
          case 271:
            return ml(F);
          case 274:
            return Os(F);
          case 279:
            return gl(F);
          case 278:
            return vc(F);
          case 308:
            return Bn(F.statements), ds();
          case 242:
            if (!YC(F.parent)) return;
          case 269:
            return Bn(F.statements);
          case 342:
            if (F.parent.kind === 324) return A_(F);
            if (F.parent.kind !== 323) break;
          case 349:
            const qe = F;
            return $t(qe, qe.isBracketed || qe.typeExpression && qe.typeExpression.type.kind === 317 ? 16777220 : 4, 0);
          case 347:
          case 339:
          case 341:
            return (u || (u = [])).push(F);
          case 340:
            return St(F.typeExpression);
          case 352:
            return (g || (g = [])).push(F);
        }
      }
      function ei(F) {
        const ve = R_(F), qe = ve ? 98304 : 4, Bt = ve ? 13247 : 0;
        return Z(F, qe | (F.questionToken ? 16777216 : 0), Bt);
      }
      function La(F) {
        return ja(F, 2048, "__type");
      }
      function ds() {
        if (Mi(e), Sl(e)) cl();
        else if (Tp(e)) {
          cl();
          const F = e.symbol;
          ge(e.symbol.exports, e.symbol, e, 4, -1), e.symbol = F;
        }
      }
      function cl() {
        ja(e, 512, `"${__(e.fileName)}"`);
      }
      function vc(F) {
        if (!a.symbol || !a.symbol.exports) ja(F, 111551, ce(F));
        else {
          const ve = yA(F) ? 2097152 : 4, qe = ge(a.symbol.exports, a.symbol, F, ve, -1);
          F.isExportEquals && _D(qe, F);
        }
      }
      function ml(F) {
        _t(F.modifiers) && e.bindDiagnostics.push(fe(F, p.Modifiers_cannot_appear_here));
        const ve = Pi(F.parent) ? Sl(F.parent) ? F.parent.isDeclarationFile ? void 0 : p.Global_module_exports_may_only_appear_in_declaration_files : p.Global_module_exports_may_only_appear_in_module_files : p.Global_module_exports_may_only_appear_at_top_level;
        ve ? e.bindDiagnostics.push(fe(F, ve)) : (e.symbol.globalExports = e.symbol.globalExports || Ka(), ge(e.symbol.globalExports, e.symbol, F, 2097152, 2097152));
      }
      function gl(F) {
        !a.symbol || !a.symbol.exports ? ja(F, 8388608, ce(F)) : F.exportClause ? gg(F.exportClause) && (eo(F.exportClause, F), ge(a.symbol.exports, a.symbol, F.exportClause, 2097152, 2097152)) : ge(a.symbol.exports, a.symbol, F, 8388608, 0);
      }
      function Os(F) {
        F.name && $t(F, 2097152, 2097152);
      }
      function Ao(F) {
        return e.externalModuleIndicator && e.externalModuleIndicator !== !0 ? !1 : (e.commonJsModuleIndicator || (e.commonJsModuleIndicator = F, e.externalModuleIndicator || cl()), !0);
      }
      function Su(F) {
        if (!Ao(F)) return;
        const ve = Kd(F.arguments[0], void 0, (qe, Bt) => (Bt && Be(Bt, qe, 67110400), Bt));
        ve && ge(ve.exports, ve, F, 1048580, 0);
      }
      function rf(F) {
        if (!Ao(F)) return;
        const ve = Kd(F.left.expression, void 0, (qe, Bt) => (Bt && Be(Bt, qe, 67110400), Bt));
        if (ve) {
          const qe = B5(F.right) && (vS(F.left.expression) || $g(F.left.expression)) ? 2097152 : 1048580;
          eo(F.left, F), ge(ve.exports, ve, F.left, qe, 0);
        }
      }
      function Ip(F) {
        if (!Ao(F)) return;
        const ve = oA(F.right);
        if (DJ(ve) || a === e && t2(e, ve)) return;
        if (bs(ve) && hr(ve.properties, Nu)) {
          bt(ve.properties, Pe);
          return;
        }
        const qe = yA(F) ? 2097152 : 1049092;
        _D(ge(e.symbol.exports, e.symbol, F, qe | 67108864, 0), F);
      }
      function Pe(F) {
        ge(e.symbol.exports, e.symbol, F, 69206016, 0);
      }
      function jt(F) {
        if (E.assert(rn(F)), un(F) && Ln(F.left) && Oi(F.left.name) || Ln(F) && Oi(F.name)) return;
        const ve = c_(F, !1, !1);
        switch (ve.kind) {
          case 263:
          case 219:
            let qe = ve.symbol;
            if (un(ve.parent) && ve.parent.operatorToken.kind === 64) {
              const cn = ve.parent.left;
              Ob(cn) && Ky(cn.expression) && (qe = ll(cn.expression.expression, o));
            }
            qe && qe.valueDeclaration && (qe.members = qe.members || Ka(), zh(F) ? Yr(F, qe, qe.members) : ge(qe.members, qe, F, 67108868, 0), Be(qe, qe.valueDeclaration, 32));
            break;
          case 177:
          case 173:
          case 175:
          case 178:
          case 179:
          case 176:
            const Bt = ve.parent, Rr = es(ve) ? Bt.symbol.exports : Bt.symbol.members;
            zh(F) ? Yr(F, Bt.symbol, Rr) : ge(Rr, Bt.symbol, F, 67108868, 0, !0);
            break;
          case 308:
            if (zh(F)) break;
            ve.commonJsModuleIndicator ? ge(ve.symbol.exports, ve.symbol, F, 1048580, 0) : $t(F, 1, 111550);
            break;
          case 268:
            break;
          default:
            E.failBadSyntaxKind(ve);
        }
      }
      function Yr(F, ve, qe) {
        ge(qe, ve, F, 4, 0, !0, !0), Hi(F, ve);
      }
      function Hi(F, ve) {
        ve && (ve.assignmentDeclarationMembers || (ve.assignmentDeclarationMembers = /* @__PURE__ */ new Map())).set(Hs(F), F);
      }
      function Js(F) {
        F.expression.kind === 110 ? jt(F) : Ob(F) && F.parent.parent.kind === 308 && (Ky(F.expression) ? Oc(F, F.parent) : bc(F));
      }
      function io(F) {
        eo(F.left, F), eo(F.right, F), id(F.left.expression, F.left, !1, !0);
      }
      function Qs(F) {
        const ve = ll(F.arguments[0].expression);
        ve && ve.valueDeclaration && Be(ve, ve.valueDeclaration, 32), Op(F, ve, !0);
      }
      function Oc(F, ve) {
        const qe = F.expression, Bt = qe.expression;
        eo(Bt, qe), eo(qe, F), eo(F, ve), id(Bt, F, !0, !0);
      }
      function Dc(F) {
        let ve = ll(F.arguments[0]);
        const qe = F.parent.parent.kind === 308;
        ve = Il(ve, F.arguments[0], qe, !1, !1), Op(F, ve, !1);
      }
      function zs(F) {
        var ve;
        const qe = ll(F.left.expression, c) || ll(F.left.expression, a);
        if (!rn(F) && !RK(qe)) return;
        const Bt = Hx(F.left);
        Fe(Bt) && ((ve = WF(a, Bt.escapedText)) == null ? void 0 : ve.flags) & 2097152 || (eo(F.left, F), eo(F.right, F), Fe(F.left.expression) && a === e && t2(e, F.left.expression) ? rf(F) : zh(F) ? (ja(F, 67108868, "__computed"), Hi(F, Il(qe, F.left.expression, Wf(F.left), !1, !1))) : bc(ns(F.left, SS)));
      }
      function bc(F) {
        E.assert(!Fe(F)), eo(F.expression, F), id(F.expression, F, !1, !1);
      }
      function Il(F, ve, qe, Bt, Rr) {
        return F?.flags & 2097152 || (qe && !Bt && (F = Kd(ve, F, (Cn, fs, ji) => fs ? (Be(fs, Cn, 67110400), fs) : ge(ji ? ji.exports : e.jsGlobalAugmentations || (e.jsGlobalAugmentations = Ka()), ji, Cn, 67110400, 110735))), Rr && F && F.valueDeclaration && Be(F, F.valueDeclaration, 32)), F;
      }
      function Op(F, ve, qe) {
        if (!ve || !ad(ve)) return;
        const Bt = qe ? ve.members || (ve.members = Ka()) : ve.exports || (ve.exports = Ka());
        let Rr = 0, cn = 0;
        So(Ox(F)) ? (Rr = 8192, cn = 103359) : za(F) && bS(F) && (_t(F.arguments[2].properties, (dr) => {
          const Cn = va(dr);
          return !!Cn && Fe(Cn) && On(Cn) === "set";
        }) && (Rr |= 65540, cn |= 78783), _t(F.arguments[2].properties, (dr) => {
          const Cn = va(dr);
          return !!Cn && Fe(Cn) && On(Cn) === "get";
        }) && (Rr |= 32772, cn |= 46015)), Rr === 0 && (Rr = 4, cn = 0), ge(Bt, ve, F, Rr | 67108864, cn & -67108865);
      }
      function Wf(F) {
        return un(F.parent) ? hl(F.parent).parent.kind === 308 : F.parent.parent.kind === 308;
      }
      function id(F, ve, qe, Bt) {
        let Rr = ll(F, c) || ll(F, a);
        const cn = Wf(ve);
        Rr = Il(Rr, ve.expression, cn, qe, Bt), Op(ve, Rr, qe);
      }
      function ad(F) {
        if (F.flags & 1072) return !0;
        const ve = F.valueDeclaration;
        if (ve && za(ve)) return !!Ox(ve);
        let qe = ve ? ci(ve) ? ve.initializer : un(ve) ? ve.right : Ln(ve) && un(ve.parent) ? ve.parent.right : void 0 : void 0;
        if (qe = qe && oA(qe), qe) {
          const Bt = Ky(ci(ve) ? ve.name : un(ve) ? ve.left : ve);
          return !!_v(un(qe) && (qe.operatorToken.kind === 57 || qe.operatorToken.kind === 61) ? qe.right : qe, Bt);
        }
        return !1;
      }
      function hl(F) {
        for (; un(F.parent); ) F = F.parent;
        return F.parent;
      }
      function ll(F, ve = a) {
        if (Fe(F)) return WF(ve, F.escapedText);
        {
          const qe = ll(F.expression);
          return qe && qe.exports && qe.exports.get(Jh(F));
        }
      }
      function Kd(F, ve, qe) {
        if (t2(e, F)) return e.symbol;
        if (Fe(F)) return qe(F, ll(F), ve);
        {
          const Bt = Kd(F.expression, ve, qe), Rr = cA(F);
          return Oi(Rr) && E.fail("unexpected PrivateIdentifier"), qe(Rr, Bt && Bt.exports && Bt.exports.get(Jh(F)), Bt);
        }
      }
      function em(F) {
        !e.commonJsModuleIndicator && J_(F, !1) && Ao(F);
      }
      function e0(F) {
        F.kind === 264 ? _o(F, 32, 899503) : (ja(F, 32, F.name ? F.name.escapedText : "__class"), F.name && Q.add(F.name.escapedText));
        const { symbol: ve } = F, qe = Se(4194308, "prototype"), Bt = ve.exports.get(qe.escapedName);
        Bt && (F.name && eo(F.name, F), e.bindDiagnostics.push(fe(Bt.declarations[0], p.Duplicate_identifier_0, kc(qe)))), ve.exports.set(qe.escapedName, qe), qe.parent = ve;
      }
      function Fu(F) {
        return cv(F) ? _o(F, 128, 899967) : _o(F, 256, 899327);
      }
      function nf(F) {
        if (U && Mo(F, F.name), !Ja(F.name)) {
          const ve = F.kind === 261 ? F : F.parent.parent;
          rn(F) && $y(ve) && !iv(F) && !(nv(F) & 32) ? $t(F, 2097152, 2097152) : kB(F) ? _o(F, 2, 111551) : mv(F) ? $t(F, 1, 111551) : $t(F, 1, 111550);
        }
      }
      function A_(F) {
        if (!(F.kind === 342 && a.kind !== 324) && (U && !(F.flags & 33554432) && Mo(F, F.name), Ja(F.name) ? ja(F, 1, "__" + F.parent.parameters.indexOf(F)) : $t(F, 1, 111551), df(F, F.parent))) {
          const ve = F.parent.parent;
          ge(ve.symbol.members, ve.symbol, F, 4 | (F.questionToken ? 16777216 : 0), 0);
        }
      }
      function t0(F) {
        !e.isDeclarationFile && !(F.flags & 33554432) && hD(F) && (H |= 4096), Wl(F), U ? (Ma(F), _o(F, 16, 110991)) : $t(F, 16, 110991);
      }
      function Uf(F) {
        return !e.isDeclarationFile && !(F.flags & 33554432) && hD(F) && (H |= 4096), h && (F.flowNode = h), Wl(F), ja(F, 16, F.name ? F.name.escapedText : "__function");
      }
      function Z(F, ve, qe) {
        return !e.isDeclarationFile && !(F.flags & 33554432) && hD(F) && (H |= 4096), h && x5(F) && (F.flowNode = h), zh(F) ? ja(F, ve, "__computed") : $t(F, ve, qe);
      }
      function st(F) {
        const ve = cr(F, (qe) => qe.parent && Hb(qe.parent) && qe.parent.extendsType === qe);
        return ve && ve.parent;
      }
      function Rt(F) {
        if (ed(F.parent)) {
          const ve = j5(F.parent);
          ve ? (E.assertNode(ve, og), ve.locals ?? (ve.locals = Ka()), ge(ve.locals, void 0, F, 262144, 526824)) : $t(F, 262144, 526824);
        } else if (F.parent.kind === 196) {
          const ve = st(F.parent);
          ve ? (E.assertNode(ve, og), ve.locals ?? (ve.locals = Ka()), ge(ve.locals, void 0, F, 262144, 526824)) : ja(F, 262144, ce(F));
        } else $t(F, 262144, 526824);
      }
    }
    function t2(e, t) {
      let n = 0;
      const i = c3();
      for (i.enqueue(t); !i.isEmpty() && n < 100; ) {
        if (n++, t = i.dequeue(), vS(t) || $g(t)) return !0;
        if (Fe(t)) {
          const a = WF(e, t.escapedText);
          if (a && a.valueDeclaration && ci(a.valueDeclaration) && a.valueDeclaration.initializer) {
            const o = a.valueDeclaration.initializer;
            i.enqueue(o), Hl(o, !0) && (i.enqueue(o.left), i.enqueue(o.right));
          }
        }
      }
      return !1;
    }
    function BW(e) {
      switch (e.kind) {
        case 232:
        case 264:
        case 267:
        case 211:
        case 188:
        case 323:
        case 293:
          return 1;
        case 265:
          return 65;
        case 268:
        case 266:
        case 201:
        case 182:
          return 33;
        case 308:
          return 37;
        case 178:
        case 179:
        case 175:
          if (x5(e)) return 173;
        case 177:
        case 263:
        case 176:
          return 45;
        case 174:
        case 180:
        case 324:
        case 318:
        case 185:
        case 181:
        case 186:
          return 301;
        case 352:
          return 293;
        case 219:
          return 61;
        case 220:
          return 317;
        case 269:
          return 4;
        case 173:
          return e.initializer ? 4 : 0;
        case 300:
        case 249:
        case 250:
        case 251:
        case 270:
          return 34;
        case 242:
          return Ra(e.parent) || Bc(e.parent) ? 0 : 34;
      }
      return 0;
    }
    function WF(e, t) {
      var n, i, a, o;
      const c = (i = (n = qn(e, og)) == null ? void 0 : n.locals) == null ? void 0 : i.get(t);
      if (c) return c.exportSymbol ?? c;
      if (Pi(e) && e.jsGlobalAugmentations && e.jsGlobalAugmentations.has(t)) return e.jsGlobalAugmentations.get(t);
      if (jd(e)) return (o = (a = e.symbol) == null ? void 0 : a.exports) == null ? void 0 : o.get(t);
    }
    function Ene(e, t, n, i, a, o, c, _, u, d) {
      return g;
      function g(h = () => !0) {
        const S = [], T = [];
        return {
          walkType: (pe) => {
            try {
              return k(pe), {
                visitedTypes: _x(S),
                visitedSymbols: _x(T)
              };
            } finally {
              Yf(S), Yf(T);
            }
          },
          walkSymbol: (pe) => {
            try {
              return U(pe), {
                visitedTypes: _x(S),
                visitedSymbols: _x(T)
              };
            } finally {
              Yf(S), Yf(T);
            }
          }
        };
        function k(pe) {
          if (pe && !S[pe.id] && (S[pe.id] = pe, !U(pe.symbol))) {
            if (pe.flags & 1048576) {
              const ie = pe, W = ie.objectFlags;
              W & 4 && D(pe), W & 32 && G(pe), W & 3 && z(pe), W & 24 && H(ie);
            }
            pe.flags & 524288 && P(pe), pe.flags & 402653184 && N(pe), pe.flags & 2097152 && M(pe), pe.flags & 33554432 && R(pe);
          }
        }
        function D(pe) {
          k(pe.target), bt(d(pe), k);
        }
        function P(pe) {
          k(_(pe));
        }
        function N(pe) {
          bt(pe.types, k);
        }
        function M(pe) {
          k(pe.type);
        }
        function R(pe) {
          k(pe.objectType), k(pe.indexType), k(pe.constraint);
        }
        function G(pe) {
          k(pe.typeParameter), k(pe.constraintType), k(pe.templateType), k(pe.modifiersType);
        }
        function L(pe) {
          const ie = t(pe);
          ie && k(ie.type), bt(pe.typeParameters, k);
          for (const W of pe.parameters) U(W);
          k(e(pe)), k(n(pe));
        }
        function z(pe) {
          H(pe), bt(pe.typeParameters, k), bt(i(pe), k), k(pe.thisType);
        }
        function H(pe) {
          const ie = a(pe);
          for (const W of ie.indexInfos)
            k(W.keyType), k(W.type);
          for (const W of ie.callSignatures) L(W);
          for (const W of ie.constructSignatures) L(W);
          for (const W of ie.properties) U(W);
        }
        function U(pe) {
          if (!pe) return !1;
          const ie = ss(pe);
          return T[ie] ? !1 : (T[ie] = pe, h(pe) ? (k(o(pe)), pe.exports && pe.exports.forEach(U), bt(pe.declarations, (W) => {
            if (W.type && W.type.kind === 187) {
              const Q = W.type;
              U(c(u(Q.exprName)));
            }
          }), !1) : !0);
        }
      }
    }
    var $h = {};
    gi($h, {
      RelativePreference: () => N1e,
      countPathComponents: () => qF,
      forEachFileNameOfModule: () => R1e,
      getLocalModuleSpecifierBetweenFileNames: () => yRe,
      getModuleSpecifier: () => mRe,
      getModuleSpecifierPreferences: () => ON,
      getModuleSpecifiers: () => F1e,
      getModuleSpecifiersWithCacheInfo: () => L1e,
      getNodeModulesPackageName: () => gRe,
      tryGetJSExtensionForFile: () => zW,
      tryGetModuleSpecifiersFromCache: () => hRe,
      tryGetRealFileNameForNonJsDeclarationFileName: () => W1e,
      updateModuleSpecifier: () => dRe
    });
    var pRe = gm((e) => {
      try {
        let t = e.indexOf("/");
        if (t !== 0) return new RegExp(e);
        const n = e.lastIndexOf("/");
        if (t === n) return new RegExp(e);
        for (; (t = e.indexOf("/", t + 1)) !== n; ) if (e[t - 1] !== "\\") return new RegExp(e);
        const i = e.substring(n + 1).replace(/[^iu]/g, "");
        return e = e.substring(1, n), new RegExp(e, i);
      } catch {
        return;
      }
    }), N1e = /* @__PURE__ */ ((e) => (e[e.Relative = 0] = "Relative", e[e.NonRelative = 1] = "NonRelative", e[e.Shortest = 2] = "Shortest", e[e.ExternalNonRelative = 3] = "ExternalNonRelative", e))(N1e || {});
    function ON({ importModuleSpecifierPreference: e, importModuleSpecifierEnding: t, autoImportSpecifierExcludeRegexes: n }, i, a, o, c) {
      const _ = u();
      return {
        excludeRegexes: n,
        relativePreference: c !== void 0 ? jl(c) ? 0 : 1 : e === "relative" ? 0 : e === "non-relative" ? 1 : e === "project-relative" ? 3 : 2,
        getAllowedEndingsInPreferredOrder: (d) => {
          const g = WW(o, i, a), h = d !== g ? u(d) : _, S = Hu(a);
          if ((d ?? g) === 99 && 3 <= S && S <= 99)
            return Y6(a, o.fileName) ? [3, 2] : [2];
          if (Hu(a) === 1) return h === 2 ? [2, 1] : [1, 2];
          const T = Y6(a, o.fileName);
          switch (h) {
            case 2:
              return T ? [
                2,
                3,
                0,
                1
              ] : [
                2,
                0,
                1
              ];
            case 3:
              return [
                3,
                0,
                2,
                1
              ];
            case 1:
              return T ? [
                1,
                0,
                3,
                2
              ] : [
                1,
                0,
                2
              ];
            case 0:
              return T ? [
                0,
                1,
                3,
                2
              ] : [
                0,
                1,
                2
              ];
            default:
              E.assertNever(h);
          }
        }
      };
      function u(d) {
        if (c !== void 0) {
          if (Zg(c)) return 2;
          if (Uo(c, "/index")) return 1;
        }
        return Vee(t, d ?? WW(o, i, a), a, Hg(o) ? o : void 0);
      }
    }
    function dRe(e, t, n, i, a, o, c = {}) {
      const _ = I1e(e, t, n, i, a, ON({}, a, e, t, o), {}, c);
      if (_ !== o)
        return _;
    }
    function mRe(e, t, n, i, a, o = {}) {
      return I1e(e, t, n, i, a, ON({}, a, e, t), {}, o);
    }
    function gRe(e, t, n, i, a, o = {}) {
      const c = VF(t.fileName, i);
      return Hn(j1e(c, n, i, a, e, o), (_) => Pne(_, c, t, i, e, a, !0, o.overrideImportMode));
    }
    function I1e(e, t, n, i, a, o, c, _ = {}) {
      const u = VF(n, a);
      return Hn(j1e(u, i, a, c, e, _), (d) => Pne(d, u, t, a, e, c, void 0, _.overrideImportMode)) || Dne(i, u, e, a, _.overrideImportMode || WW(t, a, e), o);
    }
    function hRe(e, t, n, i, a = {}) {
      const o = O1e(e, t, n, i, a);
      return o[1] && {
        kind: o[0],
        moduleSpecifiers: o[1],
        computedWithoutCache: !1
      };
    }
    function O1e(e, t, n, i, a = {}) {
      var o;
      const c = z3(e);
      if (!c) return Te;
      const _ = (o = n.getModuleSpecifierCache) == null ? void 0 : o.call(n), u = _?.get(t.path, c.path, i, a);
      return [
        u?.kind,
        u?.moduleSpecifiers,
        c,
        u?.modulePaths,
        _
      ];
    }
    function F1e(e, t, n, i, a, o, c = {}) {
      return L1e(e, t, n, i, a, o, c, !1).moduleSpecifiers;
    }
    function L1e(e, t, n, i, a, o, c = {}, _) {
      let u = !1;
      const d = xRe(e, t);
      if (d) return {
        kind: "ambient",
        moduleSpecifiers: _ && UF(d, o.autoImportSpecifierExcludeRegexes) ? Te : [d],
        computedWithoutCache: u
      };
      let [g, h, S, T, k] = O1e(e, i, a, o, c);
      if (h) return {
        kind: g,
        moduleSpecifiers: h,
        computedWithoutCache: u
      };
      if (!S) return {
        kind: void 0,
        moduleSpecifiers: Te,
        computedWithoutCache: u
      };
      u = !0, T || (T = B1e(VF(i.fileName, a), S.originalFileName, a, n, c));
      const D = vRe(T, n, i, a, o, c, _);
      return k?.set(i.path, S.path, o, c, D.kind, T, D.moduleSpecifiers), D;
    }
    function yRe(e, t, n, i, a, o = {}) {
      return Dne(t, VF(e.fileName, i), n, i, o.overrideImportMode ?? e.impliedNodeFormat, ON(a, i, n, e));
    }
    function vRe(e, t, n, i, a, o = {}, c) {
      const _ = VF(n.fileName, i), u = ON(a, i, t, n), d = Hg(n) && bt(e, (D) => bt(i.getFileIncludeReasons().get(Eo(D.path, i.getCurrentDirectory(), _.getCanonicalFileName)), (P) => {
        if (P.kind !== 3 || P.file !== n.path) return;
        const N = i.getModeForResolutionAtIndex(n, P.index), M = o.overrideImportMode ?? i.getDefaultResolutionModeForFile(n);
        if (N !== M && N !== void 0 && M !== void 0) return;
        const R = YN(n, P.index).text;
        return u.relativePreference !== 1 || !Bf(R) ? R : void 0;
      }));
      if (d) return {
        kind: void 0,
        moduleSpecifiers: [d],
        computedWithoutCache: !0
      };
      const g = _t(e, (D) => D.isInNodeModules);
      let h, S, T, k;
      for (const D of e) {
        const P = D.isInNodeModules ? Pne(D, _, n, i, t, a, void 0, o.overrideImportMode) : void 0;
        if (P && !(c && UF(P, u.excludeRegexes)) && (h = kr(h, P), D.isRedirect))
          return {
            kind: "node_modules",
            moduleSpecifiers: h,
            computedWithoutCache: !0
          };
        const N = Dne(D.path, _, t, i, o.overrideImportMode || n.impliedNodeFormat, u, D.isRedirect || !!P);
        !N || c && UF(N, u.excludeRegexes) || (D.isRedirect ? T = kr(T, N) : Fj(N) ? p1(N) ? k = kr(k, N) : S = kr(S, N) : (c || !g || D.isInNodeModules) && (k = kr(k, N)));
      }
      return S?.length ? {
        kind: "paths",
        moduleSpecifiers: S,
        computedWithoutCache: !0
      } : T?.length ? {
        kind: "redirect",
        moduleSpecifiers: T,
        computedWithoutCache: !0
      } : h?.length ? {
        kind: "node_modules",
        moduleSpecifiers: h,
        computedWithoutCache: !0
      } : {
        kind: "relative",
        moduleSpecifiers: k ?? Te,
        computedWithoutCache: !0
      };
    }
    function UF(e, t) {
      return _t(t, (n) => {
        var i;
        return !!((i = pRe(n)) != null && i.test(e));
      });
    }
    function VF(e, t) {
      e = ca(e, t.getCurrentDirectory());
      const n = pu(t.useCaseSensitiveFileNames ? t.useCaseSensitiveFileNames() : !0), i = Xn(e);
      return {
        getCanonicalFileName: n,
        importingSourceFileName: e,
        sourceDirectory: i,
        canonicalSourceDirectory: n(i)
      };
    }
    function Dne(e, t, n, i, a, { getAllowedEndingsInPreferredOrder: o, relativePreference: c, excludeRegexes: _ }, u) {
      const { baseUrl: d, paths: g, rootDirs: h } = n;
      if (u && !g) return;
      const { sourceDirectory: S, canonicalSourceDirectory: T, getCanonicalFileName: k } = t, D = o(a), P = h && ERe(h, e, S, k, D, n) || FN(sS(Zf(S, e, k)), D, n);
      if (!d && !g && !RA(n) || c === 0) return u ? void 0 : P;
      const N = ca(X5(n, i) || d, i.getCurrentDirectory()), M = Ane(e, N, k);
      if (!M) return u ? void 0 : P;
      const R = u ? void 0 : CRe(e, S, n, i, a, wRe(D)), G = u || R === void 0 ? g && J1e(M, g, D, N, k, i, n) : void 0;
      if (u) return G;
      const L = R ?? (G === void 0 && d !== void 0 ? FN(M, D, n) : G);
      if (!L) return P;
      const z = UF(P, _), H = UF(L, _);
      if (!z && H) return P;
      if (z && !H || c === 1 && !Bf(L)) return L;
      if (c === 3 && !Bf(L)) {
        const U = n.configFilePath ? Eo(Xn(n.configFilePath), i.getCurrentDirectory(), t.getCanonicalFileName) : t.getCanonicalFileName(i.getCurrentDirectory()), pe = Eo(e, U, k), ie = ta(T, U), W = ta(pe, U);
        return ie && !W || !ie && W || !bRe(wne(i, Xn(pe)), wne(i, S), !CS(i)) ? L : P;
      }
      return U1e(L) || qF(P) < qF(L) ? P : L;
    }
    function bRe(e, t, n) {
      return e === t ? !0 : e === void 0 || t === void 0 ? !1 : Rh(e, t, n) === 0;
    }
    function qF(e) {
      let t = 0;
      for (let n = ta(e, "./") ? 2 : 0; n < e.length; n++) e.charCodeAt(n) === 47 && t++;
      return t;
    }
    function M1e(e, t) {
      return tv(t.isRedirect, e.isRedirect) || UA(e.path, t.path);
    }
    function wne(e, t) {
      return e.getNearestAncestorDirectoryWithPackageJson ? e.getNearestAncestorDirectoryWithPackageJson(t) : hg(e, t, (n) => e.fileExists(jn(n, "package.json")) ? n : void 0);
    }
    function R1e(e, t, n, i, a) {
      var o, c;
      const _ = Wh(n), u = n.getCurrentDirectory(), d = n.isSourceOfProjectReferenceRedirect(t) ? (o = n.getRedirectFromSourceFile(t)) == null ? void 0 : o.outputDts : void 0, g = Eo(t, u, _), h = n.redirectTargetsMap.get(g) || Te, S = [
        ...d ? [d] : Te,
        t,
        ...h
      ].map((P) => ca(P, u));
      let T = !hr(S, WD);
      if (!i) {
        const P = bt(S, (N) => !(T && WD(N)) && a(N, d === N));
        if (P) return P;
      }
      const k = (c = n.getSymlinkCache) == null ? void 0 : c.call(n).getSymlinkedDirectoriesByRealpath(), D = ca(t, u);
      return k && hg(n, Xn(D), (P) => {
        const N = k.get(El(Eo(P, u, _)));
        if (N)
          return Rj(e, P, _) ? !1 : bt(S, (M) => {
            if (!Rj(M, P, _)) return;
            const R = Zf(P, M, _);
            for (const G of N) {
              const L = a(Fy(G, R), M === d);
              if (T = !0, L) return L;
            }
          });
      }) || (i ? bt(S, (P) => T && WD(P) ? void 0 : a(P, P === d)) : void 0);
    }
    function j1e(e, t, n, i, a, o = {}) {
      var c;
      const _ = Eo(e.importingSourceFileName, n.getCurrentDirectory(), Wh(n)), u = Eo(t, n.getCurrentDirectory(), Wh(n)), d = (c = n.getModuleSpecifierCache) == null ? void 0 : c.call(n);
      if (d) {
        const h = d.get(_, u, i, o);
        if (h?.modulePaths) return h.modulePaths;
      }
      const g = B1e(e, t, n, a, o);
      return d && d.setModulePaths(_, u, i, o, g), g;
    }
    var SRe = [
      "dependencies",
      "peerDependencies",
      "optionalDependencies"
    ];
    function TRe(e) {
      let t;
      for (const n of SRe) {
        const i = e[n];
        i && typeof i == "object" && (t = zi(t, mm(i)));
      }
      return t;
    }
    function B1e(e, t, n, i, a) {
      var o, c;
      const _ = (o = n.getModuleResolutionCache) == null ? void 0 : o.call(n), u = (c = n.getSymlinkCache) == null ? void 0 : c.call(n);
      if (_ && u && n.readFile && !p1(e.importingSourceFileName)) {
        E.type(n);
        const S = hw(_.getPackageJsonInfoCache(), n, {}), T = yw(Xn(e.importingSourceFileName), S);
        if (T) {
          const k = TRe(T.contents.packageJsonContent);
          for (const D of k || Te) {
            const P = qS(D, jn(T.packageDirectory, "package.json"), i, n, _, void 0, a.overrideImportMode);
            u.setSymlinksFromResolution(P.resolvedModule);
          }
        }
      }
      const d = /* @__PURE__ */ new Map();
      let g = !1;
      R1e(e.importingSourceFileName, t, n, !0, (S, T) => {
        const k = p1(S);
        d.set(S, {
          path: e.getCanonicalFileName(S),
          isRedirect: T,
          isInNodeModules: k
        }), g = g || k;
      });
      const h = [];
      for (let S = e.canonicalSourceDirectory; d.size !== 0; ) {
        const T = El(S);
        let k;
        d.forEach(({ path: P, isRedirect: N, isInNodeModules: M }, R) => {
          ta(P, T) && ((k || (k = [])).push({
            path: R,
            isRedirect: N,
            isInNodeModules: M
          }), d.delete(R));
        }), k && (k.length > 1 && k.sort(M1e), h.push(...k));
        const D = Xn(S);
        if (D === S) break;
        S = D;
      }
      if (d.size) {
        const S = ma(d.entries(), ([T, { isRedirect: k, isInNodeModules: D }]) => ({
          path: T,
          isRedirect: k,
          isInNodeModules: D
        }));
        S.length > 1 && S.sort(M1e), h.push(...S);
      }
      return h;
    }
    function xRe(e, t) {
      var n;
      const i = (n = e.declarations) == null ? void 0 : n.find((o) => EB(o) && (!Nb(o) || !jl(Xp(o.name))));
      if (i) return i.name.text;
      const a = Rn(e.declarations, (o) => {
        var c, _, u, d;
        if (!Qc(o)) return;
        const g = T(o);
        if (!((c = g?.parent) != null && c.parent && Vd(g.parent) && o_(g.parent.parent) && Pi(g.parent.parent.parent))) return;
        const h = (d = (u = (_ = g.parent.parent.symbol.exports) == null ? void 0 : _.get("export=")) == null ? void 0 : u.valueDeclaration) == null ? void 0 : d.expression;
        if (!h) return;
        const S = t.getSymbolAtLocation(h);
        if (!S) return;
        if ((S?.flags & 2097152 ? t.getAliasedSymbol(S) : S) === o.symbol) return g.parent.parent;
        function T(k) {
          for (; k.flags & 8; ) k = k.parent;
          return k;
        }
      })[0];
      if (a) return a.name.text;
    }
    function J1e(e, t, n, i, a, o, c) {
      for (const u in t) for (const d of t[u]) {
        const g = us(d), h = Ane(g, i, a) ?? g, S = h.indexOf("*"), T = n.map((k) => ({
          ending: k,
          value: FN(e, [k], c)
        }));
        if (Kg(h) && T.push({
          ending: void 0,
          value: e
        }), S !== -1) {
          const k = h.substring(0, S), D = h.substring(S + 1);
          for (const { ending: P, value: N } of T) if (N.length >= k.length + D.length && ta(N, k) && Uo(N, D) && _({
            ending: P,
            value: N
          })) {
            const M = N.substring(k.length, N.length - D.length);
            if (!Bf(M)) return PS(u, M);
          }
        } else if (_t(T, (k) => k.ending !== 0 && h === k.value) || _t(T, (k) => k.ending === 0 && h === k.value && _(k))) return u;
      }
      function _({ ending: u, value: d }) {
        return u !== 0 || d === FN(e, [u], c, o);
      }
    }
    function GF(e, t, n, i, a, o, c, _, u, d) {
      if (typeof o == "string") {
        const g = !CS(t), h = () => t.getCommonSourceDirectory(), S = u && mU(n, e, g, h), T = u && dU(n, e, g, h), k = ca(jn(i, o), void 0), D = wS(n) ? __(n) + zW(n, e) : void 0, P = d && Wee(n);
        switch (_) {
          case 0:
            if (D && Rh(D, k, g) === 0 || Rh(n, k, g) === 0 || S && Rh(S, k, g) === 0 || T && Rh(T, k, g) === 0) return { moduleFileToTry: a };
            break;
          case 1:
            if (P && vp(n, k, g)) {
              const G = Zf(k, n, !1);
              return { moduleFileToTry: ca(jn(jn(a, o), G), void 0) };
            }
            if (D && vp(k, D, g)) {
              const G = Zf(k, D, !1);
              return { moduleFileToTry: ca(jn(jn(a, o), G), void 0) };
            }
            if (!P && vp(k, n, g)) {
              const G = Zf(k, n, !1);
              return { moduleFileToTry: ca(jn(jn(a, o), G), void 0) };
            }
            if (S && vp(k, S, g)) return { moduleFileToTry: jn(a, Zf(k, S, !1)) };
            if (T && vp(k, T, g)) return { moduleFileToTry: jn(a, L7(Zf(k, T, !1), JW(T, e))) };
            break;
          case 2:
            const N = k.indexOf("*"), M = k.slice(0, N), R = k.slice(N + 1);
            if (P && ta(n, M, g) && Uo(n, R, g)) return { moduleFileToTry: PS(a, n.slice(M.length, n.length - R.length)) };
            if (D && ta(D, M, g) && Uo(D, R, g)) return { moduleFileToTry: PS(a, D.slice(M.length, D.length - R.length)) };
            if (!P && ta(n, M, g) && Uo(n, R, g)) return { moduleFileToTry: PS(a, n.slice(M.length, n.length - R.length)) };
            if (S && ta(S, M, g) && Uo(S, R, g)) return { moduleFileToTry: PS(a, S.slice(M.length, S.length - R.length)) };
            if (T && ta(T, M, g) && Uo(T, R, g)) {
              const G = PS(a, T.slice(M.length, T.length - R.length)), L = zW(T, e);
              return L ? { moduleFileToTry: L7(G, L) } : void 0;
            }
            break;
        }
      } else {
        if (Array.isArray(o)) return bt(o, (g) => GF(e, t, n, i, a, g, c, _, u, d));
        if (typeof o == "object" && o !== null) {
          for (const g of mm(o)) if (g === "default" || c.indexOf(g) >= 0 || NN(c, g)) {
            const h = o[g], S = GF(e, t, n, i, a, h, c, _, u, d);
            if (S) return S;
          }
        }
      }
    }
    function kRe(e, t, n, i, a, o, c) {
      return typeof o == "object" && o !== null && !Array.isArray(o) && JF(o) ? bt(mm(o), (_) => {
        const u = ca(jn(a, _), void 0), d = Uo(_, "/") ? 1 : _.includes("*") ? 2 : 0;
        return GF(e, t, n, i, u, o[_], c, d, !1, !1);
      }) : GF(e, t, n, i, a, o, c, 0, !1, !1);
    }
    function CRe(e, t, n, i, a, o) {
      var c, _, u;
      if (!i.readFile || !RA(n)) return;
      const d = wne(i, t);
      if (!d) return;
      const g = jn(d, "package.json"), h = (_ = (c = i.getPackageJsonInfoCache) == null ? void 0 : c.call(i)) == null ? void 0 : _.getPackageJsonInfo(g);
      if (lne(h) || !i.fileExists(g)) return;
      const S = h?.contents.packageJsonContent || NA(i.readFile(g)), T = S?.imports;
      if (!T) return;
      const k = f1(n, a);
      return (u = bt(mm(T), (D) => {
        if (!ta(D, "#") || D === "#" || ta(D, "#/")) return;
        const P = Uo(D, "/") ? 1 : D.includes("*") ? 2 : 0;
        return GF(n, i, e, d, D, T[D], k, P, !0, o);
      })) == null ? void 0 : u.moduleFileToTry;
    }
    function ERe(e, t, n, i, a, o) {
      const c = z1e(t, e, i);
      if (c === void 0) return;
      const _ = tj(ks(z1e(n, e, i), (u) => or(c, (d) => sS(Zf(u, d, i)))), UA);
      if (_)
        return FN(_, a, o);
    }
    function Pne({ path: e, isRedirect: t }, { getCanonicalFileName: n, canonicalSourceDirectory: i }, a, o, c, _, u, d) {
      if (!o.fileExists || !o.readFile) return;
      const g = IO(e);
      if (!g) return;
      const h = ON(_, o, c, a).getAllowedEndingsInPreferredOrder();
      let S = e, T = !1;
      if (!u) {
        let R = g.packageRootIndex, G;
        for (; ; ) {
          const { moduleFileToTry: L, packageRootPath: z, blockedByExports: H, verbatimFromExports: U } = M(R);
          if (Hu(c) !== 1) {
            if (H) return;
            if (U) return L;
          }
          if (z) {
            S = z, T = !0;
            break;
          }
          if (G || (G = L), R = e.indexOf(Co, R + 1), R === -1) {
            S = FN(G, h, c, o);
            break;
          }
        }
      }
      if (t && !T) return;
      const k = o.getGlobalTypingsCacheLocation && o.getGlobalTypingsCacheLocation(), D = n(S.substring(0, g.topLevelNodeModulesIndex));
      if (!(ta(i, D) || k && ta(n(k), D))) return;
      const P = S.substring(g.topLevelPackageNameIndex + 1), N = vw(P);
      return Hu(c) === 1 && N === P ? void 0 : N;
      function M(R) {
        var G, L;
        const z = e.substring(0, R), H = jn(z, "package.json");
        let U = e, pe = !1;
        const ie = (L = (G = o.getPackageJsonInfoCache) == null ? void 0 : G.call(o)) == null ? void 0 : L.getPackageJsonInfo(H);
        if (MF(ie) || ie === void 0 && o.fileExists(H)) {
          const W = ie?.contents.packageJsonContent || NA(o.readFile(H)), Q = d || WW(a, o, c);
          if (MA(c)) {
            const fe = vw(z.substring(g.topLevelPackageNameIndex + 1)), de = f1(c, Q), $ = W?.exports ? kRe(c, o, e, z, fe, W.exports, de) : void 0;
            if ($) return {
              ...$,
              verbatimFromExports: !0
            };
            if (W?.exports) return {
              moduleFileToTry: e,
              blockedByExports: !0
            };
          }
          const se = W?.typesVersions ? FF(W.typesVersions) : void 0;
          if (se) {
            const fe = J1e(e.slice(z.length + 1), se.paths, h, z, n, o, c);
            fe === void 0 ? pe = !0 : U = jn(z, fe);
          }
          const he = W?.typings || W?.types || W?.main || "index.js";
          if (Ta(he) && !(pe && KJ(qA(se.paths), he))) {
            const fe = Eo(he, z, n), de = n(U);
            if (__(fe) === __(de)) return {
              packageRootPath: z,
              moduleFileToTry: U
            };
            if (W?.type !== "module" && !jc(de, EO) && ta(de, fe) && Xn(de) === T0(fe) && __(nl(de)) === "index") return {
              packageRootPath: z,
              moduleFileToTry: U
            };
          }
        } else {
          const W = n(U.substring(g.packageRootIndex + 1));
          if (W === "index.d.ts" || W === "index.js" || W === "index.ts" || W === "index.tsx") return {
            moduleFileToTry: U,
            packageRootPath: z
          };
        }
        return { moduleFileToTry: U };
      }
    }
    function DRe(e, t) {
      if (!e.fileExists) return;
      const n = Rf(LD({ allowJs: !0 }, [{
        extension: "node",
        isMixedContent: !1
      }, {
        extension: "json",
        isMixedContent: !1,
        scriptKind: 6
      }]));
      for (const i of n) {
        const a = t + i;
        if (e.fileExists(a)) return a;
      }
    }
    function z1e(e, t, n) {
      return Rn(t, (i) => {
        const a = Ane(e, i, n);
        return a !== void 0 && U1e(a) ? void 0 : a;
      });
    }
    function FN(e, t, n, i) {
      if (jc(e, [
        ".json",
        ".mjs",
        ".cjs"
      ])) return e;
      const a = __(e);
      if (e === a) return e;
      const o = t.indexOf(2), c = t.indexOf(3);
      if (jc(e, [".mts", ".cts"]) && c !== -1 && c < o) return e;
      if (jc(e, [
        ".d.mts",
        ".mts",
        ".d.cts",
        ".cts"
      ])) return a + JW(e, n);
      if (!jc(e, [".d.ts"]) && jc(e, [".ts"]) && e.includes(".d.")) return W1e(e);
      switch (t[0]) {
        case 0:
          const _ = zC(a, "/index");
          return i && _ !== a && DRe(i, _) ? a : _;
        case 1:
          return a;
        case 2:
          return a + JW(e, n);
        case 3:
          if ($l(e)) {
            const u = t.findIndex((d) => d === 0 || d === 1);
            return u !== -1 && u < o ? a : a + JW(e, n);
          }
          return e;
        default:
          return E.assertNever(t[0]);
      }
    }
    function W1e(e) {
      const t = nl(e);
      if (!Uo(e, ".ts") || !t.includes(".d.") || jc(t, [".d.ts"])) return;
      const n = VA(e, ".ts"), i = n.substring(n.lastIndexOf("."));
      return n.substring(0, n.indexOf(".d.")) + i;
    }
    function JW(e, t) {
      return zW(e, t) ?? E.fail(`Extension ${RD(e)} is unsupported:: FileName:: ${e}`);
    }
    function zW(e, t) {
      const n = Kg(e);
      switch (n) {
        case ".ts":
        case ".d.ts":
          return ".js";
        case ".tsx":
          return t.jsx === 1 ? ".jsx" : ".js";
        case ".js":
        case ".jsx":
        case ".json":
          return n;
        case ".d.mts":
        case ".mts":
        case ".mjs":
          return ".mjs";
        case ".d.cts":
        case ".cts":
        case ".cjs":
          return ".cjs";
        default:
          return;
      }
    }
    function Ane(e, t, n) {
      const i = bx(t, e, t, n, !1);
      return pf(i) ? void 0 : i;
    }
    function U1e(e) {
      return ta(e, "..");
    }
    function WW(e, t, n) {
      return Hg(e) ? t.getDefaultResolutionModeForFile(e) : p9(e, n);
    }
    function wRe(e) {
      const t = e.indexOf(3);
      return t > -1 && t < e.indexOf(2);
    }
    var Nne = /^".+"$/, UW = "(anonymous)", V1e = 1, q1e = 1, G1e = 1, H1e = 1, VW = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.TypeofEQString = 1] = "TypeofEQString", e[e.TypeofEQNumber = 2] = "TypeofEQNumber", e[e.TypeofEQBigInt = 4] = "TypeofEQBigInt", e[e.TypeofEQBoolean = 8] = "TypeofEQBoolean", e[e.TypeofEQSymbol = 16] = "TypeofEQSymbol", e[e.TypeofEQObject = 32] = "TypeofEQObject", e[e.TypeofEQFunction = 64] = "TypeofEQFunction", e[e.TypeofEQHostObject = 128] = "TypeofEQHostObject", e[e.TypeofNEString = 256] = "TypeofNEString", e[e.TypeofNENumber = 512] = "TypeofNENumber", e[e.TypeofNEBigInt = 1024] = "TypeofNEBigInt", e[e.TypeofNEBoolean = 2048] = "TypeofNEBoolean", e[e.TypeofNESymbol = 4096] = "TypeofNESymbol", e[e.TypeofNEObject = 8192] = "TypeofNEObject", e[e.TypeofNEFunction = 16384] = "TypeofNEFunction", e[e.TypeofNEHostObject = 32768] = "TypeofNEHostObject", e[e.EQUndefined = 65536] = "EQUndefined", e[e.EQNull = 131072] = "EQNull", e[e.EQUndefinedOrNull = 262144] = "EQUndefinedOrNull", e[e.NEUndefined = 524288] = "NEUndefined", e[e.NENull = 1048576] = "NENull", e[e.NEUndefinedOrNull = 2097152] = "NEUndefinedOrNull", e[e.Truthy = 4194304] = "Truthy", e[e.Falsy = 8388608] = "Falsy", e[e.IsUndefined = 16777216] = "IsUndefined", e[e.IsNull = 33554432] = "IsNull", e[e.IsUndefinedOrNull = 50331648] = "IsUndefinedOrNull", e[e.All = 134217727] = "All", e[e.BaseStringStrictFacts = 3735041] = "BaseStringStrictFacts", e[e.BaseStringFacts = 12582401] = "BaseStringFacts", e[e.StringStrictFacts = 16317953] = "StringStrictFacts", e[e.StringFacts = 16776705] = "StringFacts", e[e.EmptyStringStrictFacts = 12123649] = "EmptyStringStrictFacts", e[e.EmptyStringFacts = 12582401] = "EmptyStringFacts", e[e.NonEmptyStringStrictFacts = 7929345] = "NonEmptyStringStrictFacts", e[e.NonEmptyStringFacts = 16776705] = "NonEmptyStringFacts", e[e.BaseNumberStrictFacts = 3734786] = "BaseNumberStrictFacts", e[e.BaseNumberFacts = 12582146] = "BaseNumberFacts", e[e.NumberStrictFacts = 16317698] = "NumberStrictFacts", e[e.NumberFacts = 16776450] = "NumberFacts", e[e.ZeroNumberStrictFacts = 12123394] = "ZeroNumberStrictFacts", e[e.ZeroNumberFacts = 12582146] = "ZeroNumberFacts", e[e.NonZeroNumberStrictFacts = 7929090] = "NonZeroNumberStrictFacts", e[e.NonZeroNumberFacts = 16776450] = "NonZeroNumberFacts", e[e.BaseBigIntStrictFacts = 3734276] = "BaseBigIntStrictFacts", e[e.BaseBigIntFacts = 12581636] = "BaseBigIntFacts", e[e.BigIntStrictFacts = 16317188] = "BigIntStrictFacts", e[e.BigIntFacts = 16775940] = "BigIntFacts", e[e.ZeroBigIntStrictFacts = 12122884] = "ZeroBigIntStrictFacts", e[e.ZeroBigIntFacts = 12581636] = "ZeroBigIntFacts", e[e.NonZeroBigIntStrictFacts = 7928580] = "NonZeroBigIntStrictFacts", e[e.NonZeroBigIntFacts = 16775940] = "NonZeroBigIntFacts", e[e.BaseBooleanStrictFacts = 3733256] = "BaseBooleanStrictFacts", e[e.BaseBooleanFacts = 12580616] = "BaseBooleanFacts", e[e.BooleanStrictFacts = 16316168] = "BooleanStrictFacts", e[e.BooleanFacts = 16774920] = "BooleanFacts", e[e.FalseStrictFacts = 12121864] = "FalseStrictFacts", e[e.FalseFacts = 12580616] = "FalseFacts", e[e.TrueStrictFacts = 7927560] = "TrueStrictFacts", e[e.TrueFacts = 16774920] = "TrueFacts", e[e.SymbolStrictFacts = 7925520] = "SymbolStrictFacts", e[e.SymbolFacts = 16772880] = "SymbolFacts", e[e.ObjectStrictFacts = 7888800] = "ObjectStrictFacts", e[e.ObjectFacts = 16736160] = "ObjectFacts", e[e.FunctionStrictFacts = 7880640] = "FunctionStrictFacts", e[e.FunctionFacts = 16728e3] = "FunctionFacts", e[e.VoidFacts = 9830144] = "VoidFacts", e[e.UndefinedFacts = 26607360] = "UndefinedFacts", e[e.NullFacts = 42917664] = "NullFacts", e[e.EmptyObjectStrictFacts = 83427327] = "EmptyObjectStrictFacts", e[e.EmptyObjectFacts = 83886079] = "EmptyObjectFacts", e[e.UnknownFacts = 83886079] = "UnknownFacts", e[e.AllTypeofNE = 556800] = "AllTypeofNE", e[e.OrFactsMask = 8256] = "OrFactsMask", e[e.AndFactsMask = 134209471] = "AndFactsMask", e))(VW || {}), qW = new Map(Object.entries({
      string: 256,
      number: 512,
      bigint: 1024,
      boolean: 2048,
      symbol: 4096,
      undefined: 524288,
      object: 8192,
      function: 16384
    })), GW = /* @__PURE__ */ ((e) => (e[e.Normal = 0] = "Normal", e[e.Contextual = 1] = "Contextual", e[e.Inferential = 2] = "Inferential", e[e.SkipContextSensitive = 4] = "SkipContextSensitive", e[e.SkipGenericFunctions = 8] = "SkipGenericFunctions", e[e.IsForSignatureHelp = 16] = "IsForSignatureHelp", e[e.RestBindingElement = 32] = "RestBindingElement", e[e.TypeOnly = 64] = "TypeOnly", e))(GW || {}), HW = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.BivariantCallback = 1] = "BivariantCallback", e[e.StrictCallback = 2] = "StrictCallback", e[e.IgnoreReturnTypes = 4] = "IgnoreReturnTypes", e[e.StrictArity = 8] = "StrictArity", e[e.StrictTopSignature = 16] = "StrictTopSignature", e[e.Callback = 3] = "Callback", e))(HW || {}), PRe = x7(X1e, NRe), $W = new Map(Object.entries({
      Uppercase: 0,
      Lowercase: 1,
      Capitalize: 2,
      Uncapitalize: 3,
      NoInfer: 4
    })), $1e = class {
    };
    function ARe() {
      this.flags = 0;
    }
    function Hs(e) {
      return e.id || (e.id = q1e, q1e++), e.id;
    }
    function ss(e) {
      return e.id || (e.id = V1e, V1e++), e.id;
    }
    function HF(e, t) {
      const n = m1(e);
      return n === 1 || t && n === 2;
    }
    function Ine(e) {
      var t = [], n = (r) => {
        t.push(r);
      }, i, a, o = gu.getSymbolConstructor(), c = gu.getTypeConstructor(), _ = gu.getSignatureConstructor(), u = 0, d = 0, g = 0, h = 0, S = 0, T = 0, k, D, P = !1, N = !1, M, R = Ka(), G = [1], L = e.getCompilerOptions(), z = Ps(L), H = u_(L), U = !!L.experimentalDecorators, pe = jA(L), ie = WJ(L), W = Yx(L), Q = Sf(L, "strictNullChecks"), se = Sf(L, "strictFunctionTypes"), he = Sf(L, "strictBindCallApply"), fe = Sf(L, "strictPropertyInitialization"), de = Sf(L, "strictBuiltinIteratorReturn"), $ = Sf(L, "noImplicitAny"), Se = Sf(L, "noImplicitThis"), Be = Sf(L, "useUnknownInCatchVariables"), ce = L.exactOptionalPropertyTypes, oe = L.noUncheckedSideEffectImports !== !1, ge = !!L.stableTypeOrdering, Ae = ge ? new Map(e.getSourceFiles().map((r, s) => [r, s])) : void 0, Ne = _ct(), ot = $_t(), K = hM(), ke = Mae(L, K.syntacticBuilderResolver), ae = cte({
        evaluateElementAccessExpression: Rut,
        evaluateEntityNameExpression: Y7e
      }), Ce = Ka(), ue = Fs(4, "undefined");
      ue.declarations = [];
      var Ie = Fs(1536, "globalThis", 8);
      Ie.exports = Ce, Ie.declarations = [], Ce.set(Ie.escapedName, Ie);
      var Xe = Fs(4, "arguments"), Ft = Fs(4, "require"), Ut = L.verbatimModuleSyntax ? "verbatimModuleSyntax" : "isolatedModules", Xt = !L.verbatimModuleSyntax, Ar, Ct, Kt = 0, zr, _i = 0, Gr = uz({
        compilerOptions: L,
        requireSymbol: Ft,
        argumentsSymbol: Xe,
        globals: Ce,
        getSymbolOfDeclaration: mn,
        error: We,
        getRequiresScopeChangeCache: Sn,
        setRequiresScopeChangeCache: Mu,
        lookup: Ku,
        onPropertyWithInvalidInitializer: wa,
        onFailedToResolveSymbol: ly,
        onSuccessfullyResolvedSymbol: aC
      }), Nt = uz({
        compilerOptions: L,
        requireSymbol: Ft,
        argumentsSymbol: Xe,
        globals: Ce,
        getSymbolOfDeclaration: mn,
        error: We,
        getRequiresScopeChangeCache: Sn,
        setRequiresScopeChangeCache: Mu,
        lookup: Ist
      });
      const Li = {
        getNodeCount: () => a_(e.getSourceFiles(), (r, s) => r + s.nodeCount, 0),
        getIdentifierCount: () => a_(e.getSourceFiles(), (r, s) => r + s.identifierCount, 0),
        getSymbolCount: () => a_(e.getSourceFiles(), (r, s) => r + s.symbolCount, d),
        getTypeCount: () => u,
        getInstantiationCount: () => g,
        getRelationCacheSizes: () => ({
          assignable: Sc.size,
          identity: Lc.size,
          subtype: cp.size,
          strictSubtype: lp.size
        }),
        isUndefinedSymbol: (r) => r === ue,
        isArgumentsSymbol: (r) => r === Xe,
        isUnknownSymbol: (r) => r === it,
        getMergedSymbol: ys,
        symbolIsValue: oa,
        getDiagnostics: a5e,
        getGlobalDiagnostics: l_t,
        getRecursionIdentity: B$,
        getUnmatchedProperties: ude,
        getTypeOfSymbolAtLocation: (r, s) => {
          const l = Ca(s);
          return l ? Vit(r, l) : rt;
        },
        getTypeOfSymbol: ft,
        getSymbolsOfParameterPropertyDeclaration: (r, s) => {
          const l = Ca(r, Fi);
          return l === void 0 ? E.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node.") : (E.assert(df(l, l.parent)), hP(l, mc(s)));
        },
        getDeclaredTypeOfSymbol: Oo,
        getPropertiesOfType: co,
        getPropertyOfType: (r, s) => ms(r, mc(s)),
        getPrivateIdentifierPropertyOfType: (r, s, l) => {
          const f = Ca(l);
          if (!f) return;
          const m = _R(mc(s), f);
          return m ? SX(r, m) : void 0;
        },
        getTypeOfPropertyOfType: (r, s) => xn(r, mc(s)),
        getIndexInfoOfType: (r, s) => kh(r, s === 0 ? Cr : et),
        getIndexInfosOfType: Bu,
        getIndexInfosOfIndexSymbol: g$,
        getSignaturesOfType: Pa,
        getIndexTypeOfType: (r, s) => cb(r, s === 0 ? Cr : et),
        getIndexType: (r) => eg(r),
        getBaseTypes: Nd,
        getBaseTypeOfLiteralType: m0,
        getWidenedType: of,
        getWidenedLiteralType: mb,
        fillMissingTypeArguments: yy,
        getTypeFromTypeNode: (r) => {
          const s = Ca(r, ui);
          return s ? Di(s) : rt;
        },
        getParameterType: _m,
        getParameterIdentifierInfoAtPosition: Eot,
        getPromisedTypeOfPromise: s7,
        getAwaitedType: (r) => OC(r),
        getReturnTypeOfSignature: ro,
        isNullableType: uR,
        getNullableType: HM,
        getNonNullableType: g0,
        getNonOptionalType: U$,
        getTypeArguments: Vo,
        typeToTypeNode: K.typeToTypeNode,
        typePredicateToTypePredicateNode: K.typePredicateToTypePredicateNode,
        indexInfoToIndexSignatureDeclaration: K.indexInfoToIndexSignatureDeclaration,
        signatureToSignatureDeclaration: K.signatureToSignatureDeclaration,
        symbolToEntityName: K.symbolToEntityName,
        symbolToExpression: K.symbolToExpression,
        symbolToNode: K.symbolToNode,
        symbolToTypeParameterDeclarations: K.symbolToTypeParameterDeclarations,
        symbolToParameterDeclaration: K.symbolToParameterDeclaration,
        typeParameterToDeclaration: K.typeParameterToDeclaration,
        getSymbolsInScope: (r, s) => {
          const l = Ca(r);
          return l ? u_t(l, s) : [];
        },
        getSymbolAtLocation: (r) => {
          const s = Ca(r);
          return s ? Wp(s, !0) : void 0;
        },
        getIndexInfosAtLocation: (r) => {
          const s = Ca(r);
          return s ? y_t(s) : void 0;
        },
        getShorthandAssignmentValueSymbol: (r) => {
          const s = Ca(r);
          return s ? v_t(s) : void 0;
        },
        getExportSpecifierLocalTargetSymbol: (r) => {
          const s = Ca(r, $u);
          return s ? b_t(s) : void 0;
        },
        getExportSymbolOfSymbol(r) {
          return ys(r.exportSymbol || r);
        },
        getTypeAtLocation: (r) => {
          const s = Ca(r);
          return s ? LC(s) : rt;
        },
        getTypeOfAssignmentPattern: (r) => {
          const s = Ca(r, Q4);
          return s && KX(s) || rt;
        },
        getPropertySymbolOfDestructuringAssignment: (r) => {
          const s = Ca(r, Fe);
          return s ? S_t(s) : void 0;
        },
        signatureToString: (r, s, l, f) => I2(r, Ca(s), l, f),
        typeToString: (r, s, l) => Xr(r, Ca(s), l),
        symbolToString: (r, s, l, f) => Xi(r, Ca(s), l, f),
        typePredicateToString: (r, s, l) => M1(r, Ca(s), l),
        writeSignature: (r, s, l, f, m, y, x, O) => I2(r, Ca(s), l, f, m, y, x, O),
        writeType: (r, s, l, f, m, y, x) => Xr(r, Ca(s), l, f, m, y, x),
        writeSymbol: (r, s, l, f, m) => Xi(r, Ca(s), l, f, m),
        writeTypePredicate: (r, s, l, f) => M1(r, Ca(s), l, f),
        getAugmentedPropertiesOfType: ege,
        getRootSymbols: p5e,
        getSymbolOfExpando: DX,
        getContextualType: (r, s) => {
          const l = Ca(r, dt);
          if (l)
            return s & 4 ? ra(l, () => O_(l, s)) : O_(l, s);
        },
        getContextualTypeForObjectLiteralElement: (r) => {
          const s = Ca(r, zg);
          return s ? Jde(s, void 0) : void 0;
        },
        getContextualTypeForArgumentAtIndex: (r, s) => {
          const l = Ca(r, Wy);
          return l && Rde(l, s);
        },
        getContextualTypeForJsxAttribute: (r) => {
          const s = Ca(r, n5);
          return s && DIe(s, void 0);
        },
        isContextSensitive: Xf,
        getTypeOfPropertyOfContextualType: hb,
        getFullyQualifiedName: py,
        getResolvedSignature: (r, s, l) => Me(r, s, l, 0),
        getCandidateSignaturesForStringLiteralCompletions: Zr,
        getResolvedSignatureForSignatureHelp: (r, s, l) => ni(r, () => Me(r, s, l, 16)),
        getExpandedParameters: _3e,
        hasEffectiveRestParameter: Ng,
        containsArgumentsReference: tpe,
        getConstantValue: (r) => {
          const s = Ca(r, v5e);
          return s ? rQ(s) : void 0;
        },
        isValidPropertyAccess: (r, s) => {
          const l = Ca(r, LZ);
          return !!l && Lst(l, mc(s));
        },
        isValidPropertyAccessForCompletions: (r, s, l) => {
          const f = Ca(r, Ln);
          return !!f && i8e(f, s, l);
        },
        getSignatureFromDeclaration: (r) => {
          const s = Ca(r, Ra);
          return s ? mp(s) : void 0;
        },
        isImplementationOfOverload: (r) => {
          const s = Ca(r, Ra);
          return s ? h5e(s) : void 0;
        },
        getImmediateAliasedSymbol: dX,
        getAliasedSymbol: Zl,
        getEmitResolver: iC,
        requiresAddingImplicitUndefined: MR,
        getExportsOfModule: O1,
        getExportsAndPropertiesOfModule: P2,
        forEachExportAndPropertyOfModule: UE,
        getSymbolWalker: Ene(stt, jp, ro, Nd, om, ft, t_, g_, x_, Vo),
        getAmbientModules: Mft,
        getJsxIntrinsicTagNamesAt: gst,
        isOptionalParameter: (r) => {
          const s = Ca(r, Fi);
          return s ? T8(s) : !1;
        },
        tryGetMemberInModuleExports: (r, s) => ET(mc(r), s),
        tryGetMemberInModuleExportsAndProperties: (r, s) => fC(mc(r), s),
        tryFindAmbientModule: (r) => N3e(r, !0),
        getApparentType: h_,
        getUnionType: Yn,
        isTypeAssignableTo: qa,
        createAnonymousType: Yo,
        createSignature: Zm,
        createSymbol: Fs,
        createIndexInfo: Ch,
        getAnyType: () => Ve,
        getStringType: () => Cr,
        getStringLiteralType: sf,
        getNumberType: () => et,
        getNumberLiteralType: cm,
        getBigIntType: () => kt,
        getBigIntLiteralType: MM,
        getUnknownType: () => Re,
        createPromiseType: bR,
        createArrayType: Ju,
        getElementTypeOfArrayType: GM,
        getBooleanType: () => Jt,
        getFalseType: (r) => r ? wt : qt,
        getTrueType: (r) => r ? Ir : Yt,
        getVoidType: () => Qt,
        getUndefinedType: () => $e,
        getNullType: () => vr,
        getESSymbolType: () => $t,
        getNeverType: () => ct,
        getNonPrimitiveType: () => cs,
        getOptionalType: () => Pr,
        getPromiseType: () => PM(!1),
        getPromiseLikeType: () => tAe(!1),
        getAnyAsyncIterableType: () => {
          const r = AM(!1);
          if (r !== Ma)
            return l0(r, [
              Ve,
              Ve,
              Ve
            ]);
        },
        isSymbolAccessible: L1,
        isArrayType: Jp,
        isTupleType: Ls,
        isArrayLikeType: Sy,
        isEmptyAnonymousObjectType: Ag,
        isTypeInvalidDueToUnionDiscriminant: zet,
        getExactOptionalProperties: hnt,
        getAllPossiblePropertiesOfTypes: Wet,
        getSuggestedSymbolForNonexistentProperty: Kde,
        getSuggestedSymbolForNonexistentJSXAttribute: e8e,
        getSuggestedSymbolForNonexistentSymbol: (r, s, l) => r8e(r, mc(s), l),
        getSuggestedSymbolForNonexistentModule: eme,
        getSuggestedSymbolForNonexistentClassMember: KIe,
        getBaseConstraintOfType: xu,
        getDefaultFromTypeParameter: (r) => r && r.flags & 524288 ? j2(r) : void 0,
        resolveName(r, s, l, f) {
          return Gr(s, mc(r), l, void 0, !1, f);
        },
        getJsxNamespace: (r) => Ti(x2(r)),
        getJsxFragmentFactory: (r) => {
          const s = age(r);
          return s && Ti(x_(s).escapedText);
        },
        getAccessibleSymbolChain: A2,
        getTypePredicateOfSignature: jp,
        resolveExternalModuleName: (r) => {
          const s = Ca(r, dt);
          return s && Ru(s, s, !0);
        },
        resolveExternalModuleSymbol: Af,
        tryGetThisTypeAt: (r, s, l) => {
          const f = Ca(r);
          return f && Ode(f, s, l);
        },
        getTypeArgumentConstraint: (r) => {
          const s = Ca(r, ui);
          return s && qct(s);
        },
        getSuggestionDiagnostics: (r, s) => {
          const l = Ca(r, Pi) || E.fail("Could not determine parsed source file.");
          if (x6(l, L, e)) return Te;
          let f;
          try {
            return i = s, Zme(l), E.assert(!!(Pn(l).flags & 1)), f = Mn(f, _T.getDiagnostics(l.fileName)), x7e(i5e(l), (m, y, x) => {
              !Ax(m) && !n5e(y, !!(m.flags & 33554432)) && (f || (f = [])).push({
                ...x,
                category: 2
              });
            }), f || Te;
          } finally {
            i = void 0;
          }
        },
        runWithCancellationToken: (r, s) => {
          try {
            return i = r, s(Li);
          } finally {
            i = void 0;
          }
        },
        getLocalTypeParametersOfClassOrInterfaceOrTypeAlias: e_,
        isDeclarationVisible: xe,
        isPropertyAccessible: rme,
        getTypeOnlyAliasDeclaration: wd,
        getMemberOverrideModifierStatus: Eut,
        isTypeParameterPossiblyReferenced: BM,
        typeHasCallOrConstructSignatures: eQ,
        getSymbolFlags: m_,
        getTypeArgumentsForResolvedSignature: ri,
        isLibType: L2
      };
      function ri(r) {
        if (r.mapper !== void 0)
          return p0((r.target || r).typeParameters, r.mapper);
      }
      function Zr(r, s) {
        const l = /* @__PURE__ */ new Set(), f = [];
        ra(s, () => Me(r, f, void 0, 0));
        for (const m of f) l.add(m);
        f.length = 0, ni(s, () => Me(r, f, void 0, 0));
        for (const m of f) l.add(m);
        return ma(l);
      }
      function ni(r, s) {
        if (r = cr(r, cB), r) {
          const l = [], f = [];
          for (; r; ) {
            const y = Pn(r);
            if (l.push([y, y.resolvedSignature]), y.resolvedSignature = void 0, r1(r)) {
              const x = Wi(mn(r)), O = x.type;
              f.push([x, O]), x.type = void 0;
            }
            r = cr(r.parent, cB);
          }
          const m = s();
          for (const [y, x] of l) y.resolvedSignature = x;
          for (const [y, x] of f) y.type = x;
          return m;
        }
        return s();
      }
      function ra(r, s) {
        const l = cr(r, Wy);
        if (l) {
          let m = r;
          do
            Pn(m).skipDirectInference = !0, m = m.parent;
          while (m && m !== l);
        }
        P = !0;
        const f = ni(r, s);
        if (P = !1, l) {
          let m = r;
          do
            Pn(m).skipDirectInference = void 0, m = m.parent;
          while (m && m !== l);
        }
        return f;
      }
      function Me(r, s, l, f) {
        const m = Ca(r, Wy);
        Ar = l;
        const y = m ? m4(m, s, f) : void 0;
        return Ar = void 0, y;
      }
      var vt = /* @__PURE__ */ new Map(), tr = /* @__PURE__ */ new Map(), Ur = /* @__PURE__ */ new Map(), $n = /* @__PURE__ */ new Map(), zn = /* @__PURE__ */ new Map(), na = /* @__PURE__ */ new Map(), Ea = /* @__PURE__ */ new Map(), Da = /* @__PURE__ */ new Map(), Lr = /* @__PURE__ */ new Map(), ha = /* @__PURE__ */ new Map(), Ye = /* @__PURE__ */ new Map(), Pt = /* @__PURE__ */ new Map(), ne = /* @__PURE__ */ new Map(), tt = /* @__PURE__ */ new Map(), re = /* @__PURE__ */ new Map(), we = [], Ge = /* @__PURE__ */ new Map(), nt = /* @__PURE__ */ new Set(), it = Fs(4, "unknown"), ut = Fs(0, "__resolving__"), Qe = /* @__PURE__ */ new Map(), xt = /* @__PURE__ */ new Map(), Dt = /* @__PURE__ */ new Set(), Ve = Ys(1, "any"), fr = Ys(1, "any", 262144, "auto"), rr = Ys(1, "any", void 0, "wildcard"), Oe = Ys(1, "any", void 0, "blocked string"), rt = Ys(1, "error"), ee = Ys(1, "unresolved"), q = Ys(1, "any", 65536, "non-inferrable"), j = Ys(1, "intrinsic"), Re = Ys(2, "unknown"), $e = Ys(4, "undefined"), ye = Q ? $e : Ys(4, "undefined", 65536, "widening"), Ke = Ys(4, "undefined", void 0, "missing"), pr = ce ? Ke : $e, Pr = Ys(4, "undefined", void 0, "optional"), vr = Ys(8, "null"), fn = Q ? vr : Ys(8, "null", 65536, "widening"), Cr = Ys(32, "string"), et = Ys(64, "number"), kt = Ys(128, "bigint"), wt = Ys(8192, "false", void 0, "fresh"), qt = Ys(8192, "false"), Ir = Ys(8192, "true", void 0, "fresh"), Yt = Ys(8192, "true");
      Ir.regularType = Yt, Ir.freshType = Ir, Yt.regularType = Yt, Yt.freshType = Ir, wt.regularType = qt, wt.freshType = wt, qt.regularType = qt, qt.freshType = wt;
      var Jt = Yn([qt, Yt]), $t = Ys(512, "symbol"), Qt = Ys(16, "void"), ct = Ys(262144, "never"), wn = Ys(262144, "never", 262144, "silent"), Mi = Ys(262144, "never", void 0, "implicit"), os = Ys(262144, "never", void 0, "unreachable"), cs = Ys(131072, "object"), xa = Yn([Cr, et]), oo = Yn([
        Cr,
        et,
        $t
      ]), To = Yn([et, kt]), ia = Yn([
        Cr,
        et,
        Jt,
        kt,
        vr,
        $e
      ]), ja = zT(["", ""], [et]), _o = jM((r) => r.flags & 524288 ? Wrt(r) : r, () => "(restrictive mapper)"), Yc = jM((r) => r.flags & 524288 ? rr : r, () => "(permissive mapper)"), Ou = Ys(262144, "never", void 0, "unique literal"), _c = jM((r) => r.flags & 524288 ? Ou : r, () => "(unique literal mapper)"), xl, fa = jM((r) => (xl && (r === lt || r === St || r === jr) && xl(!0), r), () => "(unmeasurable reporter)"), $a = jM((r) => (xl && (r === lt || r === St || r === jr) && xl(!1), r), () => "(unreliable reporter)"), Yi = Yo(void 0, R, Te, Te, Te), Is = Yo(void 0, R, Te, Te, Te);
      Is.objectFlags |= 2048;
      var Zt = Yo(void 0, R, Te, Te, Te);
      Zt.objectFlags |= 141440;
      var Mo = Fs(2048, "__type");
      Mo.members = Ka();
      var ou = Yo(Mo, R, Te, Te, Te), Wl = Yo(void 0, R, Te, Te, Te), bu = Q ? Yn([
        $e,
        vr,
        Wl
      ]) : Re, Ma = Yo(void 0, R, Te, Te, Te);
      Ma.instantiations = /* @__PURE__ */ new Map();
      var ac = Yo(void 0, R, Te, Te, Te);
      ac.objectFlags |= 262144;
      var Qo = Yo(void 0, R, Te, Te, Te), I = Yo(void 0, R, Te, Te, Te), je = Yo(void 0, R, Te, Te, Te), lt = fp(), St = fp();
      St.constraint = lt;
      var jr = fp(), Bn = fp(), tn = fp();
      tn.constraint = Bn;
      var ai = x8(1, "<<unresolved>>", 0, Ve), ei = Zm(void 0, void 0, void 0, Te, Ve, void 0, 0, 0), La = Zm(void 0, void 0, void 0, Te, rt, void 0, 0, 0), ds = Zm(void 0, void 0, void 0, Te, Ve, void 0, 0, 0), cl = Zm(void 0, void 0, void 0, Te, wn, void 0, 0, 0), vc = Ch(et, Cr, !0), ml = Ch(Cr, Ve, !1), gl = /* @__PURE__ */ new Map(), Os = {
        get yieldType() {
          return E.fail("Not supported");
        },
        get returnType() {
          return E.fail("Not supported");
        },
        get nextType() {
          return E.fail("Not supported");
        }
      }, Ao = vb(Ve, Ve, Ve), Su = {
        iterableCacheKey: "iterationTypesOfAsyncIterable",
        iteratorCacheKey: "iterationTypesOfAsyncIterator",
        iteratorSymbolName: "asyncIterator",
        getGlobalIteratorType: Stt,
        getGlobalIterableType: AM,
        getGlobalIterableIteratorType: rAe,
        getGlobalIteratorObjectType: xtt,
        getGlobalGeneratorType: ktt,
        getGlobalBuiltinIteratorTypes: Ttt,
        resolveIterationType: (r, s) => OC(r, s, p.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),
        mustHaveANextMethodDiagnostic: p.An_async_iterator_must_have_a_next_method,
        mustBeAMethodDiagnostic: p.The_0_property_of_an_async_iterator_must_be_a_method,
        mustHaveAValueDiagnostic: p.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property
      }, rf = {
        iterableCacheKey: "iterationTypesOfIterable",
        iteratorCacheKey: "iterationTypesOfIterator",
        iteratorSymbolName: "iterator",
        getGlobalIteratorType: Ctt,
        getGlobalIterableType: NM,
        getGlobalIterableIteratorType: nAe,
        getGlobalIteratorObjectType: Dtt,
        getGlobalGeneratorType: wtt,
        getGlobalBuiltinIteratorTypes: Ett,
        resolveIterationType: (r, s) => r,
        mustHaveANextMethodDiagnostic: p.An_iterator_must_have_a_next_method,
        mustBeAMethodDiagnostic: p.The_0_property_of_an_iterator_must_be_a_method,
        mustHaveAValueDiagnostic: p.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property
      }, Ip, Pe = /* @__PURE__ */ new Map(), jt = /* @__PURE__ */ new Map(), Yr, Hi, Js, io, Qs, Oc, Dc, zs, bc, Il, Op, Wf, id, ad, hl, ll, Kd, em, e0, Fu, nf, A_, t0, Uf, Z, st, Rt, F, ve, qe, Bt, Rr, cn, dr, Cn, fs, ji, Fc, Ul, Lu, N_, cu, lh, X0, Q0, vg, r0, S1, Y0, Vf, bg, T1, Sd, qf, ze, at, At, yr, Br, Tn, Er, hn = /* @__PURE__ */ new Map(), Vr = 0, li = 0, ki = 0, Zi = !1, yo = 0, Jc, Fp, Td, tm = [], xd = [], rm = [], nm = 0, Wm = [], Qk = [], g2 = [], x1 = 0, sT = [], h2 = [], Um = 0, Yk = sf(""), Zk = cm(0), gP = MM({
        negative: !1,
        base10Value: "0"
      }), n0 = [], Kk = [], y2 = [], Z0 = 0, k1 = !1, eC = 0, PE = 10, tC = [], oT = [], v2 = [], K0 = [], AE = [], rC = [], cT = [], b2 = [], NE = [], nC = [], lT = [], ey = [], uh = [], ty = [], _h = [], Hv = [], ry = [], S2 = [], uT = [], C1 = 0, Ws = SD(), _T = SD(), Ql = If(), im, fh, cp = /* @__PURE__ */ new Map(), lp = /* @__PURE__ */ new Map(), Sc = /* @__PURE__ */ new Map(), lu = /* @__PURE__ */ new Map(), Lc = /* @__PURE__ */ new Map(), T2 = /* @__PURE__ */ new Map(), ph = [
        [".mts", ".mjs"],
        [".ts", ".js"],
        [".cts", ".cjs"],
        [".mjs", ".mjs"],
        [".js", ".js"],
        [".cjs", ".cjs"],
        [".tsx", L.jsx === 1 ? ".jsx" : ".js"],
        [".jsx", ".jsx"],
        [".json", ".json"]
      ];
      return X_t(), Li;
      function Sg(r) {
        return !Ln(r) || !Fe(r.name) || !Ln(r.expression) && !Fe(r.expression) ? !1 : Fe(r.expression) ? On(r.expression) === "Symbol" && t_(r.expression) === (s4("Symbol", 1160127, void 0) || it) : Fe(r.expression.expression) ? On(r.expression.name) === "Symbol" && On(r.expression.expression) === "globalThis" && t_(r.expression.expression) === Ie : !1;
      }
      function Vm(r) {
        return r ? re.get(r) : void 0;
      }
      function E1(r, s) {
        return r && re.set(r, s), s;
      }
      function x2(r) {
        if (r) {
          const s = Sr(r);
          if (s) if (yd(r)) {
            if (s.localJsxFragmentNamespace) return s.localJsxFragmentNamespace;
            const l = s.pragmas.get("jsxfrag");
            if (l && (s.localJsxFragmentFactory = Tk((da(l) ? l[0] : l).arguments.factory, z), Ze(s.localJsxFragmentFactory, $v, S_), s.localJsxFragmentFactory))
              return s.localJsxFragmentNamespace = x_(s.localJsxFragmentFactory).escapedText;
            const f = age(r);
            if (f)
              return s.localJsxFragmentFactory = f, s.localJsxFragmentNamespace = x_(f).escapedText;
          } else {
            const l = IE(s);
            if (l) return s.localJsxNamespace = l;
          }
        }
        return im || (im = "React", L.jsxFactory ? (fh = Tk(L.jsxFactory, z), Ze(fh, $v), fh && (im = x_(fh).escapedText)) : L.reactNamespace && (im = mc(L.reactNamespace))), fh || (fh = A.createQualifiedName(A.createIdentifier(Ti(im)), "createElement")), im;
      }
      function IE(r) {
        if (r.localJsxNamespace) return r.localJsxNamespace;
        const s = r.pragmas.get("jsx");
        if (s && (r.localJsxFactory = Tk((da(s) ? s[0] : s).arguments.factory, z), Ze(r.localJsxFactory, $v, S_), r.localJsxFactory))
          return r.localJsxNamespace = x_(r.localJsxFactory).escapedText;
      }
      function $v(r) {
        return Ud(r, -1, -1), Tr(r, $v, void 0);
      }
      function iC(r, s, l) {
        return l || a5e(r, s), ot;
      }
      function OE(r, s, ...l) {
        const f = r ? Kr(r, s, ...l) : nc(s, ...l), m = Ws.lookup(f);
        return m || (Ws.add(f), f);
      }
      function ny(r, s, l, ...f) {
        const m = We(s, l, ...f);
        return m.skippedOn = r, m;
      }
      function Xv(r, s, ...l) {
        return r ? Kr(r, s, ...l) : nc(s, ...l);
      }
      function We(r, s, ...l) {
        const f = Xv(r, s, ...l);
        return Ws.add(f), f;
      }
      function iy(r) {
        const s = Sr(r).fileName;
        return jc(s, [".cts", ".cjs"]) ? p.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax : p.ECMAScript_imports_and_exports_cannot_be_written_in_a_CommonJS_file_under_verbatimModuleSyntax_Adjust_the_type_field_in_the_nearest_package_json_to_make_this_file_an_ECMAScript_module_or_adjust_your_verbatimModuleSyntax_module_and_moduleResolution_settings_in_TypeScript;
      }
      function Tg(r, s) {
        r ? Ws.add(s) : _T.add({
          ...s,
          category: 2
        });
      }
      function uu(r, s, l, ...f) {
        if (s.pos < 0 || s.end < 0) {
          if (!r) return;
          const m = Sr(s);
          Tg(r, "message" in l ? wl(m, 0, 0, l, ...f) : FB(m, l));
          return;
        }
        Tg(r, "message" in l ? Kr(s, l, ...f) : Gg(Sr(s), s, l));
      }
      function am(r, s, l, ...f) {
        const m = We(r, l, ...f);
        return s && ts(m, Kr(r, p.Did_you_forget_to_use_await)), m;
      }
      function ay(r, s) {
        const l = Array.isArray(r) ? bt(r, Xj) : Xj(r);
        return l && ts(s, Kr(l, p.The_declaration_was_marked_as_deprecated_here)), _T.add(s), s;
      }
      function kd(r) {
        const s = ju(r);
        return s && It(r.declarations) > 1 ? s.flags & 64 ? _t(r.declarations, Qv) : hr(r.declarations, Qv) : !!r.valueDeclaration && Qv(r.valueDeclaration) || It(r.declarations) && hr(r.declarations, Qv);
      }
      function Qv(r) {
        return !!(Q2(r) & 536870912);
      }
      function Cd(r, s, l) {
        return ay(s, Kr(r, p._0_is_deprecated, l));
      }
      function k2(r, s, l, f) {
        return ay(s, l ? Kr(r, p.The_signature_0_of_1_is_deprecated, f, l) : Kr(r, p._0_is_deprecated, f));
      }
      function Fs(r, s, l) {
        d++;
        const f = new o(r | 33554432, s);
        return f.links = new $1e(), f.links.checkFlags = l || 0, f;
      }
      function Pf(r, s) {
        const l = Fs(1, r);
        return l.links.type = s, l;
      }
      function fT(r, s) {
        const l = Fs(4, r);
        return l.links.type = s, l;
      }
      function qm(r) {
        let s = 0;
        return r & 2 && (s |= 111551), r & 1 && (s |= 111550), r & 4 && (s |= 0), r & 8 && (s |= 900095), r & 16 && (s |= 110991), r & 32 && (s |= 899503), r & 64 && (s |= 788872), r & 256 && (s |= 899327), r & 128 && (s |= 899967), r & 512 && (s |= 110735), r & 8192 && (s |= 103359), r & 32768 && (s |= 46015), r & 65536 && (s |= 78783), r & 262144 && (s |= 526824), r & 524288 && (s |= 788968), r & 2097152 && (s |= 2097152), s;
      }
      function i0(r, s) {
        s.mergeId || (s.mergeId = G1e, G1e++), tC[s.mergeId] = r;
      }
      function Gm(r) {
        const s = Fs(r.flags, r.escapedName);
        return s.declarations = r.declarations ? r.declarations.slice() : [], s.parent = r.parent, r.valueDeclaration && (s.valueDeclaration = r.valueDeclaration), r.constEnumOnlyModule && (s.constEnumOnlyModule = !0), r.members && (s.members = new Map(r.members)), r.exports && (s.exports = new Map(r.exports)), i0(s, r), s;
      }
      function sy(r, s, l = !1) {
        if (!(r.flags & qm(s.flags)) || (s.flags | r.flags) & 67108864) {
          if (s === r) return r;
          if (!(r.flags & 33554432)) {
            const y = zc(r);
            if (y === it) return s;
            if (!(y.flags & qm(s.flags)) || (s.flags | y.flags) & 67108864) r = Gm(y);
            else
              return f(r, s), s;
          }
          s.flags & 512 && r.flags & 512 && r.constEnumOnlyModule && !s.constEnumOnlyModule && (r.constEnumOnlyModule = !1), r.flags |= s.flags, s.valueDeclaration && _D(r, s.valueDeclaration), Mn(r.declarations, s.declarations), s.members && (r.members || (r.members = Ka()), to(r.members, s.members, l)), s.exports && (r.exports || (r.exports = Ka()), to(r.exports, s.exports, l, r)), l || i0(r, s);
        } else r.flags & 1024 ? r !== Ie && We(s.declarations && va(s.declarations[0]), p.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity, Xi(r)) : f(r, s);
        return r;
        function f(y, x) {
          const O = !!(y.flags & 384 || x.flags & 384), J = !!(y.flags & 2 || x.flags & 2), V = O ? p.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations : J ? p.Cannot_redeclare_block_scoped_variable_0 : p.Duplicate_identifier_0, Y = x.declarations && Sr(x.declarations[0]), be = y.declarations && Sr(y.declarations[0]), me = K4(Y, L.checkJs), Je = K4(be, L.checkJs), gt = Xi(x);
          if (Y && be && Ip && !O && Y !== be) {
            const ht = Rh(Y.path, be.path) === -1 ? Y : be, ir = ht === Y ? be : Y, mr = v_(v_(Ip, `${ht.path}|${ir.path}`, () => ({
              firstFile: ht,
              secondFile: ir,
              conflictingSymbols: /* @__PURE__ */ new Map()
            })).conflictingSymbols, gt, () => ({
              isBlockScoped: J,
              firstFileLocations: [],
              secondFileLocations: []
            }));
            me || m(mr.firstFileLocations, x), Je || m(mr.secondFileLocations, y);
          } else
            me || Yv(x, V, gt, y), Je || Yv(y, V, gt, x);
        }
        function m(y, x) {
          if (x.declarations) for (const O of x.declarations) hp(y, O);
        }
      }
      function Yv(r, s, l, f) {
        bt(r.declarations, (m) => {
          oy(m, s, l, f.declarations);
        });
      }
      function oy(r, s, l, f) {
        const m = (_v(r, !1) ? UB(r) : va(r)) || r, y = OE(m, s, l);
        for (const x of f || Te) {
          const O = (_v(x, !1) ? UB(x) : va(x)) || x;
          if (O === m) continue;
          y.relatedInformation = y.relatedInformation || [];
          const J = Kr(O, p._0_was_also_declared_here, l), V = Kr(O, p.and_here);
          It(y.relatedInformation) >= 5 || _t(y.relatedInformation, (Y) => ND(Y, V) === 0 || ND(Y, J) === 0) || ts(y, It(y.relatedInformation) ? V : J);
        }
      }
      function pT(r, s) {
        if (!r?.size) return s;
        if (!s?.size) return r;
        const l = Ka();
        return to(l, r), to(l, s), l;
      }
      function to(r, s, l = !1, f) {
        s.forEach((m, y) => {
          const x = r.get(y), O = x ? sy(x, m, l) : ys(m);
          f && x && O.flags & 33554432 && (O.parent = f), r.set(y, O);
        });
      }
      function dh(r) {
        var s, l, f;
        const m = r.parent;
        if (((s = m.symbol.declarations) == null ? void 0 : s[0]) !== m) {
          E.assert(m.symbol.declarations.length > 1);
          return;
        }
        if (ug(m)) to(Ce, m.symbol.exports);
        else {
          let y = eb(r, r, r.parent.parent.flags & 33554432 ? void 0 : p.Invalid_module_name_in_augmentation_module_0_cannot_be_found, !1, !0);
          if (!y) return;
          if (y = Af(y), y.flags & 1920) if (_t(Hi, (x) => y === x.symbol)) {
            const x = sy(m.symbol, y, !0);
            Js || (Js = /* @__PURE__ */ new Map()), Js.set(r.text, x);
          } else {
            if ((l = y.exports) != null && l.get("__export") && ((f = m.symbol.exports) != null && f.size)) {
              const x = Jfe(y, "resolvedExports");
              for (const [O, J] of ma(m.symbol.exports.entries())) x.has(O) && !y.exports.has(O) && sy(x.get(O), J);
            }
            sy(y, m.symbol);
          }
          else We(r, p.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity, r.text);
        }
      }
      function FE() {
        const r = ue.escapedName, s = Ce.get(r);
        s ? bt(s.declarations, (l) => {
          Kx(l) || Ws.add(Kr(l, p.Declaration_name_conflicts_with_built_in_global_identifier_0, Ti(r)));
        }) : Ce.set(r, ue);
      }
      function Wi(r) {
        if (r.flags & 33554432) return r.links;
        const s = ss(r);
        return oT[s] ?? (oT[s] = new $1e());
      }
      function Pn(r) {
        const s = Hs(r);
        return v2[s] || (v2[s] = new ARe());
      }
      function Ku(r, s, l) {
        if (l) {
          const f = ys(r.get(s));
          if (f && (f.flags & l || f.flags & 2097152 && m_(f) & l))
            return f;
        }
      }
      function hP(r, s) {
        const l = r.parent, f = r.parent.parent, m = Ku(l.locals, s, 111551), y = Ku(Eg(f.symbol), s, 111551);
        return m && y ? [m, y] : E.fail("There should exist two symbols, one as property declaration and one as parameter declaration");
      }
      function cy(r, s) {
        const l = Sr(r), f = Sr(s), m = Bd(r);
        if (l !== f) {
          if (H && (l.externalModuleIndicator || f.externalModuleIndicator) || !L.outFile || zx(s) || r.flags & 33554432 || x(s, r)) return !0;
          const V = e.getSourceFiles();
          return V.indexOf(l) <= V.indexOf(f);
        }
        if (s.flags & 16777216 || zx(s) || hde(s)) return !0;
        if (r.pos <= s.pos && !(ga(r) && eA(s.parent) && !r.initializer && !r.exclamationToken)) {
          if (r.kind === 209) {
            const V = dv(s, 209);
            return V ? cr(V, Ns) !== cr(r, Ns) || r.pos < V.pos : cy(dv(r, 261), s);
          } else {
            if (r.kind === 261) return !y(r, s);
            if (Zn(r)) {
              const V = cr(s, (Y) => Y === r ? "quit" : _s(Y) ? Y.parent.parent === r : !U && pl(Y) && (Y.parent === r || hc(Y.parent) && Y.parent.parent === r || P3(Y.parent) && Y.parent.parent === r || ga(Y.parent) && Y.parent.parent === r || Fi(Y.parent) && Y.parent.parent.parent === r));
              return V ? !U && pl(V) ? !!cr(s, (Y) => Y === V ? "quit" : Ra(Y) && !lv(Y)) : !1 : !0;
            } else {
              if (ga(r)) return !J(r, s, !1);
              if (df(r, r.parent)) return !(ie && nu(r) === nu(s) && x(s, r));
            }
          }
          return !0;
        }
        if (s.parent.kind === 282 || s.parent.kind === 278 && s.parent.isExportEquals || s.kind === 278 && s.isExportEquals) return !0;
        if (x(s, r)) return ie && nu(r) && (ga(r) || df(r, r.parent)) ? !J(r, s, !0) : !0;
        return !1;
        function y(V, Y) {
          switch (V.parent.parent.kind) {
            case 244:
            case 249:
            case 251:
              if (D1(Y, V, m)) return !0;
              break;
          }
          const be = V.parent.parent;
          return wb(be) && D1(Y, be.expression, m);
        }
        function x(V, Y) {
          return O(V, Y);
        }
        function O(V, Y) {
          return !!cr(V, (be) => {
            if (be === m) return "quit";
            if (Ra(be)) return !lv(be);
            if (Bc(be)) return Y.pos < V.pos;
            const me = qn(be.parent, ga);
            if (me && me.initializer === be) {
              if (es(be.parent)) {
                if (Y.kind === 175) return !0;
                if (ga(Y) && nu(V) === nu(Y)) {
                  const gt = Y.name;
                  if ((Fe(gt) || Oi(gt)) && Iut(gt, ft(mn(Y)), dn(Y.parent.members, Bc), Y.parent.pos, be.pos))
                    return !0;
                }
              } else if (!(Y.kind === 173 && !es(Y)) || nu(V) !== nu(Y)) return !0;
            }
            const Je = qn(be.parent, pl);
            if (Je && Je.expression === be) {
              if (Fi(Je.parent)) return O(Je.parent.parent.parent, Y) ? !0 : "quit";
              if (hc(Je.parent)) return O(Je.parent.parent, Y) ? !0 : "quit";
            }
            return !1;
          });
        }
        function J(V, Y, be) {
          return Y.end > V.end ? !1 : cr(Y, (me) => {
            if (me === V) return "quit";
            switch (me.kind) {
              case 220:
                return !0;
              case 173:
                return be && (ga(V) && me.parent === V.parent || df(V, V.parent) && me.parent === V.parent.parent) ? "quit" : !0;
              case 242:
                switch (me.parent.kind) {
                  case 178:
                  case 175:
                  case 179:
                    return !0;
                  default:
                    return !1;
                }
              default:
                return !1;
            }
          }) === void 0;
        }
      }
      function Sn(r) {
        return Pn(r).declarationRequiresScopeChange;
      }
      function Mu(r, s) {
        Pn(r).declarationRequiresScopeChange = s;
      }
      function wa(r, s, l, f) {
        return ie ? !1 : (r && !f && sC(r, s, s) || We(r, r && l.type && T3(l.type, r.pos) ? p.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor : p.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor, Do(l.name), $r(s)), !0);
      }
      function ly(r, s, l, f) {
        const m = Ta(s) ? s : s.escapedText;
        n(() => {
          if (!r || r.parent.kind !== 325 && !sC(r, m, s) && !dT(r) && !xg(r, m, l) && !mT(r, m) && !Ed(r, m, l) && !mh(r, m, l) && !sd(r, m, l)) {
            let y, x;
            if (s && (x = Ast(s), x && We(r, f, $r(s), x)), !x && eC < PE && (y = r8e(r, m, l), y?.valueDeclaration && o_(y.valueDeclaration) && ug(y.valueDeclaration) && (y = void 0), y)) {
              const O = Xi(y), J = Yde(r, y, !1), V = Xv(r, l === 1920 || s && typeof s != "string" && wo(s) ? p.Cannot_find_namespace_0_Did_you_mean_1 : J ? p.Could_not_find_name_0_Did_you_mean_1 : p.Cannot_find_name_0_Did_you_mean_1, $r(s), O);
              V.canonicalHead = hK(f, $r(s)), Tg(!J, V), y.valueDeclaration && ts(V, Kr(y.valueDeclaration, p._0_is_declared_here, O));
            }
            !y && !x && s && We(r, f, $r(s)), eC++;
          }
        });
      }
      function aC(r, s, l, f, m, y) {
        n(() => {
          var x;
          const O = s.escapedName, J = f && Pi(f) && gf(f);
          if (r && (l & 2 || (l & 32 || l & 384) && (l & 111551) === 111551)) {
            const V = Ui(s);
            (V.flags & 2 || V.flags & 32 || V.flags & 384) && _y(V, r);
          }
          if (J && (l & 111551) === 111551 && !(r.flags & 16777216)) {
            const V = ys(s);
            It(V.declarations) && hr(V.declarations, (Y) => cN(Y) || Pi(Y) && !!Y.symbol.globalExports) && uu(!L.allowUmdGlobalAccess, r, p._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead, Ti(O));
          }
          if (m && !y && (l & 111551) === 111551) {
            const V = ys(c$(s)), Y = xm(m);
            V === mn(m) ? We(r, p.Parameter_0_cannot_reference_itself, Do(m.name)) : V.valueDeclaration && V.valueDeclaration.pos > m.pos && Y.parent.locals && Ku(Y.parent.locals, V.escapedName, l) === V && We(r, p.Parameter_0_cannot_reference_identifier_1_declared_after_it, Do(m.name), Do(r));
          }
          if (r && l & 111551 && s.flags & 2097152 && !(s.flags & 111551) && !vv(r)) {
            const V = wd(s, 111551);
            if (V) {
              const Y = V.kind === 282 || V.kind === 279 || V.kind === 281 ? p._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type : p._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type, be = Ti(O);
              uy(We(r, Y, be), V, be);
            }
          }
          if (L.isolatedModules && s && J && (l & 111551) === 111551) {
            const V = Ku(Ce, O, l) === s && Pi(f) && f.locals && Ku(f.locals, O, -111552);
            if (V) {
              const Y = (x = V.declarations) == null ? void 0 : x.find((be) => be.kind === 277 || be.kind === 274 || be.kind === 275 || be.kind === 272);
              Y && !XC(Y) && We(Y, p.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled, Ti(O));
            }
          }
        });
      }
      function uy(r, s, l) {
        return s ? ts(r, Kr(s, s.kind === 282 || s.kind === 279 || s.kind === 281 ? p._0_was_exported_here : p._0_was_imported_here, l)) : r;
      }
      function $r(r) {
        return Ta(r) ? Ti(r) : Do(r);
      }
      function sC(r, s, l) {
        if (!Fe(r) || r.escapedText !== s || s5e(r) || zx(r)) return !1;
        const f = c_(r, !1, !1);
        let m = f;
        for (; m; ) {
          if (Zn(m.parent)) {
            const y = mn(m.parent);
            if (!y) break;
            if (ms(ft(y), s))
              return We(r, p.Cannot_find_name_0_Did_you_mean_the_static_member_1_0, $r(l), Xi(y)), !0;
            if (m === f && !es(m)) {
              const x = Oo(y).thisType;
              if (ms(x, s))
                return We(r, p.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0, $r(l)), !0;
            }
          }
          m = m.parent;
        }
        return !1;
      }
      function dT(r) {
        const s = d_(r);
        return s && Tc(s, 64, !0) ? (We(r, p.Cannot_extend_an_interface_0_Did_you_mean_implements, uc(s)), !0) : !1;
      }
      function d_(r) {
        switch (r.kind) {
          case 80:
          case 212:
            return r.parent ? d_(r.parent) : void 0;
          case 234:
            if (go(r.expression)) return r.expression;
          default:
            return;
        }
      }
      function xg(r, s, l) {
        const f = 1920 | (rn(r) ? 111551 : 0);
        if (l === f) {
          const m = zc(Gr(r, s, 788968 & ~f, void 0, !1)), y = r.parent;
          if (m) {
            if (k_(y)) {
              E.assert(y.left === r, "Should only be resolving left side of qualified name as a namespace");
              const x = y.right.escapedText;
              if (ms(Oo(m), x))
                return We(y, p.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1, Ti(s), Ti(x)), !0;
            }
            return We(r, p._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here, Ti(s)), !0;
          }
        }
        return !1;
      }
      function sd(r, s, l) {
        if (l & 788584) {
          const f = zc(Gr(r, s, 111127, void 0, !1));
          if (f && !(f.flags & 1920))
            return We(r, p._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0, Ti(s)), !0;
        }
        return !1;
      }
      function Zv(r) {
        return r === "any" || r === "string" || r === "number" || r === "boolean" || r === "never" || r === "unknown";
      }
      function mT(r, s) {
        return Zv(s) && r.parent.kind === 282 ? (We(r, p.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module, s), !0) : !1;
      }
      function mh(r, s, l) {
        if (l & 111551) {
          if (Zv(s)) {
            const y = r.parent.parent;
            if (y && y.parent && kf(y)) {
              const x = y.token;
              y.parent.kind === 265 && x === 96 ? We(r, p.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types, Ti(s)) : Zn(y.parent) && x === 96 ? We(r, p.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values, Ti(s)) : Zn(y.parent) && x === 119 && We(r, p.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types, Ti(s));
            } else We(r, p._0_only_refers_to_a_type_but_is_being_used_as_a_value_here, Ti(s));
            return !0;
          }
          const f = zc(Gr(r, s, 788544, void 0, !1)), m = f && m_(f);
          if (f && m !== void 0 && !(m & 111551)) {
            const y = Ti(s);
            return Hm(s) ? We(r, p._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later, y) : up(r, f) ? We(r, p._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0, y, y === "K" ? "P" : "K") : We(r, p._0_only_refers_to_a_type_but_is_being_used_as_a_value_here, y), !0;
          }
        }
        return !1;
      }
      function up(r, s) {
        const l = cr(r.parent, (f) => _s(f) || f_(f) ? !1 : C_(f) || "quit");
        if (l && l.members.length === 1) {
          const f = Oo(s);
          return !!(f.flags & 134217728) && r7(f, 3072, !0);
        }
        return !1;
      }
      function Hm(r) {
        switch (r) {
          case "Promise":
          case "Symbol":
          case "Map":
          case "WeakMap":
          case "Set":
          case "WeakSet":
            return !0;
        }
        return !1;
      }
      function Ed(r, s, l) {
        if (l & 111127) {
          if (zc(Gr(r, s, 1024, void 0, !1)))
            return We(r, p.Cannot_use_namespace_0_as_a_value, Ti(s)), !0;
        } else if (l & 788544 && zc(Gr(r, s, 1536, void 0, !1)))
          return We(r, p.Cannot_use_namespace_0_as_a_type, Ti(s)), !0;
        return !1;
      }
      function _y(r, s) {
        var l;
        if (E.assert(!!(r.flags & 2 || r.flags & 32 || r.flags & 384)), r.flags & 67108881 && r.flags & 32) return;
        const f = (l = r.declarations) == null ? void 0 : l.find((m) => kB(m) || Zn(m) || m.kind === 267);
        if (f === void 0) return E.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");
        if (!(f.flags & 33554432) && !cy(f, s)) {
          let m;
          const y = Do(va(f));
          r.flags & 2 ? m = We(s, p.Block_scoped_variable_0_used_before_its_declaration, y) : r.flags & 32 ? m = We(s, p.Class_0_used_before_its_declaration, y) : r.flags & 256 ? m = We(s, p.Enum_0_used_before_its_declaration, y) : (E.assert(!!(r.flags & 128)), Zp(L) && (m = We(s, p.Enum_0_used_before_its_declaration, y))), m && ts(m, Kr(f, p._0_is_declared_here, y));
        }
      }
      function D1(r, s, l) {
        return !!s && !!cr(r, (f) => f === s || (f === l || Ra(f) && (!lv(f) || Gc(f) & 3) ? "quit" : !1));
      }
      function gT(r) {
        switch (r.kind) {
          case 272:
            return r;
          case 274:
            return r.parent;
          case 275:
            return r.parent.parent;
          case 277:
            return r.parent.parent.parent;
          default:
            return;
        }
      }
      function _p(r) {
        return r.declarations && Ya(r.declarations, fy);
      }
      function fy(r) {
        return r.kind === 272 || r.kind === 271 || r.kind === 274 && !!r.name || r.kind === 275 || r.kind === 281 || r.kind === 277 || r.kind === 282 || r.kind === 278 && yA(r) || un(r) && qc(r) === 2 && yA(r) || jo(r) && un(r.parent) && r.parent.left === r && r.parent.operatorToken.kind === 64 && oC(r.parent.right) || r.kind === 305 || r.kind === 304 && oC(r.initializer) || r.kind === 261 && $y(r) || r.kind === 209 && $y(r.parent.parent);
      }
      function oC(r) {
        return B5(r) || Lo(r) && ng(r);
      }
      function hT(r, s) {
        const l = P1(r);
        if (l) {
          const m = Hx(l.expression).arguments[0];
          return Fe(l.name) ? zc(ms(I3e(m), l.name.escapedText)) : void 0;
        }
        if (ci(r) || r.moduleReference.kind === 284) {
          const m = Ru(r, WB(r) || sD(r)), y = Af(m);
          if (y && 102 <= H && H <= 199) {
            const x = C2(y, "module.exports", r, s);
            if (x) return x;
          }
          return Hf(r, m, y, !1), y;
        }
        const f = JE(r.moduleReference, s);
        return yT(r, f), f;
      }
      function yT(r, s) {
        if (Hf(r, void 0, s, !1) && !r.isTypeOnly) {
          const l = wd(mn(r)), f = l.kind === 282 || l.kind === 279, m = f ? p.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type : p.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type, y = f ? p._0_was_exported_here : p._0_was_imported_here, x = l.kind === 279 ? "*" : Gy(l.name);
          ts(We(r.moduleReference, m), Kr(l, y, x));
        }
      }
      function Gf(r, s, l, f) {
        const m = r.exports.get("export="), y = m ? ms(ft(m), s, !0) : r.exports.get(s), x = zc(y, f);
        return Hf(l, y, x, !1), x;
      }
      function LE(r) {
        return Xo(r) && !r.isExportEquals || Qn(r, 2048) || $u(r) || gg(r);
      }
      function gh(r) {
        return Xs(r) ? e.getEmitSyntaxForUsageLocation(Sr(r), r) : void 0;
      }
      function w1(r, s) {
        return r === 99 && s === 1;
      }
      function $m(r, s) {
        if (100 <= H && H <= 199 && gh(r) === 99) {
          s ?? (s = Ru(r, r, !0));
          const l = s && z3(s);
          return l && (Tp(l) || gF(l.fileName) === ".d.json.ts");
        }
        return !1;
      }
      function hh(r, s, l, f) {
        const m = r && gh(f);
        if (r && m !== void 0) {
          const y = e.getImpliedNodeFormatForEmit(r);
          if (m === 99 && y === 1 && 100 <= H && H <= 199) return !0;
          if (m === 99 && y === 99) return !1;
          if (!y && r.isDeclarationFile && (e.getRedirectFromSourceFile(r.path) || e.getRedirectFromOutput(r.path))) {
            const x = e.getEmitModuleFormatOfFile(r);
            if (m === 99 && 5 <= x && x <= 99) return !1;
          }
        }
        if (!W) return !1;
        if (!r || r.isDeclarationFile) {
          const y = Gf(s, "default", void 0, !0);
          return !(y && _t(y.declarations, LE) || Gf(s, mc("__esModule"), void 0, l));
        }
        return T_(r) ? typeof r.externalModuleIndicator != "object" && !Gf(s, mc("__esModule"), void 0, l) : w2(s);
      }
      function Dd(r, s) {
        const l = Ru(r, r.parent.moduleSpecifier);
        if (l) return yh(l, r, s);
      }
      function yh(r, s, l) {
        var f;
        const m = (f = r.declarations) == null ? void 0 : f.find(Pi), y = Kv(s);
        let x, O;
        if (V3(r)) x = r;
        else if (m && y && 102 <= H && H <= 199 && gh(y) === 1 && e.getImpliedNodeFormatForEmit(m) === 99 && (O = Gf(r, "module.exports", s, l))) {
          if (!Dm(L)) {
            We(s.name, p.Module_0_can_only_be_default_imported_using_the_1_flag, Xi(r), "esModuleInterop");
            return;
          }
          return Hf(s, O, void 0, !1), O;
        } else x = Gf(r, "default", s, l);
        if (!y) return x;
        const J = $m(y, r), V = hh(m, r, l, y);
        if (!x && !V && !J) if (w2(r) && !W) {
          const Y = H >= 5 ? "allowSyntheticDefaultImports" : "esModuleInterop", be = r.exports.get("export=").valueDeclaration, me = We(s.name, p.Module_0_can_only_be_default_imported_using_the_1_flag, Xi(r), Y);
          be && ts(me, Kr(be, p.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag, Y));
        } else hd(s) ? Yl(r, s) : TT(r, r, s, By(s) && s.propertyName || s.name);
        else if (V || J) {
          const Y = Af(r, l) || zc(r, l);
          return Hf(s, r, Y, !1), Y;
        }
        return Hf(s, x, void 0, !1), x;
      }
      function Kv(r) {
        switch (r.kind) {
          case 274:
            return r.parent.moduleSpecifier;
          case 272:
            return qh(r.moduleReference) ? r.moduleReference.expression : void 0;
          case 275:
            return r.parent.parent.moduleSpecifier;
          case 277:
            return r.parent.parent.parent.moduleSpecifier;
          case 282:
            return r.parent.parent.moduleSpecifier;
          default:
            return E.assertNever(r);
        }
      }
      function Yl(r, s) {
        var l, f, m;
        if ((l = r.exports) != null && l.has(s.symbol.escapedName)) We(s.name, p.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead, Xi(r), Xi(s.symbol));
        else {
          const y = We(s.name, p.Module_0_has_no_default_export, Xi(r)), x = (f = r.exports) == null ? void 0 : f.get("__export");
          if (x) {
            const O = (m = x.declarations) == null ? void 0 : m.find((J) => {
              var V, Y;
              return !!(tl(J) && J.moduleSpecifier && ((Y = (V = Ru(J, J.moduleSpecifier)) == null ? void 0 : V.exports) != null && Y.has("default")));
            });
            O && ts(y, Kr(O, p.export_Asterisk_does_not_re_export_a_default));
          }
        }
      }
      function vT(r, s) {
        const l = r.parent.parent.moduleSpecifier, f = Ru(r, l), m = Xm(f, l, s, !1);
        return Hf(r, f, m, !1), m;
      }
      function vh(r, s) {
        const l = r.parent.moduleSpecifier, f = l && Ru(r, l), m = l && Xm(f, l, s, !1);
        return Hf(r, f, m, !1), m;
      }
      function bT(r, s) {
        if (r === it && s === it) return it;
        if (r.flags & 790504) return r;
        const l = Fs(r.flags | s.flags, r.escapedName);
        return E.assert(r.declarations || s.declarations), l.declarations = Z1(zi(r.declarations, s.declarations), S0), l.parent = r.parent || s.parent, r.valueDeclaration && (l.valueDeclaration = r.valueDeclaration), s.members && (l.members = new Map(s.members)), r.exports && (l.exports = new Map(r.exports)), l;
      }
      function C2(r, s, l, f) {
        var m;
        if (r.flags & 1536) {
          const y = Tu(r).get(s), x = zc(y, f);
          return Hf(l, y, x, !1, (m = Wi(r).typeOnlyExportStarMap) == null ? void 0 : m.get(s), s), x;
        }
      }
      function a0(r, s) {
        if (r.flags & 3) {
          const l = r.valueDeclaration.type;
          if (l) return zc(ms(Di(l), s));
        }
      }
      function ST(r, s, l = !1) {
        var f;
        const m = WB(r) || r.moduleSpecifier, y = Ru(r, m), x = !Ln(s) && s.propertyName || s.name;
        if (!Fe(x) && x.kind !== 11) return;
        const O = Ab(x), J = Xm(y, m, !1, O === "default" && W);
        if (J && (O || x.kind === 11)) {
          if (V3(y)) return y;
          let V;
          y && y.exports && y.exports.get("export=") ? V = ms(ft(J), O, !0) : V = a0(J, O), V = zc(V, l);
          let Y = C2(J, O, s, l);
          if (Y === void 0 && O === "default") {
            const me = (f = y.declarations) == null ? void 0 : f.find(Pi);
            ($m(m, y) || hh(me, y, l, m)) && (Y = Af(y, l) || zc(y, l));
          }
          const be = Y && V && Y !== V ? bT(V, Y) : Y || V;
          return By(s) && $m(m, y) && O !== "default" ? We(x, p.Named_imports_from_a_JSON_file_into_an_ECMAScript_module_are_not_allowed_when_module_is_set_to_0, mx[H]) : be || TT(y, J, r, x), be;
        }
      }
      function TT(r, s, l, f) {
        var m;
        const y = py(r, l), x = Do(f), O = Fe(f) ? eme(f, s) : void 0;
        if (O !== void 0) {
          const J = Xi(O), V = We(f, p._0_has_no_exported_member_named_1_Did_you_mean_2, y, x, J);
          O.valueDeclaration && ts(V, Kr(O.valueDeclaration, p._0_is_declared_here, J));
        } else (m = r.exports) != null && m.has("default") ? We(f, p.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead, y, x) : ME(l, f, x, r, y);
      }
      function ME(r, s, l, f, m) {
        var y, x;
        const O = (x = (y = qn(f.valueDeclaration, og)) == null ? void 0 : y.locals) == null ? void 0 : x.get(Ab(s)), J = f.exports;
        if (O) {
          const V = J?.get("export=");
          if (V) Nn(V, O) ? yP(r, s, l, m) : We(s, p.Module_0_has_no_exported_member_1, m, l);
          else {
            const Y = J ? xr(epe(J), (me) => !!Nn(me, O)) : void 0, be = Y ? We(s, p.Module_0_declares_1_locally_but_it_is_exported_as_2, m, l, Xi(Y)) : We(s, p.Module_0_declares_1_locally_but_it_is_not_exported, m, l);
            O.declarations && ts(be, ...or(O.declarations, (me, Je) => Kr(me, Je === 0 ? p._0_is_declared_here : p.and_here, l)));
          }
        } else We(s, p.Module_0_has_no_exported_member_1, m, l);
      }
      function yP(r, s, l, f) {
        H >= 5 ? We(s, Dm(L) ? p._0_can_only_be_imported_by_using_a_default_import : p._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import, l) : rn(r) ? We(s, Dm(L) ? p._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import : p._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import, l) : We(s, Dm(L) ? p._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import : p._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import, l, l, f);
      }
      function RE(r, s) {
        if (p_(r) && lg(r.propertyName || r.name)) {
          const x = Kv(r), O = x && Ru(r, x);
          if (O) return yh(O, r, s);
        }
        const l = Ns(r) ? xm(r) : r.parent.parent.parent, f = P1(l), m = ST(l, f || r, s), y = r.propertyName || r.name;
        return f && m && Fe(y) ? zc(ms(ft(m), y.escapedText), s) : (Hf(r, void 0, m, !1), m);
      }
      function P1(r) {
        if (ci(r) && r.initializer && Ln(r.initializer)) return r.initializer;
      }
      function A1(r, s) {
        if (jd(r.parent)) {
          const l = Af(r.parent.symbol, s);
          return Hf(r, void 0, l, !1), l;
        }
      }
      function cC(r, s, l) {
        const f = r.propertyName || r.name;
        if (lg(f)) {
          const y = Kv(r), x = y && Ru(r, y);
          if (x) return yh(x, r, !!l);
        }
        const m = r.parent.parent.moduleSpecifier ? ST(r.parent.parent, r, l) : f.kind === 11 ? void 0 : Tc(f, s, !1, l);
        return Hf(r, void 0, m, !1), m;
      }
      function vP(r, s) {
        const l = xT(Xo(r) ? r.expression : r.right, s);
        return Hf(r, void 0, l, !1), l;
      }
      function xT(r, s) {
        if (Hc(r)) return wc(r).symbol;
        if (!S_(r) && !go(r)) return;
        const l = Tc(r, 901119, !0, s);
        return l || (wc(r), Pn(r).resolvedSymbol);
      }
      function jE(r, s) {
        if (un(r.parent) && r.parent.left === r && r.parent.operatorToken.kind === 64)
          return xT(r.parent.right, s);
      }
      function s0(r, s = !1) {
        switch (r.kind) {
          case 272:
          case 261:
            return hT(r, s);
          case 274:
            return Dd(r, s);
          case 275:
            return vT(r, s);
          case 281:
            return vh(r, s);
          case 277:
          case 209:
            return RE(r, s);
          case 282:
            return cC(r, 901119, s);
          case 278:
          case 227:
            return vP(r, s);
          case 271:
            return A1(r, s);
          case 305:
            return Tc(r.name, 901119, !0, s);
          case 304:
            return xT(r.initializer, s);
          case 213:
          case 212:
            return jE(r, s);
          default:
            return E.fail();
        }
      }
      function lC(r, s = 901119) {
        return r ? (r.flags & (2097152 | s)) === 2097152 || !!(r.flags & 2097152 && r.flags & 67108864) : !1;
      }
      function zc(r, s) {
        return !s && lC(r) ? Zl(r) : r;
      }
      function Zl(r) {
        E.assert((r.flags & 2097152) !== 0, "Should only get Alias here.");
        const s = Wi(r);
        if (s.aliasTarget)
          s.aliasTarget === ut && (s.aliasTarget = it);
        else {
          s.aliasTarget = ut;
          const l = _p(r);
          if (!l) return E.fail();
          const f = s0(l);
          s.aliasTarget === ut ? s.aliasTarget = f || it : We(l, p.Circular_definition_of_import_alias_0, Xi(r));
        }
        return s.aliasTarget;
      }
      function uC(r) {
        if (Wi(r).aliasTarget !== ut) return Zl(r);
      }
      function m_(r, s, l) {
        const f = s && wd(r), m = f && tl(f), y = f && (m ? Ru(f.moduleSpecifier, f.moduleSpecifier, !0) : Zl(f.symbol)), x = m && y ? kg(y) : void 0;
        let O = l ? 0 : r.flags, J;
        for (; r.flags & 2097152; ) {
          const V = Ui(Zl(r));
          if (!m && V === y || x?.get(V.escapedName) === V) break;
          if (V === it) return -1;
          if (V === r || J?.has(V)) break;
          V.flags & 2097152 && (J ? J.add(V) : J = /* @__PURE__ */ new Set([r, V])), O |= V.flags, r = V;
        }
        return O;
      }
      function Hf(r, s, l, f, m, y) {
        if (!r || Ln(r)) return !1;
        const x = mn(r);
        if (C0(r)) {
          const J = Wi(x);
          return J.typeOnlyDeclaration = r, !0;
        }
        if (m) {
          const J = Wi(x);
          return J.typeOnlyDeclaration = m, x.escapedName !== y && (J.typeOnlyExportStarName = y), !0;
        }
        const O = Wi(x);
        return BE(O, s, f) || BE(O, l, f);
      }
      function BE(r, s, l) {
        var f;
        if (s && (r.typeOnlyDeclaration === void 0 || l && r.typeOnlyDeclaration === !1)) {
          const m = ((f = s.exports) == null ? void 0 : f.get("export=")) ?? s;
          r.typeOnlyDeclaration = (m.declarations && xr(m.declarations, C0)) ?? Wi(m).typeOnlyDeclaration ?? !1;
        }
        return !!r.typeOnlyDeclaration;
      }
      function wd(r, s) {
        var l;
        if (!(r.flags & 2097152)) return;
        const f = Wi(r);
        if (f.typeOnlyDeclaration === void 0) {
          f.typeOnlyDeclaration = !1;
          const m = zc(r);
          Hf((l = r.declarations) == null ? void 0 : l[0], _p(r) && dX(r), m, !0);
        }
        if (s === void 0) return f.typeOnlyDeclaration || void 0;
        if (f.typeOnlyDeclaration) return m_(f.typeOnlyDeclaration.kind === 279 ? zc(kg(f.typeOnlyDeclaration.symbol.parent).get(f.typeOnlyExportStarName || r.escapedName)) : Zl(f.typeOnlyDeclaration.symbol)) & s ? f.typeOnlyDeclaration : void 0;
      }
      function JE(r, s) {
        return r.kind === 80 && CD(r) && (r = r.parent), r.kind === 80 || r.parent.kind === 167 ? Tc(r, 1920, !1, s) : (E.assert(r.parent.kind === 272), Tc(r, 901119, !1, s));
      }
      function py(r, s) {
        return r.parent ? py(r.parent, s) + "." + Xi(r) : Xi(r, s, void 0, 36);
      }
      function kT(r) {
        for (; k_(r.parent); ) r = r.parent;
        return r;
      }
      function _C(r) {
        let s = x_(r), l = Gr(s, s, 111551, void 0, !0);
        if (l) {
          for (; k_(s.parent); ) {
            if (l = ms(ft(l), s.parent.right.escapedText), !l) return;
            s = s.parent;
          }
          return l;
        }
      }
      function Tc(r, s, l, f, m) {
        if (Nc(r)) return;
        const y = 1920 | (rn(r) ? s & 111551 : 0);
        let x;
        if (r.kind === 80) {
          const O = s === y || wo(r) ? p.Cannot_find_namespace_0 : NNe(x_(r)), J = rn(r) && !wo(r) ? E2(r, s) : void 0;
          if (x = ys(Gr(m || r, r, s, l || J ? void 0 : O, !0, !1)), !x) return ys(J);
        } else if (r.kind === 167 || r.kind === 212) {
          const O = r.kind === 167 ? r.left : r.expression, J = r.kind === 167 ? r.right : r.name;
          let V = Tc(O, y, l, !1, m);
          if (!V || Nc(J)) return;
          if (V === it) return V;
          if (V.valueDeclaration && rn(V.valueDeclaration) && Hu(L) !== 100 && ci(V.valueDeclaration) && V.valueDeclaration.initializer && D8e(V.valueDeclaration.initializer)) {
            const Y = V.valueDeclaration.initializer.arguments[0], be = Ru(Y, Y);
            if (be) {
              const me = Af(be);
              me && (V = me);
            }
          }
          if (x = ys(Ku(Tu(V), J.escapedText, s)), !x && V.flags & 2097152 && (x = ys(Ku(Tu(Zl(V)), J.escapedText, s))), !x) {
            if (!l) {
              const Y = py(V), be = Do(J), me = eme(J, V);
              if (me) {
                We(J, p._0_has_no_exported_member_named_1_Did_you_mean_2, Y, be, Xi(me));
                return;
              }
              const Je = k_(r) && kT(r);
              if (io && s & 788968 && Je && !P6(Je.parent) && _C(Je)) {
                We(Je, p._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0, mf(Je));
                return;
              }
              if (s & 1920 && k_(r.parent)) {
                const gt = ys(Ku(Tu(V), J.escapedText, 788968));
                if (gt) {
                  We(r.parent.right, p.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1, Xi(gt), Ti(r.parent.right.escapedText));
                  return;
                }
              }
              We(J, p.Namespace_0_has_no_exported_member_1, Y, be);
            }
            return;
          }
        } else E.assertNever(r, "Unknown entity name kind.");
        return !wo(r) && S_(r) && (x.flags & 2097152 || r.parent.kind === 278) && Hf(ZB(r), x, void 0, !0), x.flags & s || f ? x : Zl(x);
      }
      function E2(r, s) {
        if (S$(r.parent)) {
          const l = od(r.parent);
          if (l) return Gr(l, r, s, void 0, !0);
        }
      }
      function od(r) {
        if (cr(r, (f) => ZC(f) || f.flags & 16777216 ? $p(f) : "quit")) return;
        const s = Fb(r);
        if (s && zl(s) && uA(s.expression)) {
          const f = mn(s.expression.left);
          if (f) return N1(f);
        }
        if (s && Lo(s) && uA(s.parent) && zl(s.parent.parent)) {
          const f = mn(s.parent.left);
          if (f) return N1(f);
        }
        if (s && (Hp(s) || ol(s)) && un(s.parent.parent) && qc(s.parent.parent) === 6) {
          const f = mn(s.parent.parent.left);
          if (f) return N1(f);
        }
        const l = pv(r);
        if (l && Ra(l)) {
          const f = mn(l);
          return f && f.valueDeclaration;
        }
      }
      function N1(r) {
        const s = r.parent.valueDeclaration;
        if (s)
          return (lD(s) ? Ox(s) : dS(s) ? uD(s) : void 0) || s;
      }
      function zE(r) {
        const s = r.valueDeclaration;
        if (!s || !rn(s) || r.flags & 524288 || _v(s, !1)) return;
        const l = ci(s) ? uD(s) : Ox(s);
        if (l) {
          const f = Nf(l);
          if (f) return ume(f, r);
        }
      }
      function Ru(r, s, l, f) {
        const m = Hu(L) === 1;
        return f ?? (f = mit(s) ?? (m ? p.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option : p.Cannot_find_module_0_or_its_corresponding_type_declarations)), eb(r, s, l ? void 0 : f, l);
      }
      function eb(r, s, l, f = !1, m = !1) {
        return Xs(s) ? tb(r, s.text, l, f ? void 0 : s, m) : void 0;
      }
      function tb(r, s, l, f, m = !1) {
        var y, x, O, J, V, Y, be, me, Je, gt, ht, ir;
        if (f && ta(s, "@types/")) {
          const fi = p.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1;
          We(f, fi, C4(s, "@types/"), s);
        }
        const mr = N3e(s, !0);
        if (mr) return mr;
        const br = Sr(r), Hr = Xs(r) ? r : ((y = Qc(r) ? r : r.parent && Qc(r.parent) && r.parent.name === r ? r.parent : void 0) == null ? void 0 : y.name) || ((x = Bh(r) ? r : void 0) == null ? void 0 : x.argument.literal) || $y(r) && OK(r) || ((O = cr(r, B_)) == null ? void 0 : O.arguments[0]) || ((J = cr(r, _f(ic, Fm, tl))) == null ? void 0 : J.moduleSpecifier) || ((V = cr(r, uv)) == null ? void 0 : V.moduleReference.expression), lr = Hr && Xs(Hr) ? e.getModeForUsageLocation(br, Hr) : e.getDefaultResolutionModeForFile(br), ur = Hu(L), En = (Y = e.getResolvedModule(br, s, lr)) == null ? void 0 : Y.resolvedModule, si = f && En && jU(L, En, br), Ii = En && (!si || si === p.Module_0_was_resolved_to_1_but_jsx_is_not_set) && e.getSourceFile(En.resolvedFileName);
        if (Ii) {
          if (si && We(f, si, s, En.resolvedFileName), En.resolvedUsingTsExtension && $l(s)) {
            const fi = ((be = cr(r, ic)) == null ? void 0 : be.importClause) || cr(r, _f(bl, tl));
            (f && fi && !fi.isTypeOnly || cr(r, B_)) && We(f, p.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead, Si(E.checkDefined(iO(s))));
          } else if (En.resolvedUsingTsExtension && !Y6(L, br.fileName)) {
            const fi = ((me = cr(r, ic)) == null ? void 0 : me.importClause) || cr(r, _f(bl, tl));
            if (f && !(fi?.isTypeOnly || cr(r, Am))) {
              const vs = E.checkDefined(iO(s));
              We(f, p.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled, vs);
            }
          } else if (L.rewriteRelativeImportExtensions && !(r.flags & 33554432) && !$l(s) && !Bh(r) && !AZ(r)) {
            const fi = fA(s, L);
            if (!En.resolvedUsingTsExtension && fi) We(f, p.This_relative_import_path_is_unsafe_to_rewrite_because_it_looks_like_a_file_name_but_actually_resolves_to_0, vx(ca(br.fileName, e.getCurrentDirectory()), En.resolvedFileName, Wh(e)));
            else if (En.resolvedUsingTsExtension && !fi && gv(Ii, e)) We(f, p.This_import_uses_a_0_extension_to_resolve_to_an_input_TypeScript_file_but_will_not_be_rewritten_during_emit_because_it_is_not_a_relative_path, hx(s));
            else if (En.resolvedUsingTsExtension && fi) {
              const vs = (Je = e.getRedirectFromSourceFile(Ii.path)) == null ? void 0 : Je.resolvedRef;
              if (vs) {
                const Cs = !e.useCaseSensitiveFileNames(), ka = e.getCommonSourceDirectory(), Ro = XS(vs.commandLine, Cs);
                Zf(ka, Ro, Cs) !== Zf(L.outDir || ka, vs.commandLine.options.outDir || Ro, Cs) && We(f, p.This_import_path_is_unsafe_to_rewrite_because_it_resolves_to_another_project_and_the_relative_path_between_the_projects_output_files_is_not_the_same_as_the_relative_path_between_its_input_files);
              }
            }
          }
          if (Ii.symbol) {
            if (f && En.isExternalLibraryImport && !MD(En.extension) && I1(!1, f, br, lr, En, s), f && (H === 100 || H === 101)) {
              const fi = br.impliedNodeFormat === 1 && !cr(r, B_) || !!cr(r, bl), vs = cr(r, (Cs) => Am(Cs) || tl(Cs) || ic(Cs) || Fm(Cs));
              if (fi && Ii.impliedNodeFormat === 99 && !ste(vs)) if (cr(r, bl)) We(f, p.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead, s);
              else {
                let Cs;
                const ka = Kg(br.fileName);
                (ka === ".ts" || ka === ".js" || ka === ".tsx" || ka === ".jsx") && (Cs = yB(br));
                const Ro = vs?.kind === 273 && ((gt = vs.importClause) != null && gt.isTypeOnly) ? p.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute : vs?.kind === 206 ? p.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute : p.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead;
                Ws.add(Gg(Sr(f), f, ba(Cs, Ro, s)));
              }
            }
            return ys(Ii.symbol);
          }
          f && l && !_z(f) && We(f, p.File_0_is_not_a_module, Ii.fileName);
          return;
        }
        if (Hi) {
          const fi = aj(Hi, (vs) => vs.pattern, s);
          if (fi) {
            const vs = Js && Js.get(s);
            return ys(vs || fi.symbol);
          }
        }
        if (!f) return;
        if (En && !MD(En.extension) && si === void 0 || si === p.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type) {
          if (m) {
            const fi = p.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;
            We(f, fi, s, En.resolvedFileName);
          } else I1($ && !!l, f, br, lr, En, s);
          return;
        }
        if (l) {
          if (En) {
            const fi = e.getRedirectFromSourceFile(En.resolvedFileName);
            if (fi?.outputDts) {
              We(f, p.Output_file_0_has_not_been_built_from_source_file_1, fi.outputDts, En.resolvedFileName);
              return;
            }
          }
          if (si) We(f, si, s, En.resolvedFileName);
          else {
            const fi = Bf(s) && !UC(s), vs = ur === 3 || ur === 99;
            if (!zb(L) && lc(s, ".json") && ur !== 1 && dO(L)) We(f, p.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension, s);
            else if (lr === 99 && vs && fi) {
              const Cs = ca(s, Xn(br.path)), ka = (ht = ph.find(([Ro, eu]) => e.fileExists(Cs + Ro))) == null ? void 0 : ht[1];
              ka ? We(f, p.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0, s + ka) : We(f, p.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path);
            } else (ir = e.getResolvedModule(br, s, lr)) != null && ir.alternateResult ? uu(!0, f, ba(u5(br, e, s, lr, s), l, s)) : We(f, l, s);
          }
        }
        return;
        function Si(fi) {
          const vs = VA(s, fi);
          if (BA(H) || lr === 99) {
            const Cs = $l(s) && Y6(L);
            return vs + (fi === ".mts" || fi === ".d.mts" ? Cs ? ".mts" : ".mjs" : fi === ".cts" || fi === ".d.mts" ? Cs ? ".cts" : ".cjs" : Cs ? ".ts" : ".js");
          }
          return vs;
        }
      }
      function I1(r, s, l, f, { packageId: m, resolvedFileName: y }, x) {
        if (_z(s)) return;
        let O;
        !jl(x) && m && (O = u5(l, e, x, f, m.name)), uu(r, s, ba(O, p.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type, x, y));
      }
      function Af(r, s) {
        if (r?.exports) return ys(D2(ys(zc(r.exports.get("export="), s)), ys(r))) || r;
      }
      function D2(r, s) {
        if (!r || r === it || r === s || s.exports.size === 1 || r.flags & 2097152) return r;
        const l = Wi(r);
        if (l.cjsExportMerged) return l.cjsExportMerged;
        const f = r.flags & 33554432 ? r : Gm(r);
        return f.flags = f.flags | 512, f.exports === void 0 && (f.exports = Ka()), s.exports.forEach((m, y) => {
          y !== "export=" && f.exports.set(y, f.exports.has(y) ? sy(f.exports.get(y), m) : m);
        }), f === r && (Wi(f).resolvedExports = void 0, Wi(f).resolvedMembers = void 0), Wi(f).cjsExportMerged = f, l.cjsExportMerged = f;
      }
      function Xm(r, s, l, f) {
        var m;
        const y = Af(r, l);
        if (!l && y) {
          if (!f && !(y.flags & 1539) && !Ho(y, 308)) {
            const J = H >= 5 ? "allowSyntheticDefaultImports" : "esModuleInterop";
            return We(s, p.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export, J), y;
          }
          const x = s.parent, O = ic(x) && u6(x);
          if (O || B_(x)) {
            const J = B_(x) ? x.arguments[0] : x.moduleSpecifier, V = ft(y), Y = C8e(V, y, r, J);
            if (Y) return CT(y, Y, x);
            const be = (m = r?.declarations) == null ? void 0 : m.find(Pi), me = gh(J);
            let Je;
            if (O && be && 102 <= H && H <= 199 && me === 1 && e.getImpliedNodeFormatForEmit(be) === 99 && (Je = Gf(y, "module.exports", O, l)))
              return !f && !(y.flags & 1539) && We(s, p.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export, "esModuleInterop"), Dm(L) && WE(V) ? CT(Je, V, x) : Je;
            const gt = be && w1(me, e.getImpliedNodeFormatForEmit(be));
            if ((Dm(L) || gt) && (WE(V) || ms(V, "default", !0) || gt))
              return CT(y, V.flags & 403701760 ? E8e(V, y, r, J) : _me(y, y.parent), x);
          }
        }
        return y;
      }
      function WE(r) {
        return _t(DM(r, 0)) || _t(DM(r, 1));
      }
      function CT(r, s, l) {
        const f = Fs(r.flags, r.escapedName);
        f.declarations = r.declarations ? r.declarations.slice() : [], f.parent = r.parent, f.links.target = r, f.links.originatingImport = l, r.valueDeclaration && (f.valueDeclaration = r.valueDeclaration), r.constEnumOnlyModule && (f.constEnumOnlyModule = !0), r.members && (f.members = new Map(r.members)), r.exports && (f.exports = new Map(r.exports));
        const m = om(s);
        return f.links.type = Yo(f, m.members, Te, Te, m.indexInfos), f;
      }
      function w2(r) {
        return r.exports.get("export=") !== void 0;
      }
      function O1(r) {
        return epe(kg(r));
      }
      function P2(r) {
        const s = O1(r), l = Af(r);
        if (l !== r) {
          const f = ft(l);
          DT(f) && Mn(s, co(f));
        }
        return s;
      }
      function UE(r, s) {
        kg(r).forEach((f, m) => {
          PT(m) || s(f, m);
        });
        const l = Af(r);
        if (l !== r) {
          const f = ft(l);
          DT(f) && Jet(f, (m, y) => {
            s(m, y);
          });
        }
      }
      function ET(r, s) {
        const l = kg(s);
        if (l) return l.get(r);
      }
      function fC(r, s) {
        const l = ET(r, s);
        if (l) return l;
        const f = Af(s);
        if (f === s) return;
        const m = ft(f);
        return DT(m) ? ms(m, r) : void 0;
      }
      function DT(r) {
        return !(r.flags & 12713980 || yn(r) & 1 || Jp(r) || Ls(r));
      }
      function Tu(r) {
        return r.flags & 6256 ? Jfe(r, "resolvedExports") : r.flags & 1536 ? kg(r) : r.exports || R;
      }
      function kg(r) {
        const s = Wi(r);
        if (!s.resolvedExports) {
          const { exports: l, typeOnlyExportStarMap: f } = pC(r);
          s.resolvedExports = l, s.typeOnlyExportStarMap = f;
        }
        return s.resolvedExports;
      }
      function wT(r, s, l, f) {
        s && s.forEach((m, y) => {
          if (y === "default") return;
          const x = r.get(y);
          if (!x)
            r.set(y, m), l && f && l.set(y, { specifierText: uc(f.moduleSpecifier) });
          else if (l && f && x && zc(x) !== zc(m)) {
            const O = l.get(y);
            O.exportsWithDuplicate ? O.exportsWithDuplicate.push(f) : O.exportsWithDuplicate = [f];
          }
        });
      }
      function pC(r) {
        const s = [];
        let l;
        const f = /* @__PURE__ */ new Set();
        r = Af(r);
        const m = y(r) || R;
        return l && f.forEach((x) => l.delete(x)), {
          exports: m,
          typeOnlyExportStarMap: l
        };
        function y(x, O, J) {
          if (!J && x?.exports && x.exports.forEach((be, me) => f.add(me)), !(x && x.exports && hp(s, x))) return;
          const V = new Map(x.exports), Y = x.exports.get("__export");
          if (Y) {
            const be = Ka(), me = /* @__PURE__ */ new Map();
            if (Y.declarations) for (const Je of Y.declarations) wT(be, y(Ru(Je, Je.moduleSpecifier), Je, J || Je.isTypeOnly), me, Je);
            me.forEach(({ exportsWithDuplicate: Je }, gt) => {
              if (!(gt === "export=" || !(Je && Je.length) || V.has(gt)))
                for (const ht of Je) Ws.add(Kr(ht, p.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity, me.get(gt).specifierText, Ti(gt)));
            }), wT(V, be);
          }
          return O?.isTypeOnly && (l ?? (l = /* @__PURE__ */ new Map()), V.forEach((be, me) => l.set(me, O))), V;
        }
      }
      function ys(r) {
        let s;
        return r && r.mergeId && (s = tC[r.mergeId]) ? s : r;
      }
      function mn(r) {
        return ys(r.symbol && c$(r.symbol));
      }
      function Nf(r) {
        return jd(r) ? mn(r) : void 0;
      }
      function ju(r) {
        return ys(r.parent && c$(r.parent));
      }
      function VE(r) {
        var s, l;
        return (((s = r.valueDeclaration) == null ? void 0 : s.kind) === 220 || ((l = r.valueDeclaration) == null ? void 0 : l.kind) === 219) && Nf(r.valueDeclaration.parent) || r;
      }
      function dC(r, s) {
        const l = Sr(s), f = Hs(l), m = Wi(r);
        let y;
        if (m.extendedContainersByFile && (y = m.extendedContainersByFile.get(f))) return y;
        if (l && l.imports) {
          for (const O of l.imports) {
            if (wo(O)) continue;
            const J = Ru(s, O, !0);
            J && nr(J, r) && (y = kr(y, J));
          }
          if (It(y))
            return (m.extendedContainersByFile || (m.extendedContainersByFile = /* @__PURE__ */ new Map())).set(f, y), y;
        }
        if (m.extendedContainers) return m.extendedContainers;
        const x = e.getSourceFiles();
        for (const O of x) {
          if (!Sl(O)) continue;
          const J = mn(O);
          nr(J, r) && (y = kr(y, J));
        }
        return m.extendedContainers = y || Te;
      }
      function C(r, s, l) {
        const f = ju(r);
        if (f && !(r.flags & 262144)) return J(f);
        const m = Rn(r.declarations, (Y) => {
          if (!o_(Y) && Y.parent) {
            if (N2(Y.parent)) return mn(Y.parent);
            if (Vd(Y.parent) && Y.parent.parent && Af(mn(Y.parent.parent)) === r) return mn(Y.parent.parent);
          }
          if (Hc(Y) && un(Y.parent) && Y.parent.operatorToken.kind === 64 && jo(Y.parent.left) && go(Y.parent.left.expression))
            return $g(Y.parent.left) || vS(Y.parent.left.expression) ? mn(Sr(Y)) : (wc(Y.parent.left.expression), Pn(Y.parent.left.expression).resolvedSymbol);
        });
        if (!It(m)) return;
        const y = Rn(m, (Y) => nr(Y, r) ? Y : void 0);
        let x = [], O = [];
        for (const Y of y) {
          const [be, ...me] = J(Y);
          x = kr(x, be), O = Mn(O, me);
        }
        return zi(x, O);
        function J(Y) {
          const be = Rn(Y.declarations, V), me = s && dC(r, s), Je = _e(Y, l);
          if (s && Y.flags & F1(l) && A2(Y, s, 1920, !1)) return kr(zi(zi([Y], be), me), Je);
          const gt = !(Y.flags & F1(l)) && Y.flags & 788968 && Oo(Y).flags & 1048576 && l === 111551 ? AT(s, (ir) => Dl(ir, (mr) => {
            if (mr.flags & F1(l) && ft(mr) === Oo(Y)) return mr;
          })) : void 0;
          let ht = gt ? [
            gt,
            ...be,
            Y
          ] : [...be, Y];
          return ht = kr(ht, Je), ht = Mn(ht, me), ht;
        }
        function V(Y) {
          return f && Et(Y, f);
        }
      }
      function _e(r, s) {
        const l = !!It(r.declarations) && js(r.declarations);
        if (s & 111551 && l && l.parent && ci(l.parent) && (bs(l) && l === l.parent.initializer || C_(l) && l === l.parent.type))
          return mn(l.parent);
      }
      function Et(r, s) {
        const l = ib(r), f = l && l.exports && l.exports.get("export=");
        return f && Nn(f, s) ? l : void 0;
      }
      function nr(r, s) {
        if (r === ju(s)) return s;
        const l = r.exports && r.exports.get("export=");
        if (l && Nn(l, s)) return r;
        const f = Tu(r), m = f.get(s.escapedName);
        return m && Nn(m, s) ? m : Dl(f, (y) => {
          if (Nn(y, s)) return y;
        });
      }
      function Nn(r, s) {
        if (ys(zc(ys(r))) === ys(zc(ys(s)))) return r;
      }
      function Ui(r) {
        return ys(r && (r.flags & 1048576) !== 0 && r.exportSymbol || r);
      }
      function oa(r, s) {
        return !!(r.flags & 111551 || r.flags & 2097152 && m_(r, !s) & 111551);
      }
      function sa(r) {
        var s;
        const l = new c(Li, r);
        return u++, l.id = u, (s = sn) == null || s.recordType(l), l;
      }
      function Vs(r, s) {
        const l = sa(r);
        return l.symbol = s, l;
      }
      function H_(r) {
        return new c(Li, r);
      }
      function Ys(r, s, l = 0, f) {
        rb(s, f);
        const m = sa(r);
        return m.intrinsicName = s, m.debugIntrinsicName = f, m.objectFlags = l | 52953088, m;
      }
      function rb(r, s) {
        const l = `${r},${s ?? ""}`;
        Dt.has(l) && E.fail(`Duplicate intrinsic type name ${r}${s ? ` (${s})` : ""}; you may need to pass a name to createIntrinsicType.`), Dt.add(l);
      }
      function Lp(r, s) {
        const l = Vs(1048576, s);
        return l.objectFlags = r, l.members = void 0, l.properties = void 0, l.callSignatures = void 0, l.constructSignatures = void 0, l.indexInfos = void 0, l;
      }
      function If() {
        return Yn(or(ge ? [...qW.keys()].sort() : ma(qW.keys()), sf));
      }
      function fp(r) {
        return Vs(524288, r);
      }
      function PT(r) {
        return r.charCodeAt(0) === 95 && r.charCodeAt(1) === 95 && r.charCodeAt(2) !== 95 && r.charCodeAt(2) !== 64 && r.charCodeAt(2) !== 35;
      }
      function o0(r, s) {
        if (!ge) {
          let y;
          return r.forEach((x, O) => {
            nb(x, O) && (y ?? (y = [])).push(x);
          }), y ?? Te;
        }
        if (r.size === 0) return Te;
        let l;
        s && s.flags & 96 && r.forEach((y, x) => {
          nb(y, x) && m(y, s) && (l = kr(l, y));
        });
        let f;
        return r.forEach((y, x) => {
          nb(y, x) && (!s || !(s.flags & 96) || !m(y, s)) && (f = kr(f, y));
        }), l?.sort(m7), f?.sort(m7), zi(l, f) ?? Te;
        function m(y, x) {
          const O = y.valueDeclaration;
          if (O && x.declarations) {
            for (const V of x.declarations) if (J(O, V)) return !0;
          }
          return !1;
          function J(V, Y) {
            return Y.pos <= V.pos && Y.end >= V.end;
          }
        }
      }
      function nb(r, s) {
        return !PT(s) && oa(r);
      }
      function mC(r, s) {
        const l = o0(r, s), f = m$(r);
        return f ? zi(l, [f]) : l;
      }
      function $f(r, s, l, f, m) {
        const y = r;
        return y.members = s, y.properties = Te, y.callSignatures = l, y.constructSignatures = f, y.indexInfos = m, s !== R && (y.properties = o0(s, r.symbol)), y;
      }
      function Yo(r, s, l, f, m) {
        return $f(Lp(16, r), s, l, f, m);
      }
      function qE(r) {
        if (r.constructSignatures.length === 0) return r;
        if (r.objectTypeWithoutAbstractConstructSignatures) return r.objectTypeWithoutAbstractConstructSignatures;
        const s = dn(r.constructSignatures, (f) => !(f.flags & 4));
        if (r.constructSignatures === s) return r;
        const l = Yo(r.symbol, r.members, r.callSignatures, _t(s) ? s : Te, r.indexInfos);
        return r.objectTypeWithoutAbstractConstructSignatures = l, l.objectTypeWithoutAbstractConstructSignatures = l, l;
      }
      function AT(r, s) {
        let l;
        for (let f = r; f; f = f.parent) {
          if (og(f) && f.locals && !D0(f) && (l = s(f.locals, void 0, !0, f)))
            return l;
          switch (f.kind) {
            case 308:
              if (!gf(f)) break;
            case 268:
              const m = mn(f);
              if (l = s(m?.exports || R, void 0, !0, f)) return l;
              break;
            case 264:
            case 232:
            case 265:
              let y;
              if ((mn(f).members || R).forEach((x, O) => {
                x.flags & 788968 && (y || (y = Ka())).set(O, x);
              }), y && (l = s(y, void 0, !1, f))) return l;
              break;
          }
        }
        return s(Ce, void 0, !0);
      }
      function F1(r) {
        return r === 111551 ? 111551 : 1920;
      }
      function A2(r, s, l, f, m = /* @__PURE__ */ new Map()) {
        if (!(r && !mM(r))) return;
        const y = Wi(r), x = y.accessibleChainCache || (y.accessibleChainCache = /* @__PURE__ */ new Map()), O = AT(s, (mr, br, Hr, lr) => lr), J = `${f ? 0 : 1}|${O ? Hs(O) : 0}|${l}`;
        if (x.has(J)) return x.get(J);
        const V = ss(r);
        let Y = m.get(V);
        Y || m.set(V, Y = []);
        const be = AT(s, me);
        return x.set(J, be), be;
        function me(mr, br, Hr) {
          if (!hp(Y, mr)) return;
          const lr = ht(mr, br, Hr);
          return Y.pop(), lr;
        }
        function Je(mr, br) {
          return !bP(mr, s, br) || !!A2(mr.parent, s, F1(br), f, m);
        }
        function gt(mr, br, Hr) {
          return (r === (br || mr) || ys(r) === ys(br || mr)) && !_t(mr.declarations, N2) && (Hr || Je(ys(mr), l));
        }
        function ht(mr, br, Hr) {
          return gt(mr.get(r.escapedName), void 0, br) ? [r] : Dl(mr, (lr) => {
            if (lr.flags & 2097152 && lr.escapedName !== "export=" && lr.escapedName !== "default" && !(cO(lr) && s && Sl(Sr(s))) && (!f || _t(lr.declarations, uv)) && (!Hr || !_t(lr.declarations, NK)) && (br || !Ho(lr, 282))) {
              const ur = ir(lr, Zl(lr), br);
              if (ur) return ur;
            }
            if (lr.escapedName === r.escapedName && lr.exportSymbol && gt(ys(lr.exportSymbol), void 0, br))
              return [r];
          }) || (mr === Ce ? ir(Ie, Ie, br) : void 0);
        }
        function ir(mr, br, Hr) {
          if (gt(mr, br, Hr)) return [mr];
          const lr = Tu(br), ur = lr && me(lr, !0);
          if (ur && Je(mr, F1(l))) return [mr].concat(ur);
        }
      }
      function bP(r, s, l) {
        let f = !1;
        return AT(s, (m) => {
          let y = ys(m.get(r.escapedName));
          if (!y) return !1;
          if (y === r) return !0;
          const x = y.flags & 2097152 && !Ho(y, 282);
          return y = x ? Zl(y) : y, (x ? m_(y) : y.flags) & l ? (f = !0, !0) : !1;
        }), f;
      }
      function mM(r) {
        if (r.declarations && r.declarations.length) {
          for (const s of r.declarations) switch (s.kind) {
            case 173:
            case 175:
            case 178:
            case 179:
              continue;
            default:
              return !1;
          }
          return !0;
        }
        return !1;
      }
      function gM(r, s) {
        return HE(r, s, 788968, !1, !0).accessibility === 0;
      }
      function gC(r, s) {
        return HE(r, s, 111551, !1, !0).accessibility === 0;
      }
      function SP(r, s, l) {
        return HE(r, s, l, !1, !1).accessibility === 0;
      }
      function GE(r, s, l, f, m, y) {
        if (!It(r)) return;
        let x, O = !1;
        for (const J of r) {
          const V = A2(J, s, f, !1);
          if (V) {
            x = J;
            const be = $E(V[0], m);
            if (be) return be;
          }
          if (y && _t(J.declarations, N2)) {
            if (m) {
              O = !0;
              continue;
            }
            return { accessibility: 0 };
          }
          const Y = GE(C(J, s, f), s, l, l === J ? F1(f) : f, m, y);
          if (Y) return Y;
        }
        if (O) return { accessibility: 0 };
        if (x) return {
          accessibility: 1,
          errorSymbolName: Xi(l, s, f),
          errorModuleName: x !== l ? Xi(x, s, 1920) : void 0
        };
      }
      function L1(r, s, l, f) {
        return HE(r, s, l, f, !0);
      }
      function HE(r, s, l, f, m) {
        if (r && s) {
          const y = GE([r], s, r, l, f, m);
          if (y) return y;
          const x = bt(r.declarations, ib);
          return x && x !== ib(s) ? {
            accessibility: 2,
            errorSymbolName: Xi(r, s, l),
            errorModuleName: Xi(x),
            errorNode: rn(s) ? s : void 0
          } : {
            accessibility: 1,
            errorSymbolName: Xi(r, s, l)
          };
        }
        return { accessibility: 0 };
      }
      function ib(r) {
        const s = cr(r, f8);
        return s && mn(s);
      }
      function f8(r) {
        return o_(r) || r.kind === 308 && gf(r);
      }
      function N2(r) {
        return m5(r) || r.kind === 308 && gf(r);
      }
      function $E(r, s) {
        let l;
        if (!hr(dn(r.declarations, (y) => y.kind !== 80), f)) return;
        return {
          accessibility: 0,
          aliasesToMakeVisible: l
        };
        function f(y) {
          var x, O;
          if (!xe(y)) {
            const J = gT(y);
            if (J && !Qn(J, 32) && xe(J.parent)) return m(y, J);
            if (ci(y) && $c(y.parent.parent) && !Qn(y.parent.parent, 32) && xe(y.parent.parent.parent)) return m(y, y.parent.parent);
            if (g5(y) && !Qn(y, 32) && xe(y.parent)) return m(y, y);
            if (Ns(y)) {
              if (r.flags & 2097152 && rn(y) && ((x = y.parent) != null && x.parent) && ci(y.parent.parent) && ((O = y.parent.parent.parent) != null && O.parent) && $c(y.parent.parent.parent.parent) && !Qn(y.parent.parent.parent.parent, 32) && y.parent.parent.parent.parent.parent && xe(y.parent.parent.parent.parent.parent)) return m(y, y.parent.parent.parent.parent);
              if (r.flags & 2) {
                const V = cS(y);
                if (V.kind === 170) return !1;
                const Y = V.parent.parent;
                return Y.kind !== 244 ? !1 : Qn(Y, 32) ? !0 : xe(Y.parent) ? m(y, Y) : !1;
              }
            }
            return !1;
          }
          return !0;
        }
        function m(y, x) {
          return s && (Pn(y).isVisible = !0, l = Lh(l, x)), !0;
        }
      }
      function p8(r) {
        let s;
        return r.parent.kind === 187 || r.parent.kind === 234 && !Sm(r.parent) || r.parent.kind === 168 || r.parent.kind === 183 && r.parent.parameterName === r ? s = 1160127 : r.kind === 167 || r.kind === 212 || r.parent.kind === 272 || r.parent.kind === 167 && r.parent.left === r || r.parent.kind === 212 && r.parent.expression === r || r.parent.kind === 213 && r.parent.expression === r ? s = 1920 : s = 788968, s;
      }
      function dy(r, s, l = !0) {
        const f = p8(r), m = x_(r), y = Gr(s, m.escapedText, f, void 0, !1);
        return y && y.flags & 262144 && f & 788968 ? { accessibility: 0 } : !y && Zy(m) && L1(mn(c_(m, !1, !1)), m, f, !1).accessibility === 0 ? { accessibility: 0 } : y ? $E(y, l) || {
          accessibility: 1,
          errorSymbolName: uc(m),
          errorNode: m
        } : {
          accessibility: 3,
          errorSymbolName: uc(m),
          errorNode: m
        };
      }
      function Xi(r, s, l, f = 4, m) {
        let y = 70221824, x = 0;
        f & 2 && (y |= 128), f & 1 && (y |= 512), f & 8 && (y |= 16384), f & 32 && (x |= 4), f & 16 && (x |= 1);
        const O = f & 4 ? K.symbolToNode : K.symbolToEntityName;
        return m ? J(m).getText() : e6(J);
        function J(V) {
          const Y = O(r, l, s, y, x), be = s?.kind === 308 ? wie() : i2(), me = s && Sr(s);
          return be.writeNode(4, Y, me, V), V;
        }
      }
      function I2(r, s, l = 0, f, m, y, x, O) {
        return m ? J(m).getText() : e6(J);
        function J(V) {
          let Y;
          l & 262144 ? Y = f === 1 ? 186 : 185 : Y = f === 1 ? 181 : 180;
          const be = K.signatureToSignatureDeclaration(r, Y, s, hC(l) | 70222336, void 0, void 0, y, x, O), me = bU(), Je = s && Sr(s);
          return me.writeNode(4, be, Je, fJ(V)), V;
        }
      }
      function Xr(r, s, l = 1064960, f = CA(""), m, y, x) {
        const O = !m && L.noErrorTruncation || l & 1, J = K.typeToTypeNode(r, s, hC(l) | 70221824 | (O ? 1 : 0), void 0, void 0, m, y, x);
        if (J === void 0) return E.fail("should always get typenode");
        const V = r !== ee ? i2() : Die(), Y = s && Sr(s);
        V.writeNode(4, J, Y, f);
        const be = f.getText(), me = m || (O ? gB * 2 : Z4 * 2);
        return me && be && be.length >= me ? be.substr(0, me - 3) + "..." : be;
      }
      function O2(r, s) {
        let l = XE(r.symbol) ? Xr(r, r.symbol.valueDeclaration) : Xr(r), f = XE(s.symbol) ? Xr(s, s.symbol.valueDeclaration) : Xr(s);
        return l === f && (l = ab(r), f = ab(s)), [l, f];
      }
      function ab(r) {
        return Xr(r, void 0, 64);
      }
      function XE(r) {
        return r && !!r.valueDeclaration && dt(r.valueDeclaration) && !Xf(r.valueDeclaration);
      }
      function hC(r = 0) {
        return r & 848330095;
      }
      function F2(r) {
        return !!r.symbol && !!(r.symbol.flags & 32) && (r === Rp(r.symbol) || !!(r.flags & 1048576) && !!(yn(r) & 16777216));
      }
      function TP(r) {
        return Di(r);
      }
      function hM() {
        return {
          syntacticBuilderResolver: {
            evaluateEntityNameExpression: Y7e,
            isExpandoFunctionDeclaration: y5e,
            hasLateBindableName: e4,
            shouldRemoveDeclaration(Ee, te) {
              return !(Ee.internalFlags & 8 && go(te.name.expression) && Od(te.name).flags & 1);
            },
            createRecoveryBoundary(Ee) {
              return Si(Ee);
            },
            isDefinitelyReferenceToGlobalSymbolObject: Sg,
            getAllAccessorDeclarations: nge,
            requiresAddingImplicitUndefined(Ee, te, Vt) {
              var Ht;
              switch (Ee.kind) {
                case 173:
                case 172:
                case 349:
                  te ?? (te = mn(Ee));
                  const Dr = ft(te);
                  return !!(te.flags & 4 && te.flags & 16777216 && ek(Ee) && ((Ht = te.links) != null && Ht.mappedType) && pnt(Dr));
                case 170:
                case 342:
                  return MR(Ee, Vt);
                default:
                  E.assertNever(Ee);
              }
            },
            isOptionalParameter: T8,
            isUndefinedIdentifierExpression(Ee) {
              return Wp(Ee) === ue;
            },
            isEntityNameVisible(Ee, te, Vt) {
              return dy(te, Ee.enclosingDeclaration, Vt);
            },
            serializeExistingTypeNode(Ee, te, Vt) {
              return Zc(Ee, te, !!Vt);
            },
            serializeReturnTypeForSignature(Ee, te, Vt) {
              const Ht = Ee, Dr = mp(te);
              return Vt ?? (Vt = mn(te)), Ba(Ht, Dr, Ht.enclosingSymbolTypes.get(ss(Vt)) ?? Ji(ro(Dr), Ht.mapper));
            },
            serializeTypeOfExpression(Ee, te) {
              const Vt = Ee;
              return ht(Ji(of(u5e(te)), Vt.mapper), Vt);
            },
            serializeTypeOfDeclaration(Ee, te, Vt) {
              var Ht;
              const Dr = Ee;
              Vt ?? (Vt = mn(te));
              let De = (Ht = Dr.enclosingSymbolTypes) == null ? void 0 : Ht.get(ss(Vt));
              return De === void 0 && (De = Vt.flags & 98304 && te.kind === 179 ? Ji(cd(Vt), Dr.mapper) : Vt && !(Vt.flags & 133120) ? Ji(mb(ft(Vt)), Dr.mapper) : rt), te && (Fi(te) || np(te)) && MR(te, Dr.enclosingDeclaration) && (De = V1(De)), Or(Vt, Dr, De);
            },
            serializeNameOfParameter(Ee, te) {
              return Jr(mn(te), te, Ee);
            },
            serializeEntityName(Ee, te) {
              const Vt = Ee, Ht = Wp(te, !0);
              if (Ht && gC(Ht, Vt.enclosingDeclaration))
                return oc(Ht, Vt, 1160127);
            },
            serializeTypeName(Ee, te, Vt, Ht) {
              return tu(Ee, te, Vt, Ht);
            },
            getJsDocPropertyOverride(Ee, te, Vt) {
              const Ht = Ee, Dr = Fe(Vt.name) ? Vt.name : Vt.name.right, De = xn(r(Ht, te), Dr.escapedText);
              return De && Vt.typeExpression && r(Ht, Vt.typeExpression.type) !== De ? ht(De, Ht) : void 0;
            },
            enterNewScope(Ee, te) {
              if (Ra(te) || z0(te)) {
                const Vt = mp(te);
                return fi(Ee, te, Vt.parameters, Vt.typeParameters);
              } else return fi(Ee, te, void 0, Hb(te) ? Ppe(te) : [sb(mn(te.typeParameter))]);
            },
            markNodeReuse(Ee, te, Vt) {
              return s(Ee, te, Vt);
            },
            trackExistingEntityName(Ee, te) {
              return $s(te, Ee);
            },
            trackComputedName(Ee, te) {
              Vi(te, Ee.enclosingDeclaration, Ee);
            },
            getModuleSpecifierOverride(Ee, te, Vt) {
              const Ht = Ee;
              if (Ht.bundled || Ht.enclosingFile !== Sr(Vt)) {
                let Dr = Vt.text;
                const De = Dr, Le = Pn(te).resolvedSymbol, mt = te.isTypeOf ? 111551 : 788968, Ot = Le && L1(Le, Ht.enclosingDeclaration, mt, !1).accessibility === 0 && en(Le, Ht, mt, !0)[0];
                if (Ot && Dx(Ot)) Dr = Ga(Ot, Ht);
                else {
                  const er = sge(te);
                  er && (Dr = Ga(er.symbol, Ht));
                }
                if (Dr.includes("/node_modules/") && (Ht.encounteredError = !0, Ht.tracker.reportLikelyUnsafeImportRequiredError && Ht.tracker.reportLikelyUnsafeImportRequiredError(Dr, Le ? Ti(Le.escapedName) : void 0)), Dr !== De) return Dr;
              }
            },
            canReuseTypeNode(Ee, te) {
              return Ml(Ee, te);
            },
            canReuseTypeNodeAnnotation(Ee, te, Vt, Ht, Dr) {
              var De;
              const Le = Ee;
              if (Le.enclosingDeclaration === void 0) return !1;
              Ht ?? (Ht = mn(te));
              let mt = (De = Le.enclosingSymbolTypes) == null ? void 0 : De.get(ss(Ht));
              mt === void 0 && (Ht.flags & 98304 ? mt = te.kind === 179 ? cd(Ht) : KE(Ht) : xS(te) ? mt = ro(mp(te)) : mt = ft(Ht));
              let Ot = TP(Vt);
              return hi(Ot) ? !0 : (Dr && Ot && (Ot = _u(Ot, !Fi(te))), !!Ot && _n(te, mt, Ot) && Lt(Vt, mt));
            }
          },
          typeToTypeNode: (Ee, te, Vt, Ht, Dr, De, Le, mt) => J(te, Vt, Ht, Dr, De, Le, (Ot) => ht(Ee, Ot), mt),
          typePredicateToTypePredicateNode: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => eu(Ee, De)),
          serializeTypeForDeclaration: (Ee, te, Vt, Ht, Dr, De) => J(Vt, Ht, Dr, De, void 0, void 0, (Le) => ke.serializeTypeOfDeclaration(Ee, te, Le)),
          serializeReturnTypeForSignature: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => ke.serializeReturnTypeForSignature(Ee, mn(Ee), De)),
          serializeTypeForExpression: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => ke.serializeTypeOfExpression(Ee, De)),
          indexInfoToIndexSignatureDeclaration: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => si(Ee, De, void 0)),
          signatureToSignatureDeclaration: (Ee, te, Vt, Ht, Dr, De, Le, mt, Ot) => J(Vt, Ht, Dr, De, Le, mt, (er) => Ii(Ee, te, er), Ot),
          symbolToEntityName: (Ee, te, Vt, Ht, Dr, De) => J(Vt, Ht, Dr, De, void 0, void 0, (Le) => Pc(Ee, Le, te, !1)),
          symbolToExpression: (Ee, te, Vt, Ht, Dr, De) => J(Vt, Ht, Dr, De, void 0, void 0, (Le) => oc(Ee, Le, te)),
          symbolToTypeParameterDeclarations: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => bo(Ee, De)),
          symbolToParameterDeclaration: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => wr(Ee, De)),
          typeParameterToDeclaration: (Ee, te, Vt, Ht, Dr, De, Le, mt) => J(te, Vt, Ht, Dr, De, Le, (Ot) => Ro(Ee, Ot), mt),
          symbolTableToDeclarationStatements: (Ee, te, Vt, Ht, Dr) => J(te, Vt, Ht, Dr, void 0, void 0, (De) => Nh(Ee, De)),
          symbolToNode: (Ee, te, Vt, Ht, Dr, De) => J(Vt, Ht, Dr, De, void 0, void 0, (Le) => l(Ee, Le, te)),
          symbolToDeclarations: f
        };
        function r(Ee, te, Vt) {
          const Ht = TP(te);
          if (!Ee.mapper) return Ht;
          const Dr = Ji(Ht, Ee.mapper);
          return Vt && Dr !== Ht ? void 0 : Dr;
        }
        function s(Ee, te, Vt) {
          if ((!wo(te) || !(te.flags & 16) || !Ee.enclosingFile || Ee.enclosingFile !== Sr(rc(te))) && (te = A.cloneNode(te)), te === Vt || !Vt) return te;
          let Ht = te.original;
          for (; Ht && Ht !== Vt; ) Ht = Ht.original;
          return Ht || Fn(te, Vt), Ee.enclosingFile && Ee.enclosingFile === Sr(rc(Vt)) ? pt(te, Vt) : te;
        }
        function l(Ee, te, Vt) {
          if (te.internalFlags & 1) {
            if (Ee.valueDeclaration) {
              const Dr = va(Ee.valueDeclaration);
              if (Dr && _s(Dr)) return Dr;
            }
            const Ht = Wi(Ee).nameType;
            if (Ht && Ht.flags & 49152)
              return te.enclosingDeclaration = Ht.symbol.valueDeclaration, A.createComputedPropertyName(oc(Ht.symbol, te, Vt));
          }
          return oc(Ee, te, Vt);
        }
        function f(Ee, te, Vt, Ht, Dr, De) {
          return Rn(J(void 0, Vt, void 0, void 0, Ht, Dr, (Le) => O(Ee, Le), De), (Le) => {
            switch (Le.kind) {
              case 264:
                return m(Le, Ee);
              case 267:
                return y(Le, l1, Ee);
              case 265:
                return x(Le, Ee, te);
              case 268:
                return y(Le, Qc, Ee);
              default:
                return;
            }
          });
        }
        function m(Ee, te) {
          const Vt = dn(te.declarations, Zn), Ht = Vt && Vt.length > 0 ? Vt[0] : Ee, Dr = Pu(Ht) & -161;
          return Hc(Ht) && (Ee = A.updateClassDeclaration(Ee, Ee.modifiers, void 0, Ee.typeParameters, Ee.heritageClauses, Ee.members)), A.replaceModifiers(Ee, Dr);
        }
        function y(Ee, te, Vt) {
          const Ht = dn(Vt.declarations, te), Dr = Pu(Ht && Ht.length > 0 ? Ht[0] : Ee) & -161;
          return A.replaceModifiers(Ee, Dr);
        }
        function x(Ee, te, Vt) {
          if (Vt & 64)
            return y(Ee, au, te);
        }
        function O(Ee, te) {
          const Vt = Oo(Ee);
          te.typeStack.push(Vt.id), te.typeStack.push(-1);
          const Ht = Nh(Ka([Ee]), te);
          return te.typeStack.pop(), te.typeStack.pop(), Ht;
        }
        function J(Ee, te, Vt, Ht, Dr, De, Le, mt) {
          const Ot = Ht?.moduleResolverHost ?? IRe(e);
          te = te || 0;
          const er = Dr || (te & 1 ? gB : Z4), Mt = {
            enclosingDeclaration: Ee,
            enclosingFile: Ee && Sr(Ee),
            flags: te,
            internalFlags: Vt || 0,
            tracker: void 0,
            maxTruncationLength: er,
            maxExpansionDepth: De ?? -1,
            encounteredError: !1,
            suppressReportInferenceFallback: !1,
            reportedDiagnostic: !1,
            visitedTypes: void 0,
            symbolDepth: void 0,
            inferTypeParameters: void 0,
            approximateLength: 0,
            trackedSymbols: void 0,
            bundled: !!L.outFile && !!Ee && gf(Sr(Ee)),
            truncating: !1,
            usedSymbolNames: void 0,
            remappedSymbolNames: void 0,
            remappedSymbolReferences: void 0,
            reverseMappedStack: void 0,
            mustCreateTypeParameterSymbolList: !0,
            typeParameterSymbolList: void 0,
            mustCreateTypeParametersNamesLookups: !0,
            typeParameterNames: void 0,
            typeParameterNamesByText: void 0,
            typeParameterNamesByTextNextNameCount: void 0,
            enclosingSymbolTypes: /* @__PURE__ */ new Map(),
            mapper: void 0,
            depth: 0,
            typeStack: [],
            out: {
              canIncreaseExpansionDepth: !1,
              truncated: !1
            }
          };
          Mt.tracker = new One(Mt, Ht, Ot);
          const gr = Le(Mt);
          return Mt.truncating && Mt.flags & 1 && Mt.tracker.reportTruncationError(), mt && (mt.canIncreaseExpansionDepth = Mt.out.canIncreaseExpansionDepth, mt.truncated = Mt.out.truncated), Mt.encounteredError ? void 0 : gr;
        }
        function V(Ee, te, Vt) {
          const Ht = ss(te), Dr = Ee.enclosingSymbolTypes.get(Ht);
          return Ee.enclosingSymbolTypes.set(Ht, Vt), De;
          function De() {
            Dr ? Ee.enclosingSymbolTypes.set(Ht, Dr) : Ee.enclosingSymbolTypes.delete(Ht);
          }
        }
        function Y(Ee) {
          const te = Ee.flags, Vt = Ee.internalFlags, Ht = Ee.depth;
          return Dr;
          function Dr() {
            Ee.flags = te, Ee.internalFlags = Vt, Ee.depth = Ht;
          }
        }
        function be(Ee) {
          return Ee.maxExpansionDepth >= 0 && me(Ee);
        }
        function me(Ee) {
          return Ee.truncating ? Ee.truncating : Ee.truncating = Ee.approximateLength > Ee.maxTruncationLength;
        }
        function Je(Ee, te) {
          for (let Vt = 0; Vt < te.typeStack.length - 1; Vt++) if (te.typeStack[Vt] === Ee.id) return !1;
          return te.depth < te.maxExpansionDepth || te.depth === te.maxExpansionDepth && !te.out.canIncreaseExpansionDepth;
        }
        function gt(Ee, te, Vt = !1) {
          if (!Vt && L2(Ee)) return !1;
          for (let Dr = 0; Dr < te.typeStack.length - 1; Dr++) if (te.typeStack[Dr] === Ee.id) return !1;
          const Ht = te.depth < te.maxExpansionDepth;
          return Ht || (te.out.canIncreaseExpansionDepth = !0), Ht;
        }
        function ht(Ee, te) {
          const Vt = Y(te);
          Ee && te.typeStack.push(Ee.id);
          const Ht = ir(Ee, te);
          return Ee && te.typeStack.pop(), Vt(), Ht;
        }
        function ir(Ee, te) {
          var Vt, Ht;
          i && i.throwIfCancellationRequested && i.throwIfCancellationRequested();
          const Dr = te.flags & 8388608;
          te.flags &= -8388609;
          let De = !1;
          if (!Ee) {
            if (!(te.flags & 262144)) {
              te.encounteredError = !0;
              return;
            }
            return te.approximateLength += 3, A.createKeywordTypeNode(133);
          }
          if (te.flags & 536870912 || (Ee = dp(Ee)), Ee.flags & 1)
            return Ee.aliasSymbol ? A.createTypeReferenceNode(L_(Ee.aliasSymbol), ur(Ee.aliasTypeArguments, te)) : Ee === ee ? i1(A.createKeywordTypeNode(133), 3, "unresolved") : (te.approximateLength += 3, A.createKeywordTypeNode(Ee === j ? 141 : 133));
          if (Ee.flags & 2) return A.createKeywordTypeNode(159);
          if (Ee.flags & 32)
            return te.approximateLength += 6, A.createKeywordTypeNode(154);
          if (Ee.flags & 64)
            return te.approximateLength += 6, A.createKeywordTypeNode(150);
          if (Ee.flags & 128)
            return te.approximateLength += 6, A.createKeywordTypeNode(163);
          if (Ee.flags & 256 && !Ee.aliasSymbol)
            return te.approximateLength += 7, A.createKeywordTypeNode(136);
          if (Ee.flags & 98304) {
            if (Ee.symbol.flags & 8) {
              const ar = ju(Ee.symbol), vn = zo(ar, te, 788968);
              if (Oo(ar) === Ee) return vn;
              const $i = kc(Ee.symbol);
              return Y_($i, 99) ? yi(vn, A.createTypeReferenceNode($i, void 0)) : Am(vn) ? (vn.isTypeOf = !0, A.createIndexedAccessTypeNode(vn, A.createLiteralTypeNode(A.createStringLiteral($i)))) : xf(vn) ? A.createIndexedAccessTypeNode(A.createTypeQueryNode(vn.typeName), A.createLiteralTypeNode(A.createStringLiteral($i))) : E.fail("Unhandled type node kind returned from `symbolToTypeNode`.");
            }
            if (gt(Ee, te)) De = !0;
            else return zo(Ee.symbol, te, 788968);
          }
          if (Ee.flags & 1024)
            return te.approximateLength += Ee.value.length + 2, A.createLiteralTypeNode(ln(A.createStringLiteral(Ee.value, !!(te.flags & 268435456)), 16777216));
          if (Ee.flags & 2048) {
            const ar = Ee.value;
            return te.approximateLength += ("" + ar).length, A.createLiteralTypeNode(ar < 0 ? A.createPrefixUnaryExpression(41, A.createNumericLiteral(-ar)) : A.createNumericLiteral(ar));
          }
          if (Ee.flags & 4096)
            return te.approximateLength += Ub(Ee.value).length + 1, A.createLiteralTypeNode(A.createBigIntLiteral(Ee.value));
          if (Ee.flags & 8192)
            return te.approximateLength += Ee.intrinsicName.length, A.createLiteralTypeNode(Ee.intrinsicName === "true" ? A.createTrue() : A.createFalse());
          if (Ee.flags & 16384) {
            if (!(te.flags & 1048576)) {
              if (gC(Ee.symbol, te.enclosingDeclaration))
                return te.approximateLength += 6, zo(Ee.symbol, te, 111551);
              te.tracker.reportInaccessibleUniqueSymbolError && te.tracker.reportInaccessibleUniqueSymbolError();
            }
            return te.approximateLength += 13, A.createTypeOperatorNode(158, A.createKeywordTypeNode(155));
          }
          if (Ee.flags & 16)
            return te.approximateLength += 4, A.createKeywordTypeNode(116);
          if (Ee.flags & 4)
            return te.approximateLength += 9, A.createKeywordTypeNode(157);
          if (Ee.flags & 8)
            return te.approximateLength += 4, A.createLiteralTypeNode(A.createNull());
          if (Ee.flags & 262144)
            return te.approximateLength += 5, A.createKeywordTypeNode(146);
          if (Ee.flags & 512)
            return te.approximateLength += 6, A.createKeywordTypeNode(155);
          if (Ee.flags & 131072)
            return te.approximateLength += 6, A.createKeywordTypeNode(151);
          if (VD(Ee))
            return te.flags & 4194304 && (!te.encounteredError && !(te.flags & 32768) && (te.encounteredError = !0), (Ht = (Vt = te.tracker).reportInaccessibleThisError) == null || Ht.call(Vt)), te.approximateLength += 4, A.createThisTypeNode();
          if (!Dr && Ee.aliasSymbol && (te.flags & 16384 || gM(Ee.aliasSymbol, te.enclosingDeclaration))) {
            if (!gt(Ee, te, !0)) {
              const ar = ur(Ee.aliasTypeArguments, te);
              return PT(Ee.aliasSymbol.escapedName) && !(Ee.aliasSymbol.flags & 32) ? A.createTypeReferenceNode(A.createIdentifier(""), ar) : It(ar) === 1 && Ee.aliasSymbol === zs.symbol ? A.createArrayTypeNode(ar[0]) : zo(Ee.aliasSymbol, te, 788968, ar);
            }
            te.depth += 1;
          }
          const Le = yn(Ee);
          if (Le & 4)
            return E.assert(!!(Ee.flags & 1048576)), gt(Ee, te) ? (te.depth += 1, Nr(Ee, !0, !0)) : Ee.node ? an(Ee, Vn) : Vn(Ee);
          if (Ee.flags & 524288 || Le & 3) {
            if (Ee.flags & 524288 && Gi(te.inferTypeParameters, Ee)) {
              te.approximateLength += kc(Ee.symbol).length + 6;
              let vn;
              const $i = g_(Ee);
              if ($i) {
                const bi = R3e(Ee, !0);
                bi && Dh($i, bi) || (te.approximateLength += 9, vn = $i && ht($i, te));
              }
              return A.createInferTypeNode(Cs(Ee, te, vn));
            }
            if (te.flags & 4 && Ee.flags & 524288) {
              const vn = $_(Ee, te);
              return te.approximateLength += On(vn).length, A.createTypeReferenceNode(A.createIdentifier(On(vn)), void 0);
            }
            if (Le & 3 && gt(Ee, te))
              return te.depth += 1, Nr(Ee, !0, !0);
            if (Ee.symbol) return zo(Ee.symbol, te, 788968);
            const ar = (Ee === Bn || Ee === tn) && D && D.symbol ? (Ee === tn ? "sub-" : "super-") + kc(D.symbol) : "?";
            return A.createTypeReferenceNode(A.createIdentifier(ar), void 0);
          }
          if (Ee.flags & 134217728 && Ee.origin && (Ee = Ee.origin), Ee.flags & 402653184) {
            const ar = Ee.flags & 134217728 ? yM(Ee.types, De) : Ee.types;
            if (It(ar) === 1) return ht(ar[0], te);
            const vn = ur(ar, te, !0);
            if (vn && vn.length > 0) return Ee.flags & 134217728 ? A.createUnionTypeNode(vn) : A.createIntersectionTypeNode(vn);
            !te.encounteredError && !(te.flags & 262144) && (te.encounteredError = !0);
            return;
          }
          if (Le & 48)
            return E.assert(!!(Ee.flags & 1048576)), Nr(Ee);
          if (Ee.flags & 2097152) {
            const ar = Ee.type;
            te.approximateLength += 6;
            const vn = ht(ar, te);
            return A.createTypeOperatorNode(143, vn);
          }
          if (Ee.flags & 4194304) {
            const ar = Ee.texts, vn = Ee.types, $i = A.createTemplateHead(ar[0]), bi = A.createNodeArray(or(vn, (Es, xc) => A.createTemplateLiteralTypeSpan(ht(Es, te), (xc < vn.length - 1 ? A.createTemplateMiddle : A.createTemplateTail)(ar[xc + 1]))));
            return te.approximateLength += 2, A.createTemplateLiteralType($i, bi);
          }
          if (Ee.flags & 8388608) {
            const ar = ht(Ee.type, te);
            return zo(Ee.symbol, te, 788968, [ar]);
          }
          if (Ee.flags & 33554432) {
            const ar = ht(Ee.objectType, te), vn = ht(Ee.indexType, te);
            return te.approximateLength += 2, A.createIndexedAccessTypeNode(ar, vn);
          }
          if (Ee.flags & 67108864) return an(Ee, (ar) => mt(ar));
          if (Ee.flags & 16777216) {
            const ar = ht(Ee.baseType, te), vn = a4(Ee) && lpe("NoInfer", !1);
            return vn ? zo(vn, te, 788968, [ar]) : ar;
          }
          return E.fail("Should be unreachable.");
          function mt(ar) {
            const vn = ht(ar.checkType, te);
            if (te.approximateLength += 15, te.flags & 4 && ar.root.isDistributive && !(ar.checkType.flags & 524288)) {
              const Ia = fp(Fs(262144, "T")), Uc = $_(Ia, te), Rc = A.createTypeReferenceNode(Uc);
              te.approximateLength += 37;
              const r_ = qT(ar.root.checkType, Ia, ar.mapper), y_ = te.inferTypeParameters;
              te.inferTypeParameters = ar.root.inferTypeParameters;
              const n_ = ht(Ji(ar.root.extendsType, r_), te);
              te.inferTypeParameters = y_;
              const Y2 = Ot(Ji(r(te, ar.root.node.trueType), r_)), X1 = Ot(Ji(r(te, ar.root.node.falseType), r_));
              return A.createConditionalTypeNode(vn, A.createInferTypeNode(A.createTypeParameterDeclaration(void 0, A.cloneNode(Rc.typeName))), A.createConditionalTypeNode(A.createTypeReferenceNode(A.cloneNode(Uc)), ht(ar.checkType, te), A.createConditionalTypeNode(Rc, n_, Y2, X1), A.createKeywordTypeNode(146)), A.createKeywordTypeNode(146));
            }
            const $i = te.inferTypeParameters;
            te.inferTypeParameters = ar.root.inferTypeParameters;
            const bi = ht(ar.extendsType, te);
            te.inferTypeParameters = $i;
            const Es = Ot(z1(ar)), xc = Ot(W1(ar));
            return A.createConditionalTypeNode(vn, bi, Es, xc);
          }
          function Ot(ar) {
            var vn, $i, bi;
            return ar.flags & 134217728 ? (vn = te.visitedTypes) != null && vn.has(Kl(ar)) ? (te.flags & 131072 || (te.encounteredError = !0, (bi = ($i = te.tracker) == null ? void 0 : $i.reportCyclicStructureError) == null || bi.call($i)), mr(te)) : an(ar, (Es) => ht(Es, te)) : ht(ar, te);
          }
          function er(ar) {
            return !!N8(ar);
          }
          function Mt(ar) {
            return !!ar.target && er(ar.target) && !er(ar);
          }
          function gr(ar) {
            var vn;
            E.assert(!!(ar.flags & 1048576));
            const $i = ar.declaration.readonlyToken ? A.createToken(ar.declaration.readonlyToken.kind) : void 0, bi = ar.declaration.questionToken ? A.createToken(ar.declaration.questionToken.kind) : void 0;
            let Es, xc, Ia = xh(ar);
            const Uc = sm(ar), Rc = !MT(ar) && !(ob(ar).flags & 2) && te.flags & 4 && !(pp(ar).flags & 524288 && ((vn = g_(pp(ar))) == null ? void 0 : vn.flags) & 2097152);
            if (MT(ar)) {
              if (Mt(ar) && te.flags & 4) {
                const Q1 = fp(Fs(262144, "T")), r3 = $_(Q1, te), n3 = ar.target;
                xc = A.createTypeReferenceNode(r3), Ia = Ji(xh(n3), JAe([sm(n3), ob(n3)], [Uc, Q1]));
              }
              Es = A.createTypeOperatorNode(143, xc || ht(ob(ar), te));
            } else if (Rc) {
              const Q1 = $_(fp(Fs(262144, "T")), te);
              xc = A.createTypeReferenceNode(Q1), Es = xc;
            } else Es = ht(pp(ar), te);
            const r_ = Cs(Uc, te, Es), y_ = fi(te, ar.declaration, void 0, [sb(mn(ar.declaration.typeParameter))]), n_ = ar.declaration.nameType ? ht(Th(ar), te) : void 0, Y2 = ht(h0(Ia, !!(Dg(ar) & 4)), te);
            y_();
            const X1 = A.createMappedTypeNode($i, r_, n_, bi, Y2, void 0);
            te.approximateLength += 10;
            const Z2 = ln(X1, 1);
            if (Mt(ar) && te.flags & 4) {
              const Q1 = Ji(g_(r(te, ar.declaration.typeParameter.constraint.type)) || Re, ar.mapper);
              return A.createConditionalTypeNode(ht(ob(ar), te), A.createInferTypeNode(A.createTypeParameterDeclaration(void 0, A.cloneNode(xc.typeName), Q1.flags & 2 ? void 0 : ht(Q1, te))), Z2, A.createKeywordTypeNode(146));
            } else if (Rc) return A.createConditionalTypeNode(ht(pp(ar), te), A.createInferTypeNode(A.createTypeParameterDeclaration(void 0, A.cloneNode(xc.typeName), A.createTypeOperatorNode(143, ht(ob(ar), te)))), Z2, A.createKeywordTypeNode(146));
            return Z2;
          }
          function Nr(ar, vn = !1, $i = !1) {
            var bi, Es;
            const xc = ar.id, Ia = ar.symbol;
            if (Ia) {
              if (yn(ar) & 8388608) {
                const r_ = ar.node;
                if (Gb(r_) && r(te, r_) === ar) {
                  const y_ = ke.tryReuseExistingTypeNode(te, r_);
                  if (y_) return y_;
                }
                return (bi = te.visitedTypes) != null && bi.has(xc) ? mr(te) : an(ar, Dn);
              }
              const Rc = F2(ar) ? 788968 : 111551;
              if (ng(Ia.valueDeclaration)) return zo(Ia, te, Rc);
              if (!$i && (Ia.flags & 32 && !vn && !s$(Ia) && !(Ia.valueDeclaration && Zn(Ia.valueDeclaration) && te.flags & 2048 && (!sl(Ia.valueDeclaration) || L1(Ia, te.enclosingDeclaration, Rc, !1).accessibility !== 0)) || Ia.flags & 896 || Uc())) if (gt(ar, te)) te.depth += 1;
              else return zo(Ia, te, Rc);
              if ((Es = te.visitedTypes) != null && Es.has(xc)) {
                const r_ = d8(ar);
                return r_ ? zo(r_, te, 788968) : mr(te);
              } else return an(ar, Dn);
            } else return Dn(ar);
            function Uc() {
              var Rc;
              const r_ = !!(Ia.flags & 8192) && _t(Ia.declarations, (n_) => es(n_) && !i3e(va(n_))), y_ = !!(Ia.flags & 16) && (Ia.parent || bt(Ia.declarations, (n_) => n_.parent.kind === 308 || n_.parent.kind === 269));
              if (r_ || y_) return (!!(te.flags & 4096) || ((Rc = te.visitedTypes) == null ? void 0 : Rc.has(xc))) && (!(te.flags & 8) || gC(Ia, te.enclosingDeclaration));
            }
          }
          function an(ar, vn) {
            var $i, bi, Es;
            const xc = ar.id, Ia = yn(ar) & 16 && ar.symbol && ar.symbol.flags & 32, Uc = yn(ar) & 4 && ar.node ? "N" + Hs(ar.node) : ar.flags & 67108864 ? "N" + Hs(ar.root.node) : ar.symbol ? (Ia ? "+" : "") + ss(ar.symbol) : void 0;
            te.visitedTypes || (te.visitedTypes = /* @__PURE__ */ new Set()), Uc && !te.symbolDepth && (te.symbolDepth = /* @__PURE__ */ new Map());
            const Rc = te.maxExpansionDepth >= 0 ? void 0 : te.enclosingDeclaration && Pn(te.enclosingDeclaration), r_ = `${Kl(ar)}|${te.flags}|${te.internalFlags}`;
            Rc && (Rc.serializedTypes || (Rc.serializedTypes = /* @__PURE__ */ new Map()));
            const y_ = ($i = Rc?.serializedTypes) == null ? void 0 : $i.get(r_);
            if (y_)
              return (bi = y_.trackedSymbols) == null || bi.forEach(([Ig, b4, BR]) => te.tracker.trackSymbol(Ig, b4, BR)), y_.truncating && (te.truncating = !0), te.approximateLength += y_.addedLength, r3(y_.node);
            let n_;
            if (Uc) {
              if (n_ = te.symbolDepth.get(Uc) || 0, n_ > 10) return mr(te);
              te.symbolDepth.set(Uc, n_ + 1);
            }
            te.visitedTypes.add(xc);
            const Y2 = te.trackedSymbols;
            te.trackedSymbols = void 0;
            const X1 = te.approximateLength, Z2 = vn(ar), Q1 = te.approximateLength - X1;
            return !te.reportedDiagnostic && !te.encounteredError && ((Es = Rc?.serializedTypes) == null || Es.set(r_, {
              node: Z2,
              truncating: te.truncating,
              addedLength: Q1,
              trackedSymbols: te.trackedSymbols
            })), te.visitedTypes.delete(xc), Uc && te.symbolDepth.set(Uc, n_), te.trackedSymbols = Y2, Z2;
            function r3(Ig) {
              return !wo(Ig) && Ca(Ig) === Ig ? Ig : s(te, A.cloneNode(Tr(Ig, r3, void 0, n3, r3)), Ig);
            }
            function n3(Ig, b4, BR, dge, mge) {
              return Ig && Ig.length === 0 ? pt(A.createNodeArray(void 0, Ig.hasTrailingComma), Ig) : Fr(Ig, b4, BR, dge, mge);
            }
          }
          function Dn(ar) {
            if (I_(ar) || ar.containsError) return gr(ar);
            const vn = om(ar);
            if (!vn.properties.length && !vn.indexInfos.length) {
              if (!vn.callSignatures.length && !vn.constructSignatures.length)
                return te.approximateLength += 2, ln(A.createTypeLiteralNode(void 0), 1);
              if (vn.callSignatures.length === 1 && !vn.constructSignatures.length) {
                const Ia = vn.callSignatures[0];
                return Ii(Ia, 185, te);
              }
              if (vn.constructSignatures.length === 1 && !vn.callSignatures.length) {
                const Ia = vn.constructSignatures[0];
                return Ii(Ia, 186, te);
              }
            }
            const $i = dn(vn.constructSignatures, (Ia) => !!(Ia.flags & 4));
            if (_t($i)) {
              const Ia = or($i, BT);
              return vn.callSignatures.length + (vn.constructSignatures.length - $i.length) + vn.indexInfos.length + (te.flags & 2048 ? Qf(vn.properties, (Uc) => !(Uc.flags & 4194304)) : It(vn.properties)) && Ia.push(qE(vn)), ht(Ss(Ia), te);
            }
            const bi = Y(te);
            te.flags |= 4194304;
            const Es = Na(vn);
            bi();
            const xc = A.createTypeLiteralNode(Es);
            return te.approximateLength += 2, ln(xc, te.flags & 1024 ? 0 : 1), xc;
          }
          function Vn(ar) {
            let vn = Vo(ar);
            if (ar.target === zs || ar.target === bc) {
              if (te.flags & 2) {
                const Es = ht(vn[0], te);
                return A.createTypeReferenceNode(ar.target === zs ? "Array" : "ReadonlyArray", [Es]);
              }
              const $i = ht(vn[0], te), bi = A.createArrayTypeNode($i);
              return ar.target === zs ? bi : A.createTypeOperatorNode(148, bi);
            } else if (ar.target.objectFlags & 8) {
              if (vn = el(vn, ($i, bi) => h0($i, !!(ar.target.elementFlags[bi] & 2))), vn.length > 0) {
                const $i = vy(ar), bi = ur(vn.slice(0, $i), te);
                if (bi) {
                  const { labeledElementDeclarations: Es } = ar.target;
                  for (let Ia = 0; Ia < bi.length; Ia++) {
                    const Uc = ar.target.elementFlags[Ia], Rc = Es?.[Ia];
                    Rc ? bi[Ia] = A.createNamedTupleMember(Uc & 12 ? A.createToken(26) : void 0, A.createIdentifier(Ti(gme(Rc))), Uc & 2 ? A.createToken(58) : void 0, Uc & 4 ? A.createArrayTypeNode(bi[Ia]) : bi[Ia]) : bi[Ia] = Uc & 12 ? A.createRestTypeNode(Uc & 4 ? A.createArrayTypeNode(bi[Ia]) : bi[Ia]) : Uc & 2 ? A.createOptionalTypeNode(bi[Ia]) : bi[Ia];
                  }
                  const xc = ln(A.createTupleTypeNode(bi), 1);
                  return ar.target.readonly ? A.createTypeOperatorNode(148, xc) : xc;
                }
              }
              if (te.encounteredError || te.flags & 524288) {
                const $i = ln(A.createTupleTypeNode([]), 1);
                return ar.target.readonly ? A.createTypeOperatorNode(148, $i) : $i;
              }
              te.encounteredError = !0;
              return;
            } else {
              if (te.flags & 2048 && ar.symbol.valueDeclaration && Zn(ar.symbol.valueDeclaration) && !gC(ar.symbol, te.enclosingDeclaration)) return Nr(ar);
              {
                const $i = ar.target.outerTypeParameters;
                let bi = 0, Es;
                if ($i) {
                  const Rc = $i.length;
                  for (; bi < Rc; ) {
                    const r_ = bi, y_ = j3e($i[bi]);
                    do
                      bi++;
                    while (bi < Rc && j3e($i[bi]) === y_);
                    if (!GR($i, vn, r_, bi)) {
                      const n_ = ur(vn.slice(r_, bi), te), Y2 = Y(te);
                      te.flags |= 16;
                      const X1 = zo(y_, te, 788968, n_);
                      Y2(), Es = Es ? yi(Es, X1) : X1;
                    }
                  }
                }
                let xc;
                if (vn.length > 0) {
                  let Rc = 0;
                  if (ar.target.typeParameters && (Rc = Math.min(ar.target.typeParameters.length, vn.length), (ti(ar, NM(!1)) || ti(ar, nAe(!1)) || ti(ar, AM(!1)) || ti(ar, rAe(!1))) && (!ar.node || !xf(ar.node) || !ar.node.typeArguments || ar.node.typeArguments.length < Rc)))
                    for (; Rc > 0; ) {
                      const r_ = vn[Rc - 1], y_ = ar.target.typeParameters[Rc - 1], n_ = j2(y_);
                      if (!n_ || !Dh(r_, n_)) break;
                      Rc--;
                    }
                  xc = ur(vn.slice(bi, Rc), te);
                }
                const Ia = Y(te);
                te.flags |= 16;
                const Uc = zo(ar.symbol, te, 788968, xc);
                return Ia(), Es ? yi(Es, Uc) : Uc;
              }
            }
          }
          function yi(ar, vn) {
            if (Am(ar)) {
              let $i = ar.typeArguments, bi = ar.qualifier;
              bi && (Fe(bi) ? $i !== NS(bi) && (bi = R0(A.cloneNode(bi), $i)) : $i !== NS(bi.right) && (bi = A.updateQualifiedName(bi, bi.left, R0(A.cloneNode(bi.right), $i)))), $i = vn.typeArguments;
              const Es = An(vn);
              for (const xc of Es) bi = bi ? A.createQualifiedName(bi, xc) : xc;
              return A.updateImportTypeNode(ar, ar.argument, ar.attributes, bi, $i, ar.isTypeOf);
            } else {
              let $i = ar.typeArguments, bi = ar.typeName;
              Fe(bi) ? $i !== NS(bi) && (bi = R0(A.cloneNode(bi), $i)) : $i !== NS(bi.right) && (bi = A.updateQualifiedName(bi, bi.left, R0(A.cloneNode(bi.right), $i))), $i = vn.typeArguments;
              const Es = An(vn);
              for (const xc of Es) bi = A.createQualifiedName(bi, xc);
              return A.updateTypeReferenceNode(ar, bi, $i);
            }
          }
          function An(ar) {
            let vn = ar.typeName;
            const $i = [];
            for (; !Fe(vn); )
              $i.unshift(vn.right), vn = vn.left;
            return $i.unshift(vn), $i;
          }
          function Qi(ar, vn, $i) {
            return ar.components && hr(ar.components, (bi) => {
              var Es;
              return !!(bi.name && _s(bi.name) && go(bi.name.expression) && vn.enclosingDeclaration && ((Es = dy(bi.name.expression, vn.enclosingDeclaration, !1)) == null ? void 0 : Es.accessibility) === 0);
            }) ? or(dn(ar.components, (bi) => !e4(bi)), (bi) => (Vi(bi.name.expression, vn.enclosingDeclaration, vn), s(vn, A.createPropertySignature(ar.isReadonly ? [A.createModifier(148)] : void 0, bi.name, (f_(bi) || ga(bi) || gd(bi) || hc(bi) || Wg(bi) || vm(bi)) && bi.questionToken ? A.createToken(58) : void 0, $i || ht(ft(bi.symbol), vn)), bi))) : [si(ar, vn, $i)];
          }
          function Na(ar) {
            if (me(te))
              return te.out.truncated = !0, te.flags & 1 ? [QD(A.createNotEmittedTypeElement(), 3, "elided")] : [A.createPropertySignature(void 0, "...", void 0, void 0)];
            te.typeStack.push(-1);
            const vn = [];
            for (const Es of ar.callSignatures) vn.push(Ii(Es, 180, te));
            for (const Es of ar.constructSignatures)
              Es.flags & 4 || vn.push(Ii(Es, 181, te));
            for (const Es of ar.indexInfos) vn.push(...Qi(Es, te, ar.objectFlags & 1024 ? mr(te) : void 0));
            const $i = ar.properties;
            if (!$i)
              return te.typeStack.pop(), vn;
            let bi = 0;
            for (const Es of $i)
              if (!(dm(te) && Es.flags & 4194304)) {
                if (bi++, te.flags & 2048) {
                  if (Es.flags & 4194304) continue;
                  kp(Es) & 6 && te.tracker.reportPrivateInBaseOfClassExpression && te.tracker.reportPrivateInBaseOfClassExpression(Ti(Es.escapedName)), nJ(Es) && te.tracker.reportPrivateInBaseOfClassExpression && te.tracker.reportPrivateInBaseOfClassExpression(On(Es.valueDeclaration.name));
                }
                if (me(te) && bi + 2 < $i.length - 1) {
                  if (te.out.truncated = !0, te.flags & 1) {
                    const xc = vn.pop();
                    vn.push(QD(xc, 3, `... ${$i.length - bi} more elided ...`));
                  } else vn.push(A.createPropertySignature(void 0, `... ${$i.length - bi} more ...`, void 0, void 0));
                  Hr($i[$i.length - 1], te, vn);
                  break;
                }
                Hr(Es, te, vn);
              }
            return te.typeStack.pop(), vn.length ? vn : void 0;
          }
        }
        function mr(Ee) {
          return Ee.approximateLength += 3, Ee.flags & 1 ? i1(A.createKeywordTypeNode(133), 3, "elided") : A.createTypeReferenceNode(A.createIdentifier("..."), void 0);
        }
        function br(Ee, te) {
          var Vt;
          return !!(gc(Ee) & 8192) && (Gi(te.reverseMappedStack, Ee) || ((Vt = te.reverseMappedStack) == null ? void 0 : Vt[0]) && !(yn(ws(te.reverseMappedStack).links.propertyType) & 16) || Dr());
          function Dr() {
            var De;
            if ((((De = te.reverseMappedStack) == null ? void 0 : De.length) ?? 0) < 3) return !1;
            for (let Le = 0; Le < 3; Le++) if (te.reverseMappedStack[te.reverseMappedStack.length - 1 - Le].links.mappedType.symbol !== Ee.links.mappedType.symbol) return !1;
            return !0;
          }
        }
        function Hr(Ee, te, Vt) {
          var Ht;
          const Dr = !!(gc(Ee) & 8192), De = br(Ee, te) ? Ve : kn(Ee), Le = te.enclosingDeclaration;
          if (te.enclosingDeclaration = void 0, te.tracker.canTrackSymbol && v8(Ee.escapedName)) if (Ee.declarations) {
            const an = js(Ee.declarations);
            if (e4(an)) if (un(an)) {
              const Dn = va(an);
              Dn && Po(Dn) && PA(Dn.argumentExpression) && Vi(Dn.argumentExpression, Le, te);
            } else Vi(an.name.expression, Le, te);
          } else te.tracker.reportNonSerializableProperty(Xi(Ee));
          te.enclosingDeclaration = Ee.valueDeclaration || ((Ht = Ee.declarations) == null ? void 0 : Ht[0]) || Le;
          const mt = t3(Ee, te);
          if (te.enclosingDeclaration = Le, te.approximateLength += kc(Ee).length + 1, Ee.flags & 98304) {
            const an = cd(Ee);
            if (!hi(De) && !hi(an)) {
              const Dn = Wi(Ee).mapper, Vn = Ho(Ee, 173);
              if (De !== an || Ee.parent.flags & 32 && !Vn) {
                const yi = Ho(Ee, 178);
                if (yi) {
                  const Qi = mp(yi);
                  Vt.push(lr(te, Ii(Dn ? GT(Qi, Dn) : Qi, 178, te, { name: mt }), yi));
                }
                const An = Ho(Ee, 179);
                if (An) {
                  const Qi = mp(An);
                  Vt.push(lr(te, Ii(Dn ? GT(Qi, Dn) : Qi, 179, te, { name: mt }), An));
                }
                return;
              }
              if (Ee.parent.flags & 32 && Vn && xr(Vn.modifiers, Nz)) {
                const yi = Zm(void 0, void 0, void 0, Te, De, void 0, 0, 0);
                Vt.push(lr(te, Ii(yi, 178, te, { name: mt }), Vn));
                const An = Fs(1, "arg");
                An.links.type = an;
                const Qi = Zm(void 0, void 0, void 0, [An], Qt, void 0, 0, 0);
                Vt.push(Ii(Qi, 179, te, { name: mt }));
                return;
              }
            }
          }
          const Ot = Ee.flags & 16777216 ? A.createToken(58) : void 0;
          if (Ee.flags & 8208 && !hy(De).length && !pm(Ee)) {
            const an = Pa(rl(De, (Dn) => !(Dn.flags & 4)), 0);
            for (const Dn of an) {
              const Vn = Ii(Dn, 174, te, {
                name: mt,
                questionToken: Ot
              });
              Vt.push(Nr(Vn, Dn.declaration || Ee.valueDeclaration));
            }
            if (an.length || !Ot) return;
          }
          let er;
          br(Ee, te) ? er = mr(te) : (Dr && (te.reverseMappedStack || (te.reverseMappedStack = []), te.reverseMappedStack.push(Ee)), er = De ? Wr(te, void 0, De, Ee) : A.createKeywordTypeNode(133), Dr && te.reverseMappedStack.pop());
          const Mt = pm(Ee) ? [A.createToken(148)] : void 0;
          Mt && (te.approximateLength += 9);
          const gr = A.createPropertySignature(Mt, mt, Ot, er);
          Vt.push(Nr(gr, Ee.valueDeclaration));
          function Nr(an, Dn) {
            var Vn;
            const yi = (Vn = Ee.declarations) == null ? void 0 : Vn.find((An) => An.kind === 349);
            if (yi) {
              const An = w3(yi.comment);
              An && Sv(an, [{
                kind: 3,
                text: `*
 * ` + An.replace(/\n/g, `
 * `) + `
 `,
                pos: -1,
                end: -1,
                hasTrailingNewLine: !0
              }]);
            } else Dn && lr(te, an, Dn);
            return an;
          }
        }
        function lr(Ee, te, Vt) {
          return Ee.enclosingFile && Ee.enclosingFile === Sr(Vt) ? fl(te, Vt) : te;
        }
        function ur(Ee, te, Vt) {
          if (_t(Ee)) {
            if (me(te))
              if (te.out.truncated = !0, Vt) {
                if (Ee.length > 2) return [
                  ht(Ee[0], te),
                  te.flags & 1 ? i1(A.createKeywordTypeNode(133), 3, `... ${Ee.length - 2} more elided ...`) : A.createTypeReferenceNode(`... ${Ee.length - 2} more ...`, void 0),
                  ht(Ee[Ee.length - 1], te)
                ];
              } else return [te.flags & 1 ? i1(A.createKeywordTypeNode(133), 3, "elided") : A.createTypeReferenceNode("...", void 0)];
            const Ht = te.flags & 64 ? void 0 : Up(), Dr = [];
            let De = 0;
            for (const Le of Ee) {
              if (De++, me(te) && De + 2 < Ee.length - 1) {
                te.out.truncated = !0, Dr.push(te.flags & 1 ? i1(A.createKeywordTypeNode(133), 3, `... ${Ee.length - De} more elided ...`) : A.createTypeReferenceNode(`... ${Ee.length - De} more ...`, void 0));
                const Ot = ht(Ee[Ee.length - 1], te);
                Ot && Dr.push(Ot);
                break;
              }
              te.approximateLength += 2;
              const mt = ht(Le, te);
              mt && (Dr.push(mt), Ht && Yee(mt) && Ht.add(mt.typeName.escapedText, [Le, Dr.length - 1]));
            }
            if (Ht) {
              const Le = Y(te);
              te.flags |= 64, Ht.forEach((mt) => {
                if (!Zee(mt, ([Ot], [er]) => En(Ot, er))) for (const [Ot, er] of mt) Dr[er] = ht(Ot, te);
              }), Le();
            }
            return Dr;
          }
        }
        function En(Ee, te) {
          return Ee === te || !!Ee.symbol && Ee.symbol === te.symbol || !!Ee.aliasSymbol && Ee.aliasSymbol === te.aliasSymbol;
        }
        function si(Ee, te, Vt) {
          const Ht = pK(Ee) || "x", Dr = ht(Ee.keyType, te), De = A.createParameterDeclaration(void 0, void 0, Ht, void 0, Dr, void 0);
          return Vt || (Vt = ht(Ee.type || Ve, te)), !Ee.type && !(te.flags & 2097152) && (te.encounteredError = !0), te.approximateLength += Ht.length + 4, A.createIndexSignature(Ee.isReadonly ? [A.createToken(148)] : void 0, [De], Vt);
        }
        function Ii(Ee, te, Vt, Ht) {
          var Dr;
          let De, Le;
          const mt = _3e(Ee, !0)[0], Ot = fi(Vt, Ee.declaration, mt, Ee.typeParameters, Ee.parameters, Ee.mapper);
          Vt.approximateLength += 3, Vt.flags & 32 && Ee.target && Ee.mapper && Ee.target.typeParameters ? Le = Ee.target.typeParameters.map((Vn) => ht(Ji(Vn, Ee.mapper), Vt)) : De = Ee.typeParameters && Ee.typeParameters.map((Vn) => Ro(Vn, Vt));
          const er = Y(Vt);
          Vt.flags &= -257;
          const Mt = (_t(mt, (Vn) => Vn !== mt[mt.length - 1] && !!(gc(Vn) & 32768)) ? Ee.parameters : mt).map((Vn) => wr(Vn, Vt, te === 177)), gr = Vt.flags & 33554432 ? void 0 : vs(Ee, Vt);
          gr && Mt.unshift(gr), er();
          const Nr = Ni(Vt, Ee);
          let an = Ht?.modifiers;
          if (te === 186 && Ee.flags & 4) {
            const Vn = Cm(an);
            an = A.createModifiersFromModifierFlags(Vn | 64);
          }
          const Dn = te === 180 ? A.createCallSignature(De, Mt, Nr) : te === 181 ? A.createConstructSignature(De, Mt, Nr) : te === 174 ? A.createMethodSignature(an, Ht?.name ?? A.createIdentifier(""), Ht?.questionToken, De, Mt, Nr) : te === 175 ? A.createMethodDeclaration(an, void 0, Ht?.name ?? A.createIdentifier(""), void 0, De, Mt, Nr, void 0) : te === 177 ? A.createConstructorDeclaration(an, Mt, void 0) : te === 178 ? A.createGetAccessorDeclaration(an, Ht?.name ?? A.createIdentifier(""), Mt, Nr, void 0) : te === 179 ? A.createSetAccessorDeclaration(an, Ht?.name ?? A.createIdentifier(""), Mt, void 0) : te === 182 ? A.createIndexSignature(an, Mt, Nr) : te === 318 ? A.createJSDocFunctionType(Mt, Nr) : te === 185 ? A.createFunctionTypeNode(De, Mt, Nr ?? A.createTypeReferenceNode(A.createIdentifier(""))) : te === 186 ? A.createConstructorTypeNode(an, De, Mt, Nr ?? A.createTypeReferenceNode(A.createIdentifier(""))) : te === 263 ? A.createFunctionDeclaration(an, void 0, Ht?.name ? ns(Ht.name, Fe) : A.createIdentifier(""), De, Mt, Nr, void 0) : te === 219 ? A.createFunctionExpression(an, void 0, Ht?.name ? ns(Ht.name, Fe) : A.createIdentifier(""), De, Mt, Nr, A.createBlock([])) : te === 220 ? A.createArrowFunction(an, De, Mt, Nr, void 0, A.createBlock([])) : E.assertNever(te);
          return Le && (Dn.typeArguments = A.createNodeArray(Le)), ((Dr = Ee.declaration) == null ? void 0 : Dr.kind) === 324 && Ee.declaration.parent.kind === 340 && i1(Dn, 3, uc(Ee.declaration.parent.parent, !0).slice(2, -2).split(/\r\n|\n|\r/).map((Vn) => Vn.replace(/^\s+/, " ")).join(`
`), !0), Ot?.(), Dn;
        }
        function Si(Ee) {
          i && i.throwIfCancellationRequested && i.throwIfCancellationRequested();
          let te, Vt, Ht = !1;
          const Dr = Ee.tracker, De = Ee.trackedSymbols;
          Ee.trackedSymbols = void 0;
          const Le = Ee.encounteredError;
          return Ee.tracker = new One(Ee, {
            ...Dr.inner,
            reportCyclicStructureError() {
              mt(() => Dr.reportCyclicStructureError());
            },
            reportInaccessibleThisError() {
              mt(() => Dr.reportInaccessibleThisError());
            },
            reportInaccessibleUniqueSymbolError() {
              mt(() => Dr.reportInaccessibleUniqueSymbolError());
            },
            reportLikelyUnsafeImportRequiredError(Mt, gr) {
              mt(() => Dr.reportLikelyUnsafeImportRequiredError(Mt, gr));
            },
            reportNonSerializableProperty(Mt) {
              mt(() => Dr.reportNonSerializableProperty(Mt));
            },
            reportPrivateInBaseOfClassExpression(Mt) {
              mt(() => Dr.reportPrivateInBaseOfClassExpression(Mt));
            },
            trackSymbol(Mt, gr, Nr) {
              return (te ?? (te = [])).push([
                Mt,
                gr,
                Nr
              ]), !1;
            },
            moduleResolverHost: Ee.tracker.moduleResolverHost
          }, Ee.tracker.moduleResolverHost), {
            startRecoveryScope: Ot,
            finalizeBoundary: er,
            markError: mt,
            hadError: () => Ht
          };
          function mt(Mt) {
            Ht = !0, Mt && (Vt ?? (Vt = [])).push(Mt);
          }
          function Ot() {
            const Mt = te?.length ?? 0, gr = Vt?.length ?? 0;
            return () => {
              Ht = !1, te && (te.length = Mt), Vt && (Vt.length = gr);
            };
          }
          function er() {
            return Ee.tracker = Dr, Ee.trackedSymbols = De, Ee.encounteredError = Le, Vt?.forEach((Mt) => Mt()), Ht ? !1 : (te?.forEach(([Mt, gr, Nr]) => Ee.tracker.trackSymbol(Mt, gr, Nr)), !0);
          }
        }
        function fi(Ee, te, Vt, Ht, Dr, De) {
          const Le = Mf(Ee);
          let mt, Ot;
          const er = Ee.enclosingDeclaration, Mt = Ee.mapper;
          if (De && (Ee.mapper = De), Ee.enclosingDeclaration && te) {
            let gr = function(Nr, an) {
              E.assert(Ee.enclosingDeclaration);
              let Dn;
              Pn(Ee.enclosingDeclaration).fakeScopeForSignatureDeclaration === Nr ? Dn = Ee.enclosingDeclaration : Ee.enclosingDeclaration.parent && Pn(Ee.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration === Nr && (Dn = Ee.enclosingDeclaration.parent), E.assertOptionalNode(Dn, Wa);
              const Vn = Dn?.locals ?? Ka();
              let yi, An;
              if (an((Qi, Na) => {
                if (Dn) {
                  const ar = Vn.get(Qi);
                  ar ? An = kr(An, {
                    name: Qi,
                    oldSymbol: ar
                  }) : yi = kr(yi, Qi);
                }
                Vn.set(Qi, Na);
              }), Dn)
                return function() {
                  bt(yi, (Na) => Vn.delete(Na)), bt(An, (Na) => Vn.set(Na.name, Na.oldSymbol));
                };
              {
                const Qi = A.createBlock(Te);
                Pn(Qi).fakeScopeForSignatureDeclaration = Nr, Qi.locals = Vn, eo(Qi, Ee.enclosingDeclaration), Ee.enclosingDeclaration = Qi;
              }
            };
            mt = _t(Vt) ? gr("params", (Nr) => {
              if (Vt)
                for (let an = 0; an < Vt.length; an++) {
                  const Dn = Vt[an], Vn = Dr?.[an];
                  Dr && Vn !== Dn ? (Nr(Dn.escapedName, it), Vn && Nr(Vn.escapedName, it)) : bt(Dn.declarations, (yi) => {
                    if (Fi(yi) && Ja(yi.name))
                      return An(yi.name), !0;
                    return;
                    function An(Na) {
                      bt(Na.elements, (ar) => {
                        switch (ar.kind) {
                          case 233:
                            return;
                          case 209:
                            return Qi(ar);
                          default:
                            return E.assertNever(ar);
                        }
                      });
                    }
                    function Qi(Na) {
                      if (Ja(Na.name)) return An(Na.name);
                      const ar = mn(Na);
                      Nr(ar.escapedName, ar);
                    }
                  }) || Nr(Dn.escapedName, Dn);
                }
            }) : void 0, Ee.flags & 4 && _t(Ht) && (Ot = gr("typeParams", (Nr) => {
              for (const an of Ht ?? Te) {
                const Dn = $_(an, Ee).escapedText;
                Nr(Dn, an.symbol);
              }
            }));
          }
          return () => {
            mt?.(), Ot?.(), Le(), Ee.enclosingDeclaration = er, Ee.mapper = Mt;
          };
        }
        function vs(Ee, te) {
          if (Ee.thisParameter) return wr(Ee.thisParameter, te);
          if (Ee.declaration && rn(Ee.declaration)) {
            const Vt = V7(Ee.declaration);
            if (Vt && Vt.typeExpression) return A.createParameterDeclaration(void 0, void 0, "this", void 0, ht(r(te, Vt.typeExpression), te));
          }
        }
        function Cs(Ee, te, Vt) {
          const Ht = Y(te);
          te.flags &= -513;
          const Dr = A.createModifiersFromModifierFlags(Xpe(Ee)), De = $_(Ee, te), Le = j2(Ee), mt = Le && ht(Le, te);
          return Ht(), A.createTypeParameterDeclaration(Dr, De, Vt, mt);
        }
        function ka(Ee, te, Vt) {
          return !Je(Ee, Vt) && te && r(Vt, te) === Ee && ke.tryReuseExistingTypeNode(Vt, te) || ht(Ee, Vt);
        }
        function Ro(Ee, te, Vt = g_(Ee)) {
          return Cs(Ee, te, Vt && ka(Vt, y$(Ee), te));
        }
        function eu(Ee, te) {
          const Vt = Ee.kind === 2 || Ee.kind === 3 ? A.createToken(131) : void 0, Ht = Ee.kind === 1 || Ee.kind === 3 ? ln(A.createIdentifier(Ee.parameterName), 16777216) : A.createThisTypeNode(), Dr = Ee.type && ht(Ee.type, te);
          return A.createTypePredicateNode(Vt, Ht, Dr);
        }
        function F_(Ee) {
          const te = Ho(Ee, 170);
          if (te) return te;
          if (!Ug(Ee)) return Ho(Ee, 342);
        }
        function wr(Ee, te, Vt) {
          const Ht = F_(Ee), Dr = Wr(te, Ht, ft(Ee), Ee), De = !(te.flags & 8192) && Vt && Ht && vd(Ht) ? or(kb(Ht), A.cloneNode) : void 0, Le = Ht && cg(Ht) || gc(Ee) & 32768 ? A.createToken(26) : void 0, mt = Jr(Ee, Ht, te), Ot = Ht && T8(Ht) || gc(Ee) & 16384 ? A.createToken(58) : void 0, er = A.createParameterDeclaration(De, Le, mt, Ot, Dr, void 0);
          return te.approximateLength += kc(Ee).length + 3, er;
        }
        function Jr(Ee, te, Vt) {
          return te && te.name ? te.name.kind === 80 ? ln(A.cloneNode(te.name), 16777216) : te.name.kind === 167 ? ln(A.cloneNode(te.name.right), 16777216) : Ht(te.name) : kc(Ee);
          function Ht(Dr) {
            return De(Dr);
            function De(Le) {
              Vt.tracker.canTrackSymbol && _s(Le) && Bfe(Le) && Vi(Le.expression, Vt.enclosingDeclaration, Vt);
              let mt = Tr(Le, De, void 0, void 0, De);
              return Ns(mt) && (mt = A.updateBindingElement(mt, mt.dotDotDotToken, mt.propertyName, mt.name, void 0)), wo(mt) || (mt = A.cloneNode(mt)), ln(mt, 16777217);
            }
          }
        }
        function Vi(Ee, te, Vt) {
          if (!Vt.tracker.canTrackSymbol) return;
          const Ht = x_(Ee), Dr = Gr(te, Ht.escapedText, 1160127, void 0, !0);
          if (Dr) Vt.tracker.trackSymbol(Dr, te, 111551);
          else {
            const De = Gr(Ht, Ht.escapedText, 1160127, void 0, !0);
            De && Vt.tracker.trackSymbol(De, te, 111551);
          }
        }
        function en(Ee, te, Vt, Ht) {
          return te.tracker.trackSymbol(Ee, te.enclosingDeclaration, Vt), Aa(Ee, te, Vt, Ht);
        }
        function Aa(Ee, te, Vt, Ht) {
          let Dr;
          return !(Ee.flags & 262144) && (te.enclosingDeclaration || te.flags & 64) && !(te.internalFlags & 4) ? (Dr = E.checkDefined(De(Ee, Vt, !0)), E.assert(Dr && Dr.length > 0)) : Dr = [Ee], Dr;
          function De(Le, mt, Ot) {
            let er = A2(Le, te.enclosingDeclaration, mt, !!(te.flags & 128)), Mt;
            if (!er || bP(er[0], te.enclosingDeclaration, er.length === 1 ? mt : F1(mt))) {
              const Nr = C(er ? er[0] : Le, te.enclosingDeclaration, mt);
              if (It(Nr)) {
                Mt = Nr.map((Vn) => _t(Vn.declarations, N2) ? Ga(Vn, te) : void 0);
                const an = Nr.map((Vn, yi) => yi);
                an.sort(gr);
                const Dn = an.map((Vn) => Nr[Vn]);
                for (const Vn of Dn) {
                  const yi = De(Vn, F1(mt), !1);
                  if (yi) {
                    if (Vn.exports && Vn.exports.get("export=") && Nn(Vn.exports.get("export="), Le)) {
                      er = yi;
                      break;
                    }
                    er = yi.concat(er || [nr(Vn, Le) || Le]);
                    break;
                  }
                }
              }
            }
            if (er) return er;
            if (Ot || !(Le.flags & 6144))
              return !Ot && !Ht && bt(Le.declarations, N2) ? void 0 : [Le];
            function gr(Nr, an) {
              const Dn = Mt[Nr], Vn = Mt[an];
              if (Dn && Vn) {
                const yi = Bf(Vn);
                return Bf(Dn) === yi ? qF(Dn) - qF(Vn) : yi ? -1 : 1;
              }
              return 0;
            }
          }
        }
        function bo(Ee, te) {
          let Vt;
          return y4(Ee).flags & 524384 && (Vt = A.createNodeArray(or(e_(Ee), (Ht) => Ro(Ht, te)))), Vt;
        }
        function Zo(Ee, te, Vt) {
          var Ht;
          E.assert(Ee && 0 <= te && te < Ee.length);
          const Dr = Ee[te], De = ss(Dr);
          if ((Ht = Vt.typeParameterSymbolList) != null && Ht.has(De)) return;
          Vt.mustCreateTypeParameterSymbolList && (Vt.mustCreateTypeParameterSymbolList = !1, Vt.typeParameterSymbolList = new Set(Vt.typeParameterSymbolList)), Vt.typeParameterSymbolList.add(De);
          let Le;
          if (Vt.flags & 512 && te < Ee.length - 1) {
            const mt = Dr, Ot = Ee[te + 1];
            gc(Ot) & 1 ? Le = ur(or(R1(mt.flags & 2097152 ? Zl(mt) : mt), (er) => by(er, Ot.links.mapper)), Vt) : Le = bo(Dr, Vt);
          }
          return Le;
        }
        function Eu(Ee) {
          return $b(Ee.objectType) ? Eu(Ee.objectType) : Ee;
        }
        function Ga(Ee, te, Vt) {
          let Ht = Ho(Ee, 308);
          if (!Ht) {
            const gr = Hn(Ee.declarations, (Nr) => Et(Nr, Ee));
            gr && (Ht = Ho(gr, 308));
          }
          if (Ht && Ht.moduleName !== void 0) return Ht.moduleName;
          if (!Ht && Nne.test(Ee.escapedName))
            return Ee.escapedName.substring(1, Ee.escapedName.length - 1);
          if (!te.enclosingFile || !te.tracker.moduleResolverHost)
            return Nne.test(Ee.escapedName) ? Ee.escapedName.substring(1, Ee.escapedName.length - 1) : Sr(wB(Ee)).fileName;
          const Dr = rc(te.enclosingDeclaration), De = jK(Dr) ? Fx(Dr) : void 0, Le = te.enclosingFile, mt = Vt || De && e.getModeForUsageLocation(Le, De) || Le && e.getDefaultResolutionModeForFile(Le), Ot = gw(Le.path, mt), er = Wi(Ee);
          let Mt = er.specifierCache && er.specifierCache.get(Ot);
          if (!Mt) {
            const gr = !!L.outFile, { moduleResolverHost: Nr } = te.tracker;
            Mt = js(F1e(Ee, Li, gr ? {
              ...L,
              baseUrl: Nr.getCommonSourceDirectory()
            } : L, Le, Nr, {
              importModuleSpecifierPreference: gr ? "non-relative" : "project-relative",
              importModuleSpecifierEnding: gr ? "minimal" : mt === 99 ? "js" : void 0
            }, { overrideImportMode: Vt })), er.specifierCache ?? (er.specifierCache = /* @__PURE__ */ new Map()), er.specifierCache.set(Ot, Mt);
          }
          return Mt;
        }
        function L_(Ee) {
          const te = A.createIdentifier(Ti(Ee.escapedName));
          return Ee.parent ? A.createQualifiedName(L_(Ee.parent), te) : te;
        }
        function zo(Ee, te, Vt, Ht) {
          const Dr = en(Ee, te, Vt, !(te.flags & 16384)), De = Vt === 111551;
          if (_t(Dr[0].declarations, N2)) {
            const Ot = Dr.length > 1 ? mt(Dr, Dr.length - 1, 1) : void 0, er = Ht || Zo(Dr, 0, te), Mt = Sr(rc(te.enclosingDeclaration)), gr = z3(Dr[0]);
            let Nr, an;
            if ((Hu(L) === 3 || Hu(L) === 99) && gr?.impliedNodeFormat === 99 && gr.impliedNodeFormat !== Mt?.impliedNodeFormat && (Nr = Ga(Dr[0], te, 99), an = A.createImportAttributes(A.createNodeArray([A.createImportAttribute(A.createStringLiteral("resolution-mode"), A.createStringLiteral("import"))]))), Nr || (Nr = Ga(Dr[0], te)), !(te.flags & 67108864) && Hu(L) !== 1 && Nr.includes("/node_modules/")) {
              const Vn = Nr;
              if (Hu(L) === 3 || Hu(L) === 99) {
                const yi = Mt?.impliedNodeFormat === 99 ? 1 : 99;
                Nr = Ga(Dr[0], te, yi), Nr.includes("/node_modules/") ? Nr = Vn : an = A.createImportAttributes(A.createNodeArray([A.createImportAttribute(A.createStringLiteral("resolution-mode"), A.createStringLiteral(yi === 99 ? "import" : "require"))]));
              }
              an || (te.encounteredError = !0, te.tracker.reportLikelyUnsafeImportRequiredError && te.tracker.reportLikelyUnsafeImportRequiredError(Vn, Ti(Ee.escapedName)));
            }
            const Dn = A.createLiteralTypeNode(A.createStringLiteral(Nr));
            if (te.approximateLength += Nr.length + 10, !Ot || S_(Ot))
              return Ot && R0(Fe(Ot) ? Ot : Ot.right, void 0), A.createImportTypeNode(Dn, an, Ot, er, De);
            {
              const Vn = Eu(Ot), yi = Vn.objectType.typeName;
              return A.createIndexedAccessTypeNode(A.createImportTypeNode(Dn, an, yi, er, De), Vn.indexType);
            }
          }
          const Le = mt(Dr, Dr.length - 1, 0);
          if ($b(Le)) return Le;
          if (De) return A.createTypeQueryNode(Le);
          {
            const Ot = Fe(Le) ? Le : Le.right, er = NS(Ot);
            return R0(Ot, void 0), A.createTypeReferenceNode(Le, er);
          }
          function mt(Ot, er, Mt) {
            const gr = er === Ot.length - 1 ? Ht : Zo(Ot, er, te), Nr = Ot[er], an = Ot[er - 1];
            let Dn;
            if (er === 0 ? (te.flags |= 16777216, Dn = X(Nr, te), te.approximateLength += (Dn ? Dn.length : 0) + 1, te.flags ^= 16777216) : an && Tu(an) && Dl(Tu(an), (yi, An) => {
              if (Nn(yi, Nr) && !v8(An) && An !== "export=")
                return Dn = Ti(An), !0;
            }), Dn === void 0) {
              const yi = Hn(Nr.declarations, va);
              if (yi && _s(yi) && S_(yi.expression)) {
                const An = mt(Ot, er - 1, Mt);
                return S_(An) ? A.createIndexedAccessTypeNode(A.createParenthesizedType(A.createTypeQueryNode(An)), A.createTypeQueryNode(yi.expression)) : An;
              }
              Dn = X(Nr, te);
            }
            if (te.approximateLength += Dn.length + 1, !(te.flags & 16) && an && Eg(an) && Eg(an).get(Nr.escapedName) && Nn(Eg(an).get(Nr.escapedName), Nr)) {
              const yi = mt(Ot, er - 1, Mt);
              return $b(yi) ? A.createIndexedAccessTypeNode(yi, A.createLiteralTypeNode(A.createStringLiteral(Dn))) : A.createIndexedAccessTypeNode(A.createTypeReferenceNode(yi, gr), A.createLiteralTypeNode(A.createStringLiteral(Dn)));
            }
            const Vn = ln(A.createIdentifier(Dn), 16777216);
            if (gr && R0(Vn, A.createNodeArray(gr)), Vn.symbol = Nr, er > Mt) {
              const yi = mt(Ot, er - 1, Mt);
              return S_(yi) ? A.createQualifiedName(yi, Vn) : E.fail("Impossible construct - an export of an indexed access cannot be reachable");
            }
            return Vn;
          }
        }
        function fc(Ee, te, Vt) {
          const Ht = Gr(te.enclosingDeclaration, Ee, 788968, void 0, !1);
          return Ht && Ht.flags & 262144 ? Ht !== Vt.symbol : !1;
        }
        function $_(Ee, te) {
          var Vt, Ht, Dr, De;
          if (te.flags & 4 && te.typeParameterNames) {
            const Ot = te.typeParameterNames.get(Kl(Ee));
            if (Ot) return Ot;
          }
          let Le = Pc(Ee.symbol, te, 788968, !0);
          if (!(Le.kind & 80)) return A.createIdentifier("(Missing type parameter)");
          const mt = (Ht = (Vt = Ee.symbol) == null ? void 0 : Vt.declarations) == null ? void 0 : Ht[0];
          if (mt && $o(mt) && (Le = s(te, Le, mt.name)), te.flags & 4) {
            const Ot = Le.escapedText;
            let er = ((Dr = te.typeParameterNamesByTextNextNameCount) == null ? void 0 : Dr.get(Ot)) || 0, Mt = Ot;
            for (; (De = te.typeParameterNamesByText) != null && De.has(Mt) || fc(Mt, te, Ee); )
              er++, Mt = `${Ot}_${er}`;
            if (Mt !== Ot) {
              const gr = NS(Le);
              Le = A.createIdentifier(Mt), R0(Le, gr);
            }
            te.mustCreateTypeParametersNamesLookups && (te.mustCreateTypeParametersNamesLookups = !1, te.typeParameterNames = new Map(te.typeParameterNames), te.typeParameterNamesByTextNextNameCount = new Map(te.typeParameterNamesByTextNextNameCount), te.typeParameterNamesByText = new Set(te.typeParameterNamesByText)), te.typeParameterNamesByTextNextNameCount.set(Ot, er), te.typeParameterNames.set(Kl(Ee), Le), te.typeParameterNamesByText.add(Mt);
          }
          return Le;
        }
        function Pc(Ee, te, Vt, Ht) {
          const Dr = en(Ee, te, Vt);
          return Ht && Dr.length !== 1 && !te.encounteredError && !(te.flags & 65536) && (te.encounteredError = !0), De(Dr, Dr.length - 1);
          function De(Le, mt) {
            const Ot = Zo(Le, mt, te), er = Le[mt];
            mt === 0 && (te.flags |= 16777216);
            const Mt = X(er, te);
            mt === 0 && (te.flags ^= 16777216);
            const gr = ln(A.createIdentifier(Mt), 16777216);
            return Ot && R0(gr, A.createNodeArray(Ot)), gr.symbol = er, mt > 0 ? A.createQualifiedName(De(Le, mt - 1), gr) : gr;
          }
        }
        function oc(Ee, te, Vt) {
          const Ht = en(Ee, te, Vt);
          return Dr(Ht, Ht.length - 1);
          function Dr(De, Le) {
            const mt = Zo(De, Le, te), Ot = De[Le];
            Le === 0 && (te.flags |= 16777216);
            let er = X(Ot, te);
            Le === 0 && (te.flags ^= 16777216);
            let Mt = er.charCodeAt(0);
            if (aA(Mt) && _t(Ot.declarations, N2)) {
              const gr = Ga(Ot, te);
              return te.approximateLength += 2 + gr.length, A.createStringLiteral(gr);
            }
            if (Le === 0 || az(er, z)) {
              const gr = ln(A.createIdentifier(er), 16777216);
              return mt && R0(gr, A.createNodeArray(mt)), gr.symbol = Ot, te.approximateLength += 1 + er.length, Le > 0 ? A.createPropertyAccessExpression(Dr(De, Le - 1), gr) : gr;
            } else {
              Mt === 91 && (er = er.substring(1, er.length - 1), Mt = er.charCodeAt(0));
              let gr;
              if (aA(Mt) && !(Ot.flags & 8)) {
                const Nr = Qp(er).replace(/\\./g, (an) => an.substring(1));
                te.approximateLength += Nr.length + 2, gr = A.createStringLiteral(Nr, Mt === 39);
              } else "" + +er === er && (te.approximateLength += er.length, gr = A.createNumericLiteral(+er));
              if (!gr) {
                const Nr = ln(A.createIdentifier(er), 16777216);
                mt && R0(Nr, A.createNodeArray(mt)), Nr.symbol = Ot, te.approximateLength += er.length, gr = Nr;
              }
              return te.approximateLength += 2, A.createElementAccessExpression(Dr(De, Le - 1), gr);
            }
          }
        }
        function Cy(Ee) {
          const te = va(Ee);
          return te ? _s(te) ? !!(aa(te.expression).flags & 12583968) : Po(te) ? !!(aa(te.argumentExpression).flags & 12583968) : Ts(te) : !1;
        }
        function e3(Ee) {
          const te = va(Ee);
          return !!(te && Ts(te) && (te.singleQuote || !wo(te) && ta(uc(te, !1), "'")));
        }
        function t3(Ee, te) {
          const Vt = pge(Ee);
          if (Vt) return Vt;
          const Ht = !!It(Ee.declarations) && hr(Ee.declarations, Cy), Dr = !!It(Ee.declarations) && hr(Ee.declarations, e3), De = !!(Ee.flags & 8192), Le = g7(Ee, te, Dr, Ht, De);
          return Le || NO(Ti(Ee.escapedName), Ps(L), Dr, Ht, De);
        }
        function g7(Ee, te, Vt, Ht, Dr) {
          const De = Wi(Ee).nameType;
          if (De) {
            if (De.flags & 3072) {
              const Le = "" + De.value;
              return !Y_(Le, Ps(L)) && (Ht || !eh(Le)) ? A.createStringLiteral(Le, !!Vt) : eh(Le) && ta(Le, "-") ? A.createComputedPropertyName(A.createPrefixUnaryExpression(41, A.createNumericLiteral(-Le))) : NO(Le, Ps(L), Vt, Ht, Dr);
            }
            if (De.flags & 16384) return A.createComputedPropertyName(oc(De.symbol, te, 111551));
          }
        }
        function Mf(Ee) {
          const te = Ee.mustCreateTypeParameterSymbolList, Vt = Ee.mustCreateTypeParametersNamesLookups;
          Ee.mustCreateTypeParameterSymbolList = !0, Ee.mustCreateTypeParametersNamesLookups = !0;
          const Ht = Ee.typeParameterNames, Dr = Ee.typeParameterNamesByText, De = Ee.typeParameterNamesByTextNextNameCount, Le = Ee.typeParameterSymbolList;
          return () => {
            Ee.typeParameterNames = Ht, Ee.typeParameterNamesByText = Dr, Ee.typeParameterNamesByTextNextNameCount = De, Ee.typeParameterSymbolList = Le, Ee.mustCreateTypeParameterSymbolList = te, Ee.mustCreateTypeParametersNamesLookups = Vt;
          };
        }
        function h7(Ee, te) {
          return Ee.declarations && xr(Ee.declarations, (Vt) => !!b5e(Vt) && (!te || !!cr(Vt, (Ht) => Ht === te)));
        }
        function Lt(Ee, te) {
          if (!(yn(te) & 4) || !xf(Ee)) return !0;
          T$(Ee);
          const Vt = Pn(Ee).resolvedSymbol, Ht = Vt && Oo(Vt);
          return !Ht || Ht !== te.target ? !0 : It(Ee.typeArguments) >= wg(te.target.typeParameters);
        }
        function _r(Ee) {
          for (; Pn(Ee).fakeScopeForSignatureDeclaration; ) Ee = Ee.parent;
          return Ee;
        }
        function Or(Ee, te, Vt) {
          return Vt.flags & 16384 && Vt.symbol === Ee && (!te.enclosingDeclaration || _t(Ee.declarations, (Ht) => Sr(Ht) === te.enclosingFile)) && (te.flags |= 1048576), ht(Vt, te);
        }
        function Wr(Ee, te, Vt, Ht) {
          var Dr;
          let De;
          const Le = te && (Fi(te) || np(te)) && MR(te, Ee.enclosingDeclaration), mt = te ?? Ht.valueDeclaration ?? h7(Ht) ?? ((Dr = Ht.declarations) == null ? void 0 : Dr[0]);
          if (!Je(Vt, Ee) && mt) {
            const Ot = V(Ee, Ht, Vt);
            zy(mt) ? De = ke.serializeTypeOfAccessor(mt, Ht, Ee) : RO(mt) && !wo(mt) && !(yn(Vt) & 196608) && (De = ke.serializeTypeOfDeclaration(mt, Ht, Ee)), Ot();
          }
          return De || (Le && (Vt = V1(Vt)), De = Or(Ht, Ee, Vt)), De ?? A.createKeywordTypeNode(133);
        }
        function _n(Ee, te, Vt) {
          return Vt === te ? !0 : Ee && ((f_(Ee) || ga(Ee)) && Ee.questionToken || Fi(Ee) && _$(Ee)) ? zp(te, 524288) === Vt : !1;
        }
        function Ni(Ee, te) {
          const Vt = Ee.flags & 256, Ht = Y(Ee);
          Vt && (Ee.flags &= -257);
          let Dr;
          const De = ro(te);
          if (!(Vt && Bi(De))) {
            if (te.declaration && !wo(te.declaration) && !Je(De, Ee)) {
              const Le = mn(te.declaration), mt = V(Ee, Le, De);
              Dr = ke.serializeReturnTypeForSignature(te.declaration, Le, Ee), mt();
            }
            Dr || (Dr = Ba(Ee, te, De));
          }
          return !Dr && !Vt && (Dr = A.createKeywordTypeNode(133)), Ht(), Dr;
        }
        function Ba(Ee, te, Vt) {
          const Ht = Ee.suppressReportInferenceFallback;
          Ee.suppressReportInferenceFallback = !0;
          const Dr = jp(te), De = Dr ? eu(Ee.mapper ? UAe(Dr, Ee.mapper) : Dr, Ee) : ht(Vt, Ee);
          return Ee.suppressReportInferenceFallback = Ht, De;
        }
        function $s(Ee, te, Vt = te.enclosingDeclaration) {
          let Ht = !1;
          const Dr = x_(Ee);
          if (rn(Ee) && (vS(Dr) || $g(Dr.parent) || k_(Dr.parent) && VB(Dr.parent.left) && vS(Dr.parent.right)))
            return Ht = !0, {
              introducesError: Ht,
              node: Ee
            };
          const De = p8(Ee);
          let Le;
          if (Zy(Dr))
            return Le = mn(c_(Dr, !1, !1)), L1(Le, Dr, De, !1).accessibility !== 0 && (Ht = !0, te.tracker.reportInaccessibleThisError()), {
              introducesError: Ht,
              node: mt(Ee)
            };
          if (Le = Tc(Dr, De, !0, !0), te.enclosingDeclaration && !(Le && Le.flags & 262144)) {
            Le = Ui(Le);
            const Ot = Tc(Dr, De, !0, !0, te.enclosingDeclaration);
            if (Ot === it || Ot === void 0 && Le !== void 0 || Ot && Le && !Nn(Ui(Ot), Le))
              return Ot !== it && te.tracker.reportInferenceFallback(Ee), Ht = !0, {
                introducesError: Ht,
                node: Ee,
                sym: Le
              };
            Le = Ot;
          }
          if (Le)
            return Le.flags & 1 && Le.valueDeclaration && (mv(Le.valueDeclaration) || np(Le.valueDeclaration)) ? {
              introducesError: Ht,
              node: mt(Ee)
            } : (!(Le.flags & 262144) && !pg(Ee) && L1(Le, Vt, De, !1).accessibility !== 0 ? (te.tracker.reportInferenceFallback(Ee), Ht = !0) : te.tracker.trackSymbol(Le, Vt, De), {
              introducesError: Ht,
              node: mt(Ee)
            });
          return {
            introducesError: Ht,
            node: Ee
          };
          function mt(Ot) {
            if (Ot === Dr) {
              const er = Oo(Le), Mt = Le.flags & 262144 ? $_(er, te) : A.cloneNode(Ot);
              return Mt.symbol = Le, s(te, ln(Mt, 16777216), Ot);
            }
            return s(te, Tr(Ot, (er) => mt(er), void 0), Ot);
          }
        }
        function tu(Ee, te, Vt, Ht) {
          const Dr = Vt ? 111551 : 788968, De = Tc(te, Dr, !0);
          if (!De) return;
          const Le = De.flags & 2097152 ? Zl(De) : De;
          if (L1(De, Ee.enclosingDeclaration, Dr, !1).accessibility === 0)
            return zo(Le, Ee, Dr, Ht);
        }
        function Ml(Ee, te) {
          const Vt = r(Ee, te, !0);
          if (!Vt) return !1;
          if (rn(te) && Bh(te)) {
            FAe(te);
            const Ht = Pn(te).resolvedSymbol;
            return !Ht || !(!te.isTypeOf && !(Ht.flags & 788968) || !(It(te.typeArguments) >= wg(e_(Ht))));
          }
          if (xf(te)) {
            if (_d(te)) return !1;
            const Ht = Pn(te).resolvedSymbol;
            if (!Ht) return !1;
            if (Ht.flags & 262144) {
              const Dr = Oo(Ht);
              return !(Ee.mapper && by(Dr, Ee.mapper) !== Dr);
            }
            if (oD(te)) return Lt(te, Vt) && !G3e(te) && !!(Ht.flags & 788968);
          }
          if (Tv(te) && te.operator === 158 && te.type.kind === 155) {
            const Ht = Ee.enclosingDeclaration && _r(Ee.enclosingDeclaration);
            return !!cr(te, (Dr) => Dr === Ht);
          }
          return !0;
        }
        function Zc(Ee, te, Vt) {
          const Ht = r(Ee, te);
          if (Vt && !gp(Ht, (Dr) => !!(Dr.flags & 4)) && Ml(Ee, te)) {
            const Dr = ke.tryReuseExistingTypeNode(Ee, te);
            if (Dr) return A.createUnionTypeNode([Dr, A.createKeywordTypeNode(157)]);
          }
          return ht(Ht, Ee);
        }
        function Nh(Ee, te) {
          var Vt;
          const Ht = B5e(A.createPropertyDeclaration, 175, !0), Dr = B5e((yt, qr, pi, ii) => A.createPropertySignature(yt, qr, pi, ii), 174, !1), De = te.enclosingDeclaration;
          let Le = [];
          const mt = /* @__PURE__ */ new Set(), Ot = [], er = te;
          te = {
            ...er,
            usedSymbolNames: new Set(er.usedSymbolNames),
            remappedSymbolNames: /* @__PURE__ */ new Map(),
            remappedSymbolReferences: new Map((Vt = er.remappedSymbolReferences) == null ? void 0 : Vt.entries()),
            tracker: void 0
          };
          const Mt = {
            ...er.tracker.inner,
            trackSymbol: (yt, qr, pi) => {
              var ii, pn;
              if ((ii = te.remappedSymbolNames) != null && ii.has(ss(yt))) return !1;
              if (L1(yt, qr, pi, !1).accessibility === 0) {
                const ls = Aa(yt, te, pi);
                if (!(yt.flags & 4)) {
                  const Xa = ls[0], ea = Sr(er.enclosingDeclaration);
                  _t(Xa.declarations, (Sa) => Sr(Sa) === ea) && Es(Xa);
                }
              } else if ((pn = er.tracker.inner) != null && pn.trackSymbol) return er.tracker.inner.trackSymbol(yt, qr, pi);
              return !1;
            }
          };
          te.tracker = new One(te, Mt, er.tracker.moduleResolverHost), Dl(Ee, (yt, qr) => {
            Og(yt, Ti(qr));
          });
          let gr = !te.bundled;
          const Nr = Ee.get("export=");
          return Nr && Ee.size > 1 && Nr.flags & 2098688 && (Ee = Ka(), Ee.set("export=", Nr)), vn(Ee), Qi(Le);
          function an(yt) {
            return !!yt && yt.kind === 80;
          }
          function Dn(yt) {
            return $c(yt) ? dn(or(yt.declarationList.declarations, va), an) : dn([va(yt)], an);
          }
          function Vn(yt) {
            const qr = xr(yt, Xo), pi = qs(yt, Qc);
            let ii = pi !== -1 ? yt[pi] : void 0;
            if (ii && qr && qr.isExportEquals && Fe(qr.expression) && Fe(ii.name) && On(ii.name) === On(qr.expression) && ii.body && Vd(ii.body)) {
              const pn = dn(yt, (ea) => !!(Pu(ea) & 32)), ls = ii.name;
              let Xa = ii.body;
              if (It(pn) && (ii = A.updateModuleDeclaration(ii, ii.modifiers, ii.name, Xa = A.updateModuleBlock(Xa, A.createNodeArray([...ii.body.statements, A.createExportDeclaration(void 0, !1, A.createNamedExports(or(ks(pn, (ea) => Dn(ea)), (ea) => A.createExportSpecifier(!1, void 0, ea))), void 0)]))), yt = [
                ...yt.slice(0, pi),
                ii,
                ...yt.slice(pi + 1)
              ]), !xr(yt, (ea) => ea !== ii && E3(ea, ls))) {
                Le = [];
                const ea = !_t(Xa.statements, (Sa) => Qn(Sa, 32) || Xo(Sa) || tl(Sa));
                bt(Xa.statements, (Sa) => {
                  Ia(Sa, ea ? 32 : 0);
                }), yt = [...dn(yt, (Sa) => Sa !== ii && Sa !== qr), ...Le];
              }
            }
            return yt;
          }
          function yi(yt) {
            const qr = dn(yt, (ii) => tl(ii) && !ii.moduleSpecifier && !!ii.exportClause && Pp(ii.exportClause));
            It(qr) > 1 && (yt = [...dn(yt, (ii) => !tl(ii) || !!ii.moduleSpecifier || !ii.exportClause), A.createExportDeclaration(void 0, !1, A.createNamedExports(ks(qr, (ii) => ns(ii.exportClause, Pp).elements)), void 0)]);
            const pi = dn(yt, (ii) => tl(ii) && !!ii.moduleSpecifier && !!ii.exportClause && Pp(ii.exportClause));
            if (It(pi) > 1) {
              const ii = BC(pi, (pn) => Ts(pn.moduleSpecifier) ? ">" + pn.moduleSpecifier.text : ">");
              if (ii.length !== pi.length)
                for (const pn of ii) pn.length > 1 && (yt = [...dn(yt, (ls) => !pn.includes(ls)), A.createExportDeclaration(void 0, !1, A.createNamedExports(ks(pn, (ls) => ns(ls.exportClause, Pp).elements)), pn[0].moduleSpecifier)]);
            }
            return yt;
          }
          function An(yt) {
            const qr = qs(yt, (pi) => tl(pi) && !pi.moduleSpecifier && !pi.attributes && !!pi.exportClause && Pp(pi.exportClause));
            if (qr >= 0) {
              const pi = yt[qr], ii = Rn(pi.exportClause.elements, (pn) => {
                if (!pn.propertyName && pn.name.kind !== 11) {
                  const ls = pn.name, Xa = dn(v7(yt), (ea) => E3(yt[ea], ls));
                  if (It(Xa) && hr(Xa, (ea) => GA(yt[ea]))) {
                    for (const ea of Xa) yt[ea] = Na(yt[ea]);
                    return;
                  }
                }
                return pn;
              });
              It(ii) ? yt[qr] = A.updateExportDeclaration(pi, pi.modifiers, pi.isTypeOnly, A.updateNamedExports(pi.exportClause, ii), pi.moduleSpecifier, pi.attributes) : Iy(yt, qr);
            }
            return yt;
          }
          function Qi(yt) {
            return yt = Vn(yt), yt = yi(yt), yt = An(yt), De && (Pi(De) && gf(De) || Qc(De)) && (!_t(yt, M3) || !jZ(yt) && _t(yt, e5)) && yt.push(uN(A)), yt;
          }
          function Na(yt) {
            const qr = (Pu(yt) | 32) & -129;
            return A.replaceModifiers(yt, qr);
          }
          function ar(yt) {
            const qr = Pu(yt) & -33;
            return A.replaceModifiers(yt, qr);
          }
          function vn(yt, qr, pi) {
            qr || Ot.push(/* @__PURE__ */ new Map());
            let ii = 0;
            const pn = Array.from(yt.values());
            for (const ls of pn) {
              if (ii++, be(te) && ii + 2 < yt.size - 1) {
                te.out.truncated = !0, Le.push(r3(`... (${yt.size - ii} more ...)`)), $i(pn[pn.length - 1], !1, !!pi);
                break;
              }
              $i(ls, !1, !!pi);
            }
            qr || (Ot[Ot.length - 1].forEach((ls) => {
              $i(ls, !0, !!pi);
            }), Ot.pop());
          }
          function $i(yt, qr, pi) {
            co(ft(yt));
            const ii = ys(yt);
            if (!mt.has(ss(ii)) && (mt.add(ss(ii)), !qr || It(yt.declarations) && _t(yt.declarations, (pn) => !!cr(pn, (ls) => ls === De)))) {
              const pn = Mf(te);
              te.tracker.pushErrorFallbackNode(xr(yt.declarations, (ls) => Sr(ls) === te.enclosingFile)), bi(yt, qr, pi), te.tracker.popErrorFallbackNode(), pn();
            }
          }
          function bi(yt, qr, pi, ii = yt.escapedName) {
            var pn, ls, Xa, ea, Sa, Ms, ql;
            const tc = Ti(ii), X_ = ii === "default";
            if (qr && !(te.flags & 131072) && Jx(tc) && !X_) {
              te.encounteredError = !0;
              return;
            }
            let cc = X_ && !!(yt.flags & -113 || yt.flags & 16 && It(co(ft(yt)))) && !(yt.flags & 2097152), Ac = !cc && !qr && Jx(tc) && !X_;
            (cc || Ac) && (qr = !0);
            const xo = (qr ? 0 : 32) | (X_ && !cc ? 2048 : 0), Gl = yt.flags & 1536 && yt.flags & 7 && ii !== "export=", ud = Gl && gge(ft(yt), yt);
            if ((yt.flags & 8208 || ud) && Q1(ft(yt), yt, Og(yt, tc), xo), yt.flags & 524288 && Uc(yt, tc, xo), yt.flags & 98311 && ii !== "export=" && !(yt.flags & 4194304) && !(yt.flags & 32) && !(yt.flags & 8192) && !ud) if (pi)
              JR(yt) && (Ac = !1, cc = !1);
            else {
              const Kc = ft(yt), Q_ = Og(yt, tc);
              if (Kc.symbol && Kc.symbol !== yt && Kc.symbol.flags & 16 && _t(Kc.symbol.declarations, r1) && ((pn = Kc.symbol.members) != null && pn.size || (ls = Kc.symbol.exports) != null && ls.size))
                te.remappedSymbolReferences || (te.remappedSymbolReferences = /* @__PURE__ */ new Map()), te.remappedSymbolReferences.set(ss(Kc.symbol), yt), bi(Kc.symbol, qr, pi, ii), te.remappedSymbolReferences.delete(ss(Kc.symbol));
              else if (!(yt.flags & 16) && gge(Kc, yt)) Q1(Kc, yt, Q_, xo);
              else {
                const Fd = yt.flags & 2 ? AC(yt) ? 2 : 1 : (Xa = yt.parent) != null && Xa.valueDeclaration && Pi((ea = yt.parent) == null ? void 0 : ea.valueDeclaration) ? 2 : void 0, Ih = cc || !(yt.flags & 4) ? Q_ : WR(Q_, yt);
                let Oh = yt.declarations && xr(yt.declarations, (Y1) => ci(Y1));
                Oh && iu(Oh.parent) && Oh.parent.declarations.length === 1 && (Oh = Oh.parent.parent);
                const K2 = (Sa = yt.declarations) == null ? void 0 : Sa.find(Ln);
                if (K2 && un(K2.parent) && Fe(K2.parent.right) && ((Ms = Kc.symbol) != null && Ms.valueDeclaration) && Pi(Kc.symbol.valueDeclaration)) {
                  const Y1 = Q_ === K2.parent.right.escapedText ? void 0 : K2.parent.right;
                  te.approximateLength += 12 + (((ql = Y1?.escapedText) == null ? void 0 : ql.length) ?? 0), Ia(A.createExportDeclaration(void 0, !1, A.createNamedExports([A.createExportSpecifier(!1, Y1, Q_)])), 0), te.tracker.trackSymbol(Kc.symbol, te.enclosingDeclaration, 111551);
                } else {
                  const Y1 = s(te, A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(Ih, void 0, Wr(te, void 0, Kc, yt))], Fd)), Oh);
                  te.approximateLength += 7 + Ih.length, Ia(Y1, Ih !== Q_ ? xo & -33 : xo), Ih !== Q_ && !qr && (te.approximateLength += 16 + Ih.length + Q_.length, Ia(A.createExportDeclaration(void 0, !1, A.createNamedExports([A.createExportSpecifier(!1, Ih, Q_)])), 0), Ac = !1, cc = !1);
                }
              }
            }
            if (yt.flags & 384 && Z2(yt, tc, xo), yt.flags & 32 && (yt.flags & 4 && yt.valueDeclaration && un(yt.valueDeclaration.parent) && Hc(yt.valueDeclaration.parent.right) ? j5e(yt, Og(yt, tc), xo) : dge(yt, Og(yt, tc), xo)), (yt.flags & 1536 && (!Gl || Y2(yt)) || ud) && X1(yt, tc, xo), yt.flags & 64 && !(yt.flags & 32) && Rc(yt, tc, xo), yt.flags & 2097152 && j5e(yt, Og(yt, tc), xo), yt.flags & 4 && yt.escapedName === "export=" && JR(yt), yt.flags & 8388608 && yt.declarations)
              for (const Kc of yt.declarations) {
                const Q_ = Ru(Kc, Kc.moduleSpecifier);
                if (!Q_) continue;
                const Fd = Kc.isTypeOnly, Ih = Ga(Q_, te);
                te.approximateLength += 17 + Ih.length, Ia(A.createExportDeclaration(void 0, Fd, void 0, A.createStringLiteral(Ih)), 0);
              }
            if (cc) {
              const Kc = Og(yt, tc);
              te.approximateLength += 16 + Kc.length, Ia(A.createExportAssignment(void 0, !1, A.createIdentifier(Kc)), 0);
            } else if (Ac) {
              const Kc = Og(yt, tc);
              te.approximateLength += 22 + tc.length + Kc.length, Ia(A.createExportDeclaration(void 0, !1, A.createNamedExports([A.createExportSpecifier(!1, Kc, tc)])), 0);
            }
          }
          function Es(yt) {
            _t(yt.declarations, mv) || (E.assertIsDefined(Ot[Ot.length - 1]), WR(Ti(yt.escapedName), yt), Ot[yt.flags & 2097152 && !_t(yt.declarations, (qr) => !!cr(qr, tl) || gg(qr) || bl(qr) && !qh(qr.moduleReference)) ? 0 : Ot.length - 1].set(ss(yt), yt));
          }
          function xc(yt) {
            return Pi(yt) && (gf(yt) || Tp(yt)) || o_(yt) && !ug(yt);
          }
          function Ia(yt, qr) {
            if (vd(yt)) {
              const pi = Pu(yt);
              let ii = 0;
              const pn = te.enclosingDeclaration && ($p(te.enclosingDeclaration) ? Sr(te.enclosingDeclaration) : te.enclosingDeclaration);
              qr & 32 && pn && (xc(pn) || Qc(pn)) && GA(yt) && (ii |= 32), gr && !(ii & 32) && (!pn || !(pn.flags & 33554432)) && (l1(yt) || $c(yt) || Xc(yt) || sl(yt) || Qc(yt)) && (ii |= 128), qr & 2048 && (sl(yt) || au(yt) || Xc(yt)) && (ii |= 2048), ii && (yt = A.replaceModifiers(yt, ii | pi)), te.approximateLength += zR(ii | pi);
            }
            Le.push(yt);
          }
          function Uc(yt, qr, pi) {
            var ii;
            const pn = XPe(yt), ls = Wi(yt).typeParameters, Xa = or(ls, (cc) => Ro(cc, te)), ea = (ii = yt.declarations) == null ? void 0 : ii.find($p), Sa = w3(ea ? ea.comment || ea.parent.comment : void 0), Ms = Y(te);
            te.flags |= 8388608;
            const ql = te.enclosingDeclaration;
            te.enclosingDeclaration = ea;
            const tc = ea && ea.typeExpression && wv(ea.typeExpression) && ke.tryReuseExistingTypeNode(te, ea.typeExpression.type) || ht(pn, te), X_ = Og(yt, qr);
            te.approximateLength += 8 + (Sa?.length ?? 0) + X_.length, Ia(Sv(A.createTypeAliasDeclaration(void 0, X_, Xa, tc), Sa ? [{
              kind: 3,
              text: `*
 * ` + Sa.replace(/\n/g, `
 * `) + `
 `,
              pos: -1,
              end: -1,
              hasTrailingNewLine: !0
            }] : []), pi), Ms(), te.enclosingDeclaration = ql;
          }
          function Rc(yt, qr, pi) {
            const ii = Og(yt, qr);
            te.approximateLength += 14 + ii.length;
            const pn = Rp(yt), ls = or(e_(yt), (cc) => Ro(cc, te)), Xa = Nd(pn), ea = It(Xa) ? Ss(Xa) : void 0, Sa = r_(co(pn), !1, ea), Ms = hge(0, pn, ea, 180), ql = hge(1, pn, ea, 181), tc = z5e(pn, ea), X_ = It(Xa) ? [A.createHeritageClause(96, Rn(Xa, (cc) => yge(cc, 111551)))] : void 0;
            Ia(A.createInterfaceDeclaration(void 0, ii, ls, X_, [
              ...tc,
              ...ql,
              ...Ms,
              ...Sa
            ]), pi);
          }
          function r_(yt, qr, pi, ii) {
            const pn = [];
            let ls = 0;
            for (const Xa of yt) {
              if (ls++, be(te) && ls + 2 < yt.length - 1) {
                te.out.truncated = !0;
                const Sa = y_(`... ${yt.length - ls} more ... `, qr);
                pn.push(Sa);
                const Ms = qr ? Ht(yt[yt.length - 1], ii, pi) : J5e(yt[yt.length - 1], pi);
                da(Ms) ? pn.push(...Ms) : pn.push(Ms);
                break;
              }
              te.approximateLength += 1;
              const ea = qr ? Ht(Xa, ii, pi) : J5e(Xa, pi);
              da(ea) ? pn.push(...ea) : pn.push(ea);
            }
            return pn;
          }
          function y_(yt, qr) {
            return te.flags & 1 ? i1(A.createNotEmittedTypeElement(), 3, yt) : qr ? A.createPropertyDeclaration(void 0, yt, void 0, void 0, void 0) : A.createPropertySignature(void 0, yt, void 0, void 0);
          }
          function n_(yt) {
            let qr = ma(Tu(yt).values());
            const pi = ys(yt);
            if (pi !== yt) {
              const ii = new Set(qr);
              for (const pn of Tu(pi).values()) m_(zc(pn)) & 111551 || ii.add(pn);
              qr = ma(ii);
            }
            return dn(qr, (ii) => b4(ii) && Y_(ii.escapedName, 99));
          }
          function Y2(yt) {
            return hr(n_(yt), (qr) => !(m_(zc(qr)) & 111551));
          }
          function X1(yt, qr, pi) {
            const ii = n_(yt), pn = dm(te), ls = o3(ii, (Sa) => Sa.parent && Sa.parent === yt || pn ? "real" : "merged"), Xa = ls.get("real") || Te, ea = ls.get("merged") || Te;
            if (It(Xa) || pn) {
              let Sa;
              if (pn) {
                const Ms = te.flags;
                te.flags |= 514, Sa = l(yt, te, -1), te.flags = Ms;
              } else {
                const Ms = Og(yt, qr);
                Sa = A.createIdentifier(Ms), te.approximateLength += Ms.length;
              }
              Ig(Xa, Sa, pi, !!(yt.flags & 67108880));
            }
            if (It(ea)) {
              const Sa = Sr(te.enclosingDeclaration), Ms = Og(yt, qr), ql = A.createModuleBlock([A.createExportDeclaration(void 0, !1, A.createNamedExports(Rn(dn(ea, (tc) => tc.escapedName !== "export="), (tc) => {
                var X_, cc;
                const Ac = Ti(tc.escapedName), xo = Og(tc, Ac), Gl = tc.declarations && _p(tc);
                if (Sa && (Gl ? Sa !== Sr(Gl) : !_t(tc.declarations, (Q_) => Sr(Q_) === Sa))) {
                  (cc = (X_ = te.tracker) == null ? void 0 : X_.reportNonlocalAugmentation) == null || cc.call(X_, Sa, yt, tc);
                  return;
                }
                const ud = Gl && s0(Gl, !0);
                Es(ud || tc);
                const Kc = ud ? Og(ud, Ti(ud.escapedName)) : xo;
                return A.createExportSpecifier(!1, Ac === Kc ? void 0 : Kc, Ac);
              })))]);
              Ia(A.createModuleDeclaration(void 0, A.createIdentifier(Ms), ql, 32), 0);
            }
          }
          function Z2(yt, qr, pi) {
            const ii = Og(yt, qr);
            te.approximateLength += 9 + ii.length;
            const pn = [], ls = dn(co(ft(yt)), (ea) => !!(ea.flags & 8));
            let Xa = 0;
            for (const ea of ls) {
              if (Xa++, be(te) && Xa + 2 < ls.length - 1) {
                te.out.truncated = !0, pn.push(A.createEnumMember(` ... ${ls.length - Xa} more ... `));
                const cc = ls[ls.length - 1], Ac = cc.declarations && cc.declarations[0] && Gh(cc.declarations[0]) ? rQ(cc.declarations[0]) : void 0, xo = Ac === void 0 ? void 0 : typeof Ac == "string" ? A.createStringLiteral(Ac) : A.createNumericLiteral(Ac), Gl = Ti(cc.escapedName), ud = A.createEnumMember(Gl, xo);
                pn.push(ud);
                break;
              }
              const Sa = ea.declarations && ea.declarations[0] && Gh(ea.declarations[0]) ? ea.declarations[0] : void 0;
              let Ms, ql;
              if (dm(te) && Sa && Sa.initializer)
                Ms = no(Sa.initializer), ql = Sa.initializer.end - Sa.initializer.pos;
              else {
                const cc = Sa && rQ(Sa);
                Ms = cc === void 0 ? void 0 : typeof cc == "string" ? A.createStringLiteral(cc) : A.createNumericLiteral(cc), ql = Ms?.text.length ?? 0;
              }
              const tc = Ti(ea.escapedName);
              te.approximateLength += 4 + tc.length + ql;
              const X_ = A.createEnumMember(tc, Ms);
              pn.push(X_);
            }
            Ia(A.createEnumDeclaration(A.createModifiersFromModifierFlags(kme(yt) ? 4096 : 0), ii, pn), pi);
          }
          function Q1(yt, qr, pi, ii) {
            const pn = Pa(yt, 0);
            for (const ls of pn) {
              te.approximateLength += 1;
              const Xa = Ii(ls, 263, te, { name: A.createIdentifier(pi) });
              Ia(s(te, Xa, n3(ls)), ii);
            }
            if (!(qr.flags & 1536 && qr.exports && qr.exports.size)) {
              const ls = dn(co(yt), b4);
              te.approximateLength += pi.length, Ig(ls, A.createIdentifier(pi), ii, !0);
            }
          }
          function r3(yt) {
            return te.flags & 1 ? i1(A.createEmptyStatement(), 3, yt) : A.createExpressionStatement(A.createIdentifier(yt));
          }
          function n3(yt) {
            if (yt.declaration && yt.declaration.parent) {
              if (un(yt.declaration.parent) && qc(yt.declaration.parent) === 5) return yt.declaration.parent;
              if (ci(yt.declaration.parent) && yt.declaration.parent.parent) return yt.declaration.parent.parent;
            }
            return yt.declaration;
          }
          function Ig(yt, qr, pi, ii) {
            const pn = Fe(qr) ? 32 : 0, ls = dm(te);
            if (It(yt)) {
              te.approximateLength += 14;
              const Xa = o3(yt, (xo) => !It(xo.declarations) || _t(xo.declarations, (Gl) => Sr(Gl) === Sr(te.enclosingDeclaration)) || ls ? "local" : "remote").get("local") || Te;
              let ea = Nv.createModuleDeclaration(void 0, qr, A.createModuleBlock([]), pn);
              eo(ea, De), ea.locals = Ka(yt), ea.symbol = yt[0].parent;
              const Sa = Le;
              Le = [];
              const Ms = gr;
              gr = !1;
              const ql = {
                ...te,
                enclosingDeclaration: ea
              }, tc = te;
              te = ql, vn(Ka(Xa), ii, !0), te = tc, gr = Ms;
              const X_ = Le;
              Le = Sa;
              const cc = or(X_, (xo) => Xo(xo) && !xo.isExportEquals && Fe(xo.expression) ? A.createExportDeclaration(void 0, !1, A.createNamedExports([A.createExportSpecifier(!1, xo.expression, A.createIdentifier("default"))])) : xo), Ac = hr(cc, (xo) => Qn(xo, 32)) ? or(cc, ar) : cc;
              ea = A.updateModuleDeclaration(ea, ea.modifiers, ea.name, A.createModuleBlock(Ac)), Ia(ea, pi);
            } else ls && (te.approximateLength += 14, Ia(A.createModuleDeclaration(void 0, qr, A.createModuleBlock([]), pn), pi));
          }
          function b4(yt) {
            return !!(yt.flags & 2887656) || !(yt.flags & 4194304 || yt.escapedName === "prototype" || yt.valueDeclaration && es(yt.valueDeclaration) && Zn(yt.valueDeclaration.parent));
          }
          function BR(yt) {
            const qr = Rn(yt, (pi) => {
              const ii = te.enclosingDeclaration;
              te.enclosingDeclaration = pi;
              let pn = pi.expression;
              if (go(pn)) {
                if (Fe(pn) && On(pn) === "") return ls(void 0);
                let Xa;
                if ({ introducesError: Xa, node: pn } = $s(pn, te), Xa) return ls(void 0);
              }
              return ls(A.createExpressionWithTypeArguments(pn, or(pi.typeArguments, (Xa) => ke.tryReuseExistingTypeNode(te, Xa) || ht(r(te, Xa), te))));
              function ls(Xa) {
                return te.enclosingDeclaration = ii, Xa;
              }
            });
            if (qr.length === yt.length) return qr;
          }
          function dge(yt, qr, pi) {
            var ii, pn;
            te.approximateLength += 9 + qr.length;
            const ls = (ii = yt.declarations) == null ? void 0 : ii.find(Zn), Xa = te.enclosingDeclaration;
            te.enclosingDeclaration = ls || Xa;
            const ea = e_(yt), Sa = or(ea, (Ey) => Ro(Ey, te));
            bt(ea, (Ey) => te.approximateLength += kc(Ey.symbol).length);
            const Ms = Of(Rp(yt)), ql = Nd(Ms), tc = ls && f6(ls), X_ = tc && BR(tc) || Rn(set(Ms), Qft), cc = ft(yt), Ac = !!((pn = cc.symbol) != null && pn.valueDeclaration) && Zn(cc.symbol.valueDeclaration), xo = Ac ? LT(cc) : Ve;
            te.approximateLength += (It(ql) ? 8 : 0) + (It(X_) ? 11 : 0);
            const Gl = [...It(ql) ? [A.createHeritageClause(96, or(ql, (Ey) => Xft(Ey, xo, qr)))] : [], ...It(X_) ? [A.createHeritageClause(119, X_)] : []], ud = Put(Ms, ql, co(Ms)), Kc = dn(ud, (Ey) => !v4(Ey)), Q_ = _t(ud, v4), Fd = Q_ ? dm(te) ? r_(dn(ud, v4), !0, ql[0], !1) : [A.createPropertyDeclaration(void 0, A.createPrivateIdentifier("#private"), void 0, void 0, void 0)] : Te;
            Q_ && !dm(te) && (te.approximateLength += 9);
            const Ih = r_(Kc, !0, ql[0], !1), Oh = r_(dn(co(cc), (Ey) => !(Ey.flags & 4194304) && Ey.escapedName !== "prototype" && !b4(Ey)), !0, xo, !0), K2 = !Ac && !!yt.valueDeclaration && rn(yt.valueDeclaration) && !_t(Pa(cc, 1));
            K2 && (te.approximateLength += 21);
            const Y1 = K2 ? [A.createConstructorDeclaration(A.createModifiersFromModifierFlags(2), [], void 0)] : hge(1, cc, xo, 177), Yft = z5e(Ms, ql[0]);
            te.enclosingDeclaration = Xa, Ia(s(te, A.createClassDeclaration(void 0, qr, Sa, Gl, [
              ...Yft,
              ...Oh,
              ...Y1,
              ...Ih,
              ...Fd
            ]), yt.declarations && dn(yt.declarations, (Ey) => sl(Ey) || Hc(Ey))[0]), pi);
          }
          function mge(yt) {
            return Hn(yt, (qr) => {
              if (p_(qr) || $u(qr)) return Gy(qr.propertyName || qr.name);
              if (un(qr) || Xo(qr)) {
                const pi = Xo(qr) ? qr.expression : qr.right;
                if (Ln(pi)) return On(pi.name);
              }
              if (fy(qr)) {
                const pi = va(qr);
                if (pi && Fe(pi)) return On(pi);
              }
            });
          }
          function j5e(yt, qr, pi) {
            var ii, pn, ls, Xa, ea;
            const Sa = _p(yt);
            if (!Sa) return E.fail();
            const Ms = ys(s0(Sa, !0));
            if (!Ms) return;
            let ql = V3(Ms) && mge(yt.declarations) || Ti(Ms.escapedName);
            ql === "export=" && W && (ql = "default");
            const tc = Og(Ms, ql);
            switch (Es(Ms), Sa.kind) {
              case 209:
                if (((pn = (ii = Sa.parent) == null ? void 0 : ii.parent) == null ? void 0 : pn.kind) === 261) {
                  const Ac = Ga(Ms.parent || Ms, te), { propertyName: xo } = Sa, Gl = xo && Fe(xo) ? On(xo) : void 0;
                  te.approximateLength += 24 + qr.length + Ac.length + (Gl?.length ?? 0), Ia(A.createImportDeclaration(void 0, A.createImportClause(void 0, void 0, A.createNamedImports([A.createImportSpecifier(!1, Gl ? A.createIdentifier(Gl) : void 0, A.createIdentifier(qr))])), A.createStringLiteral(Ac), void 0), 0);
                  break;
                }
                E.failBadSyntaxKind(((ls = Sa.parent) == null ? void 0 : ls.parent) || Sa, "Unhandled binding element grandparent kind in declaration serialization");
                break;
              case 305:
                ((ea = (Xa = Sa.parent) == null ? void 0 : Xa.parent) == null ? void 0 : ea.kind) === 227 && i3(Ti(yt.escapedName), tc);
                break;
              case 261:
                if (Ln(Sa.initializer)) {
                  const Ac = Sa.initializer, xo = A.createUniqueName(qr), Gl = Ga(Ms.parent || Ms, te);
                  te.approximateLength += 22 + Gl.length + On(xo).length, Ia(A.createImportEqualsDeclaration(void 0, !1, xo, A.createExternalModuleReference(A.createStringLiteral(Gl))), 0), te.approximateLength += 12 + qr.length + On(xo).length + On(Ac.name).length, Ia(A.createImportEqualsDeclaration(void 0, !1, A.createIdentifier(qr), A.createQualifiedName(xo, Ac.name)), pi);
                  break;
                }
              case 272:
                if (Ms.escapedName === "export=" && _t(Ms.declarations, (Ac) => Pi(Ac) && Tp(Ac))) {
                  JR(yt);
                  break;
                }
                const X_ = !(Ms.flags & 512) && !ci(Sa);
                te.approximateLength += 11 + qr.length + Ti(Ms.escapedName).length, Ia(A.createImportEqualsDeclaration(void 0, !1, A.createIdentifier(qr), X_ ? Pc(Ms, te, -1, !1) : A.createExternalModuleReference(A.createStringLiteral(Ga(Ms, te)))), X_ ? pi : 0);
                break;
              case 271:
                Ia(A.createNamespaceExportDeclaration(On(Sa.name)), 0);
                break;
              case 274: {
                const Ac = Ga(Ms.parent || Ms, te), xo = te.bundled ? A.createStringLiteral(Ac) : Sa.parent.moduleSpecifier, Gl = ic(Sa.parent) ? Sa.parent.attributes : void 0, ud = Fm(Sa.parent);
                te.approximateLength += 14 + qr.length + 3 + (ud ? 4 : 0), Ia(A.createImportDeclaration(void 0, A.createImportClause(ud ? 156 : void 0, A.createIdentifier(qr), void 0), xo, Gl), 0);
                break;
              }
              case 275: {
                const Ac = Ga(Ms.parent || Ms, te), xo = te.bundled ? A.createStringLiteral(Ac) : Sa.parent.parent.moduleSpecifier, Gl = Fm(Sa.parent.parent);
                te.approximateLength += 19 + qr.length + 3 + (Gl ? 4 : 0), Ia(A.createImportDeclaration(void 0, A.createImportClause(Gl ? 156 : void 0, void 0, A.createNamespaceImport(A.createIdentifier(qr))), xo, Sa.parent.attributes), 0);
                break;
              }
              case 281:
                te.approximateLength += 19 + qr.length + 3, Ia(A.createExportDeclaration(void 0, !1, A.createNamespaceExport(A.createIdentifier(qr)), A.createStringLiteral(Ga(Ms, te))), 0);
                break;
              case 277: {
                const Ac = Ga(Ms.parent || Ms, te), xo = te.bundled ? A.createStringLiteral(Ac) : Sa.parent.parent.parent.moduleSpecifier, Gl = Fm(Sa.parent.parent.parent);
                te.approximateLength += 19 + qr.length + 3 + (Gl ? 4 : 0), Ia(A.createImportDeclaration(void 0, A.createImportClause(Gl ? 156 : void 0, void 0, A.createNamedImports([A.createImportSpecifier(!1, qr !== ql ? A.createIdentifier(ql) : void 0, A.createIdentifier(qr))])), xo, Sa.parent.parent.parent.attributes), 0);
                break;
              }
              case 282:
                const cc = Sa.parent.parent.moduleSpecifier;
                if (cc) {
                  const Ac = Sa.propertyName;
                  Ac && lg(Ac) && (ql = "default");
                }
                i3(Ti(yt.escapedName), cc ? ql : tc, cc && Xs(cc) ? A.createStringLiteral(cc.text) : void 0);
                break;
              case 278:
                JR(yt);
                break;
              case 227:
              case 212:
              case 213:
                yt.escapedName === "default" || yt.escapedName === "export=" ? JR(yt) : i3(qr, tc);
                break;
              default:
                return E.failBadSyntaxKind(Sa, "Unhandled alias declaration kind in symbol serializer!");
            }
          }
          function i3(yt, qr, pi) {
            te.approximateLength += 16 + yt.length + (yt !== qr ? qr.length : 0), Ia(A.createExportDeclaration(void 0, !1, A.createNamedExports([A.createExportSpecifier(!1, yt !== qr ? qr : void 0, yt)]), pi), 0);
          }
          function JR(yt) {
            var qr;
            if (yt.flags & 4194304) return !1;
            const pi = Ti(yt.escapedName), ii = pi === "export=", pn = ii || pi === "default", ls = yt.declarations && _p(yt), Xa = ls && s0(ls, !0);
            if (Xa && It(Xa.declarations) && _t(Xa.declarations, (ea) => Sr(ea) === Sr(De))) {
              const ea = ls && (Xo(ls) || un(ls) ? KB(ls) : HK(ls)), Sa = ea && go(ea) ? Vut(ea) : void 0, Ms = Sa && Tc(Sa, -1, !0, !0, De);
              (Ms || Xa) && Es(Ms || Xa);
              const ql = te.tracker.disableTrackSymbol;
              if (te.tracker.disableTrackSymbol = !0, pn)
                te.approximateLength += 10, Le.push(A.createExportAssignment(void 0, ii, oc(Xa, te, -1)));
              else if (Sa === ea && Sa) i3(pi, On(Sa));
              else if (ea && Hc(ea)) i3(pi, Og(Xa, kc(Xa)));
              else {
                const tc = WR(pi, yt);
                te.approximateLength += tc.length + 10, Ia(A.createImportEqualsDeclaration(void 0, !1, A.createIdentifier(tc), Pc(Xa, te, -1, !1)), 0), i3(pi, tc);
              }
              return te.tracker.disableTrackSymbol = ql, !0;
            } else {
              const ea = WR(pi, yt), Sa = of(ft(ys(yt)));
              if (gge(Sa, yt)) Q1(Sa, yt, ea, pn ? 0 : 32);
              else {
                const Ms = ((qr = te.enclosingDeclaration) == null ? void 0 : qr.kind) === 268 && (!(yt.flags & 98304) || yt.flags & 65536) ? 1 : 2;
                te.approximateLength += ea.length + 5, Ia(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(ea, void 0, Wr(te, void 0, Sa, yt))], Ms)), Xa && Xa.flags & 4 && Xa.escapedName === "export=" ? 128 : pi === ea ? 32 : 0);
              }
              return pn ? (te.approximateLength += ea.length + 10, Le.push(A.createExportAssignment(void 0, ii, A.createIdentifier(ea))), !0) : pi !== ea ? (i3(pi, ea), !0) : !1;
            }
          }
          function gge(yt, qr) {
            var pi;
            const ii = Sr(te.enclosingDeclaration);
            return yn(yt) & 48 && !_t((pi = yt.symbol) == null ? void 0 : pi.declarations, ui) && !It(Bu(yt)) && !F2(yt) && !!(It(dn(co(yt), b4)) || It(Pa(yt, 0))) && !It(Pa(yt, 1)) && !h7(qr, De) && !(yt.symbol && _t(yt.symbol.declarations, (pn) => Sr(pn) !== ii)) && !_t(co(yt), (pn) => v8(pn.escapedName)) && !_t(co(yt), (pn) => _t(pn.declarations, (ls) => Sr(ls) !== ii)) && hr(co(yt), (pn) => Y_(kc(pn), z) ? pn.flags & 98304 ? kn(pn) === cd(pn) : !0 : !1);
          }
          function B5e(yt, qr, pi) {
            return function(pn, ls, Xa) {
              var ea, Sa, Ms, ql, tc, X_;
              const cc = kp(pn), Ac = !!(cc & 2) && !dm(te);
              if (ls && pn.flags & 2887656) return [];
              if (pn.flags & 4194304 || pn.escapedName === "constructor" || Xa && ms(Xa, pn.escapedName) && pm(ms(Xa, pn.escapedName)) === pm(pn) && (pn.flags & 16777216) === (ms(Xa, pn.escapedName).flags & 16777216) && Dh(ft(pn), xn(Xa, pn.escapedName))) return [];
              const xo = cc & -1025 | (ls ? 256 : 0), Gl = t3(pn, te), ud = (ea = pn.declarations) == null ? void 0 : ea.find(_f(ga, zy, ci, f_, un, Ln));
              if (pn.flags & 98304 && pi) {
                const Kc = [];
                if (pn.flags & 65536) {
                  const Q_ = pn.declarations && bt(pn.declarations, (Oh) => {
                    if (Oh.kind === 179) return Oh;
                    if (za(Oh) && bS(Oh)) return bt(Oh.arguments[2].properties, (K2) => {
                      const Y1 = va(K2);
                      if (Y1 && Fe(Y1) && On(Y1) === "set") return K2;
                    });
                  });
                  E.assert(!!Q_);
                  const Fd = So(Q_) ? mp(Q_).parameters[0] : void 0, Ih = (Sa = pn.declarations) == null ? void 0 : Sa.find(vm);
                  te.approximateLength += zR(xo) + 7 + (Fd ? kc(Fd).length : 5) + (Ac ? 0 : 2), Kc.push(s(te, A.createSetAccessorDeclaration(A.createModifiersFromModifierFlags(xo), Gl, [A.createParameterDeclaration(void 0, void 0, Fd ? Jr(Fd, F_(Fd), te) : "value", void 0, Ac ? void 0 : Wr(te, Ih, cd(pn), pn))], void 0), Ih ?? ud));
                }
                if (pn.flags & 32768) {
                  const Q_ = (Ms = pn.declarations) == null ? void 0 : Ms.find(Wg);
                  te.approximateLength += zR(xo) + 8 + (Ac ? 0 : 2), Kc.push(s(te, A.createGetAccessorDeclaration(A.createModifiersFromModifierFlags(xo), Gl, [], Ac ? void 0 : Wr(te, Q_, ft(pn), pn), void 0), Q_ ?? ud));
                }
                return Kc;
              } else if (pn.flags & 98311) {
                const Kc = (pm(pn) ? 8 : 0) | xo;
                return te.approximateLength += 2 + (Ac ? 0 : 2) + zR(Kc), s(te, yt(A.createModifiersFromModifierFlags(Kc), Gl, pn.flags & 16777216 ? A.createToken(58) : void 0, Ac ? void 0 : Wr(te, (ql = pn.declarations) == null ? void 0 : ql.find(ef), cd(pn), pn), void 0), ((tc = pn.declarations) == null ? void 0 : tc.find(_f(ga, ci))) || ud);
              }
              if (pn.flags & 8208) {
                const Kc = Pa(ft(pn), 0);
                if (Ac) {
                  const Fd = (pm(pn) ? 8 : 0) | xo;
                  return te.approximateLength += 1 + zR(Fd), s(te, yt(A.createModifiersFromModifierFlags(Fd), Gl, pn.flags & 16777216 ? A.createToken(58) : void 0, void 0, void 0), ((X_ = pn.declarations) == null ? void 0 : X_.find(So)) || Kc[0] && Kc[0].declaration || pn.declarations && pn.declarations[0]);
                }
                const Q_ = [];
                for (const Fd of Kc) {
                  te.approximateLength += 1;
                  const Ih = Ii(Fd, qr, te, {
                    name: Gl,
                    questionToken: pn.flags & 16777216 ? A.createToken(58) : void 0,
                    modifiers: xo ? A.createModifiersFromModifierFlags(xo) : void 0
                  }), Oh = Fd.declaration && uA(Fd.declaration.parent) ? Fd.declaration.parent : Fd.declaration;
                  Q_.push(s(te, Ih, Oh));
                }
                return Q_;
              }
              return E.fail(`Unhandled class member kind! ${pn.__debugFlags || pn.flags}`);
            };
          }
          function zR(yt) {
            let qr = 0;
            return yt & 32 && (qr += 7), yt & 128 && (qr += 8), yt & 2048 && (qr += 8), yt & 4096 && (qr += 6), yt & 1 && (qr += 7), yt & 2 && (qr += 8), yt & 4 && (qr += 10), yt & 64 && (qr += 9), yt & 256 && (qr += 7), yt & 16 && (qr += 9), yt & 8 && (qr += 9), yt & 512 && (qr += 9), yt & 1024 && (qr += 6), yt & 8192 && (qr += 3), yt & 16384 && (qr += 4), qr;
          }
          function J5e(yt, qr) {
            return Dr(yt, !1, qr);
          }
          function hge(yt, qr, pi, ii) {
            const pn = Pa(qr, yt);
            if (yt === 1) {
              if (!pi && hr(pn, (ea) => It(ea.parameters) === 0)) return [];
              if (pi) {
                const ea = Pa(pi, 1);
                if (!It(ea) && hr(pn, (Sa) => It(Sa.parameters) === 0)) return [];
                if (ea.length === pn.length) {
                  let Sa = !1;
                  for (let Ms = 0; Ms < ea.length; Ms++) if (!VM(pn[Ms], ea[Ms], !1, !1, !0, O8)) {
                    Sa = !0;
                    break;
                  }
                  if (!Sa) return [];
                }
              }
              let Xa = 0;
              for (const ea of pn) ea.declaration && (Xa |= Wx(ea.declaration, 6));
              if (Xa) return [s(te, A.createConstructorDeclaration(A.createModifiersFromModifierFlags(Xa), [], void 0), pn[0].declaration)];
            }
            const ls = [];
            for (const Xa of pn) {
              te.approximateLength += 1;
              const ea = Ii(Xa, ii, te);
              ls.push(s(te, ea, Xa.declaration));
            }
            return ls;
          }
          function z5e(yt, qr) {
            const pi = [];
            for (const ii of Bu(yt)) {
              if (qr) {
                const pn = kh(qr, ii.keyType);
                if (pn && Dh(ii.type, pn.type))
                  continue;
              }
              pi.push(si(ii, te, void 0));
            }
            return pi;
          }
          function Xft(yt, qr, pi) {
            const ii = yge(yt, 111551);
            if (ii) return ii;
            const pn = WR(`${pi}_base`);
            return Ia(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(pn, void 0, ht(qr, te))], 2)), 0), A.createExpressionWithTypeArguments(A.createIdentifier(pn), void 0);
          }
          function yge(yt, qr) {
            let pi, ii;
            if (yt.target && SP(yt.target.symbol, De, qr) ? (pi = or(Vo(yt), (pn) => ht(pn, te)), ii = oc(yt.target.symbol, te, 788968)) : yt.symbol && SP(yt.symbol, De, qr) && (ii = oc(yt.symbol, te, 788968)), ii) return A.createExpressionWithTypeArguments(ii, pi);
          }
          function Qft(yt) {
            const qr = yge(yt, 788968);
            if (qr) return qr;
            if (yt.symbol) return A.createExpressionWithTypeArguments(oc(yt.symbol, te, 788968), void 0);
          }
          function WR(yt, qr) {
            var pi, ii;
            const pn = qr ? ss(qr) : void 0;
            if (pn && te.remappedSymbolNames.has(pn))
              return te.remappedSymbolNames.get(pn);
            qr && (yt = W5e(qr, yt));
            let ls = 0;
            const Xa = yt;
            for (; (pi = te.usedSymbolNames) != null && pi.has(yt); )
              ls++, yt = `${Xa}_${ls}`;
            return (ii = te.usedSymbolNames) == null || ii.add(yt), pn && te.remappedSymbolNames.set(pn, yt), yt;
          }
          function W5e(yt, qr) {
            if (qr === "default" || qr === "__class" || qr === "__function") {
              const pi = Y(te);
              te.flags |= 16777216;
              const ii = X(yt, te);
              pi(), qr = ii.length > 0 && aA(ii.charCodeAt(0)) ? Qp(ii) : ii;
            }
            return qr === "default" ? qr = "_default" : qr === "export=" && (qr = "_exports"), qr = Y_(qr, z) && !Jx(qr) ? qr : "_" + qr.replace(/[^a-z0-9]/gi, "_"), qr;
          }
          function Og(yt, qr) {
            const pi = ss(yt);
            return te.remappedSymbolNames.has(pi) ? te.remappedSymbolNames.get(pi) : (qr = W5e(yt, qr), te.remappedSymbolNames.set(pi, qr), qr);
          }
        }
        function dm(Ee) {
          return Ee.maxExpansionDepth !== -1;
        }
        function v4(Ee) {
          return !!Ee.valueDeclaration && Bl(Ee.valueDeclaration) && Oi(Ee.valueDeclaration.name);
        }
        function pge(Ee) {
          if (Ee.valueDeclaration && Bl(Ee.valueDeclaration) && Oi(Ee.valueDeclaration.name)) return A.cloneNode(Ee.valueDeclaration.name);
        }
      }
      function L2(r) {
        var s;
        const l = (yn(r) & 4) !== 0 ? r.target.symbol : r.symbol;
        return Ls(r) || !!((s = l?.declarations) != null && s.some((f) => e.isSourceFileDefaultLibrary(Sr(f))));
      }
      function M1(r, s, l = 16384, f) {
        return f ? m(f).getText() : e6(m);
        function m(y) {
          const x = hC(l) | 70222336, O = K.typePredicateToTypePredicateNode(r, s, x), J = i2(), V = s && Sr(s);
          return J.writeNode(4, O, V, y), y;
        }
      }
      function yM(r, s) {
        const l = [];
        let f = 0;
        for (let m = 0; m < r.length; m++) {
          const y = r[m];
          if (f |= y.flags, !(y.flags & 12)) {
            if (y.flags & 8192 || !s && y.flags | 98304) {
              const x = y.flags & 8192 ? Jt : o$(y);
              if (x.flags & 134217728) {
                const O = x.types.length;
                if (m + O <= r.length && ku(r[m + O - 1]) === ku(x.types[O - 1])) {
                  l.push(x), m += O - 1;
                  continue;
                }
              }
            }
            l.push(y);
          }
        }
        return f & 8 && l.push(vr), f & 4 && l.push($e), l || r;
      }
      function xP(r) {
        return r === 2 ? "private" : r === 4 ? "protected" : "public";
      }
      function d8(r) {
        if (r.symbol && r.symbol.flags & 2048 && r.symbol.declarations) {
          const s = gA(r.symbol.declarations[0].parent);
          if (Kp(s)) return mn(s);
        }
      }
      function QE(r) {
        return r && r.parent && r.parent.kind === 269 && Nb(r.parent.parent);
      }
      function YE(r) {
        return r.kind === 308 || o_(r);
      }
      function kP(r, s) {
        const l = Wi(r).nameType;
        if (l) {
          if (l.flags & 3072) {
            const f = "" + l.value;
            return !Y_(f, Ps(L)) && !eh(f) ? `"${dg(f, 34)}"` : eh(f) && ta(f, "-") ? `[${f}]` : f;
          }
          if (l.flags & 16384) return `[${X(l.symbol, s)}]`;
        }
      }
      function X(r, s) {
        var l;
        if ((l = s?.remappedSymbolReferences) != null && l.has(ss(r)) && (r = s.remappedSymbolReferences.get(ss(r))), s && r.escapedName === "default" && !(s.flags & 16384) && (!(s.flags & 16777216) || !r.declarations || s.enclosingDeclaration && cr(r.declarations[0], YE) !== cr(s.enclosingDeclaration, YE))) return "default";
        if (r.declarations && r.declarations.length) {
          let m = Hn(r.declarations, (x) => va(x) ? x : void 0);
          const y = m && va(m);
          if (m && y) {
            if (za(m) && bS(m)) return kc(r);
            if (_s(y) && !(gc(r) & 4096)) {
              const x = Wi(r).nameType;
              if (x && x.flags & 3072) {
                const O = kP(r, s);
                if (O !== void 0) return O;
              }
            }
            return Do(y);
          }
          if (m || (m = r.declarations[0]), m.parent && m.parent.kind === 261) return Do(m.parent.name);
          switch (m.kind) {
            case 232:
            case 219:
            case 220:
              return s && !s.encounteredError && !(s.flags & 131072) && (s.encounteredError = !0), m.kind === 232 ? "(Anonymous class)" : "(Anonymous function)";
          }
        }
        const f = kP(r, s);
        return f !== void 0 ? f : kc(r);
      }
      function xe(r) {
        if (r) {
          const l = Pn(r);
          return l.isVisible === void 0 && (l.isVisible = !!s()), l.isVisible;
        }
        return !1;
        function s() {
          switch (r.kind) {
            case 339:
            case 347:
            case 341:
              return !!(r.parent && r.parent.parent && r.parent.parent.parent && Pi(r.parent.parent.parent));
            case 209:
              return xe(r.parent.parent);
            case 261:
              if (Ja(r.name) && !r.name.elements.length) return !1;
            case 268:
            case 264:
            case 265:
            case 266:
            case 263:
            case 267:
            case 272:
              if (Nb(r)) return !0;
              const l = Ki(r);
              return !(oQ(r) & 32) && !(r.kind !== 272 && l.kind !== 308 && l.flags & 33554432) ? D0(l) : xe(l);
            case 173:
            case 172:
            case 178:
            case 179:
            case 175:
            case 174:
              if (vf(r, 6)) return !1;
            case 177:
            case 181:
            case 180:
            case 182:
            case 170:
            case 269:
            case 185:
            case 186:
            case 188:
            case 184:
            case 189:
            case 190:
            case 193:
            case 194:
            case 197:
            case 203:
              return xe(r.parent);
            case 274:
            case 275:
            case 277:
              return !1;
            case 169:
            case 308:
            case 271:
              return !0;
            case 278:
              return !1;
            default:
              return !1;
          }
        }
      }
      function He(r, s) {
        let l;
        r.kind !== 11 && r.parent && r.parent.kind === 278 ? l = Gr(r, r, 2998271, void 0, !1) : r.parent.kind === 282 && (l = cC(r.parent, 2998271));
        let f, m;
        return l && (m = /* @__PURE__ */ new Set(), m.add(ss(l)), y(l.declarations)), f;
        function y(x) {
          bt(x, (O) => {
            const J = gT(O) || O;
            if (s ? Pn(O).isVisible = !0 : (f = f || [], hp(f, J)), yS(O)) {
              const V = O.moduleReference, Y = Gr(O, x_(V).escapedText, 901119, void 0, !1);
              Y && m && b_(m, ss(Y)) && y(Y.declarations);
            }
          });
        }
      }
      function Tt(r, s) {
        const l = zt(r, s);
        if (l >= 0) {
          const { length: f } = n0;
          for (let m = l; m < f; m++) Kk[m] = !1;
          return !1;
        }
        return n0.push(r), Kk.push(!0), y2.push(s), !0;
      }
      function zt(r, s) {
        for (let l = n0.length - 1; l >= Z0; l--) {
          if (Mr(n0[l], y2[l])) return -1;
          if (n0[l] === r && y2[l] === s) return l;
        }
        return -1;
      }
      function Mr(r, s) {
        switch (s) {
          case 0:
            return !!Wi(r).type;
          case 2:
            return !!Wi(r).declaredType;
          case 1:
            return !!r.resolvedBaseConstructorType;
          case 3:
            return !!r.resolvedReturnType;
          case 4:
            return !!r.immediateBaseConstraint;
          case 5:
            return !!r.resolvedTypeArguments;
          case 6:
            return !!r.baseTypesResolved;
          case 7:
            return !!Wi(r).writeType;
          case 8:
            return Pn(r).parameterInitializerContainsUndefined !== void 0;
        }
        return E.assertNever(s);
      }
      function Kn() {
        return n0.pop(), y2.pop(), Kk.pop();
      }
      function Ki(r) {
        return cr(xm(r), (s) => {
          switch (s.kind) {
            case 261:
            case 262:
            case 277:
            case 276:
            case 275:
            case 274:
              return !1;
            default:
              return !0;
          }
        }).parent;
      }
      function di(r) {
        const s = Oo(ju(r));
        return s.typeParameters ? l0(s, or(s.typeParameters, (l) => Ve)) : s;
      }
      function xn(r, s) {
        const l = ms(r, s);
        return l ? ft(l) : void 0;
      }
      function ya(r, s) {
        var l;
        let f;
        return xn(r, s) || (f = (l = xC(r, s)) == null ? void 0 : l.type) && _u(f, !0, !0);
      }
      function Bi(r) {
        return r && (r.flags & 1) !== 0;
      }
      function hi(r) {
        return r === rt || !!(r.flags & 1 && r.aliasSymbol);
      }
      function No(r, s) {
        if (s !== 0) return nn(r, !1, s);
        const l = mn(r);
        return l && Wi(l).type || nn(r, !1, s);
      }
      function Pd(r, s, l) {
        if (r = rl(r, (J) => !(J.flags & 12)), r.flags & 262144) return Yi;
        if (r.flags & 134217728) return sc(r, (J) => Pd(J, s, l));
        let f = Yn(or(s, u0));
        const m = [], y = [];
        for (const J of co(r)) {
          const V = kC(J, 19456);
          !qa(V, f) && !(kp(J) & 6) && D$(J) ? m.push(J) : y.push(V);
        }
        if (UT(r) || VT(f)) {
          if (y.length && (f = Yn([f, ...y])), f.flags & 262144) return r;
          const J = Ott();
          return J ? i4(J, [r, f]) : rt;
        }
        const x = Ka();
        for (const J of m) x.set(J.escapedName, Ipe(J, !1));
        const O = Yo(l, x, Te, Te, Bu(r));
        return O.objectFlags |= 4194304, O;
      }
      function Qm(r) {
        return !!(r.flags & 132644864) && Wc(xu(r) || Re, 4);
      }
      function Ym(r) {
        return zp(gp(r, Qm) ? sc(r, (s) => s.flags & 132644864 ? Km(s) : s) : r, 524288);
      }
      function bh(r, s) {
        const l = Cg(r);
        return l ? y0(l, s) : s;
      }
      function Cg(r) {
        const s = M2(r);
        if (s && Bx(s) && s.flowNode) {
          const l = m8(r);
          if (l) {
            const f = pt(Nv.createStringLiteral(l), r), m = j_(s) ? s : Nv.createParenthesizedExpression(s), y = pt(Nv.createElementAccessExpression(m, f), r);
            return eo(f, y), eo(y, r), m !== s && eo(m, y), y.flowNode = s.flowNode, y;
          }
        }
      }
      function M2(r) {
        const s = r.parent.parent;
        switch (s.kind) {
          case 209:
          case 304:
            return Cg(s);
          case 210:
            return Cg(r.parent);
          case 261:
            return s.initializer;
          case 227:
            return s.right;
        }
      }
      function m8(r) {
        const s = r.parent;
        return r.kind === 209 && s.kind === 207 ? Zs(r.propertyName || r.name) : r.kind === 304 || r.kind === 305 ? Zs(r.name) : "" + s.elements.indexOf(r);
      }
      function Zs(r) {
        const s = u0(r);
        return s.flags & 3072 ? "" + s.value : void 0;
      }
      function yl(r) {
        const s = r.dotDotDotToken ? 32 : 0, l = No(r.parent.parent, s);
        return l && c0(r, l, !1);
      }
      function c0(r, s, l) {
        if (Bi(s)) return s;
        const f = r.parent;
        Q && r.flags & 33554432 && mv(r) ? s = g0(s) : Q && f.parent.initializer && !lm(WNe(f.parent.initializer), 65536) && (s = zp(s, 524288));
        const m = 32 | (l || IC(r) ? 16 : 0);
        let y;
        if (f.kind === 207) if (r.dotDotDotToken) {
          if (s = dp(s), s.flags & 2 || !oR(s))
            return We(r, p.Rest_types_may_only_be_created_from_object_types), rt;
          const x = [];
          for (const O of f.elements) O.dotDotDotToken || x.push(O.propertyName || O.name);
          y = Pd(s, x, r.symbol);
        } else {
          const x = r.propertyName || r.name, O = u0(x);
          y = bh(r, Ff(s, O, m, x));
        }
        else {
          const x = xy(65 | (r.dotDotDotToken ? 0 : 128), s, $e, f), O = f.elements.indexOf(r);
          if (r.dotDotDotToken) {
            const J = sc(s, (V) => V.flags & 117964800 ? Km(V) : V);
            y = cf(J, Ls) ? sc(J, (V) => MP(V, O)) : Ju(x);
          } else if (Sy(s)) {
            const J = cm(O);
            y = bh(r, J1(s, J, m, r.name) || rt);
          } else y = x;
        }
        return r.initializer ? _l(cS(r)) ? Q && !lm(GP(r, 0), 16777216) ? Ym(y) : y : Dme(r, Yn([Ym(y), GP(r, 0)], 2)) : y;
      }
      function NT(r) {
        const s = k0(r);
        if (s) return Di(s);
      }
      function g8(r) {
        const s = Gs(r, !0);
        return s.kind === 106 || s.kind === 80 && t_(s) === ue;
      }
      function af(r) {
        const s = Gs(r, !0);
        return s.kind === 210 && s.elements.length === 0;
      }
      function _u(r, s = !1, l = !0) {
        return Q && l ? V1(r, s) : r;
      }
      function nn(r, s, l) {
        if (ci(r) && r.parent.parent.kind === 250) {
          const x = eg($de(aa(r.parent.parent.expression, l)));
          return x.flags & 2621440 ? TAe(x) : Cr;
        }
        if (ci(r) && r.parent.parent.kind === 251) {
          const x = r.parent.parent;
          return NR(x) || Ve;
        }
        if (Ja(r.parent)) return yl(r);
        const f = ga(r) && !km(r) || f_(r) || are(r), m = s && ek(r), y = gy(r);
        if (CB(r))
          return y ? Bi(y) || y === Re ? y : rt : Be ? Re : Ve;
        if (y) return _u(y, f, m);
        if (($ || rn(r)) && ci(r) && !Ja(r.name) && !(oQ(r) & 32) && !(r.flags & 33554432)) {
          if (!(Q2(r) & 6) && (!r.initializer || g8(r.initializer))) return fr;
          if (r.initializer && af(r.initializer)) return ll;
        }
        if (Fi(r)) {
          if (!r.symbol) return;
          const x = r.parent;
          if (x.kind === 179 && t4(x)) {
            const V = Ho(mn(r.parent), 178);
            if (V) {
              const Y = mp(V), be = lge(x);
              return be && r === be ? (E.assert(!be.type), ft(Y.thisParameter)) : ro(Y);
            }
          }
          const O = ntt(x, r);
          if (O) return O;
          const J = r.symbol.escapedName === "this" ? Fde(x) : vIe(r);
          if (J) return _u(J, !1, m);
        }
        if (dS(r) && r.initializer) {
          if (rn(r) && !Fi(r)) {
            const x = vo(r, mn(r), uD(r));
            if (x) return x;
          }
          return _u(Dme(r, GP(r, l)), f, m);
        }
        if (ga(r) && ($ || rn(r))) if (vl(r)) {
          const x = dn(r.parent.members, Bc), O = x.length ? Ue(r.symbol, x) : Pu(r) & 128 ? j$(r.symbol) : void 0;
          return O && _u(O, !0, m);
        } else {
          const x = XA(r.parent), O = x ? Wt(r.symbol, x) : Pu(r) & 128 ? j$(r.symbol) : void 0;
          return O && _u(O, !0, m);
        }
        if (Om(r)) return Ir;
        if (Ja(r.name)) return EP(r.name, !1, !0);
      }
      function v(r) {
        if (r.valueDeclaration && un(r.valueDeclaration)) {
          const s = Wi(r);
          return s.isConstructorDeclaredProperty === void 0 && (s.isConstructorDeclaredProperty = !1, s.isConstructorDeclaredProperty = !!B(r) && hr(r.declarations, (l) => un(l) && lX(l) && (l.left.kind !== 213 || ep(l.left.argumentExpression)) && !Ad(void 0, l, r, l))), s.isConstructorDeclaredProperty;
        }
        return !1;
      }
      function w(r) {
        const s = r.valueDeclaration;
        return s && ga(s) && !_l(s) && !s.initializer && ($ || rn(s));
      }
      function B(r) {
        if (r.declarations)
          for (const s of r.declarations) {
            const l = c_(s, !1, !1);
            if (l && (l.kind === 177 || ng(l))) return l;
          }
      }
      function le(r) {
        const s = Sr(r.declarations[0]), l = Ti(r.escapedName), f = r.declarations.every((y) => rn(y) && jo(y) && $g(y.expression)), m = f ? A.createPropertyAccessExpression(A.createPropertyAccessExpression(A.createIdentifier("module"), A.createIdentifier("exports")), l) : A.createPropertyAccessExpression(A.createIdentifier("exports"), l);
        return f && eo(m.expression.expression, m.expression), eo(m.expression, m), eo(m, s), m.flowNode = s.endFlowNode, y0(m, fr, $e);
      }
      function Ue(r, s) {
        const l = ta(r.escapedName, "__#") ? A.createPrivateIdentifier(r.escapedName.split("@")[1]) : Ti(r.escapedName);
        for (const f of s) {
          const m = A.createPropertyAccessExpression(A.createThis(), l);
          eo(m.expression, m), eo(m, f), m.flowNode = f.returnFlowNode;
          const y = gn(m, r);
          if ($ && (y === fr || y === ll) && We(r.valueDeclaration, p.Member_0_implicitly_has_an_1_type, Xi(r), Xr(y)), !cf(y, uR))
            return u7(y);
        }
      }
      function Wt(r, s) {
        const l = ta(r.escapedName, "__#") ? A.createPrivateIdentifier(r.escapedName.split("@")[1]) : Ti(r.escapedName), f = A.createPropertyAccessExpression(A.createThis(), l);
        eo(f.expression, f), eo(f, s), f.flowNode = s.returnFlowNode;
        const m = gn(f, r);
        return $ && (m === fr || m === ll) && We(r.valueDeclaration, p.Member_0_implicitly_has_an_1_type, Xi(r), Xr(m)), cf(m, uR) ? void 0 : u7(m);
      }
      function gn(r, s) {
        return y0(r, fr, s?.valueDeclaration && (!w(s) || Pu(s.valueDeclaration) & 128) && j$(s) || $e);
      }
      function ua(r, s) {
        const l = Ox(r.valueDeclaration);
        if (l) {
          const O = rn(l) ? iv(l) : void 0;
          return O && O.typeExpression ? Di(O.typeExpression) : r.valueDeclaration && vo(r.valueDeclaration, r, l) || mb(wc(l));
        }
        let f, m = !1, y = !1;
        if (v(r) && (f = Wt(r, B(r))), !f) {
          let O;
          if (r.declarations) {
            let J;
            for (const V of r.declarations) {
              const Y = un(V) || za(V) ? V : jo(V) ? un(V.parent) ? V.parent : V : void 0;
              if (!Y) continue;
              const be = jo(Y) ? lA(Y) : qc(Y);
              (be === 4 || un(Y) && lX(Y, be)) && (yC(Y) ? m = !0 : y = !0), za(Y) || (J = Ad(J, Y, r, V)), J || (O || (O = [])).push(un(Y) || za(Y) ? Sh(r, s, Y, be) : ct);
            }
            f = J;
          }
          if (!f) {
            if (!It(O)) return rt;
            let J = m && r.declarations ? Cfe(O, r.declarations) : void 0;
            if (y) {
              const V = j$(r);
              V && ((J || (J = [])).push(V), m = !0);
            }
            f = Yn(_t(J, (V) => !!(V.flags & -13)) ? J : O);
          }
        }
        const x = of(_u(f, !1, y && !m));
        return r.valueDeclaration && rn(r.valueDeclaration) && rl(x, (O) => !!(O.flags & -13)) === ct ? (gb(r.valueDeclaration, Ve), Ve) : x;
      }
      function vo(r, s, l) {
        var f, m;
        if (!rn(r) || !l || !bs(l) || l.properties.length) return;
        const y = Ka();
        for (; un(r) || Ln(r); ) {
          const J = Nf(r);
          (f = J?.exports) != null && f.size && to(y, J.exports), r = un(r) ? r.parent : r.parent.parent;
        }
        const x = Nf(r);
        (m = x?.exports) != null && m.size && to(y, x.exports);
        const O = Yo(s, y, Te, Te, Te);
        return O.objectFlags |= 4096, O;
      }
      function Ad(r, s, l, f) {
        var m;
        const y = _l(s.parent);
        if (y) {
          const x = of(Di(y));
          if (r) !hi(r) && !hi(x) && !Dh(r, x) && w7e(void 0, r, f, x);
          else return x;
        }
        if ((m = l.parent) != null && m.valueDeclaration) {
          const x = VE(l.parent);
          if (x.valueDeclaration) {
            const O = _l(x.valueDeclaration);
            if (O) {
              const J = ms(Di(O), l.escapedName);
              if (J) return kn(J);
            }
          }
        }
        return r;
      }
      function Sh(r, s, l, f) {
        if (za(l)) {
          if (s) return ft(s);
          const x = wc(l.arguments[2]), O = xn(x, "value");
          if (O) return O;
          const J = xn(x, "get");
          if (J) {
            const Y = nx(J);
            if (Y) return ro(Y);
          }
          const V = xn(x, "set");
          if (V) {
            const Y = nx(V);
            if (Y) return hme(Y);
          }
          return Ve;
        }
        if (my(l.left, l.right)) return Ve;
        const m = f === 1 && (Ln(l.left) || Po(l.left)) && ($g(l.left.expression) || Fe(l.left.expression) && vS(l.left.expression)), y = s ? ft(s) : m ? ku(wc(l.right)) : mb(wc(l.right));
        if (y.flags & 1048576 && f === 2 && r.escapedName === "export=") {
          const x = om(y), O = Ka();
          c5(x.members, O);
          const J = O.size;
          s && !s.exports && (s.exports = Ka()), (s || r).exports.forEach((Y, be) => {
            var me;
            const Je = O.get(be);
            if (Je && Je !== Y && !(Y.flags & 2097152)) if (Y.flags & 111551 && Je.flags & 111551) {
              if (Y.valueDeclaration && Je.valueDeclaration && Sr(Y.valueDeclaration) !== Sr(Je.valueDeclaration)) {
                const ht = Ti(Y.escapedName), ir = ((me = qn(Je.valueDeclaration, Bl)) == null ? void 0 : me.name) || Je.valueDeclaration;
                ts(We(Y.valueDeclaration, p.Duplicate_identifier_0, ht), Kr(ir, p._0_was_also_declared_here, ht)), ts(We(ir, p.Duplicate_identifier_0, ht), Kr(Y.valueDeclaration, p._0_was_also_declared_here, ht));
              }
              const gt = Fs(Y.flags | Je.flags, be);
              gt.links.type = Yn([ft(Y), ft(Je)]), gt.valueDeclaration = Je.valueDeclaration, gt.declarations = zi(Je.declarations, Y.declarations), O.set(be, gt);
            } else O.set(be, sy(Y, Je));
            else O.set(be, Y);
          });
          const V = Yo(J !== O.size ? void 0 : x.symbol, O, x.callSignatures, x.constructSignatures, x.indexInfos);
          if (J === O.size && (y.aliasSymbol && (V.aliasSymbol = y.aliasSymbol, V.aliasTypeArguments = y.aliasTypeArguments), yn(y) & 4)) {
            V.aliasSymbol = y.symbol;
            const Y = Vo(y);
            V.aliasTypeArguments = It(Y) ? Y : void 0;
          }
          return V.objectFlags |= E8([y]) | yn(y) & 20608, V.symbol && V.symbol.flags & 32 && y === Rp(V.symbol) && (V.objectFlags |= 16777216), V;
        }
        return J$(y) ? (gb(l, hl), hl) : y;
      }
      function my(r, s) {
        return Ln(r) && r.expression.kind === 110 && bk(s, (l) => fu(r, l));
      }
      function yC(r) {
        const s = c_(r, !1, !1);
        return s.kind === 177 || s.kind === 263 || s.kind === 219 && !uA(s.parent);
      }
      function Cfe(r, s) {
        return E.assert(r.length === s.length), r.filter((l, f) => {
          const m = s[f], y = un(m) ? m : un(m.parent) ? m.parent : void 0;
          return y && yC(y);
        });
      }
      function CP(r, s, l) {
        return r.initializer ? _u(K8e(r, GP(r, 0, Ja(r.name) ? EP(r.name, !0, !1) : Re))) : Ja(r.name) ? EP(r.name, s, l) : (l && !n$(r) && gb(r, Ve), s ? q : Ve);
      }
      function Efe(r, s, l) {
        const f = Ka();
        let m, y = 131200;
        bt(r.elements, (O) => {
          const J = O.propertyName || O.name;
          if (O.dotDotDotToken) {
            m = Ch(Cr, Ve, !1);
            return;
          }
          const V = u0(J);
          if (!Cp(V)) {
            y |= 512;
            return;
          }
          const Y = Ep(V), be = Fs(4 | (O.initializer ? 16777216 : 0), Y);
          be.links.type = CP(O, s, l), f.set(be.escapedName, be);
        });
        const x = Yo(void 0, f, Te, Te, m ? [m] : Te);
        return x.objectFlags |= y, s && (x.pattern = r, x.objectFlags |= 131072), x;
      }
      function Dfe(r, s, l) {
        const f = r.elements, m = Wo(f), y = m && m.kind === 209 && m.dotDotDotToken ? m : void 0;
        if (f.length === 0 || f.length === 1 && y) return z >= 2 ? oAe(Ve) : hl;
        const x = or(f, (V) => Al(V) ? Ve : CP(V, s, l)), O = i_(f, (V) => !(V === y || Al(V) || IC(V)), f.length - 1) + 1;
        let J = Pg(x, or(f, (V, Y) => V === y ? 4 : Y >= O ? 2 : 1));
        return s && (J = B3e(J), J.pattern = r, J.objectFlags |= 131072), J;
      }
      function EP(r, s = !1, l = !1) {
        s && Wm.push(r);
        const f = r.kind === 207 ? Efe(r, s, l) : Dfe(r, s, l);
        return s && Wm.pop(), f;
      }
      function ZE(r, s) {
        return h8(nn(r, !0, 0), r, s);
      }
      function wfe(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = Fs(4096, "__importAttributes"), f = Ka();
          bt(r.elements, (y) => {
            const x = Fs(4, LO(y));
            x.parent = l, x.links.type = qut(y), x.links.target = x, f.set(x.escapedName, x);
          });
          const m = Yo(l, f, Te, Te, Te);
          m.objectFlags |= 262272, s.resolvedType = m;
        }
        return s.resolvedType;
      }
      function Pfe(r) {
        const s = Nf(r), l = vtt(!1);
        return l && s && s === l;
      }
      function h8(r, s, l) {
        return r ? (r.flags & 512 && Pfe(s.parent) && (r = Ope(s)), l && $$(s, r), r.flags & 16384 && (Ns(s) || !gy(s)) && r.symbol !== mn(s) && (r = $t), of(r)) : (r = Fi(s) && s.dotDotDotToken ? hl : Ve, l && (n$(s) || gb(s, r)), r);
      }
      function n$(r) {
        const s = xm(r);
        return CR(s.kind === 170 ? s.parent : s);
      }
      function gy(r) {
        const s = _l(r);
        if (s) return Di(s);
      }
      function Afe(r) {
        let s = r.valueDeclaration;
        return s ? (Ns(s) && (s = cS(s)), Fi(s) ? N$(s.parent) : !1) : !1;
      }
      function vC(r) {
        const s = Wi(r);
        if (!s.type) {
          const l = i$(r);
          return !s.type && !Afe(r) && (s.type = l), l;
        }
        return s.type;
      }
      function i$(r) {
        if (r.flags & 4194304) return di(r);
        if (r === Ft) return Ve;
        if (r.flags & 134217728 && r.valueDeclaration) {
          const f = mn(Sr(r.valueDeclaration)), m = Fs(f.flags, "exports");
          m.declarations = f.declarations ? f.declarations.slice() : [], m.parent = r, m.links.target = f, f.valueDeclaration && (m.valueDeclaration = f.valueDeclaration), f.members && (m.members = new Map(f.members)), f.exports && (m.exports = new Map(f.exports));
          const y = Ka();
          return y.set("exports", m), Yo(r, y, Te, Te, Te);
        }
        E.assertIsDefined(r.valueDeclaration);
        const s = r.valueDeclaration;
        if (Pi(s) && Tp(s))
          return s.statements.length ? of(mb(aa(s.statements[0].expression))) : Yi;
        if (zy(s)) return KE(r);
        if (!Tt(r, 0))
          return r.flags & 512 && !(r.flags & 67108864) ? wP(r) : bC(r);
        let l;
        if (s.kind === 278) l = h8(gy(s) || wc(s.expression), s);
        else if (un(s) || rn(s) && (za(s) || (Ln(s) || M5(s)) && un(s.parent))) l = ua(r);
        else if (Ln(s) || Po(s) || Fe(s) || Xs(s) || V_(s) || sl(s) || Xc(s) || hc(s) && !Hp(s) || gd(s) || Pi(s)) {
          if (r.flags & 9136) return wP(r);
          l = un(s.parent) ? ua(r) : gy(s) || Ve;
        } else if (ol(s)) l = gy(s) || e7e(s);
        else if (Om(s)) l = gy(s) || FIe(s);
        else if (Nu(s)) l = gy(s) || HP(s.name, 0);
        else if (Hp(s)) l = gy(s) || t7e(s, 0);
        else if (Fi(s) || ga(s) || f_(s) || ci(s) || Ns(s) || G4(s)) l = ZE(s, !0);
        else if (l1(s)) l = wP(r);
        else if (Gh(s)) l = y8(r);
        else return E.fail("Unhandled declaration kind! " + E.formatSyntaxKind(s.kind) + " for " + E.formatSymbol(r));
        return Kn() ? l : r.flags & 512 && !(r.flags & 67108864) ? wP(r) : bC(r);
      }
      function IT(r) {
        if (r) switch (r.kind) {
          case 178:
            return yf(r);
          case 179:
            return vJ(r);
          case 173:
            return E.assert(km(r)), _l(r);
        }
      }
      function DP(r) {
        const s = IT(r);
        return s && Di(s);
      }
      function vM(r) {
        const s = lge(r);
        return s && s.symbol;
      }
      function Nfe(r) {
        return lb(mp(r));
      }
      function KE(r) {
        const s = Wi(r);
        if (!s.type) {
          if (!Tt(r, 0)) return rt;
          const l = Ho(r, 178), f = Ho(r, 179), m = qn(Ho(r, 173), R_);
          let y = l && rn(l) && NT(l) || DP(l) || DP(f) || DP(m) || l && l.body && PX(l) || m && ZE(m, !0);
          y || (f && !CR(f) ? uu($, f, p.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation, Xi(r)) : l && !CR(l) ? uu($, l, p.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation, Xi(r)) : m && !CR(m) && uu($, m, p.Member_0_implicitly_has_an_1_type, Xi(r), "any"), y = Ve), Kn() || (IT(l) ? We(l, p._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation, Xi(r)) : IT(f) || IT(m) ? We(f, p._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation, Xi(r)) : l && $ && We(l, p._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions, Xi(r)), y = Ve), s.type ?? (s.type = y);
        }
        return s.type;
      }
      function a$(r) {
        const s = Wi(r);
        if (!s.writeType) {
          if (!Tt(r, 7)) return rt;
          const l = Ho(r, 179) ?? qn(Ho(r, 173), R_);
          let f = DP(l);
          Kn() || (IT(l) && We(l, p._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation, Xi(r)), f = Ve), s.writeType ?? (s.writeType = f || KE(r));
        }
        return s.writeType;
      }
      function s$(r) {
        const s = LT(Rp(r));
        return s.flags & 34078720 ? s : s.flags & 268435456 ? xr(s.types, (l) => !!(l.flags & 34078720)) : void 0;
      }
      function wP(r) {
        let s = Wi(r);
        const l = s;
        if (!s.type) {
          const f = r.valueDeclaration && DX(r.valueDeclaration, !1);
          if (f) {
            const m = ume(r, f);
            m && (r = m, s = m.links);
          }
          l.type = s.type = Ife(r);
        }
        return s.type;
      }
      function Ife(r) {
        const s = r.valueDeclaration;
        if (r.flags & 1536 && V3(r)) return Ve;
        if (s && (s.kind === 227 || jo(s) && s.parent.kind === 227)) return ua(r);
        if (r.flags & 512 && s && Pi(s) && s.commonJsModuleIndicator) {
          const f = Af(r);
          if (f !== r) {
            if (!Tt(r, 0)) return rt;
            const m = ys(r.exports.get("export=")), y = ua(m, m === f ? void 0 : f);
            return Kn() ? y : bC(r);
          }
        }
        const l = Lp(16, r);
        if (r.flags & 32) {
          const f = s$(r);
          return f ? Ss([l, f]) : l;
        } else return Q && r.flags & 16777216 ? V1(l, !0) : l;
      }
      function y8(r) {
        const s = Wi(r);
        return s.type || (s.type = ZPe(r));
      }
      function Ofe(r) {
        const s = Wi(r);
        if (!s.type) {
          if (!Tt(r, 0)) return rt;
          const l = Zl(r), f = r.declarations && s0(_p(r), !0), m = Hn(f?.declarations, (y) => Xo(y) ? gy(y) : void 0);
          if (s.type ?? (s.type = f?.declarations && YX(f.declarations) && r.declarations.length ? le(f) : YX(r.declarations) ? fr : m || (m_(l) & 111551 ? ft(l) : rt)), !Kn())
            return bC(f ?? r), s.type ?? (s.type = rt);
        }
        return s.type;
      }
      function Ffe(r) {
        const s = Wi(r);
        return s.type || (s.type = Ji(ft(s.target), s.mapper));
      }
      function Lfe(r) {
        const s = Wi(r);
        return s.writeType || (s.writeType = Ji(cd(s.target), s.mapper));
      }
      function bC(r) {
        const s = r.valueDeclaration;
        if (s) {
          if (_l(s))
            return We(r.valueDeclaration, p._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation, Xi(r)), rt;
          $ && (s.kind !== 170 || s.initializer) && We(r.valueDeclaration, p._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer, Xi(r));
        } else if (r.flags & 2097152) {
          const l = _p(r);
          l && We(l, p.Circular_definition_of_import_alias_0, Xi(r));
        }
        return Ve;
      }
      function OT(r) {
        const s = Wi(r);
        return s.type || (E.assertIsDefined(s.deferralParent), E.assertIsDefined(s.deferralConstituents), s.type = s.deferralParent.flags & 134217728 ? Yn(s.deferralConstituents) : Ss(s.deferralConstituents)), s.type;
      }
      function Mfe(r) {
        const s = Wi(r);
        return !s.writeType && s.deferralWriteConstituents && (E.assertIsDefined(s.deferralParent), E.assertIsDefined(s.deferralConstituents), s.writeType = s.deferralParent.flags & 134217728 ? Yn(s.deferralWriteConstituents) : Ss(s.deferralWriteConstituents)), s.writeType;
      }
      function cd(r) {
        const s = gc(r);
        return s & 2 ? s & 65536 ? Mfe(r) || OT(r) : r.links.writeType || r.links.type : r.flags & 4 ? h0(ft(r), !!(r.flags & 16777216)) : r.flags & 98304 ? s & 1 ? Lfe(r) : a$(r) : ft(r);
      }
      function ft(r) {
        const s = gc(r);
        return s & 65536 ? OT(r) : s & 1 ? Ffe(r) : s & 262144 ? jet(r) : s & 8192 ? rit(r) : r.flags & 7 ? vC(r) : r.flags & 9136 ? wP(r) : r.flags & 8 ? y8(r) : r.flags & 98304 ? KE(r) : r.flags & 2097152 ? Ofe(r) : rt;
      }
      function kn(r) {
        return h0(ft(r), !!(r.flags & 16777216));
      }
      function Wn(r, s) {
        if (r === void 0 || (yn(r) & 4) === 0) return !1;
        for (const l of s) if (r.target === l) return !0;
        return !1;
      }
      function ti(r, s) {
        return r !== void 0 && s !== void 0 && (yn(r) & 4) !== 0 && r.target === s;
      }
      function vi(r) {
        return yn(r) & 4 ? r.target : r;
      }
      function Ks(r, s) {
        return l(r);
        function l(f) {
          if (yn(f) & 7) {
            const m = vi(f);
            return m === s || _t(Nd(m), l);
          } else if (f.flags & 268435456) return _t(f.types, l);
          return !1;
        }
      }
      function Io(r, s) {
        for (const l of s) r = Lh(r, sb(mn(l)));
        return r;
      }
      function Vl(r, s) {
        for (; ; ) {
          if (r = r.parent, r && un(r)) {
            const f = qc(r);
            if (f === 6 || f === 3) {
              const m = mn(r.left);
              m && m.parent && !cr(m.parent.valueDeclaration, (y) => r === y) && (r = m.parent.valueDeclaration);
            }
          }
          if (!r) return;
          const l = r.kind;
          switch (l) {
            case 264:
            case 232:
            case 265:
            case 180:
            case 181:
            case 174:
            case 185:
            case 186:
            case 318:
            case 263:
            case 175:
            case 219:
            case 220:
            case 266:
            case 346:
            case 347:
            case 341:
            case 339:
            case 201:
            case 195: {
              const m = Vl(r, s);
              if ((l === 219 || l === 220 || Hp(r)) && Xf(r)) {
                const O = ul(Pa(ft(mn(r)), 0));
                if (O && O.typeParameters) return [...m || Te, ...O.typeParameters];
              }
              if (l === 201) return kr(m, sb(mn(r.typeParameter)));
              if (l === 195) return zi(m, Ppe(r));
              const y = Io(m, Ry(r)), x = s && (l === 264 || l === 232 || l === 265 || ng(r)) && Rp(mn(r)).thisType;
              return x ? kr(y, x) : y;
            }
            case 342:
              const f = mA(r);
              f && (r = f.valueDeclaration);
              break;
            case 321: {
              const m = Vl(r, s);
              return r.tags ? Io(m, ks(r.tags, (y) => ed(y) ? y.typeParameters : void 0)) : m;
            }
          }
        }
      }
      function Mp(r) {
        var s;
        const l = r.flags & 32 || r.flags & 16 ? r.valueDeclaration : (s = r.declarations) == null ? void 0 : s.find((f) => {
          if (f.kind === 265) return !0;
          if (f.kind !== 261) return !1;
          const m = f.initializer;
          return !!m && (m.kind === 219 || m.kind === 220);
        });
        return E.assert(!!l, "Class was missing valueDeclaration -OR- non-class had no interface declarations"), Vl(l);
      }
      function e_(r) {
        if (!r.declarations) return;
        let s;
        for (const l of r.declarations) (l.kind === 265 || l.kind === 264 || l.kind === 232 || ng(l) || pA(l)) && (s = Io(s, Ry(l)));
        return s;
      }
      function R1(r) {
        return zi(Mp(r), e_(r));
      }
      function j1(r) {
        const s = Pa(r, 1);
        if (s.length === 1) {
          const l = s[0];
          if (!l.typeParameters && l.parameters.length === 1 && Qu(l)) {
            const f = hR(l.parameters[0]);
            return Bi(f) || GM(f) === Ve;
          }
        }
        return !1;
      }
      function FT(r) {
        if (Pa(r, 1).length > 0) return !0;
        if (r.flags & 34078720) {
          const s = xu(r);
          return !!s && j1(s);
        }
        return !1;
      }
      function SC(r) {
        const s = I0(r.symbol);
        return s && Jd(s);
      }
      function HPe(r, s, l) {
        const f = It(s), m = rn(l);
        return dn(Pa(r, 1), (y) => (m || f >= wg(y.typeParameters)) && f <= It(y.typeParameters));
      }
      function Rfe(r, s, l) {
        const f = HPe(r, s, l), m = or(s, Di);
        return el(f, (y) => _t(y.typeParameters) ? k8(y, m, rn(l)) : y);
      }
      function LT(r) {
        if (!r.resolvedBaseConstructorType) {
          const s = I0(r.symbol), l = s && Jd(s), f = SC(r);
          if (!f) return r.resolvedBaseConstructorType = $e;
          if (!Tt(r, 1)) return rt;
          const m = aa(f.expression);
          if (l && f !== l && (E.assert(!l.typeArguments), aa(l.expression)), m.flags & 269484032 && om(m), !Kn())
            return We(r.symbol.valueDeclaration, p._0_is_referenced_directly_or_indirectly_in_its_own_base_expression, Xi(r.symbol)), r.resolvedBaseConstructorType ?? (r.resolvedBaseConstructorType = rt);
          if (!(m.flags & 1) && m !== fn && !FT(m)) {
            const y = We(f.expression, p.Type_0_is_not_a_constructor_function_type, Xr(m));
            if (m.flags & 524288) {
              const x = OP(m);
              let O = Re;
              if (x) {
                const J = Pa(x, 1);
                J[0] && (O = ro(J[0]));
              }
              m.symbol.declarations && ts(y, Kr(m.symbol.declarations[0], p.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1, Xi(m.symbol), Xr(O)));
            }
            return r.resolvedBaseConstructorType ?? (r.resolvedBaseConstructorType = rt);
          }
          r.resolvedBaseConstructorType ?? (r.resolvedBaseConstructorType = m);
        }
        return r.resolvedBaseConstructorType;
      }
      function set(r) {
        let s = Te;
        if (r.symbol.declarations) for (const l of r.symbol.declarations) {
          const f = f6(l);
          if (f)
            for (const m of f) {
              const y = Di(m);
              hi(y) || (s === Te ? s = [y] : s.push(y));
            }
        }
        return s;
      }
      function $Pe(r, s) {
        We(r, p.Type_0_recursively_references_itself_as_a_base_type, Xr(s, void 0, 2));
      }
      function Nd(r) {
        if (!(yn(r) & 7)) return Te;
        if (!r.baseTypesResolved) {
          if (Tt(r, 6) && (r.objectFlags & 8 ? r.resolvedBaseTypes = [oet(r)] : r.symbol.flags & 96 ? (r.symbol.flags & 32 && cet(r), r.symbol.flags & 64 && _et(r)) : E.fail("type must be class or interface"), !Kn() && r.symbol.declarations))
            for (const s of r.symbol.declarations) (s.kind === 264 || s.kind === 265) && $Pe(s, r);
          r.baseTypesResolved = !0;
        }
        return r.resolvedBaseTypes;
      }
      function oet(r) {
        return Ju(Yn(el(r.typeParameters, (s, l) => r.elementFlags[l] & 8 ? Ff(s, et) : s) || Te), r.readonly);
      }
      function cet(r) {
        r.resolvedBaseTypes = mB;
        const s = h_(LT(r));
        if (!(s.flags & 269484033)) return r.resolvedBaseTypes = Te;
        const l = SC(r);
        let f;
        const m = s.symbol ? Oo(s.symbol) : void 0;
        if (s.symbol && s.symbol.flags & 32 && uet(m)) f = J3e(l, s.symbol);
        else if (s.flags & 1) f = s;
        else {
          const x = Rfe(s, l.typeArguments, l);
          if (!x.length)
            return We(l.expression, p.No_base_constructor_has_the_specified_number_of_type_arguments), r.resolvedBaseTypes = Te;
          f = ro(x[0]);
        }
        if (hi(f)) return r.resolvedBaseTypes = Te;
        const y = dp(f);
        if (!bM(y)) {
          const x = ba(Qfe(void 0, f), p.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members, Xr(y));
          return Ws.add(Gg(Sr(l.expression), l.expression, x)), r.resolvedBaseTypes = Te;
        }
        return r === y || Ks(y, r) ? (We(r.symbol.valueDeclaration, p.Type_0_recursively_references_itself_as_a_base_type, Xr(r, void 0, 2)), r.resolvedBaseTypes = Te) : (r.resolvedBaseTypes === mB && (r.members = void 0), r.resolvedBaseTypes = [y]);
      }
      function uet(r) {
        const s = r.outerTypeParameters;
        if (s) {
          const l = s.length - 1, f = Vo(r);
          return s[l].symbol !== f[l].symbol;
        }
        return !0;
      }
      function bM(r) {
        if (r.flags & 524288) {
          const s = xu(r);
          if (s) return bM(s);
        }
        return !!(r.flags & 1179649 && !I_(r) || r.flags & 268435456 && hr(r.types, bM));
      }
      function _et(r) {
        if (r.resolvedBaseTypes = r.resolvedBaseTypes || Te, r.symbol.declarations) {
          for (const s of r.symbol.declarations) if (s.kind === 265 && gD(s)) for (const l of gD(s)) {
            const f = dp(Di(l));
            hi(f) || (bM(f) ? r !== f && !Ks(f, r) ? r.resolvedBaseTypes === Te ? r.resolvedBaseTypes = [f] : r.resolvedBaseTypes.push(f) : $Pe(s, r) : We(l, p.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members));
          }
        }
      }
      function fet(r) {
        if (!r.declarations) return !0;
        for (const s of r.declarations) if (s.kind === 265) {
          if (s.flags & 256) return !1;
          const l = gD(s);
          if (l) {
            for (const f of l) if (go(f.expression)) {
              const m = Tc(f.expression, 788968, !0);
              if (!m || !(m.flags & 64) || Rp(m).thisType) return !1;
            }
          }
        }
        return !0;
      }
      function Rp(r) {
        let s = Wi(r);
        const l = s;
        if (!s.declaredType) {
          const f = r.flags & 32 ? 1 : 2, m = ume(r, r.valueDeclaration && dot(r.valueDeclaration));
          m && (r = m, s = m.links);
          const y = l.declaredType = s.declaredType = Lp(f, r), x = Mp(r), O = e_(r);
          (x || O || f === 1 || !fet(r)) && (y.objectFlags |= 4, y.typeParameters = zi(x, O), y.outerTypeParameters = x, y.localTypeParameters = O, y.instantiations = /* @__PURE__ */ new Map(), y.instantiations.set(ld(y.typeParameters), y), y.target = y, y.resolvedTypeArguments = y.typeParameters, y.thisType = fp(r), y.thisType.isThisType = !0, y.thisType.constraint = y);
        }
        return s.declaredType;
      }
      function XPe(r) {
        var s;
        const l = Wi(r);
        if (!l.declaredType) {
          if (!Tt(r, 2)) return rt;
          const f = E.checkDefined((s = r.declarations) == null ? void 0 : s.find(pA), "Type alias symbol with no valid declaration found"), m = $p(f) ? f.typeExpression : f.type;
          let y = m ? Di(m) : rt;
          if (Kn()) {
            const x = e_(r);
            x && (l.typeParameters = x, l.instantiations = /* @__PURE__ */ new Map(), l.instantiations.set(ld(x), y)), y === j && r.escapedName === "BuiltinIteratorReturn" && (y = fpe());
          } else
            y = rt, f.kind === 341 ? We(f.typeExpression.type, p.Type_alias_0_circularly_references_itself, Xi(r)) : We(Bl(f) && f.name || f, p.Type_alias_0_circularly_references_itself, Xi(r));
          l.declaredType ?? (l.declaredType = y);
        }
        return l.declaredType;
      }
      function o$(r) {
        return r.flags & 98304 && r.symbol.flags & 8 ? Oo(ju(r.symbol)) : r;
      }
      function QPe(r) {
        const s = Wi(r);
        if (!s.declaredType) {
          const l = [];
          if (r.declarations) {
            for (const m of r.declarations) if (m.kind === 267) {
              for (const y of m.members) if (t4(y)) {
                const x = mn(y), O = sx(y).value, J = DC(O !== void 0 ? Lrt(O, ss(r), x) : YPe(x));
                Wi(x).declaredType = J, l.push(ku(J));
              }
            }
          }
          const f = l.length ? Yn(l, 1, r, void 0) : YPe(r);
          f.flags & 134217728 && (f.flags |= 32768, f.symbol = r), s.declaredType = f;
        }
        return s.declaredType;
      }
      function YPe(r) {
        const s = Vs(65536, r), l = Vs(65536, r);
        return s.regularType = s, s.freshType = l, l.regularType = s, l.freshType = l, s;
      }
      function ZPe(r) {
        const s = Wi(r);
        if (!s.declaredType) {
          const l = QPe(ju(r));
          s.declaredType || (s.declaredType = l);
        }
        return s.declaredType;
      }
      function sb(r) {
        const s = Wi(r);
        return s.declaredType || (s.declaredType = fp(r));
      }
      function pet(r) {
        const s = Wi(r);
        return s.declaredType || (s.declaredType = Oo(Zl(r)));
      }
      function Oo(r) {
        return KPe(r) || rt;
      }
      function KPe(r) {
        if (r.flags & 96) return Rp(r);
        if (r.flags & 524288) return XPe(r);
        if (r.flags & 262144) return sb(r);
        if (r.flags & 384) return QPe(r);
        if (r.flags & 8) return ZPe(r);
        if (r.flags & 2097152) return pet(r);
      }
      function SM(r) {
        switch (r.kind) {
          case 133:
          case 159:
          case 154:
          case 150:
          case 163:
          case 136:
          case 155:
          case 151:
          case 116:
          case 157:
          case 146:
          case 202:
            return !0;
          case 189:
            return SM(r.elementType);
          case 184:
            return !r.typeArguments || r.typeArguments.every(SM);
        }
        return !1;
      }
      function det(r) {
        const s = $C(r);
        return !s || SM(s);
      }
      function e3e(r) {
        const s = _l(r);
        return s ? SM(s) : !E0(r);
      }
      function met(r) {
        const s = yf(r), l = Ry(r);
        return (r.kind === 177 || !!s && SM(s)) && r.parameters.every(e3e) && l.every(det);
      }
      function get(r) {
        if (r.declarations && r.declarations.length === 1) {
          const s = r.declarations[0];
          if (s) switch (s.kind) {
            case 173:
            case 172:
              return e3e(s);
            case 175:
            case 174:
            case 177:
            case 178:
            case 179:
              return met(s);
          }
        }
        return !1;
      }
      function t3e(r, s, l) {
        const f = Ka();
        for (const m of r) f.set(m.escapedName, l && get(m) ? m : Rpe(m, s));
        return f;
      }
      function r3e(r, s) {
        for (const l of s) {
          if (n3e(l)) continue;
          const f = r.get(l.escapedName);
          (!f || f.valueDeclaration && un(f.valueDeclaration) && !v(f) && !DK(f.valueDeclaration)) && (r.set(l.escapedName, l), r.set(l.escapedName, l));
        }
      }
      function n3e(r) {
        return !!r.valueDeclaration && qu(r.valueDeclaration) && es(r.valueDeclaration);
      }
      function jfe(r) {
        if (!r.declaredProperties) {
          const s = r.symbol, l = Eg(s);
          r.declaredProperties = o0(l, s), r.declaredCallSignatures = Te, r.declaredConstructSignatures = Te, r.declaredIndexInfos = Te, r.declaredCallSignatures = B2(l.get("__call")), r.declaredConstructSignatures = B2(l.get("__new")), r.declaredIndexInfos = M3e(s);
        }
        return r;
      }
      function Bfe(r) {
        return a3e(r) && Cp(_s(r) ? Od(r) : wc(r.argumentExpression));
      }
      function i3e(r) {
        return a3e(r) && het(_s(r) ? Od(r) : wc(r.argumentExpression));
      }
      function a3e(r) {
        return !_s(r) && !Po(r) ? !1 : go(_s(r) ? r.expression : r.argumentExpression);
      }
      function het(r) {
        return qa(r, oo);
      }
      function v8(r) {
        return r.charCodeAt(0) === 95 && r.charCodeAt(1) === 95 && r.charCodeAt(2) === 64;
      }
      function e4(r) {
        const s = va(r);
        return !!s && Bfe(s);
      }
      function s3e(r) {
        const s = va(r);
        return !!s && i3e(s);
      }
      function t4(r) {
        return !zh(r) || e4(r);
      }
      function o3e(r) {
        return U5(r) && !Bfe(r);
      }
      function yet(r, s, l) {
        E.assert(!!(gc(r) & 4096), "Expected a late-bound symbol."), r.flags |= l, Wi(s.symbol).lateSymbol = r, r.declarations ? s.symbol.isReplaceableByMethod || r.declarations.push(s) : r.declarations = [s], l & 111551 && _D(r, s);
      }
      function c3e(r, s, l, f) {
        E.assert(!!f.symbol, "The member is expected to have a symbol.");
        const m = Pn(f);
        if (!m.resolvedSymbol) {
          m.resolvedSymbol = f.symbol;
          const y = un(f) ? f.left : f.name, x = Po(y) ? wc(y.argumentExpression) : Od(y);
          if (Cp(x)) {
            const O = Ep(x), J = f.symbol.flags;
            let V = l.get(O);
            V || l.set(O, V = Fs(0, O, 4096));
            const Y = s && s.get(O);
            if (!(r.flags & 32) && V.flags & qm(J)) {
              const be = Y ? zi(Y.declarations, V.declarations) : V.declarations, me = !(x.flags & 16384) && Ti(O) || Do(y);
              bt(be, (Je) => We(va(Je) || Je, p.Property_0_was_also_declared_here, me)), We(y || f, p.Duplicate_property_0, me), V = Fs(0, O, 4096);
            }
            return V.links.nameType = x, yet(V, f, J), V.parent ? E.assert(V.parent === r, "Existing symbol parent should match new one") : V.parent = r, m.resolvedSymbol = V;
          }
        }
        return m.resolvedSymbol;
      }
      function vet(r, s, l, f) {
        let m = l.get("__index");
        if (!m) {
          const y = s?.get("__index");
          y ? (m = Gm(y), m.links.checkFlags |= 4096) : m = Fs(0, "__index", 4096), l.set("__index", m);
        }
        m.declarations ? f.symbol.isReplaceableByMethod || m.declarations.push(f) : m.declarations = [f];
      }
      function Jfe(r, s) {
        const l = Wi(r);
        if (!l[s]) {
          const f = s === "resolvedExports", m = f ? r.flags & 1536 ? pC(r).exports : r.exports : r.members;
          l[s] = m || R;
          const y = Ka();
          for (const J of r.declarations || Te) {
            const V = bK(J);
            if (V)
              for (const Y of V) f === vl(Y) && (e4(Y) ? c3e(r, m, y, Y) : s3e(Y) && vet(r, m, y, Y));
          }
          const x = VE(r).assignmentDeclarationMembers;
          if (x) {
            const J = ma(x.values());
            for (const V of J) {
              const Y = qc(V);
              f === !(Y === 3 || un(V) && lX(V, Y) || Y === 9 || Y === 6) && e4(V) && c3e(r, m, y, V);
            }
          }
          let O = pT(m, y);
          if (r.flags & 33554432 && l.cjsExportMerged && r.declarations) for (const J of r.declarations) {
            const V = Wi(J.symbol)[s];
            if (!O) {
              O = V;
              continue;
            }
            V && V.forEach((Y, be) => {
              const me = O.get(be);
              if (!me) O.set(be, Y);
              else {
                if (me === Y) return;
                O.set(be, sy(me, Y));
              }
            });
          }
          l[s] = O || R;
        }
        return l[s];
      }
      function Eg(r) {
        return r.flags & 6256 ? Jfe(r, "resolvedMembers") : r.members || R;
      }
      function c$(r) {
        if (r.flags & 106500 && r.escapedName === "__computed") {
          const s = Wi(r);
          if (!s.lateSymbol && _t(r.declarations, e4)) {
            const l = ys(r.parent);
            _t(r.declarations, vl) ? Tu(l) : Eg(l);
          }
          return s.lateSymbol || (s.lateSymbol = r);
        }
        return r;
      }
      function Of(r, s, l) {
        if (yn(r) & 4) {
          const f = r.target, m = Vo(r);
          return It(f.typeParameters) === It(m) ? l0(f, zi(m, [s || f.thisType])) : r;
        } else if (r.flags & 268435456) {
          const f = el(r.types, (m) => Of(m, s, l));
          return f !== r.types ? Ss(f) : r;
        }
        return l ? h_(r) : r;
      }
      function l3e(r, s, l, f) {
        let m, y, x, O, J;
        GR(l, f, 0, l.length) ? (y = s.symbol ? Eg(s.symbol) : Ka(s.declaredProperties), x = s.declaredCallSignatures, O = s.declaredConstructSignatures, J = s.declaredIndexInfos) : (m = Lf(l, f), y = t3e(s.declaredProperties, m, l.length === 1), x = P$(s.declaredCallSignatures, m), O = P$(s.declaredConstructSignatures, m), J = BAe(s.declaredIndexInfos, m));
        const V = Nd(s);
        if (V.length) {
          if (s.symbol && y === Eg(s.symbol)) {
            const be = Ka(s.declaredProperties), me = d$(s.symbol);
            me && be.set("__index", me), y = be;
          }
          $f(r, y, x, O, J);
          const Y = Wo(f);
          for (const be of V) {
            const me = Y ? Of(Ji(be, m), Y) : be;
            r3e(y, co(me)), x = zi(x, Pa(me, 0)), O = zi(O, Pa(me, 1));
            const Je = me !== Ve ? Bu(me) : [ml];
            J = zi(J, dn(Je, (gt) => !NP(J, gt.keyType)));
          }
        }
        $f(r, y, x, O, J);
      }
      function bet(r) {
        l3e(r, jfe(r), Te, Te);
      }
      function Tet(r) {
        const s = jfe(r.target), l = zi(s.typeParameters, [s.thisType]), f = Vo(r);
        l3e(r, s, l, f.length === l.length ? f : zi(f, [r]));
      }
      function Zm(r, s, l, f, m, y, x, O) {
        const J = new _(Li, O);
        return J.declaration = r, J.typeParameters = s, J.parameters = f, J.thisParameter = l, J.resolvedReturnType = m, J.resolvedTypePredicate = y, J.minArgumentCount = x, J.resolvedMinArgumentCount = void 0, J.target = void 0, J.mapper = void 0, J.compositeSignatures = void 0, J.compositeKind = void 0, J;
      }
      function b8(r) {
        const s = Zm(r.declaration, r.typeParameters, r.thisParameter, r.parameters, void 0, void 0, r.minArgumentCount, r.flags & 167);
        return s.target = r.target, s.mapper = r.mapper, s.compositeSignatures = r.compositeSignatures, s.compositeKind = r.compositeKind, s;
      }
      function u3e(r, s) {
        const l = b8(r);
        return l.compositeSignatures = s, l.compositeKind = 134217728, l.target = void 0, l.mapper = void 0, l;
      }
      function xet(r, s) {
        if ((r.flags & 24) === s) return r;
        r.optionalCallSignatureCache || (r.optionalCallSignatureCache = {});
        const l = s === 8 ? "inner" : "outer";
        return r.optionalCallSignatureCache[l] || (r.optionalCallSignatureCache[l] = ket(r, s));
      }
      function ket(r, s) {
        E.assert(s === 8 || s === 16, "An optional call signature can either be for an inner call chain or an outer call chain, but not both.");
        const l = b8(r);
        return l.flags |= s, l;
      }
      function _3e(r, s) {
        if (Qu(r)) {
          const m = r.parameters.length - 1, y = r.parameters[m], x = ft(y);
          if (Ls(x)) return [l(x, m, y)];
          if (!s && x.flags & 134217728 && hr(x.types, Ls)) return or(x.types, (O) => l(O, m, y));
        }
        return [r.parameters];
        function l(m, y, x) {
          const O = Vo(m), J = f(m, x), V = or(O, (Y, be) => {
            const me = J && J[be] ? J[be] : qP(r, y + be, m), Je = m.target.elementFlags[be], gt = Fs(1, me, Je & 12 ? 32768 : Je & 2 ? 16384 : 0);
            return gt.links.type = Je & 4 ? Ju(Y) : Y, gt;
          });
          return zi(r.parameters.slice(0, y), V);
        }
        function f(m, y) {
          const x = or(m.target.labeledElementDeclarations, (O, J) => gme(O, J, m.target.elementFlags[J], y));
          if (x) {
            const O = [], J = /* @__PURE__ */ new Set();
            for (let Y = 0; Y < x.length; Y++) {
              const be = x[Y];
              b_(J, be) || O.push(Y);
            }
            const V = /* @__PURE__ */ new Map();
            for (const Y of O) {
              let be = V.get(x[Y]) ?? 1, me;
              for (; !b_(J, me = `${x[Y]}_${be}`); ) be++;
              x[Y] = me, V.set(x[Y], be + 1);
            }
          }
          return x;
        }
      }
      function Cet(r) {
        const s = Pa(LT(r), 1), l = I0(r.symbol), f = !!l && Qn(l, 64);
        if (s.length === 0) return [Zm(void 0, r.localTypeParameters, void 0, Te, r, void 0, 0, f ? 4 : 0)];
        const m = SC(r), y = rn(m), x = wM(m), O = It(x), J = [];
        for (const V of s) {
          const Y = wg(V.typeParameters), be = It(V.typeParameters);
          if (y || O >= Y && O <= be) {
            const me = be ? p$(V, yy(x, V.typeParameters, Y, y)) : b8(V);
            me.typeParameters = r.localTypeParameters, me.resolvedReturnType = r, me.flags = f ? me.flags | 4 : me.flags & -5, J.push(me);
          }
        }
        return J;
      }
      function l$(r, s, l, f, m) {
        for (const y of r) if (VM(y, s, l, f, m, l ? Krt : O8)) return y;
      }
      function Eet(r, s, l) {
        if (s.typeParameters) {
          if (l > 0) return;
          for (let m = 1; m < r.length; m++) if (!l$(r[m], s, !1, !1, !1)) return;
          return [s];
        }
        let f;
        for (let m = 0; m < r.length; m++) {
          const y = m === l ? s : l$(r[m], s, !1, !1, !0) || l$(r[m], s, !0, !1, !0);
          if (!y) return;
          f = Lh(f, y);
        }
        return f;
      }
      function zfe(r) {
        let s, l;
        for (let f = 0; f < r.length; f++) {
          if (r[f].length === 0) return Te;
          r[f].length > 1 && (l = l === void 0 ? f : -1);
          for (const m of r[f]) if (!s || !l$(s, m, !1, !1, !0)) {
            const y = Eet(r, m, f);
            if (y) {
              let x = m;
              if (y.length > 1) {
                let O = m.thisParameter;
                const J = bt(y, (V) => V.thisParameter);
                J && (O = $T(J, Ss(Rn(y, (V) => V.thisParameter && ft(V.thisParameter))))), x = u3e(m, y), x.thisParameter = O;
              }
              (s || (s = [])).push(x);
            }
          }
        }
        if (!It(s) && l !== -1) {
          const f = r[l !== void 0 ? l : 0];
          let m = f.slice();
          for (const y of r) if (y !== f) {
            const x = y[0];
            if (E.assert(!!x, "getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"), m = x.typeParameters && _t(m, (O) => !!O.typeParameters && !f3e(x.typeParameters, O.typeParameters)) ? void 0 : or(m, (O) => Pet(O, x)), !m) break;
          }
          s = m;
        }
        return s || Te;
      }
      function f3e(r, s) {
        if (It(r) !== It(s)) return !1;
        if (!r || !s) return !0;
        const l = Lf(s, r);
        for (let f = 0; f < r.length; f++) {
          const m = r[f], y = s[f];
          if (m !== y && !Dh(OP(m) || Re, Ji(OP(y) || Re, l)))
            return !1;
        }
        return !0;
      }
      function Det(r, s, l) {
        return !r || !s ? r || s : $T(r, Ss([ft(r), Ji(ft(s), l)]));
      }
      function wet(r, s, l) {
        const f = lf(r), m = lf(s), y = f >= m ? r : s, x = y === r ? s : r, O = y === r ? f : m, J = Ng(r) || Ng(s), V = J && !Ng(y), Y = new Array(O + (V ? 1 : 0));
        for (let be = 0; be < O; be++) {
          let me = X2(y, be);
          y === s && (me = Ji(me, l));
          let Je = X2(x, be) || Re;
          x === s && (Je = Ji(Je, l));
          const gt = Ss([me, Je]), ht = J && !V && be === O - 1, ir = be >= fm(y) && be >= fm(x), mr = be >= f ? void 0 : qP(r, be), br = be >= m ? void 0 : qP(s, be), Hr = Fs(1 | (ir && !ht ? 16777216 : 0), (mr === br ? mr : mr ? br ? void 0 : mr : br) || `arg${be}`, ht ? 32768 : ir ? 16384 : 0);
          Hr.links.type = ht ? Ju(gt) : gt, Y[be] = Hr;
        }
        if (V) {
          const be = Fs(1, "args", 32768);
          be.links.type = Ju(_m(x, O)), x === s && (be.links.type = Ji(be.links.type, l)), Y[O] = be;
        }
        return Y;
      }
      function Pet(r, s) {
        const l = r.typeParameters || s.typeParameters;
        let f;
        r.typeParameters && s.typeParameters && (f = Lf(s.typeParameters, r.typeParameters));
        let m = (r.flags | s.flags) & 166;
        const y = r.declaration, x = wet(r, s, f), O = Wo(x);
        O && gc(O) & 32768 && (m |= 1);
        const J = Zm(y, l, Det(r.thisParameter, s.thisParameter, f), x, void 0, void 0, Math.max(r.minArgumentCount, s.minArgumentCount), m);
        return J.compositeKind = 134217728, J.compositeSignatures = zi(r.compositeKind !== 268435456 && r.compositeSignatures || [r], [s]), f ? J.mapper = r.compositeKind !== 268435456 && r.mapper && r.compositeSignatures ? fb(r.mapper, f) : f : r.compositeKind !== 268435456 && r.mapper && r.compositeSignatures && (J.mapper = r.mapper), J;
      }
      function p3e(r) {
        const s = Bu(r[0]);
        if (s) {
          const l = [];
          for (const f of s) {
            const m = f.keyType;
            hr(r, (y) => !!kh(y, m)) && l.push(Ch(m, Yn(or(r, (y) => cb(y, m))), _t(r, (y) => kh(y, m).isReadonly)));
          }
          return l;
        }
        return Te;
      }
      function Aet(r) {
        $f(r, R, zfe(or(r.types, (s) => s === Qs ? [La] : Pa(s, 0))), zfe(or(r.types, (s) => Pa(s, 1))), p3e(r.types));
      }
      function TM(r, s) {
        return r ? s ? Ss([r, s]) : r : s;
      }
      function d3e(r) {
        const s = Qf(r, (f) => Pa(f, 1).length > 0), l = or(r, j1);
        if (s > 0 && s === Qf(l, (f) => f)) {
          const f = l.indexOf(!0);
          l[f] = !1;
        }
        return l;
      }
      function Net(r, s, l, f) {
        const m = [];
        for (let y = 0; y < s.length; y++) y === f ? m.push(r) : l[y] && m.push(ro(Pa(s[y], 1)[0]));
        return Ss(m);
      }
      function Iet(r) {
        let s, l, f;
        const m = r.types, y = d3e(m), x = Qf(y, (O) => O);
        for (let O = 0; O < m.length; O++) {
          const J = r.types[O];
          if (!y[O]) {
            let V = Pa(J, 1);
            V.length && x > 0 && (V = or(V, (Y) => {
              const be = b8(Y);
              return be.resolvedReturnType = Net(ro(Y), m, y, O), be;
            })), l = m3e(l, V);
          }
          s = m3e(s, Pa(J, 0)), f = a_(Bu(J), (V, Y) => g3e(V, Y, !1), f);
        }
        $f(r, R, s || Te, l || Te, f || Te);
      }
      function m3e(r, s) {
        for (const l of s) (!r || hr(r, (f) => !VM(f, l, !1, !1, !1, O8))) && (r = kr(r, l));
        return r;
      }
      function g3e(r, s, l) {
        if (r) for (let f = 0; f < r.length; f++) {
          const m = r[f];
          if (m.keyType === s.keyType)
            return r[f] = Ch(m.keyType, l ? Yn([m.type, s.type]) : Ss([m.type, s.type]), l ? m.isReadonly || s.isReadonly : m.isReadonly && s.isReadonly), r;
        }
        return kr(r, s);
      }
      function Oet(r) {
        if (r.target) {
          $f(r, R, Te, Te, Te), $f(r, t3e(hy(r.target), r.mapper, !1), P$(Pa(r.target, 0), r.mapper), P$(Pa(r.target, 1), r.mapper), BAe(Bu(r.target), r.mapper));
          return;
        }
        const s = ys(r.symbol);
        if (s.flags & 2048) {
          $f(r, R, Te, Te, Te);
          const x = Eg(s);
          $f(r, x, B2(x.get("__call")), B2(x.get("__new")), M3e(s));
          return;
        }
        let l = Tu(s), f;
        if (s === Ie) {
          const x = /* @__PURE__ */ new Map();
          l.forEach((O) => {
            var J;
            !(O.flags & 418) && !(O.flags & 512 && ((J = O.declarations) != null && J.length) && hr(O.declarations, o_)) && x.set(O.escapedName, O);
          }), l = x;
        }
        let m;
        if ($f(r, l, Te, Te, Te), s.flags & 32) {
          const x = LT(Rp(s));
          x.flags & 303562752 ? (l = Ka(mC(l, s)), r3e(l, co(x))) : x === Ve && (m = ml);
        }
        const y = m$(l);
        if (y ? f = g$(y, ma(l.values())) : (m && (f = kr(f, m)), s.flags & 384 && (Oo(s).flags & 65536 || _t(r.properties, (x) => !!(ft(x).flags & 67648))) && (f = kr(f, vc))), $f(r, l, Te, Te, f || Te), s.flags & 8208 && (r.callSignatures = B2(s)), s.flags & 32) {
          const x = Rp(s);
          let O = s.members ? B2(s.members.get("__constructor")) : Te;
          s.flags & 16 && (O = Mn(O.slice(), Rn(r.callSignatures, (J) => ng(J.declaration) ? Zm(J.declaration, J.typeParameters, J.thisParameter, J.parameters, x, void 0, J.minArgumentCount, J.flags & 167) : void 0))), O.length || (O = Cet(x)), r.constructSignatures = O;
        }
      }
      function Fet(r, s, l) {
        return Ji(r, Lf([s.indexType, s.objectType], [cm(0), Pg([l])]));
      }
      function Let(r) {
        const s = pp(r.mappedType);
        if (!(s.flags & 134217728 || s.flags & 268435456)) return;
        const l = s.flags & 134217728 ? s.origin : s;
        if (!l || !(l.flags & 268435456)) return;
        const f = Ss(l.types.filter((m) => m !== r.constraintType));
        return f !== ct ? f : void 0;
      }
      function Met(r) {
        const s = kh(r.source, Cr), l = Dg(r.mappedType), f = !(l & 1), m = l & 4 ? 0 : 16777216, y = s ? [Ch(Cr, Q$(s.type, r.mappedType, r.constraintType) || Re, f && s.isReadonly)] : Te, x = Ka(), O = Let(r);
        for (const J of co(r.source)) {
          if (O && !qa(kC(J, 19456), O))
            continue;
          const V = 8192 | (f && pm(J) ? 8 : 0), Y = Fs(4 | J.flags & m, J.escapedName, V);
          if (Y.declarations = J.declarations, Y.links.nameType = Wi(J).nameType, Y.links.propertyType = ft(J), r.constraintType.type.flags & 33554432 && r.constraintType.type.objectType.flags & 524288 && r.constraintType.type.indexType.flags & 524288) {
            const be = r.constraintType.type.objectType, me = Fet(r.mappedType, r.constraintType.type, be);
            Y.links.mappedType = me, Y.links.constraintType = eg(be);
          } else
            Y.links.mappedType = r.mappedType, Y.links.constraintType = r.constraintType;
          x.set(J.escapedName, Y);
        }
        $f(r, x, Te, Te, y);
      }
      function xM(r) {
        if (r.flags & 2097152) {
          const s = h_(r.type);
          return U1(s) ? _Ae(s) : eg(s);
        }
        if (r.flags & 67108864) {
          if (r.root.isDistributive) {
            const s = r.checkType, l = xM(s);
            if (l !== s) return Bpe(r, qT(r.root.checkType, l, r.mapper), !1);
          }
          return r;
        }
        if (r.flags & 134217728) return sc(r, xM, !0);
        if (r.flags & 268435456) {
          const s = r.types;
          return s.length === 2 && s[0].flags & 224 && s[1] === ou ? r : Ss(el(r.types, xM));
        }
        return r;
      }
      function Wfe(r) {
        return gc(r) & 4096;
      }
      function Ufe(r, s, l, f) {
        for (const m of co(r)) f(kC(m, s));
        if (r.flags & 1) f(Cr);
        else for (const m of Bu(r)) (!l || m.keyType.flags & 4194336) && f(m.keyType);
      }
      function Ret(r) {
        const s = Ka();
        let l;
        $f(r, R, Te, Te, Te);
        const f = sm(r), m = pp(r), y = r.target || r, x = Th(y), O = u$(y) !== 2, J = xh(y), V = h_(ob(r)), Y = Dg(r);
        MT(r) ? Ufe(V, 19456, !1, me) : ZT(xM(m), me), $f(r, s, Te, Te, l || Te);
        function me(gt) {
          ZT(x ? Ji(x, A8(r.mapper, f, gt)) : gt, (ht) => Je(gt, ht));
        }
        function Je(gt, ht) {
          if (Cp(ht)) {
            const ir = Ep(ht), mr = s.get(ir);
            if (mr)
              mr.links.nameType = Yn([mr.links.nameType, ht]), mr.links.keyType = Yn([mr.links.keyType, gt]);
            else {
              const br = Cp(gt) ? ms(V, Ep(gt)) : void 0, Hr = !!(Y & 4 || !(Y & 8) && br && br.flags & 16777216), lr = !!(Y & 1 || !(Y & 2) && br && pm(br)), ur = Q && !Hr && br && br.flags & 16777216, En = br ? Wfe(br) : 0, si = Fs(4 | (Hr ? 16777216 : 0), ir, En | 262144 | (lr ? 8 : 0) | (ur ? 524288 : 0));
              si.links.mappedType = r, si.links.nameType = ht, si.links.keyType = gt, br && (si.links.syntheticOrigin = br, si.declarations = O ? br.declarations : void 0), s.set(ir, si);
            }
          } else if (h$(ht) || ht.flags & 65537) {
            const ir = ht.flags & 33 ? Cr : ht.flags & 65600 ? et : ht, mr = Ji(J, A8(r.mapper, f, gt)), br = S8(V, ht), Hr = Ch(ir, mr, !!(Y & 1 || !(Y & 2) && br?.isReadonly));
            l = g3e(l, Hr, !0);
          }
        }
      }
      function jet(r) {
        var s;
        if (!r.links.type) {
          const l = r.links.mappedType;
          if (!Tt(r, 0))
            return l.containsError = !0, rt;
          const f = Ji(xh(l.target || l), A8(l.mapper, sm(l), r.links.keyType));
          let m = Q && r.flags & 16777216 && !Wc(f, 20) ? V1(f, !0) : r.links.checkFlags & 524288 ? q$(f) : f;
          Kn() || (We(k, p.Type_of_property_0_circularly_references_itself_in_mapped_type_1, Xi(r), Xr(l)), m = rt), (s = r.links).type ?? (s.type = m);
        }
        return r.links.type;
      }
      function sm(r) {
        return r.typeParameter || (r.typeParameter = sb(mn(r.declaration.typeParameter)));
      }
      function pp(r) {
        return r.constraintType || (r.constraintType = g_(sm(r)) || rt);
      }
      function Th(r) {
        return r.declaration.nameType ? r.nameType || (r.nameType = Ji(Di(r.declaration.nameType), r.mapper)) : void 0;
      }
      function xh(r) {
        return r.templateType || (r.templateType = r.declaration.type ? Ji(_u(Di(r.declaration.type), !0, !!(Dg(r) & 4)), r.mapper) : rt);
      }
      function h3e(r) {
        return $C(r.declaration.typeParameter);
      }
      function MT(r) {
        const s = h3e(r);
        return s.kind === 199 && s.operator === 143;
      }
      function ob(r) {
        if (!r.modifiersType) if (MT(r)) r.modifiersType = Ji(Di(h3e(r).type), r.mapper);
        else {
          const s = pp(Dpe(r.declaration)), l = s && s.flags & 524288 ? g_(s) : s;
          r.modifiersType = l && l.flags & 2097152 ? Ji(l.type, r.mapper) : Re;
        }
        return r.modifiersType;
      }
      function Dg(r) {
        const s = r.declaration;
        return (s.readonlyToken ? s.readonlyToken.kind === 41 ? 2 : 1 : 0) | (s.questionToken ? s.questionToken.kind === 41 ? 8 : 4 : 0);
      }
      function y3e(r) {
        const s = Dg(r);
        return s & 8 ? -1 : s & 4 ? 1 : 0;
      }
      function PP(r) {
        if (yn(r) & 32) return y3e(r) || PP(ob(r));
        if (r.flags & 268435456) {
          const s = PP(r.types[0]);
          return hr(r.types, (l, f) => f === 0 || PP(l) === s) ? s : 0;
        }
        return 0;
      }
      function Bet(r) {
        return !!(yn(r) & 32 && Dg(r) & 4);
      }
      function I_(r) {
        if (yn(r) & 32) {
          const s = pp(r);
          if (VT(s)) return !0;
          const l = Th(r);
          if (l && VT(Ji(l, U2(sm(r), s)))) return !0;
        }
        return !1;
      }
      function u$(r) {
        const s = Th(r);
        return s ? qa(s, sm(r)) ? 1 : 2 : 0;
      }
      function om(r) {
        return r.members || (r.flags & 1048576 ? r.objectFlags & 4 ? Tet(r) : r.objectFlags & 3 ? bet(r) : r.objectFlags & 1024 ? Met(r) : r.objectFlags & 16 ? Oet(r) : r.objectFlags & 32 ? Ret(r) : E.fail("Unhandled object type " + E.formatObjectFlags(r.objectFlags)) : r.flags & 134217728 ? Aet(r) : r.flags & 268435456 ? Iet(r) : E.fail("Unhandled type " + E.formatTypeFlags(r.flags))), r;
      }
      function hy(r) {
        return r.flags & 1048576 ? om(r).properties : Te;
      }
      function R2(r, s) {
        if (r.flags & 1048576) {
          const l = om(r).members.get(s);
          if (l && oa(l)) return l;
        }
      }
      function kM(r) {
        if (!r.resolvedProperties) {
          const s = Ka();
          for (const l of r.types) {
            for (const f of co(l)) if (!s.has(f.escapedName)) {
              const m = EM(r, f.escapedName, !!(r.flags & 268435456));
              m && s.set(f.escapedName, m);
            }
            if (r.flags & 134217728 && Bu(l).length === 0) break;
          }
          r.resolvedProperties = o0(s, r.symbol);
        }
        return r.resolvedProperties;
      }
      function co(r) {
        return r = AP(r), r.flags & 402653184 ? kM(r) : hy(r);
      }
      function Jet(r, s) {
        r = AP(r), r.flags & 403701760 && om(r).members.forEach((l, f) => {
          nb(l, f) && s(l, f);
        });
      }
      function zet(r, s) {
        return s.properties.some((l) => {
          const f = l.name && (Gd(l.name) ? sf($A(l.name)) : u0(l.name)), m = f && Cp(f) ? Ep(f) : void 0, y = m === void 0 ? void 0 : xn(r, m);
          return !!y && R8(y) && !qa(LC(l), y);
        });
      }
      function Wet(r) {
        const s = Yn(r);
        if (!(s.flags & 134217728)) return ege(s);
        const l = Ka();
        for (const f of r) for (const { escapedName: m } of ege(f)) if (!l.has(m)) {
          const y = C3e(s, m);
          y && l.set(m, y);
        }
        return ma(l.values());
      }
      function RT(r) {
        return r.flags & 524288 ? g_(r) : r.flags & 33554432 ? Vet(r) : r.flags & 67108864 ? S3e(r) : xu(r);
      }
      function g_(r) {
        return CM(r) ? OP(r) : void 0;
      }
      function Uet(r, s) {
        const l = N8(r);
        return !!l && jT(l, s);
      }
      function jT(r, s = 0) {
        var l;
        return s < 5 && !!(r && (r.flags & 524288 && _t((l = r.symbol) == null ? void 0 : l.declarations, (f) => Qn(f, 4096)) || r.flags & 402653184 && _t(r.types, (f) => jT(f, s)) || r.flags & 33554432 && jT(r.objectType, s + 1) || r.flags & 67108864 && jT(S3e(r), s + 1) || r.flags & 16777216 && jT(r.baseType, s) || yn(r) & 32 && Uet(r, s) || U1(r) && qs(J2(r), (f, m) => !!(r.target.elementFlags[m] & 8) && jT(f, s)) >= 0));
      }
      function Vet(r) {
        return CM(r) ? qet(r) : void 0;
      }
      function Vfe(r) {
        const s = _0(r, !1);
        return s !== r ? s : RT(r);
      }
      function qet(r) {
        if ($fe(r)) return C$(r.objectType, r.indexType);
        const s = Vfe(r.indexType);
        if (s && s !== r.indexType) {
          const f = J1(r.objectType, s, r.accessFlags);
          if (f) return f;
        }
        const l = Vfe(r.objectType);
        if (l && l !== r.objectType) return J1(l, r.indexType, r.accessFlags);
      }
      function qfe(r) {
        if (!r.resolvedDefaultConstraint) {
          const s = Art(r), l = W1(r);
          r.resolvedDefaultConstraint = Bi(s) ? l : Bi(l) ? s : Yn([s, l]);
        }
        return r.resolvedDefaultConstraint;
      }
      function v3e(r) {
        if (r.resolvedConstraintOfDistributive !== void 0) return r.resolvedConstraintOfDistributive || void 0;
        if (r.root.isDistributive && r.restrictiveInstantiation !== r) {
          const s = _0(r.checkType, !1), l = s === r.checkType ? RT(s) : s;
          if (l && l !== r.checkType) {
            const f = Bpe(r, qT(r.root.checkType, l, r.mapper), !0);
            if (!(f.flags & 262144))
              return r.resolvedConstraintOfDistributive = f, f;
          }
        }
        r.resolvedConstraintOfDistributive = !1;
      }
      function b3e(r) {
        return v3e(r) || qfe(r);
      }
      function S3e(r) {
        return CM(r) ? b3e(r) : void 0;
      }
      function Get(r, s) {
        let l, f = !1;
        for (const m of r) if (m.flags & 132644864) {
          let y = RT(m);
          for (; y && y.flags & 69730304; ) y = RT(y);
          y && (l = kr(l, y), s && (l = kr(l, m)));
        } else (m.flags & 12812284 || Ag(m)) && (f = !0);
        if (l && (s || f)) {
          if (f)
            for (const m of r) (m.flags & 12812284 || Ag(m)) && (l = kr(l, m));
          return zM(Ss(l, 2), !1);
        }
      }
      function xu(r) {
        if (r.flags & 533200896 || U1(r)) {
          const s = Gfe(r);
          return s !== Qo && s !== I ? s : void 0;
        }
        return r.flags & 2097152 ? oo : void 0;
      }
      function Km(r) {
        return xu(r) || r;
      }
      function CM(r) {
        return Gfe(r) !== I;
      }
      function Gfe(r) {
        if (r.resolvedBaseConstraint) return r.resolvedBaseConstraint;
        const s = [];
        return r.resolvedBaseConstraint = l(r);
        function l(y) {
          if (!y.immediateBaseConstraint) {
            if (!Tt(y, 4)) return I;
            let x;
            const O = B$(y);
            if ((s.length < 10 || s.length < 50 && !Gi(s, O)) && (s.push(O), x = m(_0(y, !1)), s.pop()), !Kn()) {
              if (y.flags & 524288) {
                const J = y$(y);
                if (J) {
                  const V = We(J, p.Type_parameter_0_has_a_circular_constraint, Xr(y));
                  k && !Lb(J, k) && !Lb(k, J) && ts(V, Kr(k, p.Circularity_originates_in_type_at_this_location));
                }
              }
              x = I;
            }
            y.immediateBaseConstraint ?? (y.immediateBaseConstraint = x || Qo);
          }
          return y.immediateBaseConstraint;
        }
        function f(y) {
          const x = l(y);
          return x !== Qo && x !== I ? x : void 0;
        }
        function m(y) {
          if (y.flags & 524288) {
            const x = OP(y);
            return y.isThisType || !x ? x : f(x);
          }
          if (y.flags & 402653184) {
            const x = y.types, O = [];
            let J = !1;
            for (const V of x) {
              const Y = f(V);
              Y ? (Y !== V && (J = !0), O.push(Y)) : J = !0;
            }
            return J ? y.flags & 134217728 && O.length === x.length ? Yn(O) : y.flags & 268435456 && O.length ? Ss(O) : void 0 : y;
          }
          if (y.flags & 2097152) {
            if (I_(y.type)) {
              const x = y.type;
              if (Th(x) && !MT(x)) return f(xpe(x, 0));
            }
            return oo;
          }
          if (y.flags & 4194304) {
            const x = y.types, O = Rn(x, f);
            return O.length === x.length ? zT(y.texts, O) : Cr;
          }
          if (y.flags & 8388608) {
            const x = f(y.type);
            return x && x !== y.type ? CC(y.symbol, x) : Cr;
          }
          if (y.flags & 33554432) {
            if ($fe(y)) return f(C$(y.objectType, y.indexType));
            const x = f(y.objectType), O = f(y.indexType), J = x && O && J1(x, O, y.accessFlags);
            return J && f(J);
          }
          if (y.flags & 67108864) {
            const x = b3e(y);
            return x && f(x);
          }
          return y.flags & 16777216 ? f(ope(y)) : U1(y) ? Pg(or(J2(y), (x, O) => {
            const J = x.flags & 524288 && y.target.elementFlags[O] & 8 && f(x) || x;
            return J !== x && cf(J, (V) => db(V) && !U1(V)) ? J : x;
          }), y.target.elementFlags, y.target.readonly, y.target.labeledElementDeclarations) : y;
        }
      }
      function Het(r, s) {
        if (r === s) return r.resolvedApparentType || (r.resolvedApparentType = Of(r, s, !0));
        const l = `I${Kl(r)},${Kl(s)}`;
        return Vm(l) ?? E1(l, Of(r, s, !0));
      }
      function Hfe(r) {
        if (r.default) r.default === je && (r.default = I);
        else if (r.target) {
          const s = Hfe(r.target);
          r.default = s ? Ji(s, r.mapper) : Qo;
        } else {
          r.default = je;
          const s = r.symbol && bt(r.symbol.declarations, (f) => $o(f) && f.default), l = s ? Di(s) : Qo;
          r.default === je && (r.default = l);
        }
        return r.default;
      }
      function j2(r) {
        const s = Hfe(r);
        return s !== Qo && s !== I ? s : void 0;
      }
      function $et(r) {
        return Hfe(r) !== I;
      }
      function T3e(r) {
        return !!(r.symbol && bt(r.symbol.declarations, (s) => $o(s) && s.default));
      }
      function x3e(r) {
        return r.resolvedApparentType || (r.resolvedApparentType = Xet(r));
      }
      function Xet(r) {
        const s = r.target ?? r, l = N8(s);
        if (l && !s.declaration.nameType) {
          const f = ob(r), m = I_(f) ? x3e(f) : xu(f);
          if (m && cf(m, (y) => db(y) || k3e(y))) return Ji(s, qT(l, m, r.mapper));
        }
        return r;
      }
      function k3e(r) {
        return !!(r.flags & 268435456) && hr(r.types, db);
      }
      function $fe(r) {
        let s;
        return !!(r.flags & 33554432 && yn(s = r.objectType) & 32 && !I_(s) && VT(r.indexType) && !(Dg(s) & 8) && !s.declaration.nameType);
      }
      function h_(r) {
        const s = r.flags & 132644864 ? xu(r) || Re : r, l = yn(s);
        return l & 32 ? x3e(s) : l & 4 && s !== r ? Of(s, r) : s.flags & 268435456 ? Het(s, r) : s.flags & 12583968 ? Il : s.flags & 67648 ? Op : s.flags & 4224 ? Ftt() : s.flags & 8448 ? Wf : s.flags & 16896 ? eAe() : s.flags & 131072 ? Yi : s.flags & 2097152 ? oo : s.flags & 2 && !Q ? Yi : s;
      }
      function AP(r) {
        return dp(h_(dp(r)));
      }
      function C3e(r, s, l) {
        var f, m, y;
        let x = 0, O, J, V;
        const Y = r.flags & 134217728;
        let be, me = 4, Je = Y ? 0 : 8, gt = !1;
        for (const Ii of r.types) {
          const Si = h_(Ii);
          if (!(hi(Si) || Si.flags & 262144)) {
            const fi = ms(Si, s, l), vs = fi ? kp(fi) : 0;
            if (fi) {
              if (fi.flags & 106500 && (be ?? (be = Y ? 0 : 16777216), Y ? be |= fi.flags & 16777216 : be &= fi.flags), !O)
                O = fi, x = fi.flags & 98304 || 4;
              else if (fi !== O) {
                if ((y4(fi) || fi) === (y4(O) || O) && Qpe(O, fi, (Cs, ka) => Cs === ka ? -1 : 0) === -1) gt = !!O.parent && !!It(e_(O.parent));
                else {
                  J || (J = /* @__PURE__ */ new Map(), J.set(ss(O), O));
                  const Cs = ss(fi);
                  J.has(Cs) || J.set(Cs, fi);
                }
                x & 98304 && (fi.flags & 98304) !== (x & 98304) && (x = x & -98305 | 4);
              }
              Y && pm(fi) ? Je |= 8 : !Y && !pm(fi) && (Je &= -9), Je |= (vs & 6 ? 0 : 256) | (vs & 4 ? 512 : 0) | (vs & 2 ? 1024 : 0) | (vs & 256 ? 2048 : 0), Gde(fi) || (me = 2);
            } else if (Y) {
              const Cs = !v8(s) && xC(Si, s);
              Cs ? (x = x & -98305 | 4, Je |= 32 | (Cs.isReadonly ? 8 : 0), V = kr(V, Ls(Si) ? W$(Si) || $e : Cs.type)) : Ty(Si) && !(yn(Si) & 2097152) ? (Je |= 32, V = kr(V, $e)) : Je |= 16;
            }
          }
        }
        if (!O || Y && (J || Je & 48) && Je & 1536 && !(J && Qet(J.values()))) return;
        if (!J && !(Je & 16) && !V) if (gt) {
          const Ii = (f = qn(O, Ug)) == null ? void 0 : f.links, Si = $T(O, Ii?.type);
          return Si.parent = (y = (m = O.valueDeclaration) == null ? void 0 : m.symbol) == null ? void 0 : y.parent, Si.links.containingType = r, Si.links.mapper = Ii?.mapper, Si.links.writeType = cd(O), Si;
        } else return O;
        const ht = J ? ma(J.values()) : [O];
        let ir, mr, br;
        const Hr = [];
        let lr, ur, En = !1;
        for (const Ii of ht) {
          ur ? Ii.valueDeclaration && Ii.valueDeclaration !== ur && (En = !0) : ur = Ii.valueDeclaration, ir = Mn(ir, Ii.declarations);
          const Si = ft(Ii);
          mr || (mr = Si, br = Wi(Ii).nameType);
          const fi = cd(Ii);
          (lr || fi !== Si) && (lr = kr(lr || Hr.slice(), fi)), Si !== mr && (Je |= 64), (R8(Si) || WT(Si)) && (Je |= 128), Si.flags & 262144 && Si !== Ou && (Je |= 131072), Hr.push(Si);
        }
        Mn(Hr, V);
        const si = Fs(x | (be ?? 0), s, me | Je);
        return si.links.containingType = r, !En && ur && (si.valueDeclaration = ur, ur.symbol.parent && (si.parent = ur.symbol.parent)), si.declarations = ir, si.links.nameType = br, Hr.length > 2 ? (si.links.checkFlags |= 65536, si.links.deferralParent = r, si.links.deferralConstituents = Hr, si.links.deferralWriteConstituents = lr) : (si.links.type = Y ? Yn(Hr) : Ss(Hr), lr && (si.links.writeType = Y ? Yn(lr) : Ss(lr))), si;
      }
      function E3e(r, s, l) {
        var f, m, y;
        let x = l ? (f = r.propertyCacheWithoutObjectFunctionPropertyAugment) == null ? void 0 : f.get(s) : (m = r.propertyCache) == null ? void 0 : m.get(s);
        return x || (x = C3e(r, s, l), x && ((l ? r.propertyCacheWithoutObjectFunctionPropertyAugment || (r.propertyCacheWithoutObjectFunctionPropertyAugment = Ka()) : r.propertyCache || (r.propertyCache = Ka())).set(s, x), l && !(gc(x) & 48) && !((y = r.propertyCache) != null && y.get(s)) && (r.propertyCache || (r.propertyCache = Ka())).set(s, x))), x;
      }
      function Qet(r) {
        let s;
        for (const l of r) {
          if (!l.declarations) return;
          if (!s) {
            s = new Set(l.declarations);
            continue;
          }
          if (s.forEach((f) => {
            Gi(l.declarations, f) || s.delete(f);
          }), s.size === 0) return;
        }
        return s;
      }
      function EM(r, s, l) {
        const f = E3e(r, s, l);
        return f && !(gc(f) & 16) ? f : void 0;
      }
      function dp(r) {
        return r.flags & 134217728 && r.objectFlags & 16777216 ? r.resolvedReducedType || (r.resolvedReducedType = Yet(r)) : r.flags & 268435456 ? (r.objectFlags & 16777216 || (r.objectFlags |= 16777216 | (_t(kM(r), Zet) ? 33554432 : 0)), r.objectFlags & 33554432 ? ct : r) : r;
      }
      function Yet(r) {
        const s = el(r.types, dp);
        if (s === r.types) return r;
        const l = Yn(s);
        return l.flags & 134217728 && (l.resolvedReducedType = l), l;
      }
      function Zet(r) {
        return D3e(r) || w3e(r);
      }
      function D3e(r) {
        return !(r.flags & 16777216) && (gc(r) & 131264) === 192 && !!(ft(r).flags & 262144);
      }
      function w3e(r) {
        return !r.valueDeclaration && !!(gc(r) & 1024);
      }
      function Xfe(r) {
        return !!(r.flags & 134217728 && r.objectFlags & 16777216 && _t(r.types, Xfe) || r.flags & 268435456 && Ket(r));
      }
      function Ket(r) {
        const s = r.uniqueLiteralFilledInstantiation || (r.uniqueLiteralFilledInstantiation = Ji(r, _c));
        return dp(s) !== s;
      }
      function Qfe(r, s) {
        if (s.flags & 268435456 && yn(s) & 33554432) {
          const l = xr(kM(s), D3e);
          if (l) return ba(r, p.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents, Xr(s, void 0, 536870912), Xi(l));
          const f = xr(kM(s), w3e);
          if (f) return ba(r, p.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some, Xr(s, void 0, 536870912), Xi(f));
        }
        return r;
      }
      function ms(r, s, l, f) {
        var m, y;
        if (r = AP(r), r.flags & 1048576) {
          const x = om(r), O = x.members.get(s);
          if (O && !f && ((m = r.symbol) == null ? void 0 : m.flags) & 512 && ((y = Wi(r.symbol).typeOnlyExportStarMap) != null && y.has(s))) return;
          if (O && oa(O, f)) return O;
          if (l) return;
          const J = x === ac ? Qs : x.callSignatures.length ? Oc : x.constructSignatures.length ? Dc : void 0;
          if (J) {
            const V = R2(J, s);
            if (V) return V;
          }
          return R2(io, s);
        }
        if (r.flags & 268435456) {
          const x = EM(r, s, !0);
          return x || (l ? void 0 : EM(r, s, l));
        }
        if (r.flags & 134217728) return EM(r, s, l);
      }
      function DM(r, s) {
        if (r.flags & 403701760) {
          const l = om(r);
          return s === 0 ? l.callSignatures : l.constructSignatures;
        }
        return Te;
      }
      function Pa(r, s) {
        const l = DM(AP(r), s);
        if (s === 0 && !It(l) && r.flags & 134217728) {
          if (r.arrayFallbackSignatures) return r.arrayFallbackSignatures;
          let f;
          if (cf(r, (m) => {
            var y;
            return !!((y = m.symbol) != null && y.parent) && ett(m.symbol.parent) && (f ? f === m.symbol.escapedName : (f = m.symbol.escapedName, !0));
          })) return r.arrayFallbackSignatures = Pa(xn(Ju(sc(r, (m) => by((P3e(m.symbol.parent) ? bc : zs).typeParameters[0], m.mapper)), gp(r, (m) => P3e(m.symbol.parent))), f), s);
          r.arrayFallbackSignatures = l;
        }
        return l;
      }
      function ett(r) {
        return !r || !zs.symbol || !bc.symbol ? !1 : !!Nn(r, zs.symbol) || !!Nn(r, bc.symbol);
      }
      function P3e(r) {
        return !r || !bc.symbol ? !1 : !!Nn(r, bc.symbol);
      }
      function NP(r, s) {
        return xr(r, (l) => l.keyType === s);
      }
      function Yfe(r, s) {
        let l, f, m;
        for (const y of r) y.keyType === Cr ? l = y : TC(s, y.keyType) && (f ? (m || (m = [f])).push(y) : f = y);
        return m ? Ch(Re, Ss(or(m, (y) => y.type)), a_(m, (y, x) => y && x.isReadonly, !0)) : f || (l && TC(s, Cr) ? l : void 0);
      }
      function TC(r, s) {
        return qa(r, s) || s === Cr && qa(r, et) || s === et && (r === ja || !!(r.flags & 1024) && eh(r.value));
      }
      function Zfe(r) {
        return r.flags & 403701760 ? om(r).indexInfos : Te;
      }
      function Bu(r) {
        return Zfe(AP(r));
      }
      function kh(r, s) {
        return NP(Bu(r), s);
      }
      function cb(r, s) {
        var l;
        return (l = kh(r, s)) == null ? void 0 : l.type;
      }
      function Kfe(r, s) {
        return Bu(r).filter((l) => TC(s, l.keyType));
      }
      function S8(r, s) {
        return Yfe(Bu(r), s);
      }
      function xC(r, s) {
        return S8(r, v8(s) ? $t : sf(Ti(s)));
      }
      function A3e(r) {
        var s;
        let l;
        for (const f of Ry(r)) l = Lh(l, sb(f.symbol));
        return l?.length ? l : Xc(r) ? (s = IP(r)) == null ? void 0 : s.typeParameters : void 0;
      }
      function epe(r) {
        const s = [];
        return r.forEach((l, f) => {
          PT(f) || s.push(l);
        }), s;
      }
      function N3e(r, s) {
        if (jl(r)) return;
        const l = Ku(Ce, '"' + r + '"', 512);
        return l && s ? ys(l) : l;
      }
      function _$(r) {
        return Mx(r) || HA(r) || Fi(r) && OO(r);
      }
      function T8(r) {
        if (_$(r)) return !0;
        if (!Fi(r)) return !1;
        if (r.initializer) {
          const l = mp(r.parent), f = r.parent.parameters.indexOf(r);
          return E.assert(f >= 0), f >= fm(l, 3);
        }
        const s = lv(r.parent);
        return s ? !r.type && !r.dotDotDotToken && r.parent.parameters.indexOf(r) >= CX(s).length : !1;
      }
      function ttt(r) {
        return ga(r) && !km(r) && r.questionToken;
      }
      function x8(r, s, l, f) {
        return {
          kind: r,
          parameterName: s,
          parameterIndex: l,
          type: f
        };
      }
      function wg(r) {
        let s = 0;
        if (r)
          for (let l = 0; l < r.length; l++) T3e(r[l]) || (s = l + 1);
        return s;
      }
      function yy(r, s, l, f) {
        const m = It(s);
        if (!m) return [];
        const y = It(r);
        if (f || y >= l && y <= m) {
          const x = r ? r.slice() : [];
          for (let J = y; J < m; J++) x[J] = rt;
          const O = mde(f);
          for (let J = y; J < m; J++) {
            let V = j2(s[J]);
            f && V && (Dh(V, Re) || Dh(V, Yi)) && (V = Ve), x[J] = V ? Ji(V, Lf(s, x)) : O;
          }
          return x.length = s.length, x;
        }
        return r && r.slice();
      }
      function mp(r) {
        const s = Pn(r);
        if (!s.resolvedSignature) {
          const l = [];
          let f = 0, m = 0, y, x = rn(r) ? V7(r) : void 0, O = !1;
          const J = lv(r), V = Rx(r);
          !J && rn(r) && xS(r) && !yZ(r) && !_t(r.parameters, (Je) => !!k0(Je)) && !k0(r) && !pX(r) && (f |= 32);
          for (let Je = V ? 1 : 0; Je < r.parameters.length; Je++) {
            const gt = r.parameters[Je];
            if (rn(gt) && Vz(gt)) {
              x = gt;
              continue;
            }
            let ht = gt.symbol;
            const ir = np(gt) ? gt.typeExpression && gt.typeExpression.type : gt.type;
            ht && ht.flags & 4 && !Ja(gt.name) && (ht = Gr(gt, ht.escapedName, 111551, void 0, !1)), Je === 0 && ht.escapedName === "this" ? (O = !0, y = gt.symbol) : l.push(ht), ir && ir.kind === 202 && (f |= 2), _$(gt) || Fi(gt) && gt.initializer || cg(gt) || J && l.length > J.arguments.length && !ir || (m = l.length);
          }
          if ((r.kind === 178 || r.kind === 179) && t4(r) && (!O || !y)) {
            const Je = r.kind === 178 ? 179 : 178, gt = Ho(mn(r), Je);
            gt && (y = vM(gt));
          }
          x && x.typeExpression && (y = $T(Fs(1, "this"), Di(x.typeExpression)));
          const Y = z0(r) ? pv(r) : r, be = Y && yc(Y) ? Rp(ys(Y.parent.symbol)) : void 0, me = be ? be.localTypeParameters : A3e(r);
          (dB(r) || rn(r) && rtt(r, l)) && (f |= 1), (D6(r) && Qn(r, 64) || yc(r) && Qn(r.parent, 64)) && (f |= 4), s.resolvedSignature = Zm(r, me, y, l, void 0, void 0, m, f);
        }
        return s.resolvedSignature;
      }
      function rtt(r, s) {
        if (z0(r) || !tpe(r)) return !1;
        const l = Wo(r.parameters), f = Hn(l ? HC(l) : av(r).filter(np), (y) => y.typeExpression && nF(y.typeExpression.type) ? y.typeExpression.type : void 0), m = Fs(3, "args", 32768);
        return f ? m.links.type = Ju(Di(f.type)) : (m.links.checkFlags |= 65536, m.links.deferralParent = ct, m.links.deferralConstituents = [hl], m.links.deferralWriteConstituents = [hl]), f && s.pop(), s.push(m), !0;
      }
      function IP(r) {
        if (!(rn(r) && So(r))) return;
        const s = iv(r);
        return s?.typeExpression && nx(Di(s.typeExpression));
      }
      function ntt(r, s) {
        const l = IP(r);
        if (!l) return;
        const f = r.parameters.indexOf(s);
        return s.dotDotDotToken ? yR(l, f) : _m(l, f);
      }
      function itt(r) {
        const s = IP(r);
        return s && ro(s);
      }
      function tpe(r) {
        const s = Pn(r);
        return s.containsArgumentsReference === void 0 && (s.flags & 512 ? s.containsArgumentsReference = !0 : s.containsArgumentsReference = l(r.body)), s.containsArgumentsReference;
        function l(f) {
          if (!f) return !1;
          switch (f.kind) {
            case 80:
              return f.escapedText === Xe.escapedName && p7(f) === Xe;
            case 173:
            case 175:
            case 178:
            case 179:
              return f.name.kind === 168 && l(f.name);
            case 212:
            case 213:
              return l(f.expression);
            case 304:
              return l(f.initializer);
            default:
              return !sJ(f) && !Sm(f) && !!Fa(f, l);
          }
        }
      }
      function B2(r) {
        if (!r || !r.declarations) return Te;
        const s = [];
        for (let l = 0; l < r.declarations.length; l++) {
          const f = r.declarations[l];
          if (Ra(f)) {
            if (l > 0 && f.body) {
              const m = r.declarations[l - 1];
              if (f.parent === m.parent && f.kind === m.kind && f.pos === m.end) continue;
            }
            if (rn(f) && f.jsDoc) {
              const m = XB(f);
              if (It(m)) {
                for (const y of m) {
                  const x = y.typeExpression;
                  x.type === void 0 && !yc(f) && gb(x, Ve), s.push(mp(x));
                }
                continue;
              }
            }
            s.push(!r1(f) && !Hp(f) && IP(f) || mp(f));
          }
        }
        return s;
      }
      function I3e(r) {
        const s = Ru(r, r);
        if (s) {
          const l = Af(s);
          if (l) return ft(l);
        }
        return Ve;
      }
      function lb(r) {
        if (r.thisParameter) return ft(r.thisParameter);
      }
      function jp(r) {
        if (!r.resolvedTypePredicate) {
          if (r.target) {
            const s = jp(r.target);
            r.resolvedTypePredicate = s ? UAe(s, r.mapper) : ai;
          } else if (r.compositeSignatures) r.resolvedTypePredicate = art(r.compositeSignatures, r.compositeKind) || ai;
          else {
            const s = r.declaration && yf(r.declaration);
            let l;
            if (!s) {
              const f = IP(r.declaration);
              f && r !== f && (l = jp(f));
            }
            if (s || l) r.resolvedTypePredicate = s && _k(s) ? att(s, r) : l || ai;
            else if (r.declaration && So(r.declaration) && (!r.resolvedReturnType || r.resolvedReturnType.flags & 256) && lf(r) > 0) {
              const { declaration: f } = r;
              r.resolvedTypePredicate = ai, r.resolvedTypePredicate = Got(f) || ai;
            } else r.resolvedTypePredicate = ai;
          }
          E.assert(!!r.resolvedTypePredicate);
        }
        return r.resolvedTypePredicate === ai ? void 0 : r.resolvedTypePredicate;
      }
      function att(r, s) {
        const l = r.parameterName, f = r.type && Di(r.type);
        return l.kind === 198 ? x8(r.assertsModifier ? 2 : 0, void 0, void 0, f) : x8(r.assertsModifier ? 3 : 1, l.escapedText, qs(s.parameters, (m) => m.escapedName === l.escapedText), f);
      }
      function O3e(r, s, l) {
        return s !== 268435456 ? Yn(r, l) : Ss(r);
      }
      function ro(r) {
        if (!r.resolvedReturnType) {
          if (!Tt(r, 3)) return rt;
          let s = r.target ? Ji(ro(r.target), r.mapper) : r.compositeSignatures ? Ji(O3e(or(r.compositeSignatures, ro), r.compositeKind, 2), r.mapper) : r4(r.declaration) || (Nc(r.declaration.body) ? Ve : PX(r.declaration));
          if (r.flags & 8 ? s = yNe(s) : r.flags & 16 && (s = V1(s)), !Kn()) {
            if (r.declaration) {
              const l = yf(r.declaration);
              if (l) We(l, p.Return_type_annotation_circularly_references_itself);
              else if ($) {
                const f = r.declaration, m = va(f);
                m ? We(m, p._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions, Do(m)) : We(f, p.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions);
              }
            }
            s = Ve;
          }
          r.resolvedReturnType ?? (r.resolvedReturnType = s);
        }
        return r.resolvedReturnType;
      }
      function r4(r) {
        if (r.kind === 177) return Rp(ys(r.parent.symbol));
        const s = yf(r);
        if (z0(r)) {
          const l = _6(r);
          if (l && yc(l.parent) && !s) return Rp(ys(l.parent.parent.symbol));
        }
        if (Rx(r)) return Di(r.parameters[0].type);
        if (s) return Di(s);
        if (r.kind === 178 && t4(r)) {
          const l = rn(r) && NT(r);
          if (l) return l;
          const f = DP(Ho(mn(r), 179));
          if (f) return f;
        }
        return itt(r);
      }
      function f$(r) {
        return r.compositeSignatures && _t(r.compositeSignatures, f$) || !r.resolvedReturnType && zt(r, 3) >= 0;
      }
      function stt(r) {
        return F3e(r) || Ve;
      }
      function F3e(r) {
        if (Qu(r)) {
          const s = ft(r.parameters[r.parameters.length - 1]), l = Ls(s) ? W$(s) : s;
          return l && cb(l, et);
        }
      }
      function k8(r, s, l, f) {
        const m = rpe(r, yy(s, r.typeParameters, wg(r.typeParameters), l));
        if (f) {
          const y = l8e(ro(m));
          if (y) {
            const x = b8(y);
            x.typeParameters = f;
            const O = BT(x);
            O.mapper = m.mapper;
            const J = b8(m);
            return J.resolvedReturnType = O, J;
          }
        }
        return m;
      }
      function rpe(r, s) {
        const l = r.instantiations || (r.instantiations = /* @__PURE__ */ new Map()), f = ld(s);
        let m = l.get(f);
        return m || l.set(f, m = p$(r, s)), m;
      }
      function p$(r, s) {
        return GT(r, ott(r, s), !0);
      }
      function L3e(r) {
        return el(r.typeParameters, (s) => s.mapper ? Ji(s, s.mapper) : s);
      }
      function ott(r, s) {
        return Lf(L3e(r), s);
      }
      function C8(r) {
        return r.typeParameters ? r.erasedSignatureCache || (r.erasedSignatureCache = ctt(r)) : r;
      }
      function ctt(r) {
        return GT(r, zAe(r.typeParameters), !0);
      }
      function ltt(r) {
        return r.typeParameters ? r.canonicalSignatureCache || (r.canonicalSignatureCache = utt(r)) : r;
      }
      function utt(r) {
        return k8(r, or(r.typeParameters, (s) => s.target && !g_(s.target) ? s.target : s), rn(r.declaration));
      }
      function _tt(r) {
        const s = r.typeParameters;
        if (s) {
          if (r.baseSignatureCache) return r.baseSignatureCache;
          const l = zAe(s), f = Lf(s, or(s, (y) => g_(y) || Re));
          let m = or(s, (y) => Ji(y, f) || Re);
          for (let y = 0; y < s.length - 1; y++) m = p0(m, f);
          return m = p0(m, l), r.baseSignatureCache = GT(r, Lf(s, m), !0);
        }
        return r;
      }
      function BT(r) {
        var s, l;
        if (!r.isolatedSignatureType) {
          const f = (s = r.declaration) == null ? void 0 : s.kind, m = f === void 0 || f === 177 || f === 181 || f === 186, y = Lp(134217744, (l = r.declaration) == null ? void 0 : l.symbol);
          y.members = R, y.properties = Te, y.callSignatures = m ? Te : [r], y.constructSignatures = m ? [r] : Te, y.indexInfos = Te, r.isolatedSignatureType = y;
        }
        return r.isolatedSignatureType;
      }
      function d$(r) {
        return r.members ? m$(Eg(r)) : void 0;
      }
      function m$(r) {
        return r.get("__index");
      }
      function Ch(r, s, l, f, m) {
        return {
          keyType: r,
          type: s,
          isReadonly: l,
          declaration: f,
          components: m
        };
      }
      function M3e(r) {
        const s = d$(r);
        return s ? g$(s, ma(Eg(r).values())) : Te;
      }
      function g$(r, s = r.parent ? ma(Eg(r.parent).values()) : void 0) {
        if (r.declarations) {
          const l = [];
          let f = !1, m = !0, y = !1, x = !0, O = !1, J = !0;
          const V = [];
          for (const be of r.declarations) if (s1(be)) {
            if (be.parameters.length === 1) {
              const me = be.parameters[0];
              me.type && ZT(Di(me.type), (Je) => {
                h$(Je) && !NP(l, Je) && l.push(Ch(Je, be.type ? Di(be.type) : Ve, vf(be, 8), be));
              });
            }
          } else if (s3e(be)) {
            const me = un(be) ? be.left : be.name, Je = Po(me) ? wc(me.argumentExpression) : Od(me);
            if (NP(l, Je)) continue;
            qa(Je, oo) && (qa(Je, et) ? (f = !0, ES(be) || (m = !1)) : qa(Je, $t) ? (y = !0, ES(be) || (x = !1)) : (O = !0, ES(be) || (J = !1)), V.push(be.symbol));
          }
          const Y = zi(V, dn(s, (be) => be !== r));
          return O && !NP(l, Cr) && l.push($8(J, 0, Y, Cr)), f && !NP(l, et) && l.push($8(m, 0, Y, et)), y && !NP(l, $t) && l.push($8(x, 0, Y, $t)), l;
        }
        return Te;
      }
      function h$(r) {
        return !!(r.flags & 608) || WT(r) || !!(r.flags & 268435456) && !_b(r) && _t(r.types, h$);
      }
      function y$(r) {
        return Rn(dn(r.symbol && r.symbol.declarations, $o), $C)[0];
      }
      function R3e(r, s) {
        var l;
        let f;
        if ((l = r.symbol) != null && l.declarations) {
          for (const m of r.symbol.declarations) if (m.parent.kind === 196) {
            const [y = m.parent, x] = qK(m.parent.parent);
            if (x.kind === 184 && !s) {
              const O = x, J = Ime(O);
              if (J) {
                const V = O.typeArguments.indexOf(y);
                if (V < J.length) {
                  const Y = g_(J[V]);
                  if (Y) {
                    const be = Ji(Y, Lpe(J, J.map((me, Je) => () => Uct(O, J, Je))));
                    be !== r && (f = kr(f, be));
                  }
                }
              }
            } else if (x.kind === 170 && x.dotDotDotToken || x.kind === 192 || x.kind === 203 && x.dotDotDotToken) f = kr(f, Ju(Re));
            else if (x.kind === 205) f = kr(f, Cr);
            else if (x.kind === 169 && x.parent.kind === 201) f = kr(f, oo);
            else if (x.kind === 201 && x.type && Gs(x.type) === m.parent && x.parent.kind === 195 && x.parent.extendsType === x && x.parent.checkType.kind === 201 && x.parent.checkType.type) {
              const O = x.parent.checkType, J = Di(O.type);
              f = kr(f, Ji(J, U2(sb(mn(O.typeParameter)), O.typeParameter.constraint ? Di(O.typeParameter.constraint) : oo)));
            }
          }
        }
        return f && Ss(f);
      }
      function OP(r) {
        if (!r.constraint) if (r.target) {
          const s = g_(r.target);
          r.constraint = s ? Ji(s, r.mapper) : Qo;
        } else {
          const s = y$(r);
          if (!s) r.constraint = R3e(r) || Qo;
          else {
            let l = Di(s);
            l.flags & 1 && !hi(l) && (l = s.parent.parent.kind === 201 ? oo : Re), r.constraint = l;
          }
        }
        return r.constraint === Qo ? void 0 : r.constraint;
      }
      function j3e(r) {
        const s = Ho(r.symbol, 169), l = ed(s.parent) ? j5(s.parent) : s.parent;
        return l && Nf(l);
      }
      function ld(r) {
        let s = "";
        if (r) {
          const l = r.length;
          let f = 0;
          for (; f < l; ) {
            const m = r[f].id;
            let y = 1;
            for (; f + y < l && r[f + y].id === m + y; ) y++;
            s.length && (s += ","), s += m, y > 1 && (s += ":" + y), f += y;
          }
        }
        return s;
      }
      function JT(r, s) {
        return r ? `@${ss(r)}` + (s ? `:${ld(s)}` : "") : "";
      }
      function E8(r, s) {
        let l = 0;
        for (const f of r) (s === void 0 || !(f.flags & s)) && (l |= yn(f));
        return l & 458752;
      }
      function n4(r, s) {
        return _t(s) && r === Ma ? Re : l0(r, s);
      }
      function l0(r, s) {
        const l = ld(s);
        let f = r.instantiations.get(l);
        return f || (f = Lp(4, r.symbol), r.instantiations.set(l, f), f.objectFlags |= s ? E8(s) : 0, f.target = r, f.resolvedTypeArguments = s), f;
      }
      function B3e(r) {
        const s = Vs(r.flags, r.symbol);
        return s.objectFlags = r.objectFlags, s.target = r.target, s.resolvedTypeArguments = r.resolvedTypeArguments, s;
      }
      function npe(r, s, l, f, m) {
        if (!f) {
          f = EC(s);
          const x = o4(f);
          m = l ? p0(x, l) : x;
        }
        const y = Lp(4, r.symbol);
        return y.target = r, y.node = s, y.mapper = l, y.aliasSymbol = f, y.aliasTypeArguments = m, y;
      }
      function Vo(r) {
        var s, l;
        if (!r.resolvedTypeArguments) {
          if (!Tt(r, 5)) return zi(r.target.outerTypeParameters, (s = r.target.localTypeParameters) == null ? void 0 : s.map(() => rt)) || Te;
          const f = r.node, m = f ? f.kind === 184 ? zi(r.target.outerTypeParameters, MX(f, r.target.localTypeParameters)) : f.kind === 189 ? [Di(f.elementType)] : or(f.elements, Di) : Te;
          Kn() ? r.resolvedTypeArguments ?? (r.resolvedTypeArguments = r.mapper ? p0(m, r.mapper) : m) : (r.resolvedTypeArguments ?? (r.resolvedTypeArguments = zi(r.target.outerTypeParameters, ((l = r.target.localTypeParameters) == null ? void 0 : l.map(() => rt)) || Te)), We(r.node || k, r.target.symbol ? p.Type_arguments_for_0_circularly_reference_themselves : p.Tuple_type_arguments_circularly_reference_themselves, r.target.symbol && Xi(r.target.symbol)));
        }
        return r.resolvedTypeArguments;
      }
      function vy(r) {
        return It(r.target.typeParameters);
      }
      function J3e(r, s) {
        const l = Oo(ys(s)), f = l.localTypeParameters;
        if (f) {
          const m = It(r.typeArguments), y = wg(f), x = rn(r);
          if (!(!$ && x) && (m < y || m > f.length)) {
            const O = x && rh(r) && !yk(r.parent);
            if (We(r, y === f.length ? O ? p.Expected_0_type_arguments_provide_these_with_an_extends_tag : p.Generic_type_0_requires_1_type_argument_s : O ? p.Expected_0_1_type_arguments_provide_these_with_an_extends_tag : p.Generic_type_0_requires_between_1_and_2_type_arguments, Xr(l, void 0, 2), y, f.length), !x) return rt;
          }
          return r.kind === 184 && lAe(r, It(r.typeArguments) !== f.length) ? npe(l, r, void 0) : l0(l, zi(l.outerTypeParameters, yy(wM(r), f, y, x)));
        }
        return ub(r, s) ? l : rt;
      }
      function i4(r, s, l, f) {
        const m = Oo(r);
        if (m === j) {
          const V = $W.get(r.escapedName);
          if (V !== void 0 && s && s.length === 1) return V === 4 ? ipe(s[0]) : CC(r, s[0]);
        }
        const y = Wi(r), x = y.typeParameters, O = ld(s) + JT(l, f);
        let J = y.instantiations.get(O);
        return J || y.instantiations.set(O, J = GAe(m, Lf(x, yy(s, x, wg(x), rn(r.valueDeclaration))), l, f)), J;
      }
      function ftt(r, s) {
        if (gc(s) & 1048576) {
          const m = wM(r), y = JT(s, m);
          let x = xt.get(y);
          return x || (x = Ys(1, "error", void 0, `alias ${y}`), x.aliasSymbol = s, x.aliasTypeArguments = m, xt.set(y, x)), x;
        }
        const l = Oo(s), f = Wi(s).typeParameters;
        if (f) {
          const m = It(r.typeArguments), y = wg(f);
          if (m < y || m > f.length)
            return We(r, y === f.length ? p.Generic_type_0_requires_1_type_argument_s : p.Generic_type_0_requires_between_1_and_2_type_arguments, Xi(s), y, f.length), rt;
          const x = EC(r);
          let O = x && (z3e(s) || !z3e(x)) ? x : void 0, J;
          if (O) J = o4(O);
          else if (pB(r)) {
            const V = FP(r, 2097152, !0);
            if (V && V !== it) {
              const Y = Zl(V);
              Y && Y.flags & 524288 && (O = Y, J = wM(r) || (f ? [] : void 0));
            }
          }
          return i4(s, wM(r), O, J);
        }
        return ub(r, s) ? l : rt;
      }
      function z3e(r) {
        var s;
        const l = (s = r.declarations) == null ? void 0 : s.find(pA);
        return !!(l && Kf(l));
      }
      function ptt(r) {
        switch (r.kind) {
          case 184:
            return r.typeName;
          case 234:
            const s = r.expression;
            if (go(s)) return s;
        }
      }
      function W3e(r) {
        return r.parent ? `${W3e(r.parent)}.${r.escapedName}` : r.escapedName;
      }
      function v$(r) {
        const s = (r.kind === 167 ? r.right : r.kind === 212 ? r.name : r).escapedText;
        if (s) {
          const l = r.kind === 167 ? v$(r.left) : r.kind === 212 ? v$(r.expression) : void 0, f = l ? `${W3e(l)}.${s}` : s;
          let m = Qe.get(f);
          return m || (Qe.set(f, m = Fs(524288, s, 1048576)), m.parent = l, m.links.declaredType = ee), m;
        }
        return it;
      }
      function FP(r, s, l) {
        const f = ptt(r);
        if (!f) return it;
        const m = Tc(f, s, l);
        return m && m !== it ? m : l ? it : v$(f);
      }
      function b$(r, s) {
        if (s === it) return rt;
        if (s = zE(s) || s, s.flags & 96) return J3e(r, s);
        if (s.flags & 524288) return ftt(r, s);
        const l = KPe(s);
        if (l) return ub(r, s) ? ku(l) : rt;
        if (s.flags & 111551 && S$(r)) {
          const f = dtt(r, s);
          return f || (FP(r, 788968), ft(s));
        }
        return rt;
      }
      function dtt(r, s) {
        const l = Pn(r);
        if (!l.resolvedJSDocType) {
          const f = ft(s);
          let m = f;
          if (s.valueDeclaration) {
            const y = r.kind === 206 && r.qualifier;
            f.symbol && f.symbol !== s && y && (m = b$(r, f.symbol));
          }
          l.resolvedJSDocType = m;
        }
        return l.resolvedJSDocType;
      }
      function ipe(r) {
        return ape(r) ? U3e(r, Re) : r;
      }
      function ape(r) {
        return !!(r.flags & 402653184 && _t(r.types, ape) || r.flags & 16777216 && !a4(r) && ape(r.baseType) || r.flags & 1048576 && !Ag(r) || r.flags & 115867648 && !WT(r));
      }
      function a4(r) {
        return !!(r.flags & 16777216 && r.constraint.flags & 2);
      }
      function spe(r, s) {
        return s.flags & 3 || s === r || r.flags & 1 ? r : U3e(r, s);
      }
      function U3e(r, s) {
        const l = `${Kl(r)}>${Kl(s)}`, f = Pt.get(l);
        if (f) return f;
        const m = sa(16777216);
        return m.baseType = r, m.constraint = s, Pt.set(l, m), m;
      }
      function ope(r) {
        return a4(r) ? r.baseType : Ss([r.constraint, r.baseType]);
      }
      function V3e(r) {
        return r.kind === 190 && r.elements.length === 1;
      }
      function q3e(r, s, l) {
        return V3e(s) && V3e(l) ? q3e(r, s.elements[0], l.elements[0]) : f0(Di(s)) === f0(r) ? Di(l) : void 0;
      }
      function mtt(r, s) {
        let l, f = !0;
        for (; s && !Ei(s) && s.kind !== 321; ) {
          const m = s.parent;
          if (m.kind === 170 && (f = !f), (f || r.flags & 34078720) && m.kind === 195 && s === m.trueType) {
            const y = q3e(r, m.checkType, m.extendsType);
            y && (l = kr(l, y));
          } else if (r.flags & 524288 && m.kind === 201 && !m.nameType && s === m.type) {
            const y = Di(m);
            if (sm(y) === f0(r)) {
              const x = N8(y);
              if (x) {
                const O = g_(x);
                O && cf(O, db) && (l = kr(l, Yn([et, ja])));
              }
            }
          }
          s = m;
        }
        return l ? spe(r, Ss(l)) : r;
      }
      function S$(r) {
        return !!(r.flags & 16777216) && (r.kind === 184 || r.kind === 206);
      }
      function ub(r, s) {
        return r.typeArguments ? (We(r, p.Type_0_is_not_generic, s ? Xi(s) : r.typeName ? Do(r.typeName) : UW), !1) : !0;
      }
      function G3e(r) {
        if (Fe(r.typeName)) {
          const s = r.typeArguments;
          switch (r.typeName.escapedText) {
            case "String":
              return ub(r), Cr;
            case "Number":
              return ub(r), et;
            case "BigInt":
              return ub(r), kt;
            case "Boolean":
              return ub(r), Jt;
            case "Void":
              return ub(r), Qt;
            case "Undefined":
              return ub(r), $e;
            case "Null":
              return ub(r), vr;
            case "Function":
            case "function":
              return ub(r), Qs;
            case "array":
              return (!s || !s.length) && !$ ? hl : void 0;
            case "promise":
              return (!s || !s.length) && !$ ? bR(Ve) : void 0;
            case "Object":
              if (s && s.length === 2) {
                if (F5(r)) {
                  const l = Di(s[0]), f = Di(s[1]);
                  return Yo(void 0, R, Te, Te, l === Cr || l === et ? [Ch(l, f, !1)] : Te);
                }
                return Ve;
              }
              return ub(r), $ ? void 0 : Ve;
          }
        }
      }
      function gtt(r) {
        const s = Di(r.type);
        return Q ? HM(s, 8) : s;
      }
      function T$(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          if (_d(r) && Db(r.parent))
            return s.resolvedSymbol = it, s.resolvedType = wc(r.parent.expression);
          let l, f;
          const m = 788968;
          S$(r) && (f = G3e(r), f || (l = FP(r, m, !0), l === it ? l = FP(r, m | 111551) : FP(r, m), f = b$(r, l))), f || (l = FP(r, m), f = b$(r, l)), s.resolvedSymbol = l, s.resolvedType = f;
        }
        return s.resolvedType;
      }
      function wM(r) {
        return or(r.typeArguments, Di);
      }
      function H3e(r) {
        const s = Pn(r);
        return s.resolvedType || (s.resolvedType = ku(of(A8e(r)))), s.resolvedType;
      }
      function $3e(r, s) {
        function l(m) {
          const y = m.declarations;
          if (y) for (const x of y) switch (x.kind) {
            case 264:
            case 265:
            case 267:
              return x;
          }
        }
        if (!r) return s ? Ma : Yi;
        const f = Oo(r);
        return f.flags & 1048576 ? It(f.typeParameters) !== s ? (We(l(r), p.Global_type_0_must_have_1_type_parameter_s, kc(r), s), s ? Ma : Yi) : f : (We(l(r), p.Global_type_0_must_be_a_class_or_interface_type, kc(r)), s ? Ma : Yi);
      }
      function cpe(r, s) {
        return s4(r, 111551, s ? p.Cannot_find_global_value_0 : void 0);
      }
      function lpe(r, s) {
        return s4(r, 788968, s ? p.Cannot_find_global_type_0 : void 0);
      }
      function x$(r, s, l) {
        const f = s4(r, 788968, l ? p.Cannot_find_global_type_0 : void 0);
        if (f && (Oo(f), It(Wi(f).typeParameters) !== s)) {
          We(f.declarations && xr(f.declarations, Kp), p.Global_type_0_must_have_1_type_parameter_s, kc(f), s);
          return;
        }
        return f;
      }
      function s4(r, s, l) {
        return Gr(void 0, r, s, l, !1, !1);
      }
      function Mc(r, s, l) {
        const f = lpe(r, l);
        return f || l ? $3e(f, s) : void 0;
      }
      function X3e(r, s) {
        let l;
        for (const f of r) l = kr(l, Mc(f, s, !1));
        return l ?? Te;
      }
      function htt() {
        return A_ || (A_ = Mc("TypedPropertyDescriptor", 1, !0) || Ma);
      }
      function ytt() {
        return N_ || (N_ = Mc("TemplateStringsArray", 0, !0) || Yi);
      }
      function Q3e() {
        return cu || (cu = Mc("ImportMeta", 0, !0) || Yi);
      }
      function Y3e() {
        if (!lh) {
          const r = Fs(0, "ImportMetaExpression"), s = Q3e(), l = Fs(4, "meta", 8);
          l.parent = r, l.links.type = s;
          const f = Ka([l]);
          r.members = f, lh = Yo(r, f, Te, Te, Te);
        }
        return lh;
      }
      function Z3e(r) {
        return X0 || (X0 = Mc("ImportCallOptions", 0, r)) || Yi;
      }
      function upe(r) {
        return Q0 || (Q0 = Mc("ImportAttributes", 0, r)) || Yi;
      }
      function K3e(r) {
        return e0 || (e0 = cpe("Symbol", r));
      }
      function vtt(r) {
        return Fu || (Fu = lpe("SymbolConstructor", r));
      }
      function eAe() {
        return nf || (nf = Mc("Symbol", 0, !1)) || Yi;
      }
      function PM(r) {
        return t0 || (t0 = Mc("Promise", 1, r)) || Ma;
      }
      function tAe(r) {
        return Uf || (Uf = Mc("PromiseLike", 1, r)) || Ma;
      }
      function _pe(r) {
        return Z || (Z = cpe("Promise", r));
      }
      function btt(r) {
        return st || (st = Mc("PromiseConstructorLike", 0, r)) || Yi;
      }
      function AM(r) {
        return dr || (dr = Mc("AsyncIterable", 3, r)) || Ma;
      }
      function Stt(r) {
        return Cn || (Cn = Mc("AsyncIterator", 3, r)) || Ma;
      }
      function rAe(r) {
        return fs || (fs = Mc("AsyncIterableIterator", 3, r)) || Ma;
      }
      function Ttt() {
        return Fc ?? (Fc = X3e(["ReadableStreamAsyncIterator"], 1));
      }
      function xtt(r) {
        return Ul || (Ul = Mc("AsyncIteratorObject", 3, r)) || Ma;
      }
      function ktt(r) {
        return Lu || (Lu = Mc("AsyncGenerator", 3, r)) || Ma;
      }
      function NM(r) {
        return Rt || (Rt = Mc("Iterable", 3, r)) || Ma;
      }
      function Ctt(r) {
        return F || (F = Mc("Iterator", 3, r)) || Ma;
      }
      function nAe(r) {
        return ve || (ve = Mc("IterableIterator", 3, r)) || Ma;
      }
      function fpe() {
        return de ? $e : Ve;
      }
      function Ett() {
        return ji ?? (ji = X3e([
          "ArrayIterator",
          "MapIterator",
          "SetIterator",
          "StringIterator"
        ], 1));
      }
      function Dtt(r) {
        return qe || (qe = Mc("IteratorObject", 3, r)) || Ma;
      }
      function wtt(r) {
        return Bt || (Bt = Mc("Generator", 3, r)) || Ma;
      }
      function Ptt(r) {
        return Rr || (Rr = Mc("IteratorYieldResult", 1, r)) || Ma;
      }
      function Att(r) {
        return cn || (cn = Mc("IteratorReturnResult", 1, r)) || Ma;
      }
      function iAe(r) {
        return vg || (vg = Mc("Disposable", 0, r)) || Yi;
      }
      function Ntt(r) {
        return r0 || (r0 = Mc("AsyncDisposable", 0, r)) || Yi;
      }
      function aAe(r, s = 0) {
        const l = s4(r, 788968, void 0);
        return l && $3e(l, s);
      }
      function Itt() {
        return S1 || (S1 = x$("Extract", 2, !0) || it), S1 === it ? void 0 : S1;
      }
      function Ott() {
        return Y0 || (Y0 = x$("Omit", 2, !0) || it), Y0 === it ? void 0 : Y0;
      }
      function ppe(r) {
        return Vf || (Vf = x$("Awaited", 1, r) || (r ? it : void 0)), Vf === it ? void 0 : Vf;
      }
      function Ftt() {
        return bg || (bg = Mc("BigInt", 0, !1)) || Yi;
      }
      function Ltt(r) {
        return qf ?? (qf = Mc("ClassDecoratorContext", 1, r)) ?? Ma;
      }
      function Mtt(r) {
        return ze ?? (ze = Mc("ClassMethodDecoratorContext", 2, r)) ?? Ma;
      }
      function Rtt(r) {
        return at ?? (at = Mc("ClassGetterDecoratorContext", 2, r)) ?? Ma;
      }
      function jtt(r) {
        return At ?? (At = Mc("ClassSetterDecoratorContext", 2, r)) ?? Ma;
      }
      function Btt(r) {
        return yr ?? (yr = Mc("ClassAccessorDecoratorContext", 2, r)) ?? Ma;
      }
      function Jtt(r) {
        return Br ?? (Br = Mc("ClassAccessorDecoratorTarget", 2, r)) ?? Ma;
      }
      function ztt(r) {
        return Tn ?? (Tn = Mc("ClassAccessorDecoratorResult", 2, r)) ?? Ma;
      }
      function Wtt(r) {
        return Er ?? (Er = Mc("ClassFieldDecoratorContext", 2, r)) ?? Ma;
      }
      function Utt() {
        return T1 || (T1 = cpe("NaN", !1));
      }
      function Vtt() {
        return Sd || (Sd = x$("Record", 2, !0) || it), Sd === it ? void 0 : Sd;
      }
      function LP(r, s) {
        return r !== Ma ? l0(r, s) : Yi;
      }
      function sAe(r) {
        return LP(htt(), [r]);
      }
      function oAe(r) {
        return LP(NM(!0), [
          r,
          Qt,
          $e
        ]);
      }
      function Ju(r, s) {
        return LP(s ? bc : zs, [r]);
      }
      function dpe(r) {
        switch (r.kind) {
          case 191:
            return 2;
          case 192:
            return cAe(r);
          case 203:
            return r.questionToken ? 2 : r.dotDotDotToken ? cAe(r) : 1;
          default:
            return 1;
        }
      }
      function cAe(r) {
        return RM(r.type) ? 4 : 8;
      }
      function qtt(r) {
        const s = $tt(r.parent);
        return RM(r) ? s ? bc : zs : mpe(or(r.elements, dpe), s, or(r.elements, Gtt));
      }
      function Gtt(r) {
        return w6(r) || Fi(r) ? r : void 0;
      }
      function lAe(r, s) {
        return !!EC(r) || uAe(r) && (r.kind === 189 ? B1(r.elementType) : r.kind === 190 ? _t(r.elements, B1) : s || _t(r.typeArguments, B1));
      }
      function uAe(r) {
        const s = r.parent;
        switch (s.kind) {
          case 197:
          case 203:
          case 184:
          case 193:
          case 194:
          case 200:
          case 195:
          case 199:
          case 189:
          case 190:
            return uAe(s);
          case 266:
            return !0;
        }
        return !1;
      }
      function B1(r) {
        switch (r.kind) {
          case 184:
            return S$(r) || !!(FP(r, 788968).flags & 524288);
          case 187:
            return !0;
          case 199:
            return r.operator !== 158 && B1(r.type);
          case 197:
          case 191:
          case 203:
          case 317:
          case 315:
          case 316:
          case 310:
            return B1(r.type);
          case 192:
            return r.type.kind !== 189 || B1(r.type.elementType);
          case 193:
          case 194:
            return _t(r.types, B1);
          case 200:
            return B1(r.objectType) || B1(r.indexType);
          case 195:
            return B1(r.checkType) || B1(r.extendsType) || B1(r.trueType) || B1(r.falseType);
        }
        return !1;
      }
      function Htt(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = qtt(r);
          l === Ma ? s.resolvedType = Yi : !(r.kind === 190 && _t(r.elements, (f) => !!(dpe(f) & 8))) && lAe(r) ? s.resolvedType = r.kind === 190 && r.elements.length === 0 ? l : npe(l, r, void 0) : s.resolvedType = gpe(l, r.kind === 189 ? [Di(r.elementType)] : or(r.elements, Di));
        }
        return s.resolvedType;
      }
      function $tt(r) {
        return Tv(r) && r.operator === 148;
      }
      function Pg(r, s, l = !1, f = []) {
        const m = mpe(s || or(r, (y) => 1), l, f);
        return m === Ma ? Yi : r.length ? gpe(m, r) : m;
      }
      function mpe(r, s, l) {
        if (r.length === 1 && r[0] & 4) return s ? bc : zs;
        const f = or(r, (y) => y & 1 ? "#" : y & 2 ? "?" : y & 4 ? "." : "*").join() + (s ? "R" : "") + (_t(l, (y) => !!y) ? "," + or(l, (y) => y ? Hs(y) : "_").join(",") : "");
        let m = vt.get(f);
        return m || vt.set(f, m = Xtt(r, s, l)), m;
      }
      function Xtt(r, s, l) {
        const f = r.length, m = Qf(r, (be) => !!(be & 9));
        let y;
        const x = [];
        let O = 0;
        if (f) {
          y = new Array(f);
          for (let be = 0; be < f; be++) {
            const me = y[be] = fp(), Je = r[be];
            if (O |= Je, !(O & 12)) {
              const gt = Fs(4 | (Je & 2 ? 16777216 : 0), "" + be, s ? 8 : 0);
              gt.links.tupleLabelDeclaration = l?.[be], gt.links.type = me, x.push(gt);
            }
          }
        }
        const J = x.length, V = Fs(4, "length", s ? 8 : 0);
        if (O & 12) V.links.type = et;
        else {
          const be = [];
          for (let me = m; me <= f; me++) be.push(cm(me));
          V.links.type = Yn(be);
        }
        x.push(V);
        const Y = Lp(12);
        return Y.typeParameters = y, Y.outerTypeParameters = void 0, Y.localTypeParameters = y, Y.instantiations = /* @__PURE__ */ new Map(), Y.instantiations.set(ld(Y.typeParameters), Y), Y.target = Y, Y.resolvedTypeArguments = Y.typeParameters, Y.thisType = fp(), Y.thisType.isThisType = !0, Y.thisType.constraint = Y, Y.declaredProperties = x, Y.declaredCallSignatures = Te, Y.declaredConstructSignatures = Te, Y.declaredIndexInfos = Te, Y.elementFlags = r, Y.minLength = m, Y.fixedLength = J, Y.hasRestElement = !!(O & 12), Y.combinedFlags = O, Y.readonly = s, Y.labeledElementDeclarations = l, Y;
      }
      function gpe(r, s) {
        return r.objectFlags & 8 ? hpe(r, s) : l0(r, s);
      }
      function hpe(r, s) {
        var l, f, m, y;
        if (!(r.combinedFlags & 14)) return l0(r, s);
        if (r.combinedFlags & 8) {
          const gt = qs(s, (ht, ir) => !!(r.elementFlags[ir] & 8 && ht.flags & 134479872));
          if (gt >= 0) return OM(or(s, (ht, ir) => r.elementFlags[ir] & 8 ? ht : Re)) ? sc(s[gt], (ht) => hpe(r, XR(s, gt, ht))) : rt;
        }
        const x = [], O = [], J = [];
        let V = -1, Y = -1, be = -1;
        for (let gt = 0; gt < s.length; gt++) {
          const ht = s[gt], ir = r.elementFlags[gt];
          if (ir & 8) if (ht.flags & 1) Je(ht, 4, (l = r.labeledElementDeclarations) == null ? void 0 : l[gt]);
          else if (ht.flags & 117964800 || I_(ht)) Je(ht, 8, (f = r.labeledElementDeclarations) == null ? void 0 : f[gt]);
          else if (Ls(ht)) {
            const mr = J2(ht);
            if (mr.length + x.length >= 1e4)
              return We(k, Sm(k) ? p.Type_produces_a_tuple_type_that_is_too_large_to_represent : p.Expression_produces_a_tuple_type_that_is_too_large_to_represent), rt;
            bt(mr, (br, Hr) => {
              var lr;
              return Je(br, ht.target.elementFlags[Hr], (lr = ht.target.labeledElementDeclarations) == null ? void 0 : lr[Hr]);
            });
          } else Je(Sy(ht) && cb(ht, et) || rt, 4, (m = r.labeledElementDeclarations) == null ? void 0 : m[gt]);
          else Je(ht, ir, (y = r.labeledElementDeclarations) == null ? void 0 : y[gt]);
        }
        for (let gt = 0; gt < V; gt++) O[gt] & 2 && (O[gt] = 1);
        Y >= 0 && Y < be && (x[Y] = Yn(el(x.slice(Y, be + 1), (gt, ht) => O[Y + ht] & 8 ? Ff(gt, et) : gt)), x.splice(Y + 1, be - Y), O.splice(Y + 1, be - Y), J.splice(Y + 1, be - Y));
        const me = mpe(O, r.readonly, J);
        return me === Ma ? Yi : O.length ? l0(me, x) : me;
        function Je(gt, ht, ir) {
          ht & 1 && (V = O.length), ht & 4 && Y < 0 && (Y = O.length), ht & 6 && (be = O.length), x.push(ht & 2 ? _u(gt, !0) : gt), O.push(ht), J.push(ir);
        }
      }
      function MP(r, s, l = 0) {
        const f = r.target, m = vy(r) - l;
        return s > f.fixedLength ? Rnt(r) || Pg(Te) : Pg(Vo(r).slice(s, m), f.elementFlags.slice(s, m), !1, f.labeledElementDeclarations && f.labeledElementDeclarations.slice(s, m));
      }
      function _Ae(r) {
        return Yn(kr(pQ(r.target.fixedLength, (s) => sf("" + s)), eg(r.target.readonly ? bc : zs)));
      }
      function Qtt(r, s) {
        const l = qs(r.elementFlags, (f) => !(f & s));
        return l >= 0 ? l : r.elementFlags.length;
      }
      function D8(r, s) {
        return r.elementFlags.length - i_(r.elementFlags, (l) => !(l & s)) - 1;
      }
      function ype(r) {
        return r.fixedLength + D8(r, 3);
      }
      function J2(r) {
        const s = Vo(r), l = vy(r);
        return s.length === l ? s : s.slice(0, l);
      }
      function Ytt(r) {
        return _u(Di(r.type), !0);
      }
      function Kl(r) {
        return r.id;
      }
      function Eh(r, s) {
        return ge ? Lg(r, s, mo, $1) >= 0 : Lg(r, s, Kl, Fo) >= 0;
      }
      function IM(r, s) {
        const l = ge ? Lg(r, s, mo, $1) : Lg(r, s, Kl, Fo);
        return l < 0 ? (r.splice(~l, 0, s), !0) : !1;
      }
      function Ztt(r, s, l) {
        const f = l.flags;
        if (!(f & 262144))
          if (s |= f & 416808959, f & 132644864 && (s |= 16777216), f & 268435456 && yn(l) & 67108864 && (s |= 536870912), l === rr && (s |= 33554432), hi(l) && (s |= 1073741824), !Q && f & 12)
            yn(l) & 65536 || (s |= 2097152);
          else {
            const m = r.length, y = ge ? Lg(r, l, mo, $1) : m && l.id > r[m - 1].id ? ~m : Lg(r, l, Kl, Fo);
            y < 0 && r.splice(~y, 0, l);
          }
        return s;
      }
      function fAe(r, s, l) {
        let f;
        for (const m of l) m !== f && (s = m.flags & 134217728 ? fAe(r, s | (irt(m) ? 134217728 : 0), m.types) : Ztt(r, s, m), f = m);
        return s;
      }
      function Ktt(r, s) {
        var l;
        if (r.length < 2) return r;
        const f = ld(r), m = ne.get(f);
        if (m) return m;
        const y = s && _t(r, (V) => !!(V.flags & 1048576) && !I_(V) && Upe(om(V))), x = r.length;
        let O = x, J = 0;
        for (; O > 0; ) {
          O--;
          const V = r[O];
          if (y || V.flags & 536346624) {
            if (V.flags & 524288 && Km(V).flags & 134217728) {
              tg(V, Yn(or(r, (me) => me === V ? ct : me)), lp) && Iy(r, O);
              continue;
            }
            const Y = V.flags & 387448832 ? xr(co(V), (me) => Id(ft(me))) : void 0, be = Y && ku(ft(Y));
            for (const me of r) if (V !== me) {
              if (J === 1e5 && J / (x - O) * x > 1e6) {
                (l = sn) == null || l.instant(sn.Phase.CheckTypes, "removeSubtypes_DepthLimit", { typeIds: r.map((Je) => Je.id) }), We(k, p.Expression_produces_a_union_type_that_is_too_complex_to_represent);
                return;
              }
              if (J++, Y && me.flags & 387448832) {
                const Je = xn(me, Y.escapedName);
                if (Je && Id(Je) && ku(Je) !== be) continue;
              }
              if (tg(V, me, lp) && (!(yn(vi(V)) & 1) || !(yn(vi(me)) & 1) || pb(V, me))) {
                Iy(r, O);
                break;
              }
            }
          }
        }
        return ne.set(f, r), r;
      }
      function ert(r, s, l) {
        let f = r.length;
        for (; f > 0; ) {
          f--;
          const m = r[f], y = m.flags;
          (y & 12583936 && s & 32 || y & 2048 && s & 64 || y & 4096 && s & 128 || y & 16384 && s & 512 || l && y & 4 && s & 16 || W2(m) && Eh(r, m.regularType)) && Iy(r, f);
        }
      }
      function trt(r) {
        const s = dn(r, WT);
        if (s.length) {
          let l = r.length;
          for (; l > 0; ) {
            l--;
            const f = r[l];
            f.flags & 1024 && _t(s, (m) => rrt(f, m)) && Iy(r, l);
          }
        }
      }
      function rrt(r, s) {
        return s.flags & 4194304 ? Z$(r, s) : Y$(r, s);
      }
      function nrt(r) {
        const s = [];
        for (const l of r) if (l.flags & 268435456 && yn(l) & 67108864) {
          const f = l.types[0].flags & 34078720 ? 0 : 1;
          hp(s, l.types[f]);
        }
        for (const l of s) {
          const f = [];
          for (const m of r) if (m.flags & 268435456 && yn(m) & 67108864) {
            const y = m.types[0].flags & 34078720 ? 0 : 1;
            m.types[y] === l && IM(f, m.types[1 - y]);
          }
          if (cf(xu(l), (m) => Eh(f, m))) {
            let m = r.length;
            for (; m > 0; ) {
              m--;
              const y = r[m];
              if (y.flags & 268435456 && yn(y) & 67108864) {
                const x = y.types[0].flags & 34078720 ? 0 : 1;
                y.types[x] === l && Eh(f, y.types[1 - x]) && Iy(r, m);
              }
            }
            IM(r, l);
          }
        }
      }
      function irt(r) {
        return !!(r.flags & 134217728 && (r.aliasSymbol || r.origin));
      }
      function pAe(r, s) {
        for (const l of s) if (l.flags & 134217728) {
          const f = l.origin;
          l.aliasSymbol || f && !(f.flags & 134217728) ? hp(r, l) : f && f.flags & 134217728 && pAe(r, f.types);
        }
      }
      function vpe(r, s) {
        const l = H_(r);
        return l.types = s, l;
      }
      function Yn(r, s = 1, l, f, m) {
        if (r.length === 0) return ct;
        if (r.length === 1) return r[0];
        if (r.length === 2 && !m && (r[0].flags & 134217728 || r[1].flags & 134217728)) {
          const y = s === 0 ? "N" : s === 2 ? "S" : "L", x = r[0].id < r[1].id ? 0 : 1, O = r[x].id + y + r[1 - x].id + JT(l, f);
          let J = Ur.get(O);
          return J || (J = dAe(r, s, l, f, void 0), Ur.set(O, J)), J;
        }
        return dAe(r, s, l, f, m);
      }
      function dAe(r, s, l, f, m) {
        let y = [];
        const x = fAe(y, 0, r);
        if (s !== 0) {
          if (x & 3) return x & 1 ? x & 33554432 ? rr : x & 1073741824 ? rt : Ve : Re;
          if (x & 4 && y.length >= 2 && y[0] === $e && y[1] === Ke && Iy(y, 1), (x & 12680192 || x & 16 && x & 4) && ert(y, x, !!(s & 2)), x & 1024 && x & 12582912 && trt(y), x & 536870912 && nrt(y), s === 2 && (y = Ktt(y, !!(x & 1048576)), !y))
            return rt;
          if (y.length === 0) return x & 8 ? x & 2097152 ? vr : fn : x & 4 ? x & 2097152 ? $e : ye : ct;
        }
        if (!m && x & 134217728) {
          const J = [];
          pAe(J, r);
          const V = [];
          for (const Y of y) _t(J, (be) => Eh(be.types, Y)) || V.push(Y);
          if (!l && J.length === 1 && V.length === 0) return J[0];
          if (a_(J, (Y, be) => Y + be.types.length, 0) + V.length === y.length) {
            for (const Y of J) IM(V, Y);
            m = vpe(134217728, V);
          }
        }
        const O = (x & 286523411 ? 0 : 32768) | (x & 268435456 ? 16777216 : 0);
        return Spe(y, O, l, f, m);
      }
      function art(r, s) {
        let l;
        const f = [];
        for (const y of r) {
          const x = jp(y);
          if (x) {
            if (x.kind !== 0 && x.kind !== 1 || l && !bpe(l, x)) return;
            l = x, f.push(x.type);
          } else {
            const O = s !== 268435456 ? ro(y) : void 0;
            if (O !== wt && O !== qt) return;
          }
        }
        if (!l) return;
        const m = O3e(f, s);
        return x8(l.kind, l.parameterName, l.parameterIndex, m);
      }
      function bpe(r, s) {
        return r.kind === s.kind && r.parameterIndex === s.parameterIndex;
      }
      function Spe(r, s, l, f, m) {
        if (r.length === 0) return ct;
        if (r.length === 1) return r[0];
        const y = (m ? m.flags & 134217728 ? `|${ld(m.types)}` : m.flags & 268435456 ? `&${ld(m.types)}` : `#${m.type.id}|${ld(r)}` : ld(r)) + JT(l, f);
        let x = tr.get(y);
        return x || (x = sa(134217728), x.objectFlags = s | E8(r, 12), x.types = r, x.origin = m, x.aliasSymbol = l, x.aliasTypeArguments = f, r.length === 2 && r[0].flags & 8192 && r[1].flags & 8192 && (x.flags |= 256, x.intrinsicName = "boolean"), tr.set(y, x)), x;
      }
      function srt(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = EC(r);
          s.resolvedType = Yn(or(r.types, Di), 1, l, o4(l));
        }
        return s.resolvedType;
      }
      function ort(r, s, l) {
        const f = l.flags;
        return f & 268435456 ? mAe(r, s, l.types) : (Ag(l) ? s & 67108864 || (s |= 67108864, r.set(l.id.toString(), l)) : (f & 3 ? (l === rr && (s |= 33554432), hi(l) && (s |= 1073741824)) : (Q || !(f & 12)) && (l === Ke && (s |= 524288, l = $e), r.has(l.id.toString()) || (l.flags & 97292 && s & 97292 && (s |= 131072), r.set(l.id.toString(), l))), s |= f & 416808959), s);
      }
      function mAe(r, s, l) {
        for (const f of l) s = ort(r, s, ku(f));
        return s;
      }
      function crt(r, s) {
        let l = r.length;
        for (; l > 0; ) {
          l--;
          const f = r[l];
          (f.flags & 32 && s & 12583936 || f.flags & 64 && s & 2048 || f.flags & 128 && s & 4096 || f.flags & 512 && s & 16384 || f.flags & 16 && s & 4 || Ag(f) && s & 13893600) && Iy(r, l);
        }
      }
      function lrt(r, s) {
        for (const l of r) if (!Eh(l.types, s)) {
          if (s === Ke) return Eh(l.types, $e);
          if (s === $e) return Eh(l.types, Ke);
          const f = s.flags & 1024 ? Cr : s.flags & 67584 ? et : s.flags & 4096 ? kt : s.flags & 16384 ? $t : void 0;
          if (!f || !Eh(l.types, f)) return !1;
        }
        return !0;
      }
      function urt(r) {
        let s = r.length;
        const l = dn(r, (f) => !!(f.flags & 1024));
        for (; s > 0; ) {
          s--;
          const f = r[s];
          if (f.flags & 12582912) {
            for (const m of l) if (V2(m, f)) {
              Iy(r, s);
              break;
            } else if (WT(f)) return !0;
          }
        }
        return !1;
      }
      function gAe(r, s) {
        for (let l = 0; l < r.length; l++) r[l] = rl(r[l], (f) => !(f.flags & s));
      }
      function _rt(r) {
        let s;
        const l = qs(r, (x) => !!(yn(x) & 32768));
        if (l < 0) return !1;
        let f = l + 1;
        for (; f < r.length; ) {
          const x = r[f];
          yn(x) & 32768 ? ((s || (s = [r[l]])).push(x), Iy(r, f)) : f++;
        }
        if (!s) return !1;
        const m = [], y = [];
        for (const x of s) for (const O of x.types) if (IM(m, O) && lrt(s, O)) {
          if (O === $e && y.length && y[0] === Ke) continue;
          if (O === Ke && y.length && y[0] === $e) {
            y[0] = Ke;
            continue;
          }
          IM(y, O);
        }
        return r[l] = Spe(y, 32768), !0;
      }
      function frt(r, s, l, f) {
        const m = sa(268435456);
        return m.objectFlags = s | E8(r, 12), m.types = r, m.aliasSymbol = l, m.aliasTypeArguments = f, m;
      }
      function Ss(r, s = 0, l, f) {
        const m = /* @__PURE__ */ new Map(), y = mAe(m, 0, r), x = ma(m.values());
        let O = 0;
        if (y & 262144) return Gi(x, wn) ? wn : ct;
        if (Q && y & 12 && y & 68288512 || y & 131072 && y & 12681212 || y & 12583968 && y & 228316 || y & 67648 && y & 12744636 || y & 4224 && y & 12808060 || y & 16896 && y & 12795388 || y & 20 && y & 12812264 || y & 12582912 && y & 1024 && urt(x)) return ct;
        if (y & 1) return y & 33554432 ? rr : y & 1073741824 ? rt : Ve;
        if (!Q && y & 12) return y & 67108864 ? ct : y & 4 ? $e : vr;
        if ((y & 32 && y & 12583936 || y & 64 && y & 2048 || y & 128 && y & 4096 || y & 512 && y & 16384 || y & 16 && y & 4 || y & 67108864 && y & 13893600) && (s & 1 || crt(x, y)), y & 524288 && (x[x.indexOf($e)] = Ke), x.length === 0) return Re;
        if (x.length === 1) return x[0];
        if (x.length === 2 && !(s & 2)) {
          const Y = x[0].flags & 34078720 ? 0 : 1, be = x[Y], me = x[1 - Y];
          if (be.flags & 34078720 && (me.flags & 12845052 && !EAe(me) || y & 67108864)) {
            const Je = xu(be);
            if (Je && cf(Je, (gt) => !!(gt.flags & 12845052) || Ag(gt))) {
              if (RP(Je, me)) return be;
              if (!(Je.flags & 134217728 && gp(Je, (gt) => RP(gt, me))) && !RP(me, Je))
                return ct;
              O = 67108864;
            }
          }
        }
        const J = ld(x) + (s & 2 ? "*" : JT(l, f));
        let V = $n.get(J);
        if (!V) {
          if (y & 134217728) if (_rt(x)) V = Ss(x, s, l, f);
          else if (hr(x, (Y) => !!(Y.flags & 134217728 && Y.types[0].flags & 4))) {
            const Y = _t(x, B8) ? Ke : $e;
            gAe(x, 4), V = Yn([Ss(x, s), Y], 1, l, f);
          } else if (hr(x, (Y) => !!(Y.flags & 134217728 && (Y.types[0].flags & 8 || Y.types[1].flags & 8))))
            gAe(x, 8), V = Yn([Ss(x, s), vr], 1, l, f);
          else if (x.length >= 3 && r.length > 2) {
            const Y = Math.floor(x.length / 2);
            V = Ss([Ss(x.slice(0, Y), s), Ss(x.slice(Y), s)], s, l, f);
          } else {
            if (!OM(x)) return rt;
            const Y = prt(x, s);
            V = Yn(Y, 1, l, f, _t(Y, (be) => !!(be.flags & 268435456)) && Tpe(Y) > Tpe(x) ? vpe(268435456, x) : void 0);
          }
          else V = frt(x, O, l, f);
          $n.set(J, V);
        }
        return V;
      }
      function hAe(r) {
        return a_(r, (s, l) => l.flags & 134217728 ? s * l.types.length : l.flags & 262144 ? 0 : s, 1);
      }
      function OM(r) {
        var s;
        const l = hAe(r);
        return l >= 1e5 ? ((s = sn) == null || s.instant(sn.Phase.CheckTypes, "checkCrossProductUnion_DepthLimit", {
          typeIds: r.map((f) => f.id),
          size: l
        }), We(k, p.Expression_produces_a_union_type_that_is_too_complex_to_represent), !1) : !0;
      }
      function prt(r, s) {
        const l = hAe(r), f = [];
        for (let m = 0; m < l; m++) {
          const y = r.slice();
          let x = m;
          for (let J = r.length - 1; J >= 0; J--) if (r[J].flags & 134217728) {
            const V = r[J].types, Y = V.length;
            y[J] = V[x % Y], x = Math.floor(x / Y);
          }
          const O = Ss(y, s);
          O.flags & 262144 || f.push(O);
        }
        return f;
      }
      function yAe(r) {
        return !(r.flags & 402653184) || r.aliasSymbol ? 1 : r.flags & 134217728 && r.origin ? yAe(r.origin) : Tpe(r.types);
      }
      function Tpe(r) {
        return a_(r, (s, l) => s + yAe(l), 0);
      }
      function drt(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = EC(r), f = or(r.types, Di), m = f.length === 2 ? f.indexOf(ou) : -1, y = m >= 0 ? f[1 - m] : Re;
          s.resolvedType = Ss(f, y.flags & 224 || y.flags & 4194304 && WT(y) ? 1 : 0, l, o4(l));
        }
        return s.resolvedType;
      }
      function vAe(r, s) {
        const l = sa(2097152);
        return l.type = r, l.indexFlags = s, l;
      }
      function mrt(r) {
        const s = H_(2097152);
        return s.type = r, s;
      }
      function bAe(r, s) {
        return s & 1 ? r.resolvedStringIndexType || (r.resolvedStringIndexType = vAe(r, 1)) : r.resolvedIndexType || (r.resolvedIndexType = vAe(r, 0));
      }
      function xpe(r, s) {
        const l = sm(r), f = pp(r), m = Th(r.target || r);
        if (!m && !(s & 2)) return f;
        const y = [];
        if (VT(f)) {
          if (MT(r)) return bAe(r, s);
          ZT(f, O);
        } else MT(r) ? Ufe(h_(ob(r)), 19456, !!(s & 1), O) : ZT(xM(f), O);
        const x = s & 2 ? rl(Yn(y), (J) => !(J.flags & 33)) : Yn(y);
        if (x.flags & 134217728 && f.flags & 134217728 && ld(x.types) === ld(f.types)) return f;
        return x;
        function O(J) {
          const V = m ? Ji(m, A8(r.mapper, l, J)) : J;
          y.push(V === Cr ? xa : V);
        }
      }
      function u0(r) {
        if (Oi(r)) return ct;
        if (V_(r)) return ku(aa(r));
        if (_s(r)) return ku(Od(r));
        const s = kS(r);
        return s !== void 0 ? sf(Ti(s)) : dt(r) ? ku(aa(r)) : ct;
      }
      function kC(r, s, l) {
        if (l || !(kp(r) & 6)) {
          let f = Wi(c$(r)).nameType;
          if (!f) {
            const m = va(r.valueDeclaration);
            f = r.escapedName === "default" ? sf("default") : m && u0(m) || (vD(r) ? void 0 : sf(kc(r)));
          }
          if (f && f.flags & s) return f;
        }
        return ct;
      }
      function SAe(r, s) {
        return !!(r.flags & s || r.flags & 268435456 && _t(r.types, (l) => SAe(l, s)));
      }
      function grt(r, s, l) {
        const f = l && (yn(r) & 7 || r.aliasSymbol) ? mrt(r) : void 0;
        return Yn(zi(or(co(r), (m) => kC(m, s)), or(Bu(r), (m) => m !== vc && SAe(m.keyType, s) ? m.keyType === Cr && s & 64 ? xa : m.keyType : ct)), 1, void 0, void 0, f);
      }
      function kpe(r, s = 0) {
        return !!(r.flags & 117964800 || U1(r) || I_(r) && Th(r) || r.flags & 134217728 && !(s & 4) && Xfe(r) || r.flags & 268435456 && Wc(r, 132644864) && _t(r.types, Ag));
      }
      function eg(r, s = 0) {
        return r = dp(r), a4(r) ? ipe(eg(r.baseType, s)) : kpe(r, s) ? bAe(r, s) : r.flags & 134217728 ? Ss(or(r.types, (l) => eg(l, s))) : r.flags & 268435456 ? Yn(or(r.types, (l) => eg(l, s))) : yn(r) & 32 ? xpe(r, s) : r === rr ? rr : r.flags & 2 ? ct : r.flags & 262145 ? oo : grt(r, (s & 2 ? 1024 : 12583968) | (s & 1 ? 0 : 84544), s === 0);
      }
      function TAe(r) {
        const s = Itt();
        return s ? i4(s, [r, Cr]) : Cr;
      }
      function hrt(r) {
        const s = TAe(eg(r));
        return s.flags & 262144 ? Cr : s;
      }
      function yrt(r) {
        const s = Pn(r);
        if (!s.resolvedType) switch (r.operator) {
          case 143:
            s.resolvedType = eg(Di(r.type));
            break;
          case 158:
            s.resolvedType = r.type.kind === 155 ? Ope(gA(r.parent)) : rt;
            break;
          case 148:
            s.resolvedType = Di(r.type);
            break;
          default:
            E.assertNever(r.operator);
        }
        return s.resolvedType;
      }
      function vrt(r) {
        const s = Pn(r);
        return s.resolvedType || (s.resolvedType = zT([r.head.text, ...or(r.templateSpans, (l) => l.literal.text)], or(r.templateSpans, (l) => Di(l.type)))), s.resolvedType;
      }
      function zT(r, s) {
        const l = qs(s, (V) => !!(V.flags & 134479872));
        if (l >= 0) return OM(s) ? sc(s[l], (V) => zT(r, XR(s, l, V))) : rt;
        if (Gi(s, rr)) return rr;
        const f = [], m = [];
        let y = r[0];
        if (!J(r, s)) return Cr;
        if (f.length === 0) return sf(y);
        if (m.push(y), hr(m, (V) => V === "")) {
          if (hr(f, (V) => !!(V.flags & 32))) return Cr;
          if (f.length === 1 && WT(f[0])) return f[0];
        }
        const x = `${ld(f)}|${or(m, (V) => V.length).join(",")}|${m.join("")}`;
        let O = ha.get(x);
        return O || ha.set(x, O = Srt(m, f)), O;
        function J(V, Y) {
          for (let be = 0; be < Y.length; be++) {
            const me = Y[be];
            if (me.flags & 15372)
              y += brt(me) || "", y += V[be + 1];
            else if (me.flags & 4194304) {
              if (y += me.texts[0], !J(me.texts, me.types)) return !1;
              y += V[be + 1];
            } else if (VT(me) || FM(me))
              f.push(me), m.push(y), y = V[be + 1];
            else return !1;
          }
          return !0;
        }
      }
      function brt(r) {
        return r.flags & 1024 ? r.value : r.flags & 2048 ? "" + r.value : r.flags & 4096 ? Ub(r.value) : r.flags & 8204 ? r.intrinsicName : void 0;
      }
      function Srt(r, s) {
        const l = sa(4194304);
        return l.texts = r, l.types = s, l;
      }
      function CC(r, s) {
        return s.flags & 134479872 ? sc(s, (l) => CC(r, l)) : s.flags & 1024 ? sf(xAe(r, s.value)) : s.flags & 4194304 ? zT(...Trt(r, s.texts, s.types)) : s.flags & 8388608 && r === s.symbol ? s : s.flags & 8388641 || VT(s) ? kAe(r, s) : FM(s) ? kAe(r, zT(["", ""], [s])) : s;
      }
      function xAe(r, s) {
        switch ($W.get(r.escapedName)) {
          case 0:
            return s.toUpperCase();
          case 1:
            return s.toLowerCase();
          case 2:
            return s.charAt(0).toUpperCase() + s.slice(1);
          case 3:
            return s.charAt(0).toLowerCase() + s.slice(1);
        }
        return s;
      }
      function Trt(r, s, l) {
        switch ($W.get(r.escapedName)) {
          case 0:
            return [s.map((f) => f.toUpperCase()), l.map((f) => CC(r, f))];
          case 1:
            return [s.map((f) => f.toLowerCase()), l.map((f) => CC(r, f))];
          case 2:
            return [s[0] === "" ? s : [s[0].charAt(0).toUpperCase() + s[0].slice(1), ...s.slice(1)], s[0] === "" ? [CC(r, l[0]), ...l.slice(1)] : l];
          case 3:
            return [s[0] === "" ? s : [s[0].charAt(0).toLowerCase() + s[0].slice(1), ...s.slice(1)], s[0] === "" ? [CC(r, l[0]), ...l.slice(1)] : l];
        }
        return [s, l];
      }
      function kAe(r, s) {
        const l = `${ss(r)},${Kl(s)}`;
        let f = Ye.get(l);
        return f || Ye.set(l, f = xrt(r, s)), f;
      }
      function xrt(r, s) {
        const l = Vs(8388608, r);
        return l.type = s, l;
      }
      function krt(r, s, l, f, m) {
        const y = sa(33554432);
        return y.objectType = r, y.indexType = s, y.accessFlags = l, y.aliasSymbol = f, y.aliasTypeArguments = m, y;
      }
      function w8(r) {
        if ($) return !1;
        if (yn(r) & 4096) return !0;
        if (r.flags & 134217728) return hr(r.types, w8);
        if (r.flags & 268435456) return _t(r.types, w8);
        if (r.flags & 132644864) {
          const s = Gfe(r);
          return s !== r && w8(s);
        }
        return !1;
      }
      function k$(r, s) {
        return Cp(r) ? Ep(r) : s && il(s) ? kS(s) : void 0;
      }
      function Cpe(r, s) {
        if (s.flags & 8208) {
          const l = cr(r.parent, (f) => !jo(f)) || r.parent;
          return Wy(l) ? ym(l) && Fe(r) && MNe(l, r) : hr(s.declarations, (f) => !Ra(f) || Qv(f));
        }
        return !0;
      }
      function CAe(r, s, l, f, m, y) {
        const x = m && m.kind === 213 ? m : void 0, O = m && Oi(m) ? void 0 : k$(l, m);
        if (O !== void 0) {
          if (y & 256) return hb(s, O) || Ve;
          const V = ms(s, O);
          if (V) {
            if (y & 64 && m && V.declarations && kd(V) && Cpe(m, V) && Cd(x?.argumentExpression ?? ($b(m) ? m.indexType : m), V.declarations, O), x) {
              if (pR(V, x, n8e(x.expression, s.symbol)), q8e(x, V, Xy(x))) {
                We(x.argumentExpression, p.Cannot_assign_to_0_because_it_is_a_read_only_property, Xi(V));
                return;
              }
              if (y & 8 && (Pn(m).resolvedSymbol = V), XIe(x, V)) return fr;
            }
            const Y = y & 4 ? cd(V) : ft(V);
            return x && Xy(x) !== 1 ? y0(x, Y) : m && $b(m) && B8(Y) ? Yn([Y, $e]) : Y;
          }
          if (cf(s, Ls) && eh(O)) {
            const Y = +O;
            if (m && cf(s, (be) => !(be.target.combinedFlags & 12)) && !(y & 16)) {
              const be = Epe(m);
              if (Ls(s)) {
                if (Y < 0)
                  return We(be, p.A_tuple_type_cannot_be_indexed_with_a_negative_value), $e;
                We(be, p.Tuple_type_0_of_length_1_has_no_element_at_index_2, Xr(s), vy(s), Ti(O));
              } else We(be, p.Property_0_does_not_exist_on_type_1, Ti(O), Xr(s));
            }
            if (Y >= 0)
              return J(kh(s, et)), mNe(s, Y, y & 1 ? Ke : void 0);
          }
        }
        if (!(l.flags & 12) && Cu(l, 12668512)) {
          if (s.flags & 262145) return s;
          const V = S8(s, l) || kh(s, Cr);
          if (V) {
            if (y & 2 && V.keyType !== et) {
              x && (y & 4 ? We(x, p.Type_0_is_generic_and_can_only_be_indexed_for_reading, Xr(r)) : We(x, p.Type_0_cannot_be_used_to_index_type_1, Xr(l), Xr(r)));
              return;
            }
            return m && V.keyType === Cr && !Cu(l, 96) ? (We(Epe(m), p.Type_0_cannot_be_used_as_an_index_type, Xr(l)), y & 1 ? Yn([V.type, Ke]) : V.type) : (J(V), y & 1 && !(s.symbol && s.symbol.flags & 384 && l.symbol && l.flags & 32768 && ju(l.symbol) === s.symbol) ? Yn([V.type, Ke]) : V.type);
          }
          if (l.flags & 262144) return ct;
          if (w8(s)) return Ve;
          if (x && !IX(s)) {
            if (Ty(s)) {
              if ($ && l.flags & 3072)
                return Ws.add(Kr(x, p.Property_0_does_not_exist_on_type_1, l.value, Xr(s))), $e;
              if (l.flags & 96) return Yn(kr(or(s.properties, (Y) => ft(Y)), $e));
            }
            if (s.symbol === Ie && O !== void 0 && Ie.exports.has(O) && Ie.exports.get(O).flags & 418) We(x, p.Property_0_does_not_exist_on_type_1, Ti(O), Xr(s));
            else if ($ && !(y & 128)) if (O !== void 0 && ZIe(O, s)) {
              const Y = Xr(s);
              We(x, p.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead, O, Y, Y + "[" + uc(x.argumentExpression) + "]");
            } else if (cb(s, et)) We(x.argumentExpression, p.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);
            else {
              let Y;
              if (O !== void 0 && (Y = t8e(O, s)))
                Y !== void 0 && We(x.argumentExpression, p.Property_0_does_not_exist_on_type_1_Did_you_mean_2, O, Xr(s), Y);
              else {
                const be = Ost(s, x, l);
                if (be !== void 0) We(x, p.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1, Xr(s), be);
                else {
                  let me;
                  if (l.flags & 32768) me = ba(void 0, p.Property_0_does_not_exist_on_type_1, "[" + Xr(l) + "]", Xr(s));
                  else if (l.flags & 16384) {
                    const Je = py(l.symbol, x);
                    me = ba(void 0, p.Property_0_does_not_exist_on_type_1, "[" + Je + "]", Xr(s));
                  } else l.flags & 1024 || l.flags & 2048 ? me = ba(void 0, p.Property_0_does_not_exist_on_type_1, l.value, Xr(s)) : l.flags & 96 && (me = ba(void 0, p.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1, Xr(l), Xr(s)));
                  me = ba(me, p.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1, Xr(f), Xr(s)), Ws.add(Gg(Sr(x), x, me));
                }
              }
            }
            return;
          }
        }
        if (y & 16 && Ty(s)) return $e;
        if (w8(s)) return Ve;
        if (m) {
          const V = Epe(m);
          if (V.kind !== 10 && l.flags & 3072) We(V, p.Property_0_does_not_exist_on_type_1, "" + l.value, Xr(s));
          else if (l.flags & 96) We(V, p.Type_0_has_no_matching_index_signature_for_type_1, Xr(s), Xr(l));
          else {
            const Y = V.kind === 10 ? "bigint" : Xr(l);
            We(V, p.Type_0_cannot_be_used_as_an_index_type, Y);
          }
        }
        if (Bi(l)) return l;
        return;
        function J(V) {
          V && V.isReadonly && x && (Qy(x) || YB(x)) && We(x, p.Index_signature_in_type_0_only_permits_reading, Xr(s));
        }
      }
      function Epe(r) {
        return r.kind === 213 ? r.argumentExpression : r.kind === 200 ? r.indexType : r.kind === 168 ? r.expression : r;
      }
      function FM(r) {
        if (r.flags & 268435456) {
          let s = !1;
          for (const l of r.types) if (l.flags & 15372 || FM(l)) s = !0;
          else if (!(l.flags & 1048576)) return !1;
          return s;
        }
        return !!(r.flags & 225) || WT(r);
      }
      function WT(r) {
        return !!(r.flags & 4194304) && hr(r.types, FM) || !!(r.flags & 8388608) && FM(r.type);
      }
      function EAe(r) {
        return !!(r.flags & 12582912) && !WT(r);
      }
      function _b(r) {
        return !!P8(r);
      }
      function UT(r) {
        return !!(P8(r) & 4194304);
      }
      function VT(r) {
        return !!(P8(r) & 8388608);
      }
      function P8(r) {
        return r.flags & 402653184 ? (r.objectFlags & 2097152 || (r.objectFlags |= 2097152 | a_(r.types, (s, l) => s | P8(l), 0)), r.objectFlags & 12582912) : r.flags & 16777216 ? (r.objectFlags & 2097152 || (r.objectFlags |= 2097152 | P8(r.baseType) | P8(r.constraint)), r.objectFlags & 12582912) : (r.flags & 117964800 || I_(r) || U1(r) ? 4194304 : 0) | (r.flags & 120061952 || EAe(r) ? 8388608 : 0);
      }
      function _0(r, s) {
        return r.flags & 33554432 ? Ert(r, s) : r.flags & 67108864 ? Drt(r, s) : r.flags & 2097152 ? wrt(r) : r;
      }
      function DAe(r, s, l) {
        if (r.flags & 134217728 || r.flags & 268435456 && !kpe(r)) {
          const f = or(r.types, (m) => _0(Ff(m, s), l));
          return r.flags & 268435456 || l ? Ss(f) : Yn(f);
        }
      }
      function Crt(r, s, l) {
        if (s.flags & 134217728) {
          const f = or(s.types, (m) => _0(Ff(r, m), l));
          return l ? Ss(f) : Yn(f);
        }
      }
      function Ert(r, s) {
        const l = s ? "simplifiedForWriting" : "simplifiedForReading";
        if (r[l]) return r[l] === I ? r : r[l];
        r[l] = I;
        const f = _0(r.objectType, s), m = _0(r.indexType, s), y = Crt(f, m, s);
        if (y) return r[l] = y;
        if (!(m.flags & 132644864)) {
          const x = DAe(f, m, s);
          if (x) return r[l] = x;
        }
        if (U1(f) && m.flags & 67648) {
          const x = JP(f, m.flags & 64 ? 0 : f.target.fixedLength, 0, s);
          if (x) return r[l] = x;
        }
        return I_(f) && u$(f) !== 2 ? r[l] = sc(C$(f, r.indexType), (x) => _0(x, s)) : r[l] = r;
      }
      function Drt(r, s) {
        const l = r.checkType, f = r.extendsType, m = z1(r), y = W1(r);
        if (y.flags & 262144 && f0(m) === f0(l)) {
          if (l.flags & 1 || qa(HT(l), HT(f))) return _0(m, s);
          if (wAe(l, f)) return ct;
        } else if (m.flags & 262144 && f0(y) === f0(l)) {
          if (!(l.flags & 1) && qa(HT(l), HT(f))) return ct;
          if (l.flags & 1 || wAe(l, f)) return _0(y, s);
        }
        return r;
      }
      function wrt(r) {
        return I_(r.type) && Th(r.type) && !MT(r.type) ? xpe(r.type, 0) : r;
      }
      function wAe(r, s) {
        return !!(Yn([TM(r, s), ct]).flags & 262144);
      }
      function C$(r, s) {
        const l = Lf([sm(r)], [s]), f = fb(r.mapper, l);
        return _u(Ji(xh(r.target || r), f), !0, y3e(r) > 0 || (_b(r) ? PP(ob(r)) > 0 : Prt(r, s)));
      }
      function Prt(r, s) {
        const l = xu(s);
        return !!l && _t(co(r), (f) => !!(f.flags & 16777216) && qa(kC(f, 19456), l));
      }
      function Ff(r, s, l = 0, f, m, y) {
        return J1(r, s, l, f, m, y) || (f ? rt : Re);
      }
      function PAe(r, s) {
        return cf(r, (l) => {
          if (l.flags & 3072) {
            const f = Ep(l);
            if (eh(f)) {
              const m = +f;
              return m >= 0 && m < s;
            }
          }
          return !1;
        });
      }
      function J1(r, s, l = 0, f, m, y) {
        if (r === rr || s === rr) return rr;
        if (r = dp(r), tNe(r) && !(s.flags & 12) && Cu(s, 96) && (s = Cr), L.noUncheckedIndexedAccess && l & 32 && (l |= 1), VT(s) || (f && f.kind !== 200 ? U1(r) && !PAe(s, ype(r.target)) : UT(r) && !(Ls(r) && PAe(s, ype(r.target))) || Xfe(r))) {
          if (r.flags & 3) return r;
          const O = l & 1, J = r.id + "," + s.id + "," + O + JT(m, y);
          let V = Lr.get(J);
          return V || Lr.set(J, V = krt(r, s, O, m, y)), V;
        }
        const x = AP(r);
        if (s.flags & 134217728 && !(s.flags & 256)) {
          const O = [];
          let J = !1;
          for (const V of s.types) {
            const Y = CAe(r, x, V, s, f, l | (J ? 128 : 0));
            if (Y) O.push(Y);
            else if (f) J = !0;
            else return;
          }
          return J ? void 0 : l & 4 ? Ss(O, 0, m, y) : Yn(O, 1, m, y);
        }
        return CAe(r, x, s, s, f, l | 72);
      }
      function AAe(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = Di(r.objectType), f = Di(r.indexType), m = EC(r);
          s.resolvedType = Ff(l, f, 0, r, m, o4(m));
        }
        return s.resolvedType;
      }
      function Dpe(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = Lp(32, r.symbol);
          l.declaration = r, l.aliasSymbol = EC(r), l.aliasTypeArguments = o4(l.aliasSymbol), s.resolvedType = l, pp(l);
        }
        return s.resolvedType;
      }
      function f0(r) {
        return r.flags & 16777216 ? f0(r.baseType) : r.flags & 33554432 && (r.objectType.flags & 16777216 || r.indexType.flags & 16777216) ? Ff(f0(r.objectType), f0(r.indexType)) : r;
      }
      function NAe(r) {
        return fk(r) && It(r.elements) > 0 && !_t(r.elements, (s) => QO(s) || YO(s) || w6(s) && !!(s.questionToken || s.dotDotDotToken));
      }
      function IAe(r, s) {
        return _b(r) || s && Ls(r) && _t(J2(r), _b);
      }
      function wpe(r, s, l, f, m) {
        let y, x, O = 0;
        for (; ; ) {
          if (O === 1e3)
            return We(k, p.Type_instantiation_is_excessively_deep_and_possibly_infinite), rt;
          const V = Ji(f0(r.checkType), s), Y = Ji(r.extendsType, s);
          if (V === rt || Y === rt) return rt;
          if (V === rr || Y === rr) return rr;
          const be = pD(r.node.checkType), me = pD(r.node.extendsType), Je = NAe(be) && NAe(me) && It(be.elements) === It(me.elements), gt = IAe(V, Je);
          let ht;
          if (r.inferTypeParameters) {
            const mr = z8(r.inferTypeParameters, void 0, 0);
            s && (mr.nonFixingMapper = fb(mr.nonFixingMapper, s)), gt || wh(mr.inferences, V, Y, 1536), ht = s ? fb(mr.mapper, s) : mr.mapper;
          }
          const ir = ht ? Ji(r.extendsType, ht) : Y;
          if (!gt && !IAe(ir, Je)) {
            if (!(ir.flags & 3) && (V.flags & 1 || !qa(I8(V), I8(ir)))) {
              (V.flags & 1 || l && !(ir.flags & 262144) && gp(I8(ir), (br) => qa(br, I8(V)))) && (x || (x = [])).push(Ji(Di(r.node.trueType), ht || s));
              const mr = Di(r.node.falseType);
              if (mr.flags & 67108864) {
                const br = mr.root;
                if (br.node.parent === r.node && (!br.isDistributive || br.checkType === r.checkType)) {
                  r = br;
                  continue;
                }
                if (J(mr, s)) continue;
              }
              y = Ji(mr, s);
              break;
            }
            if (ir.flags & 3 || qa(HT(V), HT(ir))) {
              const mr = Di(r.node.trueType), br = ht || s;
              if (J(mr, br)) continue;
              y = Ji(mr, br);
              break;
            }
          }
          y = sa(67108864), y.root = r, y.checkType = Ji(r.checkType, s), y.extendsType = Ji(r.extendsType, s), y.mapper = s, y.combinedMapper = ht, y.aliasSymbol = f || r.aliasSymbol, y.aliasTypeArguments = f ? m : p0(r.aliasTypeArguments, s);
          break;
        }
        return x ? Yn(kr(x, y)) : y;
        function J(V, Y) {
          if (V.flags & 67108864 && Y) {
            const be = V.root;
            if (be.outerTypeParameters) {
              const me = fb(V.mapper, Y), Je = or(be.outerTypeParameters, (ir) => by(ir, me)), gt = Lf(be.outerTypeParameters, Je), ht = be.isDistributive ? by(be.checkType, gt) : void 0;
              if (!ht || ht === be.checkType || !(ht.flags & 134479872))
                return r = be, s = gt, f = void 0, m = void 0, be.aliasSymbol && O++, !0;
            }
          }
          return !1;
        }
      }
      function z1(r) {
        return r.resolvedTrueType || (r.resolvedTrueType = Ji(Di(r.root.node.trueType), r.mapper));
      }
      function W1(r) {
        return r.resolvedFalseType || (r.resolvedFalseType = Ji(Di(r.root.node.falseType), r.mapper));
      }
      function Art(r) {
        return r.resolvedInferredTrueType || (r.resolvedInferredTrueType = r.combinedMapper ? Ji(Di(r.root.node.trueType), r.combinedMapper) : z1(r));
      }
      function Ppe(r) {
        let s;
        return r.locals && r.locals.forEach((l) => {
          l.flags & 262144 && (s = kr(s, Oo(l)));
        }), s;
      }
      function Nrt(r) {
        return r.isDistributive && (BM(r.checkType, r.node.trueType) || BM(r.checkType, r.node.falseType));
      }
      function Irt(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = Di(r.checkType), f = EC(r), m = o4(f), y = Vl(r, !0), x = m ? y : dn(y, (J) => BM(J, r)), O = {
            node: r,
            checkType: l,
            extendsType: Di(r.extendsType),
            isDistributive: !!(l.flags & 524288),
            inferTypeParameters: Ppe(r),
            outerTypeParameters: x,
            instantiations: void 0,
            aliasSymbol: f,
            aliasTypeArguments: m
          };
          s.resolvedType = wpe(O, void 0, !1), x && (O.instantiations = /* @__PURE__ */ new Map(), O.instantiations.set(ld(x), s.resolvedType));
        }
        return s.resolvedType;
      }
      function Ort(r) {
        const s = Pn(r);
        return s.resolvedType || (s.resolvedType = sb(mn(r.typeParameter))), s.resolvedType;
      }
      function OAe(r) {
        return Fe(r) ? [r] : kr(OAe(r.left), r.right);
      }
      function FAe(r) {
        var s;
        const l = Pn(r);
        if (!l.resolvedType) {
          if (!Bh(r))
            return We(r.argument, p.String_literal_expected), l.resolvedSymbol = it, l.resolvedType = rt;
          const f = r.isTypeOf ? 111551 : r.flags & 16777216 ? 900095 : 788968, m = Ru(r, r.argument.literal);
          if (!m)
            return l.resolvedSymbol = it, l.resolvedType = rt;
          const y = !!((s = m.exports) != null && s.get("export=")), x = Af(m, !1);
          if (Nc(r.qualifier))
            x.flags & f ? l.resolvedType = LAe(r, l, x, f) : (We(r, f === 111551 ? p.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here : p.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0, r.argument.literal.text), l.resolvedSymbol = it, l.resolvedType = rt);
          else {
            const O = OAe(r.qualifier);
            let J = x, V;
            for (; V = O.shift(); ) {
              const Y = O.length ? 1920 : f, be = ys(zc(J)), me = r.isTypeOf || rn(r) && y ? ms(ft(be), V.escapedText, !1, !0) : void 0, Je = (r.isTypeOf ? void 0 : Ku(Tu(be), V.escapedText, Y)) ?? me;
              if (!Je)
                return We(V, p.Namespace_0_has_no_exported_member_1, py(J), Do(V)), l.resolvedType = rt;
              Pn(V).resolvedSymbol = Je, Pn(V.parent).resolvedSymbol = Je, J = Je;
            }
            l.resolvedType = LAe(r, l, J, f);
          }
        }
        return l.resolvedType;
      }
      function LAe(r, s, l, f) {
        const m = zc(l);
        return s.resolvedSymbol = m, f === 111551 ? N8e(ft(l), r) : b$(r, m);
      }
      function MAe(r) {
        const s = Pn(r);
        if (!s.resolvedType) {
          const l = EC(r);
          if (!r.symbol || Eg(r.symbol).size === 0 && !l) s.resolvedType = ou;
          else {
            let f = Lp(16, r.symbol);
            f.aliasSymbol = l, f.aliasTypeArguments = o4(l), zS(r) && r.isArrayType && (f = Ju(f)), s.resolvedType = f;
          }
        }
        return s.resolvedType;
      }
      function EC(r) {
        let s = r.parent;
        for (; FS(s) || wv(s) || Tv(s) && s.operator === 148; ) s = s.parent;
        return pA(s) ? mn(s) : void 0;
      }
      function o4(r) {
        return r ? e_(r) : void 0;
      }
      function E$(r) {
        return !!(r.flags & 1048576) && !I_(r);
      }
      function Ape(r) {
        return d0(r) || !!(r.flags & 14925292);
      }
      function Npe(r, s) {
        if (!(r.flags & 134217728)) return r;
        if (hr(r.types, Ape)) return xr(r.types, d0) || Yi;
        const l = xr(r.types, (m) => !Ape(m));
        if (!l || xr(r.types, (m) => m !== l && !Ape(m))) return r;
        return f(l);
        function f(m) {
          const y = Ka();
          for (const O of co(m)) if (!(kp(O) & 6)) {
            if (D$(O)) {
              const J = O.flags & 65536 && !(O.flags & 32768), V = Fs(16777220, O.escapedName, Wfe(O) | (s ? 8 : 0));
              V.links.type = J ? $e : _u(ft(O), !0), V.declarations = O.declarations, V.links.nameType = Wi(O).nameType, V.links.syntheticOrigin = O, y.set(O.escapedName, V);
            }
          }
          const x = Yo(m.symbol, y, Te, Te, Bu(m));
          return x.objectFlags |= 131200, x;
        }
      }
      function z2(r, s, l, f, m) {
        if (r.flags & 1 || s.flags & 1) return Ve;
        if (r.flags & 2 || s.flags & 2) return Re;
        if (r.flags & 262144) return s;
        if (s.flags & 262144) return r;
        if (r = Npe(r, m), r.flags & 134217728) return OM([r, s]) ? sc(r, (V) => z2(V, s, l, f, m)) : rt;
        if (s = Npe(s, m), s.flags & 134217728) return OM([r, s]) ? sc(s, (V) => z2(r, V, l, f, m)) : rt;
        if (s.flags & 14925280) return r;
        if (UT(r) || UT(s)) {
          if (d0(r)) return s;
          if (r.flags & 268435456) {
            const V = r.types, Y = V[V.length - 1];
            if (E$(Y) && E$(s)) return Ss(zi(V.slice(0, V.length - 1), [z2(Y, s, l, f, m)]));
          }
          return Ss([r, s]);
        }
        const y = Ka(), x = /* @__PURE__ */ new Set(), O = r === Yi ? Bu(s) : p3e([r, s]);
        for (const V of co(s)) kp(V) & 6 ? x.add(V.escapedName) : D$(V) && y.set(V.escapedName, Ipe(V, m));
        for (const V of co(r))
          if (!(x.has(V.escapedName) || !D$(V)))
            if (y.has(V.escapedName)) {
              const Y = y.get(V.escapedName), be = ft(Y);
              if (Y.flags & 16777216) {
                const me = zi(V.declarations, Y.declarations), Je = Fs(4 | V.flags & 16777216, V.escapedName), gt = ft(V), ht = q$(gt), ir = q$(be);
                Je.links.type = ht === ir ? gt : Yn([gt, ir], 2), Je.links.leftSpread = V, Je.links.rightSpread = Y, Je.declarations = me, Je.links.nameType = Wi(V).nameType, y.set(V.escapedName, Je);
              }
            } else y.set(V.escapedName, Ipe(V, m));
        const J = Yo(l, y, Te, Te, el(O, (V) => Frt(V, m)));
        return J.objectFlags |= 2228352 | f, J;
      }
      function D$(r) {
        var s;
        return !_t(r.declarations, qu) && (!(r.flags & 106496) || !((s = r.declarations) != null && s.some((l) => Zn(l.parent))));
      }
      function Ipe(r, s) {
        const l = r.flags & 65536 && !(r.flags & 32768);
        if (!l && s === pm(r)) return r;
        const f = Fs(4 | r.flags & 16777216, r.escapedName, Wfe(r) | (s ? 8 : 0));
        return f.links.type = l ? $e : ft(r), f.declarations = r.declarations, f.links.nameType = Wi(r).nameType, f.links.syntheticOrigin = r, f;
      }
      function Frt(r, s) {
        return r.isReadonly !== s ? Ch(r.keyType, r.type, s, r.declaration, r.components) : r;
      }
      function LM(r, s, l, f) {
        const m = Vs(r, l);
        return m.value = s, m.regularType = f || m, m;
      }
      function DC(r) {
        if (r.flags & 80896) {
          if (!r.freshType) {
            const s = LM(r.flags, r.value, r.symbol, r);
            s.freshType = s, r.freshType = s;
          }
          return r.freshType;
        }
        return r;
      }
      function ku(r) {
        return r.flags & 80896 ? r.regularType : r.flags & 134217728 ? r.regularType || (r.regularType = sc(r, ku)) : r;
      }
      function W2(r) {
        return !!(r.flags & 80896) && r.freshType === r;
      }
      function sf(r) {
        let s;
        return zn.get(r) || (zn.set(r, s = LM(1024, r)), s);
      }
      function cm(r) {
        let s;
        return na.get(r) || (na.set(r, s = LM(2048, r)), s);
      }
      function MM(r) {
        let s;
        const l = Ub(r);
        return Ea.get(l) || (Ea.set(l, s = LM(4096, r)), s);
      }
      function Lrt(r, s, l) {
        let f;
        const m = `${s}${typeof r == "string" ? "@" : "#"}${r}`, y = 32768 | (typeof r == "string" ? 1024 : 2048);
        return Da.get(m) || (Da.set(m, f = LM(y, r, l)), f);
      }
      function Mrt(r) {
        if (r.literal.kind === 106) return vr;
        const s = Pn(r);
        return s.resolvedType || (s.resolvedType = ku(aa(r.literal))), s.resolvedType;
      }
      function Rrt(r) {
        const s = Vs(16384, r);
        return s.escapedName = `__@${s.symbol.escapedName}@${ss(s.symbol)}`, s;
      }
      function Ope(r) {
        if (rn(r) && wv(r)) {
          const s = Fb(r);
          s && (r = jx(s) || s);
        }
        if (TK(r)) {
          const s = T5(r) ? Nf(r.left) : Nf(r);
          if (s) {
            const l = Wi(s);
            return l.uniqueESSymbolType || (l.uniqueESSymbolType = Rrt(s));
          }
        }
        return $t;
      }
      function jrt(r) {
        const s = c_(r, !1, !1), l = s && s.parent;
        if (l && (Zn(l) || l.kind === 265) && !es(s) && (!yc(s) || Lb(r, s.body)))
          return Rp(mn(l)).thisType;
        if (l && bs(l) && un(l.parent) && qc(l.parent) === 6) return Rp(Nf(l.parent.left).parent).thisType;
        const f = r.flags & 16777216 ? fv(r) : void 0;
        return f && Lo(f) && un(f.parent) && qc(f.parent) === 3 ? Rp(Nf(f.parent.left).parent).thisType : ng(s) && Lb(r, s.body) ? Rp(mn(s)).thisType : (We(r, p.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface), rt);
      }
      function Fpe(r) {
        const s = Pn(r);
        return s.resolvedType || (s.resolvedType = jrt(r)), s.resolvedType;
      }
      function RAe(r) {
        return Di(RM(r.type) || r.type);
      }
      function RM(r) {
        switch (r.kind) {
          case 197:
            return RM(r.type);
          case 190:
            if (r.elements.length === 1 && (r = r.elements[0], r.kind === 192 || r.kind === 203 && r.dotDotDotToken))
              return RM(r.type);
            break;
          case 189:
            return r.elementType;
        }
      }
      function Brt(r) {
        const s = Pn(r);
        return s.resolvedType || (s.resolvedType = r.dotDotDotToken ? RAe(r) : _u(Di(r.type), !0, !!r.questionToken));
      }
      function Di(r) {
        return mtt(jAe(r), r);
      }
      function jAe(r) {
        switch (r.kind) {
          case 133:
          case 313:
          case 314:
            return Ve;
          case 159:
            return Re;
          case 154:
            return Cr;
          case 150:
            return et;
          case 163:
            return kt;
          case 136:
            return Jt;
          case 155:
            return $t;
          case 116:
            return Qt;
          case 157:
            return $e;
          case 106:
            return vr;
          case 146:
            return ct;
          case 151:
            return r.flags & 524288 && !$ ? Ve : cs;
          case 141:
            return j;
          case 198:
          case 110:
            return Fpe(r);
          case 202:
            return Mrt(r);
          case 184:
            return T$(r);
          case 183:
            return r.assertsModifier ? Qt : Jt;
          case 234:
            return T$(r);
          case 187:
            return H3e(r);
          case 189:
          case 190:
            return Htt(r);
          case 191:
            return Ytt(r);
          case 193:
            return srt(r);
          case 194:
            return drt(r);
          case 315:
            return gtt(r);
          case 317:
            return _u(Di(r.type));
          case 203:
            return Brt(r);
          case 197:
          case 316:
          case 310:
            return Di(r.type);
          case 192:
            return RAe(r);
          case 319:
            return n_t(r);
          case 185:
          case 186:
          case 188:
          case 323:
          case 318:
          case 324:
            return MAe(r);
          case 199:
            return yrt(r);
          case 200:
            return AAe(r);
          case 201:
            return Dpe(r);
          case 195:
            return Irt(r);
          case 196:
            return Ort(r);
          case 204:
            return vrt(r);
          case 206:
            return FAe(r);
          case 80:
          case 167:
          case 212:
            const s = Wp(r);
            return s ? Oo(s) : rt;
          default:
            return rt;
        }
      }
      function w$(r, s, l) {
        if (r && r.length) for (let f = 0; f < r.length; f++) {
          const m = r[f], y = l(m, s);
          if (m !== y) {
            const x = f === 0 ? [] : r.slice(0, f);
            for (x.push(y), f++; f < r.length; f++) x.push(l(r[f], s));
            return x;
          }
        }
        return r;
      }
      function p0(r, s) {
        return w$(r, s, Ji);
      }
      function P$(r, s) {
        return w$(r, s, GT);
      }
      function BAe(r, s) {
        return w$(r, s, Qrt);
      }
      function Lf(r, s) {
        return r.length === 1 ? U2(r[0], s ? s[0] : Ve) : JAe(r, s);
      }
      function by(r, s) {
        switch (s.kind) {
          case 0:
            return r === s.source ? s.target : r;
          case 1: {
            const f = s.sources, m = s.targets;
            for (let y = 0; y < f.length; y++) if (r === f[y]) return m ? m[y] : Ve;
            return r;
          }
          case 2: {
            const f = s.sources, m = s.targets;
            for (let y = 0; y < f.length; y++) if (r === f[y]) return m[y]();
            return r;
          }
          case 3:
            return s.func(r);
          case 4:
          case 5:
            const l = by(r, s.mapper1);
            return l !== r && s.kind === 4 ? Ji(l, s.mapper2) : by(l, s.mapper2);
        }
      }
      function U2(r, s) {
        return E.attachDebugPrototypeIfDebug({
          kind: 0,
          source: r,
          target: s
        });
      }
      function JAe(r, s) {
        return E.attachDebugPrototypeIfDebug({
          kind: 1,
          sources: r,
          targets: s
        });
      }
      function jM(r, s) {
        return E.attachDebugPrototypeIfDebug({
          kind: 3,
          func: r,
          debugInfo: E.isDebugging ? s : void 0
        });
      }
      function Lpe(r, s) {
        return E.attachDebugPrototypeIfDebug({
          kind: 2,
          sources: r,
          targets: s
        });
      }
      function A$(r, s, l) {
        return E.attachDebugPrototypeIfDebug({
          kind: r,
          mapper1: s,
          mapper2: l
        });
      }
      function zAe(r) {
        return Lf(r, void 0);
      }
      function Jrt(r, s) {
        const l = r.inferences.slice(s);
        return Lf(or(l, (f) => f.typeParameter), or(l, () => Re));
      }
      function zrt(r) {
        return r.outerReturnMapper ?? (r.outerReturnMapper = WAe(r.returnMapper, SNe(r).mapper));
      }
      function fb(r, s) {
        return r ? A$(4, r, s) : s;
      }
      function WAe(r, s) {
        return r ? A$(5, r, s) : s;
      }
      function qT(r, s, l) {
        return l ? A$(5, U2(r, s), l) : U2(r, s);
      }
      function A8(r, s, l) {
        return r ? A$(5, r, U2(s, l)) : U2(s, l);
      }
      function Wrt(r) {
        return !r.constraint && !y$(r) || r.constraint === Qo ? r : r.restrictiveInstantiation || (r.restrictiveInstantiation = fp(r.symbol), r.restrictiveInstantiation.constraint = Qo, r.restrictiveInstantiation);
      }
      function Mpe(r) {
        const s = fp(r.symbol);
        return s.target = r, s;
      }
      function UAe(r, s) {
        return x8(r.kind, r.parameterName, r.parameterIndex, Ji(r.type, s));
      }
      function GT(r, s, l) {
        let f;
        if (r.typeParameters && !l) {
          f = or(r.typeParameters, Mpe), s = fb(Lf(r.typeParameters, f), s);
          for (const y of f) y.mapper = s;
        }
        const m = Zm(r.declaration, f, r.thisParameter && Rpe(r.thisParameter, s), w$(r.parameters, s, Rpe), void 0, void 0, r.minArgumentCount, r.flags & 167);
        return m.target = r, m.mapper = s, m;
      }
      function Rpe(r, s) {
        const l = Wi(r);
        if (l.type && !q1(l.type) && (!(r.flags & 65536) || l.writeType && !q1(l.writeType)))
          return r;
        gc(r) & 1 && (r = l.target, s = fb(l.mapper, s));
        const f = Fs(r.flags, r.escapedName, 1 | gc(r) & 53256);
        return f.declarations = r.declarations, f.parent = r.parent, f.links.target = r, f.links.mapper = s, r.valueDeclaration && (f.valueDeclaration = r.valueDeclaration), l.nameType && (f.links.nameType = l.nameType), f;
      }
      function Urt(r, s, l, f) {
        const m = r.objectFlags & 4 || r.objectFlags & 8388608 ? r.node : r.symbol.declarations[0], y = Pn(m), x = r.objectFlags & 4 ? y.resolvedType : r.objectFlags & 64 ? r.target : r;
        let O = y.outerTypeParameters;
        if (!O) {
          let J = Vl(m, !0);
          if (ng(m)) {
            const Y = A3e(m);
            J = Mn(J, Y);
          }
          O = J || Te;
          const V = r.objectFlags & 8388612 ? [m] : r.symbol.declarations;
          O = (x.objectFlags & 8388612 || x.symbol.flags & 8192 || x.symbol.flags & 2048) && !x.aliasTypeArguments ? dn(O, (Y) => _t(V, (be) => BM(Y, be))) : O, y.outerTypeParameters = O;
        }
        if (O.length) {
          const J = fb(r.mapper, s), V = or(O, (gt) => by(gt, J)), Y = l || r.aliasSymbol, be = l ? f : p0(r.aliasTypeArguments, s), me = ld(V) + JT(Y, be);
          x.instantiations || (x.instantiations = /* @__PURE__ */ new Map(), x.instantiations.set(ld(O) + JT(x.aliasSymbol, x.aliasTypeArguments), x));
          let Je = x.instantiations.get(me);
          if (!Je) {
            let gt = Lf(O, V);
            x.objectFlags & 134217728 && s && (gt = fb(gt, s)), Je = x.objectFlags & 4 ? npe(r.target, r.node, gt, Y, be) : x.objectFlags & 32 ? qrt(x, gt, Y, be) : jpe(x, gt, Y, be), x.instantiations.set(me, Je);
            const ht = yn(Je);
            if (Je.flags & 403963917 && !(ht & 524288)) {
              const ir = _t(V, q1);
              yn(Je) & 524288 || (ht & 52 ? Je.objectFlags |= 524288 | (ir ? 1048576 : 0) : Je.objectFlags |= ir ? 0 : 524288);
            }
          }
          return Je;
        }
        return r;
      }
      function Vrt(r) {
        return !(r.parent.kind === 184 && r.parent.typeArguments && r === r.parent.typeName || r.parent.kind === 206 && r.parent.typeArguments && r === r.parent.qualifier);
      }
      function BM(r, s) {
        if (r.symbol && r.symbol.declarations && r.symbol.declarations.length === 1) {
          const f = r.symbol.declarations[0].parent;
          for (let m = s; m !== f; m = m.parent) if (!m || m.kind === 242 || m.kind === 195 && Fa(m.extendsType, l)) return !0;
          return l(s);
        }
        return !0;
        function l(f) {
          switch (f.kind) {
            case 198:
              return !!r.isThisType;
            case 80:
              return !r.isThisType && Sm(f) && Vrt(f) && jAe(f) === r;
            case 187:
              const m = f.exprName, y = x_(m);
              if (!Zy(y)) {
                const x = t_(y), O = r.symbol.declarations[0], J = O.kind === 169 ? O.parent : r.isThisType ? O : void 0;
                if (x.declarations && J) return _t(x.declarations, (V) => Lb(V, J)) || _t(f.typeArguments, l);
              }
              return !0;
            case 175:
            case 174:
              return !f.type && !!f.body || _t(f.typeParameters, l) || _t(f.parameters, l) || !!f.type && l(f.type);
          }
          return !!Fa(f, l);
        }
      }
      function N8(r) {
        const s = pp(r);
        if (s.flags & 2097152) {
          const l = f0(s.type);
          if (l.flags & 524288) return l;
        }
      }
      function qrt(r, s, l, f) {
        const m = N8(r);
        if (m) {
          const x = Ji(m, s);
          if (m !== x) return GNe(dp(x), y, l, f);
        }
        return Ji(pp(r), s) === rr ? rr : jpe(r, s, l, f);
        function y(x) {
          if (x.flags & 387448835 && x !== rr && !hi(x)) {
            if (!r.declaration.nameType) {
              let O;
              if (Jp(x) || x.flags & 1 && zt(m, 4) < 0 && (O = g_(m)) && cf(O, db)) return Hrt(x, r, qT(m, x, s));
              if (Ls(x)) return Grt(x, r, m, s);
              if (k3e(x)) return Ss(or(x.types, y));
            }
            return jpe(r, qT(m, x, s));
          }
          return x;
        }
      }
      function VAe(r, s) {
        return s & 1 ? !0 : s & 2 ? !1 : r;
      }
      function Grt(r, s, l, f) {
        const m = r.target.elementFlags, y = r.target.fixedLength, x = y ? qT(l, r, f) : f, O = or(J2(r), (be, me) => {
          const Je = m[me];
          return me < y ? qAe(s, sf("" + me), !!(Je & 2), x) : Je & 8 ? Ji(s, qT(l, be, f)) : GM(Ji(s, qT(l, Ju(be), f))) ?? Re;
        }), J = Dg(s), V = J & 4 ? or(m, (be) => be & 1 ? 2 : be) : J & 8 ? or(m, (be) => be & 2 ? 1 : be) : m, Y = VAe(r.target.readonly, Dg(s));
        return Gi(O, rt) ? rt : Pg(O, V, Y, r.target.labeledElementDeclarations);
      }
      function Hrt(r, s, l) {
        const f = qAe(s, et, !0, l);
        return hi(f) ? rt : Ju(f, VAe(jP(r), Dg(s)));
      }
      function qAe(r, s, l, f) {
        const m = A8(f, sm(r), s), y = Ji(xh(r.target || r), m), x = Dg(r);
        return Q && x & 4 && !Wc(y, 20) ? V1(y, !0) : Q && x & 8 && l ? zp(y, 524288) : y;
      }
      function jpe(r, s, l, f) {
        E.assert(r.symbol, "anonymous type must have symbol to be instantiated");
        const m = Lp(r.objectFlags & -1572865 | 64, r.symbol);
        if (r.objectFlags & 32) {
          m.declaration = r.declaration;
          const y = sm(r), x = Mpe(y);
          m.typeParameter = x, s = fb(U2(y, x), s), x.mapper = s;
        }
        return r.objectFlags & 8388608 && (m.node = r.node), m.target = r, m.mapper = s, m.aliasSymbol = l || r.aliasSymbol, m.aliasTypeArguments = l ? f : p0(r.aliasTypeArguments, s), m.objectFlags |= m.aliasTypeArguments ? E8(m.aliasTypeArguments) : 0, m;
      }
      function Bpe(r, s, l, f, m) {
        const y = r.root;
        if (y.outerTypeParameters) {
          const x = or(y.outerTypeParameters, (V) => by(V, s)), O = (l ? "C" : "") + ld(x) + JT(f, m);
          let J = y.instantiations.get(O);
          if (!J) {
            const V = Lf(y.outerTypeParameters, x), Y = y.checkType, be = y.isDistributive ? dp(by(Y, V)) : void 0;
            J = be && Y !== be && be.flags & 134479872 ? GNe(be, (me) => wpe(y, qT(Y, me, V), l), f, m) : wpe(y, V, l, f, m), y.instantiations.set(O, J);
          }
          return J;
        }
        return r;
      }
      function Ji(r, s) {
        return r && s ? GAe(r, s, void 0, void 0) : r;
      }
      function GAe(r, s, l, f) {
        var m;
        if (!q1(r)) return r;
        if (S === 100 || h >= 5e6)
          return (m = sn) == null || m.instant(sn.Phase.CheckTypes, "instantiateType_DepthLimit", {
            typeId: r.id,
            instantiationDepth: S,
            instantiationCount: h
          }), We(k, p.Type_instantiation_is_excessively_deep_and_possibly_infinite), rt;
        const y = Lat(s);
        y === -1 && Oat(s);
        const x = r.id + JT(l, f), O = h2[y !== -1 ? y : Um - 1], J = O.get(x);
        if (J) return J;
        g++, h++, S++;
        const V = $rt(r, s, l, f);
        return y === -1 ? Fat() : O.set(x, V), S--, V;
      }
      function $rt(r, s, l, f) {
        const m = r.flags;
        if (m & 524288) return by(r, s);
        if (m & 1048576) {
          const y = r.objectFlags;
          if (y & 52) {
            if (y & 4 && !r.node) {
              const x = r.resolvedTypeArguments, O = p0(x, s);
              return O !== x ? gpe(r.target, O) : r;
            }
            return y & 1024 ? Xrt(r, s) : Urt(r, s, l, f);
          }
          return r;
        }
        if (m & 402653184) {
          const y = r.flags & 134217728 ? r.origin : void 0, x = y && y.flags & 402653184 ? y.types : r.types, O = p0(x, s);
          if (O === x && l === r.aliasSymbol) return r;
          const J = l || r.aliasSymbol, V = l ? f : p0(r.aliasTypeArguments, s);
          return m & 268435456 || y && y.flags & 268435456 ? Ss(O, 0, J, V) : Yn(O, 1, J, V);
        }
        if (m & 2097152) return eg(Ji(r.type, s));
        if (m & 4194304) return zT(r.texts, p0(r.types, s));
        if (m & 8388608) return CC(r.symbol, Ji(r.type, s));
        if (m & 33554432) {
          const y = l || r.aliasSymbol, x = l ? f : p0(r.aliasTypeArguments, s);
          return Ff(Ji(r.objectType, s), Ji(r.indexType, s), r.accessFlags, void 0, y, x);
        }
        if (m & 67108864) return Bpe(r, fb(r.mapper, s), !1, l, f);
        if (m & 16777216) {
          const y = Ji(r.baseType, s);
          if (a4(r)) return ipe(y);
          const x = Ji(r.constraint, s);
          return y.flags & 34078720 && _b(x) ? spe(y, x) : x.flags & 3 || qa(HT(y), HT(x)) ? y : y.flags & 34078720 ? spe(y, x) : Ss([x, y]);
        }
        return r;
      }
      function Xrt(r, s) {
        const l = Ji(r.mappedType, s);
        if (!(yn(l) & 32)) return r;
        const f = Ji(r.constraintType, s);
        if (!(f.flags & 2097152)) return r;
        const m = kNe(Ji(r.source, s), l, f);
        return m || r;
      }
      function I8(r) {
        return r.flags & 12976127 ? r : r.permissiveInstantiation || (r.permissiveInstantiation = Ji(r, Yc));
      }
      function HT(r) {
        return r.flags & 12976127 ? r : (r.restrictiveInstantiation || (r.restrictiveInstantiation = Ji(r, _o), r.restrictiveInstantiation.restrictiveInstantiation = r.restrictiveInstantiation), r.restrictiveInstantiation);
      }
      function Qrt(r, s) {
        return Ch(r.keyType, Ji(r.type, s), r.isReadonly, r.declaration, r.components);
      }
      function Xf(r) {
        switch (E.assert(r.kind !== 175 || Hp(r)), r.kind) {
          case 219:
          case 220:
          case 175:
          case 263:
            return HAe(r);
          case 211:
            return _t(r.properties, Xf);
          case 210:
            return _t(r.elements, Xf);
          case 228:
            return Xf(r.whenTrue) || Xf(r.whenFalse);
          case 227:
            return (r.operatorToken.kind === 57 || r.operatorToken.kind === 61) && (Xf(r.left) || Xf(r.right));
          case 304:
            return Xf(r.initializer);
          case 218:
            return Xf(r.expression);
          case 293:
            return _t(r.properties, Xf) || qd(r.parent) && _t(r.parent.parent.children, Xf);
          case 292: {
            const { initializer: s } = r;
            return !!s && Xf(s);
          }
          case 295:
          case 230: {
            const { expression: s } = r;
            return !!s && Xf(s);
          }
        }
        return !1;
      }
      function HAe(r) {
        return AO(r) || Yrt(r) || Zrt(r);
      }
      function Yrt(r) {
        return r.typeParameters || yf(r) || !r.body ? !1 : r.body.kind !== 242 ? Xf(r.body) : !!Hy(r.body, (s) => !!s.expression && Xf(s.expression));
      }
      function Zrt(r) {
        return !!(Gc(r) & 1 && r.body && RB(r.body, Xf));
      }
      function N$(r) {
        return (r1(r) || Hp(r)) && HAe(r);
      }
      function $Ae(r) {
        if (r.flags & 1048576) {
          const s = om(r);
          if (s.constructSignatures.length || s.callSignatures.length) {
            const l = Lp(16, r.symbol);
            return l.members = s.members, l.properties = s.properties, l.callSignatures = Te, l.constructSignatures = Te, l.indexInfos = Te, l;
          }
        } else if (r.flags & 268435456) return Ss(or(r.types, $Ae));
        return r;
      }
      function Dh(r, s) {
        return tg(r, s, Lc);
      }
      function O8(r, s) {
        return tg(r, s, Lc) ? -1 : 0;
      }
      function Jpe(r, s) {
        return tg(r, s, Sc) ? -1 : 0;
      }
      function Krt(r, s) {
        return tg(r, s, cp) ? -1 : 0;
      }
      function V2(r, s) {
        return tg(r, s, cp);
      }
      function RP(r, s) {
        return tg(r, s, lp);
      }
      function qa(r, s) {
        return tg(r, s, Sc);
      }
      function pb(r, s) {
        return r.flags & 134217728 ? hr(r.types, (l) => pb(l, s)) : s.flags & 134217728 ? _t(s.types, (l) => pb(r, l)) : r.flags & 268435456 ? _t(r.types, (l) => pb(l, s)) : r.flags & 117964800 ? pb(xu(r) || Re, s) : Ag(s) ? !!(r.flags & 1179648) : s === io ? !!(r.flags & 1179648) && !Ag(r) : s === Qs ? !!(r.flags & 1048576) && bde(r) : Ks(r, vi(s)) || Jp(s) && !jP(s) && pb(r, bc);
      }
      function I$(r, s) {
        return tg(r, s, lu);
      }
      function F8(r, s) {
        return I$(r, s) || I$(s, r);
      }
      function zu(r, s, l, f, m, y) {
        return Bp(r, s, Sc, l, f, m, y);
      }
      function q2(r, s, l, f, m, y) {
        return zpe(r, s, Sc, l, f, m, y, void 0);
      }
      function zpe(r, s, l, f, m, y, x, O) {
        return tg(r, s, l) ? !0 : !f || !L8(m, r, s, l, y, x, O) ? Bp(r, s, l, f, y, x, O) : !1;
      }
      function XAe(r) {
        return !!(r.flags & 67108864 || r.flags & 268435456 && _t(r.types, XAe));
      }
      function L8(r, s, l, f, m, y, x) {
        if (!r || XAe(l)) return !1;
        if (!Bp(s, l, f, void 0) && ent(r, s, l, f, m, y, x)) return !0;
        switch (r.kind) {
          case 235:
            if (!lz(r)) break;
          case 295:
          case 218:
            return L8(r.expression, s, l, f, m, y, x);
          case 227:
            switch (r.operatorToken.kind) {
              case 64:
              case 28:
                return L8(r.right, s, l, f, m, y, x);
            }
            break;
          case 211:
            return cnt(r, s, l, f, y, x);
          case 210:
            return snt(r, s, l, f, y, x);
          case 293:
            return ant(r, s, l, f, y, x);
          case 220:
            return tnt(r, s, l, f, y, x);
        }
        return !1;
      }
      function ent(r, s, l, f, m, y, x) {
        const O = Pa(s, 0), J = Pa(s, 1);
        for (const V of [J, O]) if (_t(V, (Y) => {
          const be = ro(Y);
          return !(be.flags & 262145) && Bp(be, l, f, void 0);
        })) {
          const Y = x || {};
          zu(s, l, r, m, y, Y);
          const be = Y.errors[Y.errors.length - 1];
          return ts(be, Kr(r, V === J ? p.Did_you_mean_to_use_new_with_this_expression : p.Did_you_mean_to_call_this_expression)), !0;
        }
        return !1;
      }
      function tnt(r, s, l, f, m, y) {
        if (Wa(r.body) || _t(r.parameters, a5)) return !1;
        const x = nx(s);
        if (!x) return !1;
        const O = Pa(l, 0);
        if (!It(O)) return !1;
        const J = r.body, V = ro(x), Y = Yn(or(O, ro));
        if (!Bp(V, Y, f, void 0)) {
          const be = J && L8(J, V, Y, f, void 0, m, y);
          if (be) return be;
          const me = y || {};
          if (Bp(V, Y, f, J, void 0, m, me), me.errors)
            return l.symbol && It(l.symbol.declarations) && ts(me.errors[me.errors.length - 1], Kr(l.symbol.declarations[0], p.The_expected_type_comes_from_the_return_type_of_this_signature)), (Gc(r) & 2) === 0 && !xn(V, "then") && Bp(bR(V), Y, f, void 0) && ts(me.errors[me.errors.length - 1], Kr(r, p.Did_you_mean_to_mark_this_function_as_async)), !0;
        }
        return !1;
      }
      function QAe(r, s, l) {
        const f = J1(s, l);
        if (f) return f;
        if (s.flags & 134217728) {
          const m = iNe(r, s);
          if (m) return J1(m, l);
        }
      }
      function YAe(r, s) {
        sR(r, s, !1);
        const l = HP(r, 1);
        return G8(), l;
      }
      function JM(r, s, l, f, m, y) {
        let x = !1;
        for (const O of r) {
          const { errorNode: J, innerExpression: V, nameType: Y, errorMessage: be } = O;
          let me = QAe(s, l, Y);
          if (!me || me.flags & 33554432) continue;
          let Je = J1(s, Y);
          if (!Je) continue;
          const gt = k$(Y, void 0);
          if (!Bp(Je, me, f, void 0)) {
            const ht = V && L8(V, Je, me, f, void 0, m, y);
            if (x = !0, !ht) {
              const ir = y || {}, mr = V ? YAe(V, Je) : Je;
              if (ce && F$(mr, me)) {
                const br = Kr(J, p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target, Xr(mr), Xr(me));
                Ws.add(br), ir.errors = [br];
              } else {
                const br = !!(gt && (ms(l, gt) || it).flags & 16777216), Hr = !!(gt && (ms(s, gt) || it).flags & 16777216);
                me = h0(me, br), Je = h0(Je, br && Hr), Bp(mr, me, f, J, be, m, ir) && mr !== Je && Bp(Je, me, f, J, be, m, ir);
              }
              if (ir.errors) {
                const br = ir.errors[ir.errors.length - 1], Hr = Cp(Y) ? Ep(Y) : void 0, lr = Hr !== void 0 ? ms(l, Hr) : void 0;
                let ur = !1;
                if (!lr) {
                  const En = S8(l, Y);
                  En && En.declaration && !e.isSourceFileDefaultLibrary(Sr(En.declaration)) && (ur = !0, ts(br, Kr(En.declaration, p.The_expected_type_comes_from_this_index_signature)));
                }
                if (!ur && (lr && It(lr.declarations) || l.symbol && It(l.symbol.declarations))) {
                  const En = lr && It(lr.declarations) ? lr.declarations[0] : l.symbol.declarations[0];
                  e.isSourceFileDefaultLibrary(Sr(En)) || ts(br, Kr(En, p.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1, Hr && !(Y.flags & 16384) ? Ti(Hr) : Xr(Y), Xr(l)));
                }
              }
            }
          }
        }
        return x;
      }
      function rnt(r, s, l, f, m, y) {
        const x = rl(l, z$), O = rl(l, (Y) => !z$(Y)), J = O !== ct ? Wme(13, 0, O, void 0) : void 0;
        let V = !1;
        for (let Y = r.next(); !Y.done; Y = r.next()) {
          const { errorNode: be, innerExpression: me, nameType: Je, errorMessage: gt } = Y.value;
          let ht = J;
          const ir = x !== ct ? QAe(s, x, Je) : void 0;
          if (ir && !(ir.flags & 33554432) && (ht = J ? Yn([J, ir]) : ir), !ht) continue;
          let mr = J1(s, Je);
          if (!mr) continue;
          const br = k$(Je, void 0);
          if (!Bp(mr, ht, f, void 0)) {
            const Hr = me && L8(me, mr, ht, f, void 0, m, y);
            if (V = !0, !Hr) {
              const lr = y || {}, ur = me ? YAe(me, mr) : mr;
              if (ce && F$(ur, ht)) {
                const En = Kr(be, p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target, Xr(ur), Xr(ht));
                Ws.add(En), lr.errors = [En];
              } else {
                const En = !!(br && (ms(x, br) || it).flags & 16777216), si = !!(br && (ms(s, br) || it).flags & 16777216);
                ht = h0(ht, En), mr = h0(mr, En && si), Bp(ur, ht, f, be, gt, m, lr) && ur !== mr && Bp(mr, ht, f, be, gt, m, lr);
              }
            }
          }
        }
        return V;
      }
      function* nnt(r) {
        if (It(r.properties))
          for (const s of r.properties)
            hk(s) || Ude($A(s.name)) || (yield {
              errorNode: s.name,
              innerExpression: s.initializer,
              nameType: sf($A(s.name))
            });
      }
      function* int(r, s) {
        if (!It(r.children)) return;
        let l = 0;
        for (let f = 0; f < r.children.length; f++) {
          const m = r.children[f], y = ZAe(m, cm(f - l), s);
          y ? yield y : l++;
        }
      }
      function ZAe(r, s, l) {
        switch (r.kind) {
          case 295:
            return {
              errorNode: r,
              innerExpression: r.expression,
              nameType: s
            };
          case 12:
            if (r.containsOnlyTriviaWhiteSpaces) break;
            return {
              errorNode: r,
              innerExpression: void 0,
              nameType: s,
              errorMessage: l()
            };
          case 285:
          case 286:
          case 289:
            return {
              errorNode: r,
              innerExpression: r,
              nameType: s
            };
          default:
            return E.assertNever(r, "Found invalid jsx child");
        }
      }
      function ant(r, s, l, f, m, y) {
        let x = JM(nnt(r), s, l, f, m, y), O;
        if (qd(r.parent) && Im(r.parent.parent)) {
          const V = r.parent.parent, Y = cR(tx(r)), be = Y === void 0 ? "children" : Ti(Y), me = sf(be), Je = Ff(l, me), gt = d6(V.children);
          if (!It(gt)) return x;
          const ht = It(gt) > 1;
          let ir, mr;
          if (NM(!1) !== Ma) {
            const br = oAe(Ve);
            ir = rl(Je, (Hr) => qa(Hr, br)), mr = rl(Je, (Hr) => !qa(Hr, br));
          } else
            ir = rl(Je, z$), mr = rl(Je, (br) => !z$(br));
          if (ht) {
            if (ir !== ct) {
              const br = Pg(mX(V, 0));
              x = rnt(int(V, J), br, ir, f, m, y) || x;
            } else if (!tg(Ff(s, me), Je, f)) {
              x = !0;
              const br = We(V.openingElement.tagName, p.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided, be, Xr(Je));
              y && y.skipLogging && (y.errors || (y.errors = [])).push(br);
            }
          } else if (mr !== ct) {
            const br = gt[0], Hr = ZAe(br, me, J);
            Hr && (x = JM((function* () {
              yield Hr;
            })(), s, l, f, m, y) || x);
          } else if (!tg(Ff(s, me), Je, f)) {
            x = !0;
            const br = We(V.openingElement.tagName, p.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided, be, Xr(Je));
            y && y.skipLogging && (y.errors || (y.errors = [])).push(br);
          }
        }
        return x;
        function J() {
          if (!O) {
            const V = uc(r.parent.tagName), Y = cR(tx(r)), be = Y === void 0 ? "children" : Ti(Y), me = Ff(l, sf(be)), Je = p._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;
            O = {
              ...Je,
              key: "!!ALREADY FORMATTED!!",
              message: Qx(Je, V, be, Xr(me))
            };
          }
          return O;
        }
      }
      function* KAe(r, s) {
        const l = It(r.elements);
        if (l)
          for (let f = 0; f < l; f++) {
            if (BP(s) && !ms(s, "" + f)) continue;
            const m = r.elements[f];
            if (Al(m)) continue;
            const y = cm(f), x = kX(m);
            yield {
              errorNode: x,
              innerExpression: x,
              nameType: y
            };
          }
      }
      function snt(r, s, l, f, m, y) {
        if (l.flags & 12976124) return !1;
        if (BP(s)) return JM(KAe(r, l), s, l, f, m, y);
        sR(r, l, !1);
        const x = NIe(r, 1, !0);
        return G8(), BP(x) ? JM(KAe(r, l), x, l, f, m, y) : !1;
      }
      function* ont(r) {
        if (It(r.properties))
          for (const s of r.properties) {
            if (ih(s)) continue;
            const l = kC(mn(s), 19456);
            if (!(!l || l.flags & 262144))
              switch (s.kind) {
                case 179:
                case 178:
                case 175:
                case 305:
                  yield {
                    errorNode: s.name,
                    innerExpression: void 0,
                    nameType: l
                  };
                  break;
                case 304:
                  yield {
                    errorNode: s.name,
                    innerExpression: s.initializer,
                    nameType: l,
                    errorMessage: G3(s.name) ? p.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1 : void 0
                  };
                  break;
                default:
                  E.assertNever(s);
              }
          }
      }
      function cnt(r, s, l, f, m, y) {
        return l.flags & 12976124 ? !1 : JM(ont(r), s, l, f, m, y);
      }
      function eNe(r, s, l, f, m) {
        return Bp(r, s, lu, l, f, m);
      }
      function lnt(r, s, l) {
        return Wpe(r, s, l ? 4 : 0, !1, void 0, void 0, Jpe, void 0) !== 0;
      }
      function O$(r) {
        if (!r.typeParameters && (!r.thisParameter || Bi(hR(r.thisParameter))) && r.parameters.length === 1 && Qu(r)) {
          const s = hR(r.parameters[0]);
          return !!((Jp(s) ? Vo(s)[0] : s).flags & 262145 && ro(r).flags & 3);
        }
        return !1;
      }
      function Wpe(r, s, l, f, m, y, x, O) {
        if (r === s || !(l & 16 && O$(r)) && O$(s)) return -1;
        if (l & 16 && O$(r) && !O$(s)) return 0;
        const J = lf(s);
        if (!Ng(s) && (l & 8 ? Ng(r) || lf(r) > J : fm(r) > J))
          return f && !(l & 8) && m(p.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1, fm(r), J), 0;
        r.typeParameters && r.typeParameters !== s.typeParameters && (s = ltt(s), r = u8e(r, s, void 0, x));
        const V = lf(r), Y = e7(r), be = e7(s);
        (Y || be) && Ji(Y || be, O);
        const me = s.declaration ? s.declaration.kind : 0, Je = !(l & 3) && se && me !== 175 && me !== 174 && me !== 177;
        let gt = -1;
        const ht = lb(r);
        if (ht && ht !== Qt) {
          const br = lb(s);
          if (br) {
            const Hr = !Je && x(ht, br, !1) || x(br, ht, f);
            if (!Hr)
              return f && m(p.The_this_types_of_each_signature_are_incompatible), 0;
            gt &= Hr;
          }
        }
        const ir = Y || be ? Math.min(V, J) : Math.max(V, J), mr = Y || be ? ir - 1 : -1;
        for (let br = 0; br < ir; br++) {
          const Hr = br === mr ? L8e(r, br) : X2(r, br), lr = br === mr ? L8e(s, br) : X2(s, br);
          if (Hr && lr && (Hr !== lr || l & 8)) {
            const ur = l & 3 || c8e(r, br) ? void 0 : nx(g0(Hr)), En = l & 3 || c8e(s, br) ? void 0 : nx(g0(lr));
            let si = ur && En && !jp(ur) && !jp(En) && l4(Hr, 50331648) === l4(lr, 50331648) ? Wpe(En, ur, l & 8 | (Je ? 2 : 1), f, m, y, x, O) : !(l & 3) && !Je && x(Hr, lr, !1) || x(lr, Hr, f);
            if (si && l & 8 && br >= fm(r) && br < fm(s) && x(Hr, lr, !1) && (si = 0), !si)
              return f && m(p.Types_of_parameters_0_and_1_are_incompatible, Ti(qP(r, br)), Ti(qP(s, br))), 0;
            gt &= si;
          }
        }
        if (!(l & 4)) {
          const br = f$(s) ? Ve : s.declaration && ng(s.declaration) ? Rp(ys(s.declaration.symbol)) : ro(s);
          if (br === Qt || br === Ve) return gt;
          const Hr = f$(r) ? Ve : r.declaration && ng(r.declaration) ? Rp(ys(r.declaration.symbol)) : ro(r), lr = jp(s);
          if (lr) {
            const ur = jp(r);
            if (ur) gt &= unt(ur, lr, f, m, x);
            else if (kK(lr) || CK(lr))
              return f && m(p.Signature_0_must_be_a_type_predicate, I2(r)), 0;
          } else
            gt &= l & 1 && x(br, Hr, !1) || x(Hr, br, f), !gt && f && y && y(Hr, br);
        }
        return gt;
      }
      function unt(r, s, l, f, m) {
        if (r.kind !== s.kind)
          return l && (f(p.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard), f(p.Type_predicate_0_is_not_assignable_to_1, M1(r), M1(s))), 0;
        if ((r.kind === 1 || r.kind === 3) && r.parameterIndex !== s.parameterIndex)
          return l && (f(p.Parameter_0_is_not_in_the_same_position_as_parameter_1, r.parameterName, s.parameterName), f(p.Type_predicate_0_is_not_assignable_to_1, M1(r), M1(s))), 0;
        const y = r.type === s.type ? -1 : r.type && s.type ? m(r.type, s.type, l) : 0;
        return y === 0 && l && f(p.Type_predicate_0_is_not_assignable_to_1, M1(r), M1(s)), y;
      }
      function _nt(r, s) {
        const l = C8(r), f = C8(s), m = ro(l), y = ro(f);
        return y === Qt || tg(y, m, Sc) || tg(m, y, Sc) ? lnt(l, f, !0) : !1;
      }
      function Upe(r) {
        return r !== ac && r.properties.length === 0 && r.callSignatures.length === 0 && r.constructSignatures.length === 0 && r.indexInfos.length === 0;
      }
      function d0(r) {
        return r.flags & 1048576 ? !I_(r) && Upe(om(r)) : r.flags & 131072 ? !0 : r.flags & 134217728 ? _t(r.types, d0) : r.flags & 268435456 ? hr(r.types, d0) : !1;
      }
      function Ag(r) {
        return !!(yn(r) & 16 && (r.members && Upe(r) || r.symbol && r.symbol.flags & 2048 && Eg(r.symbol).size === 0));
      }
      function fnt(r) {
        if (Q && r.flags & 134217728) {
          if (!(r.objectFlags & 33554432)) {
            const s = r.types;
            r.objectFlags |= 33554432 | (s.length >= 3 && s[0].flags & 4 && s[1].flags & 8 && _t(s, Ag) ? 67108864 : 0);
          }
          return !!(r.objectFlags & 67108864);
        }
        return !1;
      }
      function c4(r) {
        return !!((r.flags & 134217728 ? r.types[0] : r).flags & 4);
      }
      function pnt(r) {
        const s = r.flags & 134217728 ? r.types[0] : r;
        return !!(s.flags & 4) && s !== Ke;
      }
      function tNe(r) {
        return r.flags & 1048576 && !I_(r) && co(r).length === 0 && Bu(r).length === 1 && !!kh(r, Cr) || r.flags & 402653184 && hr(r.types, tNe) || !1;
      }
      function Vpe(r, s, l) {
        const f = r.flags & 8 ? ju(r) : r, m = s.flags & 8 ? ju(s) : s;
        if (f === m) return !0;
        if (f.escapedName !== m.escapedName || !(f.flags & 256) || !(m.flags & 256)) return !1;
        const y = ss(f) + "," + ss(m), x = T2.get(y);
        if (x !== void 0 && !(x & 2 && l)) return !!(x & 1);
        const O = ft(m);
        for (const J of co(ft(f))) if (J.flags & 8) {
          const V = ms(O, J.escapedName);
          if (!V || !(V.flags & 8))
            return l && l(p.Property_0_is_missing_in_type_1, kc(J), Xr(Oo(m), void 0, 64)), T2.set(y, 2), !1;
          const Y = sx(Ho(J, 307)).value, be = sx(Ho(V, 307)).value;
          if (Y !== be) {
            const me = typeof Y == "string", Je = typeof be == "string";
            if (Y !== void 0 && be !== void 0) {
              if (l) {
                const gt = me ? `"${dg(Y)}"` : Y, ht = Je ? `"${dg(be)}"` : be;
                l(p.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given, kc(m), kc(V), ht, gt);
              }
              return T2.set(y, 2), !1;
            }
            if (me || Je) {
              if (l) {
                const gt = Y ?? be;
                E.assert(typeof gt == "string");
                const ht = `"${dg(gt)}"`;
                l(p.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value, kc(m), kc(V), ht);
              }
              return T2.set(y, 2), !1;
            }
          }
        }
        return T2.set(y, 1), !0;
      }
      function M8(r, s, l, f) {
        const m = r.flags, y = s.flags;
        return y & 1 || m & 262144 || r === rr || y & 2 && !(l === lp && m & 1) ? !0 : y & 262144 ? !1 : !!(m & 12583968 && y & 32 || m & 1024 && m & 32768 && y & 1024 && !(y & 32768) && r.value === s.value || m & 67648 && y & 64 || m & 2048 && m & 32768 && y & 2048 && !(y & 32768) && r.value === s.value || m & 4224 && y & 128 || m & 8448 && y & 256 || m & 16896 && y & 512 || m & 65536 && y & 65536 && r.symbol.escapedName === s.symbol.escapedName && Vpe(r.symbol, s.symbol, f) || m & 32768 && y & 32768 && (m & 134217728 && y & 134217728 && Vpe(r.symbol, s.symbol, f) || m & 15360 && y & 15360 && r.value === s.value && Vpe(r.symbol, s.symbol, f)) || m & 4 && (!Q && !(y & 402653184) || y & 20) || m & 8 && (!Q && !(y & 402653184) || y & 8) || m & 1048576 && y & 131072 && !(l === lp && Ag(r) && !(yn(r) & 8192)) || (l === Sc || l === lu) && (m & 1 || m & 64 && (y & 65536 || y & 2048 && y & 32768) || m & 2048 && !(m & 32768) && (y & 65536 || y & 2048 && y & 32768 && r.value === s.value) || fnt(s)));
      }
      function tg(r, s, l) {
        if (W2(r) && (r = r.regularType), W2(s) && (s = s.regularType), r === s) return !0;
        if (l !== Lc) {
          if (l === lu && !(s.flags & 262144) && M8(s, r, l) || M8(r, s, l)) return !0;
        } else if (!((r.flags | s.flags) & 520093696)) {
          if (r.flags !== s.flags) return !1;
          if (r.flags & 394239) return !0;
        }
        if (r.flags & 1048576 && s.flags & 1048576) {
          const f = l.get(R$(r, s, 0, l, !1));
          if (f !== void 0) return !!(f & 1);
        }
        return r.flags & 536346624 || s.flags & 536346624 ? Bp(r, s, l, void 0) : !1;
      }
      function rNe(r, s) {
        return yn(r) & 2048 && Ude(s.escapedName);
      }
      function zM(r, s) {
        for (; ; ) {
          const l = W2(r) ? r.regularType : U1(r) ? gnt(r, s) : yn(r) & 4 ? r.node ? l0(r.target, Vo(r)) : Zpe(r) || r : r.flags & 402653184 ? dnt(r, s) : r.flags & 16777216 ? s ? r.baseType : ope(r) : r.flags & 102760448 ? _0(r, s) : r;
          if (l === r) return l;
          r = l;
        }
      }
      function dnt(r, s) {
        const l = dp(r);
        if (l !== r) return l;
        if (r.flags & 268435456 && mnt(r)) {
          const f = el(r.types, (m) => zM(m, s));
          if (f !== r.types) return Ss(f);
        }
        return r;
      }
      function mnt(r) {
        let s = !1, l = !1;
        for (const f of r.types)
          if (s || (s = !!(f.flags & 132644864)), l || (l = !!(f.flags & 12) || Ag(f)), s && l) return !0;
        return !1;
      }
      function gnt(r, s) {
        const l = J2(r), f = el(l, (m) => m.flags & 102760448 ? _0(m, s) : m);
        return l !== f ? hpe(r.target, f) : r;
      }
      function Bp(r, s, l, f, m, y, x) {
        var O;
        let J, V, Y, be, me, Je, gt = 0, ht = 0, ir = 0, mr = 0, br = !1, Hr = 0, lr = 0, ur, En, si = 16e6 - l.size >> 3;
        E.assert(l !== Lc || !f, "no error reporting in identity checking");
        const Ii = en(r, s, 3, !!f, m);
        if (En && Cs(), br) {
          const De = R$(r, s, 0, l, !1);
          l.set(De, 2 | (si <= 0 ? 32 : 64)), (O = sn) == null || O.instant(sn.Phase.CheckTypes, "checkTypeRelatedTo_DepthLimit", {
            sourceId: r.id,
            targetId: s.id,
            depth: ht,
            targetDepth: ir
          });
          const Le = si <= 0 ? p.Excessive_complexity_comparing_types_0_and_1 : p.Excessive_stack_depth_comparing_types_0_and_1, mt = We(f || k, Le, Xr(r), Xr(s));
          x && (x.errors || (x.errors = [])).push(mt);
        } else if (J) {
          if (y) {
            const mt = y();
            mt && (Aee(mt, J), J = mt);
          }
          let De;
          if (m && f && !Ii && r.symbol) {
            const mt = Wi(r.symbol);
            if (mt.originatingImport && !B_(mt.originatingImport) && Bp(ft(mt.target), s, l, void 0)) {
              const Ot = Kr(mt.originatingImport, p.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);
              De = kr(De, Ot);
            }
          }
          const Le = Gg(Sr(f), f, J, De);
          V && ts(Le, ...V), x && (x.errors || (x.errors = [])).push(Le), (!x || !x.skipLogging) && Ws.add(Le);
        }
        return f && x && x.skipLogging && Ii === 0 && E.assert(!!x.errors, "missed opportunity to interact with error."), Ii !== 0;
        function Si(De) {
          J = De.errorInfo, ur = De.lastSkippedInfo, En = De.incompatibleStack, Hr = De.overrideNextErrorInfo, lr = De.skipParentCounter, V = De.relatedInfo;
        }
        function fi() {
          return {
            errorInfo: J,
            lastSkippedInfo: ur,
            incompatibleStack: En?.slice(),
            overrideNextErrorInfo: Hr,
            skipParentCounter: lr,
            relatedInfo: V?.slice()
          };
        }
        function vs(De, ...Le) {
          Hr++, ur = void 0, (En || (En = [])).push([De, ...Le]);
        }
        function Cs() {
          const De = En || [];
          En = void 0;
          const Le = ur;
          if (ur = void 0, De.length === 1) {
            ka(...De[0]), Le && F_(void 0, ...Le);
            return;
          }
          let mt = "";
          const Ot = [];
          for (; De.length; ) {
            const [er, ...Mt] = De.pop();
            switch (er.code) {
              case p.Types_of_property_0_are_incompatible.code: {
                mt.indexOf("new ") === 0 && (mt = `(${mt})`);
                const gr = "" + Mt[0];
                mt.length === 0 ? mt = `${gr}` : Y_(gr, Ps(L)) ? mt = `${mt}.${gr}` : gr[0] === "[" && gr[gr.length - 1] === "]" ? mt = `${mt}${gr}` : mt = `${mt}[${gr}]`;
                break;
              }
              case p.Call_signature_return_types_0_and_1_are_incompatible.code:
              case p.Construct_signature_return_types_0_and_1_are_incompatible.code:
              case p.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:
              case p.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:
                if (mt.length === 0) {
                  let gr = er;
                  er.code === p.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code ? gr = p.Call_signature_return_types_0_and_1_are_incompatible : er.code === p.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code && (gr = p.Construct_signature_return_types_0_and_1_are_incompatible), Ot.unshift([
                    gr,
                    Mt[0],
                    Mt[1]
                  ]);
                } else {
                  const gr = er.code === p.Construct_signature_return_types_0_and_1_are_incompatible.code || er.code === p.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code ? "new " : "", Nr = er.code === p.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code || er.code === p.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code ? "" : "...";
                  mt = `${gr}${mt}(${Nr})`;
                }
                break;
              case p.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:
                Ot.unshift([
                  p.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,
                  Mt[0],
                  Mt[1]
                ]);
                break;
              case p.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:
                Ot.unshift([
                  p.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,
                  Mt[0],
                  Mt[1],
                  Mt[2]
                ]);
                break;
              default:
                return E.fail(`Unhandled Diagnostic: ${er.code}`);
            }
          }
          mt ? ka(mt[mt.length - 1] === ")" ? p.The_types_returned_by_0_are_incompatible_between_these_types : p.The_types_of_0_are_incompatible_between_these_types, mt) : Ot.shift();
          for (const [er, ...Mt] of Ot) {
            const gr = er.elidedInCompatabilityPyramid;
            er.elidedInCompatabilityPyramid = !1, ka(er, ...Mt), er.elidedInCompatabilityPyramid = gr;
          }
          Le && F_(void 0, ...Le);
        }
        function ka(De, ...Le) {
          E.assert(!!f), En && Cs(), !De.elidedInCompatabilityPyramid && (lr === 0 ? J = ba(J, De, ...Le) : lr--);
        }
        function Ro(De, ...Le) {
          ka(De, ...Le), lr++;
        }
        function eu(De) {
          E.assert(!!J), V ? V.push(De) : V = [De];
        }
        function F_(De, Le, mt) {
          En && Cs();
          const [Ot, er] = O2(Le, mt);
          let Mt = Le, gr = Ot;
          if (!(mt.flags & 262144) && R8(Le) && !qpe(mt) && (Mt = m0(Le), E.assert(!qa(Mt, mt), "generalized source shouldn't be assignable"), gr = ab(Mt)), (mt.flags & 33554432 && !(Le.flags & 33554432) ? mt.objectType.flags : mt.flags) & 524288 && mt !== Bn && mt !== tn) {
            const Nr = xu(mt);
            let an;
            Nr && (qa(Mt, Nr) || (an = qa(Le, Nr))) ? ka(p._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2, an ? Ot : gr, er, Xr(Nr)) : (J = void 0, ka(p._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1, er, gr));
          }
          if (De) De === p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1 && ce && nNe(Le, mt).length && (De = p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties);
          else if (l === lu) De = p.Type_0_is_not_comparable_to_type_1;
          else if (Ot === er) De = p.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;
          else if (ce && nNe(Le, mt).length) De = p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;
          else {
            if (Le.flags & 1024 && mt.flags & 134217728) {
              const Nr = Fst(Le, mt);
              if (Nr) {
                ka(p.Type_0_is_not_assignable_to_type_1_Did_you_mean_2, gr, er, Xr(Nr));
                return;
              }
            }
            De = p.Type_0_is_not_assignable_to_type_1;
          }
          ka(De, gr, er);
        }
        function wr(De, Le) {
          const mt = XE(De.symbol) ? Xr(De, De.symbol.valueDeclaration) : Xr(De), Ot = XE(Le.symbol) ? Xr(Le, Le.symbol.valueDeclaration) : Xr(Le);
          (Il === De && Cr === Le || Op === De && et === Le || Wf === De && Jt === Le || eAe() === De && $t === Le) && ka(p._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible, Ot, mt);
        }
        function Jr(De, Le, mt) {
          return Ls(De) ? De.target.readonly && qM(Le) ? (mt && ka(p.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1, Xr(De), Xr(Le)), !1) : db(Le) : jP(De) && qM(Le) ? (mt && ka(p.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1, Xr(De), Xr(Le)), !1) : Ls(Le) ? Jp(De) : !0;
        }
        function Vi(De, Le, mt) {
          return en(De, Le, 3, mt);
        }
        function en(De, Le, mt = 3, Ot = !1, er, Mt = 0) {
          if (De === Le) return -1;
          if (De.flags & 1048576 && Le.flags & 12713980)
            return l === lu && !(Le.flags & 262144) && M8(Le, De, l) || M8(De, Le, l, Ot ? ka : void 0) ? -1 : (Ot && Aa(De, Le, De, Le, er), 0);
          const gr = zM(De, !1);
          let Nr = zM(Le, !0);
          if (gr === Nr) return -1;
          if (l === Lc)
            return gr.flags !== Nr.flags ? 0 : gr.flags & 394239 ? -1 : (bo(gr, Nr), t3(gr, Nr, !1, 0, mt));
          if (gr.flags & 524288 && RT(gr) === Nr) return -1;
          if (gr.flags & 13893600 && Nr.flags & 134217728) {
            const an = Nr.types, Dn = an.length === 2 && an[0].flags & 12 ? an[1] : an.length === 3 && an[0].flags & 12 && an[1].flags & 12 ? an[2] : void 0;
            if (Dn && !(Dn.flags & 12) && (Nr = zM(Dn, !0), gr === Nr))
              return -1;
          }
          if (l === lu && !(Nr.flags & 262144) && M8(Nr, gr, l) || M8(gr, Nr, l, Ot ? ka : void 0)) return -1;
          if (gr.flags & 536346624 || Nr.flags & 536346624) {
            if (!(Mt & 2) && Ty(gr) && yn(gr) & 8192 && Eu(gr, Nr, Ot))
              return Ot && F_(er, gr, Le.aliasSymbol ? Le : Nr), 0;
            const an = (l !== lu || Id(gr)) && !(Mt & 2) && gr.flags & 282198012 && gr !== io && Nr.flags & 269484032 && Hpe(Nr) && (co(gr).length > 0 || eQ(gr)), Dn = !!(yn(gr) & 2048);
            if (an && !ynt(gr, Nr, Dn)) {
              if (Ot) {
                const yi = Xr(De.aliasSymbol ? De : gr), An = Xr(Le.aliasSymbol ? Le : Nr), Qi = Pa(gr, 0), Na = Pa(gr, 1);
                Qi.length > 0 && en(ro(Qi[0]), Nr, 1, !1) || Na.length > 0 && en(ro(Na[0]), Nr, 1, !1) ? ka(p.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it, yi, An) : ka(p.Type_0_has_no_properties_in_common_with_type_1, yi, An);
              }
              return 0;
            }
            bo(gr, Nr);
            const Vn = gr.flags & 134217728 && gr.types.length < 4 && !(Nr.flags & 134217728) || Nr.flags & 134217728 && Nr.types.length < 4 && !(gr.flags & 536346624) ? L_(gr, Nr, Ot, Mt) : t3(gr, Nr, Ot, Mt, mt);
            if (Vn) return Vn;
          }
          return Ot && Aa(De, Le, gr, Nr, er), 0;
        }
        function Aa(De, Le, mt, Ot, er) {
          var Mt, gr;
          const Nr = !!Zpe(De), an = !!Zpe(Le);
          mt = De.aliasSymbol || Nr ? De : mt, Ot = Le.aliasSymbol || an ? Le : Ot;
          let Dn = Hr > 0;
          if (Dn && Hr--, mt.flags & 1048576 && Ot.flags & 1048576) {
            const Vn = J;
            Jr(mt, Ot, !0), J !== Vn && (Dn = !!J);
          }
          if (mt.flags & 1048576 && Ot.flags & 12713980) wr(mt, Ot);
          else if (mt.symbol && mt.flags & 1048576 && io === mt) ka(p.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);
          else if (yn(mt) & 2048 && Ot.flags & 268435456) {
            const Vn = Ot.types, yi = $2(ip.IntrinsicAttributes, f), An = $2(ip.IntrinsicClassAttributes, f);
            if (!hi(yi) && !hi(An) && (Gi(Vn, yi) || Gi(Vn, An))) return;
          } else J = Qfe(J, Le);
          if (!er && Dn) {
            const Vn = fi();
            F_(er, mt, Ot);
            let yi;
            J && J !== Vn.errorInfo && (yi = {
              code: J.code,
              messageText: J.messageText
            }), Si(Vn), yi && J && (J.canonicalHead = yi), ur = [mt, Ot];
            return;
          }
          if (F_(er, mt, Ot), mt.flags & 524288 && ((gr = (Mt = mt.symbol) == null ? void 0 : Mt.declarations) != null && gr[0]) && !RT(mt)) {
            const Vn = Mpe(mt);
            if (Vn.constraint = Ji(Ot, U2(mt, Vn)), CM(Vn)) {
              const yi = Xr(Ot, mt.symbol.declarations[0]);
              eu(Kr(mt.symbol.declarations[0], p.This_type_parameter_might_need_an_extends_0_constraint, yi));
            }
          }
        }
        function bo(De, Le) {
          if (sn && De.flags & 402653184 && Le.flags & 402653184) {
            const mt = De, Ot = Le;
            if (mt.objectFlags & Ot.objectFlags & 32768) return;
            const er = mt.types.length, Mt = Ot.types.length;
            er * Mt > 1e6 && sn.instant(sn.Phase.CheckTypes, "traceUnionsOrIntersectionsTooLarge_DepthLimit", {
              sourceId: De.id,
              sourceSize: er,
              targetId: Le.id,
              targetSize: Mt,
              pos: f?.pos,
              end: f?.end
            });
          }
        }
        function Zo(De, Le) {
          return Yn(a_(De, (Ot, er) => {
            var Mt;
            er = h_(er);
            const gr = er.flags & 402653184 ? EM(er, Le) : R2(er, Le);
            return kr(Ot, gr && ft(gr) || ((Mt = xC(er, Le)) == null ? void 0 : Mt.type) || $e);
          }, void 0) || Te);
        }
        function Eu(De, Le, mt) {
          var Ot;
          if (!X8(Le) || !$ && yn(Le) & 4096) return !1;
          const er = !!(yn(De) & 2048);
          if ((l === Sc || l === lu) && (WP(io, Le) || !er && d0(Le))) return !1;
          let Mt = Le, gr;
          Le.flags & 134217728 && (Mt = F5e(De, Le, en) || Uft(Le), gr = Mt.flags & 134217728 ? Mt.types : [Mt]);
          for (const Nr of co(De)) if (Ga(Nr, De.symbol) && !rNe(De, Nr)) {
            if (!yX(Mt, Nr.escapedName, er)) {
              if (mt) {
                const an = rl(Mt, X8);
                if (!f) return E.fail();
                if (Yb(f) || Gu(f) || Gu(f.parent)) {
                  Nr.valueDeclaration && Om(Nr.valueDeclaration) && Sr(f) === Sr(Nr.valueDeclaration.name) && (f = Nr.valueDeclaration.name);
                  const Dn = Xi(Nr), Vn = e8e(Dn, an), yi = Vn ? Xi(Vn) : void 0;
                  yi ? ka(p.Property_0_does_not_exist_on_type_1_Did_you_mean_2, Dn, Xr(an), yi) : ka(p.Property_0_does_not_exist_on_type_1, Dn, Xr(an));
                } else {
                  const Dn = ((Ot = De.symbol) == null ? void 0 : Ot.declarations) && ul(De.symbol.declarations);
                  let Vn;
                  if (Nr.valueDeclaration && cr(Nr.valueDeclaration, (yi) => yi === Dn) && Sr(Dn) === Sr(f)) {
                    const yi = Nr.valueDeclaration;
                    E.assertNode(yi, zg);
                    const An = yi.name;
                    f = An, Fe(An) && (Vn = t8e(An, an));
                  }
                  Vn !== void 0 ? Ro(p.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2, Xi(Nr), Xr(an), Vn) : Ro(p.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1, Xi(Nr), Xr(an));
                }
              }
              return !0;
            }
            if (gr && !en(ft(Nr), Zo(gr, Nr.escapedName), 3, mt))
              return mt && vs(p.Types_of_property_0_are_incompatible, Xi(Nr)), !0;
          }
          return !1;
        }
        function Ga(De, Le) {
          return De.valueDeclaration && Le.valueDeclaration && De.valueDeclaration.parent === Le.valueDeclaration;
        }
        function L_(De, Le, mt, Ot) {
          if (De.flags & 134217728) {
            if (Le.flags & 134217728) {
              const er = De.origin;
              if (er && er.flags & 268435456 && Le.aliasSymbol && Gi(er.types, Le)) return -1;
              const Mt = Le.origin;
              if (Mt && Mt.flags & 134217728 && De.aliasSymbol && Gi(Mt.types, De)) return -1;
            }
            return l === lu ? Pc(De, Le, mt && !(De.flags & 12713980), Ot) : Cy(De, Le, mt && !(De.flags & 12713980), Ot);
          }
          if (Le.flags & 134217728) return fc(J8(De), Le, mt && !(De.flags & 12713980) && !(Le.flags & 12713980), Ot);
          if (Le.flags & 268435456) return $_(De, Le, mt, 2);
          if (l === lu && Le.flags & 12713980) {
            const er = el(De.types, (Mt) => Mt.flags & 132644864 ? xu(Mt) || Re : Mt);
            if (er !== De.types) {
              if (De = Ss(er), De.flags & 262144) return 0;
              if (!(De.flags & 268435456)) return en(De, Le, 1, !1) || en(Le, De, 1, !1);
            }
          }
          return Pc(De, Le, !1, 1);
        }
        function zo(De, Le) {
          let mt = -1;
          const Ot = De.types;
          for (const er of Ot) {
            const Mt = fc(er, Le, !1, 0);
            if (!Mt) return 0;
            mt &= Mt;
          }
          return mt;
        }
        function fc(De, Le, mt, Ot) {
          const er = Le.types;
          if (Le.flags & 134217728) {
            if (Eh(er, De)) return -1;
            if (l !== lu && yn(Le) & 32768 && !(De.flags & 32768) && (De.flags & 13312 || (l === cp || l === lp) && De.flags & 2048)) {
              const gr = De === De.regularType ? De.freshType : De.regularType, Nr = De.flags & 1024 ? Cr : De.flags & 2048 ? et : De.flags & 4096 ? kt : void 0;
              return Nr && Eh(er, Nr) || gr && Eh(er, gr) ? -1 : 0;
            }
            const Mt = FNe(Le, De);
            if (Mt) {
              const gr = en(De, Mt, 2, !1, void 0, Ot);
              if (gr) return gr;
            }
          }
          for (const Mt of er) {
            const gr = en(De, Mt, 2, !1, void 0, Ot);
            if (gr) return gr;
          }
          if (mt) {
            const Mt = iNe(De, Le, en);
            Mt && en(De, Mt, 2, !0, void 0, Ot);
          }
          return 0;
        }
        function $_(De, Le, mt, Ot) {
          let er = -1;
          const Mt = Le.types;
          for (const gr of Mt) {
            const Nr = en(De, gr, 2, mt, void 0, Ot);
            if (!Nr) return 0;
            er &= Nr;
          }
          return er;
        }
        function Pc(De, Le, mt, Ot) {
          const er = De.types;
          if (De.flags & 134217728 && Eh(er, Le)) return -1;
          const Mt = er.length;
          for (let gr = 0; gr < Mt; gr++) {
            const Nr = en(er[gr], Le, 1, mt && gr === Mt - 1, void 0, Ot);
            if (Nr) return Nr;
          }
          return 0;
        }
        function oc(De, Le) {
          return De.flags & 134217728 && Le.flags & 134217728 && !(De.types[0].flags & 4) && Le.types[0].flags & 4 ? UP(Le, -5) : Le;
        }
        function Cy(De, Le, mt, Ot) {
          let er = -1;
          const Mt = De.types, gr = oc(De, Le);
          for (let Nr = 0; Nr < Mt.length; Nr++) {
            const an = Mt[Nr];
            if (gr.flags & 134217728 && Mt.length >= gr.types.length && Mt.length % gr.types.length === 0) {
              const Vn = en(an, gr.types[Nr % gr.types.length], 3, !1, void 0, Ot);
              if (Vn) {
                er &= Vn;
                continue;
              }
            }
            const Dn = en(an, Le, 1, mt, void 0, Ot);
            if (!Dn) return 0;
            er &= Dn;
          }
          return er;
        }
        function e3(De = Te, Le = Te, mt = Te, Ot, er) {
          if (De.length !== Le.length && l === Lc) return 0;
          const Mt = De.length <= Le.length ? De.length : Le.length;
          let gr = -1;
          for (let Nr = 0; Nr < Mt; Nr++) {
            const an = Nr < mt.length ? mt[Nr] : 1, Dn = an & 7;
            if (Dn !== 4) {
              const Vn = De[Nr], yi = Le[Nr];
              let An = -1;
              if (an & 8 ? An = l === Lc ? en(Vn, yi, 3, !1) : O8(Vn, yi) : (k1 && an & 16 && Ji(Vn, fa), Dn === 1 ? An = en(Vn, yi, 3, Ot, void 0, er) : Dn === 2 ? An = en(yi, Vn, 3, Ot, void 0, er) : Dn === 3 ? (An = en(yi, Vn, 3, !1), An || (An = en(Vn, yi, 3, Ot, void 0, er))) : (An = en(Vn, yi, 3, Ot, void 0, er), An && (An &= en(yi, Vn, 3, Ot, void 0, er)))), !An) return 0;
              gr &= An;
            }
          }
          return gr;
        }
        function t3(De, Le, mt, Ot, er) {
          var Mt, gr, Nr;
          if (br) return 0;
          const an = R$(De, Le, Ot, l, !1), Dn = l.get(an);
          if (Dn !== void 0 && !(mt && Dn & 2 && !(Dn & 96))) {
            if (xl) {
              const vn = Dn & 24;
              vn & 8 && Ji(De, $a), vn & 16 && Ji(De, fa);
            }
            return mt && Dn & 96 && (ka(Dn & 32 ? p.Excessive_complexity_comparing_types_0_and_1 : p.Excessive_stack_depth_comparing_types_0_and_1, Xr(De), Xr(Le)), Hr++), Dn & 1 ? -1 : 0;
          }
          if (si <= 0)
            return br = !0, 0;
          if (!Y)
            Y = [], be = /* @__PURE__ */ new Set(), me = [], Je = [];
          else {
            if (be.has(an)) return 3;
            const vn = an.startsWith("*") ? R$(De, Le, Ot, l, !0) : void 0;
            if (vn && be.has(vn)) return 3;
            if (ht === 100 || ir === 100)
              return br = !0, 0;
          }
          const Vn = gt;
          Y[gt] = an, be.add(an), gt++;
          const yi = mr;
          er & 1 && (me[ht] = De, ht++, !(mr & 1) && PC(De, me, ht) && (mr |= 1)), er & 2 && (Je[ir] = Le, ir++, !(mr & 2) && PC(Le, Je, ir) && (mr |= 2));
          let An, Qi = 0;
          xl && (An = xl, xl = (vn) => (Qi |= vn ? 16 : 8, An(vn)));
          let Na;
          return mr === 3 ? ((Mt = sn) == null || Mt.instant(sn.Phase.CheckTypes, "recursiveTypeRelatedTo_DepthLimit", {
            sourceId: De.id,
            sourceIdStack: me.map((vn) => vn.id),
            targetId: Le.id,
            targetIdStack: Je.map((vn) => vn.id),
            depth: ht,
            targetDepth: ir
          }), Na = 3) : ((gr = sn) == null || gr.push(sn.Phase.CheckTypes, "structuredTypeRelatedTo", {
            sourceId: De.id,
            targetId: Le.id
          }), Na = g7(De, Le, mt, Ot), (Nr = sn) == null || Nr.pop()), xl && (xl = An), er & 1 && ht--, er & 2 && ir--, mr = yi, Na ? (Na === -1 || ht === 0 && ir === 0) && ar(Na === -1 || Na === 3) : (l.set(an, 2 | Qi), si--, ar(!1)), Na;
          function ar(vn) {
            for (let $i = Vn; $i < gt; $i++)
              be.delete(Y[$i]), vn && (l.set(Y[$i], 1 | Qi), si--);
            gt = Vn;
          }
        }
        function g7(De, Le, mt, Ot) {
          const er = fi();
          let Mt = h7(De, Le, mt, Ot, er);
          if (l !== Lc) {
            if (!Mt && (De.flags & 268435456 || De.flags & 524288 && Le.flags & 134217728)) {
              const gr = Get(De.flags & 268435456 ? De.types : [De], !!(Le.flags & 134217728));
              gr && cf(gr, (Nr) => Nr !== De) && (Mt = en(gr, Le, 1, !1, void 0, Ot));
            }
            Mt && !(Ot & 2) && Le.flags & 268435456 && !UT(Le) && De.flags & 269484032 ? (Mt &= Ba(De, Le, mt, void 0, !1, 0), Mt && Ty(De) && yn(De) & 8192 && (Mt &= te(De, Le, !1, mt, 0))) : Mt && E$(Le) && !db(Le) && De.flags & 268435456 && h_(De).flags & 403701760 && !_t(De.types, (gr) => gr === Le || !!(yn(gr) & 262144)) && (Mt &= Ba(De, Le, mt, void 0, !0, Ot));
          }
          return Mt && Si(er), Mt;
        }
        function Mf(De, Le) {
          const mt = h_(ob(Le)), Ot = [];
          return Ufe(mt, 19456, !1, (er) => {
            Ot.push(Ji(De, A8(Le.mapper, sm(Le), er)));
          }), Yn(Ot);
        }
        function h7(De, Le, mt, Ot, er) {
          let Mt, gr, Nr = !1, an = De.flags;
          const Dn = Le.flags;
          if (l === Lc) {
            if (an & 402653184) {
              let An = zo(De, Le);
              return An && (An &= zo(Le, De)), An;
            }
            if (an & 2097152) return en(De.type, Le.type, 3, !1);
            if (an & 33554432 && (Mt = en(De.objectType, Le.objectType, 3, !1)) && (Mt &= en(De.indexType, Le.indexType, 3, !1)) || an & 67108864 && De.root.isDistributive === Le.root.isDistributive && (Mt = en(De.checkType, Le.checkType, 3, !1)) && (Mt &= en(De.extendsType, Le.extendsType, 3, !1)) && (Mt &= en(z1(De), z1(Le), 3, !1)) && (Mt &= en(W1(De), W1(Le), 3, !1)) || an & 16777216 && (Mt = en(De.baseType, Le.baseType, 3, !1)) && (Mt &= en(De.constraint, Le.constraint, 3, !1)))
              return Mt;
            if (an & 4194304 && jf(De.texts, Le.texts)) {
              const An = De.types, Qi = Le.types;
              Mt = -1;
              for (let Na = 0; Na < An.length && (Mt &= en(An[Na], Qi[Na], 3, !1)); Na++) ;
              return Mt;
            }
            if (an & 8388608 && De.symbol === Le.symbol)
              return en(De.type, Le.type, 3, !1);
            if (!(an & 1048576)) return 0;
          } else if (an & 402653184 || Dn & 402653184) {
            if (Mt = L_(De, Le, mt, Ot)) return Mt;
            if (!(an & 132644864 || an & 1048576 && Dn & 134217728 || an & 268435456 && Dn & 267911168)) return 0;
          }
          if (an & 68157440 && De.aliasSymbol && De.aliasTypeArguments && De.aliasSymbol === Le.aliasSymbol && !(L$(De) || L$(Le))) {
            const An = aNe(De.aliasSymbol);
            if (An === Te) return 1;
            const Qi = Wi(De.aliasSymbol).typeParameters, Na = wg(Qi), ar = yi(yy(De.aliasTypeArguments, Qi, Na, rn(De.aliasSymbol.valueDeclaration)), yy(Le.aliasTypeArguments, Qi, Na, rn(De.aliasSymbol.valueDeclaration)), An, Ot);
            if (ar !== void 0) return ar;
          }
          if (dNe(De) && !De.target.readonly && (Mt = en(Vo(De)[0], Le, 1)) || dNe(Le) && (Le.target.readonly || qM(xu(De) || De)) && (Mt = en(De, Vo(Le)[0], 2))) return Mt;
          if (Dn & 524288) {
            if (yn(De) & 32 && !De.declaration.nameType && en(eg(Le), pp(De), 3) && !(Dg(De) & 4) && (Mt = en(xh(De), Ff(Le, sm(De)), 3, mt)))
              return Mt;
            if (l === lu && an & 524288) {
              let An = g_(De);
              if (An) for (; An && gp(An, (Qi) => !!(Qi.flags & 524288)); ) {
                if (Mt = en(An, Le, 1, !1)) return Mt;
                An = g_(An);
              }
              return 0;
            }
          } else if (Dn & 2097152) {
            const An = Le.type;
            if (an & 2097152 && (Mt = en(An, De.type, 3, !1)))
              return Mt;
            if (Ls(An)) {
              if (Mt = en(De, _Ae(An), 2, mt)) return Mt;
            } else {
              const Qi = Vfe(An);
              if (Qi) {
                if (en(De, eg(Qi, Le.indexFlags | 4), 2, mt) === -1) return -1;
              } else if (I_(An)) {
                const Na = Th(An), ar = pp(An);
                let vn;
                if (Na && MT(An) ? vn = Yn([Mf(Na, An), Na]) : vn = Na || ar, en(De, vn, 2, mt) === -1) return -1;
              }
            }
          } else if (Dn & 33554432) {
            if (an & 33554432) {
              if ((Mt = en(De.objectType, Le.objectType, 3, mt)) && (Mt &= en(De.indexType, Le.indexType, 3, mt)), Mt) return Mt;
              mt && (gr = J);
            }
            if (l === Sc || l === lu) {
              const An = Le.objectType, Qi = Le.indexType, Na = xu(An) || An, ar = xu(Qi) || Qi;
              if (!UT(Na) && !VT(ar)) {
                const vn = J1(Na, ar, 4 | (Na !== An ? 2 : 0));
                if (vn) {
                  if (mt && gr && Si(er), Mt = en(De, vn, 2, mt, void 0, Ot)) return Mt;
                  mt && gr && J && (J = Vn([gr]) <= Vn([J]) ? gr : J);
                }
              }
            }
            mt && (gr = void 0);
          } else if (I_(Le) && l !== Lc) {
            const An = !!Le.declaration.nameType, Qi = xh(Le), Na = Dg(Le);
            if (!(Na & 8)) {
              if (!An && Qi.flags & 33554432 && Qi.objectType === De && Qi.indexType === sm(Le)) return -1;
              if (!I_(De)) {
                const ar = An ? Th(Le) : pp(Le), vn = eg(De, 2), $i = Na & 4, bi = $i ? TM(ar, vn) : void 0;
                if ($i ? !(bi.flags & 262144) : en(ar, vn, 3)) {
                  const Es = xh(Le), xc = sm(Le), Ia = UP(Es, -13);
                  if (!An && Ia.flags & 33554432 && Ia.indexType === xc) {
                    if (Mt = en(De, Ia.objectType, 2, mt)) return Mt;
                  } else {
                    const Uc = An ? bi || ar : bi ? Ss([bi, xc]) : xc;
                    if (Mt = en(Ff(De, Uc), Es, 3, mt)) return Mt;
                  }
                }
                gr = J, Si(er);
              }
            }
          } else if (Dn & 67108864) {
            if (PC(Le, Je, ir, 10)) return 3;
            const An = Le;
            if (!An.root.inferTypeParameters && !Nrt(An.root) && !(De.flags & 67108864 && De.root === An.root)) {
              const Qi = !qa(I8(An.checkType), I8(An.extendsType)), Na = !Qi && qa(HT(An.checkType), HT(An.extendsType));
              if ((Mt = Qi ? -1 : en(De, z1(An), 2, !1, void 0, Ot)) && (Mt &= Na ? -1 : en(De, W1(An), 2, !1, void 0, Ot), Mt))
                return Mt;
            }
          } else if (Dn & 4194304) {
            if (an & 4194304) {
              if (l === lu) return sit(De, Le) ? 0 : -1;
              Ji(De, fa);
            }
            if (Z$(De, Le)) return -1;
          } else if (Le.flags & 8388608 && !(De.flags & 8388608) && Y$(De, Le))
            return -1;
          if (an & 34078720) {
            if (!(an & 33554432 && Dn & 33554432)) {
              const An = RT(De) || Re;
              if (Mt = en(An, Le, 1, !1, void 0, Ot)) return Mt;
              if (Mt = en(Of(An, De), Le, 1, mt && An !== Re && !(Dn & an & 524288), void 0, Ot)) return Mt;
              if ($fe(De)) {
                const Qi = RT(De.indexType);
                if (Qi && (Mt = en(Ff(De.objectType, Qi), Le, 1, mt)))
                  return Mt;
              }
            }
          } else if (an & 2097152) {
            const An = kpe(De.type, De.indexFlags) && yn(De.type) & 32;
            if (Mt = en(oo, Le, 1, mt && !An)) return Mt;
            if (An) {
              const Qi = De.type, Na = Th(Qi);
              if (Mt = en(Na && MT(Qi) ? Mf(Na, Qi) : Na || pp(Qi), Le, 1, mt)) return Mt;
            }
          } else if (an & 4194304 && !(Dn & 1048576)) {
            if (!(Dn & 4194304)) {
              const An = xu(De);
              if (An && An !== De && (Mt = en(An, Le, 1, mt))) return Mt;
            }
          } else if (an & 8388608) if (Dn & 8388608) {
            if (De.symbol !== Le.symbol) return 0;
            if (Mt = en(De.type, Le.type, 3, mt)) return Mt;
          } else {
            const An = xu(De);
            if (An && (Mt = en(An, Le, 1, mt))) return Mt;
          }
          else if (an & 67108864) {
            if (PC(De, me, ht, 10)) return 3;
            if (Dn & 67108864) {
              const Na = De.root.inferTypeParameters;
              let ar = De.extendsType, vn;
              if (Na) {
                const $i = z8(Na, void 0, 0, Vi);
                wh($i.inferences, Le.extendsType, ar, 1536), ar = Ji(ar, $i.mapper), vn = $i.mapper;
              }
              if (Dh(ar, Le.extendsType) && (en(De.checkType, Le.checkType, 3) || en(Le.checkType, De.checkType, 3)) && ((Mt = en(Ji(z1(De), vn), z1(Le), 3, mt)) && (Mt &= en(W1(De), W1(Le), 3, mt)), Mt))
                return Mt;
            }
            const An = qfe(De);
            if (An && (Mt = en(An, Le, 1, mt)))
              return Mt;
            const Qi = !(Dn & 67108864) && CM(De) ? v3e(De) : void 0;
            if (Qi && (Si(er), Mt = en(Qi, Le, 1, mt)))
              return Mt;
          } else {
            if (l !== cp && l !== lp && Bet(Le) && d0(De)) return -1;
            if (I_(Le))
              return I_(De) && (Mt = Lt(De, Le, mt)) ? Mt : 0;
            const An = !!(an & 12713980);
            if (l !== Lc)
              De = h_(De), an = De.flags;
            else if (I_(De)) return 0;
            if (yn(De) & 4 && yn(Le) & 4 && De.target === Le.target && !Ls(De) && !(L$(De) || L$(Le))) {
              if (J$(De)) return -1;
              const Qi = $pe(De.target);
              if (Qi === Te) return 1;
              const Na = yi(Vo(De), Vo(Le), Qi, Ot);
              if (Na !== void 0) return Na;
            } else {
              if (jP(Le) ? cf(De, db) : Jp(Le) && cf(De, (Qi) => Ls(Qi) && !Qi.target.readonly)) return l !== Lc ? en(cb(De, et) || Ve, cb(Le, et) || Ve, 3, mt) : 0;
              if (U1(De) && Ls(Le) && !U1(Le)) {
                const Qi = Km(De);
                if (Qi !== De) return en(Qi, Le, 1, mt);
              } else if ((l === cp || l === lp) && d0(Le) && yn(Le) & 8192 && !d0(De)) return 0;
            }
            if (an & 269484032 && Dn & 1048576) {
              const Qi = mt && J === er.errorInfo && !An;
              if (Mt = Ba(De, Le, Qi, void 0, !1, Ot), Mt && (Mt &= tu(De, Le, 0, Qi, Ot), Mt && (Mt &= tu(De, Le, 1, Qi, Ot), Mt && (Mt &= te(De, Le, An, Qi, Ot)))), Nr && Mt) J = gr || J || er.errorInfo;
              else if (Mt) return Mt;
            }
            if (an & 269484032 && Dn & 134217728) {
              const Qi = UP(Le, 286261248);
              if (Qi.flags & 134217728) {
                const Na = _r(De, Qi);
                if (Na) return Na;
              }
            }
          }
          return 0;
          function Vn(An) {
            return An ? a_(An, (Qi, Na) => Qi + 1 + Vn(Na.next), 0) : 0;
          }
          function yi(An, Qi, Na, ar) {
            if (Mt = e3(An, Qi, Na, mt, ar)) return Mt;
            if (_t(Na, ($i) => !!($i & 24))) {
              gr = void 0, Si(er);
              return;
            }
            const vn = Qi && vnt(Qi, Na);
            if (Nr = !vn, Na !== Te && !vn) {
              if (Nr && !(mt && _t(Na, ($i) => ($i & 7) === 0))) return 0;
              gr = J, Si(er);
            }
          }
        }
        function Lt(De, Le, mt) {
          if (l === lu || (l === Lc ? Dg(De) === Dg(Le) : PP(De) <= PP(Le))) {
            let Ot;
            if (Ot = en(pp(Le), Ji(pp(De), PP(De) < 0 ? $a : fa), 3, mt)) {
              const er = Lf([sm(De)], [sm(Le)]);
              if (Ji(Th(De), er) === Ji(Th(Le), er)) return Ot & en(Ji(xh(De), er), xh(Le), 3, mt);
            }
          }
          return 0;
        }
        function _r(De, Le) {
          var mt;
          const Ot = ONe(co(De), Le);
          if (!Ot) return 0;
          let er = 1;
          for (const Vn of Ot)
            if (er *= Lit(kn(Vn)), er > 25)
              return (mt = sn) == null || mt.instant(sn.Phase.CheckTypes, "typeRelatedToDiscriminatedType_DepthLimit", {
                sourceId: De.id,
                targetId: Le.id,
                numCombinations: er
              }), 0;
          const Mt = new Array(Ot.length), gr = /* @__PURE__ */ new Set();
          for (let Vn = 0; Vn < Ot.length; Vn++) {
            const yi = Ot[Vn], An = kn(yi);
            Mt[Vn] = An.flags & 134217728 ? An.types : [An], gr.add(yi.escapedName);
          }
          const Nr = CQ(Mt), an = [];
          for (const Vn of Nr) {
            let yi = !1;
            e: for (const An of Le.types) {
              for (let Qi = 0; Qi < Ot.length; Qi++) {
                const Na = Ot[Qi], ar = ms(An, Na.escapedName);
                if (!ar) continue e;
                if (Na !== ar && !_n(De, Le, Na, ar, (vn) => Vn[Qi], !1, 0, Q || l === lu))
                  continue e;
              }
              hp(an, An, S0), yi = !0;
            }
            if (!yi) return 0;
          }
          let Dn = -1;
          for (const Vn of an)
            if (Dn &= Ba(De, Vn, !1, gr, !1, 0), Dn && (Dn &= tu(De, Vn, 0, !1, 0), Dn && (Dn &= tu(De, Vn, 1, !1, 0), Dn && !(Ls(De) && Ls(Vn)) && (Dn &= te(De, Vn, !1, !1, 0)))), !Dn) return Dn;
          return Dn;
        }
        function Or(De, Le) {
          if (!Le || De.length === 0) return De;
          let mt;
          for (let Ot = 0; Ot < De.length; Ot++) Le.has(De[Ot].escapedName) ? mt || (mt = De.slice(0, Ot)) : mt && mt.push(De[Ot]);
          return mt || De;
        }
        function Wr(De, Le, mt, Ot, er) {
          const Mt = Q && !!(gc(Le) & 48), gr = _u(kn(Le), !1, Mt);
          return gr.flags & (l === lp ? 1 : 3) ? -1 : en(mt(De), gr, 3, Ot, void 0, er);
        }
        function _n(De, Le, mt, Ot, er, Mt, gr, Nr) {
          const an = kp(mt), Dn = kp(Ot);
          if (an & 2 || Dn & 2) {
            if (mt.valueDeclaration !== Ot.valueDeclaration)
              return Mt && (an & 2 && Dn & 2 ? ka(p.Types_have_separate_declarations_of_a_private_property_0, Xi(Ot)) : ka(p.Property_0_is_private_in_type_1_but_not_in_type_2, Xi(Ot), Xr(an & 2 ? De : Le), Xr(an & 2 ? Le : De))), 0;
          } else if (Dn & 4) {
            if (!knt(mt, Ot))
              return Mt && ka(p.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2, Xi(Ot), Xr(wC(mt) || De), Xr(wC(Ot) || Le)), 0;
          } else if (an & 4)
            return Mt && ka(p.Property_0_is_protected_in_type_1_but_public_in_type_2, Xi(Ot), Xr(De), Xr(Le)), 0;
          if (l === lp && pm(mt) && !pm(Ot)) return 0;
          const Vn = Wr(mt, Ot, er, Mt, gr);
          return Vn ? !Nr && mt.flags & 16777216 && Ot.flags & 106500 && !(Ot.flags & 16777216) ? (Mt && ka(p.Property_0_is_optional_in_type_1_but_required_in_type_2, Xi(Ot), Xr(De), Xr(Le)), 0) : Vn : (Mt && vs(p.Types_of_property_0_are_incompatible, Xi(Ot)), 0);
        }
        function Ni(De, Le, mt, Ot) {
          let er = !1;
          if (mt.valueDeclaration && Bl(mt.valueDeclaration) && Oi(mt.valueDeclaration.name) && De.symbol && De.symbol.flags & 32) {
            const gr = mt.valueDeclaration.name.escapedText, Nr = bA(De.symbol, gr);
            if (Nr && ms(De, Nr)) {
              const an = A.getDeclarationName(De.symbol.valueDeclaration), Dn = A.getDeclarationName(Le.symbol.valueDeclaration);
              ka(p.Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2, $r(gr), $r(an.escapedText === "" ? UW : an), $r(Dn.escapedText === "" ? UW : Dn));
              return;
            }
          }
          const Mt = ma(ude(De, Le, Ot, !1));
          if ((!m || m.code !== p.Class_0_incorrectly_implements_interface_1.code && m.code !== p.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code) && (er = !0), Mt.length === 1) {
            const gr = Xi(mt, void 0, 0, 20);
            ka(p.Property_0_is_missing_in_type_1_but_required_in_type_2, gr, ...O2(De, Le)), It(mt.declarations) && eu(Kr(mt.declarations[0], p._0_is_declared_here, gr)), er && J && Hr++;
          } else Jr(De, Le, !1) && (Mt.length > 5 ? ka(p.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more, Xr(De), Xr(Le), or(Mt.slice(0, 4), (gr) => Xi(gr)).join(", "), Mt.length - 4) : ka(p.Type_0_is_missing_the_following_properties_from_type_1_Colon_2, Xr(De), Xr(Le), or(Mt, (gr) => Xi(gr)).join(", ")), er && J && Hr++);
        }
        function Ba(De, Le, mt, Ot, er, Mt) {
          if (l === Lc) return $s(De, Le, Ot);
          let gr = -1;
          if (Ls(Le)) {
            if (db(De)) {
              if (!Le.target.readonly && (jP(De) || Ls(De) && De.target.readonly)) return 0;
              const yi = vy(De), An = vy(Le), Qi = Ls(De) ? De.target.combinedFlags & 4 : 4, Na = !!(Le.target.combinedFlags & 12), ar = Ls(De) ? De.target.minLength : 0, vn = Le.target.minLength;
              if (!Qi && yi < vn)
                return mt && ka(p.Source_has_0_element_s_but_target_requires_1, yi, vn), 0;
              if (!Na && An < ar)
                return mt && ka(p.Source_has_0_element_s_but_target_allows_only_1, ar, An), 0;
              if (!Na && (Qi || An < yi))
                return mt && (ar < vn ? ka(p.Target_requires_0_element_s_but_source_may_have_fewer, vn) : ka(p.Target_allows_only_0_element_s_but_source_may_have_more, An)), 0;
              const $i = Vo(De), bi = Vo(Le), Es = Qtt(Le.target, 11), xc = D8(Le.target, 11);
              let Ia = !!Ot;
              for (let Uc = 0; Uc < yi; Uc++) {
                const Rc = Ls(De) ? De.target.elementFlags[Uc] : 4, r_ = yi - 1 - Uc, y_ = Na && Uc >= Es ? An - 1 - Math.min(r_, xc) : Uc, n_ = Le.target.elementFlags[y_];
                if (n_ & 8 && !(Rc & 8))
                  return mt && ka(p.Source_provides_no_match_for_variadic_element_at_position_0_in_target, y_), 0;
                if (Rc & 8 && !(n_ & 12))
                  return mt && ka(p.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target, Uc, y_), 0;
                if (n_ & 1 && !(Rc & 1))
                  return mt && ka(p.Source_provides_no_match_for_required_element_at_position_0_in_target, y_), 0;
                if (Ia && ((Rc & 12 || n_ & 12) && (Ia = !1), Ia && Ot?.has("" + Uc)))
                  continue;
                const Y2 = h0($i[Uc], !!(Rc & n_ & 2)), X1 = bi[y_], Z2 = en(Y2, Rc & 8 && n_ & 4 ? Ju(X1) : h0(X1, !!(n_ & 2)), 3, mt, void 0, Mt);
                if (!Z2)
                  return mt && (An > 1 || yi > 1) && (Na && Uc >= Es && r_ >= xc && Es !== yi - xc - 1 ? vs(p.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target, Es, yi - xc - 1, y_) : vs(p.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target, Uc, y_)), 0;
                gr &= Z2;
              }
              return gr;
            }
            if (Le.target.combinedFlags & 12) return 0;
          }
          const Nr = (l === cp || l === lp) && !Ty(De) && !J$(De) && !Ls(De), an = _de(De, Le, Nr, !1);
          if (an)
            return mt && Ml(De, Le) && Ni(De, Le, an, Nr), 0;
          if (Ty(Le)) {
            for (const yi of Or(co(De), Ot)) if (!R2(Le, yi.escapedName))
              return mt && ka(p.Property_0_does_not_exist_on_type_1, Xi(yi), Xr(Le)), 0;
          }
          const Dn = co(Le), Vn = Ls(De) && Ls(Le);
          for (const yi of Or(Dn, Ot)) {
            const An = yi.escapedName;
            if (!(yi.flags & 4194304) && (!Vn || eh(An) || An === "length") && (!er || yi.flags & 16777216)) {
              const Qi = ms(De, An);
              if (Qi && Qi !== yi) {
                const Na = _n(De, Le, Qi, yi, kn, mt, Mt, l === lu);
                if (!Na) return 0;
                gr &= Na;
              }
            }
          }
          return gr;
        }
        function $s(De, Le, mt) {
          if (!(De.flags & 1048576 && Le.flags & 1048576)) return 0;
          const Ot = Or(hy(De), mt), er = Or(hy(Le), mt);
          if (Ot.length !== er.length) return 0;
          let Mt = -1;
          for (const gr of Ot) {
            const Nr = R2(Le, gr.escapedName);
            if (!Nr) return 0;
            const an = Qpe(gr, Nr, en);
            if (!an) return 0;
            Mt &= an;
          }
          return Mt;
        }
        function tu(De, Le, mt, Ot, er) {
          var Mt, gr;
          if (l === Lc) return v4(De, Le, mt);
          if (De === ac) return -1;
          if (Le === ac) return 0;
          const Nr = De.symbol && ng(De.symbol.valueDeclaration), an = Le.symbol && ng(Le.symbol.valueDeclaration), Dn = Pa(De, Nr && mt === 1 ? 0 : mt), Vn = Pa(Le, an && mt === 1 ? 0 : mt);
          if (mt === 1 && Dn.length && Vn.length) {
            const ar = !!(Dn[0].flags & 4), vn = !!(Vn[0].flags & 4);
            if (ar && !vn)
              return Ot && ka(p.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type), 0;
            if (!Dr(Dn[0], Vn[0], Ot)) return 0;
          }
          let yi = -1;
          const An = mt === 1 ? Nh : Zc, Qi = yn(De), Na = yn(Le);
          if (Qi & 64 && Na & 64 && De.symbol === Le.symbol || Qi & 4 && Na & 4 && De.target === Le.target) {
            E.assertEqual(Dn.length, Vn.length);
            for (let ar = 0; ar < Vn.length; ar++) {
              const vn = dm(Dn[ar], Vn[ar], !0, Ot, er, An(Dn[ar], Vn[ar]));
              if (!vn) return 0;
              yi &= vn;
            }
          } else if (Dn.length === 1 && Vn.length === 1) {
            const ar = l === lu, vn = js(Dn), $i = js(Vn);
            if (yi = dm(vn, $i, ar, Ot, er, An(vn, $i)), !yi && Ot && mt === 1 && Qi & Na && (((Mt = $i.declaration) == null ? void 0 : Mt.kind) === 177 || ((gr = vn.declaration) == null ? void 0 : gr.kind) === 177)) {
              const bi = (Es) => I2(Es, void 0, 262144, mt);
              return ka(p.Type_0_is_not_assignable_to_type_1, bi(vn), bi($i)), ka(p.Types_of_construct_signatures_are_incompatible), yi;
            }
          } else e: for (const ar of Vn) {
            const vn = fi();
            let $i = Ot;
            for (const bi of Dn) {
              const Es = dm(bi, ar, !0, $i, er, An(bi, ar));
              if (Es) {
                yi &= Es, Si(vn);
                continue e;
              }
              $i = !1;
            }
            return $i && ka(p.Type_0_provides_no_match_for_the_signature_1, Xr(De), I2(ar, void 0, void 0, mt)), 0;
          }
          return yi;
        }
        function Ml(De, Le) {
          const mt = DM(De, 0), Ot = DM(De, 1), er = hy(De);
          return (mt.length || Ot.length) && !er.length ? !!(Pa(Le, 0).length && mt.length || Pa(Le, 1).length && Ot.length) : !0;
        }
        function Zc(De, Le) {
          return De.parameters.length === 0 && Le.parameters.length === 0 ? (mt, Ot) => vs(p.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1, Xr(mt), Xr(Ot)) : (mt, Ot) => vs(p.Call_signature_return_types_0_and_1_are_incompatible, Xr(mt), Xr(Ot));
        }
        function Nh(De, Le) {
          return De.parameters.length === 0 && Le.parameters.length === 0 ? (mt, Ot) => vs(p.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1, Xr(mt), Xr(Ot)) : (mt, Ot) => vs(p.Construct_signature_return_types_0_and_1_are_incompatible, Xr(mt), Xr(Ot));
        }
        function dm(De, Le, mt, Ot, er, Mt) {
          const gr = l === cp ? 16 : l === lp ? 24 : 0;
          return Wpe(mt ? C8(De) : De, mt ? C8(Le) : Le, gr, Ot, ka, Mt, Nr, fa);
          function Nr(an, Dn, Vn) {
            return en(an, Dn, 3, Vn, void 0, er);
          }
        }
        function v4(De, Le, mt) {
          const Ot = Pa(De, mt), er = Pa(Le, mt);
          if (Ot.length !== er.length) return 0;
          let Mt = -1;
          for (let gr = 0; gr < Ot.length; gr++) {
            const Nr = VM(Ot[gr], er[gr], !1, !1, !1, en);
            if (!Nr) return 0;
            Mt &= Nr;
          }
          return Mt;
        }
        function pge(De, Le, mt, Ot) {
          let er = -1;
          const Mt = Le.keyType, gr = De.flags & 268435456 ? kM(De) : hy(De);
          for (const Nr of gr)
            if (!rNe(De, Nr) && TC(kC(Nr, 19456), Mt)) {
              const an = kn(Nr), Dn = en(ce || an.flags & 4 || Mt === et || !(Nr.flags & 16777216) ? an : zp(an, 524288), Le.type, 3, mt, void 0, Ot);
              if (!Dn)
                return mt && ka(p.Property_0_is_incompatible_with_index_signature, Xi(Nr)), 0;
              er &= Dn;
            }
          for (const Nr of Bu(De)) if (TC(Nr.keyType, Mt)) {
            const an = Ee(Nr, Le, mt, Ot);
            if (!an) return 0;
            er &= an;
          }
          return er;
        }
        function Ee(De, Le, mt, Ot) {
          const er = en(De.type, Le.type, 3, mt, void 0, Ot);
          return !er && mt && (De.keyType === Le.keyType ? ka(p._0_index_signatures_are_incompatible, Xr(De.keyType)) : ka(p._0_and_1_index_signatures_are_incompatible, Xr(De.keyType), Xr(Le.keyType))), er;
        }
        function te(De, Le, mt, Ot, er) {
          if (l === Lc) return Ht(De, Le);
          const Mt = Bu(Le), gr = _t(Mt, (an) => an.keyType === Cr);
          let Nr = -1;
          for (const an of Mt) {
            const Dn = l !== lp && !mt && gr && an.type.flags & 1 ? -1 : I_(De) && gr ? en(xh(De), an.type, 3, Ot) : Vt(De, an, Ot, er);
            if (!Dn) return 0;
            Nr &= Dn;
          }
          return Nr;
        }
        function Vt(De, Le, mt, Ot) {
          const er = S8(De, Le.keyType);
          return er ? Ee(er, Le, mt, Ot) : !(Ot & 1) && (l !== lp || yn(De) & 8192) && G$(De) ? pge(De, Le, mt, Ot) : (mt && ka(p.Index_signature_for_type_0_is_missing_in_type_1, Xr(Le.keyType), Xr(De)), 0);
        }
        function Ht(De, Le) {
          const mt = Bu(De), Ot = Bu(Le);
          if (mt.length !== Ot.length) return 0;
          for (const er of Ot) {
            const Mt = kh(De, er.keyType);
            if (!(Mt && en(Mt.type, er.type, 3) && Mt.isReadonly === er.isReadonly)) return 0;
          }
          return -1;
        }
        function Dr(De, Le, mt) {
          if (!De.declaration || !Le.declaration) return !0;
          const Ot = Wx(De.declaration, 6), er = Wx(Le.declaration, 6);
          return er === 2 || er === 4 && Ot !== 2 || er !== 4 && !Ot ? !0 : (mt && ka(p.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type, xP(Ot), xP(er)), !1);
        }
      }
      function qpe(r) {
        if (r.flags & 256) return !1;
        if (r.flags & 402653184) return !!bt(r.types, qpe);
        if (r.flags & 132644864) {
          const s = RT(r);
          if (s && s !== r) return qpe(s);
        }
        return Id(r) || !!(r.flags & 4194304) || !!(r.flags & 8388608);
      }
      function nNe(r, s) {
        return Ls(r) && Ls(s) ? Te : co(s).filter((l) => F$(xn(r, l.escapedName), ft(l)));
      }
      function F$(r, s) {
        return !!r && !!s && Wc(r, 4) && !!B8(s);
      }
      function hnt(r) {
        return co(r).filter((s) => B8(ft(s)));
      }
      function iNe(r, s, l = Jpe) {
        return F5e(r, s, l) || Bft(r, s) || Jft(r, s) || zft(r, s) || Wft(r, s);
      }
      function Gpe(r, s, l) {
        const f = r.types, m = f.map((x) => x.flags & 12713980 || dp(x).flags & 262144 ? 0 : -1);
        for (const [x, O] of s) {
          let J = !1;
          for (let V = 0; V < f.length; V++) if (m[V]) {
            const Y = ya(f[V], O);
            Y && (gp(x(), (be) => !!l(be, Y)) ? J = !0 : m[V] = 3);
          }
          for (let V = 0; V < f.length; V++) m[V] === 3 && (m[V] = J ? 0 : -1);
        }
        const y = Gi(m, 0) ? Yn(f.filter((x, O) => m[O]), 0) : r;
        return y.flags & 262144 ? r : y;
      }
      function Hpe(r) {
        if (r.flags & 1048576) {
          const s = om(r);
          return s.callSignatures.length === 0 && s.constructSignatures.length === 0 && s.indexInfos.length === 0 && s.properties.length > 0 && hr(s.properties, (l) => !!(l.flags & 16777216));
        }
        return r.flags & 16777216 ? Hpe(r.baseType) : r.flags & 268435456 ? hr(r.types, Hpe) : !1;
      }
      function ynt(r, s, l) {
        for (const f of co(r)) if (yX(s, f.escapedName, l)) return !0;
        return !1;
      }
      function $pe(r) {
        return r === zs || r === bc || r.objectFlags & 8 ? G : sNe(r.symbol, r.typeParameters);
      }
      function aNe(r) {
        return sNe(r, Wi(r).typeParameters);
      }
      function sNe(r, s = Te) {
        var l, f;
        const m = Wi(r);
        if (!m.variances) {
          (l = sn) == null || l.push(sn.Phase.CheckTypes, "getVariancesWorker", {
            arity: s.length,
            id: Kl(Oo(r))
          });
          const y = k1, x = Z0;
          k1 || (k1 = !0, Z0 = n0.length), m.variances = Te;
          const O = [];
          for (const J of s) {
            const V = Xpe(J);
            let Y = V & 16384 ? V & 8192 ? 0 : 1 : V & 8192 ? 2 : void 0;
            if (Y === void 0) {
              let be = !1, me = !1;
              const Je = xl;
              xl = (ir) => ir ? me = !0 : be = !0;
              const gt = WM(r, J, lt), ht = WM(r, J, St);
              Y = (qa(ht, gt) ? 1 : 0) | (qa(gt, ht) ? 2 : 0), Y === 3 && qa(WM(r, J, jr), gt) && (Y = 4), xl = Je, (be || me) && (be && (Y |= 8), me && (Y |= 16));
            }
            O.push(Y);
          }
          y || (k1 = !1, Z0 = x), m.variances = O, (f = sn) == null || f.pop({ variances: O.map(E.formatVariance) });
        }
        return m.variances;
      }
      function WM(r, s, l) {
        const f = U2(s, l), m = Oo(r);
        if (hi(m)) return m;
        const y = r.flags & 524288 ? i4(r, p0(Wi(r).typeParameters, f)) : l0(m, p0(m.typeParameters, f));
        return nt.add(Kl(y)), y;
      }
      function L$(r) {
        return nt.has(Kl(r));
      }
      function Xpe(r) {
        var s;
        return a_((s = r.symbol) == null ? void 0 : s.declarations, (l, f) => l | Pu(f), 0) & 28672;
      }
      function vnt(r, s) {
        for (let l = 0; l < s.length; l++) if ((s[l] & 7) === 1 && r[l].flags & 16) return !0;
        return !1;
      }
      function bnt(r) {
        return r.flags & 524288 && !g_(r);
      }
      function Snt(r) {
        return !!(yn(r) & 4) && !r.node;
      }
      function M$(r) {
        return Snt(r) && _t(Vo(r), (s) => !!(s.flags & 524288) || M$(s));
      }
      function Tnt(r, s, l, f) {
        const m = [];
        let y = "";
        const x = J(r, 0), O = J(s, 0);
        return `${y}${x},${O}${l}`;
        function J(V, Y = 0) {
          let be = "" + V.target.id;
          for (const me of Vo(V)) {
            if (me.flags & 524288) {
              if (f || bnt(me)) {
                let Je = m.indexOf(me);
                Je < 0 && (Je = m.length, m.push(me)), be += "=" + Je;
                continue;
              }
              y = "*";
            } else if (Y < 4 && M$(me)) {
              be += "<" + J(me, Y + 1) + ">";
              continue;
            }
            be += "-" + me.id;
          }
          return be;
        }
      }
      function R$(r, s, l, f, m) {
        if (f === Lc && r.id > s.id) {
          const x = r;
          r = s, s = x;
        }
        const y = l ? ":" + l : "";
        return M$(r) && M$(s) ? Tnt(r, s, y, m) : `${r.id},${s.id}${y}`;
      }
      function UM(r, s) {
        if (gc(r) & 6) {
          for (const l of r.links.containingType.types) {
            const f = ms(l, r.escapedName), m = f && UM(f, s);
            if (m) return m;
          }
          return;
        }
        return s(r);
      }
      function wC(r) {
        return r.parent && r.parent.flags & 32 ? Oo(ju(r)) : void 0;
      }
      function j$(r) {
        const s = wC(r), l = s && Nd(s)[0];
        return l && xn(l, r.escapedName);
      }
      function xnt(r, s) {
        return UM(r, (l) => {
          const f = wC(l);
          return f ? Ks(f, s) : !1;
        });
      }
      function knt(r, s) {
        return !UM(s, (l) => kp(l) & 4 ? !xnt(r, wC(l)) : !1);
      }
      function oNe(r, s, l) {
        return UM(s, (f) => kp(f, l) & 4 ? !Ks(r, wC(f)) : !1) ? void 0 : r;
      }
      function PC(r, s, l, f = 3) {
        if (l >= f) {
          if ((yn(r) & 96) === 96 && (r = cNe(r)), r.flags & 268435456) return _t(r.types, (O) => PC(O, s, l, f));
          const m = B$(r);
          let y = 0, x = 0;
          for (let O = 0; O < l; O++) {
            const J = s[O];
            if (lNe(J, m)) {
              if (J.id >= x && (y++, y >= f))
                return !0;
              x = J.id;
            }
          }
        }
        return !1;
      }
      function cNe(r) {
        let s;
        for (; (yn(r) & 96) === 96 && (s = ob(r)) && (s.symbol || s.flags & 268435456 && _t(s.types, (l) => !!l.symbol)); ) r = s;
        return r;
      }
      function lNe(r, s) {
        return (yn(r) & 96) === 96 && (r = cNe(r)), r.flags & 268435456 ? _t(r.types, (l) => lNe(l, s)) : B$(r) === s;
      }
      function B$(r) {
        if (r.flags & 1048576 && !pde(r)) {
          if (yn(r) & 4 && r.node) return r.node;
          if (r.symbol && !(yn(r) & 16 && r.symbol.flags & 32)) return r.symbol;
          if (Ls(r)) return r.target;
        }
        if (r.flags & 524288) return r.symbol;
        if (r.flags & 33554432) {
          do
            r = r.objectType;
          while (r.flags & 33554432);
          return r;
        }
        return r.flags & 67108864 ? r.root : r;
      }
      function Cnt(r, s) {
        return Qpe(r, s, O8) !== 0;
      }
      function Qpe(r, s, l) {
        if (r === s) return -1;
        const f = kp(r) & 6;
        if (f !== (kp(s) & 6)) return 0;
        if (f) {
          if (y4(r) !== y4(s)) return 0;
        } else if ((r.flags & 16777216) !== (s.flags & 16777216)) return 0;
        return pm(r) !== pm(s) ? 0 : l(kn(r), kn(s));
      }
      function Ent(r, s, l) {
        const f = lf(r), m = lf(s), y = fm(r), x = fm(s), O = Ng(r), J = Ng(s);
        return !!(f === m && y === x && O === J || l && y <= x);
      }
      function VM(r, s, l, f, m, y) {
        if (r === s) return -1;
        if (!Ent(r, s, l) || It(r.typeParameters) !== It(s.typeParameters)) return 0;
        if (s.typeParameters) {
          const J = Lf(r.typeParameters, s.typeParameters);
          for (let V = 0; V < s.typeParameters.length; V++) {
            const Y = r.typeParameters[V], be = s.typeParameters[V];
            if (!(Y === be || y(Ji(OP(Y), J) || Re, OP(be) || Re) && y(Ji(j2(Y), J) || Re, j2(be) || Re))) return 0;
          }
          r = GT(r, J, !0);
        }
        let x = -1;
        if (!f) {
          const J = lb(r);
          if (J) {
            const V = lb(s);
            if (V) {
              const Y = y(J, V);
              if (!Y) return 0;
              x &= Y;
            }
          }
        }
        const O = lf(s);
        for (let J = 0; J < O; J++) {
          const V = _m(r, J), Y = y(_m(s, J), V);
          if (!Y) return 0;
          x &= Y;
        }
        if (!m) {
          const J = jp(r), V = jp(s);
          x &= J || V ? Dnt(J, V, y) : y(ro(r), ro(s));
        }
        return x;
      }
      function Dnt(r, s, l) {
        return r && s && bpe(r, s) ? r.type === s.type ? -1 : r.type && s.type ? l(r.type, s.type) : 0 : 0;
      }
      function wnt(r) {
        let s;
        for (const l of r) if (!(l.flags & 262144)) {
          const f = m0(l);
          if (s ?? (s = f), f === l || f !== s) return !1;
        }
        return !0;
      }
      function uNe(r) {
        return a_(r, (s, l) => s | (l.flags & 134217728 ? uNe(l.types) : l.flags), 0);
      }
      function Pnt(r) {
        if (r.length === 1) return r[0];
        const s = Q ? el(r, (f) => rl(f, (m) => !(m.flags & 12))) : r, l = wnt(s) ? Yn(s) : Ant(s);
        return s === r ? l : HM(l, uNe(r) & 12);
      }
      function Ant(r) {
        const s = a_(r, (l, f) => RP(l, f) ? f : l);
        return hr(r, (l) => l === s || RP(l, s)) ? s : a_(r, (l, f) => V2(l, f) ? f : l);
      }
      function Nnt(r) {
        return a_(r, (s, l) => V2(l, s) ? l : s);
      }
      function Jp(r) {
        return !!(yn(r) & 4) && (r.target === zs || r.target === bc);
      }
      function jP(r) {
        return !!(yn(r) & 4) && r.target === bc;
      }
      function db(r) {
        return Jp(r) || Ls(r);
      }
      function qM(r) {
        return Jp(r) && !jP(r) || Ls(r) && !r.target.readonly;
      }
      function GM(r) {
        return Jp(r) ? Vo(r)[0] : void 0;
      }
      function Sy(r) {
        return Jp(r) || !(r.flags & 12) && qa(r, Kd);
      }
      function Ype(r) {
        return qM(r) || !(r.flags & 13) && qa(r, hl);
      }
      function Zpe(r) {
        if (!(yn(r) & 4) || !(yn(r.target) & 3)) return;
        if (yn(r) & 33554432) return yn(r) & 67108864 ? r.cachedEquivalentBaseType : void 0;
        r.objectFlags |= 33554432;
        const s = r.target;
        if (yn(s) & 1) {
          const m = SC(s);
          if (m && m.expression.kind !== 80 && m.expression.kind !== 212) return;
        }
        const l = Nd(s);
        if (l.length !== 1 || Eg(r.symbol).size) return;
        let f = It(s.typeParameters) ? Ji(l[0], Lf(s.typeParameters, Vo(r).slice(0, s.typeParameters.length))) : l[0];
        return It(Vo(r)) > It(s.typeParameters) && (f = Of(f, ws(Vo(r)))), r.objectFlags |= 67108864, r.cachedEquivalentBaseType = f;
      }
      function _Ne(r) {
        return Q ? r === Mi : r === ye;
      }
      function J$(r) {
        const s = GM(r);
        return !!s && _Ne(s);
      }
      function BP(r) {
        let s;
        return Ls(r) || !!ms(r, "0") || Sy(r) && !!(s = xn(r, "length")) && cf(s, (l) => !!(l.flags & 2048));
      }
      function z$(r) {
        return Sy(r) || BP(r);
      }
      function Int(r, s) {
        const l = xn(r, "" + s);
        if (l) return l;
        if (cf(r, Ls)) return mNe(r, s, L.noUncheckedIndexedAccess ? $e : void 0);
      }
      function Ont(r) {
        return !(r.flags & 359436);
      }
      function Id(r) {
        return !!(r.flags & 97292);
      }
      function fNe(r) {
        const s = Km(r);
        return s.flags & 268435456 ? _t(s.types, Id) : Id(s);
      }
      function Fnt(r) {
        return r.flags & 268435456 && xr(r.types, Id) || r;
      }
      function R8(r) {
        return r.flags & 256 ? !0 : r.flags & 134217728 ? r.flags & 32768 ? !0 : hr(r.types, Id) : Id(r);
      }
      function m0(r) {
        return r.flags & 98304 ? o$(r) : r.flags & 12583936 ? Cr : r.flags & 2048 ? et : r.flags & 4096 ? kt : r.flags & 8192 ? Jt : r.flags & 134217728 ? Lnt(r) : r;
      }
      function Lnt(r) {
        const s = `B${Kl(r)}`;
        return Vm(s) ?? E1(s, sc(r, m0));
      }
      function Kpe(r) {
        return r.flags & 12583936 ? Cr : r.flags & 67584 ? et : r.flags & 4096 ? kt : r.flags & 8192 ? Jt : r.flags & 134217728 ? sc(r, Kpe) : r;
      }
      function mb(r) {
        return r.flags & 98304 && W2(r) ? o$(r) : r.flags & 1024 && W2(r) ? Cr : r.flags & 2048 && W2(r) ? et : r.flags & 4096 && W2(r) ? kt : r.flags & 8192 && W2(r) ? Jt : r.flags & 134217728 ? sc(r, mb) : r;
      }
      function pNe(r) {
        return r.flags & 16384 ? $t : r.flags & 134217728 ? sc(r, pNe) : r;
      }
      function ede(r, s) {
        return FX(r, s) || (r = pNe(mb(r))), ku(r);
      }
      function Mnt(r, s, l) {
        if (r && Id(r)) {
          const f = s ? l ? s7(s) : s : void 0;
          r = ede(r, f);
        }
        return r;
      }
      function tde(r, s, l, f) {
        if (r && Id(r)) {
          const m = s ? ky(l, s, f) : void 0;
          r = ede(r, m);
        }
        return r;
      }
      function Ls(r) {
        return !!(yn(r) & 4 && r.target.objectFlags & 8);
      }
      function U1(r) {
        return Ls(r) && !!(r.target.combinedFlags & 8);
      }
      function dNe(r) {
        return U1(r) && r.target.elementFlags.length === 1;
      }
      function W$(r) {
        return JP(r, r.target.fixedLength);
      }
      function mNe(r, s, l) {
        return sc(r, (f) => {
          const m = f, y = W$(m);
          return y ? l && s >= ype(m.target) ? Yn([y, l]) : y : $e;
        });
      }
      function Rnt(r) {
        const s = W$(r);
        return s && Ju(s);
      }
      function JP(r, s, l = 0, f = !1, m = !1) {
        const y = vy(r) - l;
        if (s < y) {
          const x = Vo(r), O = [];
          for (let J = s; J < y; J++) {
            const V = x[J];
            O.push(r.target.elementFlags[J] & 8 ? Ff(V, et) : V);
          }
          return f ? Ss(O) : Yn(O, m ? 0 : 1);
        }
      }
      function jnt(r, s) {
        return vy(r) === vy(s) && hr(r.target.elementFlags, (l, f) => (l & 12) === (s.target.elementFlags[f] & 12));
      }
      function gNe({ value: r }) {
        return r.base10Value === "0";
      }
      function hNe(r) {
        return rl(r, (s) => lm(s, 4194304));
      }
      function Bnt(r) {
        return sc(r, Jnt);
      }
      function Jnt(r) {
        return r.flags & 32 ? Yk : r.flags & 64 ? Zk : r.flags & 128 ? gP : r === qt || r === wt || r.flags & 31 || r.flags & 1024 && r.value === "" || r.flags & 2048 && r.value === 0 || r.flags & 4096 && gNe(r) ? r : ct;
      }
      function HM(r, s) {
        const l = s & ~r.flags & 12;
        return l === 0 ? r : Yn(l === 4 ? [r, $e] : l === 8 ? [r, vr] : [
          r,
          $e,
          vr
        ]);
      }
      function V1(r, s = !1) {
        E.assert(Q);
        const l = s ? pr : $e;
        return r === l || r.flags & 134217728 && r.types[0] === l ? r : Yn([r, l]);
      }
      function znt(r) {
        return em || (em = s4("NonNullable", 524288, void 0) || it), em !== it ? i4(em, [r]) : Ss([r, Yi]);
      }
      function g0(r) {
        return Q ? YT(r, 2097152) : r;
      }
      function yNe(r) {
        return Q ? Yn([r, Pr]) : r;
      }
      function U$(r) {
        return Q ? eX(r, Pr) : r;
      }
      function V$(r, s, l) {
        return l ? V4(s) ? V1(r) : yNe(r) : r;
      }
      function j8(r, s) {
        return $7(s) ? g0(r) : Vu(s) ? U$(r) : r;
      }
      function h0(r, s) {
        return ce && s ? eX(r, Ke) : r;
      }
      function B8(r) {
        return r === Ke || !!(r.flags & 134217728) && r.types[0] === Ke;
      }
      function q$(r) {
        return ce ? eX(r, Ke) : zp(r, 524288);
      }
      function Wnt(r, s) {
        return (r.flags & 8288) !== 0 && (s.flags & 352) !== 0;
      }
      function G$(r) {
        const s = yn(r);
        return r.flags & 268435456 ? hr(r.types, G$) : !!(r.symbol && (r.symbol.flags & 7040) !== 0 && !(r.symbol.flags & 32) && !eQ(r)) || !!(s & 4194304) || !!(s & 1024 && G$(r.source));
      }
      function $T(r, s) {
        const l = Fs(r.flags, r.escapedName, gc(r) & 8);
        l.declarations = r.declarations, l.parent = r.parent, l.links.type = s, l.links.target = r, r.valueDeclaration && (l.valueDeclaration = r.valueDeclaration);
        const f = Wi(r).nameType;
        return f && (l.links.nameType = f), l;
      }
      function Unt(r, s) {
        const l = Ka();
        for (const f of hy(r)) {
          const m = ft(f), y = s(m);
          l.set(f.escapedName, y === m ? f : $T(f, y));
        }
        return l;
      }
      function J8(r) {
        if (!(Ty(r) && yn(r) & 8192)) return r;
        const s = r.regularType;
        if (s) return s;
        const l = r, f = Unt(r, J8), m = Yo(l.symbol, f, l.callSignatures, l.constructSignatures, l.indexInfos);
        return m.flags = l.flags, m.objectFlags |= l.objectFlags & -8193, r.regularType = m, m;
      }
      function vNe(r, s, l) {
        return {
          parent: r,
          propertyName: s,
          siblings: l,
          resolvedProperties: void 0
        };
      }
      function bNe(r) {
        if (!r.siblings) {
          const s = [];
          for (const l of bNe(r.parent)) if (Ty(l)) {
            const f = R2(l, r.propertyName);
            f && ZT(ft(f), (m) => {
              s.push(m);
            });
          }
          r.siblings = s;
        }
        return r.siblings;
      }
      function Vnt(r) {
        if (!r.resolvedProperties) {
          const s = /* @__PURE__ */ new Map();
          for (const l of bNe(r)) if (Ty(l) && !(yn(l) & 2097152)) for (const f of co(l)) s.set(f.escapedName, f);
          r.resolvedProperties = ma(s.values());
        }
        return r.resolvedProperties;
      }
      function qnt(r, s) {
        if (!(r.flags & 4)) return r;
        const l = ft(r), f = rde(l, s && vNe(s, r.escapedName, void 0));
        return f === l ? r : $T(r, f);
      }
      function Gnt(r) {
        const s = Ge.get(r.escapedName);
        if (s) return s;
        const l = $T(r, pr);
        return l.flags |= 16777216, Ge.set(r.escapedName, l), l;
      }
      function Hnt(r, s) {
        const l = Ka();
        for (const m of hy(r)) l.set(m.escapedName, qnt(m, s));
        if (s)
          for (const m of Vnt(s)) l.has(m.escapedName) || l.set(m.escapedName, Gnt(m));
        const f = Yo(r.symbol, l, Te, Te, el(Bu(r), (m) => Ch(m.keyType, of(m.type), m.isReadonly, m.declaration, m.components)));
        return f.objectFlags |= yn(r) & 266240, f;
      }
      function of(r) {
        return rde(r, void 0);
      }
      function rde(r, s) {
        if (yn(r) & 196608) {
          if (s === void 0 && r.widened) return r.widened;
          let l;
          if (r.flags & 13) l = Ve;
          else if (Ty(r)) l = Hnt(r, s);
          else if (r.flags & 134217728) {
            const f = s || vNe(void 0, void 0, r.types), m = el(r.types, (y) => y.flags & 12 ? y : rde(y, f));
            l = Yn(m, _t(m, d0) ? 2 : 1);
          } else r.flags & 268435456 ? l = Ss(el(r.types, of)) : db(r) && (l = l0(r.target, el(Vo(r), of)));
          return l && s === void 0 && (r.widened = l), l || r;
        }
        return r;
      }
      function H$(r) {
        var s;
        let l = !1;
        if (yn(r) & 65536) {
          if (r.flags & 134217728) if (_t(r.types, d0)) l = !0;
          else for (const f of r.types) l || (l = H$(f));
          else if (db(r)) for (const f of Vo(r)) l || (l = H$(f));
          else if (Ty(r)) for (const f of hy(r)) {
            const m = ft(f);
            if (yn(m) & 65536 && (l = H$(m), !l)) {
              const y = (s = f.declarations) == null ? void 0 : s.find((x) => {
                var O;
                return ((O = x.symbol.valueDeclaration) == null ? void 0 : O.parent) === r.symbol.valueDeclaration;
              });
              y && (We(y, p.Object_literal_s_property_0_implicitly_has_an_1_type, Xi(f), Xr(of(m))), l = !0);
            }
          }
        }
        return l;
      }
      function gb(r, s, l) {
        const f = Xr(of(s));
        if (rn(r) && !jD(Sr(r), L)) return;
        let m;
        switch (r.kind) {
          case 227:
          case 173:
          case 172:
            m = $ ? p.Member_0_implicitly_has_an_1_type : p.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;
            break;
          case 170:
            const y = r;
            if (Fe(y.name)) {
              const x = lS(y.name);
              if ((uk(y.parent) || gd(y.parent) || mg(y.parent)) && y.parent.parameters.includes(y) && (Gr(y, y.name.escapedText, 788968, void 0, !0) || x && MJ(x))) {
                const O = "arg" + y.parent.parameters.indexOf(y), J = Do(y.name) + (y.dotDotDotToken ? "[]" : "");
                uu($, r, p.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1, O, J);
                return;
              }
            }
            m = r.dotDotDotToken ? $ ? p.Rest_parameter_0_implicitly_has_an_any_type : p.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage : $ ? p.Parameter_0_implicitly_has_an_1_type : p.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;
            break;
          case 209:
            if (m = p.Binding_element_0_implicitly_has_an_1_type, !$) return;
            break;
          case 318:
            We(r, p.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type, f);
            return;
          case 324:
            $ && j6(r.parent) && We(r.parent.tagName, p.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation, f);
            return;
          case 263:
          case 175:
          case 174:
          case 178:
          case 179:
          case 219:
          case 220:
            if ($ && !r.name) {
              l === 3 ? We(r, p.Generator_implicitly_has_yield_type_0_Consider_supplying_a_return_type_annotation, f) : We(r, p.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type, f);
              return;
            }
            m = $ ? l === 3 ? p._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type : p._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type : p._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;
            break;
          case 201:
            $ && We(r, p.Mapped_object_type_implicitly_has_an_any_template_type);
            return;
          default:
            m = $ ? p.Variable_0_implicitly_has_an_1_type : p.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;
        }
        uu($, r, m, Do(va(r)), f);
      }
      function $nt(r, s) {
        const l = pX(r);
        if (!l) return !0;
        let f = ro(l);
        const m = Gc(r);
        switch (s) {
          case 1:
            return m & 1 ? f = ky(1, f, !!(m & 2)) ?? f : m & 2 && (f = v0(f) ?? f), _b(f);
          case 3:
            const y = ky(0, f, !!(m & 2));
            return !!y && _b(y);
          case 2:
            const x = ky(2, f, !!(m & 2));
            return !!x && _b(x);
        }
        return !1;
      }
      function $$(r, s, l) {
        n(() => {
          $ && yn(s) & 65536 && (!l || So(r) && $nt(r, l)) && (H$(s) || gb(r, s, l));
        });
      }
      function nde(r, s, l) {
        const f = lf(r), m = lf(s), y = K8(r), x = K8(s), O = x ? m - 1 : m, J = y ? O : Math.min(f, O), V = lb(r);
        if (V) {
          const Y = lb(s);
          Y && l(V, Y);
        }
        for (let Y = 0; Y < J; Y++) l(_m(r, Y), _m(s, Y));
        x && l(yR(r, J, jT(x) && !gp(x, Ype)), x);
      }
      function ide(r, s, l) {
        const f = jp(s);
        if (f) {
          const y = jp(r);
          if (y && bpe(y, f) && y.type && f.type) {
            l(y.type, f.type);
            return;
          }
        }
        const m = ro(s);
        q1(m) && l(ro(r), m);
      }
      function z8(r, s, l, f) {
        return ade(r.map(ode), s, l, f || Jpe);
      }
      function SNe(r, s = 0) {
        return r && ade(or(r.inferences, TNe), r.signature, r.flags | s, r.compareTypes);
      }
      function ade(r, s, l, f) {
        const m = {
          inferences: r,
          signature: s,
          flags: l,
          compareTypes: f,
          mapper: $a,
          nonFixingMapper: $a
        };
        return m.mapper = Xnt(m), m.nonFixingMapper = Qnt(m), m;
      }
      function Xnt(r) {
        return Lpe(or(r.inferences, (s) => s.typeParameter), or(r.inferences, (s, l) => () => (s.isFixed || (Ynt(r), X$(r.inferences), s.isFixed = !0), dde(r, l))));
      }
      function Qnt(r) {
        return Lpe(or(r.inferences, (s) => s.typeParameter), or(r.inferences, (s, l) => () => dde(r, l)));
      }
      function X$(r) {
        for (const s of r) s.isFixed || (s.inferredType = void 0);
      }
      function sde(r, s, l) {
        (r.intraExpressionInferenceSites ?? (r.intraExpressionInferenceSites = [])).push({
          node: s,
          type: l
        });
      }
      function Ynt(r) {
        if (r.intraExpressionInferenceSites) {
          for (const { node: s, type: l } of r.intraExpressionInferenceSites) {
            const f = s.kind === 175 ? EIe(s, 2) : O_(s, 2);
            f && wh(r.inferences, l, f);
          }
          r.intraExpressionInferenceSites = void 0;
        }
      }
      function ode(r) {
        return {
          typeParameter: r,
          candidates: void 0,
          contraCandidates: void 0,
          inferredType: void 0,
          priority: void 0,
          topLevel: !0,
          isFixed: !1,
          impliedArity: void 0
        };
      }
      function TNe(r) {
        return {
          typeParameter: r.typeParameter,
          candidates: r.candidates && r.candidates.slice(),
          contraCandidates: r.contraCandidates && r.contraCandidates.slice(),
          inferredType: r.inferredType,
          priority: r.priority,
          topLevel: r.topLevel,
          isFixed: r.isFixed,
          impliedArity: r.impliedArity
        };
      }
      function Znt(r) {
        const s = dn(r.inferences, h4);
        return s.length ? ade(or(s, TNe), r.signature, r.flags, r.compareTypes) : void 0;
      }
      function cde(r) {
        return r && r.mapper;
      }
      function q1(r) {
        const s = yn(r);
        if (s & 524288) return !!(s & 1048576);
        const l = !!(r.flags & 132644864 || r.flags & 1048576 && !xNe(r) && (s & 4 && (r.node || _t(Vo(r), q1)) || s & 16 && r.symbol && r.symbol.flags & 14384 && r.symbol.declarations || s & 12583968) || r.flags & 402653184 && !(r.flags & 32768) && !xNe(r) && _t(r.types, q1));
        return r.flags & 403963917 && (r.objectFlags |= 524288 | (l ? 1048576 : 0)), l;
      }
      function xNe(r) {
        if (r.aliasSymbol && !r.aliasTypeArguments) {
          const s = Ho(r.aliasSymbol, 266);
          return !!(s && cr(s.parent, (l) => l.kind === 308 ? !0 : l.kind === 268 ? !1 : "quit"));
        }
        return !1;
      }
      function W8(r, s, l = 0) {
        return !!(r === s || r.flags & 402653184 && _t(r.types, (f) => W8(f, s, l)) || l < 3 && r.flags & 67108864 && (W8(z1(r), s, l + 1) || W8(W1(r), s, l + 1)));
      }
      function Knt(r, s) {
        const l = jp(r);
        return l ? !!l.type && W8(l.type, s) : W8(ro(r), s);
      }
      function eit(r) {
        const s = Ka();
        return ZT(r, (l) => {
          if (!(l.flags & 1024)) return;
          const f = mc(l.value), m = Fs(4, f);
          m.links.type = Ve, l.symbol && (m.declarations = l.symbol.declarations, m.valueDeclaration = l.symbol.valueDeclaration), s.set(f, m);
        }), Yo(void 0, s, Te, Te, r.flags & 32 ? [Ch(Cr, Yi, !1)] : Te);
      }
      function kNe(r, s, l) {
        const f = r.id + "," + s.id + "," + l.id;
        if (jt.has(f)) return jt.get(f);
        const m = tit(r, s, l);
        return jt.set(f, m), m;
      }
      function lde(r) {
        return !(yn(r) & 262144) || Ty(r) && _t(co(r), (s) => lde(ft(s))) || Ls(r) && _t(J2(r), lde);
      }
      function tit(r, s, l) {
        if (!(kh(r, Cr) || co(r).length !== 0 && lde(r))) return;
        if (Jp(r)) {
          const m = Q$(Vo(r)[0], s, l);
          return m ? Ju(m, jP(r)) : void 0;
        }
        if (Ls(r)) {
          const m = or(J2(r), (y) => Q$(y, s, l));
          return hr(m, (y) => !!y) ? Pg(m, Dg(s) & 4 ? el(r.target.elementFlags, (y) => y & 2 ? 1 : y) : r.target.elementFlags, r.target.readonly, r.target.labeledElementDeclarations) : void 0;
        }
        const f = Lp(1040, void 0);
        return f.source = r, f.mappedType = s, f.constraintType = l, f;
      }
      function rit(r) {
        const s = Wi(r);
        return s.type || (s.type = Q$(r.links.propertyType, r.links.mappedType, r.links.constraintType) || Re), s.type;
      }
      function nit(r, s, l) {
        const f = Ff(l.type, sm(s)), m = xh(s), y = ode(f);
        return wh([y], r, m), of(CNe(y) || Re);
      }
      function Q$(r, s, l) {
        const f = r.id + "," + s.id + "," + l.id;
        if (Pe.has(f)) return Pe.get(f) || Re;
        S2.push(r), uT.push(s);
        const m = C1;
        PC(r, S2, S2.length, 2) && (C1 |= 1), PC(s, uT, uT.length, 2) && (C1 |= 2);
        let y;
        return C1 !== 3 && (y = nit(r, s, l)), S2.pop(), uT.pop(), C1 = m, Pe.set(f, y), y;
      }
      function* ude(r, s, l, f) {
        const m = co(s);
        for (const y of m)
          if (!n3e(y) && (l || !(y.flags & 16777216 || gc(y) & 48))) {
            const x = ms(r, y.escapedName);
            if (!x) yield y;
            else if (f) {
              const O = ft(y);
              if (O.flags & 97292) {
                const J = ft(x);
                J.flags & 1 || ku(J) === ku(O) || (yield y);
              }
            }
          }
      }
      function _de(r, s, l, f) {
        return b7(ude(r, s, l, f));
      }
      function iit(r, s) {
        return !(s.target.combinedFlags & 8) && s.target.minLength > r.target.minLength || !(s.target.combinedFlags & 12) && (!!(r.target.combinedFlags & 12) || s.target.fixedLength < r.target.fixedLength);
      }
      function ait(r, s) {
        return Ls(r) && Ls(s) ? iit(r, s) : !!_de(r, s, !1, !0) && !!_de(s, r, !1, !1);
      }
      function CNe(r) {
        return r.candidates ? Yn(r.candidates, 2) : r.contraCandidates ? Ss(r.contraCandidates) : void 0;
      }
      function fde(r) {
        return !!Pn(r).skipDirectInference;
      }
      function ENe(r) {
        return !!(r.symbol && _t(r.symbol.declarations, fde));
      }
      function sit(r, s) {
        const l = r.texts[0], f = s.texts[0], m = r.texts[r.texts.length - 1], y = s.texts[s.texts.length - 1], x = Math.min(l.length, f.length), O = Math.min(m.length, y.length);
        return l.slice(0, x) !== f.slice(0, x) || m.slice(m.length - O) !== y.slice(y.length - O);
      }
      function DNe(r, s) {
        if (r === "") return !1;
        const l = +r;
        return isFinite(l) && (!s || "" + l === r);
      }
      function oit(r) {
        return MM(rz(r));
      }
      function Y$(r, s) {
        if (s.flags & 1) return !0;
        if (s.flags & 4194336) return qa(r, s);
        if (s.flags & 8388608) {
          const l = [];
          for (; s.flags & 8388608; )
            l.unshift(s.symbol), s = s.type;
          return a_(l, (f, m) => CC(m, f), r) === r && Y$(r, s);
        }
        return !1;
      }
      function wNe(r, s) {
        if (s.flags & 268435456) return hr(s.types, (l) => l === ou || wNe(r, l));
        if (s.flags & 32 || qa(r, s)) return !0;
        if (r.flags & 1024) {
          const l = r.value;
          return !!(s.flags & 64 && DNe(l, !1) || s.flags & 128 && PO(l, !1) || s.flags & 8204 && l === s.intrinsicName || s.flags & 8388608 && Y$(r, s) || s.flags & 4194304 && Z$(r, s));
        }
        if (r.flags & 4194304) {
          const l = r.texts;
          return l.length === 2 && l[0] === "" && l[1] === "" && qa(r.types[0], s);
        }
        return !1;
      }
      function PNe(r, s) {
        return r.flags & 1024 ? ANe([r.value], Te, s) : r.flags & 4194304 ? jf(r.texts, s.texts) ? or(r.types, (l, f) => qa(Km(l), Km(s.types[f])) ? l : cit(l)) : ANe(r.texts, r.types, s) : void 0;
      }
      function Z$(r, s) {
        const l = PNe(r, s);
        return !!l && hr(l, (f, m) => wNe(f, s.types[m]));
      }
      function cit(r) {
        return r.flags & 12583969 ? r : zT(["", ""], [r]);
      }
      function ANe(r, s, l) {
        const f = r.length - 1, m = r[0], y = r[f], x = l.texts, O = x.length - 1, J = x[0], V = x[O];
        if (f === 0 && m.length < J.length + V.length || !m.startsWith(J) || !y.endsWith(V)) return;
        const Y = y.slice(0, y.length - V.length), be = [];
        let me = 0, Je = J.length;
        for (let ir = 1; ir < O; ir++) {
          const mr = x[ir];
          if (mr.length > 0) {
            let br = me, Hr = Je;
            for (; Hr = gt(br).indexOf(mr, Hr), !(Hr >= 0); ) {
              if (br++, br === r.length) return;
              Hr = 0;
            }
            ht(br, Hr), Je += mr.length;
          } else if (Je < gt(me).length) ht(me, Je + 1);
          else if (me < f) ht(me + 1, 0);
          else return;
        }
        return ht(f, gt(f).length), be;
        function gt(ir) {
          return ir < f ? r[ir] : Y;
        }
        function ht(ir, mr) {
          const br = ir === me ? sf(gt(ir).slice(Je, mr)) : zT([
            r[me].slice(Je),
            ...r.slice(me + 1, ir),
            gt(ir).slice(0, mr)
          ], s.slice(me, ir));
          be.push(br), me = ir, Je = mr;
        }
      }
      function wh(r, s, l, f = 0, m = !1) {
        let y = !1, x, O = 2048, J, V, Y, be = 0;
        me(s, l);
        function me(wr, Jr) {
          if (!(!q1(Jr) || a4(Jr))) {
            if (wr === rr || wr === Oe) {
              const Vi = x;
              x = wr, me(Jr, Jr), x = Vi;
              return;
            }
            if (wr.aliasSymbol && wr.aliasSymbol === Jr.aliasSymbol) {
              if (wr.aliasTypeArguments) {
                const Vi = Wi(wr.aliasSymbol).typeParameters, en = wg(Vi);
                br(yy(wr.aliasTypeArguments, Vi, en, rn(wr.aliasSymbol.valueDeclaration)), yy(Jr.aliasTypeArguments, Vi, en, rn(wr.aliasSymbol.valueDeclaration)), aNe(wr.aliasSymbol));
              }
              return;
            }
            if (wr === Jr && wr.flags & 402653184) {
              for (const Vi of wr.types) me(Vi, Vi);
              return;
            }
            if (Jr.flags & 134217728) {
              const [Vi, en] = mr(wr.flags & 134217728 ? wr.types : [wr], Jr.types, lit), [Aa, bo] = mr(Vi, en, uit);
              if (bo.length === 0) return;
              if (Jr = Yn(bo), Aa.length === 0) {
                Je(wr, Jr, 1);
                return;
              }
              wr = Yn(Aa);
            } else if (Jr.flags & 268435456 && !hr(Jr.types, E$) && !(wr.flags & 134217728)) {
              const [Vi, en] = mr(wr.flags & 268435456 ? wr.types : [wr], Jr.types, Dh);
              if (Vi.length === 0 || en.length === 0) return;
              wr = Ss(Vi), Jr = Ss(en);
            }
            if (Jr.flags & 50331648) {
              if (a4(Jr)) return;
              Jr = f0(Jr);
            }
            if (Jr.flags & 34078720) {
              if (ENe(wr)) return;
              const Vi = ur(Jr);
              if (Vi) {
                if (yn(wr) & 262144 || wr === q) return;
                if (!Vi.isFixed) {
                  const Aa = x || wr;
                  if (Aa === Oe) return;
                  (Vi.priority === void 0 || f < Vi.priority) && (Vi.candidates = void 0, Vi.contraCandidates = void 0, Vi.topLevel = !0, Vi.priority = f), f === Vi.priority && (m && !y ? Gi(Vi.contraCandidates, Aa) || (Vi.contraCandidates = kr(Vi.contraCandidates, Aa), X$(r)) : Gi(Vi.candidates, Aa) || (Vi.candidates = kr(Vi.candidates, Aa), X$(r))), !(f & 128) && Jr.flags & 524288 && Vi.topLevel && !W8(l, Jr) && (Vi.topLevel = !1, X$(r));
                }
                O = Math.min(O, f);
                return;
              }
              const en = _0(Jr, !1);
              if (en !== Jr) me(wr, en);
              else if (Jr.flags & 33554432) {
                const Aa = _0(Jr.indexType, !1);
                if (Aa.flags & 132644864) {
                  const bo = DAe(_0(Jr.objectType, !1), Aa, !1);
                  bo && bo !== Jr && me(wr, bo);
                }
              }
            }
            if (yn(wr) & 4 && yn(Jr) & 4 && (wr.target === Jr.target || Jp(wr) && Jp(Jr)) && !(wr.node && Jr.node)) br(Vo(wr), Vo(Jr), $pe(wr.target));
            else if (wr.flags & 2097152 && Jr.flags & 2097152) Hr(wr.type, Jr.type);
            else if ((R8(wr) || wr.flags & 32) && Jr.flags & 2097152) gt(eit(wr), Jr.type, 256);
            else if (wr.flags & 33554432 && Jr.flags & 33554432)
              me(wr.objectType, Jr.objectType), me(wr.indexType, Jr.indexType);
            else if (wr.flags & 8388608 && Jr.flags & 8388608)
              wr.symbol === Jr.symbol && me(wr.type, Jr.type);
            else if (wr.flags & 16777216)
              me(wr.baseType, Jr), Je(ope(wr), Jr, 4);
            else if (Jr.flags & 67108864) ir(wr, Jr, Si);
            else if (Jr.flags & 402653184) si(wr, Jr.types, Jr.flags);
            else if (wr.flags & 134217728) {
              const Vi = wr.types;
              for (const en of Vi) me(en, Jr);
            } else if (Jr.flags & 4194304) fi(wr, Jr);
            else {
              if (wr = dp(wr), I_(wr) && I_(Jr) && ir(wr, Jr, vs), !(f & 512 && wr.flags & 401080320)) {
                const Vi = h_(wr);
                if (Vi !== wr && !(Vi.flags & 269484032)) return me(Vi, Jr);
                wr = Vi;
              }
              wr.flags & 269484032 && ir(wr, Jr, Cs);
            }
          }
        }
        function Je(wr, Jr, Vi) {
          const en = f;
          f |= Vi, me(wr, Jr), f = en;
        }
        function gt(wr, Jr, Vi) {
          const en = f;
          f |= Vi, Hr(wr, Jr), f = en;
        }
        function ht(wr, Jr, Vi, en) {
          const Aa = f;
          f |= en, si(wr, Jr, Vi), f = Aa;
        }
        function ir(wr, Jr, Vi) {
          const en = wr.id + "," + Jr.id, Aa = J && J.get(en);
          if (Aa !== void 0) {
            O = Math.min(O, Aa);
            return;
          }
          (J || (J = /* @__PURE__ */ new Map())).set(en, -1);
          const bo = O;
          O = 2048;
          const Zo = be;
          (V ?? (V = [])).push(wr), (Y ?? (Y = [])).push(Jr), PC(wr, V, V.length, 2) && (be |= 1), PC(Jr, Y, Y.length, 2) && (be |= 2), be !== 3 ? Vi(wr, Jr) : O = -1, Y.pop(), V.pop(), be = Zo, J.set(en, O), O = Math.min(O, bo);
        }
        function mr(wr, Jr, Vi) {
          let en, Aa;
          for (const bo of Jr) for (const Zo of wr) Vi(Zo, bo) && (me(Zo, bo), en = Lh(en, Zo), Aa = Lh(Aa, bo));
          return [en ? dn(wr, (bo) => !Gi(en, bo)) : wr, Aa ? dn(Jr, (bo) => !Gi(Aa, bo)) : Jr];
        }
        function br(wr, Jr, Vi) {
          const en = wr.length < Jr.length ? wr.length : Jr.length;
          for (let Aa = 0; Aa < en; Aa++) Aa < Vi.length && (Vi[Aa] & 7) === 2 ? Hr(wr[Aa], Jr[Aa]) : me(wr[Aa], Jr[Aa]);
        }
        function Hr(wr, Jr) {
          m = !m, me(wr, Jr), m = !m;
        }
        function lr(wr, Jr) {
          se || f & 1024 ? Hr(wr, Jr) : me(wr, Jr);
        }
        function ur(wr) {
          if (wr.flags & 34078720) {
            for (const Jr of r) if (wr === Jr.typeParameter) return Jr;
          }
        }
        function En(wr) {
          let Jr;
          for (const Vi of wr) {
            const en = Vi.flags & 268435456 && xr(Vi.types, (Aa) => !!ur(Aa));
            if (!en || Jr && en !== Jr) return;
            Jr = en;
          }
          return Jr;
        }
        function si(wr, Jr, Vi) {
          let en = 0;
          if (Vi & 134217728) {
            let Aa;
            const bo = wr.flags & 134217728 ? wr.types : [wr], Zo = new Array(bo.length);
            let Eu = !1;
            for (const Ga of Jr) if (ur(Ga))
              Aa = Ga, en++;
            else for (let L_ = 0; L_ < bo.length; L_++) {
              const zo = O;
              O = 2048, me(bo[L_], Ga), O === f && (Zo[L_] = !0), Eu = Eu || O === -1, O = Math.min(O, zo);
            }
            if (en === 0) {
              const Ga = En(Jr);
              Ga && Je(wr, Ga, 1);
              return;
            }
            if (en === 1 && !Eu) {
              const Ga = ks(bo, (L_, zo) => Zo[zo] ? void 0 : L_);
              if (Ga.length) {
                me(Yn(Ga), Aa);
                return;
              }
            }
          } else for (const Aa of Jr) ur(Aa) ? en++ : me(wr, Aa);
          if (Vi & 268435456 ? en === 1 : en > 0)
            for (const Aa of Jr) ur(Aa) && Je(wr, Aa, 1);
        }
        function Ii(wr, Jr, Vi) {
          if (Vi.flags & 134217728 || Vi.flags & 268435456) {
            let en = !1;
            for (const Aa of Vi.types) en = Ii(wr, Jr, Aa) || en;
            return en;
          }
          if (Vi.flags & 2097152) {
            const en = ur(Vi.type);
            if (en && !en.isFixed && !ENe(wr)) {
              const Aa = kNe(wr, Jr, Vi);
              Aa && Je(Aa, en.typeParameter, yn(wr) & 262144 ? 16 : 8);
            }
            return !0;
          }
          if (Vi.flags & 524288) {
            Je(eg(wr, wr.pattern ? 2 : 0), Vi, 32);
            const en = RT(Vi);
            return en && Ii(wr, Jr, en) || me(Yn(zi(or(co(wr), ft), or(Bu(wr), (Aa) => Aa !== vc ? Aa.type : ct))), xh(Jr)), !0;
          }
          return !1;
        }
        function Si(wr, Jr) {
          wr.flags & 67108864 ? (me(wr.checkType, Jr.checkType), me(wr.extendsType, Jr.extendsType), me(z1(wr), z1(Jr)), me(W1(wr), W1(Jr))) : ht(wr, [z1(Jr), W1(Jr)], Jr.flags, m ? 64 : 0);
        }
        function fi(wr, Jr) {
          const Vi = PNe(wr, Jr), en = Jr.types;
          if (Vi || hr(Jr.texts, (Aa) => Aa.length === 0)) for (let Aa = 0; Aa < en.length; Aa++) {
            const bo = Vi ? Vi[Aa] : ct, Zo = en[Aa];
            if (bo.flags & 1024 && Zo.flags & 34078720) {
              const Eu = ur(Zo), Ga = Eu ? xu(Eu.typeParameter) : void 0;
              if (Ga && !Bi(Ga)) {
                const L_ = Ga.flags & 134217728 ? Ga.types : [Ga];
                let zo = a_(L_, (fc, $_) => fc | $_.flags, 0);
                if (!(zo & 32)) {
                  const fc = bo.value;
                  zo & 67648 && !DNe(fc, !0) && (zo &= -67649), zo & 4224 && !PO(fc, !0) && (zo &= -4225);
                  const $_ = a_(L_, (Pc, oc) => oc.flags & zo ? Pc.flags & 32 ? Pc : oc.flags & 32 ? bo : Pc.flags & 4194304 ? Pc : oc.flags & 4194304 && Z$(bo, oc) ? bo : Pc.flags & 8388608 ? Pc : oc.flags & 8388608 && fc === xAe(oc.symbol, fc) ? bo : Pc.flags & 1024 ? Pc : oc.flags & 1024 && oc.value === fc ? oc : Pc.flags & 64 ? Pc : oc.flags & 64 ? cm(+fc) : Pc.flags & 65536 ? Pc : oc.flags & 65536 ? cm(+fc) : Pc.flags & 2048 ? Pc : oc.flags & 2048 && oc.value === +fc ? oc : Pc.flags & 128 ? Pc : oc.flags & 128 ? oit(fc) : Pc.flags & 4096 ? Pc : oc.flags & 4096 && Ub(oc.value) === fc ? oc : Pc.flags & 256 ? Pc : oc.flags & 256 ? fc === "true" ? Ir : fc === "false" ? wt : Jt : Pc.flags & 8192 ? Pc : oc.flags & 8192 && oc.intrinsicName === fc ? oc : Pc.flags & 4 ? Pc : oc.flags & 4 && oc.intrinsicName === fc ? oc : Pc.flags & 8 ? Pc : oc.flags & 8 && oc.intrinsicName === fc ? oc : Pc : Pc, ct);
                  if (!($_.flags & 262144)) {
                    me($_, Zo);
                    continue;
                  }
                }
              }
            }
            me(bo, Zo);
          }
        }
        function vs(wr, Jr) {
          me(pp(wr), pp(Jr)), me(xh(wr), xh(Jr));
          const Vi = Th(wr), en = Th(Jr);
          Vi && en && me(Vi, en);
        }
        function Cs(wr, Jr) {
          var Vi, en;
          if (yn(wr) & 4 && yn(Jr) & 4 && (wr.target === Jr.target || Jp(wr) && Jp(Jr))) {
            br(Vo(wr), Vo(Jr), $pe(wr.target));
            return;
          }
          if (I_(wr) && I_(Jr) && vs(wr, Jr), !(yn(Jr) & 32 && !Jr.declaration.nameType && Ii(wr, Jr, pp(Jr))) && !ait(wr, Jr)) {
            if (db(wr)) {
              if (Ls(Jr)) {
                const Aa = vy(wr), bo = vy(Jr), Zo = Vo(Jr), Eu = Jr.target.elementFlags;
                if (Ls(wr) && jnt(wr, Jr)) {
                  for (let zo = 0; zo < bo; zo++) me(Vo(wr)[zo], Zo[zo]);
                  return;
                }
                const Ga = Ls(wr) ? Math.min(wr.target.fixedLength, Jr.target.fixedLength) : 0, L_ = Math.min(Ls(wr) ? D8(wr.target, 3) : 0, Jr.target.combinedFlags & 12 ? D8(Jr.target, 3) : 0);
                for (let zo = 0; zo < Ga; zo++) me(Vo(wr)[zo], Zo[zo]);
                if (!Ls(wr) || Aa - Ga - L_ === 1 && wr.target.elementFlags[Ga] & 4) {
                  const zo = Vo(wr)[Ga];
                  for (let fc = Ga; fc < bo - L_; fc++) me(Eu[fc] & 8 ? Ju(zo) : zo, Zo[fc]);
                } else {
                  const zo = bo - Ga - L_;
                  if (zo === 2) {
                    if (Eu[Ga] & Eu[Ga + 1] & 8) {
                      const fc = ur(Zo[Ga]);
                      fc && fc.impliedArity !== void 0 && (me(MP(wr, Ga, L_ + Aa - fc.impliedArity), Zo[Ga]), me(MP(wr, Ga + fc.impliedArity, L_), Zo[Ga + 1]));
                    } else if (Eu[Ga] & 8 && Eu[Ga + 1] & 4) {
                      const fc = (Vi = ur(Zo[Ga])) == null ? void 0 : Vi.typeParameter, $_ = fc && xu(fc);
                      if ($_ && Ls($_) && !($_.target.combinedFlags & 12)) {
                        const Pc = $_.target.fixedLength;
                        me(MP(wr, Ga, Aa - (Ga + Pc)), Zo[Ga]), me(JP(wr, Ga + Pc, L_), Zo[Ga + 1]);
                      }
                    } else if (Eu[Ga] & 4 && Eu[Ga + 1] & 8) {
                      const fc = (en = ur(Zo[Ga + 1])) == null ? void 0 : en.typeParameter, $_ = fc && xu(fc);
                      if ($_ && Ls($_) && !($_.target.combinedFlags & 12)) {
                        const Pc = $_.target.fixedLength, oc = Aa - D8(Jr.target, 3), Cy = oc - Pc, e3 = Pg(Vo(wr).slice(Cy, oc), wr.target.elementFlags.slice(Cy, oc), !1, wr.target.labeledElementDeclarations && wr.target.labeledElementDeclarations.slice(Cy, oc));
                        me(JP(wr, Ga, L_ + Pc), Zo[Ga]), me(e3, Zo[Ga + 1]);
                      }
                    }
                  } else if (zo === 1 && Eu[Ga] & 8) {
                    const fc = Jr.target.elementFlags[bo - 1] & 2;
                    Je(MP(wr, Ga, L_), Zo[Ga], fc ? 2 : 0);
                  } else if (zo === 1 && Eu[Ga] & 4) {
                    const fc = JP(wr, Ga, L_);
                    fc && me(fc, Zo[Ga]);
                  }
                }
                for (let zo = 0; zo < L_; zo++) me(Vo(wr)[Aa - zo - 1], Zo[bo - zo - 1]);
                return;
              }
              if (Jp(Jr)) {
                F_(wr, Jr);
                return;
              }
            }
            ka(wr, Jr), Ro(wr, Jr, 0), Ro(wr, Jr, 1), F_(wr, Jr);
          }
        }
        function ka(wr, Jr) {
          const Vi = hy(Jr);
          for (const en of Vi) {
            const Aa = ms(wr, en.escapedName);
            Aa && !_t(Aa.declarations, fde) && me(h0(ft(Aa), !!(Aa.flags & 16777216)), h0(ft(en), !!(en.flags & 16777216)));
          }
        }
        function Ro(wr, Jr, Vi) {
          const en = Pa(wr, Vi), Aa = en.length;
          if (Aa > 0) {
            const bo = Pa(Jr, Vi), Zo = bo.length;
            for (let Eu = 0; Eu < Zo; Eu++) eu(_tt(en[Math.max(Aa - Zo + Eu, 0)]), C8(bo[Eu]));
          }
        }
        function eu(wr, Jr) {
          if (!(wr.flags & 64)) {
            const Vi = y, en = Jr.declaration ? Jr.declaration.kind : 0;
            y = y || en === 175 || en === 174 || en === 177, nde(wr, Jr, lr), y = Vi;
          }
          ide(wr, Jr, me);
        }
        function F_(wr, Jr) {
          const Vi = yn(wr) & yn(Jr) & 32 ? 8 : 0, en = Bu(Jr);
          if (G$(wr)) for (const Aa of en) {
            const bo = [];
            for (const Zo of co(wr)) if (TC(kC(Zo, 19456), Aa.keyType)) {
              const Eu = ft(Zo);
              bo.push(Zo.flags & 16777216 ? q$(Eu) : Eu);
            }
            for (const Zo of Bu(wr)) TC(Zo.keyType, Aa.keyType) && bo.push(Zo.type);
            bo.length && Je(Yn(bo), Aa.type, Vi);
          }
          for (const Aa of en) {
            const bo = S8(wr, Aa.keyType);
            bo && Je(bo.type, Aa.type, Vi);
          }
        }
      }
      function lit(r, s) {
        return s === Ke ? r === s : Dh(r, s) || !!(s.flags & 32 && r.flags & 1024 || s.flags & 64 && r.flags & 2048);
      }
      function uit(r, s) {
        return !!(r.flags & 1048576 && s.flags & 1048576 && r.symbol && r.symbol === s.symbol || r.aliasSymbol && r.aliasTypeArguments && r.aliasSymbol === s.aliasSymbol);
      }
      function _it(r) {
        const s = g_(r);
        return !!s && Wc(s.flags & 67108864 ? qfe(s) : s, 14811132);
      }
      function Ty(r) {
        return !!(yn(r) & 128);
      }
      function pde(r) {
        return !!(yn(r) & 16512);
      }
      function fit(r) {
        if (r.length > 1) {
          const s = dn(r, pde);
          if (s.length) {
            const l = Yn(s, 2);
            return zi(dn(r, (f) => !pde(f)), [l]);
          }
        }
        return r;
      }
      function pit(r) {
        return r.priority & 416 ? Ss(r.contraCandidates) : Nnt(r.contraCandidates);
      }
      function dit(r, s) {
        const l = fit(r.candidates), f = _it(r.typeParameter) || jT(r.typeParameter), m = !f && r.topLevel && (r.isFixed || !Knt(s, r.typeParameter)), y = f ? el(l, ku) : m ? el(l, mb) : l;
        return of(r.priority & 416 ? Yn(y, 2) : Pnt(y));
      }
      function dde(r, s) {
        const l = r.inferences[s];
        if (!l.inferredType) {
          let f, m;
          if (r.signature) {
            const x = l.candidates ? dit(l, r.signature) : void 0, O = l.contraCandidates ? pit(l) : void 0;
            if (x || O) {
              const J = x && (!O || !(x.flags & 262145) && _t(l.contraCandidates, (V) => qa(x, V)) && hr(r.inferences, (V) => V !== l && g_(V.typeParameter) !== l.typeParameter || hr(V.candidates, (Y) => qa(Y, x))));
              f = J ? x : O, m = J ? O : x;
            } else if (r.flags & 1) f = wn;
            else {
              const J = j2(l.typeParameter);
              J && (f = Ji(J, WAe(Jrt(r, s), r.nonFixingMapper)));
            }
          } else f = CNe(l);
          l.inferredType = f || mde(!!(r.flags & 2));
          const y = g_(l.typeParameter);
          if (y) {
            const x = Ji(y, r.nonFixingMapper);
            if (f) {
              const O = Of(x, f);
              if (!r.compareTypes(f, O)) {
                const J = l.priority === 128 ? rl(f, (V) => !!r.compareTypes(V, O)) : ct;
                f = J.flags & 262144 ? void 0 : J;
              }
            }
            f || (f = m && r.compareTypes(m, Of(x, m)) ? m : x), l.inferredType = f;
          }
          Mat();
        }
        return l.inferredType;
      }
      function mde(r) {
        return r ? Ve : Re;
      }
      function gde(r) {
        const s = [];
        for (let l = 0; l < r.inferences.length; l++) s.push(dde(r, l));
        return s;
      }
      function NNe(r) {
        switch (r.escapedText) {
          case "document":
          case "console":
            return p.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;
          case "$":
            return yv(L) ? p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery : p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig;
          case "beforeEach":
          case "describe":
          case "suite":
          case "it":
          case "test":
            return yv(L) ? p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha : p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig;
          case "process":
          case "require":
          case "Buffer":
          case "module":
          case "NodeJS":
            return yv(L) ? p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode : p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig;
          case "Bun":
            return yv(L) ? p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun : p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig;
          case "Map":
          case "Set":
          case "Promise":
          case "Symbol":
          case "WeakMap":
          case "WeakSet":
          case "Iterator":
          case "AsyncIterator":
          case "SharedArrayBuffer":
          case "Atomics":
          case "AsyncIterable":
          case "AsyncIterableIterator":
          case "AsyncGenerator":
          case "AsyncGeneratorFunction":
          case "BigInt":
          case "Reflect":
          case "BigInt64Array":
          case "BigUint64Array":
            return p.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later;
          case "await":
            if (za(r.parent)) return p.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function;
          default:
            return r.parent.kind === 305 ? p.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer : p.Cannot_find_name_0;
        }
      }
      function mit(r) {
        if (r.kind === 11 && nk.has(r.text))
          return yv(L) ? p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode : p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig;
      }
      function t_(r) {
        const s = Pn(r);
        return s.resolvedSymbol || (s.resolvedSymbol = !Nc(r) && Gr(r, r, 1160127, NNe(r), !oO(r), !1) || it), s.resolvedSymbol;
      }
      function hde(r) {
        return !!(r.flags & 33554432 || cr(r, (s) => au(s) || Kp(s) || C_(s)));
      }
      function $M(r, s, l, f) {
        switch (r.kind) {
          case 80:
            if (!jb(r)) {
              const x = t_(r);
              return x !== it ? `${f ? Hs(f) : "-1"}|${Kl(s)}|${Kl(l)}|${ss(x)}` : void 0;
            }
          case 110:
            return `0|${f ? Hs(f) : "-1"}|${Kl(s)}|${Kl(l)}`;
          case 236:
          case 218:
            return $M(r.expression, s, l, f);
          case 167:
            const m = $M(r.left, s, l, f);
            return m && `${m}.${r.right.escapedText}`;
          case 212:
          case 213:
            const y = XT(r);
            if (y !== void 0) {
              const x = $M(r.expression, s, l, f);
              return x && `${x}.${y}`;
            }
            if (Po(r) && Fe(r.argumentExpression)) {
              const x = t_(r.argumentExpression);
              if (AC(x) || q8(x) && !V8(x)) {
                const O = $M(r.expression, s, l, f);
                return O && `${O}.@${ss(x)}`;
              }
            }
            break;
          case 207:
          case 208:
          case 263:
          case 219:
          case 220:
          case 175:
            return `${Hs(r)}#${Kl(s)}`;
        }
      }
      function fu(r, s) {
        switch (s.kind) {
          case 218:
          case 236:
            return fu(r, s.expression);
          case 227:
            return Hl(s) && fu(r, s.left) || un(s) && s.operatorToken.kind === 28 && fu(r, s.right);
        }
        switch (r.kind) {
          case 237:
            return s.kind === 237 && r.keywordToken === s.keywordToken && r.name.escapedText === s.name.escapedText;
          case 80:
          case 81:
            return jb(r) ? s.kind === 110 : s.kind === 80 && t_(r) === t_(s) || (ci(s) || Ns(s)) && Ui(t_(r)) === mn(s);
          case 110:
            return s.kind === 110;
          case 108:
            return s.kind === 108;
          case 236:
          case 218:
          case 239:
            return fu(r.expression, s);
          case 212:
          case 213:
            const l = XT(r);
            if (l !== void 0) {
              const f = jo(s) ? XT(s) : void 0;
              if (f !== void 0) return f === l && fu(r.expression, s.expression);
            }
            if (Po(r) && Po(s) && Fe(r.argumentExpression) && Fe(s.argumentExpression)) {
              const f = t_(r.argumentExpression);
              if (f === t_(s.argumentExpression) && (AC(f) || q8(f) && !V8(f))) return fu(r.expression, s.expression);
            }
            break;
          case 167:
            return jo(s) && r.right.escapedText === XT(s) && fu(r.left, s.expression);
          case 227:
            return un(r) && r.operatorToken.kind === 28 && fu(r.right, s);
        }
        return !1;
      }
      function XT(r) {
        if (Ln(r)) return r.name.escapedText;
        if (Po(r)) return git(r);
        if (Ns(r)) {
          const s = m8(r);
          return s ? mc(s) : void 0;
        }
        if (Fi(r)) return "" + r.parent.parameters.indexOf(r);
      }
      function yde(r) {
        return r.flags & 16384 ? r.escapedName : r.flags & 3072 ? mc("" + r.value) : void 0;
      }
      function git(r) {
        return ep(r.argumentExpression) ? mc(r.argumentExpression.text) : go(r.argumentExpression) ? hit(r.argumentExpression) : void 0;
      }
      function hit(r) {
        const s = Tc(r, 111551, !0);
        if (!s || !(AC(s) || s.flags & 8)) return;
        const l = s.valueDeclaration;
        if (l === void 0) return;
        const f = gy(l);
        if (f) {
          const m = yde(f);
          if (m !== void 0) return m;
        }
        if (dS(l) && cy(l, r)) {
          const m = sA(l);
          if (m) {
            const y = Ja(l.parent) ? yl(l) : Ol(m);
            return y && yde(y);
          }
          if (Gh(l)) return Ix(l.name);
        }
      }
      function INe(r, s) {
        for (; jo(r); )
          if (r = r.expression, fu(r, s)) return !0;
        return !1;
      }
      function QT(r, s) {
        for (; Vu(r); )
          if (r = r.expression, fu(r, s)) return !0;
        return !1;
      }
      function zP(r, s) {
        if (r && r.flags & 134217728) {
          const l = E3e(r, s);
          if (l && gc(l) & 2)
            return l.links.isDiscriminantProperty === void 0 && (l.links.isDiscriminantProperty = (l.links.checkFlags & 192) === 192 && !_b(ft(l))), !!l.links.isDiscriminantProperty;
        }
        return !1;
      }
      function ONe(r, s) {
        let l;
        for (const f of r) if (zP(s, f.escapedName)) {
          if (l) {
            l.push(f);
            continue;
          }
          l = [f];
        }
        return l;
      }
      function yit(r, s) {
        const l = /* @__PURE__ */ new Map();
        let f = 0;
        for (const m of r) if (m.flags & 387448832) {
          const y = xn(m, s);
          if (!y || !R8(y)) return;
          let x = !1;
          ZT(y, (O) => {
            const J = Kl(ku(O)), V = l.get(J);
            V ? V !== Re && (l.set(J, Re), x = !0) : l.set(J, m);
          }), x || f++;
        }
        return f >= 10 && f * 2 >= r.length ? l : void 0;
      }
      function XM(r) {
        const s = r.types;
        if (!(s.length < 10 || yn(r) & 32768 || Qf(s, (l) => !!(l.flags & 119013376)) < 10)) {
          if (r.keyPropertyName === void 0) {
            const l = bt(s, (m) => m.flags & 119013376 ? bt(co(m), (y) => Id(ft(y)) ? y.escapedName : void 0) : void 0), f = l && yit(s, l);
            r.keyPropertyName = f ? l : "", r.constituentMap = f;
          }
          return r.keyPropertyName.length ? r.keyPropertyName : void 0;
        }
      }
      function QM(r, s) {
        var l;
        const f = (l = r.constituentMap) == null ? void 0 : l.get(Kl(ku(s)));
        return f !== Re ? f : void 0;
      }
      function FNe(r, s) {
        const l = XM(r), f = l && xn(s, l);
        return f && QM(r, f);
      }
      function vit(r, s) {
        const l = XM(r), f = l && xr(s.properties, (y) => y.symbol && y.kind === 304 && y.symbol.escapedName === l && aR(y.initializer)), m = f && kR(f.initializer);
        return m && QM(r, m);
      }
      function LNe(r, s) {
        return fu(r, s) || INe(r, s);
      }
      function MNe(r, s) {
        if (r.arguments) {
          for (const l of r.arguments) if (LNe(s, l) || QT(l, s)) return !0;
        }
        return !!(r.expression.kind === 212 && LNe(s, r.expression.expression));
      }
      function vde(r) {
        return r.id <= 0 && (r.id = H1e, H1e++), r.id;
      }
      function bit(r, s) {
        if (!(r.flags & 134217728)) return qa(r, s);
        for (const l of r.types) if (qa(l, s)) return !0;
        return !1;
      }
      function Sit(r, s) {
        if (r === s) return r;
        if (s.flags & 262144) return s;
        const l = `A${Kl(r)},${Kl(s)}`;
        return Vm(l) ?? E1(l, Tit(r, s));
      }
      function Tit(r, s) {
        const l = rl(r, (m) => bit(s, m)), f = s.flags & 8192 && W2(s) ? sc(l, DC) : l;
        return qa(s, f) ? f : r;
      }
      function bde(r) {
        if (yn(r) & 256) return !1;
        const s = om(r);
        return !!(s.callSignatures.length || s.constructSignatures.length || s.members.get("bind") && V2(r, Qs));
      }
      function l4(r, s) {
        return Sde(r, s) & s;
      }
      function lm(r, s) {
        return l4(r, s) !== 0;
      }
      function Sde(r, s) {
        r.flags & 401080320 && (r = xu(r) || Re);
        const l = r.flags;
        if (l & 8388640) return Q ? 16317953 : 16776705;
        if (l & 4195328) {
          const f = l & 1024 && r.value === "";
          return Q ? f ? 12123649 : 7929345 : f ? 12582401 : 16776705;
        }
        if (l & 65600) return Q ? 16317698 : 16776450;
        if (l & 2048) {
          const f = r.value === 0;
          return Q ? f ? 12123394 : 7929090 : f ? 12582146 : 16776450;
        }
        if (l & 128) return Q ? 16317188 : 16775940;
        if (l & 4096) {
          const f = gNe(r);
          return Q ? f ? 12122884 : 7928580 : f ? 12581636 : 16775940;
        }
        return l & 256 ? Q ? 16316168 : 16774920 : l & 8448 ? Q ? r === wt || r === qt ? 12121864 : 7927560 : r === wt || r === qt ? 12580616 : 16774920 : l & 1048576 ? (s & (Q ? 83427327 : 83886079)) === 0 ? 0 : yn(r) & 16 && d0(r) ? Q ? 83427327 : 83886079 : bde(r) ? Q ? 7880640 : 16728e3 : Q ? 7888800 : 16736160 : l & 16 ? 9830144 : l & 4 ? 26607360 : l & 8 ? 42917664 : l & 16896 ? Q ? 7925520 : 16772880 : l & 131072 ? Q ? 7888800 : 16736160 : l & 262144 ? 0 : l & 134217728 ? a_(r.types, (f, m) => f | Sde(m, s), 0) : l & 268435456 ? xit(r, s) : 83886079;
      }
      function xit(r, s) {
        const l = Wc(r, 12713980);
        let f = 0, m = 134217727;
        for (const y of r.types) if (!(l && y.flags & 1048576)) {
          const x = Sde(y, s);
          f |= x, m &= x;
        }
        return f & 8256 | m & 134209471;
      }
      function zp(r, s) {
        return rl(r, (l) => lm(l, s));
      }
      function YT(r, s) {
        const l = Tde(zp(Q && r.flags & 2 ? bu : r, s));
        if (Q) switch (s) {
          case 524288:
            return RNe(l, 65536, 131072, 33554432, vr);
          case 1048576:
            return RNe(l, 131072, 65536, 16777216, $e);
          case 2097152:
          case 4194304:
            return sc(l, (f) => lm(f, 262144) ? znt(f) : f);
        }
        return l;
      }
      function RNe(r, s, l, f, m) {
        const y = l4(r, 50528256);
        if (!(y & s)) return r;
        const x = Yn([Yi, m]);
        return sc(r, (O) => lm(O, s) ? Ss([O, !(y & f) && lm(O, l) ? x : Yi]) : O);
      }
      function Tde(r) {
        return r === bu ? Re : r;
      }
      function xde(r, s) {
        return s ? Yn([Ym(r), Ol(s)]) : r;
      }
      function jNe(r, s) {
        var l;
        const f = u0(s);
        if (!Cp(f)) return rt;
        const m = Ep(f);
        return xn(r, m) || U8((l = xC(r, m)) == null ? void 0 : l.type) || rt;
      }
      function BNe(r, s) {
        return cf(r, BP) && Int(r, s) || U8(xy(65, r, $e, void 0)) || rt;
      }
      function U8(r) {
        return r && (L.noUncheckedIndexedAccess ? Yn([r, Ke]) : r);
      }
      function JNe(r) {
        return Ju(xy(65, r, $e, void 0) || rt);
      }
      function kit(r) {
        return r.parent.kind === 210 && kde(r.parent) || r.parent.kind === 304 && kde(r.parent.parent) ? xde(YM(r), r.right) : Ol(r.right);
      }
      function kde(r) {
        return r.parent.kind === 227 && r.parent.left === r || r.parent.kind === 251 && r.parent.initializer === r;
      }
      function Cit(r, s) {
        return BNe(YM(r), r.elements.indexOf(s));
      }
      function Eit(r) {
        return JNe(YM(r.parent));
      }
      function zNe(r) {
        return jNe(YM(r.parent), r.name);
      }
      function Dit(r) {
        return xde(zNe(r), r.objectAssignmentInitializer);
      }
      function YM(r) {
        const { parent: s } = r;
        switch (s.kind) {
          case 250:
            return Cr;
          case 251:
            return NR(s) || rt;
          case 227:
            return kit(s);
          case 221:
            return $e;
          case 210:
            return Cit(s, r);
          case 231:
            return Eit(s);
          case 304:
            return zNe(s);
          case 305:
            return Dit(s);
        }
        return rt;
      }
      function wit(r) {
        const s = r.parent, l = UNe(s.parent);
        return xde(s.kind === 207 ? jNe(l, r.propertyName || r.name) : r.dotDotDotToken ? JNe(l) : BNe(l, s.elements.indexOf(r)), r.initializer);
      }
      function WNe(r) {
        return Pn(r).resolvedType || Ol(r);
      }
      function Pit(r) {
        return r.initializer ? WNe(r.initializer) : r.parent.parent.kind === 250 ? Cr : r.parent.parent.kind === 251 && NR(r.parent.parent) || rt;
      }
      function UNe(r) {
        return r.kind === 261 ? Pit(r) : wit(r);
      }
      function Ait(r) {
        return r.kind === 261 && r.initializer && af(r.initializer) || r.kind !== 209 && r.parent.kind === 227 && af(r.parent.right);
      }
      function G2(r) {
        switch (r.kind) {
          case 218:
            return G2(r.expression);
          case 227:
            switch (r.operatorToken.kind) {
              case 64:
              case 76:
              case 77:
              case 78:
                return G2(r.left);
              case 28:
                return G2(r.right);
            }
        }
        return r;
      }
      function VNe(r) {
        const { parent: s } = r;
        return s.kind === 218 || s.kind === 227 && s.operatorToken.kind === 64 && s.left === r || s.kind === 227 && s.operatorToken.kind === 28 && s.right === r ? VNe(s) : r;
      }
      function Nit(r) {
        return r.kind === 297 ? ku(Ol(r.expression)) : ct;
      }
      function K$(r) {
        const s = Pn(r);
        if (!s.switchTypes) {
          s.switchTypes = [];
          for (const l of r.caseBlock.clauses) s.switchTypes.push(Nit(l));
        }
        return s.switchTypes;
      }
      function qNe(r) {
        if (_t(r.caseBlock.clauses, (l) => l.kind === 297 && !Xs(l.expression))) return;
        const s = [];
        for (const l of r.caseBlock.clauses) {
          const f = l.kind === 297 ? l.expression.text : void 0;
          s.push(f && !Gi(s, f) ? f : void 0);
        }
        return s;
      }
      function Iit(r, s) {
        return r.flags & 134217728 ? !bt(r.types, (l) => !Gi(s, l)) : Gi(s, r);
      }
      function WP(r, s) {
        return !!(r === s || r.flags & 262144 || s.flags & 134217728 && Oit(r, s));
      }
      function Oit(r, s) {
        if (r.flags & 134217728) {
          for (const l of r.types) if (!Eh(s.types, l)) return !1;
          return !0;
        }
        return r.flags & 98304 && o$(r) === s ? !0 : Eh(s.types, r);
      }
      function ZT(r, s) {
        return r.flags & 134217728 ? bt(r.types, s) : s(r);
      }
      function gp(r, s) {
        return r.flags & 134217728 ? _t(r.types, s) : s(r);
      }
      function cf(r, s) {
        return r.flags & 134217728 ? hr(r.types, s) : s(r);
      }
      function Fit(r, s) {
        return r.flags & 402653184 ? hr(r.types, s) : s(r);
      }
      function rl(r, s) {
        if (r.flags & 134217728) {
          const l = r.types, f = dn(l, s);
          if (f === l) return r;
          const m = r.origin;
          let y;
          if (m && m.flags & 134217728) {
            const x = m.types, O = dn(x, (J) => !!(J.flags & 134217728) || s(J));
            if (x.length - O.length === l.length - f.length) {
              if (O.length === 1) return O[0];
              y = vpe(134217728, O);
            }
          }
          return Spe(f, r.objectFlags & 16809984, void 0, void 0, y);
        }
        return r.flags & 262144 || s(r) ? r : ct;
      }
      function eX(r, s) {
        return rl(r, (l) => l !== s);
      }
      function Lit(r) {
        return r.flags & 134217728 ? r.types.length : 1;
      }
      function sc(r, s, l) {
        if (r.flags & 262144) return r;
        if (!(r.flags & 134217728)) return s(r);
        const f = r.origin, m = f && f.flags & 134217728 ? f.types : r.types;
        let y, x = !1;
        for (const O of m) {
          const J = O.flags & 134217728 ? sc(O, s, l) : s(O);
          x || (x = O !== J), J && (y ? y.push(J) : y = [J]);
        }
        return x ? y && Yn(y, l ? 0 : 1) : r;
      }
      function GNe(r, s, l, f) {
        return r.flags & 134217728 && l ? Yn(or(r.types, s), 1, l, f) : sc(r, s);
      }
      function UP(r, s) {
        return rl(r, (l) => (l.flags & s) !== 0);
      }
      function HNe(r, s) {
        return Wc(r, 4194528) && Wc(s, 12590080) ? sc(r, (l) => l.flags & 32 ? UP(s, 12583968) : WT(l) && !Wc(s, 12582944) ? UP(s, 1024) : l.flags & 64 ? UP(s, 2112) : l.flags & 128 ? UP(s, 4224) : l) : r;
      }
      function u4(r) {
        return r.flags === 0;
      }
      function KT(r) {
        return r.flags === 0 ? r.type : r;
      }
      function _4(r, s) {
        return s ? {
          flags: 0,
          type: r.flags & 262144 ? wn : r
        } : r;
      }
      function Mit(r) {
        const s = Lp(256);
        return s.elementType = r, s;
      }
      function Cde(r) {
        return we[r.id] || (we[r.id] = Mit(r));
      }
      function $Ne(r, s) {
        const l = J8(m0(kR(s)));
        return WP(l, r.elementType) ? r : Cde(Yn([r.elementType, l]));
      }
      function Rit(r) {
        return r.flags & 262144 ? ll : Ju(r.flags & 134217728 ? Yn(r.types, 2) : r);
      }
      function jit(r) {
        return r.finalArrayType || (r.finalArrayType = Rit(r.elementType));
      }
      function ZM(r) {
        return yn(r) & 256 ? jit(r) : r;
      }
      function Bit(r) {
        return yn(r) & 256 ? r.elementType : ct;
      }
      function Jit(r) {
        let s = !1;
        for (const l of r) if (!(l.flags & 262144)) {
          if (!(yn(l) & 256)) return !1;
          s = !0;
        }
        return s;
      }
      function XNe(r) {
        const s = VNe(r), l = s.parent, f = Ln(l) && (l.name.escapedText === "length" || l.parent.kind === 214 && Fe(l.name) && aJ(l.name)), m = l.kind === 213 && l.expression === s && l.parent.kind === 227 && l.parent.operatorToken.kind === 64 && l.parent.left === l && !Qy(l.parent) && Cu(Ol(l.argumentExpression), 67648);
        return f || m;
      }
      function zit(r) {
        return (ci(r) || ga(r) || f_(r) || Fi(r)) && !!(_l(r) || rn(r) && E0(r) && r.initializer && r1(r.initializer) && yf(r.initializer));
      }
      function tX(r, s) {
        if (r = zc(r), r.flags & 8752) return ft(r);
        if (r.flags & 7) {
          if (gc(r) & 262144) {
            const f = r.links.syntheticOrigin;
            if (f && tX(f)) return ft(r);
          }
          const l = r.valueDeclaration;
          if (l) {
            if (zit(l)) return ft(r);
            if (ci(l) && l.parent.parent.kind === 251) {
              const f = l.parent.parent, m = KM(f.expression, void 0);
              if (m) return xy(f.awaitModifier ? 15 : 13, m, $e, void 0);
            }
            s && ts(s, Kr(l, p._0_needs_an_explicit_type_annotation, Xi(r)));
          }
        }
      }
      function KM(r, s) {
        if (!(r.flags & 67108864)) switch (r.kind) {
          case 80:
            return tX(Ui(t_(r)), s);
          case 110:
            return cat(r);
          case 108:
            return oX(r);
          case 212: {
            const l = KM(r.expression, s);
            if (l) {
              const f = r.name;
              let m;
              if (Oi(f)) {
                if (!l.symbol) return;
                m = ms(l, bA(l.symbol, f.escapedText));
              } else m = ms(l, f.escapedText);
              return m && tX(m, s);
            }
            return;
          }
          case 218:
            return KM(r.expression, s);
        }
      }
      function eR(r) {
        const s = Pn(r);
        let l = s.effectsSignature;
        if (l === void 0) {
          let f;
          un(r) ? f = Cme(p4(r.right)) : r.parent.kind === 245 ? f = KM(r.expression, void 0) : r.expression.kind !== 108 && (Vu(r) ? f = rg(j8(aa(r.expression), r.expression), r.expression) : f = p4(r.expression));
          const m = Pa(f && h_(f) || Re, 0), y = m.length === 1 && !m[0].typeParameters ? m[0] : _t(m, QNe) ? m4(r) : void 0;
          l = s.effectsSignature = y && QNe(y) ? y : La;
        }
        return l === La ? void 0 : l;
      }
      function QNe(r) {
        return !!(jp(r) || r.declaration && (r4(r.declaration) || Re).flags & 262144);
      }
      function Wit(r, s) {
        if (r.kind === 1 || r.kind === 3) return s.arguments[r.parameterIndex];
        const l = Gs(s.expression);
        return jo(l) ? Gs(l.expression) : void 0;
      }
      function Uit(r) {
        const s = cr(r, aB), l = Sr(r), f = _g(l, s.statements.pos);
        Ws.add(wl(l, f.start, f.length, p.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis));
      }
      function tR(r) {
        const s = rX(r, !1);
        return Jc = r, Fp = s, s;
      }
      function rR(r) {
        const s = Gs(r, !0);
        return s.kind === 97 || s.kind === 227 && (s.operatorToken.kind === 56 && (rR(s.left) || rR(s.right)) || s.operatorToken.kind === 57 && rR(s.left) && rR(s.right));
      }
      function rX(r, s) {
        for (; ; ) {
          if (r === Jc) return Fp;
          const l = r.flags;
          if (l & 4096) {
            if (!s) {
              const f = vde(r), m = nC[f];
              return m !== void 0 ? m : nC[f] = rX(r, !0);
            }
            s = !1;
          }
          if (l & 368) r = r.antecedent;
          else if (l & 512) {
            const f = eR(r.node);
            if (f) {
              const m = jp(f);
              if (m && m.kind === 3 && !m.type) {
                const y = r.node.arguments[m.parameterIndex];
                if (y && rR(y)) return !1;
              }
              if (ro(f).flags & 262144) return !1;
            }
            r = r.antecedent;
          } else {
            if (l & 4) return _t(r.antecedent, (f) => rX(f, !1));
            if (l & 8) {
              const f = r.antecedent;
              if (f === void 0 || f.length === 0) return !1;
              r = f[0];
            } else if (l & 128) {
              const f = r.node;
              if (f.clauseStart === f.clauseEnd && W8e(f.switchStatement)) return !1;
              r = r.antecedent;
            } else if (l & 1024) {
              Jc = void 0;
              const f = r.node.target, m = f.antecedent;
              f.antecedent = r.node.antecedents;
              const y = rX(r.antecedent, !1);
              return f.antecedent = m, y;
            } else return !(l & 1);
          }
        }
      }
      function nX(r, s) {
        for (; ; ) {
          const l = r.flags;
          if (l & 4096) {
            if (!s) {
              const f = vde(r), m = lT[f];
              return m !== void 0 ? m : lT[f] = nX(r, !0);
            }
            s = !1;
          }
          if (l & 496) r = r.antecedent;
          else if (l & 512) {
            if (r.node.expression.kind === 108) return !0;
            r = r.antecedent;
          } else {
            if (l & 4) return hr(r.antecedent, (f) => nX(f, !1));
            if (l & 8) r = r.antecedent[0];
            else if (l & 1024) {
              const f = r.node.target, m = f.antecedent;
              f.antecedent = r.node.antecedents;
              const y = nX(r.antecedent, !1);
              return f.antecedent = m, y;
            } else return !!(l & 1);
          }
        }
      }
      function Ede(r) {
        switch (r.kind) {
          case 110:
            return !0;
          case 80:
            if (!jb(r)) {
              const l = t_(r);
              return AC(l) || q8(l) && !V8(l) || !!l.valueDeclaration && Lo(l.valueDeclaration);
            }
            break;
          case 212:
          case 213:
            return Ede(r.expression) && pm(Pn(r).resolvedSymbol || it);
          case 207:
          case 208:
            const s = xm(r.parent);
            return Fi(s) || rte(s) ? !Dde(s) : ci(s) && d7(s);
        }
        return !1;
      }
      function y0(r, s, l = s, f, m = ((y) => (y = qn(r, Bx)) == null ? void 0 : y.flowNode)()) {
        let y, x = !1, O = 0;
        if (Zi) return rt;
        if (!m) return s;
        yo++;
        const J = ki, V = KT(me(m));
        ki = J;
        const Y = yn(V) & 256 && XNe(r) ? ll : ZM(V);
        if (Y === os || r.parent && r.parent.kind === 236 && !(Y.flags & 262144) && zp(Y, 2097152).flags & 262144) return s;
        return Y;
        function be() {
          return x ? y : (x = !0, y = $M(r, s, l, f));
        }
        function me(Lt) {
          var _r;
          if (O === 2e3)
            return (_r = sn) == null || _r.instant(sn.Phase.CheckTypes, "getTypeAtFlowNode_DepthLimit", { flowId: Lt.id }), Zi = !0, Uit(r), rt;
          O++;
          let Or;
          for (; ; ) {
            const Wr = Lt.flags;
            if (Wr & 4096) {
              for (let Ni = J; Ni < ki; Ni++) if (b2[Ni] === Lt)
                return O--, NE[Ni];
              Or = Lt;
            }
            let _n;
            if (Wr & 16) {
              if (_n = gt(Lt), !_n) {
                Lt = Lt.antecedent;
                continue;
              }
            } else if (Wr & 512) {
              if (_n = ir(Lt), !_n) {
                Lt = Lt.antecedent;
                continue;
              }
            } else if (Wr & 96) _n = br(Lt);
            else if (Wr & 128) _n = Hr(Lt);
            else if (Wr & 12) {
              if (Lt.antecedent.length === 1) {
                Lt = Lt.antecedent[0];
                continue;
              }
              _n = Wr & 4 ? lr(Lt) : ur(Lt);
            } else if (Wr & 256) {
              if (_n = mr(Lt), !_n) {
                Lt = Lt.antecedent;
                continue;
              }
            } else if (Wr & 1024) {
              const Ni = Lt.node.target, Ba = Ni.antecedent;
              Ni.antecedent = Lt.node.antecedents, _n = me(Lt.antecedent), Ni.antecedent = Ba;
            } else if (Wr & 2) {
              const Ni = Lt.node;
              if (Ni && Ni !== f && r.kind !== 212 && r.kind !== 213 && !(r.kind === 110 && Ni.kind !== 220)) {
                Lt = Ni.flowNode;
                continue;
              }
              _n = l;
            } else _n = u7(s);
            return Or && (b2[ki] = Or, NE[ki] = _n, ki++), O--, _n;
          }
        }
        function Je(Lt) {
          const _r = Lt.node;
          return wde(_r.kind === 261 || _r.kind === 209 ? UNe(_r) : YM(_r), r);
        }
        function gt(Lt) {
          const _r = Lt.node;
          if (fu(r, _r)) {
            if (!tR(Lt)) return os;
            if (Xy(_r) === 2) {
              const Wr = me(Lt.antecedent);
              return _4(m0(KT(Wr)), u4(Wr));
            }
            if (s === fr || s === ll) {
              if (Ait(_r)) return Cde(ct);
              const Wr = mb(Je(Lt));
              return qa(Wr, s) ? Wr : hl;
            }
            const Or = QB(_r) ? m0(s) : s;
            return Or.flags & 134217728 ? Sit(Or, Je(Lt)) : Or;
          }
          if (INe(r, _r)) {
            if (!tR(Lt)) return os;
            if (ci(_r) && (rn(_r) || d7(_r))) {
              const Or = uD(_r);
              if (Or && (Or.kind === 219 || Or.kind === 220)) return me(Lt.antecedent);
            }
            return s;
          }
          if (ci(_r) && _r.parent.parent.kind === 250 && (fu(r, _r.parent.parent.expression) || QT(_r.parent.parent.expression, r))) return $de(ZM(KT(me(Lt.antecedent))));
        }
        function ht(Lt, _r) {
          const Or = Gs(_r, !0);
          if (Or.kind === 97) return os;
          if (Or.kind === 227) {
            if (Or.operatorToken.kind === 56) return ht(ht(Lt, Or.left), Or.right);
            if (Or.operatorToken.kind === 57) return Yn([ht(Lt, Or.left), ht(Lt, Or.right)]);
          }
          return Mf(Lt, Or, !0);
        }
        function ir(Lt) {
          const _r = eR(Lt.node);
          if (_r) {
            const Or = jp(_r);
            if (Or && (Or.kind === 2 || Or.kind === 3)) {
              const Wr = me(Lt.antecedent), _n = ZM(KT(Wr)), Ni = Or.type ? g7(_n, Or, Lt.node, !0) : Or.kind === 3 && Or.parameterIndex >= 0 && Or.parameterIndex < Lt.node.arguments.length ? ht(_n, Lt.node.arguments[Or.parameterIndex]) : _n;
              return Ni === _n ? Wr : _4(Ni, u4(Wr));
            }
            if (ro(_r).flags & 262144) return os;
          }
        }
        function mr(Lt) {
          if (s === fr || s === ll) {
            const _r = Lt.node;
            if (fu(r, G2(_r.kind === 214 ? _r.expression.expression : _r.left.expression))) {
              const Or = me(Lt.antecedent), Wr = KT(Or);
              if (yn(Wr) & 256) {
                let _n = Wr;
                if (_r.kind === 214) for (const Ni of _r.arguments) _n = $Ne(_n, Ni);
                else Cu(kR(_r.left.argumentExpression), 67648) && (_n = $Ne(_n, _r.right));
                return _n === Wr ? Or : _4(_n, u4(Or));
              }
              return Or;
            }
          }
        }
        function br(Lt) {
          const _r = me(Lt.antecedent), Or = KT(_r);
          if (Or.flags & 262144) return _r;
          const Wr = (Lt.flags & 32) !== 0, _n = ZM(Or), Ni = Mf(_n, Lt.node, Wr);
          return Ni === _n ? _r : _4(Ni, u4(_r));
        }
        function Hr(Lt) {
          const _r = Gs(Lt.node.switchStatement.expression), Or = me(Lt.antecedent);
          let Wr = KT(Or);
          if (fu(r, _r)) Wr = Zo(Wr, Lt.node);
          else if (_r.kind === 222 && fu(r, _r.expression)) Wr = L_(Wr, Lt.node);
          else if (_r.kind === 112) Wr = zo(Wr, Lt.node);
          else {
            Q && (QT(_r, r) ? Wr = bo(Wr, Lt.node, (Ni) => !(Ni.flags & 262148)) : _r.kind === 222 && QT(_r.expression, r) && (Wr = bo(Wr, Lt.node, (Ni) => !(Ni.flags & 262144 || Ni.flags & 1024 && Ni.value === "undefined"))));
            const _n = Ii(_r, Wr);
            _n && (Wr = vs(Wr, _n, Lt.node));
          }
          return _4(Wr, u4(Or));
        }
        function lr(Lt) {
          const _r = [];
          let Or = !1, Wr = !1, _n;
          for (const Ni of Lt.antecedent) {
            if (!_n && Ni.flags & 128 && Ni.node.clauseStart === Ni.node.clauseEnd) {
              _n = Ni;
              continue;
            }
            const Ba = me(Ni), $s = KT(Ba);
            if ($s === s && s === l) return $s;
            hp(_r, $s), WP($s, l) || (Or = !0), u4(Ba) && (Wr = !0);
          }
          if (_n) {
            const Ni = me(_n), Ba = KT(Ni);
            if (!(Ba.flags & 262144) && !Gi(_r, Ba) && !W8e(_n.node.switchStatement)) {
              if (Ba === s && s === l) return Ba;
              _r.push(Ba), WP(Ba, l) || (Or = !0), u4(Ni) && (Wr = !0);
            }
          }
          return _4(En(_r, Or ? 2 : 1), Wr);
        }
        function ur(Lt) {
          const _r = vde(Lt), Or = K0[_r] || (K0[_r] = /* @__PURE__ */ new Map()), Wr = be();
          if (!Wr) return s;
          const _n = Or.get(Wr);
          if (_n) return _n;
          for (let Ml = Vr; Ml < li; Ml++) if (AE[Ml] === Lt && rC[Ml] === Wr && cT[Ml].length) return _4(En(cT[Ml], 1), !0);
          const Ni = [];
          let Ba = !1, $s;
          for (const Ml of Lt.antecedent) {
            let Zc;
            if (!$s) Zc = $s = me(Ml);
            else {
              AE[li] = Lt, rC[li] = Wr, cT[li] = Ni, li++;
              const dm = Td;
              Td = void 0, Zc = me(Ml), Td = dm, li--;
              const v4 = Or.get(Wr);
              if (v4) return v4;
            }
            const Nh = KT(Zc);
            if (hp(Ni, Nh), WP(Nh, l) || (Ba = !0), Nh === s) break;
          }
          const tu = En(Ni, Ba ? 2 : 1);
          return u4($s) ? _4(tu, !0) : (Or.set(Wr, tu), tu);
        }
        function En(Lt, _r) {
          if (Jit(Lt)) return Cde(Yn(or(Lt, Bit)));
          const Or = Tde(Yn(el(Lt, ZM), _r));
          return Or !== s && Or.flags & s.flags & 134217728 && jf(Or.types, s.types) ? s : Or;
        }
        function si(Lt) {
          if (Ja(r) || r1(r) || Hp(r)) {
            if (Fe(Lt)) {
              const Or = Ui(t_(Lt)).valueDeclaration;
              if (Or && (Ns(Or) || Fi(Or)) && r === Or.parent && !Or.initializer && !Or.dotDotDotToken) return Or;
            }
          } else if (jo(Lt)) {
            if (fu(r, Lt.expression)) return Lt;
          } else if (Fe(Lt)) {
            const Or = t_(Lt);
            if (AC(Or)) {
              const Wr = Or.valueDeclaration;
              let _n = _r(Wr);
              if (_n && jo(_n) && fu(r, _n.expression)) return _n;
              if (Ns(Wr) && !Wr.initializer && (_n = _r(Wr.parent.parent), _n && (Fe(_n) || jo(_n)) && fu(r, _n)))
                return Wr;
            }
          }
          return;
          function _r(Or) {
            return ci(Or) && !Or.type && Or.initializer ? Gs(Or.initializer) : void 0;
          }
        }
        function Ii(Lt, _r) {
          if (s.flags & 134217728 || _r.flags & 134217728) {
            const Or = si(Lt);
            if (Or) {
              const Wr = XT(Or);
              if (Wr && zP(s.flags & 134217728 && WP(_r, s) ? s : _r, Wr))
                return Or;
            }
          }
        }
        function Si(Lt, _r, Or) {
          const Wr = XT(_r);
          if (Wr === void 0) return Lt;
          const _n = Vu(_r), Ni = Q && (_n || ite(_r)) && Wc(Lt, 12);
          let Ba = xn(Ni ? zp(Lt, 2097152) : Lt, Wr);
          if (!Ba) return Lt;
          Ba = Ni && _n ? V1(Ba) : Ba;
          const $s = Or(Ba);
          return rl(Lt, (tu) => {
            const Ml = ya(tu, Wr) || Re;
            return !(Ml.flags & 262144) && !($s.flags & 262144) && F8($s, Ml);
          });
        }
        function fi(Lt, _r, Or, Wr, _n) {
          if ((Or === 37 || Or === 38) && Lt.flags & 134217728) {
            const Ni = XM(Lt);
            if (Ni && Ni === XT(_r)) {
              const Ba = QM(Lt, Ol(Wr));
              if (Ba) return Or === (_n ? 37 : 38) ? Ba : Id(xn(Ba, Ni) || Re) ? eX(Lt, Ba) : Lt;
            }
          }
          return Si(Lt, _r, (Ni) => Vi(Ni, Or, Wr, _n));
        }
        function vs(Lt, _r, Or) {
          if (Or.clauseStart < Or.clauseEnd && Lt.flags & 134217728 && XM(Lt) === XT(_r)) {
            const Wr = Yn(or(K$(Or.switchStatement).slice(Or.clauseStart, Or.clauseEnd), (_n) => QM(Lt, _n) || Re));
            if (Wr !== Re) return Wr;
          }
          return Si(Lt, _r, (Wr) => Zo(Wr, Or));
        }
        function Cs(Lt, _r, Or) {
          if (fu(r, _r)) return YT(Lt, Or ? 4194304 : 8388608);
          Q && Or && QT(_r, r) && (Lt = YT(Lt, 2097152));
          const Wr = Ii(_r, Lt);
          return Wr ? Si(Lt, Wr, (_n) => zp(_n, Or ? 4194304 : 8388608)) : Lt;
        }
        function ka(Lt, _r, Or) {
          const Wr = ms(Lt, _r);
          return Wr ? !!(Wr.flags & 16777216 || gc(Wr) & 48) || Or : !!xC(Lt, _r) || !Or;
        }
        function Ro(Lt, _r, Or) {
          const Wr = Ep(_r);
          if (gp(Lt, (_n) => ka(_n, Wr, !0))) return rl(Lt, (_n) => ka(_n, Wr, Or));
          if (Or) {
            const _n = Vtt();
            if (_n) return Ss([Lt, i4(_n, [_r, Re])]);
          }
          return Lt;
        }
        function eu(Lt, _r, Or, Wr, _n) {
          return _n = _n !== (Or.kind === 112) != (Wr !== 38 && Wr !== 36), Mf(Lt, _r, _n);
        }
        function F_(Lt, _r, Or) {
          switch (_r.operatorToken.kind) {
            case 64:
            case 76:
            case 77:
            case 78:
              return Cs(Mf(Lt, _r.right, Or), _r.left, Or);
            case 35:
            case 36:
            case 37:
            case 38:
              const Wr = _r.operatorToken.kind, _n = G2(_r.left), Ni = G2(_r.right);
              if (_n.kind === 222 && Xs(Ni)) return en(Lt, _n, Wr, Ni, Or);
              if (Ni.kind === 222 && Xs(_n)) return en(Lt, Ni, Wr, _n, Or);
              if (fu(r, _n)) return Vi(Lt, Wr, Ni, Or);
              if (fu(r, Ni)) return Vi(Lt, Wr, _n, Or);
              Q && (QT(_n, r) ? Lt = Jr(Lt, Wr, Ni, Or) : QT(Ni, r) && (Lt = Jr(Lt, Wr, _n, Or)));
              const Ba = Ii(_n, Lt);
              if (Ba) return fi(Lt, Ba, Wr, Ni, Or);
              const $s = Ii(Ni, Lt);
              if ($s) return fi(Lt, $s, Wr, _n, Or);
              if (fc(_n)) return $_(Lt, Wr, Ni, Or);
              if (fc(Ni)) return $_(Lt, Wr, _n, Or);
              if (X4(Ni) && !jo(_n)) return eu(Lt, _n, Ni, Wr, Or);
              if (X4(_n) && !jo(Ni)) return eu(Lt, Ni, _n, Wr, Or);
              break;
            case 104:
              return Pc(Lt, _r, Or);
            case 103:
              if (Oi(_r.left)) return wr(Lt, _r, Or);
              const tu = G2(_r.right);
              if (B8(Lt) && jo(r) && fu(r.expression, tu)) {
                const Ml = Ol(_r.left);
                if (Cp(Ml) && XT(r) === Ep(Ml)) return zp(Lt, Or ? 524288 : 65536);
              }
              if (fu(r, tu)) {
                const Ml = Ol(_r.left);
                if (Cp(Ml)) return Ro(Lt, Ml, Or);
              }
              break;
            case 28:
              return Mf(Lt, _r.right, Or);
            case 56:
              return Or ? Mf(Mf(Lt, _r.left, !0), _r.right, !0) : Yn([Mf(Lt, _r.left, !1), Mf(Lt, _r.right, !1)]);
            case 57:
              return Or ? Yn([Mf(Lt, _r.left, !0), Mf(Lt, _r.right, !0)]) : Mf(Mf(Lt, _r.left, !1), _r.right, !1);
          }
          return Lt;
        }
        function wr(Lt, _r, Or) {
          if (!fu(r, G2(_r.right))) return Lt;
          E.assertNode(_r.left, Oi);
          const Wr = bX(_r.left);
          if (Wr === void 0) return Lt;
          const _n = Wr.parent;
          return Cy(Lt, vl(E.checkDefined(Wr.valueDeclaration, "should always have a declaration")) ? ft(_n) : Oo(_n), Or, !0);
        }
        function Jr(Lt, _r, Or, Wr) {
          const _n = _r === 35 || _r === 37, Ni = _r === 35 || _r === 36 ? 12 : 4, Ba = Ol(Or);
          return _n !== Wr && cf(Ba, ($s) => !!($s.flags & Ni)) || _n === Wr && cf(Ba, ($s) => !($s.flags & (3 | Ni))) ? YT(Lt, 2097152) : Lt;
        }
        function Vi(Lt, _r, Or, Wr) {
          if (Lt.flags & 1) return Lt;
          (_r === 36 || _r === 38) && (Wr = !Wr);
          const _n = Ol(Or), Ni = _r === 35 || _r === 36;
          if (_n.flags & 12)
            return Q ? YT(Lt, Ni ? Wr ? 262144 : 2097152 : _n.flags & 8 ? Wr ? 131072 : 1048576 : Wr ? 65536 : 524288) : Lt;
          if (Wr) {
            if (!Ni && (Lt.flags & 2 || gp(Lt, Ag))) {
              if (_n.flags & 12845052 || Ag(_n)) return _n;
              if (_n.flags & 1048576) return cs;
            }
            return HNe(rl(Lt, (Ba) => F8(Ba, _n) || Ni && Wnt(Ba, _n)), _n);
          }
          return Id(_n) ? rl(Lt, (Ba) => !(fNe(Ba) && F8(Ba, _n))) : Lt;
        }
        function en(Lt, _r, Or, Wr, _n) {
          (Or === 36 || Or === 38) && (_n = !_n);
          const Ni = G2(_r.expression);
          if (!fu(r, Ni)) {
            Q && QT(Ni, r) && _n === (Wr.text !== "undefined") && (Lt = YT(Lt, 2097152));
            const Ba = Ii(Ni, Lt);
            return Ba ? Si(Lt, Ba, ($s) => Aa($s, Wr, _n)) : Lt;
          }
          return Aa(Lt, Wr, _n);
        }
        function Aa(Lt, _r, Or) {
          return Or ? Eu(Lt, _r.text) : YT(Lt, qW.get(_r.text) || 32768);
        }
        function bo(Lt, { switchStatement: _r, clauseStart: Or, clauseEnd: Wr }, _n) {
          return Or !== Wr && hr(K$(_r).slice(Or, Wr), _n) ? zp(Lt, 2097152) : Lt;
        }
        function Zo(Lt, { switchStatement: _r, clauseStart: Or, clauseEnd: Wr }) {
          const _n = K$(_r);
          if (!_n.length) return Lt;
          const Ni = _n.slice(Or, Wr), Ba = Or === Wr || Gi(Ni, ct);
          if (Lt.flags & 2 && !Ba) {
            let Zc;
            for (let Nh = 0; Nh < Ni.length; Nh += 1) {
              const dm = Ni[Nh];
              if (dm.flags & 12845052)
                Zc !== void 0 && Zc.push(dm);
              else if (dm.flags & 1048576)
                Zc === void 0 && (Zc = Ni.slice(0, Nh)), Zc.push(cs);
              else return Lt;
            }
            return Yn(Zc === void 0 ? Ni : Zc);
          }
          const $s = Yn(Ni), tu = $s.flags & 262144 ? ct : HNe(rl(Lt, (Zc) => F8($s, Zc)), $s);
          if (!Ba) return tu;
          const Ml = rl(Lt, (Zc) => !(fNe(Zc) && Gi(_n, Zc.flags & 4 ? $e : ku(Fnt(Zc)), (Nh, dm) => Id(Nh) && F8(Nh, dm))));
          return tu.flags & 262144 ? Ml : Yn([tu, Ml]);
        }
        function Eu(Lt, _r) {
          switch (_r) {
            case "string":
              return Ga(Lt, Cr, 1);
            case "number":
              return Ga(Lt, et, 2);
            case "bigint":
              return Ga(Lt, kt, 4);
            case "boolean":
              return Ga(Lt, Jt, 8);
            case "symbol":
              return Ga(Lt, $t, 16);
            case "object":
              return Lt.flags & 1 ? Lt : Yn([Ga(Lt, cs, 32), Ga(Lt, vr, 131072)]);
            case "function":
              return Lt.flags & 1 ? Lt : Ga(Lt, Qs, 64);
            case "undefined":
              return Ga(Lt, $e, 65536);
          }
          return Ga(Lt, cs, 128);
        }
        function Ga(Lt, _r, Or) {
          return sc(Lt, (Wr) => tg(Wr, _r, lp) ? lm(Wr, Or) ? Wr : ct : V2(_r, Wr) ? _r : lm(Wr, Or) ? Ss([Wr, _r]) : ct);
        }
        function L_(Lt, { switchStatement: _r, clauseStart: Or, clauseEnd: Wr }) {
          const _n = qNe(_r);
          if (!_n) return Lt;
          const Ni = qs(_r.caseBlock.clauses, (Ba) => Ba.kind === 298);
          if (Or === Wr || Ni >= Or && Ni < Wr) {
            const Ba = z8e(Or, Wr, _n);
            return rl(Lt, ($s) => l4($s, Ba) === Ba);
          }
          return Yn(or(_n.slice(Or, Wr), (Ba) => Ba ? Eu(Lt, Ba) : ct));
        }
        function zo(Lt, { switchStatement: _r, clauseStart: Or, clauseEnd: Wr }) {
          const _n = qs(_r.caseBlock.clauses, (Ba) => Ba.kind === 298), Ni = Or === Wr || _n >= Or && _n < Wr;
          for (let Ba = 0; Ba < Or; Ba++) {
            const $s = _r.caseBlock.clauses[Ba];
            $s.kind === 297 && (Lt = Mf(Lt, $s.expression, !1));
          }
          if (Ni) {
            for (let Ba = Wr; Ba < _r.caseBlock.clauses.length; Ba++) {
              const $s = _r.caseBlock.clauses[Ba];
              $s.kind === 297 && (Lt = Mf(Lt, $s.expression, !1));
            }
            return Lt;
          }
          return Yn(or(_r.caseBlock.clauses.slice(Or, Wr), (Ba) => Ba.kind === 297 ? Mf(Lt, Ba.expression, !0) : ct));
        }
        function fc(Lt) {
          return (Ln(Lt) && On(Lt.name) === "constructor" || Po(Lt) && Xs(Lt.argumentExpression) && Lt.argumentExpression.text === "constructor") && fu(r, Lt.expression);
        }
        function $_(Lt, _r, Or, Wr) {
          if (Wr ? _r !== 35 && _r !== 37 : _r !== 36 && _r !== 38) return Lt;
          const _n = Ol(Or);
          if (!rge(_n) && !FT(_n)) return Lt;
          const Ni = ms(_n, "prototype");
          if (!Ni) return Lt;
          const Ba = ft(Ni), $s = Bi(Ba) ? void 0 : Ba;
          if (!$s || $s === io || $s === Qs) return Lt;
          if (Bi(Lt)) return $s;
          return rl(Lt, (Ml) => tu(Ml, $s));
          function tu(Ml, Zc) {
            return Ml.flags & 1048576 && yn(Ml) & 1 || Zc.flags & 1048576 && yn(Zc) & 1 ? Ml.symbol === Zc.symbol : V2(Ml, Zc);
          }
        }
        function Pc(Lt, _r, Or) {
          const Wr = G2(_r.left);
          if (!fu(r, Wr))
            return Or && Q && QT(Wr, r) ? YT(Lt, 2097152) : Lt;
          const _n = _r.right, Ni = Ol(_n);
          if (!pb(Ni, io)) return Lt;
          const Ba = eR(_r), $s = Ba && jp(Ba);
          if ($s && $s.kind === 1 && $s.parameterIndex === 0) return Cy(Lt, $s.type, Or, !0);
          if (!pb(Ni, Qs)) return Lt;
          const tu = sc(Ni, oc);
          return Bi(Lt) && (tu === io || tu === Qs) || !Or && !(tu.flags & 1048576 && !Ag(tu)) ? Lt : Cy(Lt, tu, Or, !0);
        }
        function oc(Lt) {
          const _r = xn(Lt, "prototype");
          if (_r && !Bi(_r)) return _r;
          const Or = Pa(Lt, 1);
          return Or.length ? Yn(or(Or, (Wr) => ro(C8(Wr)))) : Yi;
        }
        function Cy(Lt, _r, Or, Wr) {
          const _n = Lt.flags & 134217728 ? `N${Kl(Lt)},${Kl(_r)},${(Or ? 1 : 0) | (Wr ? 2 : 0)}` : void 0;
          return Vm(_n) ?? E1(_n, e3(Lt, _r, Or, Wr));
        }
        function e3(Lt, _r, Or, Wr) {
          if (!Or) {
            if (Lt === _r) return ct;
            if (Wr) return rl(Lt, (tu) => !pb(tu, _r));
            Lt = Lt.flags & 2 ? bu : Lt;
            const $s = Cy(Lt, _r, !0, !1);
            return Tde(rl(Lt, (tu) => !WP(tu, $s)));
          }
          if (Lt.flags & 3 || Lt === _r) return _r;
          const _n = Wr ? pb : V2, Ni = Lt.flags & 134217728 ? XM(Lt) : void 0, Ba = sc(_r, ($s) => {
            const tu = Ni && xn($s, Ni), Ml = sc(tu && QM(Lt, tu) || Lt, Wr ? (Zc) => pb(Zc, $s) ? Zc : pb($s, Zc) ? $s : ct : (Zc) => RP(Zc, $s) ? Zc : RP($s, Zc) ? $s : V2(Zc, $s) ? Zc : V2($s, Zc) ? $s : ct);
            return Ml.flags & 262144 ? sc(Lt, (Zc) => Wc(Zc, 132644864) && _n($s, xu(Zc) || Re) ? Ss([Zc, $s]) : ct) : Ml;
          });
          return Ba.flags & 262144 ? V2(_r, Lt) ? _r : qa(Lt, _r) ? Lt : qa(_r, Lt) ? _r : Ss([Lt, _r]) : Ba;
        }
        function t3(Lt, _r, Or) {
          if (MNe(_r, r)) {
            const Wr = Or || !uS(_r) ? eR(_r) : void 0, _n = Wr && jp(Wr);
            if (_n && (_n.kind === 0 || _n.kind === 1)) return g7(Lt, _n, _r, Or);
          }
          if (B8(Lt) && jo(r) && Ln(_r.expression)) {
            const Wr = _r.expression;
            if (fu(r.expression, G2(Wr.expression)) && Fe(Wr.name) && Wr.name.escapedText === "hasOwnProperty" && _r.arguments.length === 1) {
              const _n = _r.arguments[0];
              if (Xs(_n) && XT(r) === mc(_n.text)) return zp(Lt, Or ? 524288 : 65536);
            }
          }
          return Lt;
        }
        function g7(Lt, _r, Or, Wr) {
          if (_r.type && !(Bi(Lt) && (_r.type === io || _r.type === Qs))) {
            const _n = Wit(_r, Or);
            if (_n) {
              if (fu(r, _n)) return Cy(Lt, _r.type, Wr, !1);
              Q && QT(_n, r) && (Wr && !lm(_r.type, 65536) || !Wr && cf(_r.type, uR)) && (Lt = YT(Lt, 2097152));
              const Ni = Ii(_n, Lt);
              if (Ni) return Si(Lt, Ni, (Ba) => Cy(Ba, _r.type, Wr, !1));
            }
          }
          return Lt;
        }
        function Mf(Lt, _r, Or) {
          if ($7(_r) || un(_r.parent) && (_r.parent.operatorToken.kind === 61 || _r.parent.operatorToken.kind === 78) && _r.parent.left === _r) return h7(Lt, _r, Or);
          switch (_r.kind) {
            case 80:
              if (!fu(r, _r) && T < 5) {
                const Wr = t_(_r);
                if (AC(Wr)) {
                  const _n = Wr.valueDeclaration;
                  if (_n && ci(_n) && !_n.type && _n.initializer && Ede(r)) {
                    T++;
                    const Ni = Mf(Lt, _n.initializer, Or);
                    return T--, Ni;
                  }
                }
              }
            case 110:
            case 108:
            case 212:
            case 213:
              return Cs(Lt, _r, Or);
            case 214:
              return t3(Lt, _r, Or);
            case 218:
            case 236:
            case 239:
              return Mf(Lt, _r.expression, Or);
            case 227:
              return F_(Lt, _r, Or);
            case 225:
              if (_r.operator === 54) return Mf(Lt, _r.operand, !Or);
              break;
          }
          return Lt;
        }
        function h7(Lt, _r, Or) {
          if (fu(r, _r)) return YT(Lt, Or ? 2097152 : 262144);
          const Wr = Ii(_r, Lt);
          return Wr ? Si(Lt, Wr, (_n) => zp(_n, Or ? 2097152 : 262144)) : Lt;
        }
      }
      function Vit(r, s) {
        if (r = Ui(r), (s.kind === 80 || s.kind === 81) && (CD(s) && (s = s.parent), fg(s) && (!Qy(s) || qx(s)))) {
          const l = U$(qx(s) && s.kind === 212 ? vX(s, void 0, !0) : Ol(s));
          if (Ui(Pn(s).resolvedSymbol) === r) return l;
        }
        return pg(s) && vm(s.parent) && IT(s.parent) ? a$(s.parent.symbol) : EJ(s) && qx(s.parent) ? cd(r) : kn(r);
      }
      function VP(r) {
        return cr(r.parent, (s) => Ra(s) && !lv(s) || s.kind === 269 || s.kind === 308 || s.kind === 173);
      }
      function qit(r) {
        return (r.lastAssignmentPos !== void 0 || V8(r) && r.lastAssignmentPos !== void 0) && r.lastAssignmentPos < 0;
      }
      function V8(r) {
        return !YNe(r, void 0);
      }
      function YNe(r, s) {
        const l = cr(r.valueDeclaration, iX);
        if (!l) return !1;
        const f = Pn(l);
        return f.flags & 131072 || (f.flags |= 131072, Git(l) || KNe(l)), !r.lastAssignmentPos || s && Math.abs(r.lastAssignmentPos) < s.pos;
      }
      function Dde(r) {
        return E.assert(ci(r) || Fi(r)), ZNe(r.name);
      }
      function ZNe(r) {
        return r.kind === 80 ? V8(mn(r.parent)) : _t(r.elements, (s) => s.kind !== 233 && ZNe(s.name));
      }
      function Git(r) {
        return !!cr(r.parent, (s) => iX(s) && !!(Pn(s).flags & 131072));
      }
      function iX(r) {
        return So(r) || Pi(r);
      }
      function KNe(r) {
        switch (r.kind) {
          case 80:
            const s = Xy(r);
            if (s !== 0) {
              const m = t_(r), y = s === 1 || m.lastAssignmentPos !== void 0 && m.lastAssignmentPos < 0;
              q8(m) && ((m.lastAssignmentPos === void 0 || Math.abs(m.lastAssignmentPos) !== Number.MAX_VALUE) && (m.lastAssignmentPos = cr(r, iX) === cr(m.valueDeclaration, iX) ? Hit(r, m.valueDeclaration) : Number.MAX_VALUE), y && m.lastAssignmentPos > 0 && (m.lastAssignmentPos *= -1));
            }
            return;
          case 282:
            const l = r.parent.parent, f = r.propertyName || r.name;
            if (!r.isTypeOnly && !l.isTypeOnly && !l.moduleSpecifier && f.kind !== 11) {
              const m = Tc(f, 111551, !0, !0);
              m && q8(m) && (m.lastAssignmentPos = (m.lastAssignmentPos !== void 0 && m.lastAssignmentPos < 0 ? -1 : 1) * Number.MAX_VALUE);
            }
            return;
          case 265:
          case 266:
          case 267:
            return;
        }
        ui(r) || Fa(r, KNe);
      }
      function Hit(r, s) {
        let l = r.pos;
        for (; r && r.pos > s.pos; ) {
          switch (r.kind) {
            case 244:
            case 245:
            case 246:
            case 247:
            case 248:
            case 249:
            case 250:
            case 251:
            case 255:
            case 256:
            case 259:
            case 264:
              l = r.end;
          }
          r = r.parent;
        }
        return l;
      }
      function AC(r) {
        return r.flags & 3 && (qde(r) & 6) !== 0;
      }
      function q8(r) {
        const s = r.valueDeclaration && xm(r.valueDeclaration);
        return !!s && (Fi(s) || ci(s) && (Zb(s.parent) || eIe(s)));
      }
      function eIe(r) {
        return !!(r.parent.flags & 1) && !(nv(r) & 32 || r.parent.parent.kind === 244 && D0(r.parent.parent.parent));
      }
      function $it(r) {
        const s = Pn(r);
        if (s.parameterInitializerContainsUndefined === void 0) {
          if (!Tt(r, 8))
            return bC(r.symbol), !0;
          const l = !!lm(GP(r, 0), 16777216);
          if (!Kn())
            return bC(r.symbol), !0;
          s.parameterInitializerContainsUndefined ?? (s.parameterInitializerContainsUndefined = l);
        }
        return s.parameterInitializerContainsUndefined;
      }
      function Xit(r, s) {
        return Q && s.kind === 170 && s.initializer && lm(r, 16777216) && !$it(s) ? zp(r, 524288) : r;
      }
      function Qit(r, s) {
        const l = s.parent;
        return l.kind === 212 || l.kind === 167 || l.kind === 214 && l.expression === s || l.kind === 215 && l.expression === s || l.kind === 213 && l.expression === s && !(gp(r, rIe) && VT(Ol(l.argumentExpression)));
      }
      function tIe(r) {
        return r.flags & 268435456 ? _t(r.types, tIe) : !!(r.flags & 132644864 && Km(r).flags & 134217740);
      }
      function rIe(r) {
        return r.flags & 268435456 ? _t(r.types, rIe) : !!(r.flags & 132644864 && !Wc(Km(r), 12));
      }
      function Yit(r, s) {
        const l = (Fe(r) || Ln(r) || Po(r)) && !((qd(r.parent) || JS(r.parent)) && r.parent.tagName === r) && (s && s & 32 ? O_(r, 8) : O_(r, void 0));
        return l && !_b(l);
      }
      function wde(r, s, l) {
        return a4(r) && (r = r.baseType), !(l && l & 2) && gp(r, tIe) && (Qit(r, s) || Yit(s, l)) ? sc(r, Km) : r;
      }
      function nIe(r) {
        return !!cr(r, (s) => {
          const l = s.parent;
          return l === void 0 ? "quit" : Xo(l) ? l.expression === s && go(s) : $u(l) ? l.name === s || l.propertyName === s : !1;
        });
      }
      function NC(r, s, l, f) {
        if (Xt && !(r.flags & 33554432 && !f_(r) && !ga(r)))
          switch (s) {
            case 1:
              return aX(r);
            case 2:
              return iIe(r, l, f);
            case 3:
              return aIe(r);
            case 4:
              return Pde(r);
            case 5:
              return sIe(r);
            case 6:
              return oIe(r);
            case 7:
              return cIe(r);
            case 8:
              return lIe(r);
            case 0:
              if (Fe(r) && (fg(r) || Nu(r.parent) || bl(r.parent) && r.parent.moduleReference === r) && pIe(r)) {
                if (L3(r.parent) && (Ln(r.parent) ? r.parent.expression : r.parent.left) !== r)
                  return;
                aX(r);
                return;
              }
              if (L3(r)) {
                let m = r;
                for (; L3(m); ) {
                  if (Sm(m)) return;
                  m = m.parent;
                }
                return iIe(r);
              }
              return Xo(r) ? aIe(r) : Gu(r) || yd(r) ? Pde(r) : bl(r) ? yS(r) || HX(r) ? oIe(r) : void 0 : $u(r) ? cIe(r) : ((So(r) || gd(r)) && sIe(r), !L.emitDecoratorMetadata || !e2(r) || !tp(r) || !r.modifiers || !rA(U, r, r.parent, r.parent.parent) ? void 0 : lIe(r));
            default:
              E.assertNever(s, `Unhandled reference hint: ${s}`);
          }
      }
      function aX(r) {
        const s = t_(r);
        s && s !== Xe && s !== it && !jb(r) && nR(s, r);
      }
      function iIe(r, s, l) {
        const f = Ln(r) ? r.expression : r.left;
        if (Zy(f) || !Fe(f)) return;
        const m = t_(f);
        if (!m || m === it) return;
        if (Zp(L) || e1(L) && nIe(r)) {
          nR(m, r);
          return;
        }
        const y = l || wc(f);
        if (Bi(y) || y === wn) {
          nR(m, r);
          return;
        }
        let x = s;
        if (!x && !l) {
          const O = Ln(r) ? r.name : r.right, J = Oi(O) && _R(O.escapedText, O), V = h_(Xy(r) !== 0 || Xde(r) ? of(y) : y);
          x = Oi(O) ? J && SX(V, J) || void 0 : ms(V, O.escapedText);
        }
        x && (f7(x) || x.flags & 8 && r.parent.kind === 307) || nR(m, r);
      }
      function aIe(r) {
        if (Fe(r.expression)) {
          const s = r.expression, l = Ui(Tc(s, -1, !0, !0, r));
          l && nR(l, s);
        }
      }
      function Pde(r) {
        if (!hX(r)) {
          const s = Ws && L.jsx === 2 ? p.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found : void 0, l = x2(r), f = Gu(r) ? r.tagName : r, m = L.jsx !== 1 && L.jsx !== 3;
          let y;
          if (yd(r) && l === "null" || (y = Gr(f, l, m ? 111551 : 111167, s, !0)), y && (y.isReferenced = -1, Xt && y.flags & 2097152 && !wd(y) && sX(y)), yd(r)) {
            const x = ige(Sr(r));
            if (x) {
              const O = x_(x).escapedText;
              Gr(f, O, m ? 111551 : 111167, s, !0);
            }
          }
        }
      }
      function sIe(r) {
        z < 2 && Gc(r) & 2 && Zit(yf(r));
      }
      function oIe(r) {
        Qn(r, 32) && uIe(r);
      }
      function cIe(r) {
        if (!r.parent.parent.moduleSpecifier && !r.isTypeOnly && !r.parent.parent.isTypeOnly) {
          const s = r.propertyName || r.name;
          if (s.kind === 11) return;
          const l = Gr(s, s.escapedText, 2998271, void 0, !0);
          if (!(l && (l === ue || l === Ie || l.declarations && D0(Ki(l.declarations[0]))))) {
            const f = l && (l.flags & 2097152 ? Zl(l) : l);
            (!f || m_(f) & 111551) && (uIe(r), aX(s));
          }
          return;
        }
      }
      function lIe(r) {
        if (L.emitDecoratorMetadata) {
          const s = xr(r.modifiers, pl);
          if (!s) return;
          switch (Fl(s, 16), r.kind) {
            case 264:
              const l = Xg(r);
              if (l) for (const x of l.parameters) f4(JX(x));
              break;
            case 178:
            case 179:
              const f = r.kind === 178 ? 179 : 178, m = Ho(mn(r), f);
              f4(IT(r) || m && IT(m));
              break;
            case 175:
              for (const x of r.parameters) f4(JX(x));
              f4(yf(r));
              break;
            case 173:
              f4(_l(r));
              break;
            case 170:
              f4(JX(r));
              const y = r.parent;
              for (const x of y.parameters) f4(JX(x));
              f4(yf(y));
              break;
          }
        }
      }
      function nR(r, s) {
        if (Xt && lC(r, 111551) && !zx(s)) {
          const l = Zl(r);
          m_(r, !0) & 1160127 && (Zp(L) || e1(L) && nIe(s) || !f7(Ui(l))) && sX(r);
        }
      }
      function sX(r) {
        E.assert(Xt);
        const s = Wi(r);
        if (!s.referenced) {
          s.referenced = !0;
          const l = _p(r);
          if (!l) return E.fail();
          yS(l) && m_(zc(r)) & 111551 && aX(x_(l.moduleReference));
        }
      }
      function uIe(r) {
        const s = mn(r), l = Zl(s);
        l && (l === it || m_(s, !0) & 111551 && !f7(l)) && sX(s);
      }
      function _Ie(r, s) {
        if (!r) return;
        const l = x_(r), f = (r.kind === 80 ? 788968 : 1920) | 2097152, m = Gr(l, l.escapedText, f, void 0, !0);
        if (m && m.flags & 2097152) {
          if (Xt && oa(m) && !f7(Zl(m)) && !wd(m)) sX(m);
          else if (s && Zp(L) && u_(L) >= 5 && !oa(m) && !_t(m.declarations, C0)) {
            const y = We(r, p.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled), x = xr(m.declarations || Te, fy);
            x && ts(y, Kr(x, p._0_was_imported_here, On(l)));
          }
        }
      }
      function Zit(r) {
        _Ie(r && tA(r), !1);
      }
      function f4(r) {
        const s = Lme(r);
        s && S_(s) && _Ie(s, !0);
      }
      function Kit(r, s) {
        var l;
        const f = ft(r), m = r.valueDeclaration;
        if (m) {
          if (Ns(m) && !m.initializer && !m.dotDotDotToken && m.parent.elements.length >= 2) {
            const y = m.parent.parent, x = xm(y);
            if (x.kind === 261 && Q2(x) & 6 || x.kind === 170) {
              const O = Pn(y);
              if (!(O.flags & 4194304)) {
                O.flags |= 4194304;
                const J = No(y, 0), V = J && sc(J, Km);
                if (O.flags &= -4194305, V && V.flags & 134217728 && !(x.kind === 170 && Dde(x))) {
                  const Y = m.parent, be = y0(Y, V, V, void 0, s.flowNode);
                  return be.flags & 262144 ? ct : c0(m, be, !0);
                }
              }
            }
          }
          if (Fi(m) && !m.type && !m.initializer && !m.dotDotDotToken) {
            const y = m.parent;
            if (y.parameters.length >= 2 && N$(y)) {
              const x = H8(y);
              if (x && x.parameters.length === 1 && Qu(x)) {
                const O = AP(Ji(ft(x.parameters[0]), (l = H2(y)) == null ? void 0 : l.nonFixingMapper));
                if (O.flags & 134217728 && cf(O, Ls) && !_t(y.parameters, Dde)) return Ff(y0(y, O, O, void 0, s.flowNode), cm(y.parameters.indexOf(m) - (Rb(y) ? 1 : 0)));
              }
            }
          }
        }
        return f;
      }
      function fIe(r, s) {
        if (jb(r)) return;
        if (s === Xe) {
          if (Zde(r, !0)) {
            We(r, p.arguments_cannot_be_referenced_in_property_initializers_or_class_static_initialization_blocks);
            return;
          }
          let y = Kf(r);
          if (y)
            for (z < 2 && (y.kind === 220 ? We(r, p.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression) : Qn(y, 1024) && We(r, p.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)), Pn(y).flags |= 512; y && Bo(y); )
              y = Kf(y), y && (Pn(y).flags |= 512);
          return;
        }
        const l = Ui(s), f = $me(l, r);
        kd(f) && Cpe(r, f) && f.declarations && Cd(r, f.declarations, r.escapedText);
        const m = l.valueDeclaration;
        if (m && l.flags & 32 && Zn(m) && m.name !== r) {
          let y = c_(r, !1, !1);
          for (; y.kind !== 308 && y.parent !== m; ) y = c_(y, !1, !1);
          y.kind !== 308 && (Pn(m).flags |= 262144, Pn(y).flags |= 262144, Pn(r).flags |= 536870912);
        }
        iat(r, s);
      }
      function eat(r, s) {
        if (jb(r)) return iR(r);
        const l = t_(r);
        if (l === it) return rt;
        if (fIe(r, l), l === Xe)
          return Zde(r, !0) ? rt : ft(l);
        pIe(r) && NC(r, 1);
        const f = Ui(l);
        let m = f.valueDeclaration;
        const y = m;
        if (m && m.kind === 209 && Gi(Wm, m.parent) && cr(r, (ur) => ur === m.parent)) return q;
        let x = Kit(f, r);
        const O = Xy(r);
        if (O) {
          if (!(f.flags & 3) && !(rn(r) && f.flags & 512))
            return We(r, f.flags & 384 ? p.Cannot_assign_to_0_because_it_is_an_enum : f.flags & 32 ? p.Cannot_assign_to_0_because_it_is_a_class : f.flags & 1536 ? p.Cannot_assign_to_0_because_it_is_a_namespace : f.flags & 16 ? p.Cannot_assign_to_0_because_it_is_a_function : f.flags & 2097152 ? p.Cannot_assign_to_0_because_it_is_an_import : p.Cannot_assign_to_0_because_it_is_not_a_variable, Xi(l)), rt;
          if (pm(f))
            return f.flags & 3 ? We(r, p.Cannot_assign_to_0_because_it_is_a_constant, Xi(l)) : We(r, p.Cannot_assign_to_0_because_it_is_a_read_only_property, Xi(l)), rt;
        }
        const J = f.flags & 2097152;
        if (f.flags & 3) {
          if (O === 1) return QB(r) ? m0(x) : x;
        } else if (J) m = _p(l);
        else return x;
        if (!m) return x;
        x = wde(x, r, s);
        const V = xm(m).kind === 170, Y = VP(m);
        let be = VP(r);
        const me = be !== Y, Je = r.parent && r.parent.parent && ih(r.parent) && kde(r.parent.parent), gt = l.flags & 134217728, ht = x === fr || x === ll, ir = ht && r.parent.kind === 236;
        for (; be !== Y && (be.kind === 219 || be.kind === 220 || x5(be)) && (AC(f) && x !== ll || q8(f) && YNe(f, r)); ) be = VP(be);
        const mr = y && ci(y) && !wb(y.parent.parent) && !y.initializer && !y.exclamationToken && eIe(y) && !qit(l), br = V || J || me && !mr || Je || gt || tat(r, m) || x !== fr && x !== ll && (!Q || (x.flags & 19) !== 0 || zx(r) || hde(r) || r.parent.kind === 282) || r.parent.kind === 236 || m.kind === 261 && m.exclamationToken || m.flags & 33554432, Hr = ir ? $e : br ? V ? Xit(x, m) : x : ht ? $e : V1(x), lr = ir ? g0(y0(r, x, Hr, be)) : y0(r, x, Hr, be);
        if (!XNe(r) && (x === fr || x === ll)) {
          if (lr === fr || lr === ll)
            return $ && (We(va(m), p.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined, Xi(l), Xr(lr)), We(r, p.Variable_0_implicitly_has_an_1_type, Xi(l), Xr(lr))), u7(lr);
        } else if (!br && !c4(x) && c4(lr))
          return We(r, p.Variable_0_is_used_before_being_assigned, Xi(l)), x;
        return O ? m0(lr) : lr;
      }
      function tat(r, s) {
        if (Ns(s)) {
          const l = cr(r, Ns);
          return l && xm(l) === xm(s);
        }
      }
      function pIe(r) {
        var s;
        const l = r.parent;
        if (l) {
          if (Ln(l) && l.expression === r || $u(l) && l.isTypeOnly) return !1;
          const f = (s = l.parent) == null ? void 0 : s.parent;
          if (f && tl(f) && f.isTypeOnly) return !1;
        }
        return !0;
      }
      function rat(r, s) {
        return !!cr(r, (l) => l === s ? "quit" : Ra(l) || l.parent && ga(l.parent) && !vl(l.parent) && l.parent.initializer === l);
      }
      function nat(r, s) {
        return cr(r, (l) => l === s ? "quit" : l === s.initializer || l === s.condition || l === s.incrementor || l === s.statement);
      }
      function Ade(r) {
        return cr(r, (s) => !s || sJ(s) ? "quit" : Uy(s, !1));
      }
      function iat(r, s) {
        if (z >= 2 || (s.flags & 34) === 0 || !s.valueDeclaration || Pi(s.valueDeclaration) || s.valueDeclaration.parent.kind === 300) return;
        const l = Bd(s.valueDeclaration), f = rat(r, l), m = Ade(l);
        if (m) {
          if (f) {
            let y = !0;
            if (Ev(l)) {
              const x = dv(s.valueDeclaration, 262);
              if (x && x.parent === l) {
                const O = nat(r.parent, l);
                if (O) {
                  const J = Pn(O);
                  J.flags |= 8192, hp(J.capturedBlockScopeBindings || (J.capturedBlockScopeBindings = []), s), O === l.initializer && (y = !1);
                }
              }
            }
            y && (Pn(m).flags |= 4096);
          }
          if (Ev(l)) {
            const y = dv(s.valueDeclaration, 262);
            y && y.parent === l && sat(r, l) && (Pn(s.valueDeclaration).flags |= 65536);
          }
          Pn(s.valueDeclaration).flags |= 32768;
        }
        f && (Pn(s.valueDeclaration).flags |= 16384);
      }
      function aat(r, s) {
        const l = Pn(r);
        return !!l && Gi(l.capturedBlockScopeBindings, mn(s));
      }
      function sat(r, s) {
        let l = r;
        for (; l.parent.kind === 218; ) l = l.parent;
        let f = !1;
        if (Qy(l)) f = !0;
        else if (l.parent.kind === 225 || l.parent.kind === 226) {
          const m = l.parent;
          f = m.operator === 46 || m.operator === 47;
        }
        return f ? !!cr(l, (m) => m === s ? "quit" : m === s.statement) : !1;
      }
      function Nde(r, s) {
        if (Pn(r).flags |= 2, s.kind === 173 || s.kind === 177) {
          const l = s.parent;
          Pn(l).flags |= 4;
        } else Pn(s).flags |= 4;
      }
      function dIe(r) {
        return hS(r) ? r : Ra(r) ? void 0 : Fa(r, dIe);
      }
      function Ide(r) {
        return LT(Oo(mn(r))) === fn;
      }
      function mIe(r, s, l) {
        const f = s.parent;
        Mb(f) && !Ide(f) && Bx(r) && r.flowNode && !nX(r.flowNode, !1) && We(r, l);
      }
      function oat(r, s) {
        ga(s) && vl(s) && U && s.initializer && T3(s.initializer, r.pos) && tp(s.parent) && We(r, p.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class);
      }
      function iR(r) {
        const s = zx(r);
        let l = c_(r, !0, !0), f = !1, m = !1;
        for (l.kind === 177 && mIe(r, l, p.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class); ; ) {
          if (l.kind === 220 && (l = c_(l, !1, !m), f = !0), l.kind === 168) {
            l = c_(l, !f, !1), m = !0;
            continue;
          }
          break;
        }
        if (oat(r, l), m) We(r, p.this_cannot_be_referenced_in_a_computed_property_name);
        else switch (l.kind) {
          case 268:
            We(r, p.this_cannot_be_referenced_in_a_module_or_namespace_body);
            break;
          case 267:
            We(r, p.this_cannot_be_referenced_in_current_location);
            break;
        }
        !s && f && z < 2 && Nde(r, l);
        const y = Ode(r, !0, l);
        if (Se) {
          const x = ft(Ie);
          if (y === x && f) We(r, p.The_containing_arrow_function_captures_the_global_value_of_this);
          else if (!y) {
            const O = We(r, p.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);
            if (!Pi(l)) {
              const J = Ode(l);
              J && J !== x && ts(O, Kr(l, p.An_outer_value_of_this_is_shadowed_by_this_container));
            }
          }
        }
        return y || Ve;
      }
      function Ode(r, s = !0, l = c_(r, !1, !1)) {
        const f = rn(r);
        if (Ra(l) && (!Mde(r) || Rb(l))) {
          let m = Nfe(l) || f && uat(l);
          if (!m) {
            const y = lat(l);
            if (f && y) {
              const x = aa(y).symbol;
              x && x.members && x.flags & 16 && (m = Oo(x).thisType);
            } else ng(l) && (m = Oo(ys(l.symbol)).thisType);
            m || (m = Fde(l));
          }
          if (m) return y0(r, m);
        }
        if (Zn(l.parent)) {
          const m = mn(l.parent);
          return y0(r, es(l) ? ft(m) : Oo(m).thisType);
        }
        if (Pi(l))
          if (l.commonJsModuleIndicator) {
            const m = mn(l);
            return m && ft(m);
          } else {
            if (l.externalModuleIndicator) return $e;
            if (s) return ft(Ie);
          }
      }
      function cat(r) {
        const s = c_(r, !1, !1);
        if (Ra(s)) {
          const l = mp(s);
          if (l.thisParameter) return tX(l.thisParameter);
        }
        if (Zn(s.parent)) {
          const l = mn(s.parent);
          return es(s) ? ft(l) : Oo(l).thisType;
        }
      }
      function lat(r) {
        if (r.kind === 219 && un(r.parent) && qc(r.parent) === 3) return r.parent.left.expression.expression;
        if (r.kind === 175 && r.parent.kind === 211 && un(r.parent.parent) && qc(r.parent.parent) === 6) return r.parent.parent.left.expression;
        if (r.kind === 219 && r.parent.kind === 304 && r.parent.parent.kind === 211 && un(r.parent.parent.parent) && qc(r.parent.parent.parent) === 6) return r.parent.parent.parent.left.expression;
        if (r.kind === 219 && ol(r.parent) && Fe(r.parent.name) && (r.parent.name.escapedText === "value" || r.parent.name.escapedText === "get" || r.parent.name.escapedText === "set") && bs(r.parent.parent) && za(r.parent.parent.parent) && r.parent.parent.parent.arguments[2] === r.parent.parent && qc(r.parent.parent.parent) === 9) return r.parent.parent.parent.arguments[0].expression;
        if (hc(r) && Fe(r.name) && (r.name.escapedText === "value" || r.name.escapedText === "get" || r.name.escapedText === "set") && bs(r.parent) && za(r.parent.parent) && r.parent.parent.arguments[2] === r.parent && qc(r.parent.parent) === 9) return r.parent.parent.arguments[0].expression;
      }
      function uat(r) {
        const s = V7(r);
        if (s && s.typeExpression) return Di(s.typeExpression);
        const l = IP(r);
        if (l) return lb(l);
      }
      function _at(r, s) {
        return !!cr(r, (l) => So(l) ? "quit" : l.kind === 170 && l.parent === s);
      }
      function oX(r) {
        const s = r.parent.kind === 214 && r.parent.expression === r, l = K3(r, !0);
        let f = l, m = !1, y = !1;
        if (!s) {
          for (; f && f.kind === 220; )
            Qn(f, 1024) && (y = !0), f = K3(f, !0), m = z < 2;
          f && Qn(f, 1024) && (y = !0);
        }
        let x = 0;
        if (!f || !Y(f)) {
          const be = cr(r, (me) => me === f ? "quit" : me.kind === 168);
          return be && be.kind === 168 ? We(r, p.super_cannot_be_referenced_in_a_computed_property_name) : s ? We(r, p.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors) : !f || !f.parent || !(Zn(f.parent) || f.parent.kind === 211) ? We(r, p.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions) : We(r, p.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class), rt;
        }
        if (!s && l.kind === 177 && mIe(r, f, p.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class), es(f) || s ? (x = 32, !s && z >= 2 && z <= 8 && (ga(f) || Bc(f)) && fK(r.parent, (be) => {
          (!Pi(be) || gf(be)) && (Pn(be).flags |= 2097152);
        })) : x = 16, Pn(r).flags |= x, f.kind === 175 && y && (Z_(r.parent) && Qy(r.parent) ? Pn(f).flags |= 256 : Pn(f).flags |= 128), m && Nde(r.parent, f), f.parent.kind === 211) return z < 2 ? (We(r, p.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher), rt) : Ve;
        const O = f.parent;
        if (!Mb(O))
          return We(r, p.super_can_only_be_referenced_in_a_derived_class), rt;
        if (Ide(O)) return s ? rt : fn;
        const J = Oo(mn(O)), V = J && Nd(J)[0];
        if (!V) return rt;
        if (f.kind === 177 && _at(r, f))
          return We(r, p.super_cannot_be_referenced_in_constructor_arguments), rt;
        return x === 32 ? LT(J) : Of(V, J.thisType);
        function Y(be) {
          return s ? be.kind === 177 : Zn(be.parent) || be.parent.kind === 211 ? es(be) ? be.kind === 175 || be.kind === 174 || be.kind === 178 || be.kind === 179 || be.kind === 173 || be.kind === 176 : be.kind === 175 || be.kind === 174 || be.kind === 178 || be.kind === 179 || be.kind === 173 || be.kind === 172 || be.kind === 177 : !1;
        }
      }
      function gIe(r) {
        return (r.kind === 175 || r.kind === 178 || r.kind === 179) && r.parent.kind === 211 ? r.parent : r.kind === 219 && r.parent.kind === 304 ? r.parent.parent : void 0;
      }
      function hIe(r) {
        return yn(r) & 4 && r.target === ad ? Vo(r)[0] : void 0;
      }
      function fat(r) {
        return sc(r, (s) => s.flags & 268435456 ? bt(s.types, hIe) : hIe(s));
      }
      function yIe(r, s) {
        let l = r, f = s;
        for (; f; ) {
          const m = fat(f);
          if (m) return m;
          if (l.parent.kind !== 304) break;
          l = l.parent.parent, f = yb(l, void 0);
        }
      }
      function Fde(r) {
        if (r.kind === 220) return;
        if (N$(r)) {
          const l = H8(r);
          if (l) {
            const f = l.thisParameter;
            if (f) return ft(f);
          }
        }
        const s = rn(r);
        if (Se || s) {
          const l = gIe(r);
          if (l) {
            const m = yb(l, void 0), y = yIe(l, m);
            return y ? Ji(y, cde(H2(l))) : of(m ? g0(m) : wc(l));
          }
          const f = dd(r.parent);
          if (Hl(f)) {
            const m = f.left;
            if (jo(m)) {
              const { expression: y } = m;
              if (s && Fe(y)) {
                const x = Sr(f);
                if (x.commonJsModuleIndicator && t_(y) === x.symbol) return;
              }
              return of(wc(y));
            }
          }
        }
      }
      function vIe(r) {
        const s = r.parent;
        if (!N$(s)) return;
        const l = lv(s);
        if (l && l.arguments) {
          const m = CX(l), y = s.parameters.indexOf(r);
          if (r.dotDotDotToken) return sme(m, y, m.length, Ve, void 0, 0);
          const x = Pn(l), O = x.resolvedSignature;
          x.resolvedSignature = ei;
          const J = y < m.length ? mb(aa(m[y])) : r.initializer ? void 0 : ye;
          return x.resolvedSignature = O, J;
        }
        const f = H8(s);
        if (f) {
          const m = s.parameters.indexOf(r) - (Rb(s) ? 1 : 0);
          return r.dotDotDotToken && Wo(s.parameters) === r ? yR(f, m) : X2(f, m);
        }
      }
      function Lde(r, s) {
        const l = _l(r) || (rn(r) ? FO(r) : void 0);
        if (l) return Di(l);
        switch (r.kind) {
          case 170:
            return vIe(r);
          case 209:
            return pat(r, s);
          case 173:
            if (es(r)) return dat(r, s);
        }
      }
      function pat(r, s) {
        const l = r.parent.parent, f = r.propertyName || r.name, m = Lde(l, s) || l.kind !== 209 && l.initializer && GP(l, r.dotDotDotToken ? 32 : 0);
        if (!m || Ja(f) || G3(f)) return;
        if (l.name.kind === 208) {
          const x = t6(r.parent.elements, r);
          return x < 0 ? void 0 : zde(m, x);
        }
        const y = u0(f);
        if (Cp(y)) return xn(m, Ep(y));
      }
      function dat(r, s) {
        const l = dt(r.parent) && O_(r.parent, s);
        if (l)
          return hb(l, mn(r).escapedName);
      }
      function mat(r, s) {
        const l = r.parent;
        if (E0(l) && r === l.initializer) {
          const f = Lde(l, s);
          if (f) return f;
          if (!(s & 8) && Ja(l.name) && l.name.elements.length > 0) return EP(l.name, !0, !1);
        }
      }
      function gat(r, s) {
        const l = Kf(r);
        if (l) {
          let f = cX(l, s);
          if (f) {
            const m = Gc(l);
            if (m & 1) {
              const y = (m & 2) !== 0;
              f.flags & 134217728 && (f = rl(f, (O) => !!ky(1, O, y)));
              const x = ky(1, f, (m & 2) !== 0);
              if (!x) return;
              f = x;
            }
            if (m & 2) {
              const y = sc(f, v0);
              return y && Yn([y, B8e(y)]);
            }
            return f;
          }
        }
      }
      function hat(r, s) {
        const l = O_(r, s);
        if (l) {
          const f = v0(l);
          return f && Yn([f, B8e(f)]);
        }
      }
      function yat(r, s) {
        const l = Kf(r);
        if (l) {
          const f = Gc(l);
          let m = cX(l, s);
          if (m) {
            const y = (f & 2) !== 0;
            if (!r.asteriskToken && m.flags & 134217728 && (m = rl(m, (x) => !!ky(1, x, y))), r.asteriskToken) {
              const x = Gme(m, y), O = x?.yieldType ?? wn, J = O_(r, s) ?? wn, V = x?.nextType ?? Re, Y = AX(O, J, V, !1);
              return y ? Yn([Y, AX(O, J, V, !0)]) : Y;
            }
            return ky(0, m, y);
          }
        }
      }
      function Mde(r) {
        let s = !1;
        for (; r.parent && !Ra(r.parent); ) {
          if (Fi(r.parent) && (s || r.parent.initializer === r)) return !0;
          Ns(r.parent) && r.parent.initializer === r && (s = !0), r = r.parent;
        }
        return !1;
      }
      function bIe(r, s) {
        const l = !!(Gc(s) & 2), f = cX(s, void 0);
        if (f) return ky(r, f, l) || void 0;
      }
      function cX(r, s) {
        const l = r4(r);
        if (l) return l;
        const f = pX(r);
        if (f && !f$(f)) {
          const y = ro(f), x = Gc(r);
          return x & 1 ? rl(y, (O) => !!(O.flags & 117964819) || Ame(O, x, void 0)) : x & 2 ? rl(y, (O) => !!(O.flags & 117964819) || !!$P(O)) : y;
        }
        const m = lv(r);
        if (m) return O_(m, s);
      }
      function SIe(r, s) {
        const l = CX(r).indexOf(s);
        return l === -1 ? void 0 : Rde(r, l);
      }
      function Rde(r, s) {
        if (B_(r)) return s === 0 ? Cr : s === 1 ? Z3e(!1) : Ve;
        const l = Pn(r).resolvedSignature === ds ? ds : m4(r);
        if (Gu(r) && s === 0) return fX(l, r);
        const f = l.parameters.length - 1;
        return Qu(l) && s >= f ? Ff(ft(l.parameters[f]), cm(s - f), 256) : _m(l, s);
      }
      function vat(r) {
        const s = bme(r);
        return s ? BT(s) : void 0;
      }
      function bat(r, s) {
        if (r.parent.kind === 216) return SIe(r.parent, s);
      }
      function Sat(r, s) {
        const l = r.parent, { left: f, operatorToken: m, right: y } = l;
        switch (m.kind) {
          case 64:
          case 77:
          case 76:
          case 78:
            return r === y ? xat(l) : void 0;
          case 57:
          case 61:
            const x = O_(l, s);
            return r === y && (x && x.pattern || !x && !FK(l)) ? Ol(f) : x;
          case 56:
          case 28:
            return r === y ? O_(l, s) : void 0;
          default:
            return;
        }
      }
      function Tat(r) {
        if (jd(r) && r.symbol) return r.symbol;
        if (Fe(r)) return t_(r);
        if (Ln(r)) {
          const l = Ol(r.expression);
          return Oi(r.name) ? s(l, r.name) : ms(l, r.name.escapedText);
        }
        if (Po(r)) {
          const l = wc(r.argumentExpression);
          return Cp(l) ? ms(Ol(r.expression), Ep(l)) : void 0;
        }
        return;
        function s(l, f) {
          const m = _R(f.escapedText, f);
          return m && SX(l, m);
        }
      }
      function xat(r) {
        var s, l;
        const f = qc(r);
        switch (f) {
          case 0:
          case 4:
            const m = Tat(r.left), y = m && m.valueDeclaration;
            if (y && (ga(y) || f_(y))) {
              const J = _l(y);
              return J && Ji(Di(J), Wi(m).mapper) || (ga(y) ? y.initializer && Ol(r.left) : void 0);
            }
            return f === 0 ? Ol(r.left) : TIe(r);
          case 5:
            if (lX(r, f)) return TIe(r);
            if (!jd(r.left) || !r.left.symbol) return Ol(r.left);
            {
              const J = r.left.symbol.valueDeclaration;
              if (!J) return;
              const V = ns(r.left, jo), Y = _l(J);
              if (Y) return Di(Y);
              if (Fe(V.expression)) {
                const be = V.expression, me = Gr(be, be.escapedText, 111551, void 0, !0);
                if (me) {
                  const Je = me.valueDeclaration && _l(me.valueDeclaration);
                  if (Je) {
                    const gt = Jh(V);
                    if (gt !== void 0) return hb(Di(Je), gt);
                  }
                  return;
                }
              }
              return rn(J) || J === r.left ? void 0 : Ol(r.left);
            }
          case 1:
          case 6:
          case 3:
          case 2:
            let x;
            f !== 2 && (x = jd(r.left) ? (s = r.left.symbol) == null ? void 0 : s.valueDeclaration : void 0), x || (x = (l = r.symbol) == null ? void 0 : l.valueDeclaration);
            const O = x && _l(x);
            return O ? Di(O) : void 0;
          case 7:
          case 8:
          case 9:
            return E.fail("Does not apply");
          default:
            return E.assertNever(f);
        }
      }
      function lX(r, s = qc(r)) {
        if (s === 4) return !0;
        if (!rn(r) || s !== 5 || !Fe(r.left.expression)) return !1;
        const l = r.left.expression.escapedText, f = Gr(r.left, l, 111551, void 0, !0, !0);
        return w5(f?.valueDeclaration);
      }
      function TIe(r) {
        if (!r.symbol) return Ol(r.left);
        if (r.symbol.valueDeclaration) {
          const m = _l(r.symbol.valueDeclaration);
          if (m) {
            const y = Di(m);
            if (y) return y;
          }
        }
        const s = ns(r.left, jo);
        if (!Hp(c_(s.expression, !1, !1))) return;
        const l = iR(s.expression), f = Jh(s);
        return f !== void 0 && hb(l, f) || void 0;
      }
      function kat(r) {
        return !!(gc(r) & 262144 && !r.links.type && zt(r, 0) >= 0);
      }
      function jde(r, s) {
        if (r.flags & 67108864) {
          const l = r;
          return !!(dp(z1(l)).flags & 262144) && f0(W1(l)) === f0(l.checkType) && qa(s, l.extendsType);
        }
        return r.flags & 268435456 ? _t(r.types, (l) => jde(l, s)) : !1;
      }
      function hb(r, s, l) {
        return sc(r, (f) => {
          if (f.flags & 268435456) {
            let m, y, x = !1;
            for (const O of f.types) {
              if (!(O.flags & 1048576)) continue;
              if (I_(O) && u$(O) !== 2) {
                const V = xIe(O, s, l);
                m = Bde(m, V);
                continue;
              }
              const J = kIe(O, s);
              if (!J) {
                x || (y = kr(y, O));
                continue;
              }
              x = !0, y = void 0, m = Bde(m, J);
            }
            if (y) for (const O of y) {
              const J = CIe(O, s, l);
              m = Bde(m, J);
            }
            return m ? m.length === 1 ? m[0] : Ss(m) : void 0;
          }
          if (f.flags & 1048576)
            return I_(f) && u$(f) !== 2 ? xIe(f, s, l) : kIe(f, s) ?? CIe(f, s, l);
        }, !0);
      }
      function Bde(r, s) {
        return s ? kr(r, s.flags & 1 ? Re : s) : r;
      }
      function xIe(r, s, l) {
        const f = l || sf(Ti(s)), m = pp(r);
        if (!(r.nameType && jde(r.nameType, f) || jde(m, f)) && qa(f, xu(m) || m))
          return C$(r, f);
      }
      function kIe(r, s) {
        const l = ms(r, s);
        if (!(!l || kat(l)))
          return h0(ft(l), !!(l.flags & 16777216));
      }
      function CIe(r, s, l) {
        var f;
        if (Ls(r) && eh(s) && +s >= 0) {
          const m = JP(r, r.target.fixedLength, 0, !1, !0);
          if (m) return m;
        }
        return (f = Yfe(Zfe(r), l || sf(Ti(s)))) == null ? void 0 : f.type;
      }
      function EIe(r, s) {
        if (E.assert(Hp(r)), !(r.flags & 67108864))
          return Jde(r, s);
      }
      function Jde(r, s) {
        const l = r.parent, f = ol(r) && Lde(r, s);
        if (f) return f;
        const m = yb(l, s);
        if (m) {
          if (t4(r)) {
            const y = mn(r);
            return hb(m, y.escapedName, Wi(y).nameType);
          }
          if (zh(r)) {
            const y = va(r);
            if (y && _s(y)) {
              const x = aa(y.expression), O = Cp(x) && hb(m, Ep(x));
              if (O) return O;
            }
          }
          if (r.name) {
            const y = u0(r.name);
            return sc(m, (x) => {
              var O;
              return (O = Yfe(Zfe(x), y)) == null ? void 0 : O.type;
            }, !0);
          }
        }
      }
      function Cat(r) {
        let s, l;
        for (let f = 0; f < r.length; f++) wp(r[f]) && (s ?? (s = f), l = f);
        return {
          first: s,
          last: l
        };
      }
      function zde(r, s, l, f, m) {
        return r && sc(r, (y) => {
          if (Ls(y)) {
            if ((f === void 0 || s < f) && s < y.target.fixedLength) return h0(Vo(y)[s], !!y.target.elementFlags[s]);
            const x = l !== void 0 && (m === void 0 || s > m) ? l - s : 0, O = x > 0 && y.target.combinedFlags & 12 ? D8(y.target, 3) : 0;
            return x > 0 && x <= O ? Vo(y)[vy(y) - x] : JP(y, f === void 0 ? y.target.fixedLength : Math.min(y.target.fixedLength, f), l === void 0 || m === void 0 ? O : Math.min(O, l - m), !1, !0);
          }
          return (!f || s < f) && hb(y, "" + s) || zme(1, y, $e, void 0, !1);
        }, !0);
      }
      function Eat(r, s) {
        const l = r.parent;
        return r === l.whenTrue || r === l.whenFalse ? O_(l, s) : void 0;
      }
      function Dat(r, s, l) {
        const f = yb(r.openingElement.attributes, l), m = cR(tx(r));
        if (!(f && !Bi(f) && m && m !== "")) return;
        const y = d6(r.children), x = y.indexOf(s), O = hb(f, m);
        return O && (y.length === 1 ? O : sc(O, (J) => Sy(J) ? Ff(J, cm(x)) : J, !0));
      }
      function wat(r, s) {
        const l = r.parent;
        return n5(l) ? O_(r, s) : Im(l) ? Dat(l, r, s) : void 0;
      }
      function DIe(r, s) {
        if (Om(r)) {
          const l = yb(r.parent, s);
          return !l || Bi(l) ? void 0 : hb(l, qD(r.name));
        } else return O_(r.parent, s);
      }
      function aR(r) {
        switch (r.kind) {
          case 11:
          case 9:
          case 10:
          case 15:
          case 229:
          case 112:
          case 97:
          case 106:
          case 80:
          case 157:
            return !0;
          case 212:
          case 218:
            return aR(r.expression);
          case 295:
            return !r.expression || aR(r.expression);
        }
        return !1;
      }
      function Pat(r, s) {
        const l = `D${Hs(r)},${Kl(s)}`;
        return Vm(l) ?? E1(l, vit(s, r) ?? Gpe(s, zi(or(dn(r.properties, (f) => f.symbol ? f.kind === 304 ? aR(f.initializer) && zP(s, f.symbol.escapedName) : f.kind === 305 ? zP(s, f.symbol.escapedName) : !1 : !1), (f) => [() => kR(f.kind === 304 ? f.initializer : f.name), f.symbol.escapedName]), or(dn(co(s), (f) => {
          var m;
          return !!(f.flags & 16777216) && !!((m = r?.symbol) != null && m.members) && !r.symbol.members.has(f.escapedName) && zP(s, f.escapedName);
        }), (f) => [() => $e, f.escapedName])), qa));
      }
      function Aat(r, s) {
        const l = `D${Hs(r)},${Kl(s)}`, f = Vm(l);
        if (f) return f;
        const m = cR(tx(r));
        return E1(l, Gpe(s, zi(or(dn(r.properties, (y) => !!y.symbol && y.kind === 292 && zP(s, y.symbol.escapedName) && (!y.initializer || aR(y.initializer))), (y) => [y.initializer ? (() => kR(y.initializer)) : (() => Ir), y.symbol.escapedName]), or(dn(co(s), (y) => {
          var x;
          if (!(y.flags & 16777216) || !((x = r?.symbol) != null && x.members)) return !1;
          const O = r.parent.parent;
          return y.escapedName === m && Im(O) && d6(O.children).length ? !1 : !r.symbol.members.has(y.escapedName) && zP(s, y.escapedName);
        }), (y) => [() => $e, y.escapedName])), qa));
      }
      function yb(r, s) {
        const l = uX(Hp(r) ? EIe(r, s) : O_(r, s), r, s);
        if (l && !(s && s & 2 && l.flags & 34078720)) {
          const f = sc(l, (m) => yn(m) & 32 ? m : h_(m), !0);
          return f.flags & 134217728 && bs(r) ? Pat(r, f) : f.flags & 134217728 && Yb(r) ? Aat(r, f) : f;
        }
      }
      function uX(r, s, l) {
        if (r && Wc(r, 132644864)) {
          const f = H2(s);
          if (f && l & 1 && _t(f.inferences, xct)) {
            const m = _X(r, f.nonFixingMapper);
            if (!(m.flags & 3)) return m;
          }
          if (f?.returnMapper) {
            const m = _X(r, f.returnMapper);
            if (!(m.flags & 3)) return m.flags & 134217728 && Eh(m.types, qt) && Eh(m.types, Yt) ? rl(m, (y) => y !== qt && y !== Yt) : m;
          }
        }
        return r;
      }
      function _X(r, s) {
        return r.flags & 132644864 ? Ji(r, s) : r.flags & 134217728 ? Yn(or(r.types, (l) => _X(l, s)), 0) : r.flags & 268435456 ? Ss(or(r.types, (l) => _X(l, s))) : r;
      }
      function O_(r, s) {
        var l;
        if (r.flags & 67108864) return;
        const f = PIe(r, !s);
        if (f >= 0) return xd[f];
        const { parent: m } = r;
        switch (m.kind) {
          case 261:
          case 170:
          case 173:
          case 172:
          case 209:
            return mat(r, s);
          case 220:
          case 254:
            return gat(r, s);
          case 230:
            return yat(m, s);
          case 224:
            return hat(m, s);
          case 214:
          case 215:
            return SIe(m, r);
          case 171:
            return vat(m);
          case 217:
          case 235:
            return _d(m.type) ? O_(m, s) : Di(m.type);
          case 227:
            return Sat(r, s);
          case 304:
          case 305:
            return Jde(m, s);
          case 306:
            return O_(m.parent, s);
          case 210: {
            const y = m, x = yb(y, s), O = t6(y.elements, r), J = (l = Pn(y)).spreadIndices ?? (l.spreadIndices = Cat(y.elements));
            return zde(x, O, y.elements.length, J.first, J.last);
          }
          case 228:
            return Eat(r, s);
          case 240:
            return E.assert(m.parent.kind === 229), bat(m.parent, r);
          case 218:
            if (rn(m)) {
              if (sz(m)) return Di(oz(m));
              const y = iv(m);
              if (y && !_d(y.typeExpression.type)) return Di(y.typeExpression.type);
            }
            return O_(m, s);
          case 236:
            return O_(m, s);
          case 239:
            return Di(m.type);
          case 278:
            return gy(m);
          case 295:
            return wat(m, s);
          case 292:
          case 294:
            return DIe(m, s);
          case 287:
          case 286:
            return jat(m, s);
          case 302:
            return Rat(m);
        }
      }
      function wIe(r) {
        sR(r, O_(r, void 0), !0);
      }
      function sR(r, s, l) {
        tm[nm] = r, xd[nm] = s, rm[nm] = l, nm++;
      }
      function G8() {
        nm--, tm[nm] = void 0, xd[nm] = void 0, rm[nm] = void 0;
      }
      function PIe(r, s) {
        for (let l = nm - 1; l >= 0; l--) if (r === tm[l] && (s || !rm[l])) return l;
        return -1;
      }
      function Nat(r, s) {
        Qk[x1] = r, g2[x1] = s, x1++;
      }
      function Iat() {
        x1--, Qk[x1] = void 0, g2[x1] = void 0;
      }
      function H2(r) {
        for (let s = x1 - 1; s >= 0; s--) if (Lb(r, Qk[s])) return g2[s];
      }
      function Oat(r) {
        sT[Um] = r, h2[Um] ?? (h2[Um] = /* @__PURE__ */ new Map()), Um++;
      }
      function Fat() {
        Um--, sT[Um] = void 0, h2[Um].clear();
      }
      function Lat(r) {
        for (let s = Um - 1; s >= 0; s--) if (r === sT[s]) return s;
        return -1;
      }
      function Mat() {
        for (let r = Um - 1; r >= 0; r--) h2[r].clear();
      }
      function Rat(r) {
        return hb(upe(!1), LO(r));
      }
      function jat(r, s) {
        if (qd(r) && s !== 4) {
          const l = PIe(r.parent, !s);
          if (l >= 0) return xd[l];
        }
        return Rde(r, 0);
      }
      function fX(r, s) {
        return yd(s) || p8e(s) !== 0 ? Bat(r, s) : Wat(r, s);
      }
      function Bat(r, s) {
        let l = yme(r, Re);
        l = AIe(s, tx(s), l);
        const f = $2(ip.IntrinsicAttributes, s);
        return hi(f) || (l = TM(f, l)), l;
      }
      function Jat(r, s) {
        if (r.compositeSignatures) {
          const f = [];
          for (const m of r.compositeSignatures) {
            const y = ro(m);
            if (Bi(y)) return y;
            const x = xn(y, s);
            if (!x) return;
            f.push(x);
          }
          return Ss(f);
        }
        const l = ro(r);
        return Bi(l) ? l : xn(l, s);
      }
      function zat(r) {
        if (yd(r)) return x8e(r);
        if (ex(r.tagName)) return BT(EX(r, JIe(r)));
        const s = wc(r.tagName);
        if (s.flags & 1024) {
          const l = BIe(s, r);
          return l ? BT(EX(r, l)) : rt;
        }
        return s;
      }
      function AIe(r, s, l) {
        const f = _st(s);
        if (f) {
          const m = zat(r), y = UIe(f, rn(r), m, l);
          if (y) return y;
        }
        return l;
      }
      function Wat(r, s) {
        const l = tx(s), f = pst(l);
        let m = f === void 0 ? yme(r, Re) : f === "" ? ro(r) : Jat(r, f);
        if (!m)
          return f && It(s.attributes.properties) && We(s, p.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property, Ti(f)), Re;
        if (m = AIe(s, l, m), Bi(m)) return m;
        {
          let y = m;
          const x = $2(ip.IntrinsicClassAttributes, s);
          if (!hi(x)) {
            const J = e_(x.symbol), V = ro(r);
            let Y;
            J ? Y = Ji(x, Lf(J, yy([V], J, wg(J), rn(s)))) : Y = x, y = TM(Y, y);
          }
          const O = $2(ip.IntrinsicAttributes, s);
          return hi(O) || (y = TM(O, y)), y;
        }
      }
      function Uat(r) {
        return Sf(L, "noImplicitAny") ? a_(r, (s, l) => s === l || !s ? s : f3e(s.typeParameters, l.typeParameters) ? Gat(s, l) : void 0) : void 0;
      }
      function Vat(r, s, l) {
        return !r || !s ? r || s : $T(r, Yn([ft(r), Ji(ft(s), l)]));
      }
      function qat(r, s, l) {
        const f = lf(r), m = lf(s), y = f >= m ? r : s, x = y === r ? s : r, O = y === r ? f : m, J = Ng(r) || Ng(s), V = J && !Ng(y), Y = new Array(O + (V ? 1 : 0));
        for (let be = 0; be < O; be++) {
          let me = X2(y, be);
          y === s && (me = Ji(me, l));
          let Je = X2(x, be) || Re;
          x === s && (Je = Ji(Je, l));
          const gt = Yn([me, Je]), ht = J && !V && be === O - 1, ir = be >= fm(y) && be >= fm(x), mr = be >= f ? void 0 : qP(r, be), br = be >= m ? void 0 : qP(s, be), Hr = Fs(1 | (ir && !ht ? 16777216 : 0), (mr === br ? mr : mr ? br ? void 0 : mr : br) || `arg${be}`, ht ? 32768 : ir ? 16384 : 0);
          Hr.links.type = ht ? Ju(gt) : gt, Y[be] = Hr;
        }
        if (V) {
          const be = Fs(1, "args", 32768);
          be.links.type = Ju(_m(x, O)), x === s && (be.links.type = Ji(be.links.type, l)), Y[O] = be;
        }
        return Y;
      }
      function Gat(r, s) {
        const l = r.typeParameters || s.typeParameters;
        let f;
        r.typeParameters && s.typeParameters && (f = Lf(s.typeParameters, r.typeParameters));
        let m = (r.flags | s.flags) & 166;
        const y = r.declaration, x = qat(r, s, f), O = Wo(x);
        O && gc(O) & 32768 && (m |= 1);
        const J = Zm(y, l, Vat(r.thisParameter, s.thisParameter, f), x, void 0, void 0, Math.max(r.minArgumentCount, s.minArgumentCount), m);
        return J.compositeKind = 268435456, J.compositeSignatures = zi(r.compositeKind === 268435456 && r.compositeSignatures || [r], [s]), f && (J.mapper = r.compositeKind === 268435456 && r.mapper && r.compositeSignatures ? fb(r.mapper, f) : f), J;
      }
      function Wde(r, s) {
        const l = dn(Pa(r, 0), (f) => !Hat(f, s));
        return l.length === 1 ? l[0] : Uat(l);
      }
      function Hat(r, s) {
        let l = 0;
        for (; l < s.parameters.length; l++) {
          const f = s.parameters[l];
          if (f.initializer || f.questionToken || f.dotDotDotToken || OO(f)) break;
        }
        return s.parameters.length && Yy(s.parameters[0]) && l--, !Ng(r) && lf(r) < l;
      }
      function pX(r) {
        return r1(r) || Hp(r) ? H8(r) : void 0;
      }
      function H8(r) {
        E.assert(r.kind !== 175 || Hp(r));
        const s = IP(r);
        if (s) return s;
        const l = yb(r, 1);
        if (!l) return;
        if (!(l.flags & 134217728)) return Wde(l, r);
        let f;
        const m = l.types;
        for (const y of m) {
          const x = Wde(y, r);
          if (x) if (!f) f = [x];
          else if (VM(f[0], x, !1, !0, !0, O8)) f.push(x);
          else return;
        }
        if (f) return f.length === 1 ? f[0] : u3e(f[0], f);
      }
      function $at(r) {
        const s = Sr(r);
        if (!H1(s) && !r.isUnterminated) {
          let l;
          a ?? (a = Bg(99, !0)), a.setScriptTarget(s.languageVersion), a.setLanguageVariant(s.languageVariant), a.setOnError((f, m, y) => {
            const x = a.getTokenEnd();
            if (f.category === 3 && l && x === l.start && m === l.length) {
              const O = $x(s.fileName, s.text, x, m, f, y);
              ts(l, O);
            } else (!l || x !== l.start) && (l = wl(s, x, m, f, y), Ws.add(l));
          }), a.setText(s.text, r.pos, r.end - r.pos);
          try {
            return a.scan(), E.assert(a.reScanSlashToken(!0) === 14, "Expected scanner to rescan RegularExpressionLiteral"), !!l;
          } finally {
            a.setText(""), a.setOnError(void 0);
          }
        }
        return !1;
      }
      function Xat(r) {
        const s = Pn(r);
        return s.flags & 1 || (s.flags |= 1, n(() => $at(r))), id;
      }
      function Qat(r, s) {
        return z < Rl.SpreadElements && Fl(r, L.downlevelIteration ? 1536 : 1024), xy(33, aa(r.expression, s), $e, r.expression);
      }
      function Yat(r) {
        return r.isSpread ? Ff(r.type, et) : r.type;
      }
      function IC(r) {
        return r.kind === 209 && !!r.initializer || r.kind === 304 && IC(r.initializer) || r.kind === 305 && !!r.objectAssignmentInitializer || r.kind === 227 && r.operatorToken.kind === 64;
      }
      function Zat(r) {
        const s = dd(r.parent);
        return wp(s) && ym(s.parent);
      }
      function NIe(r, s, l) {
        const f = r.elements, m = f.length, y = [], x = [];
        wIe(r);
        const O = Qy(r), J = ax(r), V = yb(r, void 0), Y = Zat(r) || !!V && gp(V, (me) => BP(me) || I_(me) && !me.nameType && !!N8(me.target || me));
        let be = !1;
        for (let me = 0; me < m; me++) {
          const Je = f[me];
          if (Je.kind === 231) {
            z < Rl.SpreadElements && Fl(Je, L.downlevelIteration ? 1536 : 1024);
            const gt = aa(Je.expression, s, l);
            if (Sy(gt))
              y.push(gt), x.push(8);
            else if (O) {
              const ht = cb(gt, et) || zme(65, gt, $e, void 0, !1) || Re;
              y.push(ht), x.push(4);
            } else
              y.push(xy(33, gt, $e, Je.expression)), x.push(4);
          } else if (ce && Je.kind === 233)
            be = !0, y.push(pr), x.push(2);
          else {
            const gt = HP(Je, s, l);
            if (y.push(_u(gt, !0, be)), x.push(be ? 2 : 1), Y && s && s & 2 && !(s & 4) && Xf(Je)) {
              const ht = H2(r);
              E.assert(ht), sde(ht, Je, gt);
            }
          }
        }
        return G8(), O ? Pg(y, x) : IIe(l || J || Y ? Pg(y, x, J && !(V && gp(V, Ype))) : Ju(y.length ? Yn(el(y, (me, Je) => x[Je] & 8 ? J1(me, et) || Ve : me), 2) : Q ? Mi : ye, J));
      }
      function IIe(r) {
        if (!(yn(r) & 4)) return r;
        let s = r.literalType;
        return s || (s = r.literalType = B3e(r), s.objectFlags |= 147456), s;
      }
      function Kat(r) {
        switch (r.kind) {
          case 168:
            return est(r);
          case 80:
            return eh(r.escapedText);
          case 9:
          case 11:
            return eh(r.text);
          default:
            return !1;
        }
      }
      function est(r) {
        return Cu(Od(r), 67648);
      }
      function Od(r) {
        const s = Pn(r.expression);
        if (!s.resolvedType) {
          if ((C_(r.parent.parent) || Zn(r.parent.parent) || au(r.parent.parent)) && un(r.expression) && r.expression.operatorToken.kind === 103 && r.parent.kind !== 178 && r.parent.kind !== 179) return s.resolvedType = rt;
          if (s.resolvedType = aa(r.expression), ga(r.parent) && !vl(r.parent) && Hc(r.parent.parent)) {
            const l = Ade(Bd(r.parent.parent));
            l && (Pn(l).flags |= 4096, Pn(r).flags |= 32768, Pn(r.parent.parent).flags |= 32768);
          }
          (s.resolvedType.flags & 12 || !Cu(s.resolvedType, 12668512) && !qa(s.resolvedType, oo)) && We(r, p.A_computed_property_name_must_be_of_type_string_number_symbol_or_any);
        }
        return s.resolvedType;
      }
      function tst(r) {
        var s;
        const l = (s = r.declarations) == null ? void 0 : s[0];
        return eh(r.escapedName) || l && Bl(l) && Kat(l.name);
      }
      function OIe(r) {
        var s;
        const l = (s = r.declarations) == null ? void 0 : s[0];
        return vD(r) || l && Bl(l) && _s(l.name) && Cu(Od(l.name), 512);
      }
      function rst(r) {
        var s;
        const l = (s = r.declarations) == null ? void 0 : s[0];
        return l && Bl(l) && _s(l.name);
      }
      function $8(r, s, l, f) {
        var m;
        const y = [];
        let x;
        for (let O = s; O < l.length; O++) {
          const J = l[O];
          (f === Cr && !OIe(J) || f === et && tst(J) || f === $t && OIe(J)) && (y.push(ft(l[O])), rst(l[O]) && (x = kr(x, (m = l[O].declarations) == null ? void 0 : m[0])));
        }
        return Ch(f, y.length ? Yn(y, 2) : $e, r, void 0, x);
      }
      function dX(r) {
        E.assert((r.flags & 2097152) !== 0, "Should only get Alias here.");
        const s = Wi(r);
        if (!s.immediateTarget) {
          const l = _p(r);
          if (!l) return E.fail();
          s.immediateTarget = s0(l, !0);
        }
        return s.immediateTarget;
      }
      function nst(r, s = 0) {
        const l = Qy(r);
        dft(r, l);
        const f = Q ? Ka() : void 0;
        let m = Ka(), y = [], x = Yi;
        wIe(r);
        const O = yb(r, void 0), J = O && O.pattern && (O.pattern.kind === 207 || O.pattern.kind === 211), V = ax(r), Y = V ? 8 : 0, be = rn(r) && !I5(r), me = be ? Qj(r) : void 0, Je = !O && be && !me;
        let gt = 8192, ht = !1, ir = !1, mr = !1, br = !1;
        for (const ur of r.properties) ur.name && _s(ur.name) && Od(ur.name);
        let Hr = 0;
        for (const ur of r.properties) {
          let En = mn(ur);
          const si = ur.name && ur.name.kind === 168 ? Od(ur.name) : void 0;
          if (ur.kind === 304 || ur.kind === 305 || Hp(ur)) {
            let Ii = ur.kind === 304 ? e7e(ur, s) : ur.kind === 305 ? HP(!l && ur.objectAssignmentInitializer ? ur.objectAssignmentInitializer : ur.name, s) : t7e(ur, s);
            if (be) {
              const vs = NT(ur);
              vs ? (zu(Ii, vs, ur), Ii = vs) : me && me.typeExpression && zu(Ii, Di(me.typeExpression), ur);
            }
            gt |= yn(Ii) & 458752;
            const Si = si && Cp(si) ? si : void 0, fi = Si ? Fs(4 | En.flags, Ep(Si), Y | 4096) : Fs(4 | En.flags, En.escapedName, Y);
            if (Si && (fi.links.nameType = Si), l && IC(ur)) fi.flags |= 16777216;
            else if (J && !(yn(O) & 512)) {
              const vs = ms(O, En.escapedName);
              vs ? fi.flags |= vs.flags & 16777216 : kh(O, Cr) || We(ur.name, p.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1, Xi(En), Xr(O));
            }
            if (fi.declarations = En.declarations, fi.parent = En.parent, En.valueDeclaration && (fi.valueDeclaration = En.valueDeclaration), fi.links.type = Ii, fi.links.target = En, En = fi, f?.set(fi.escapedName, fi), O && s & 2 && !(s & 4) && (ur.kind === 304 || ur.kind === 175) && Xf(ur)) {
              const vs = H2(r);
              E.assert(vs), sde(vs, ur.kind === 304 ? ur.initializer : ur, Ii);
            }
          } else if (ur.kind === 306) {
            z < Rl.ObjectAssign && Fl(ur, 2), y.length > 0 && (x = z2(x, lr(), r.symbol, gt, V), y = [], m = Ka(), ir = !1, mr = !1, br = !1);
            const Ii = dp(aa(ur.expression, s & 2));
            if (oR(Ii)) {
              const Si = Npe(Ii, V);
              if (f && MIe(Si, f, ur), Hr = y.length, hi(x)) continue;
              x = z2(x, Si, r.symbol, gt, V);
            } else
              We(ur, p.Spread_types_may_only_be_created_from_object_types), x = rt;
            continue;
          } else
            E.assert(ur.kind === 178 || ur.kind === 179), FC(ur);
          si && !(si.flags & 19456) ? qa(si, oo) && (qa(si, et) ? mr = !0 : qa(si, $t) ? br = !0 : ir = !0, l && (ht = !0)) : m.set(En.escapedName, En), y.push(En);
        }
        if (G8(), hi(x)) return rt;
        if (x !== Yi)
          return y.length > 0 && (x = z2(x, lr(), r.symbol, gt, V), y = [], m = Ka(), ir = !1, mr = !1), sc(x, (ur) => ur === Yi ? lr() : ur);
        return lr();
        function lr() {
          const ur = [], En = ax(r);
          ir && ur.push($8(En, Hr, y, Cr)), mr && ur.push($8(En, Hr, y, et)), br && ur.push($8(En, Hr, y, $t));
          const si = Yo(r.symbol, m, Te, Te, ur);
          return si.objectFlags |= gt | 131200, Je && (si.objectFlags |= 4096), ht && (si.objectFlags |= 512), l && (si.pattern = r), si;
        }
      }
      function oR(r) {
        const s = hNe(sc(r, Km));
        return !!(s.flags & 119144449 || s.flags & 402653184 && hr(s.types, oR));
      }
      function ist(r) {
        Vde(r);
      }
      function ast(r, s) {
        return FC(r), lR(r) || Ve;
      }
      function sst(r) {
        Vde(r.openingElement), ex(r.closingElement.tagName) ? gX(r.closingElement) : aa(r.closingElement.tagName), mX(r);
      }
      function ost(r, s) {
        return FC(r), lR(r) || Ve;
      }
      function cst(r) {
        Vde(r.openingFragment);
        const s = Sr(r);
        hO(L) && (L.jsxFactory || s.pragmas.has("jsx")) && !L.jsxFragmentFactory && !s.pragmas.has("jsxfrag") && We(r, L.jsxFactory ? p.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option : p.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments), mX(r);
        const l = lR(r);
        return hi(l) ? Ve : l;
      }
      function Ude(r) {
        return r.includes("-");
      }
      function ex(r) {
        return Fe(r) && m6(r.escapedText) || Gd(r);
      }
      function FIe(r, s) {
        return r.initializer ? HP(r.initializer, s) : Ir;
      }
      function LIe(r, s = 0) {
        const l = Q ? Ka() : void 0;
        let f = Ka(), m = Is, y = !1, x, O = !1, J = 2048;
        const V = cR(tx(r)), Y = yd(r);
        let be, me = r;
        if (!Y) {
          const ht = r.attributes;
          be = ht.symbol, me = ht;
          const ir = O_(ht, 0);
          for (const mr of ht.properties) {
            const br = mr.symbol;
            if (Om(mr)) {
              const Hr = FIe(mr, s);
              J |= yn(Hr) & 458752;
              const lr = Fs(4 | br.flags, br.escapedName);
              if (lr.declarations = br.declarations, lr.parent = br.parent, br.valueDeclaration && (lr.valueDeclaration = br.valueDeclaration), lr.links.type = Hr, lr.links.target = br, f.set(lr.escapedName, lr), l?.set(lr.escapedName, lr), qD(mr.name) === V && (O = !0), ir) {
                const ur = ms(ir, br.escapedName);
                ur && ur.declarations && kd(ur) && Fe(mr.name) && Cd(mr.name, ur.declarations, mr.name.escapedText);
              }
              if (ir && s & 2 && !(s & 4) && Xf(mr)) {
                const ur = H2(ht);
                E.assert(ur);
                const En = mr.initializer.expression;
                sde(ur, En, Hr);
              }
            } else {
              E.assert(mr.kind === 294), f.size > 0 && (m = z2(m, gt(), ht.symbol, J, !1), f = Ka());
              const Hr = dp(aa(mr.expression, s & 2));
              Bi(Hr) && (y = !0), oR(Hr) ? (m = z2(m, Hr, ht.symbol, J, !1), l && MIe(Hr, l, mr)) : (We(mr.expression, p.Spread_types_may_only_be_created_from_object_types), x = x ? Ss([x, Hr]) : Hr);
            }
          }
          y || f.size > 0 && (m = z2(m, gt(), ht.symbol, J, !1));
        }
        const Je = r.parent;
        if ((Im(Je) && Je.openingElement === r || Dv(Je) && Je.openingFragment === r) && d6(Je.children).length > 0) {
          const ht = mX(Je, s);
          if (!y && V && V !== "") {
            O && We(me, p._0_are_specified_twice_The_attribute_named_0_will_be_overwritten, Ti(V));
            const ir = qd(r) ? yb(r.attributes, void 0) : void 0, mr = ir && hb(ir, V), br = Fs(4, V);
            br.links.type = ht.length === 1 ? ht[0] : mr && gp(mr, BP) ? Pg(ht) : Ju(Yn(ht)), br.valueDeclaration = A.createPropertySignature(void 0, Ti(V), void 0, void 0), eo(br.valueDeclaration, me), br.valueDeclaration.symbol = br;
            const Hr = Ka();
            Hr.set(V, br), m = z2(m, Yo(be, Hr, Te, Te, Te), be, J | E8(ht), !1);
          }
        }
        if (y) return Ve;
        if (x && m !== Is) return Ss([x, m]);
        return x || (m === Is ? gt() : m);
        function gt() {
          return J |= 8192, lst(J, be, f);
        }
      }
      function lst(r, s, l) {
        const f = Yo(s, l, Te, Te, Te);
        return f.objectFlags |= r | 139392, f;
      }
      function mX(r, s) {
        const l = [];
        for (const f of r.children) if (f.kind === 12)
          f.containsOnlyTriviaWhiteSpaces || l.push(Cr);
        else {
          if (f.kind === 295 && !f.expression) continue;
          l.push(HP(f, s));
        }
        return l;
      }
      function MIe(r, s, l) {
        for (const f of co(r)) if (!(f.flags & 16777216) && !(gc(f) & 48)) {
          const m = s.get(f.escapedName);
          m && ts(We(m.valueDeclaration, p._0_is_specified_more_than_once_so_this_usage_will_be_overwritten, Ti(m.escapedName)), Kr(l, p.This_spread_always_overwrites_this_property));
        }
      }
      function ust(r, s) {
        return LIe(r.parent, s);
      }
      function $2(r, s) {
        const l = tx(s), f = l && Tu(l), m = f && Ku(f, r, 788968);
        return m ? Oo(m) : rt;
      }
      function gX(r) {
        const s = Pn(r);
        if (!s.resolvedSymbol) {
          const l = $2(ip.IntrinsicElements, r);
          if (hi(l))
            return $ && We(r, p.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists, Ti(ip.IntrinsicElements)), s.resolvedSymbol = it;
          {
            if (!Fe(r.tagName) && !Gd(r.tagName)) return E.fail();
            const f = Gd(r.tagName) ? tk(r.tagName) : r.tagName.escapedText, m = ms(l, f);
            if (m)
              return s.jsxFlags |= 1, s.resolvedSymbol = m;
            const y = l5e(l, sf(Ti(f)));
            return y ? (s.jsxFlags |= 2, s.resolvedSymbol = y) : ya(l, f) ? (s.jsxFlags |= 2, s.resolvedSymbol = l.symbol) : (We(r, p.Property_0_does_not_exist_on_type_1, cz(r.tagName), "JSX." + ip.IntrinsicElements), s.resolvedSymbol = it);
          }
        }
        return s.resolvedSymbol;
      }
      function hX(r) {
        const s = r && Sr(r), l = s && Pn(s);
        if (l && l.jsxImplicitImportContainer === !1) return;
        if (l && l.jsxImplicitImportContainer) return l.jsxImplicitImportContainer;
        const f = yO(JA(L, s), L);
        if (!f) return;
        const m = Hu(L) === 1 ? p.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option : p.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed, y = tb(Vft(s, f) || r, f, m, r), x = y && y !== it ? ys(zc(y)) : void 0;
        return l && (l.jsxImplicitImportContainer = x || !1), x;
      }
      function tx(r) {
        const s = r && Pn(r);
        if (s && s.jsxNamespace) return s.jsxNamespace;
        if (!s || s.jsxNamespace !== !1) {
          let f = hX(r);
          if ((!f || f === it) && (f = Gr(r, x2(r), 1920, void 0, !1)), f) {
            const m = zc(Ku(Tu(zc(f)), ip.JSX, 1920));
            if (m && m !== it)
              return s && (s.jsxNamespace = m), m;
          }
          s && (s.jsxNamespace = !1);
        }
        const l = zc(s4(ip.JSX, 1920, void 0));
        if (l !== it)
          return l;
      }
      function RIe(r, s) {
        const l = s && Ku(s.exports, r, 788968), f = l && Oo(l), m = f && co(f);
        if (m) {
          if (m.length === 0) return "";
          if (m.length === 1) return m[0].escapedName;
          m.length > 1 && l.declarations && We(l.declarations[0], p.The_global_type_JSX_0_may_not_have_more_than_one_property, Ti(r));
        }
      }
      function _st(r) {
        return r && Ku(r.exports, ip.LibraryManagedAttributes, 788968);
      }
      function fst(r) {
        return r && Ku(r.exports, ip.ElementType, 788968);
      }
      function pst(r) {
        return RIe(ip.ElementAttributesPropertyNameContainer, r);
      }
      function cR(r) {
        return L.jsx === 4 || L.jsx === 5 ? "children" : RIe(ip.ElementChildrenAttributeNameContainer, r);
      }
      function jIe(r, s) {
        if (r.flags & 32) return [ei];
        if (r.flags & 1024) {
          const m = BIe(r, s);
          return m ? [EX(s, m)] : (We(s, p.Property_0_does_not_exist_on_type_1, r.value, "JSX." + ip.IntrinsicElements), Te);
        }
        const l = h_(r);
        let f = Pa(l, 1);
        return f.length === 0 && (f = Pa(l, 0)), f.length === 0 && l.flags & 134217728 && (f = zfe(or(l.types, (m) => jIe(m, s)))), f;
      }
      function BIe(r, s) {
        const l = $2(ip.IntrinsicElements, s);
        if (!hi(l)) {
          const f = r.value, m = ms(l, mc(f));
          if (m) return ft(m);
          const y = cb(l, Cr);
          return y || void 0;
        }
        return Ve;
      }
      function dst(r, s, l) {
        if (r === 1) {
          const m = WIe(l);
          m && Bp(s, m, Sc, l.tagName, p.Its_return_type_0_is_not_a_valid_JSX_element, f);
        } else if (r === 0) {
          const m = zIe(l);
          m && Bp(s, m, Sc, l.tagName, p.Its_instance_type_0_is_not_a_valid_JSX_element, f);
        } else {
          const m = WIe(l), y = zIe(l);
          if (!m || !y) return;
          Bp(s, Yn([m, y]), Sc, l.tagName, p.Its_element_type_0_is_not_a_valid_JSX_element, f);
        }
        function f() {
          const m = uc(l.tagName);
          return ba(void 0, p._0_cannot_be_used_as_a_JSX_component, m);
        }
      }
      function JIe(r) {
        var s;
        E.assert(ex(r.tagName));
        const l = Pn(r);
        if (!l.resolvedJsxElementAttributesType) {
          const f = gX(r);
          if (l.jsxFlags & 1) return l.resolvedJsxElementAttributesType = ft(f) || rt;
          if (l.jsxFlags & 2) {
            const m = Gd(r.tagName) ? tk(r.tagName) : r.tagName.escapedText;
            return l.resolvedJsxElementAttributesType = ((s = xC($2(ip.IntrinsicElements, r), m)) == null ? void 0 : s.type) || rt;
          } else return l.resolvedJsxElementAttributesType = rt;
        }
        return l.resolvedJsxElementAttributesType;
      }
      function zIe(r) {
        const s = $2(ip.ElementClass, r);
        if (!hi(s))
          return s;
      }
      function lR(r) {
        return $2(ip.Element, r);
      }
      function WIe(r) {
        const s = lR(r);
        if (s) return Yn([s, vr]);
      }
      function mst(r) {
        const s = tx(r);
        if (!s) return;
        const l = fst(s);
        if (!l) return;
        const f = UIe(l, rn(r));
        if (!(!f || hi(f)))
          return f;
      }
      function UIe(r, s, ...l) {
        const f = Oo(r);
        if (r.flags & 524288) {
          const m = Wi(r).typeParameters;
          if (It(m) >= l.length) {
            const y = yy(l, m, l.length, s);
            return It(y) === 0 ? f : i4(r, y);
          }
        }
        if (It(f.typeParameters) >= l.length) return l0(f, yy(l, f.typeParameters, l.length, s));
      }
      function gst(r) {
        const s = $2(ip.IntrinsicElements, r);
        return s ? co(s) : Te;
      }
      function hst(r) {
        (L.jsx || 0) === 0 && We(r, p.Cannot_use_JSX_unless_the_jsx_flag_is_provided), lR(r) === void 0 && $ && We(r, p.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist);
      }
      function Vde(r) {
        const s = Gu(r);
        s && mft(r), hst(r), Pde(r);
        const l = m4(r);
        if (wX(l, r), s) {
          const f = r, m = mst(f);
          if (m !== void 0) {
            const y = f.tagName;
            Bp(ex(y) ? sf(cz(y)) : aa(y), m, Sc, y, p.Its_type_0_is_not_a_valid_JSX_element_type, () => {
              const x = uc(y);
              return ba(void 0, p._0_cannot_be_used_as_a_JSX_component, x);
            });
          } else dst(p8e(f), ro(l), f);
        }
      }
      function yX(r, s, l) {
        if (r.flags & 1048576 && (R2(r, s) || xC(r, s) || v8(s) && kh(r, Cr) || l && Ude(s)))
          return !0;
        if (r.flags & 16777216) return yX(r.baseType, s, l);
        if (r.flags & 402653184 && X8(r)) {
          for (const f of r.types) if (yX(f, s, l)) return !0;
        }
        return !1;
      }
      function X8(r) {
        return !!(r.flags & 1048576 && !(yn(r) & 512) || r.flags & 131072 || r.flags & 16777216 && X8(r.baseType) || r.flags & 134217728 && _t(r.types, X8) || r.flags & 268435456 && hr(r.types, X8));
      }
      function yst(r, s) {
        if (hft(r), r.expression) {
          const l = aa(r.expression, s);
          return r.dotDotDotToken && l !== Ve && !Jp(l) && We(r, p.JSX_spread_child_must_be_an_array_type), l;
        } else return rt;
      }
      function qde(r) {
        return r.valueDeclaration ? Q2(r.valueDeclaration) : 0;
      }
      function Gde(r) {
        if (r.flags & 8192 || gc(r) & 4) return !0;
        if (rn(r.valueDeclaration)) {
          const s = r.valueDeclaration.parent;
          return s && un(s) && qc(s) === 3;
        }
      }
      function Hde(r, s, l, f, m, y = !0) {
        return VIe(r, s, l, f, m, y ? r.kind === 167 ? r.right : r.kind === 206 ? r : r.kind === 209 && r.propertyName ? r.propertyName : r.name : void 0);
      }
      function VIe(r, s, l, f, m, y) {
        var x;
        const O = kp(m, l);
        if (s) {
          if (z < 2 && qIe(m))
            return y && We(y, p.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword), !1;
          if (O & 64)
            return y && We(y, p.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression, Xi(m), Xr(wC(m))), !1;
          if (!(O & 256) && ((x = m.declarations) != null && x.some(IZ)))
            return y && We(y, p.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super, Xi(m)), !1;
        }
        if (O & 64 && qIe(m) && (eA(r) || AK(r) || rp(r.parent) && w5(r.parent.parent))) {
          const V = ju(m);
          if (V && V.flags & 32 && p_t(r))
            return y && We(y, p.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor, Xi(m), Xi(V)), !1;
        }
        if (!(O & 6)) return !0;
        if (O & 2)
          return Kme(r, I0(ju(m))) ? !0 : (y && We(y, p.Property_0_is_private_and_only_accessible_within_class_1, Xi(m), Xr(wC(m))), !1);
        if (s) return !0;
        let J = o5e(r, (V) => oNe(Oo(mn(V)), m, l));
        return !J && (J = vst(r), J = J && oNe(J, m, l), O & 256 || !J) ? (y && We(y, p.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses, Xi(m), Xr(wC(m) || f)), !1) : O & 256 ? !0 : (f.flags & 524288 && (f = f.isThisType ? g_(f) : xu(f)), !f || !Ks(f, J) ? (y && We(y, p.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2, Xi(m), Xr(J), Xr(f)), !1) : !0);
      }
      function vst(r) {
        const s = bst(r);
        let l = s?.type && Di(s.type);
        if (l)
          l.flags & 524288 && (l = g_(l));
        else {
          const f = c_(r, !1, !1);
          Ra(f) && (l = Fde(f));
        }
        if (l && yn(l) & 7) return vi(l);
      }
      function bst(r) {
        const s = c_(r, !1, !1);
        return s && Ra(s) ? Rb(s) : void 0;
      }
      function qIe(r) {
        return !!UM(r, (s) => !(s.flags & 8192));
      }
      function p4(r) {
        return rg(aa(r), r);
      }
      function uR(r) {
        return lm(r, 50331648);
      }
      function $de(r) {
        return uR(r) ? g0(r) : r;
      }
      function Sst(r, s) {
        const l = go(r) ? mf(r) : void 0;
        if (r.kind === 106) {
          We(r, p.The_value_0_cannot_be_used_here, "null");
          return;
        }
        if (l !== void 0 && l.length < 100) {
          if (Fe(r) && l === "undefined") {
            We(r, p.The_value_0_cannot_be_used_here, "undefined");
            return;
          }
          We(r, s & 16777216 ? s & 33554432 ? p._0_is_possibly_null_or_undefined : p._0_is_possibly_undefined : p._0_is_possibly_null, l);
        } else We(r, s & 16777216 ? s & 33554432 ? p.Object_is_possibly_null_or_undefined : p.Object_is_possibly_undefined : p.Object_is_possibly_null);
      }
      function Tst(r, s) {
        We(r, s & 16777216 ? s & 33554432 ? p.Cannot_invoke_an_object_which_is_possibly_null_or_undefined : p.Cannot_invoke_an_object_which_is_possibly_undefined : p.Cannot_invoke_an_object_which_is_possibly_null);
      }
      function GIe(r, s, l) {
        if (Q && r.flags & 2) {
          if (go(s)) {
            const m = mf(s);
            if (m.length < 100)
              return We(s, p._0_is_of_type_unknown, m), rt;
          }
          return We(s, p.Object_is_of_type_unknown), rt;
        }
        const f = l4(r, 50331648);
        if (f & 50331648) {
          l(s, f);
          const m = g0(r);
          return m.flags & 262156 ? rt : m;
        }
        return r;
      }
      function rg(r, s) {
        return GIe(r, s, Sst);
      }
      function HIe(r, s) {
        const l = rg(r, s);
        if (l.flags & 16) {
          if (go(s)) {
            const f = mf(s);
            if (Fe(s) && f === "undefined")
              return We(s, p.The_value_0_cannot_be_used_here, f), l;
            if (f.length < 100)
              return We(s, p._0_is_possibly_undefined, f), l;
          }
          We(s, p.Object_is_possibly_undefined);
        }
        return l;
      }
      function vX(r, s, l) {
        return r.flags & 64 ? xst(r, s) : Qde(r, r.expression, p4(r.expression), r.name, s, l);
      }
      function xst(r, s) {
        const l = aa(r.expression), f = j8(l, r.expression);
        return V$(Qde(r, r.expression, rg(f, r.expression), r.name, s), r, f !== l);
      }
      function $Ie(r, s) {
        const l = N5(r) && Zy(r.left) ? rg(iR(r.left), r.left) : p4(r.left);
        return Qde(r, r.left, l, r.right, s);
      }
      function Xde(r) {
        for (; r.parent.kind === 218; ) r = r.parent;
        return ym(r.parent) && r.parent.expression === r;
      }
      function _R(r, s) {
        for (let l = E5(s); l; l = nu(l)) {
          const { symbol: f } = l, m = bA(f, r), y = f.members && f.members.get(m) || f.exports && f.exports.get(m);
          if (y) return y;
        }
      }
      function kst(r) {
        if (!nu(r)) return sr(r, p.Private_identifiers_are_not_allowed_outside_class_bodies);
        if (!eF(r.parent)) {
          if (!fg(r)) return sr(r, p.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression);
          const s = un(r.parent) && r.parent.operatorToken.kind === 103;
          if (!bX(r) && !s) return sr(r, p.Cannot_find_name_0, On(r));
        }
        return !1;
      }
      function Cst(r) {
        kst(r);
        const s = bX(r);
        return s && pR(s, void 0, !1), Ve;
      }
      function bX(r) {
        if (!fg(r)) return;
        const s = Pn(r);
        return s.resolvedSymbol === void 0 && (s.resolvedSymbol = _R(r.escapedText, r)), s.resolvedSymbol;
      }
      function SX(r, s) {
        return ms(r, s.escapedName);
      }
      function Est(r, s, l) {
        let f;
        const m = co(r);
        m && bt(m, (x) => {
          const O = x.valueDeclaration;
          if (O && Bl(O) && Oi(O.name) && O.name.escapedText === s.escapedText)
            return f = x, !0;
        });
        const y = $r(s);
        if (f) {
          const x = E.checkDefined(f.valueDeclaration), O = E.checkDefined(nu(x));
          if (l?.valueDeclaration) {
            const J = l.valueDeclaration, V = nu(J);
            if (E.assert(!!V), cr(V, (Y) => O === Y))
              return ts(We(s, p.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling, y, Xr(r)), Kr(J, p.The_shadowing_declaration_of_0_is_defined_here, y), Kr(x, p.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here, y)), !0;
          }
          return We(s, p.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier, y, $r(O.name || UW)), !0;
        }
        return !1;
      }
      function XIe(r, s) {
        return (v(s) || eA(r) && w(s)) && c_(r, !0, !1) === B(s);
      }
      function Qde(r, s, l, f, m, y) {
        const x = Pn(s).resolvedSymbol, O = Xy(r), J = h_(O !== 0 || Xde(r) ? of(l) : l), V = Bi(J) || J === wn;
        let Y;
        if (Oi(f)) {
          (z < Rl.PrivateNamesAndClassStaticBlocks || z < Rl.ClassAndClassElementDecorators || !pe) && (O !== 0 && Fl(r, 1048576), O !== 1 && Fl(r, 524288));
          const me = _R(f.escapedText, f);
          if (O && me && me.valueDeclaration && hc(me.valueDeclaration) && sr(f, p.Cannot_assign_to_private_method_0_Private_methods_are_not_writable, On(f)), V) {
            if (me) return hi(J) ? rt : J;
            if (E5(f) === void 0)
              return sr(f, p.Private_identifiers_are_not_allowed_outside_class_bodies), Ve;
          }
          if (Y = me && SX(l, me), Y === void 0) {
            if (Est(l, f, me)) return rt;
            const Je = E5(f);
            Je && K4(Sr(Je), L.checkJs) && sr(f, p.Private_field_0_must_be_declared_in_an_enclosing_class, On(f));
          } else Y.flags & 65536 && !(Y.flags & 32768) && O !== 1 && We(r, p.Private_accessor_was_defined_without_a_getter);
        } else {
          if (V)
            return Fe(s) && x && NC(r, 2, void 0, l), hi(J) ? rt : J;
          Y = ms(J, f.escapedText, IX(J), r.kind === 167);
        }
        NC(r, 2, Y, l);
        let be;
        if (Y) {
          const me = $me(Y, f);
          if (kd(me) && Cpe(r, me) && me.declarations && Cd(f, me.declarations, f.escapedText), Dst(Y, r, f), pR(Y, r, n8e(s, x)), Pn(r).resolvedSymbol = Y, Hde(r, s.kind === 108, qx(r), J, Y), q8e(r, Y, O))
            return We(f, p.Cannot_assign_to_0_because_it_is_a_read_only_property, On(f)), rt;
          be = XIe(r, Y) ? fr : y || oO(r) ? cd(Y) : ft(Y);
        } else {
          const me = !Oi(f) && (O === 0 || !UT(l) || VD(l)) ? xC(J, f.escapedText) : void 0;
          if (!(me && me.type)) {
            const Je = Yde(r, l.symbol, !0);
            return !Je && w8(l) ? Ve : l.symbol === Ie ? (Ie.exports.has(f.escapedText) && Ie.exports.get(f.escapedText).flags & 418 ? We(f, p.Property_0_does_not_exist_on_type_1, Ti(f.escapedText), Xr(l)) : $ && We(f, p.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature, Xr(l)), Ve) : (f.escapedText && !dT(r) && YIe(f, VD(l) ? J : l, Je), rt);
          }
          me.isReadonly && (Qy(r) || YB(r)) && We(r, p.Index_signature_in_type_0_only_permits_reading, Xr(J)), be = me.type, L.noUncheckedIndexedAccess && Xy(r) !== 1 && (be = Yn([be, Ke])), L.noPropertyAccessFromIndexSignature && Ln(r) && We(f, p.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0, Ti(f.escapedText)), me.declaration && Qv(me.declaration) && Cd(f, [me.declaration], f.escapedText);
        }
        return QIe(r, Y, be, f, m);
      }
      function Yde(r, s, l) {
        var f;
        const m = Sr(r);
        if (m && L.checkJs === void 0 && m.checkJsDirective === void 0 && (m.scriptKind === 1 || m.scriptKind === 2)) {
          const y = bt(s?.declarations, Sr), x = !s?.valueDeclaration || !Zn(s.valueDeclaration) || ((f = s.valueDeclaration.heritageClauses) == null ? void 0 : f.length) || w0(!1, s.valueDeclaration);
          return !(m !== y && y && D0(y)) && !(l && s && s.flags & 32 && x) && !(r && l && Ln(r) && r.expression.kind === 110 && x);
        }
        return !1;
      }
      function QIe(r, s, l, f, m) {
        const y = Xy(r);
        if (y === 1) return h0(l, !!(s && s.flags & 16777216));
        if (s && !(s.flags & 98311) && !(s.flags & 8192 && l.flags & 134217728) && !YX(s.declarations)) return l;
        if (l === fr) return gn(r, s);
        l = wde(l, r, m);
        let x = !1;
        if (Q && fe && jo(r) && r.expression.kind === 110) {
          const J = s && s.valueDeclaration;
          if (J && $7e(J) && !es(J)) {
            const V = VP(r);
            V.kind === 177 && V.parent === J.parent && !(J.flags & 33554432) && (x = !0);
          }
        } else Q && s && s.valueDeclaration && Ln(s.valueDeclaration) && lA(s.valueDeclaration) && VP(r) === VP(s.valueDeclaration) && (x = !0);
        const O = y0(r, l, x ? V1(l) : l);
        return x && !c4(l) && c4(O) ? (We(f, p.Property_0_is_used_before_being_assigned, Xi(s)), l) : y ? m0(O) : O;
      }
      function Dst(r, s, l) {
        const { valueDeclaration: f } = r;
        if (!f || Sr(s).isDeclarationFile) return;
        let m;
        const y = On(l);
        Zde(s) && !ttt(f) && !(jo(s) && jo(s.expression)) && !cy(f, l) && !(hc(f) && oQ(f) & 256) && (pe || !wst(r)) ? m = We(l, p.Property_0_is_used_before_its_initialization, y) : f.kind === 264 && s.parent.kind !== 184 && !(f.flags & 33554432) && !cy(f, l) && (m = We(l, p.Class_0_used_before_its_declaration, y)), m && ts(m, Kr(f, p._0_is_declared_here, y));
      }
      function Zde(r, s) {
        return !!cr(r, (l) => {
          switch (l.kind) {
            case 173:
            case 176:
              return !0;
            case 187:
            case 288:
              return "quit";
            case 220:
              return s ? !1 : "quit";
            case 242:
              return So(l.parent) && l.parent.kind !== 220 ? "quit" : !1;
            default:
              return !1;
          }
        });
      }
      function wst(r) {
        if (r.parent && r.parent.flags & 32) {
          const s = Nd(Oo(r.parent));
          if (s.length) {
            const l = ms(s[0], r.escapedName);
            return !!(l && l.valueDeclaration);
          }
        }
        return !1;
      }
      function YIe(r, s, l) {
        const f = Pn(r), m = f.nonExistentPropCheckCache || (f.nonExistentPropCheckCache = /* @__PURE__ */ new Set()), y = `${Kl(s)}|${l}`;
        if (m.has(y)) return;
        m.add(y);
        let x, O;
        if (!Oi(r) && s.flags & 134217728 && !(s.flags & 12713980)) {
          for (const V of s.types) if (!ms(V, r.escapedText) && !xC(V, r.escapedText)) {
            x = ba(x, p.Property_0_does_not_exist_on_type_1, Do(r), Xr(V));
            break;
          }
        }
        if (ZIe(r.escapedText, s)) {
          const V = Do(r), Y = Xr(s);
          x = ba(x, p.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead, V, Y, Y + "." + V);
        } else {
          const V = s7(s);
          if (V && ms(V, r.escapedText))
            x = ba(x, p.Property_0_does_not_exist_on_type_1, Do(r), Xr(s)), O = Kr(r, p.Did_you_forget_to_use_await);
          else {
            const Y = Do(r), be = Xr(s), me = Nst(Y, s);
            if (me !== void 0) x = ba(x, p.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later, Y, be, me);
            else {
              const Je = Kde(r, s);
              if (Je !== void 0) {
                const gt = kc(Je), ht = l ? p.Property_0_may_not_exist_on_type_1_Did_you_mean_2 : p.Property_0_does_not_exist_on_type_1_Did_you_mean_2;
                x = ba(x, ht, Y, be, gt), O = Je.valueDeclaration && Kr(Je.valueDeclaration, p._0_is_declared_here, gt);
              } else {
                const gt = Pst(s) ? p.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom : p.Property_0_does_not_exist_on_type_1;
                x = ba(Qfe(x, s), gt, Y, be);
              }
            }
          }
        }
        const J = Gg(Sr(r), r, x);
        O && ts(J, O), Tg(!l || x.code !== p.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code, J);
      }
      function Pst(r) {
        return L.lib && !L.lib.includes("lib.dom.d.ts") && Fit(r, (s) => s.symbol && /^(?:EventTarget|Node|(?:HTML[a-zA-Z]*)?Element)$/.test(Ti(s.symbol.escapedName))) && d0(r);
      }
      function ZIe(r, s) {
        const l = s.symbol && ms(ft(s.symbol), r);
        return l !== void 0 && !!l.valueDeclaration && es(l.valueDeclaration);
      }
      function Ast(r) {
        const s = $r(r), l = xB().get(s);
        return l && HR(l.keys());
      }
      function Nst(r, s) {
        const l = h_(s).symbol;
        if (!l) return;
        const f = kc(l), m = xB().get(f);
        if (m) {
          for (const [y, x] of m) if (Gi(x, r)) return y;
        }
      }
      function KIe(r, s) {
        return fR(r, co(s), 106500);
      }
      function Kde(r, s) {
        let l = co(s);
        if (typeof r != "string") {
          const f = r.parent;
          Ln(f) && (l = dn(l, (m) => i8e(f, s, m))), r = On(r);
        }
        return fR(r, l, 111551);
      }
      function e8e(r, s) {
        const l = Ta(r) ? r : On(r), f = co(s);
        return (l === "for" ? xr(f, (m) => kc(m) === "htmlFor") : l === "class" ? xr(f, (m) => kc(m) === "className") : void 0) ?? fR(l, f, 111551);
      }
      function t8e(r, s) {
        const l = Kde(r, s);
        return l && kc(l);
      }
      function Ist(r, s, l) {
        const f = Ku(r, s, l);
        if (f) return f;
        let m = ma(r.values());
        return r === Ce && (m = zi(Rn([
          "string",
          "number",
          "boolean",
          "object",
          "bigint",
          "symbol"
        ], (y) => r.has(y.charAt(0).toUpperCase() + y.slice(1)) ? Fs(524288, y) : void 0), m)), L5e(m), fR(Ti(s), m, l);
      }
      function r8e(r, s, l) {
        return E.assert(s !== void 0, "outername should always be defined"), Nt(r, s, l, void 0, !1, !1);
      }
      function eme(r, s) {
        return s.exports && fR(On(r), L5e(O1(s)), 2623475);
      }
      function Ost(r, s, l) {
        function f(x) {
          const O = R2(r, x);
          if (O) {
            const J = nx(ft(O));
            return !!J && fm(J) >= 1 && qa(l, _m(J, 0));
          }
          return !1;
        }
        const m = Qy(s) ? "set" : "get";
        if (!f(m)) return;
        let y = AA(s.expression);
        return y === void 0 ? y = m : y += "." + m, y;
      }
      function Fst(r, s) {
        const l = s.types.filter((f) => !!(f.flags & 1024));
        return xb(r.value, l, (f) => f.value);
      }
      function fR(r, s, l) {
        return xb(r, s, f);
        function f(m) {
          const y = kc(m);
          if (!ta(y, '"')) {
            if (m.flags & l) return y;
            if (m.flags & 2097152) {
              const x = uC(m);
              if (x && x.flags & l) return y;
            }
          }
        }
      }
      function pR(r, s, l) {
        const f = r && r.flags & 106500 && r.valueDeclaration;
        if (!f) return;
        const m = vf(f, 2), y = r.valueDeclaration && Bl(r.valueDeclaration) && Oi(r.valueDeclaration.name);
        if (!(!m && !y) && !(s && oO(s) && !(r.flags & 65536))) {
          if (l) {
            const x = cr(s, So);
            if (x && x.symbol === r) return;
          }
          (gc(r) & 1 ? Wi(r).target : r).isReferenced = -1;
        }
      }
      function n8e(r, s) {
        return r.kind === 110 || !!s && go(r) && s === t_(x_(r));
      }
      function Lst(r, s) {
        switch (r.kind) {
          case 212:
            return tme(r, r.expression.kind === 108, s, of(aa(r.expression)));
          case 167:
            return tme(r, !1, s, of(aa(r.left)));
          case 206:
            return tme(r, !1, s, Di(r));
        }
      }
      function i8e(r, s, l) {
        return rme(r, r.kind === 212 && r.expression.kind === 108, !1, s, l);
      }
      function tme(r, s, l, f) {
        if (Bi(f)) return !0;
        const m = ms(f, l);
        return !!m && rme(r, s, !1, f, m);
      }
      function rme(r, s, l, f, m) {
        if (Bi(f)) return !0;
        if (m.valueDeclaration && qu(m.valueDeclaration)) {
          const y = nu(m.valueDeclaration);
          return !Vu(r) && !!cr(r, (x) => x === y);
        }
        return VIe(r, s, l, f, m);
      }
      function Mst(r) {
        const s = r.initializer;
        if (s.kind === 262) {
          const l = s.declarations[0];
          if (l && !Ja(l.name)) return mn(l);
        } else if (s.kind === 80) return t_(s);
      }
      function Rst(r) {
        return Bu(r).length === 1 && !!kh(r, et);
      }
      function jst(r) {
        const s = Gs(r);
        if (s.kind === 80) {
          const l = t_(s);
          if (l.flags & 3) {
            let f = r, m = r.parent;
            for (; m; ) {
              if (m.kind === 250 && f === m.statement && Mst(m) === l && Rst(Ol(m.expression))) return !0;
              f = m, m = m.parent;
            }
          }
        }
        return !1;
      }
      function Bst(r, s) {
        return r.flags & 64 ? Jst(r, s) : a8e(r, p4(r.expression), s);
      }
      function Jst(r, s) {
        const l = aa(r.expression), f = j8(l, r.expression);
        return V$(a8e(r, rg(f, r.expression), s), r, f !== l);
      }
      function a8e(r, s, l) {
        const f = Xy(r) !== 0 || Xde(r) ? of(s) : s, m = r.argumentExpression, y = aa(m);
        if (hi(f) || f === wn) return f;
        if (IX(f) && !Xs(m))
          return We(m, p.A_const_enum_member_can_only_be_accessed_using_a_string_literal), rt;
        const x = jst(m) ? et : y, O = Xy(r);
        let J;
        O === 0 ? J = 32 : (J = 4 | (UT(f) && !VD(f) ? 2 : 0), O === 2 && (J |= 32));
        const V = J1(f, x, J, r) || rt;
        return m7e(QIe(r, Pn(r).resolvedSymbol, V, m, l), r);
      }
      function s8e(r) {
        return ym(r) || xv(r) || Gu(r);
      }
      function rx(r) {
        return s8e(r) && bt(r.typeArguments, xs), r.kind === 216 ? aa(r.template) : Gu(r) ? aa(r.attributes) : un(r) ? aa(r.left) : ym(r) && bt(r.arguments, (s) => {
          aa(s);
        }), ei;
      }
      function um(r) {
        return rx(r), La;
      }
      function zst(r, s, l) {
        let f, m, y = 0, x, O = -1, J;
        E.assert(!s.length);
        for (const V of r) {
          const Y = V.declaration && mn(V.declaration), be = V.declaration && V.declaration.parent;
          !m || Y === m ? f && be === f ? x = x + 1 : (f = be, x = y) : (x = y = s.length, f = be), m = Y, Z1e(V) ? (O++, J = O, y++) : J = x, s.splice(J, 0, l ? xet(V, l) : V);
        }
      }
      function TX(r) {
        return !!r && (r.kind === 231 || r.kind === 238 && r.isSpread);
      }
      function nme(r) {
        return qs(r, TX);
      }
      function o8e(r) {
        return !!(r.flags & 16);
      }
      function Wst(r) {
        return !!(r.flags & 23);
      }
      function xX(r, s, l, f = !1) {
        if (yd(r)) return !0;
        let m, y = !1, x = lf(l), O = fm(l);
        if (r.kind === 216)
          if (m = s.length, r.template.kind === 229) {
            const J = ws(r.template.templateSpans);
            y = Nc(J.literal) || !!J.literal.isUnterminated;
          } else {
            const J = r.template;
            E.assert(J.kind === 15), y = !!J.isUnterminated;
          }
        else if (r.kind === 171) m = m8e(r, l);
        else if (r.kind === 227) m = 1;
        else if (Gu(r)) {
          if (y = r.attributes.end === r.end, y) return !0;
          m = O === 0 ? s.length : 1, x = s.length === 0 ? x : 1, O = Math.min(O, 1);
        } else if (r.arguments) {
          m = f ? s.length + 1 : s.length, y = r.arguments.end === r.end;
          const J = nme(s);
          if (J >= 0) return J >= fm(l) && (Ng(l) || J < lf(l));
        } else
          return E.assert(r.kind === 215), fm(l) === 0;
        if (!Ng(l) && m > x) return !1;
        if (y || m >= O) return !0;
        for (let J = m; J < O; J++) if (rl(_m(l, J), rn(r) && !Q ? Wst : o8e).flags & 262144) return !1;
        return !0;
      }
      function ime(r, s) {
        const l = It(r.typeParameters), f = wg(r.typeParameters);
        return !_t(s) || s.length >= f && s.length <= l;
      }
      function c8e(r, s) {
        let l;
        return !!(r.target && (l = X2(r.target, s)) && _b(l));
      }
      function nx(r) {
        return Q8(r, 0, !1);
      }
      function l8e(r) {
        return Q8(r, 0, !1) || Q8(r, 1, !1);
      }
      function Q8(r, s, l) {
        if (r.flags & 1048576) {
          const f = om(r);
          if (l || f.properties.length === 0 && f.indexInfos.length === 0) {
            if (s === 0 && f.callSignatures.length === 1 && f.constructSignatures.length === 0) return f.callSignatures[0];
            if (s === 1 && f.constructSignatures.length === 1 && f.callSignatures.length === 0) return f.constructSignatures[0];
          }
        }
      }
      function u8e(r, s, l, f) {
        const m = z8(L3e(r), r, 0, f), y = K8(s), x = l && (y && y.flags & 524288 ? l.nonFixingMapper : l.mapper);
        return nde(x ? GT(s, x) : s, r, (O, J) => {
          wh(m.inferences, O, J);
        }), l || ide(s, r, (O, J) => {
          wh(m.inferences, O, J, 128);
        }), k8(r, gde(m), rn(s.declaration));
      }
      function Ust(r, s, l, f) {
        const m = fX(s, r), y = g4(r.attributes, m, f, l);
        return wh(f.inferences, y, m), gde(f);
      }
      function _8e(r) {
        if (!r) return Qt;
        const s = aa(r);
        return pee(r) ? s : U4(r.parent) ? g0(s) : Vu(r.parent) ? U$(s) : s;
      }
      function ame(r, s, l, f, m) {
        if (Gu(r)) return Ust(r, s, f, m);
        if (r.kind !== 171 && r.kind !== 227) {
          const J = hr(s.typeParameters, (Y) => !!j2(Y)), V = O_(r, J ? 8 : 0);
          if (V) {
            const Y = ro(s);
            if (q1(Y)) {
              const be = H2(r);
              if (!(!J && O_(r, 8) !== V)) {
                const gt = Ji(V, cde(SNe(be, 1))), ht = nx(gt), ir = ht && ht.typeParameters ? BT(rpe(ht, ht.typeParameters)) : gt;
                wh(m.inferences, ir, Y, 128);
              }
              const me = z8(s.typeParameters, s, m.flags), Je = Ji(V, be && zrt(be));
              wh(me.inferences, Je, Y), m.returnMapper = _t(me.inferences, h4) ? cde(Znt(me)) : void 0;
            }
          }
        }
        const y = e7(s), x = y ? Math.min(lf(s) - 1, l.length) : l.length;
        if (y && y.flags & 524288) {
          const J = xr(m.inferences, (V) => V.typeParameter === y);
          J && (J.impliedArity = qs(l, TX, x) < 0 ? l.length - x : void 0);
        }
        const O = lb(s);
        if (O && q1(O)) {
          const J = d8e(r);
          wh(m.inferences, _8e(J), O);
        }
        for (let J = 0; J < x; J++) {
          const V = l[J];
          if (V.kind !== 233) {
            const Y = _m(s, J);
            if (q1(Y)) {
              const be = g4(V, Y, m, f);
              wh(m.inferences, be, Y);
            }
          }
        }
        if (y && q1(y)) {
          const J = sme(l, x, l.length, y, m, f);
          wh(m.inferences, J, y);
        }
        return gde(m);
      }
      function f8e(r) {
        return r.flags & 134217728 ? sc(r, f8e) : r.flags & 1 || qM(xu(r) || r) ? r : Ls(r) ? Pg(J2(r), r.target.elementFlags, !1, r.target.labeledElementDeclarations) : Pg([r], [8]);
      }
      function sme(r, s, l, f, m, y) {
        const x = jT(f);
        if (s >= l - 1) {
          const Y = r[l - 1];
          if (TX(Y)) {
            const be = Y.kind === 238 ? Y.type : g4(Y.expression, f, m, y);
            return Sy(be) ? f8e(be) : Ju(xy(33, be, $e, Y.kind === 231 ? Y.expression : Y), x);
          }
        }
        const O = [], J = [], V = [];
        for (let Y = s; Y < l; Y++) {
          const be = r[Y];
          if (TX(be)) {
            const me = be.kind === 238 ? be.type : aa(be.expression);
            Sy(me) ? (O.push(me), J.push(8)) : (O.push(xy(33, me, $e, be.kind === 231 ? be.expression : be)), J.push(4));
          } else {
            const me = Ls(f) ? zde(f, Y - s, l - s) || Re : Ff(f, cm(Y - s), 256), Je = g4(be, me, m, y), gt = x || Wc(me, 14811132);
            O.push(gt ? ku(Je) : mb(Je)), J.push(1);
          }
          be.kind === 238 && be.tupleNameSource ? V.push(be.tupleNameSource) : V.push(void 0);
        }
        return Pg(O, J, x && !gp(f, Ype), V);
      }
      function ome(r, s, l, f) {
        const m = rn(r.declaration), y = r.typeParameters, x = yy(or(s, Di), y, wg(y), m);
        let O;
        for (let J = 0; J < s.length; J++) {
          E.assert(y[J] !== void 0, "Should not call checkTypeArguments with too many type arguments");
          const V = g_(y[J]);
          if (V) {
            const Y = l && f ? (() => ba(void 0, p.Type_0_does_not_satisfy_the_constraint_1)) : void 0, be = f || p.Type_0_does_not_satisfy_the_constraint_1;
            O || (O = Lf(y, x));
            const me = x[J];
            if (!zu(me, Of(Ji(V, O), me), l ? s[J] : void 0, be, Y)) return;
          }
        }
        return x;
      }
      function p8e(r) {
        if (ex(r.tagName)) return 2;
        const s = h_(aa(r.tagName));
        return It(Pa(s, 1)) ? 0 : It(Pa(s, 0)) ? 1 : 2;
      }
      function Vst(r, s, l, f, m, y, x) {
        const O = fX(s, r), J = yd(r) ? LIe(r) : g4(r.attributes, O, void 0, f), V = f & 4 ? J8(J) : J;
        return Y() && zpe(V, O, l, m ? yd(r) ? r : r.tagName : void 0, yd(r) ? void 0 : r.attributes, void 0, y, x);
        function Y() {
          var be;
          if (hX(r)) return !0;
          const me = (qd(r) || JS(r)) && !(ex(r.tagName) || Gd(r.tagName)) ? aa(r.tagName) : void 0;
          if (!me) return !0;
          const Je = Pa(me, 0);
          if (!It(Je)) return !0;
          const gt = ige(r);
          if (!gt) return !0;
          const ht = Tc(gt, 111551, !0, !1, r);
          if (!ht) return !0;
          const ir = Pa(ft(ht), 0);
          if (!It(ir)) return !0;
          let mr = !1, br = 0;
          for (const lr of ir) {
            const ur = Pa(_m(lr, 0), 0);
            if (It(ur))
              for (const En of ur) {
                if (mr = !0, Ng(En)) return !0;
                const si = lf(En);
                si > br && (br = si);
              }
          }
          if (!mr) return !0;
          let Hr = 1 / 0;
          for (const lr of Je) {
            const ur = fm(lr);
            ur < Hr && (Hr = ur);
          }
          if (Hr <= br) return !0;
          if (m) {
            const lr = r.tagName, ur = Kr(lr, p.Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3, mf(lr), Hr, mf(gt), br), En = (be = Wp(lr)) == null ? void 0 : be.valueDeclaration;
            En && ts(ur, Kr(En, p._0_is_declared_here, mf(lr))), x && x.skipLogging && (x.errors || (x.errors = [])).push(ur), x.skipLogging || Ws.add(ur);
          }
          return !1;
        }
      }
      function kX(r) {
        return Ic(r, rn(r) ? -2147483615 : 33);
      }
      function dR(r, s, l, f, m, y, x) {
        const O = {
          errors: void 0,
          skipLogging: !0
        };
        if (GZ(r))
          return Vst(r, l, f, m, y, x, O) ? void 0 : (E.assert(!y || !!O.errors, "jsx should have errors when reporting errors"), O.errors || Te);
        const J = lb(l);
        if (J && J !== Qt && !(Xb(r) || za(r) && Z_(r.expression))) {
          const Je = d8e(r), gt = _8e(Je), ht = y ? Je || r : void 0, ir = p.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;
          if (!Bp(gt, J, f, ht, ir, x, O))
            return E.assert(!y || !!O.errors, "this parameter should have errors when reporting errors"), O.errors || Te;
        }
        const V = p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1, Y = e7(l), be = Y ? Math.min(lf(l) - 1, s.length) : s.length;
        for (let Je = 0; Je < be; Je++) {
          const gt = s[Je];
          if (gt.kind !== 233) {
            const ht = _m(l, Je), ir = g4(gt, ht, void 0, m), mr = m & 4 ? J8(ir) : ir, br = kX(gt);
            if (!zpe(mr, ht, f, y ? br : void 0, br, V, x, O))
              return E.assert(!y || !!O.errors, "parameter should have errors when reporting errors"), me(gt, mr, ht), O.errors || Te;
          }
        }
        if (Y) {
          const Je = sme(s, be, s.length, Y, void 0, m), gt = s.length - be, ht = y ? gt === 0 ? r : gt === 1 ? kX(s[be]) : Ud(Y8(r, Je), s[be].pos, s[s.length - 1].end) : void 0;
          if (!Bp(Je, Y, f, ht, V, void 0, O))
            return E.assert(!y || !!O.errors, "rest parameter should have errors when reporting errors"), me(ht, Je, Y), O.errors || Te;
        }
        return;
        function me(Je, gt, ht) {
          if (Je && y && O.errors && O.errors.length) {
            if ($P(ht)) return;
            const ir = $P(gt);
            ir && tg(ir, ht, f) && ts(O.errors[0], Kr(Je, p.Did_you_forget_to_use_await));
          }
        }
      }
      function d8e(r) {
        if (r.kind === 227) return r.right;
        const s = r.kind === 214 ? r.expression : r.kind === 216 ? r.tag : r.kind === 171 && !U ? r.expression : void 0;
        if (s) {
          const l = Ic(s);
          if (jo(l)) return l.expression;
        }
      }
      function Y8(r, s, l, f) {
        const m = Nv.createSyntheticExpression(s, l, f);
        return pt(m, r), eo(m, r), m;
      }
      function CX(r) {
        if (yd(r)) return [Y8(r, Zt)];
        if (r.kind === 216) {
          const f = r.template, m = [Y8(f, ytt())];
          return f.kind === 229 && bt(f.templateSpans, (y) => {
            m.push(y.expression);
          }), m;
        }
        if (r.kind === 171) return qst(r);
        if (r.kind === 227) return [r.left];
        if (Gu(r)) return r.attributes.properties.length > 0 || qd(r) && r.parent.children.length > 0 ? [r.attributes] : Te;
        const s = r.arguments || Te, l = nme(s);
        if (l >= 0) {
          const f = s.slice(0, l);
          for (let m = l; m < s.length; m++) {
            const y = s[m], x = y.kind === 231 && (li ? aa(y.expression) : wc(y.expression));
            x && Ls(x) ? bt(J2(x), (O, J) => {
              var V;
              const Y = x.target.elementFlags[J], be = Y8(y, Y & 4 ? Ju(O) : O, !!(Y & 12), (V = x.target.labeledElementDeclarations) == null ? void 0 : V[J]);
              f.push(be);
            }) : f.push(y);
          }
          return f;
        }
        return s;
      }
      function qst(r) {
        const s = r.expression, l = bme(r);
        if (l) {
          const f = [];
          for (const m of l.parameters) {
            const y = ft(m);
            f.push(Y8(s, y));
          }
          return f;
        }
        return E.fail();
      }
      function m8e(r, s) {
        return L.experimentalDecorators ? Gst(r, s) : Math.min(Math.max(lf(s), 1), 2);
      }
      function Gst(r, s) {
        switch (r.parent.kind) {
          case 264:
          case 232:
            return 1;
          case 173:
            return km(r.parent) ? 3 : 2;
          case 175:
          case 178:
          case 179:
            return s.parameters.length <= 2 ? 2 : 3;
          case 170:
            return 3;
          default:
            return E.fail();
        }
      }
      function g8e(r) {
        const s = Sr(r), { start: l, length: f } = gS(s, Ln(r.expression) ? r.expression.name : r.expression);
        return {
          start: l,
          length: f,
          sourceFile: s
        };
      }
      function Z8(r, s, ...l) {
        if (za(r)) {
          const { sourceFile: f, start: m, length: y } = g8e(r);
          return "message" in s ? wl(f, m, y, s, ...l) : FB(f, s);
        } else
          return "message" in s ? Kr(r, s, ...l) : Gg(Sr(r), r, s);
      }
      function Hst(r) {
        return ym(r) ? Ln(r.expression) ? r.expression.name : r.expression : xv(r) ? Ln(r.tag) ? r.tag.name : r.tag : Gu(r) ? r.tagName : r;
      }
      function $st(r) {
        if (!za(r) || !Fe(r.expression)) return !1;
        const s = Gr(r.expression, r.expression.escapedText, 111551, void 0, !1), l = s?.valueDeclaration;
        if (!l || !Fi(l) || !r1(l.parent) || !Xb(l.parent.parent) || !Fe(l.parent.parent.expression)) return !1;
        const f = _pe(!1);
        return f ? Wp(l.parent.parent.expression, !0) === f : !1;
      }
      function h8e(r, s, l, f) {
        var m;
        const y = nme(l);
        if (y > -1) return Kr(l[y], p.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);
        let x = Number.POSITIVE_INFINITY, O = Number.NEGATIVE_INFINITY, J = Number.NEGATIVE_INFINITY, V = Number.POSITIVE_INFINITY, Y;
        for (const ht of s) {
          const ir = fm(ht), mr = lf(ht);
          ir < x && (x = ir, Y = ht), O = Math.max(O, mr), ir < l.length && ir > J && (J = ir), l.length < mr && mr < V && (V = mr);
        }
        const be = _t(s, Ng), me = be ? x : x < O ? x + "-" + O : x, Je = !be && me === 1 && l.length === 0 && $st(r);
        if (Je && rn(r)) return Z8(r, p.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments);
        const gt = pl(r) ? be ? p.The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0 : p.The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0 : be ? p.Expected_at_least_0_arguments_but_got_1 : Je ? p.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise : p.Expected_0_arguments_but_got_1;
        if (x < l.length && l.length < O) {
          if (f) {
            let ht = ba(void 0, p.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments, l.length, J, V);
            return ht = ba(ht, f), Z8(r, ht);
          }
          return Z8(r, p.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments, l.length, J, V);
        } else if (l.length < x) {
          let ht;
          if (f) {
            let mr = ba(void 0, gt, me, l.length);
            mr = ba(mr, f), ht = Z8(r, mr);
          } else ht = Z8(r, gt, me, l.length);
          const ir = (m = Y?.declaration) == null ? void 0 : m.parameters[Y.thisParameter ? l.length + 1 : l.length];
          if (ir) {
            const mr = Kr(ir, ...Ja(ir.name) ? [p.An_argument_matching_this_binding_pattern_was_not_provided] : cg(ir) ? [p.Arguments_for_the_rest_parameter_0_were_not_provided, On(x_(ir.name))] : [p.An_argument_for_0_was_not_provided, ir.name ? On(x_(ir.name)) : l.length]);
            return ts(ht, mr);
          }
          return ht;
        } else {
          const ht = A.createNodeArray(l.slice(O)), ir = js(ht).pos;
          let mr = ws(ht).end;
          if (mr === ir && mr++, Ud(ht, ir, mr), f) {
            let br = ba(void 0, gt, me, l.length);
            return br = ba(br, f), H3(Sr(r), ht, br);
          }
          return n6(Sr(r), ht, gt, me, l.length);
        }
      }
      function Xst(r, s, l, f) {
        const m = l.length;
        if (s.length === 1) {
          const O = s[0], J = wg(O.typeParameters), V = It(O.typeParameters);
          if (f) {
            let Y = ba(void 0, p.Expected_0_type_arguments_but_got_1, J < V ? J + "-" + V : J, m);
            return Y = ba(Y, f), H3(Sr(r), l, Y);
          }
          return n6(Sr(r), l, p.Expected_0_type_arguments_but_got_1, J < V ? J + "-" + V : J, m);
        }
        let y = -1 / 0, x = 1 / 0;
        for (const O of s) {
          const J = wg(O.typeParameters), V = It(O.typeParameters);
          J > m ? x = Math.min(x, J) : V < m && (y = Math.max(y, V));
        }
        if (y !== -1 / 0 && x !== 1 / 0) {
          if (f) {
            let O = ba(void 0, p.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments, m, y, x);
            return O = ba(O, f), H3(Sr(r), l, O);
          }
          return n6(Sr(r), l, p.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments, m, y, x);
        }
        if (f) {
          let O = ba(void 0, p.Expected_0_type_arguments_but_got_1, y === -1 / 0 ? x : y, m);
          return O = ba(O, f), H3(Sr(r), l, O);
        }
        return n6(Sr(r), l, p.Expected_0_type_arguments_but_got_1, y === -1 / 0 ? x : y, m);
      }
      function d4(r, s, l, f, m, y) {
        const x = r.kind === 216, O = r.kind === 171, J = Gu(r), V = yd(r), Y = r.kind === 227, be = !P && !l;
        let me, Je, gt, ht, ir = 0, mr = [], br;
        if (!O && !Y && !hS(r) && !V && (br = r.typeArguments, (x || J || r.expression.kind !== 108) && bt(br, xs)), mr = l || [], zst(s, mr, m), !V && !mr.length)
          return be && Ws.add(Z8(r, p.Call_target_does_not_contain_any_signatures)), um(r);
        const Hr = CX(r), lr = mr.length === 1 && !mr[0].typeParameters;
        !O && !lr && _t(Hr, Xf) && (ir = 4);
        const ur = !!(f & 16) && r.kind === 214 && r.arguments.hasTrailingComma;
        mr.length > 1 && (ht = Ii(mr, cp, lr, ur)), ht || (ht = Ii(mr, Sc, lr, ur));
        const En = Pn(r);
        if (En.resolvedSignature !== ds && !l)
          return E.assert(En.resolvedSignature), En.resolvedSignature;
        if (ht) return ht;
        if (ht = Qst(r, mr, Hr, !!l, f), En.resolvedSignature = ht, be) {
          if (!y && Y && (y = p.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method), me) if (me.length === 1 || me.length > 3) {
            const Si = me[me.length - 1];
            let fi;
            me.length > 3 && (fi = ba(fi, p.The_last_overload_gave_the_following_error), fi = ba(fi, p.No_overload_matches_this_call)), y && (fi = ba(fi, y));
            const vs = dR(r, Hr, Si, Sc, 0, !0, () => fi);
            if (vs) for (const Cs of vs)
              Si.declaration && me.length > 3 && ts(Cs, Kr(Si.declaration, p.The_last_overload_is_declared_here)), si(Si, Cs), Ws.add(Cs);
            else E.fail("No error for last overload signature");
          } else {
            const Si = [];
            let fi = 0, vs = Number.MAX_VALUE, Cs = 0, ka = 0;
            for (const Jr of me) {
              const en = dR(r, Hr, Jr, Sc, 0, !0, () => ba(void 0, p.Overload_0_of_1_2_gave_the_following_error, ka + 1, mr.length, I2(Jr)));
              en ? (en.length <= vs && (vs = en.length, Cs = ka), fi = Math.max(fi, en.length), Si.push(en)) : E.fail("No error for 3 or fewer overload signatures"), ka++;
            }
            const Ro = fi > 1 ? Si[Cs] : Rf(Si);
            E.assert(Ro.length > 0, "No errors reported for 3 or fewer overload signatures");
            let eu = ba(or(Ro, mK), p.No_overload_matches_this_call);
            y && (eu = ba(eu, y));
            const F_ = [...ks(Ro, (Jr) => Jr.relatedInformation)];
            let wr;
            if (hr(Ro, (Jr) => Jr.start === Ro[0].start && Jr.length === Ro[0].length && Jr.file === Ro[0].file)) {
              const { file: Jr, start: Vi, length: en } = Ro[0];
              wr = {
                file: Jr,
                start: Vi,
                length: en,
                code: eu.code,
                category: eu.category,
                messageText: eu,
                relatedInformation: F_
              };
            } else wr = Gg(Sr(r), Hst(r), eu, F_);
            si(me[0], wr), Ws.add(wr);
          }
          else if (Je) Ws.add(h8e(r, [Je], Hr, y));
          else if (gt) ome(gt, r.typeArguments, !0, y);
          else if (!V) {
            const Si = dn(s, (fi) => ime(fi, br));
            Si.length === 0 ? Ws.add(Xst(r, s, br, y)) : Ws.add(h8e(r, Si, Hr, y));
          }
        }
        return ht;
        function si(Si, fi) {
          var vs, Cs;
          const ka = me, Ro = Je, eu = gt, F_ = ((Cs = (vs = Si.declaration) == null ? void 0 : vs.symbol) == null ? void 0 : Cs.declarations) || Te, wr = F_.length > 1 ? xr(F_, (Jr) => So(Jr) && Gp(Jr.body)) : void 0;
          if (wr) {
            const Jr = mp(wr), Vi = !Jr.typeParameters;
            Ii([Jr], Sc, Vi) && ts(fi, Kr(wr, p.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible));
          }
          me = ka, Je = Ro, gt = eu;
        }
        function Ii(Si, fi, vs, Cs = !1) {
          if (me = void 0, Je = void 0, gt = void 0, vs) {
            const ka = Si[0];
            if (_t(br) || !xX(r, Hr, ka, Cs)) return;
            if (dR(r, Hr, ka, fi, 0, !1, void 0)) {
              me = [ka];
              return;
            }
            return ka;
          }
          for (let ka = 0; ka < Si.length; ka++) {
            const Ro = Si[ka];
            if (!ime(Ro, br) || !xX(r, Hr, Ro, Cs)) continue;
            let eu, F_;
            if (Ro.typeParameters) {
              let wr;
              if (_t(br)) {
                if (wr = ome(Ro, br, !1), !wr) {
                  gt = Ro;
                  continue;
                }
              } else
                F_ = z8(Ro.typeParameters, Ro, rn(r) ? 2 : 0), wr = ame(r, Ro, Hr, ir | 8, F_), ir |= F_.flags & 4 ? 8 : 0;
              if (eu = k8(Ro, wr, rn(Ro.declaration), F_ && F_.inferredTypeParameters), e7(Ro) && !xX(r, Hr, eu, Cs)) {
                Je = eu;
                continue;
              }
            } else eu = Ro;
            if (dR(r, Hr, eu, fi, ir, !1, void 0)) {
              (me || (me = [])).push(eu);
              continue;
            }
            if (ir) {
              if (ir = 0, F_ && (eu = k8(Ro, ame(r, Ro, Hr, ir, F_), rn(Ro.declaration), F_.inferredTypeParameters), e7(Ro) && !xX(r, Hr, eu, Cs))) {
                Je = eu;
                continue;
              }
              if (dR(r, Hr, eu, fi, ir, !1, void 0)) {
                (me || (me = [])).push(eu);
                continue;
              }
            }
            return Si[ka] = eu, eu;
          }
        }
      }
      function Qst(r, s, l, f, m) {
        return E.assert(s.length > 0), FC(r), f || s.length === 1 || s.some((y) => !!y.typeParameters) ? Kst(r, s, l, m) : Yst(s);
      }
      function Yst(r) {
        const s = Rn(r, (J) => J.thisParameter);
        let l;
        s.length && (l = y8e(s, s.map(hR)));
        const { min: f, max: m } = $ee(r, Zst), y = [];
        for (let J = 0; J < m; J++) {
          const V = Rn(r, (Y) => Qu(Y) ? J < Y.parameters.length - 1 ? Y.parameters[J] : ws(Y.parameters) : J < Y.parameters.length ? Y.parameters[J] : void 0);
          E.assert(V.length !== 0), y.push(y8e(V, Rn(r, (Y) => X2(Y, J))));
        }
        const x = Rn(r, (J) => Qu(J) ? ws(J.parameters) : void 0);
        let O = 128;
        if (x.length !== 0) {
          const J = Ju(Yn(Rn(r, F3e), 2));
          y.push(v8e(x, J)), O |= 1;
        }
        return r.some(Z1e) && (O |= 2), Zm(r[0].declaration, void 0, l, y, Ss(r.map(ro)), void 0, f, O);
      }
      function Zst(r) {
        const s = r.parameters.length;
        return Qu(r) ? s - 1 : s;
      }
      function y8e(r, s) {
        return v8e(r, Yn(s, 2));
      }
      function v8e(r, s) {
        return $T(js(r), s);
      }
      function Kst(r, s, l, f) {
        const m = rot(s, Ar === void 0 ? l.length : Ar), y = s[m], { typeParameters: x } = y;
        if (!x) return y;
        const O = s8e(r) ? r.typeArguments : void 0, J = O ? p$(y, eot(O, x, rn(r))) : tot(r, x, y, l, f);
        return s[m] = J, J;
      }
      function eot(r, s, l) {
        const f = r.map(LC);
        for (; f.length > s.length; ) f.pop();
        for (; f.length < s.length; ) f.push(j2(s[f.length]) || g_(s[f.length]) || mde(l));
        return f;
      }
      function tot(r, s, l, f, m) {
        const y = z8(s, l, rn(r) ? 2 : 0);
        return p$(l, ame(r, l, f, m | 12, y));
      }
      function rot(r, s) {
        let l = -1, f = -1;
        for (let m = 0; m < r.length; m++) {
          const y = r[m], x = lf(y);
          if (Ng(y) || x >= s) return m;
          x > f && (f = x, l = m);
        }
        return l;
      }
      function not(r, s, l) {
        if (r.expression.kind === 108) {
          const J = oX(r.expression);
          if (Bi(J)) {
            for (const V of r.arguments) aa(V);
            return ei;
          }
          if (!hi(J)) {
            const V = Jd(nu(r));
            if (V) return d4(r, Rfe(J, V.typeArguments, V), s, l, 0);
          }
          return rx(r);
        }
        let f, m = aa(r.expression);
        if (uS(r)) {
          const J = j8(m, r.expression);
          f = J === m ? 0 : V4(r) ? 16 : 8, m = J;
        } else f = 0;
        if (m = GIe(m, r.expression, Tst), m === wn) return cl;
        const y = h_(m);
        if (hi(y)) return um(r);
        const x = Pa(y, 0), O = Pa(y, 1).length;
        if (mR(m, y, x.length, O))
          return !hi(m) && r.typeArguments && We(r, p.Untyped_function_calls_may_not_accept_type_arguments), rx(r);
        if (!x.length) {
          if (O) We(r, p.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new, Xr(m));
          else {
            let J;
            if (r.arguments.length === 1) {
              const V = Sr(r).text;
              Uu(V.charCodeAt(gs(V, r.expression.end, !0) - 1)) && (J = Kr(r.expression, p.Are_you_missing_a_semicolon));
            }
            lme(r.expression, y, 0, J);
          }
          return um(r);
        }
        return l & 8 && !r.typeArguments && x.some(iot) ? (n7e(r, l), ds) : x.some((J) => rn(J.declaration) && !!$j(J.declaration)) ? (We(r, p.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new, Xr(m)), um(r)) : d4(r, x, s, l, f);
      }
      function iot(r) {
        return !!(r.typeParameters && rge(ro(r)));
      }
      function mR(r, s, l, f) {
        return Bi(r) || Bi(s) && !!(r.flags & 524288) || !l && !f && !(s.flags & 134217728) && !(dp(s).flags & 262144) && qa(r, Qs);
      }
      function aot(r, s, l) {
        let f = p4(r.expression);
        if (f === wn) return cl;
        if (f = h_(f), hi(f)) return um(r);
        if (Bi(f))
          return r.typeArguments && We(r, p.Untyped_function_calls_may_not_accept_type_arguments), rx(r);
        const m = Pa(f, 1);
        if (m.length) {
          if (!sot(r, m[0])) return um(r);
          if (b8e(m, (O) => !!(O.flags & 4)))
            return We(r, p.Cannot_create_an_instance_of_an_abstract_class), um(r);
          const x = f.symbol && I0(f.symbol);
          return x && Qn(x, 64) ? (We(r, p.Cannot_create_an_instance_of_an_abstract_class), um(r)) : d4(r, m, s, l, 0);
        }
        const y = Pa(f, 0);
        if (y.length) {
          const x = d4(r, y, s, l, 0);
          return $ || (x.declaration && !ng(x.declaration) && ro(x) !== Qt && We(r, p.Only_a_void_function_can_be_called_with_the_new_keyword), lb(x) === Qt && We(r, p.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)), x;
        }
        return lme(r.expression, f, 1), um(r);
      }
      function b8e(r, s) {
        return da(r) ? _t(r, (l) => b8e(l, s)) : r.compositeKind === 134217728 ? _t(r.compositeSignatures, s) : s(r);
      }
      function cme(r, s) {
        const l = Nd(s);
        if (!It(l)) return !1;
        const f = l[0];
        if (f.flags & 268435456) {
          const m = f.types, y = d3e(m);
          let x = 0;
          for (const O of f.types) {
            if (!y[x] && yn(O) & 3 && (O.symbol === r || cme(r, O)))
              return !0;
            x++;
          }
          return !1;
        }
        return f.symbol === r ? !0 : cme(r, f);
      }
      function sot(r, s) {
        if (!s || !s.declaration) return !0;
        const l = s.declaration, f = Wx(l, 6);
        if (!f || l.kind !== 177) return !0;
        const m = I0(l.parent.symbol), y = Oo(l.parent.symbol);
        if (!Kme(r, m)) {
          const x = nu(r);
          if (x && f & 4) {
            const O = LC(x);
            if (cme(l.parent.symbol, O)) return !0;
          }
          return f & 2 && We(r, p.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration, Xr(y)), f & 4 && We(r, p.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration, Xr(y)), !1;
        }
        return !0;
      }
      function S8e(r, s, l) {
        let f;
        const m = l === 0, y = OC(s), x = y && Pa(y, l).length > 0;
        if (s.flags & 134217728) {
          const J = s.types;
          let V = !1;
          for (const Y of J) if (Pa(Y, l).length !== 0) {
            if (V = !0, f) break;
          } else if (f || (f = ba(f, m ? p.Type_0_has_no_call_signatures : p.Type_0_has_no_construct_signatures, Xr(Y)), f = ba(f, m ? p.Not_all_constituents_of_type_0_are_callable : p.Not_all_constituents_of_type_0_are_constructable, Xr(s))), V) break;
          V || (f = ba(void 0, m ? p.No_constituent_of_type_0_is_callable : p.No_constituent_of_type_0_is_constructable, Xr(s))), f || (f = ba(f, m ? p.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other : p.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other, Xr(s)));
        } else f = ba(f, m ? p.Type_0_has_no_call_signatures : p.Type_0_has_no_construct_signatures, Xr(s));
        let O = m ? p.This_expression_is_not_callable : p.This_expression_is_not_constructable;
        if (za(r.parent) && r.parent.arguments.length === 0) {
          const { resolvedSymbol: J } = Pn(r);
          J && J.flags & 32768 && (O = p.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without);
        }
        return {
          messageChain: ba(f, O),
          relatedMessage: x ? p.Did_you_forget_to_use_await : void 0
        };
      }
      function lme(r, s, l, f) {
        const { messageChain: m, relatedMessage: y } = S8e(r, s, l), x = Gg(Sr(r), r, m);
        if (y && ts(x, Kr(r, y)), za(r.parent)) {
          const { start: O, length: J } = g8e(r.parent);
          x.start = O, x.length = J;
        }
        Ws.add(x), T8e(s, l, f ? ts(x, f) : x);
      }
      function T8e(r, s, l) {
        if (!r.symbol) return;
        const f = Wi(r.symbol).originatingImport;
        if (f && !B_(f)) {
          const m = Pa(ft(Wi(r.symbol).target), s);
          if (!m || !m.length) return;
          ts(l, Kr(f, p.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead));
        }
      }
      function oot(r, s, l) {
        const f = aa(r.tag), m = h_(f);
        if (hi(m)) return um(r);
        const y = Pa(m, 0), x = Pa(m, 1).length;
        if (mR(f, m, y.length, x)) return rx(r);
        if (!y.length) {
          if (hu(r.parent)) {
            const O = Kr(r.tag, p.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);
            return Ws.add(O), um(r);
          }
          return lme(r.tag, m, 0), um(r);
        }
        return d4(r, y, s, l, 0);
      }
      function cot(r) {
        switch (r.parent.kind) {
          case 264:
          case 232:
            return p.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;
          case 170:
            return p.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;
          case 173:
            return p.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;
          case 175:
          case 178:
          case 179:
            return p.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;
          default:
            return E.fail();
        }
      }
      function lot(r, s, l) {
        const f = aa(r.expression), m = h_(f);
        if (hi(m)) return um(r);
        const y = Pa(m, 0), x = Pa(m, 1).length;
        if (mR(f, m, y.length, x)) return rx(r);
        if (fot(r, y) && !E_(r.expression)) {
          const J = uc(r.expression, !1);
          return We(r, p._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0, J), um(r);
        }
        const O = cot(r);
        if (!y.length) {
          const J = S8e(r.expression, m, 0), V = ba(J.messageChain, O), Y = Gg(Sr(r.expression), r.expression, V);
          return J.relatedMessage && ts(Y, Kr(r.expression, J.relatedMessage)), Ws.add(Y), T8e(m, 0, Y), um(r);
        }
        return d4(r, y, s, l, 0, O);
      }
      function EX(r, s) {
        const l = tx(r), f = l && Tu(l), m = f && Ku(f, ip.Element, 788968), y = m && K.symbolToEntityName(m, 788968, r), x = A.createFunctionTypeNode(void 0, [A.createParameterDeclaration(void 0, void 0, "props", void 0, K.typeToTypeNode(s, r))], y ? A.createTypeReferenceNode(y, void 0) : A.createKeywordTypeNode(133)), O = Fs(1, "props");
        return O.links.type = s, Zm(x, void 0, void 0, [O], m ? Oo(m) : rt, void 0, 1, 0);
      }
      function x8e(r) {
        const s = Pn(Sr(r));
        if (s.jsxFragmentType !== void 0) return s.jsxFragmentType;
        const l = x2(r);
        if (!((L.jsx === 2 || L.jsxFragmentFactory !== void 0) && l !== "null")) return s.jsxFragmentType = Ve;
        const f = L.jsx !== 1 && L.jsx !== 3, m = Ws ? p.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found : void 0, y = hX(r) ?? Gr(r, l, f ? 111551 : 111167, m, !0);
        if (y === void 0) return s.jsxFragmentType = rt;
        if (y.escapedName === XW.Fragment) return s.jsxFragmentType = ft(y);
        const x = (y.flags & 2097152) === 0 ? y : Zl(y), O = y && Tu(x), J = O && Ku(O, XW.Fragment, 2), V = J && ft(J);
        return s.jsxFragmentType = V === void 0 ? rt : V;
      }
      function uot(r, s, l) {
        const f = yd(r);
        let m;
        if (f)
          m = x8e(r);
        else {
          if (ex(r.tagName)) {
            const O = JIe(r), J = EX(r, O);
            return q2(g4(r.attributes, fX(J, r), void 0, 0), O, r.tagName, r.attributes), It(r.typeArguments) && (bt(r.typeArguments, xs), Ws.add(n6(Sr(r), r.typeArguments, p.Expected_0_type_arguments_but_got_1, 0, It(r.typeArguments)))), J;
          }
          m = aa(r.tagName);
        }
        const y = h_(m);
        if (hi(y)) return um(r);
        const x = jIe(m, r);
        return mR(m, y, x.length, 0) ? rx(r) : x.length === 0 ? (f ? We(r, p.JSX_element_type_0_does_not_have_any_construct_or_call_signatures, uc(r)) : We(r.tagName, p.JSX_element_type_0_does_not_have_any_construct_or_call_signatures, uc(r.tagName)), um(r)) : d4(r, x, s, l, 0);
      }
      function _ot(r, s, l) {
        const f = aa(r.right);
        if (!Bi(f)) {
          const m = Cme(f);
          if (m) {
            const y = h_(m);
            if (hi(y)) return um(r);
            const x = Pa(y, 0), O = Pa(y, 1);
            if (mR(m, y, x.length, O.length)) return rx(r);
            if (x.length) return d4(r, x, s, l, 0);
          } else if (!(eQ(f) || V2(f, Qs)))
            return We(r.right, p.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method), um(r);
        }
        return ei;
      }
      function fot(r, s) {
        return s.length && hr(s, (l) => l.minArgumentCount === 0 && !Qu(l) && l.parameters.length < m8e(r, l));
      }
      function pot(r, s, l) {
        switch (r.kind) {
          case 214:
            return not(r, s, l);
          case 215:
            return aot(r, s, l);
          case 216:
            return oot(r, s, l);
          case 171:
            return lot(r, s, l);
          case 290:
          case 287:
          case 286:
            return uot(r, s, l);
          case 227:
            return _ot(r, s, l);
        }
        E.assertNever(r, "Branch in 'resolveSignature' should be unreachable.");
      }
      function m4(r, s, l) {
        const f = Pn(r), m = f.resolvedSignature;
        if (m && m !== ds && !s) return m;
        const y = Z0;
        m || (Z0 = n0.length), f.resolvedSignature = ds;
        const x = pot(r, s, l || 0);
        return Z0 = y, x !== ds && (f.resolvedSignature = Vr === li ? x : m), x;
      }
      function ng(r) {
        var s;
        if (!r || !rn(r)) return !1;
        const l = Xc(r) || Lo(r) ? r : (ci(r) || ol(r)) && r.initializer && Lo(r.initializer) ? r.initializer : void 0;
        if (l) {
          if ($j(r)) return !0;
          if (ol(dd(l.parent))) return !1;
          const f = mn(l);
          return !!((s = f?.members) != null && s.size);
        }
        return !1;
      }
      function ume(r, s) {
        var l, f;
        if (s) {
          const m = Wi(s);
          if (!m.inferredClassSymbol || !m.inferredClassSymbol.has(ss(r))) {
            const y = Ug(r) ? r : Gm(r);
            return y.exports = y.exports || Ka(), y.members = y.members || Ka(), y.flags |= s.flags & 32, (l = s.exports) != null && l.size && to(y.exports, s.exports), (f = s.members) != null && f.size && to(y.members, s.members), (m.inferredClassSymbol || (m.inferredClassSymbol = /* @__PURE__ */ new Map())).set(ss(y), y), y;
          }
          return m.inferredClassSymbol.get(ss(r));
        }
      }
      function dot(r) {
        var s;
        const l = r && DX(r, !0), f = (s = l?.exports) == null ? void 0 : s.get("prototype"), m = f?.valueDeclaration && mot(f.valueDeclaration);
        return m ? mn(m) : void 0;
      }
      function DX(r, s) {
        if (!r.parent) return;
        let l, f;
        if (ci(r.parent) && r.parent.initializer === r) {
          if (!rn(r) && !(d7(r.parent) && So(r))) return;
          l = r.parent.name, f = r.parent;
        } else if (un(r.parent)) {
          const m = r.parent, y = r.parent.operatorToken.kind;
          if (y === 64 && (s || m.right === r))
            l = m.left, f = l;
          else if ((y === 57 || y === 61) && (ci(m.parent) && m.parent.initializer === m ? (l = m.parent.name, f = m.parent) : un(m.parent) && m.parent.operatorToken.kind === 64 && (s || m.parent.right === m) && (l = m.parent.left, f = l), !l || !SS(l) || !l6(l, m.left)))
            return;
        } else s && Xc(r) && (l = r.name, f = r);
        if (!(!f || !l || !s && !_v(r, Ky(l))))
          return Nf(f);
      }
      function mot(r) {
        if (!r.parent) return !1;
        let s = r.parent;
        for (; s && s.kind === 212; ) s = s.parent;
        if (s && un(s) && Ky(s.left) && s.operatorToken.kind === 64) {
          const l = GB(s);
          return bs(l) && l;
        }
      }
      function got(r, s) {
        var l, f, m;
        RR(r, r.typeArguments);
        const y = m4(r, void 0, s);
        if (y === ds) return wn;
        if (wX(y, r), r.expression.kind === 108) return Qt;
        if (r.kind === 215) {
          const O = y.declaration;
          if (O && O.kind !== 177 && O.kind !== 181 && O.kind !== 186 && !(z0(O) && ((f = (l = _6(O)) == null ? void 0 : l.parent) == null ? void 0 : f.kind) === 177) && !Rx(O) && !ng(O))
            return $ && We(r, p.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type), Ve;
        }
        if (rn(r) && D8e(r)) return I3e(r.arguments[0]);
        const x = ro(y);
        if (x.flags & 16896 && k8e(r)) return Ope(dd(r.parent));
        if (r.kind === 214 && !r.questionDotToken && r.parent.kind === 245 && x.flags & 16 && jp(y)) {
          if (!wA(r.expression)) We(r.expression, p.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);
          else if (!eR(r)) {
            const O = We(r.expression, p.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);
            KM(r.expression, O);
          }
        }
        if (rn(r)) {
          const O = DX(r, !1);
          if ((m = O?.exports) != null && m.size) {
            const J = Yo(O, O.exports, Te, Te, Te);
            return J.objectFlags |= 4096, Ss([x, J]);
          }
        }
        return x;
      }
      function wX(r, s) {
        if (!(r.flags & 128) && r.declaration && r.declaration.flags & 536870912) {
          const l = gR(s), f = AA(P5(s));
          k2(l, r.declaration, f, I2(r));
        }
      }
      function gR(r) {
        switch (r = Gs(r), r.kind) {
          case 214:
          case 171:
          case 215:
            return gR(r.expression);
          case 216:
            return gR(r.tag);
          case 287:
          case 286:
            return gR(r.tagName);
          case 213:
            return r.argumentExpression;
          case 212:
            return r.name;
          case 184:
            const s = r;
            return k_(s.typeName) ? s.typeName.right : s;
          default:
            return r;
        }
      }
      function k8e(r) {
        if (!za(r)) return !1;
        let s = r.expression;
        if (Ln(s) && s.name.escapedText === "for" && (s = s.expression), !Fe(s) || s.escapedText !== "Symbol") return !1;
        const l = K3e(!1);
        return l ? l === Gr(s, "Symbol", 111551, void 0, !1) : !1;
      }
      function hot(r) {
        if (jft(r), r.arguments.length === 0) return SR(r, Ve);
        const s = r.arguments[0], l = wc(s), f = r.arguments.length > 1 ? wc(r.arguments[1]) : void 0;
        for (let y = 2; y < r.arguments.length; ++y) wc(r.arguments[y]);
        if ((l.flags & 4 || l.flags & 8 || !qa(l, Cr)) && We(s, p.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0, Xr(l)), f) {
          const y = Z3e(!0);
          if (y !== Yi && zu(f, HM(y, 4), r.arguments[1]), L.ignoreDeprecations !== "6.0" && bs(r.arguments[1])) {
            for (const x of r.arguments[1].properties) if (ol(x) && Fe(x.name) && x.name.escapedText === "assert") {
              sr(x.name, p.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);
              break;
            }
          }
        }
        const m = Ru(r, s);
        if (m) {
          const y = Xm(m, s, !0, !1);
          if (y) return SR(r, C8e(ft(y), y, m, s) || E8e(ft(y), y, m, s));
        }
        return SR(r, Ve);
      }
      function _me(r, s, l) {
        const f = Ka(), m = Fs(2097152, "default");
        return m.parent = s, m.links.nameType = sf("default"), m.links.aliasTarget = zc(r), f.set("default", m), Yo(l, f, Te, Te, Te);
      }
      function C8e(r, s, l, f) {
        if ($m(f) && r && !hi(r)) {
          const m = r;
          return m.defaultOnlyType || (m.defaultOnlyType = _me(s, l)), m.defaultOnlyType;
        }
      }
      function E8e(r, s, l, f) {
        var m;
        if (W && r && !hi(r)) {
          const y = r;
          if (!y.syntheticType) if (hh((m = l.declarations) == null ? void 0 : m.find(Pi), l, !1, f)) {
            const x = Fs(2048, "__type"), O = _me(s, l, x);
            x.links.type = O, y.syntheticType = oR(r) ? z2(r, O, x, 0, !1) : O;
          } else y.syntheticType = r;
          return y.syntheticType;
        }
        return r;
      }
      function D8e(r) {
        if (!J_(r, !0)) return !1;
        if (!Fe(r.expression)) return E.fail();
        const s = Gr(r.expression, r.expression.escapedText, 111551, void 0, !0);
        if (s === Ft) return !0;
        if (s.flags & 2097152) return !1;
        const l = s.flags & 16 ? 263 : s.flags & 3 ? 261 : 0;
        if (l !== 0) {
          const f = Ho(s, l);
          return !!f && !!(f.flags & 33554432);
        }
        return !1;
      }
      function yot(r) {
        _ft(r) || RR(r, r.typeArguments), z < Rl.TaggedTemplates && Fl(r, 262144);
        const s = m4(r);
        return wX(s, r), ro(s);
      }
      function vot(r, s) {
        if (r.kind === 217) {
          const l = Sr(r);
          if (l && jc(l.fileName, [".cts", ".mts"]) && sr(r, p.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead), L.erasableSyntaxOnly) {
            const f = gs(l.text, r.pos), m = r.expression.pos;
            Ws.add(wl(l, f, m - f, p.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled));
          }
        }
        return w8e(r, s);
      }
      function fme(r) {
        switch (r.kind) {
          case 11:
          case 15:
          case 9:
          case 10:
          case 112:
          case 97:
          case 210:
          case 211:
          case 229:
            return !0;
          case 218:
            return fme(r.expression);
          case 225:
            const s = r.operator, l = r.operand;
            return s === 41 && (l.kind === 9 || l.kind === 10) || s === 40 && l.kind === 9;
          case 212:
          case 213:
            const f = Gs(r.expression), m = go(f) ? Tc(f, 111551, !0) : void 0;
            return !!(m && m.flags & 384);
        }
        return !1;
      }
      function w8e(r, s) {
        const { type: l, expression: f } = P8e(r), m = aa(f, s);
        if (_d(l))
          return fme(f) || We(f, p.A_const_assertion_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals), ku(m);
        const y = Pn(r);
        return y.assertionExpressionType = m, xs(l), FC(r), Di(l);
      }
      function P8e(r) {
        let s, l;
        switch (r.kind) {
          case 235:
          case 217:
            s = r.type, l = r.expression;
            break;
          case 218:
            s = J6(r), l = r.expression;
            break;
        }
        return {
          type: s,
          expression: l
        };
      }
      function bot(r) {
        const { type: s } = P8e(r), l = E_(r) ? s : r, f = Pn(r);
        E.assertIsDefined(f.assertionExpressionType);
        const m = J8(m0(f.assertionExpressionType)), y = Di(s);
        hi(y) || n(() => {
          I$(y, of(m)) || eNe(m, y, l, p.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first);
        });
      }
      function Sot(r) {
        const s = aa(r.expression), l = j8(s, r.expression);
        return V$(g0(l), r, l !== s);
      }
      function Tot(r) {
        return r.flags & 64 ? Sot(r) : g0(aa(r.expression));
      }
      function A8e(r) {
        if (x5e(r), bt(r.typeArguments, xs), r.kind === 234) {
          const s = dd(r.parent);
          s.kind === 227 && s.operatorToken.kind === 104 && Lb(r, s.right) && We(r, p.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression);
        }
        return N8e(r.kind === 234 ? aa(r.expression) : Zy(r.exprName) ? iR(r.exprName) : aa(r.exprName), r);
      }
      function N8e(r, s) {
        const l = s.typeArguments;
        if (r === wn || hi(r) || !_t(l)) return r;
        const f = Pn(s);
        if (f.instantiationExpressionTypes || (f.instantiationExpressionTypes = /* @__PURE__ */ new Map()), f.instantiationExpressionTypes.has(r.id)) return f.instantiationExpressionTypes.get(r.id);
        let m = !1, y;
        const x = J(r);
        f.instantiationExpressionTypes.set(r.id, x);
        const O = m ? y : r;
        return O && Ws.add(n6(Sr(s), l, p.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable, Xr(O))), x;
        function J(Y) {
          let be = !1, me = !1;
          const Je = gt(Y);
          return m || (m = me), be && !me && (y ?? (y = Y)), Je;
          function gt(ht) {
            if (ht.flags & 1048576) {
              const ir = om(ht), mr = V(ir.callSignatures), br = V(ir.constructSignatures);
              if (be || (be = ir.callSignatures.length !== 0 || ir.constructSignatures.length !== 0), me || (me = mr.length !== 0 || br.length !== 0), mr !== ir.callSignatures || br !== ir.constructSignatures) {
                const Hr = Yo(Fs(0, "__instantiationExpression"), ir.members, mr, br, ir.indexInfos);
                return Hr.objectFlags |= 8388608, Hr.node = s, Hr;
              }
            } else if (ht.flags & 117964800) {
              const ir = xu(ht);
              if (ir) {
                const mr = gt(ir);
                if (mr !== ir) return mr;
              }
            } else {
              if (ht.flags & 134217728) return sc(ht, J);
              if (ht.flags & 268435456) return Ss(el(ht.types, gt));
            }
            return ht;
          }
        }
        function V(Y) {
          return el(dn(Y, (be) => !!be.typeParameters && ime(be, l)), (be) => {
            const me = ome(be, l, !0);
            return me ? k8(be, me, rn(be.declaration)) : be;
          });
        }
      }
      function xot(r) {
        return xs(r.type), pme(r.expression, r.type);
      }
      function pme(r, s, l) {
        const f = aa(r, l), m = Di(s);
        return hi(m) ? m : (q2(f, m, cr(s.parent, (y) => y.kind === 239 || y.kind === 351), r, p.Type_0_does_not_satisfy_the_expected_type_1), f);
      }
      function kot(r) {
        return Dft(r), r.keywordToken === 105 ? dme(r) : r.keywordToken === 102 ? r.name.escapedText === "defer" ? (E.assert(!za(r.parent) || r.parent.expression !== r, "Trying to get the type of `import.defer` in `import.defer(...)`"), rt) : Cot(r) : E.assertNever(r.keywordToken);
      }
      function I8e(r) {
        switch (r.keywordToken) {
          case 102:
            return Y3e();
          case 105:
            const s = dme(r);
            return hi(s) ? rt : Wot(s);
          default:
            E.assertNever(r.keywordToken);
        }
      }
      function dme(r) {
        const s = PK(r);
        return s ? s.kind === 177 ? ft(mn(s.parent)) : ft(mn(s)) : (We(r, p.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor, "new.target"), rt);
      }
      function Cot(r) {
        100 <= H && H <= 199 ? Sr(r).impliedNodeFormat !== 99 && We(r, p.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output) : H < 6 && H !== 4 && We(r, p.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_node18_node20_or_nodenext);
        const s = Sr(r);
        return E.assert(!!(s.flags & 8388608), "Containing file is missing import meta node flag."), r.name.escapedText === "meta" ? Q3e() : rt;
      }
      function hR(r) {
        const s = r.valueDeclaration;
        return _u(ft(r), !1, !!s && (E0(s) || ek(s)));
      }
      function mme(r, s, l) {
        switch (r.name.kind) {
          case 80: {
            const f = r.name.escapedText;
            return r.dotDotDotToken ? l & 12 ? f : `${f}_${s}` : l & 3 ? f : `${f}_n`;
          }
          case 208:
            if (r.dotDotDotToken) {
              const f = r.name.elements, m = qn(Wo(f), Ns), y = f.length - (m?.dotDotDotToken ? 1 : 0);
              if (s < y) {
                const x = f[s];
                if (Ns(x)) return mme(x, s, l);
              } else if (m?.dotDotDotToken) return mme(m, s - y, l);
            }
            break;
        }
        return `arg_${s}`;
      }
      function gme(r, s = 0, l = 3, f) {
        if (!r) {
          const m = qn(f?.valueDeclaration, Fi);
          return m ? mme(m, s, l) : `${f?.escapedName ?? "arg"}_${s}`;
        }
        return E.assert(Fe(r.name)), r.name.escapedText;
      }
      function qP(r, s, l) {
        var f;
        const m = r.parameters.length - (Qu(r) ? 1 : 0);
        if (s < m) return r.parameters[s].escapedName;
        const y = r.parameters[m] || it, x = l || ft(y);
        if (Ls(x)) {
          const O = x.target, J = s - m, V = (f = O.labeledElementDeclarations) == null ? void 0 : f[J], Y = O.elementFlags[J];
          return gme(V, J, Y, y);
        }
        return y.escapedName;
      }
      function Eot(r, s) {
        var l;
        if (((l = r.declaration) == null ? void 0 : l.kind) === 318) return;
        const f = r.parameters.length - (Qu(r) ? 1 : 0);
        if (s < f) {
          const O = r.parameters[s], J = O8e(O);
          return J ? {
            parameter: J,
            parameterName: O.escapedName,
            isRestParameter: !1
          } : void 0;
        }
        const m = r.parameters[f] || it, y = O8e(m);
        if (!y) return;
        const x = ft(m);
        if (Ls(x)) {
          const O = x.target.labeledElementDeclarations, J = s - f, V = O?.[J], Y = !!V?.dotDotDotToken;
          return V ? (E.assert(Fe(V.name)), {
            parameter: V.name,
            parameterName: V.name.escapedText,
            isRestParameter: Y
          }) : void 0;
        }
        if (s === f) return {
          parameter: y,
          parameterName: m.escapedName,
          isRestParameter: !0
        };
      }
      function O8e(r) {
        return r.valueDeclaration && Fi(r.valueDeclaration) && Fe(r.valueDeclaration.name) && r.valueDeclaration.name;
      }
      function F8e(r) {
        return r.kind === 203 || Fi(r) && r.name && Fe(r.name);
      }
      function Dot(r, s) {
        const l = r.parameters.length - (Qu(r) ? 1 : 0);
        if (s < l) {
          const y = r.parameters[s].valueDeclaration;
          return y && F8e(y) ? y : void 0;
        }
        const f = r.parameters[l] || it, m = ft(f);
        if (Ls(m)) {
          const y = m.target.labeledElementDeclarations, x = s - l;
          return y && y[x];
        }
        return f.valueDeclaration && F8e(f.valueDeclaration) ? f.valueDeclaration : void 0;
      }
      function _m(r, s) {
        return X2(r, s) || Ve;
      }
      function X2(r, s) {
        const l = r.parameters.length - (Qu(r) ? 1 : 0);
        if (s < l) return hR(r.parameters[s]);
        if (Qu(r)) {
          const f = ft(r.parameters[l]), m = s - l;
          if (!Ls(f) || f.target.combinedFlags & 12 || m < f.target.fixedLength) return Ff(f, cm(m));
        }
      }
      function yR(r, s, l) {
        const f = lf(r), m = fm(r), y = K8(r);
        if (y && s >= f - 1) return s === f - 1 ? y : Ju(Ff(y, et));
        const x = [], O = [], J = [];
        for (let V = s; V < f; V++)
          !y || V < f - 1 ? (x.push(_m(r, V)), O.push(V < m ? 1 : 2)) : (x.push(y), O.push(8)), J.push(Dot(r, V));
        return Pg(x, O, l, J);
      }
      function L8e(r, s) {
        const l = yR(r, s), f = l && GM(l);
        return f && Bi(f) ? Ve : l;
      }
      function lf(r) {
        const s = r.parameters.length;
        if (Qu(r)) {
          const l = ft(r.parameters[s - 1]);
          if (Ls(l)) return s + l.target.fixedLength - (l.target.combinedFlags & 12 ? 0 : 1);
        }
        return s;
      }
      function fm(r, s) {
        const l = s & 1, f = s & 2;
        if (f || r.resolvedMinArgumentCount === void 0) {
          let m;
          if (Qu(r)) {
            const y = ft(r.parameters[r.parameters.length - 1]);
            if (Ls(y)) {
              const x = qs(y.target.elementFlags, (J) => !(J & 1)), O = x < 0 ? y.target.fixedLength : x;
              O > 0 && (m = r.parameters.length - 1 + O);
            }
          }
          if (m === void 0) {
            if (!l && r.flags & 32) return 0;
            m = r.minArgumentCount;
          }
          if (f) return m;
          for (let y = m - 1; y >= 0 && !(rl(_m(r, y), o8e).flags & 262144); y--)
            m = y;
          r.resolvedMinArgumentCount = m;
        }
        return r.resolvedMinArgumentCount;
      }
      function Ng(r) {
        if (Qu(r)) {
          const s = ft(r.parameters[r.parameters.length - 1]);
          return !Ls(s) || !!(s.target.combinedFlags & 12);
        }
        return !1;
      }
      function K8(r) {
        if (Qu(r)) {
          const s = ft(r.parameters[r.parameters.length - 1]);
          if (!Ls(s)) return Bi(s) ? hl : s;
          if (s.target.combinedFlags & 12) return MP(s, s.target.fixedLength);
        }
      }
      function e7(r) {
        const s = K8(r);
        return s && !Jp(s) && !Bi(s) ? s : void 0;
      }
      function hme(r) {
        return yme(r, ct);
      }
      function yme(r, s) {
        return r.parameters.length > 0 ? _m(r, 0) : s;
      }
      function M8e(r, s, l) {
        const f = r.parameters.length - (Qu(r) ? 1 : 0);
        for (let y = 0; y < f; y++) {
          const x = r.parameters[y].valueDeclaration, O = _l(x);
          if (O) {
            const J = _u(Di(O), !1, ek(x)), V = _m(s, y);
            wh(l.inferences, J, V);
          }
        }
        const m = r.declaration && yf(r.declaration);
        if (m) {
          const y = Di(m), x = ro(s);
          wh(l.inferences, y, x);
        }
      }
      function wot(r, s) {
        if (s.typeParameters) if (!r.typeParameters) r.typeParameters = s.typeParameters;
        else return;
        if (s.thisParameter) {
          const f = r.thisParameter;
          (!f || f.valueDeclaration && !f.valueDeclaration.type) && (f || (r.thisParameter = $T(s.thisParameter, void 0)), vR(r.thisParameter, ft(s.thisParameter)));
        }
        const l = r.parameters.length - (Qu(r) ? 1 : 0);
        for (let f = 0; f < l; f++) {
          const m = r.parameters[f], y = m.valueDeclaration;
          if (!_l(y)) {
            let x = X2(s, f);
            if (x && y.initializer) {
              let O = GP(y, 0);
              !qa(O, x) && qa(x, O = Dme(y, O)) && (x = O);
            }
            vR(m, x);
          }
        }
        if (Qu(r)) {
          const f = ws(r.parameters);
          (f.valueDeclaration ? !_l(f.valueDeclaration) : gc(f) & 65536) && vR(f, yR(s, l));
        }
      }
      function Pot(r) {
        r.thisParameter && vR(r.thisParameter);
        for (const s of r.parameters) vR(s);
      }
      function vR(r, s) {
        const l = Wi(r);
        if (l.type)
          s && E.assertEqual(l.type, s, "Parameter symbol already has a cached type which differs from newly assigned type");
        else {
          const f = r.valueDeclaration;
          l.type = _u(s || (f ? ZE(f, !0) : ft(r)), !1, !!f && !f.initializer && ek(f)), f && f.name.kind !== 80 && (l.type === Re && (l.type = EP(f.name)), R8e(f.name, l.type));
        }
      }
      function R8e(r, s) {
        for (const l of r.elements) if (!Al(l)) {
          const f = c0(l, s, !1);
          l.name.kind === 80 ? Wi(mn(l)).type = f : R8e(l.name, f);
        }
      }
      function Aot(r) {
        return n4(Ltt(!0), [r]);
      }
      function Not(r, s) {
        return n4(Mtt(!0), [r, s]);
      }
      function Iot(r, s) {
        return n4(Rtt(!0), [r, s]);
      }
      function Oot(r, s) {
        return n4(jtt(!0), [r, s]);
      }
      function Fot(r, s) {
        return n4(Btt(!0), [r, s]);
      }
      function Lot(r, s) {
        return n4(Wtt(!0), [r, s]);
      }
      function Mot(r, s, l) {
        const f = `${s ? "p" : "P"}${l ? "s" : "S"}${r.id}`;
        let m = tt.get(f);
        if (!m) {
          const y = Ka();
          y.set("name", fT("name", r)), y.set("private", fT("private", s ? Ir : wt)), y.set("static", fT("static", l ? Ir : wt)), m = Yo(void 0, y, Te, Te, Te), tt.set(f, m);
        }
        return m;
      }
      function j8e(r, s, l) {
        const f = vl(r), m = Oi(r.name), y = m ? sf(On(r.name)) : u0(r.name);
        return Ss([hc(r) ? Not(s, l) : Dp(r) ? Iot(s, l) : ef(r) ? Oot(s, l) : R_(r) ? Fot(s, l) : ga(r) ? Lot(s, l) : E.failBadSyntaxKind(r), Mot(y, m, f)]);
      }
      function Rot(r, s) {
        return n4(Jtt(!0), [r, s]);
      }
      function jot(r, s) {
        return n4(ztt(!0), [r, s]);
      }
      function Bot(r, s) {
        return Fme(void 0, Pf("this", r), [Pf("value", s)], s, void 0, 1);
      }
      function vme(r, s, l) {
        const f = Pf("target", r), m = Pf("context", s), y = Yn([l, Qt]);
        return o7(void 0, void 0, [f, m], y);
      }
      function Jot(r) {
        const { parent: s } = r, l = Pn(s);
        if (!l.decoratorSignature)
          switch (l.decoratorSignature = ei, s.kind) {
            case 264:
            case 232: {
              const f = ft(mn(s));
              l.decoratorSignature = vme(f, Aot(f), f);
              break;
            }
            case 175:
            case 178:
            case 179: {
              const f = s;
              if (!Zn(f.parent)) break;
              const m = hc(f) ? BT(mp(f)) : LC(f), y = vl(f) ? ft(mn(f.parent)) : Rp(mn(f.parent));
              l.decoratorSignature = vme(Dp(f) ? y7e(m) : ef(f) ? v7e(m) : m, j8e(f, y, m), Dp(f) ? y7e(m) : ef(f) ? v7e(m) : m);
              break;
            }
            case 173: {
              const f = s;
              if (!Zn(f.parent)) break;
              const m = LC(f), y = vl(f) ? ft(mn(f.parent)) : Rp(mn(f.parent));
              l.decoratorSignature = vme(km(f) ? Rot(y, m) : $e, j8e(f, y, m), km(f) ? jot(y, m) : Bot(y, m));
              break;
            }
          }
        return l.decoratorSignature === ei ? void 0 : l.decoratorSignature;
      }
      function zot(r) {
        const { parent: s } = r, l = Pn(s);
        if (!l.decoratorSignature)
          switch (l.decoratorSignature = ei, s.kind) {
            case 264:
            case 232: {
              const f = ft(mn(s));
              l.decoratorSignature = o7(void 0, void 0, [Pf("target", f)], Yn([f, Qt]));
              break;
            }
            case 170: {
              const f = s;
              if (!yc(f.parent) && !(hc(f.parent) || ef(f.parent) && Zn(f.parent.parent)) || Rb(f.parent) === f) break;
              const m = Rb(f.parent) ? f.parent.parameters.indexOf(f) - 1 : f.parent.parameters.indexOf(f);
              E.assert(m >= 0);
              const y = yc(f.parent) ? ft(mn(f.parent.parent)) : _5e(f.parent), x = yc(f.parent) ? $e : f5e(f.parent), O = cm(m);
              l.decoratorSignature = o7(void 0, void 0, [
                Pf("target", y),
                Pf("propertyKey", x),
                Pf("parameterIndex", O)
              ], Qt);
              break;
            }
            case 175:
            case 178:
            case 179:
            case 173: {
              const f = s;
              if (!Zn(f.parent)) break;
              const m = Pf("target", _5e(f)), y = Pf("propertyKey", f5e(f)), x = ga(f) ? Qt : sAe(LC(f));
              !ga(s) || km(s) ? l.decoratorSignature = o7(void 0, void 0, [
                m,
                y,
                Pf("descriptor", sAe(LC(f)))
              ], Yn([x, Qt])) : l.decoratorSignature = o7(void 0, void 0, [m, y], Yn([x, Qt]));
              break;
            }
          }
        return l.decoratorSignature === ei ? void 0 : l.decoratorSignature;
      }
      function bme(r) {
        return U ? zot(r) : Jot(r);
      }
      function bR(r) {
        const s = PM(!0);
        return s !== Ma ? (r = v0(XP(r)) || Re, l0(s, [r])) : Re;
      }
      function B8e(r) {
        const s = tAe(!0);
        return s !== Ma ? (r = v0(XP(r)) || Re, l0(s, [r])) : Re;
      }
      function SR(r, s) {
        const l = bR(s);
        return l === Re ? (We(r, B_(r) ? p.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option : p.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option), rt) : (_pe(!0) || We(r, B_(r) ? p.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option : p.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option), l);
      }
      function Wot(r) {
        const s = Fs(0, "NewTargetExpression"), l = Fs(4, "target", 8);
        l.parent = s, l.links.type = r;
        const f = Ka([l]);
        return s.members = f, Yo(s, f, Te, Te, Te);
      }
      function PX(r, s) {
        if (!r.body) return rt;
        const l = Gc(r), f = (l & 2) !== 0, m = (l & 1) !== 0;
        let y, x, O, J = Qt;
        if (r.body.kind !== 242)
          y = wc(r.body, s && s & -9), ax(r.body) && (y = ku(y)), f && (y = XP(ER(y, !1, r, p.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));
        else if (m) {
          const V = U8e(r, s);
          V ? V.length > 0 && (y = Yn(V, 2)) : J = ct;
          const { yieldTypes: Y, nextTypes: be } = Uot(r, s);
          x = _t(Y) ? Yn(Y, 2) : void 0, O = _t(be) ? Ss(be) : void 0;
        } else {
          const V = U8e(r, s);
          if (!V) return l & 2 ? SR(r, ct) : ct;
          if (V.length === 0) {
            const Y = cX(r, void 0), be = Y && gp(IR(Y, l) || Qt, (me) => !!(me.flags & 4)) ? $e : Qt;
            return l & 2 ? SR(r, be) : be;
          }
          y = Yn(V, 2);
        }
        if (y || x || O) {
          if (x && $$(r, x, 3), y && $$(r, y, 1), O && $$(r, O, 2), y && Id(y) || x && Id(x) || O && Id(O)) {
            const V = pX(r), Y = V ? V === mp(r) ? m ? void 0 : y : uX(ro(V), r, void 0) : void 0;
            m ? (x = tde(x, Y, 0, f), y = tde(y, Y, 1, f), O = tde(O, Y, 2, f)) : y = Mnt(y, Y, f);
          }
          x && (x = of(x)), y && (y = of(y)), O && (O = of(O));
        }
        return m ? AX(x || ct, y || J, O || bIe(2, r) || Re, f) : f ? bR(y || J) : y || J;
      }
      function AX(r, s, l, f) {
        const m = f ? Su : rf, y = m.getGlobalGeneratorType(!1);
        if (r = m.resolveIterationType(r, void 0) || Re, s = m.resolveIterationType(s, void 0) || Re, y === Ma) {
          const x = m.getGlobalIterableIteratorType(!1);
          return x !== Ma ? LP(x, [
            r,
            s,
            l
          ]) : (m.getGlobalIterableIteratorType(!0), Yi);
        }
        return LP(y, [
          r,
          s,
          l
        ]);
      }
      function Uot(r, s) {
        const l = [], f = [], m = (Gc(r) & 2) !== 0;
        return RB(r.body, (y) => {
          let x = y.expression ? aa(y.expression, s && s & -9) : ye;
          y.expression && ax(y.expression) && (x = ku(x)), hp(l, J8e(y, x, Ve, m));
          let O;
          if (y.asteriskToken) {
            const J = VX(x, m ? 19 : 17, y.expression);
            O = J && J.nextType;
          } else O = O_(y, void 0);
          O && hp(f, O);
        }), {
          yieldTypes: l,
          nextTypes: f
        };
      }
      function J8e(r, s, l, f) {
        const m = r.expression || r, y = r.asteriskToken ? xy(f ? 19 : 17, s, l, m) : s;
        return f ? OC(y, m, r.asteriskToken ? p.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member : p.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member) : y;
      }
      function z8e(r, s, l) {
        let f = 0;
        for (let m = 0; m < l.length; m++) {
          const y = m < r || m >= s ? l[m] : void 0;
          f |= y !== void 0 ? qW.get(y) || 32768 : 0;
        }
        return f;
      }
      function W8e(r) {
        const s = Pn(r);
        if (s.isExhaustive === void 0) {
          s.isExhaustive = 0;
          const l = Vot(r);
          s.isExhaustive === 0 && (s.isExhaustive = l);
        } else s.isExhaustive === 0 && (s.isExhaustive = !1);
        return s.isExhaustive;
      }
      function Vot(r) {
        if (r.expression.kind === 222) {
          const f = qNe(r);
          if (!f) return !1;
          const m = Km(wc(r.expression.expression)), y = z8e(0, 0, f);
          return m.flags & 3 ? (556800 & y) === 556800 : !gp(m, (x) => l4(x, y) === y);
        }
        const s = Km(wc(r.expression));
        if (!R8(s)) return !1;
        const l = K$(r);
        return !l.length || _t(l, Ont) ? !1 : Iit(sc(s, ku), l);
      }
      function Sme(r) {
        return r.endFlowNode && tR(r.endFlowNode);
      }
      function U8e(r, s) {
        const l = Gc(r), f = [];
        let m = Sme(r), y = !1;
        if (Hy(r.body, (x) => {
          let O = x.expression;
          if (O) {
            if (O = Gs(O, !0), l & 2 && O.kind === 224 && (O = Gs(O.expression, !0)), O.kind === 214 && O.expression.kind === 80 && wc(O.expression).symbol === ys(r.symbol) && (!r1(r.symbol.valueDeclaration) || Ede(O.expression))) {
              y = !0;
              return;
            }
            let J = wc(O, s && s & -9);
            l & 2 && (J = XP(ER(J, !1, r, p.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))), J.flags & 262144 && (y = !0), hp(f, ax(O) ? ku(J) : J);
          } else m = !0;
        }), !(f.length === 0 && !m && (y || qot(r))))
          return Q && f.length && m && !(ng(r) && f.some((x) => x.symbol === r.symbol)) && hp(f, $e), f;
      }
      function qot(r) {
        switch (r.kind) {
          case 219:
          case 220:
            return !0;
          case 175:
            return r.parent.kind === 211;
          default:
            return !1;
        }
      }
      function Got(r) {
        switch (r.kind) {
          case 177:
          case 178:
          case 179:
            return;
        }
        if (Gc(r) !== 0) return;
        let s;
        if (r.body && r.body.kind !== 242) s = r.body;
        else if (Hy(r.body, (l) => {
          if (s || !l.expression) return !0;
          s = l.expression;
        }) || !s || Sme(r)) return;
        return Hot(r, s);
      }
      function Hot(r, s) {
        if (s = Gs(s, !0), !!(wc(s).flags & 256))
          return bt(r.parameters, (l, f) => {
            const m = ft(l.symbol);
            if (!m || m.flags & 256 || !Fe(l.name) || V8(l.symbol) || cg(l)) return;
            const y = $ot(r, s, l, m);
            if (y) return x8(1, Ti(l.name.escapedText), f, y);
          });
      }
      function $ot(r, s, l, f) {
        const m = Bx(s) && s.flowNode || s.parent.kind === 254 && s.parent.flowNode || sh(2, void 0, void 0), y = sh(32, s, m), x = y0(l.name, f, f, r, y);
        if (x === f) return;
        const O = sh(64, s, m);
        return dp(y0(l.name, f, x, r, O)).flags & 262144 ? x : void 0;
      }
      function Tme(r, s) {
        n(l);
        return;
        function l() {
          const f = Gc(r), m = s && IR(s, f);
          if (m && (Wc(m, 16) || m.flags & 5) || r.kind === 174 || Nc(r.body) || r.body.kind !== 242 || !Sme(r)) return;
          const y = r.flags & 1024, x = yf(r) || r;
          if (m && m.flags & 262144) We(x, p.A_function_returning_never_cannot_have_a_reachable_end_point);
          else if (m && !y) We(x, p.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);
          else if (m && Q && !qa($e, m)) We(x, p.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);
          else if (L.noImplicitReturns) {
            if (!m && (!y || j7e(r, ro(mp(r)))))
              return;
            We(x, p.Not_all_code_paths_return_a_value);
          }
        }
      }
      function V8e(r, s) {
        if (E.assert(r.kind !== 175 || Hp(r)), FC(r), Lo(r) && QP(r, r.name), s && s & 4 && Xf(r)) {
          if (!yf(r) && !AO(r)) {
            const l = H8(r);
            if (l && q1(ro(l))) {
              const f = Pn(r);
              if (f.contextFreeType) return f.contextFreeType;
              const m = Zm(void 0, void 0, void 0, Te, PX(r, s), void 0, 0, 64), y = Yo(r.symbol, R, [m], Te, Te);
              return y.objectFlags |= 262144, f.contextFreeType = y;
            }
          }
          return ac;
        }
        return !iQ(r) && r.kind === 219 && oge(r), Xot(r, s), ft(mn(r));
      }
      function Xot(r, s) {
        const l = Pn(r);
        if (!(l.flags & 64)) {
          const f = H8(r);
          if (!(l.flags & 64)) {
            l.flags |= 64;
            const m = ul(Pa(ft(mn(r)), 0));
            if (!m) return;
            if (Xf(r)) if (f) {
              const y = H2(r);
              let x;
              if (s && s & 2) {
                M8e(m, f, y);
                const O = K8(f);
                O && O.flags & 524288 && (x = GT(f, y.nonFixingMapper));
              }
              x || (x = y ? GT(f, y.mapper) : f), wot(m, x);
            } else Pot(m);
            else if (f && !r.typeParameters && f.parameters.length > r.parameters.length) {
              const y = H2(r);
              s && s & 2 && M8e(m, f, y);
            }
            if (f && !r4(r) && !m.resolvedReturnType) {
              const y = PX(r, s);
              m.resolvedReturnType || (m.resolvedReturnType = y);
            }
            n7(r);
          }
        }
      }
      function Qot(r) {
        E.assert(r.kind !== 175 || Hp(r));
        const s = Gc(r), l = r4(r);
        if (Tme(r, l), r.body)
          if (yf(r) || ro(mp(r)), r.body.kind === 242) xs(r.body);
          else {
            const f = aa(r.body), m = l && IR(l, s);
            m && qX(r, m, r.body, r.body, f);
          }
      }
      function NX(r, s, l, f = !1) {
        if (!qa(s, To)) {
          const m = f && $P(s);
          return am(r, !!m && qa(m, To), l), !1;
        }
        return !0;
      }
      function Yot(r) {
        if (!za(r) || !bS(r)) return !1;
        const s = wc(r.arguments[2]);
        if (xn(s, "value")) {
          const l = ms(s, "writable"), f = l && ft(l);
          if (!f || f === wt || f === qt) return !0;
          if (l && l.valueDeclaration && ol(l.valueDeclaration)) {
            const m = l.valueDeclaration.initializer, y = aa(m);
            if (y === wt || y === qt) return !0;
          }
          return !1;
        }
        return !ms(s, "set");
      }
      function pm(r) {
        return !!(gc(r) & 8 || r.flags & 4 && kp(r) & 8 || r.flags & 3 && qde(r) & 6 || r.flags & 98304 && !(r.flags & 65536) || r.flags & 8 || _t(r.declarations, Yot));
      }
      function q8e(r, s, l) {
        var f, m;
        if (l === 0) return !1;
        if (pm(s)) {
          if (s.flags & 4 && jo(r) && r.expression.kind === 110) {
            const y = VP(r);
            if (!(y && (y.kind === 177 || ng(y)))) return !0;
            if (s.valueDeclaration) {
              const x = un(s.valueDeclaration), O = y.parent === s.valueDeclaration.parent, J = y === s.valueDeclaration.parent, V = x && ((f = s.parent) == null ? void 0 : f.valueDeclaration) === y.parent, Y = x && ((m = s.parent) == null ? void 0 : m.valueDeclaration) === y;
              return !(O || J || V || Y);
            }
          }
          return !0;
        }
        if (jo(r)) {
          const y = Gs(r.expression);
          if (y.kind === 80) {
            const x = Pn(y).resolvedSymbol;
            if (x.flags & 2097152) {
              const O = _p(x);
              return !!O && O.kind === 275;
            }
          }
        }
        return !1;
      }
      function t7(r, s, l) {
        const f = Ic(r, 39);
        return f.kind !== 80 && !jo(f) ? (We(r, s), !1) : f.flags & 64 ? (We(r, l), !1) : !0;
      }
      function Zot(r) {
        aa(r.expression);
        const s = Gs(r.expression);
        if (!jo(s))
          return We(s, p.The_operand_of_a_delete_operator_must_be_a_property_reference), Jt;
        Ln(s) && Oi(s.name) && We(s, p.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);
        const l = Ui(Pn(s).resolvedSymbol);
        return l && (pm(l) ? We(s, p.The_operand_of_a_delete_operator_cannot_be_a_read_only_property) : Kot(s, l)), Jt;
      }
      function Kot(r, s) {
        const l = ft(s);
        Q && !(l.flags & 262147) && !(ce ? s.flags & 16777216 : lm(l, 16777216)) && We(r, p.The_operand_of_a_delete_operator_must_be_optional);
      }
      function ect(r) {
        return aa(r.expression), Ql;
      }
      function tct(r) {
        return FC(r), ye;
      }
      function G8e(r) {
        let s = !1;
        const l = C5(r);
        if (l && Bc(l))
          We(r, o1(r) ? p.await_expression_cannot_be_used_inside_a_class_static_block : p.await_using_statements_cannot_be_used_inside_a_class_static_block), s = !0;
        else if (!(r.flags & 65536)) if (D5(r)) {
          const f = Sr(r);
          if (!H1(f)) {
            let m;
            if (!r6(f, L)) {
              m ?? (m = _g(f, r.pos));
              const y = o1(r) ? p.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module : p.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module, x = wl(f, m.start, m.length, y);
              Ws.add(x), s = !0;
            }
            switch (H) {
              case 100:
              case 101:
              case 102:
              case 199:
                if (f.impliedNodeFormat === 1) {
                  m ?? (m = _g(f, r.pos)), Ws.add(wl(f, m.start, m.length, p.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)), s = !0;
                  break;
                }
              case 7:
              case 99:
              case 200:
              case 4:
                if (z >= 4) break;
              default:
                m ?? (m = _g(f, r.pos));
                const y = o1(r) ? p.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher : p.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;
                Ws.add(wl(f, m.start, m.length, y)), s = !0;
                break;
            }
          }
        } else {
          const f = Sr(r);
          if (!H1(f)) {
            const m = _g(f, r.pos), y = o1(r) ? p.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules : p.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules, x = wl(f, m.start, m.length, y);
            l && l.kind !== 177 && (Gc(l) & 2) === 0 && ts(x, Kr(l, p.Did_you_mean_to_mark_this_function_as_async)), Ws.add(x), s = !0;
          }
        }
        return o1(r) && Mde(r) && (We(r, p.await_expressions_cannot_be_used_in_a_parameter_initializer), s = !0), s;
      }
      function rct(r) {
        n(() => G8e(r));
        const s = aa(r.expression), l = ER(s, !0, r, p.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);
        return l === s && !hi(l) && !(s.flags & 3) && Tg(!1, Kr(r, p.await_has_no_effect_on_the_type_of_this_expression)), l;
      }
      function nct(r) {
        const s = aa(r.operand);
        if (s === wn) return wn;
        switch (r.operand.kind) {
          case 9:
            switch (r.operator) {
              case 41:
                return DC(cm(-r.operand.text));
              case 40:
                return DC(cm(+r.operand.text));
            }
            break;
          case 10:
            if (r.operator === 41) return DC(MM({
              negative: !0,
              base10Value: JD(r.operand.text)
            }));
        }
        switch (r.operator) {
          case 40:
          case 41:
          case 55:
            return rg(s, r.operand), TR(s, 16896) && We(r.operand, p.The_0_operator_cannot_be_applied_to_type_symbol, as(r.operator)), r.operator === 40 ? (TR(s, 4224) && We(r.operand, p.Operator_0_cannot_be_applied_to_type_1, as(r.operator), Xr(m0(s))), et) : xme(s);
          case 54:
            Bme(s, r.operand);
            const l = l4(s, 12582912);
            return l === 4194304 ? wt : l === 8388608 ? Ir : Jt;
          case 46:
          case 47:
            return NX(r.operand, rg(s, r.operand), p.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type) && t7(r.operand, p.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access, p.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access), xme(s);
        }
        return rt;
      }
      function ict(r) {
        const s = aa(r.operand);
        return s === wn ? wn : (NX(r.operand, rg(s, r.operand), p.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type) && t7(r.operand, p.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access, p.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access), xme(s));
      }
      function xme(r) {
        return Wc(r, 4224) ? Cu(r, 3) || Wc(r, 67648) ? To : kt : et;
      }
      function TR(r, s) {
        if (Wc(r, s)) return !0;
        const l = Km(r);
        return !!l && Wc(l, s);
      }
      function Wc(r, s) {
        if (r.flags & s) return !0;
        if (r.flags & 402653184) {
          const l = r.types;
          for (const f of l) if (Wc(f, s)) return !0;
        }
        return !1;
      }
      function Cu(r, s, l) {
        return r.flags & s ? !0 : l && r.flags & 31 ? !1 : !!(s & 67648) && qa(r, et) || !!(s & 4224) && qa(r, kt) || !!(s & 12583968) && qa(r, Cr) || !!(s & 8448) && qa(r, Jt) || !!(s & 16) && qa(r, Qt) || !!(s & 262144) && qa(r, ct) || !!(s & 8) && qa(r, vr) || !!(s & 4) && qa(r, $e) || !!(s & 512) && qa(r, $t) || !!(s & 131072) && qa(r, cs);
      }
      function r7(r, s, l) {
        return r.flags & 134217728 ? hr(r.types, (f) => r7(f, s, l)) : Cu(r, s, l);
      }
      function IX(r) {
        return !!(yn(r) & 16) && !!r.symbol && kme(r.symbol);
      }
      function kme(r) {
        return (r.flags & 128) !== 0;
      }
      function Cme(r) {
        const s = F7e("hasInstance");
        if (r7(r, 131072)) {
          const l = ms(r, s);
          if (l) {
            const f = ft(l);
            if (f && Pa(f, 0).length !== 0) return f;
          }
        }
      }
      function act(r, s, l, f, m) {
        if (l === wn || f === wn) return wn;
        !Bi(l) && r7(l, 12713980) && We(r, p.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter), E.assert(nO(r.parent));
        const y = m4(r.parent, void 0, m);
        return y === ds ? wn : (zu(ro(y), Jt, s, p.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression), Jt);
      }
      function sct(r) {
        return gp(r, (s) => s === Wl || !!(s.flags & 268435456) && Ag(Km(s)));
      }
      function oct(r, s, l, f) {
        return l === wn || f === wn ? wn : (Oi(r) ? ((z < Rl.PrivateNamesAndClassStaticBlocks || z < Rl.ClassAndClassElementDecorators || !pe) && Fl(r, 2097152), !Pn(r).resolvedSymbol && nu(r) && YIe(r, f, Yde(r, f.symbol, !0))) : zu(rg(l, r), oo, r), zu(rg(f, s), cs, s) && sct(f) && We(s, p.Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator, Xr(f)), Jt);
      }
      function cct(r, s, l) {
        const f = r.properties;
        if (Q && f.length === 0) return rg(s, r);
        for (let m = 0; m < f.length; m++) H8e(r, s, m, f, l);
        return s;
      }
      function H8e(r, s, l, f, m = !1) {
        const y = r.properties, x = y[l];
        if (x.kind === 304 || x.kind === 305) {
          const O = x.name, J = u0(O);
          if (Cp(J)) {
            const Y = ms(s, Ep(J));
            Y && (pR(Y, x, m), Hde(x, !1, !0, s, Y));
          }
          const V = bh(x, Ff(s, J, 32 | (IC(x) ? 16 : 0), O));
          return ix(x.kind === 305 ? x : x.initializer, V);
        } else if (x.kind === 306) if (l < y.length - 1) We(x, p.A_rest_element_must_be_last_in_a_destructuring_pattern);
        else {
          z < Rl.ObjectSpreadRest && Fl(x, 4);
          const O = [];
          if (f)
            for (const V of f) ih(V) || O.push(V.name);
          const J = Pd(s, O, s.symbol);
          return RC(f, p.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma), ix(x.expression, J);
        }
        else We(x, p.Property_assignment_expected);
      }
      function lct(r, s, l) {
        const f = r.elements;
        z < Rl.DestructuringAssignment && L.downlevelIteration && Fl(r, 512);
        const m = xy(193, s, $e, r) || rt;
        let y = L.noUncheckedIndexedAccess ? void 0 : m;
        for (let x = 0; x < f.length; x++) {
          let O = m;
          r.elements[x].kind === 231 && (O = y = y ?? (xy(65, s, $e, r) || rt)), $8e(r, s, x, O, l);
        }
        return s;
      }
      function $8e(r, s, l, f, m) {
        const y = r.elements, x = y[l];
        if (x.kind !== 233) {
          if (x.kind !== 231) {
            const O = cm(l);
            if (Sy(s)) {
              const J = J1(s, O, 32 | (IC(x) ? 16 : 0), Y8(x, O)) || rt;
              return ix(x, bh(x, IC(x) ? zp(J, 524288) : J), m);
            }
            return ix(x, f, m);
          }
          if (l < y.length - 1) We(x, p.A_rest_element_must_be_last_in_a_destructuring_pattern);
          else {
            const O = x.expression;
            if (O.kind === 227 && O.operatorToken.kind === 64) We(O.operatorToken, p.A_rest_element_cannot_have_an_initializer);
            else
              return RC(r.elements, p.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma), ix(O, cf(s, Ls) ? sc(s, (J) => MP(J, l)) : Ju(f), m);
          }
        }
      }
      function ix(r, s, l, f) {
        let m;
        if (r.kind === 305) {
          const y = r;
          y.objectAssignmentInitializer && (Q && !lm(aa(y.objectAssignmentInitializer), 16777216) && (s = zp(s, 524288)), dct(y.name, y.equalsToken, y.objectAssignmentInitializer, l)), m = r.name;
        } else m = r;
        return m.kind === 227 && m.operatorToken.kind === 64 && (Ne(m, l), m = m.left, Q && (s = zp(s, 524288))), m.kind === 211 ? cct(m, s, f) : m.kind === 210 ? lct(m, s, l) : uct(m, s, l);
      }
      function uct(r, s, l) {
        const f = aa(r, l);
        return t7(r, r.parent.kind === 306 ? p.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access : p.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access, r.parent.kind === 306 ? p.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access : p.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access) && q2(s, f, r, r), QC(r) && Fl(r.parent, 1048576), s;
      }
      function xR(r) {
        switch (r = Gs(r), r.kind) {
          case 80:
          case 11:
          case 14:
          case 216:
          case 229:
          case 15:
          case 9:
          case 10:
          case 112:
          case 97:
          case 106:
          case 157:
          case 219:
          case 232:
          case 220:
          case 210:
          case 211:
          case 222:
          case 236:
          case 286:
          case 285:
            return !0;
          case 228:
            return xR(r.whenTrue) && xR(r.whenFalse);
          case 227:
            return Uh(r.operatorToken.kind) ? !1 : xR(r.left) && xR(r.right);
          case 225:
          case 226:
            switch (r.operator) {
              case 54:
              case 40:
              case 41:
              case 55:
                return !0;
            }
            return !1;
          default:
            return !1;
        }
      }
      function Eme(r, s) {
        return (s.flags & 12) !== 0 || I$(r, s);
      }
      function _ct() {
        const r = pF(s, l, f, m, y, x);
        return (me, Je) => {
          const gt = r(me, Je);
          return E.assertIsDefined(gt), gt;
        };
        function s(me, Je, gt) {
          return Je ? (Je.stackIndex++, Je.skip = !1, V(Je, void 0), be(Je, void 0)) : Je = {
            checkMode: gt,
            skip: !1,
            stackIndex: 0,
            typeStack: [void 0, void 0]
          }, rn(me) && Ox(me) ? (Je.skip = !0, be(Je, aa(me.right, gt)), Je) : (fct(me), me.operatorToken.kind === 64 && (me.left.kind === 211 || me.left.kind === 210) && (Je.skip = !0, be(Je, ix(me.left, aa(me.right, gt), gt, me.right.kind === 110))), Je);
        }
        function l(me, Je, gt) {
          if (!Je.skip) return O(Je, me);
        }
        function f(me, Je, gt) {
          if (!Je.skip) {
            const ht = Y(Je);
            E.assertIsDefined(ht), V(Je, ht), be(Je, void 0);
            const ir = me.kind;
            if (tO(ir)) {
              let mr = gt.parent;
              for (; mr.kind === 218 || DA(mr); ) mr = mr.parent;
              (ir === 56 || Cv(mr)) && jme(gt.left, ht, Cv(mr) ? mr.thenStatement : void 0), EA(ir) && Bme(ht, gt.left);
            }
          }
        }
        function m(me, Je, gt) {
          if (!Je.skip) return O(Je, me);
        }
        function y(me, Je) {
          let gt;
          if (Je.skip) gt = Y(Je);
          else {
            const ht = J(Je);
            E.assertIsDefined(ht);
            const ir = Y(Je);
            E.assertIsDefined(ir), gt = X8e(me.left, me.operatorToken, me.right, ht, ir, Je.checkMode, me);
          }
          return Je.skip = !1, V(Je, void 0), be(Je, void 0), Je.stackIndex--, gt;
        }
        function x(me, Je, gt) {
          return be(me, Je), me;
        }
        function O(me, Je) {
          if (un(Je)) return Je;
          be(me, aa(Je, me.checkMode));
        }
        function J(me) {
          return me.typeStack[me.stackIndex];
        }
        function V(me, Je) {
          me.typeStack[me.stackIndex] = Je;
        }
        function Y(me) {
          return me.typeStack[me.stackIndex + 1];
        }
        function be(me, Je) {
          me.typeStack[me.stackIndex + 1] = Je;
        }
      }
      function fct(r) {
        if (r.operatorToken.kind === 61) {
          if (un(r.parent)) {
            const { left: s, operatorToken: l } = r.parent;
            un(s) && l.kind === 57 && sr(s, p._0_and_1_operations_cannot_be_mixed_without_parentheses, as(61), as(l.kind));
          } else if (un(r.left)) {
            const { operatorToken: s } = r.left;
            (s.kind === 57 || s.kind === 56) && sr(r.left, p._0_and_1_operations_cannot_be_mixed_without_parentheses, as(s.kind), as(61));
          } else if (un(r.right)) {
            const { operatorToken: s } = r.right;
            s.kind === 56 && sr(r.right, p._0_and_1_operations_cannot_be_mixed_without_parentheses, as(61), as(s.kind));
          }
          pct(r);
        }
      }
      function pct(r) {
        const s = Ic(r.left, 63), l = OX(s);
        l !== 3 && (l === 1 ? We(s, p.This_expression_is_always_nullish) : We(s, p.Right_operand_of_is_unreachable_because_the_left_operand_is_never_nullish));
      }
      function OX(r) {
        switch (r = Ic(r), r.kind) {
          case 224:
          case 214:
          case 216:
          case 213:
          case 237:
          case 215:
          case 212:
          case 230:
          case 110:
            return 3;
          case 227:
            switch (r.operatorToken.kind) {
              case 57:
              case 76:
              case 56:
              case 77:
                return 3;
              case 28:
              case 64:
              case 61:
              case 78:
                return OX(r.right);
            }
            return 2;
          case 228:
            return OX(r.whenTrue) | OX(r.whenFalse);
          case 106:
            return 1;
          case 80:
            return t_(r) === ue ? 1 : 3;
        }
        return 2;
      }
      function dct(r, s, l, f, m) {
        const y = s.kind;
        if (y === 64 && (r.kind === 211 || r.kind === 210)) return ix(r, aa(l, f), f, l.kind === 110);
        let x;
        EA(y) ? x = _7(r, f) : x = aa(r, f);
        const O = aa(l, f);
        return X8e(r, s, l, x, O, f, m);
      }
      function X8e(r, s, l, f, m, y, x) {
        const O = s.kind;
        switch (O) {
          case 42:
          case 43:
          case 67:
          case 68:
          case 44:
          case 69:
          case 45:
          case 70:
          case 41:
          case 66:
          case 48:
          case 71:
          case 49:
          case 72:
          case 50:
          case 73:
          case 52:
          case 75:
          case 53:
          case 79:
          case 51:
          case 74:
            if (f === wn || m === wn) return wn;
            f = rg(f, r), m = rg(m, l);
            let lr;
            if (f.flags & 8448 && m.flags & 8448 && (lr = me(s.kind)) !== void 0)
              return We(x || s, p.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead, as(s.kind), as(lr)), et;
            {
              const si = NX(r, f, p.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type, !0), Ii = NX(l, m, p.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type, !0);
              let Si;
              if (Cu(f, 3) && Cu(m, 3) || !(Wc(f, 4224) || Wc(m, 4224))) Si = et;
              else if (J(f, m)) {
                switch (O) {
                  case 50:
                  case 73:
                    ir();
                    break;
                  case 43:
                  case 68:
                    z < 3 && We(x, p.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later);
                }
                Si = kt;
              } else
                ir(J), Si = rt;
              if (si && Ii)
                switch (Je(Si), O) {
                  case 48:
                  case 71:
                  case 49:
                  case 72:
                  case 50:
                  case 73:
                    const fi = ae(l);
                    typeof fi.value == "number" && Math.abs(fi.value) >= 32 && uu(Gh(dd(l.parent.parent)), x || s, p.This_operation_can_be_simplified_This_shift_is_identical_to_0_1_2, uc(r), as(O), fi.value % 32);
                    break;
                  default:
                    break;
                }
              return Si;
            }
          case 40:
          case 65:
            if (f === wn || m === wn) return wn;
            !Cu(f, 12583968) && !Cu(m, 12583968) && (f = rg(f, r), m = rg(m, l));
            let ur;
            return Cu(f, 67648, !0) && Cu(m, 67648, !0) ? ur = et : Cu(f, 4224, !0) && Cu(m, 4224, !0) ? ur = kt : Cu(f, 12583968, !0) || Cu(m, 12583968, !0) ? ur = Cr : (Bi(f) || Bi(m)) && (ur = hi(f) || hi(m) ? rt : Ve), ur && !be(O) ? ur : ur ? (O === 65 && Je(ur), ur) : (ir((Ii, Si) => Cu(Ii, 12655843) && Cu(Si, 12655843)), Ve);
          case 30:
          case 32:
          case 33:
          case 34:
            return be(O) && (f = Kpe(rg(f, r)), m = Kpe(rg(m, l)), ht((si, Ii) => {
              if (Bi(si) || Bi(Ii)) return !0;
              const Si = qa(si, To), fi = qa(Ii, To);
              return Si && fi || !Si && !fi && F8(si, Ii);
            })), Jt;
          case 35:
          case 36:
          case 37:
          case 38:
            if (!(y && y & 64)) {
              if ((rB(r) || rB(l)) && (!rn(r) || O === 37 || O === 38)) {
                const si = O === 35 || O === 37;
                We(x, p.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value, si ? "false" : "true");
              }
              br(x, O, r, l), ht((si, Ii) => Eme(si, Ii) || Eme(Ii, si));
            }
            return Jt;
          case 104:
            return act(r, l, f, m, y);
          case 103:
            return oct(r, l, f, m);
          case 56:
          case 77: {
            const si = lm(f, 4194304) ? Yn([Bnt(Q ? f : m0(m)), m]) : f;
            return O === 77 && Je(m), si;
          }
          case 57:
          case 76: {
            const si = lm(f, 8388608) ? Yn([g0(hNe(f)), m], 2) : f;
            return O === 76 && Je(m), si;
          }
          case 61:
          case 78: {
            const si = lm(f, 262144) ? Yn([g0(f), m], 2) : f;
            return O === 78 && Je(m), si;
          }
          case 64:
            const En = un(r.parent) ? qc(r.parent) : 0;
            return V(En, m), gt(En) ? ((!(m.flags & 1048576) || En !== 2 && En !== 6 && !d0(m) && !bde(m) && !(yn(m) & 1)) && Je(m), f) : (Je(m), m);
          case 28:
            if (!L.allowUnreachableCode && xR(r) && !Y(r.parent)) {
              const si = Sr(r), Ii = si.text, Si = gs(Ii, r.pos);
              si.parseDiagnostics.some((fi) => fi.code !== p.JSX_expressions_must_have_one_parent_element.code ? !1 : Wj(fi, Si)) || We(r, p.Left_side_of_comma_operator_is_unused_and_has_no_side_effects);
            }
            return m;
          default:
            return E.fail();
        }
        function J(lr, ur) {
          return Cu(lr, 4224) && Cu(ur, 4224);
        }
        function V(lr, ur) {
          if (lr === 2) for (const En of hy(ur)) {
            const si = ft(En);
            if (si.symbol && si.symbol.flags & 32) {
              const Ii = En.escapedName, Si = Gr(En.valueDeclaration, Ii, 788968, void 0, !1);
              Si?.declarations && Si.declarations.some(WS) && (Yv(Si, p.Duplicate_identifier_0, Ti(Ii), En), Yv(En, p.Duplicate_identifier_0, Ti(Ii), Si));
            }
          }
        }
        function Y(lr) {
          return lr.parent.kind === 218 && V_(lr.left) && lr.left.text === "0" && (za(lr.parent.parent) && lr.parent.parent.expression === lr.parent || lr.parent.parent.kind === 216) && (jo(lr.right) || Fe(lr.right) && lr.right.escapedText === "eval");
        }
        function be(lr) {
          const ur = TR(f, 16896) ? r : TR(m, 16896) ? l : void 0;
          return ur ? (We(ur, p.The_0_operator_cannot_be_applied_to_type_symbol, as(lr)), !1) : !0;
        }
        function me(lr) {
          switch (lr) {
            case 52:
            case 75:
              return 57;
            case 53:
            case 79:
              return 38;
            case 51:
            case 74:
              return 56;
            default:
              return;
          }
        }
        function Je(lr) {
          Uh(O) && n(ur);
          function ur() {
            let En = f;
            if (Tw(s.kind) && r.kind === 212 && (En = vX(r, void 0, !0)), t7(r, p.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access, p.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)) {
              let si;
              ce && Ln(r) && Wc(lr, 4) && F$(lr, xn(Ol(r.expression), r.name.escapedText)) && (si = p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target), q2(lr, En, r, l, si);
            }
          }
        }
        function gt(lr) {
          var ur;
          switch (lr) {
            case 2:
              return !0;
            case 1:
            case 5:
            case 6:
            case 3:
            case 4:
              const En = Nf(r), si = Ox(l);
              return !!si && bs(si) && !!((ur = En?.exports) != null && ur.size);
            default:
              return !1;
          }
        }
        function ht(lr) {
          return lr(f, m) ? !1 : (ir(lr), !0);
        }
        function ir(lr) {
          let ur = !1;
          const En = x || s;
          if (lr) {
            const vs = v0(f), Cs = v0(m);
            ur = !(vs === f && Cs === m) && !!(vs && Cs) && lr(vs, Cs);
          }
          let si = f, Ii = m;
          !ur && lr && ([si, Ii] = mct(f, m, lr));
          const [Si, fi] = O2(si, Ii);
          mr(En, ur, Si, fi) || am(En, ur, p.Operator_0_cannot_be_applied_to_types_1_and_2, as(s.kind), Si, fi);
        }
        function mr(lr, ur, En, si) {
          switch (s.kind) {
            case 37:
            case 35:
            case 38:
            case 36:
              return am(lr, ur, p.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap, En, si);
            default:
              return;
          }
        }
        function br(lr, ur, En, si) {
          const Ii = Hr(Gs(En)), Si = Hr(Gs(si));
          if (Ii || Si) {
            const fi = We(lr, p.This_condition_will_always_return_0, as(ur === 37 || ur === 35 ? 97 : 112));
            if (Ii && Si) return;
            const vs = ur === 38 || ur === 36 ? as(54) : "", Cs = Ii ? si : En, ka = Gs(Cs);
            ts(fi, Kr(Cs, p.Did_you_mean_0, `${vs}Number.isNaN(${go(ka) ? mf(ka) : "..."})`));
          }
        }
        function Hr(lr) {
          if (Fe(lr) && lr.escapedText === "NaN") {
            const ur = Utt();
            return !!ur && ur === t_(lr);
          }
          return !1;
        }
      }
      function mct(r, s, l) {
        let f = r, m = s;
        const y = m0(r), x = m0(s);
        return l(y, x) || (f = y, m = x), [f, m];
      }
      function gct(r) {
        n(be);
        const s = Kf(r);
        if (!s) return Ve;
        const l = Gc(s);
        if (!(l & 1)) return Ve;
        const f = (l & 2) !== 0;
        r.asteriskToken && (f && z < Rl.AsyncGenerators && Fl(r, 26624), !f && z < Rl.Generators && L.downlevelIteration && Fl(r, 256));
        let m = r4(s);
        m && m.flags & 134217728 && (m = rl(m, (me) => Ame(me, l, void 0)));
        const y = m && Gme(m, f), x = y && y.yieldType || Ve, O = y && y.nextType || Ve, J = r.expression ? aa(r.expression) : ye, V = J8e(r, J, O, f);
        if (m && V && q2(V, x, r.expression || r, r.expression), r.asteriskToken) return Wme(f ? 19 : 17, 1, J, r.expression) || Ve;
        if (m) return ky(2, m, f) || Ve;
        let Y = bIe(2, s);
        return Y || (Y = Ve, n(() => {
          if ($ && !ete(r)) {
            const me = O_(r, void 0);
            (!me || Bi(me)) && We(r, p.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation);
          }
        })), Y;
        function be() {
          r.flags & 16384 || Ll(r, p.A_yield_expression_is_only_allowed_in_a_generator_body), Mde(r) && We(r, p.yield_expressions_cannot_be_used_in_a_parameter_initializer);
        }
      }
      function hct(r, s) {
        const l = _7(r.condition, s);
        return jme(r.condition, l, r.whenTrue), Yn([aa(r.whenTrue, s), aa(r.whenFalse, s)], 2);
      }
      function Q8e(r) {
        const s = r.parent;
        return E_(s) && Q8e(s) || Po(s) && s.argumentExpression === r;
      }
      function yct(r) {
        const s = [r.head.text], l = [];
        for (const m of r.templateSpans) {
          const y = aa(m.expression);
          TR(y, 16896) && We(m.expression, p.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String), s.push(m.literal.text), l.push(qa(y, ia) ? y : Cr);
        }
        const f = r.parent.kind !== 216 && ae(r).value;
        return f ? DC(sf(f)) : ax(r) || Q8e(r) || gp(O_(r, void 0) || Re, vct) ? zT(s, l) : Cr;
      }
      function vct(r) {
        return !!(r.flags & 4195328 || r.flags & 117964800 && Wc(xu(r) || Re, 12583968));
      }
      function bct(r) {
        return Yb(r) && !JS(r.parent) ? r.parent.parent : r;
      }
      function g4(r, s, l, f) {
        const m = bct(r);
        sR(m, s, !1), Nat(m, l);
        const y = aa(r, f | 1 | (l ? 2 : 0));
        l && l.intraExpressionInferenceSites && (l.intraExpressionInferenceSites = void 0);
        const x = Wc(y, 15360) && FX(y, uX(s, r, void 0)) ? ku(y) : y;
        return Iat(), G8(), x;
      }
      function wc(r, s) {
        if (s) return aa(r, s);
        const l = Pn(r);
        if (!l.resolvedType) {
          const f = Vr, m = Td;
          Vr = li, Td = void 0, l.resolvedType = aa(r, s), Td = m, Vr = f;
        }
        return l.resolvedType;
      }
      function Y8e(r) {
        return r = Gs(r, !0), r.kind === 217 || r.kind === 235 || Kb(r);
      }
      function GP(r, s, l) {
        const f = sA(r);
        if (rn(r)) {
          const y = FO(r);
          if (y) return pme(f, y, s);
        }
        const m = Pme(f) || (l ? g4(f, l, void 0, s || 0) : wc(f, s));
        if (Fi(Ns(r) ? cS(r) : r)) {
          if (r.name.kind === 207 && Ty(m)) return Sct(m, r.name);
          if (r.name.kind === 208 && Ls(m)) return Tct(m, r.name);
        }
        return m;
      }
      function Sct(r, s) {
        let l;
        for (const y of s.elements) if (y.initializer) {
          const x = Z8e(y);
          x && !ms(r, x) && (l = kr(l, y));
        }
        if (!l) return r;
        const f = Ka();
        for (const y of hy(r)) f.set(y.escapedName, y);
        for (const y of l) {
          const x = Fs(16777220, Z8e(y));
          x.links.type = CP(y, !1, !1), f.set(x.escapedName, x);
        }
        const m = Yo(r.symbol, f, Te, Te, Bu(r));
        return m.objectFlags = r.objectFlags, m;
      }
      function Z8e(r) {
        const s = u0(r.propertyName || r.name);
        return Cp(s) ? Ep(s) : void 0;
      }
      function Tct(r, s) {
        if (r.target.combinedFlags & 12 || vy(r) >= s.elements.length) return r;
        const l = s.elements, f = J2(r).slice(), m = r.target.elementFlags.slice();
        for (let y = vy(r); y < l.length; y++) {
          const x = l[y];
          (y < l.length - 1 || !(x.kind === 209 && x.dotDotDotToken)) && (f.push(!Al(x) && IC(x) ? CP(x, !1, !1) : Ve), m.push(2), !Al(x) && !IC(x) && gb(x, Ve));
        }
        return Pg(f, m, r.target.readonly);
      }
      function Dme(r, s) {
        const l = K8e(r, s);
        if (rn(r)) {
          if (_Ne(l))
            return gb(r, Ve), Ve;
          if (J$(l))
            return gb(r, hl), hl;
        }
        return l;
      }
      function K8e(r, s) {
        return Q2(r) & 6 || $3(r) ? s : mb(s);
      }
      function FX(r, s) {
        if (s) {
          if (s.flags & 402653184) {
            const l = s.types;
            return _t(l, (f) => FX(r, f));
          }
          if (s.flags & 117964800) {
            const l = xu(s) || Re;
            return Wc(l, 32) && Wc(r, 1024) || Wc(l, 64) && Wc(r, 2048) || Wc(l, 128) && Wc(r, 4096) || Wc(l, 512) && Wc(r, 16384) || FX(r, l);
          }
          return !!(s.flags & 14681088 && Wc(r, 1024) || s.flags & 2048 && Wc(r, 2048) || s.flags & 4096 && Wc(r, 4096) || s.flags & 8192 && Wc(r, 8192) || s.flags & 16384 && Wc(r, 16384));
        }
        return !1;
      }
      function ax(r) {
        const s = r.parent;
        return Db(s) && _d(s.type) || Kb(s) && _d(J6(s)) || fme(r) && jT(O_(r, 0)) || (E_(s) || hu(s) || wp(s)) && ax(s) || (ol(s) || Nu(s) || I6(s)) && ax(s.parent);
      }
      function HP(r, s, l) {
        const f = aa(r, s, l);
        return ax(r) || SK(r) ? ku(f) : Y8e(r) ? f : ede(f, uX(O_(r, void 0), r, void 0));
      }
      function e7e(r, s) {
        return r.name.kind === 168 && Od(r.name), HP(r.initializer, s);
      }
      function t7e(r, s) {
        return E5e(r), r.name.kind === 168 && Od(r.name), r7e(r, V8e(r, s), s);
      }
      function r7e(r, s, l) {
        if (l && l & 10) {
          const f = Q8(s, 0, !0), m = Q8(s, 1, !0), y = f || m;
          if (y && y.typeParameters) {
            const x = yb(r, 2);
            if (x) {
              const O = Q8(g0(x), f ? 0 : 1, !1);
              if (O && !O.typeParameters) {
                if (l & 8)
                  return n7e(r, l), ac;
                const J = H2(r), V = J.signature && ro(J.signature), Y = V && l8e(V);
                if (Y && !Y.typeParameters && !hr(J.inferences, h4)) {
                  const be = Ect(J, y.typeParameters), me = rpe(y, be), Je = or(J.inferences, (gt) => ode(gt.typeParameter));
                  if (nde(me, O, (gt, ht) => {
                    wh(Je, gt, ht, 0, !0);
                  }), _t(Je, h4) && (ide(me, O, (gt, ht) => {
                    wh(Je, gt, ht);
                  }), !kct(J.inferences, Je)))
                    return Cct(J.inferences, Je), J.inferredTypeParameters = zi(J.inferredTypeParameters, be), BT(me);
                }
                return BT(u8e(y, O, J));
              }
            }
          }
        }
        return s;
      }
      function n7e(r, s) {
        if (s & 2) {
          const l = H2(r);
          l.flags |= 4;
        }
      }
      function h4(r) {
        return !!(r.candidates || r.contraCandidates);
      }
      function xct(r) {
        return !!(r.candidates || r.contraCandidates || T3e(r.typeParameter));
      }
      function kct(r, s) {
        for (let l = 0; l < r.length; l++) if (h4(r[l]) && h4(s[l])) return !0;
        return !1;
      }
      function Cct(r, s) {
        for (let l = 0; l < r.length; l++) !h4(r[l]) && h4(s[l]) && (r[l] = s[l]);
      }
      function Ect(r, s) {
        const l = [];
        let f, m;
        for (const y of s) {
          const x = y.symbol.escapedName;
          if (wme(r.inferredTypeParameters, x) || wme(l, x)) {
            const O = fp(Fs(262144, Dct(zi(r.inferredTypeParameters, l), x)));
            O.target = y, f = kr(f, y), m = kr(m, O), l.push(O);
          } else l.push(y);
        }
        if (m) {
          const y = Lf(f, m);
          for (const x of m) x.mapper = y;
        }
        return l;
      }
      function wme(r, s) {
        return _t(r, (l) => l.symbol.escapedName === s);
      }
      function Dct(r, s) {
        let l = s.length;
        for (; l > 1 && s.charCodeAt(l - 1) >= 48 && s.charCodeAt(l - 1) <= 57; ) l--;
        const f = s.slice(0, l);
        for (let m = 1; ; m++) {
          const y = f + m;
          if (!wme(r, y)) return y;
        }
      }
      function i7e(r) {
        const s = nx(r);
        if (s && !s.typeParameters) return ro(s);
      }
      function wct(r) {
        const s = aa(r.expression), l = j8(s, r.expression), f = i7e(s);
        return f && V$(f, r, l !== s);
      }
      function Ol(r) {
        const s = Pme(r);
        if (s) return s;
        if (r.flags & 268435456 && Td) {
          const m = Td[Hs(r)];
          if (m) return m;
        }
        const l = yo, f = aa(r, 64);
        if (yo !== l) {
          const m = Td || (Td = []);
          m[Hs(r)] = f, Kee(r, r.flags | 268435456);
        }
        return f;
      }
      function Pme(r) {
        let s = Gs(r, !0);
        if (Kb(s)) {
          const l = J6(s);
          if (!_d(l)) return Di(l);
        }
        if (s = Gs(r), o1(s)) {
          const l = Pme(s.expression);
          return l ? OC(l) : void 0;
        }
        if (za(s) && s.expression.kind !== 108 && !J_(s, !0) && !k8e(s) && !B_(s)) return uS(s) ? wct(s) : i7e(p4(s.expression));
        if (Db(s) && !_d(s.type)) return Di(s.type);
        if (_S(r) || X4(r)) return aa(r);
      }
      function kR(r) {
        const s = Pn(r);
        if (s.contextFreeType) return s.contextFreeType;
        sR(r, Ve, !1);
        const l = s.contextFreeType = aa(r, 4);
        return G8(), l;
      }
      function aa(r, s, l) {
        var f, m;
        (f = sn) == null || f.push(sn.Phase.Check, "checkExpression", {
          kind: r.kind,
          pos: r.pos,
          end: r.end,
          path: r.tracingPath
        });
        const y = k;
        k = r, h = 0;
        const x = r7e(r, Nct(r, s, l), s);
        return IX(x) && Pct(r, x), k = y, (m = sn) == null || m.pop(), x;
      }
      function Pct(r, s) {
        var l;
        const f = r.parent.kind === 212 && r.parent.expression === r || r.parent.kind === 213 && r.parent.expression === r || (r.kind === 80 || r.kind === 167) && ZX(r) || r.parent.kind === 187 && r.parent.exprName === r || r.parent.kind === 282;
        if (f || We(r, p.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query), L.isolatedModules || L.verbatimModuleSyntax && f && !Gr(r, x_(r), 2097152, void 0, !1, !0)) {
          E.assert(!!(s.symbol.flags & 128));
          const m = s.symbol.valueDeclaration, y = (l = e.getRedirectFromOutput(Sr(m).resolvedPath)) == null ? void 0 : l.resolvedRef;
          m.flags & 33554432 && !vv(r) && (!y || !e1(y.commandLine.options)) && We(r, p.Cannot_access_ambient_const_enums_when_0_is_enabled, Ut);
        }
      }
      function Act(r, s) {
        if (Jf(r)) {
          if (sz(r)) return pme(r.expression, oz(r), s);
          if (Kb(r)) return w8e(r, s);
        }
        return aa(r.expression, s);
      }
      function Nct(r, s, l) {
        const f = r.kind;
        if (i) switch (f) {
          case 232:
          case 219:
          case 220:
            i.throwIfCancellationRequested();
        }
        switch (f) {
          case 80:
            return eat(r, s);
          case 81:
            return Cst(r);
          case 110:
            return iR(r);
          case 108:
            return oX(r);
          case 106:
            return fn;
          case 15:
          case 11:
            return fde(r) ? Oe : DC(sf(r.text));
          case 9:
            return I5e(r), DC(cm(+r.text));
          case 10:
            return Fft(r), DC(MM({
              negative: !1,
              base10Value: JD(r.text)
            }));
          case 112:
            return Ir;
          case 97:
            return wt;
          case 229:
            return yct(r);
          case 14:
            return Xat(r);
          case 210:
            return NIe(r, s, l);
          case 211:
            return nst(r, s);
          case 212:
            return vX(r, s);
          case 167:
            return $Ie(r, s);
          case 213:
            return Bst(r, s);
          case 214:
            if (B_(r)) return hot(r);
          case 215:
            return got(r, s);
          case 216:
            return yot(r);
          case 218:
            return Act(r, s);
          case 232:
            return Sut(r);
          case 219:
          case 220:
            return V8e(r, s);
          case 222:
            return ect(r);
          case 217:
          case 235:
            return vot(r, s);
          case 236:
            return Tot(r);
          case 234:
            return A8e(r);
          case 239:
            return xot(r);
          case 237:
            return kot(r);
          case 221:
            return Zot(r);
          case 223:
            return tct(r);
          case 224:
            return rct(r);
          case 225:
            return nct(r);
          case 226:
            return ict(r);
          case 227:
            return Ne(r, s);
          case 228:
            return hct(r, s);
          case 231:
            return Qat(r, s);
          case 233:
            return ye;
          case 230:
            return gct(r);
          case 238:
            return Yat(r);
          case 295:
            return yst(r, s);
          case 285:
            return ost(r, s);
          case 286:
            return ast(r, s);
          case 289:
            return cst(r);
          case 293:
            return ust(r, s);
          case 287:
            E.fail("Shouldn't ever directly check a JsxOpeningElement");
        }
        return rt;
      }
      function a7e(r) {
        Ah(r), r.expression && Ll(r.expression, p.Type_expected), xs(r.constraint), xs(r.default);
        const s = sb(mn(r));
        xu(s), $et(s) || We(r.default, p.Type_parameter_0_has_a_circular_default, Xr(s));
        const l = g_(s), f = j2(s);
        l && f && zu(f, Of(Ji(l, U2(s, f)), f), r.default, p.Type_0_does_not_satisfy_the_constraint_1), FC(r), n(() => YP(r.name, p.Type_parameter_name_cannot_be_0));
      }
      function Ict(r) {
        var s, l;
        if (au(r.parent) || Zn(r.parent) || Kp(r.parent)) {
          const f = sb(mn(r)), m = Xpe(f) & 24576;
          if (m) {
            const y = mn(r.parent);
            if (Kp(r.parent) && !(yn(Oo(y)) & 48)) We(r, p.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);
            else if (m === 8192 || m === 16384) {
              (s = sn) == null || s.push(sn.Phase.CheckTypes, "checkTypeParameterDeferred", {
                parent: Kl(Oo(y)),
                id: Kl(f)
              });
              const x = WM(y, f, m === 16384 ? tn : Bn), O = WM(y, f, m === 16384 ? Bn : tn), J = f;
              D = f, zu(x, O, r, p.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation), D = J, (l = sn) == null || l.pop();
            }
          }
        }
      }
      function s7e(r) {
        Ah(r), AR(r);
        const s = Kf(r);
        Qn(r, 31) && (L.erasableSyntaxOnly && We(r, p.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled), s.kind === 177 && Gp(s.body) || We(r, p.A_parameter_property_is_only_allowed_in_a_constructor_implementation), s.kind === 177 && Fe(r.name) && r.name.escapedText === "constructor" && We(r.name, p.constructor_cannot_be_used_as_a_parameter_property_name)), !r.initializer && ek(r) && Ja(r.name) && s.body && We(r, p.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature), r.name && Fe(r.name) && (r.name.escapedText === "this" || r.name.escapedText === "new") && (s.parameters.indexOf(r) !== 0 && We(r, p.A_0_parameter_must_be_the_first_parameter, r.name.escapedText), (s.kind === 177 || s.kind === 181 || s.kind === 186) && We(r, p.A_constructor_cannot_have_a_this_parameter), s.kind === 220 && We(r, p.An_arrow_function_cannot_have_a_this_parameter), (s.kind === 178 || s.kind === 179) && We(r, p.get_and_set_accessors_cannot_declare_this_parameters)), r.dotDotDotToken && !Ja(r.name) && !qa(dp(ft(r.symbol)), Kd) && We(r, p.A_rest_parameter_must_be_of_an_array_type);
      }
      function Oct(r) {
        const s = Fct(r);
        if (!s) {
          We(r, p.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);
          return;
        }
        const l = mp(s), f = jp(l);
        if (!f) return;
        xs(r.type);
        const { parameterName: m } = r;
        if (f.kind !== 0 && f.kind !== 2) {
          if (f.parameterIndex >= 0) {
            if (Qu(l) && f.parameterIndex === l.parameters.length - 1) We(m, p.A_type_predicate_cannot_reference_a_rest_parameter);
            else if (f.type) {
              const y = () => ba(void 0, p.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);
              zu(f.type, ft(l.parameters[f.parameterIndex]), r.type, void 0, y);
            }
          } else if (m) {
            let y = !1;
            for (const { name: x } of s.parameters) if (Ja(x) && o7e(x, m, f.parameterName)) {
              y = !0;
              break;
            }
            y || We(r.parameterName, p.Cannot_find_parameter_0, f.parameterName);
          }
        }
      }
      function Fct(r) {
        switch (r.parent.kind) {
          case 220:
          case 180:
          case 263:
          case 219:
          case 185:
          case 175:
          case 174:
            const s = r.parent;
            if (r === s.type) return s;
        }
      }
      function o7e(r, s, l) {
        for (const f of r.elements) {
          if (Al(f)) continue;
          const m = f.name;
          if (m.kind === 80 && m.escapedText === l)
            return We(s, p.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern, l), !0;
          if ((m.kind === 208 || m.kind === 207) && o7e(m, s, l))
            return !0;
        }
      }
      function n7(r) {
        r.kind === 182 ? lft(r) : (r.kind === 185 || r.kind === 263 || r.kind === 186 || r.kind === 180 || r.kind === 177 || r.kind === 181) && iQ(r);
        const s = Gc(r);
        s & 4 || ((s & 3) === 3 && z < Rl.AsyncGenerators && Fl(r, 6144), (s & 3) === 2 && z < Rl.AsyncFunctions && Fl(r, 64), (s & 3) !== 0 && z < Rl.Generators && Fl(r, 128)), OR(Ry(r)), yut(r), bt(r.parameters, s7e), r.type && xs(r.type), n(l);
        function l() {
          Olt(r);
          let f = yf(r), m = f;
          if (rn(r)) {
            const y = iv(r);
            if (y && y.typeExpression && xf(y.typeExpression.type)) {
              const x = nx(Di(y.typeExpression));
              x && x.declaration && (f = yf(x.declaration), m = y.typeExpression.type);
            }
          }
          if ($ && !f) switch (r.kind) {
            case 181:
              We(r, p.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);
              break;
            case 180:
              We(r, p.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);
              break;
          }
          if (f && m) {
            const y = Gc(r);
            if ((y & 5) === 1) {
              const x = Di(f);
              x === Qt ? We(m, p.A_generator_cannot_have_a_void_type_annotation) : Ame(x, y, m);
            } else (y & 3) === 2 && _lt(r, f, m);
          }
          r.kind !== 182 && r.kind !== 318 && G1(r);
        }
      }
      function Ame(r, s, l) {
        const f = ky(0, r, (s & 2) !== 0) || Ve;
        return zu(AX(f, ky(1, r, (s & 2) !== 0) || f, ky(2, r, (s & 2) !== 0) || Re, !!(s & 2)), r, l);
      }
      function Lct(r) {
        const s = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Map(), f = /* @__PURE__ */ new Map();
        for (const y of r.members) if (y.kind === 177)
          for (const x of y.parameters) df(x, y) && !Ja(x.name) && m(s, x.name, x.name.escapedText, 3);
        else {
          const x = es(y), O = y.name;
          if (!O) continue;
          const J = Oi(O), V = J && x ? 16 : 0, Y = J ? f : x ? l : s, be = O && _ge(O);
          if (be) switch (y.kind) {
            case 178:
              m(Y, O, be, 1 | V);
              break;
            case 179:
              m(Y, O, be, 2 | V);
              break;
            case 173:
              m(Y, O, be, 3 | V);
              break;
            case 175:
              m(Y, O, be, 8 | V);
              break;
          }
        }
        function m(y, x, O, J) {
          const V = y.get(O);
          if (V) if ((V & 16) !== (J & 16)) We(x, p.Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name, uc(x));
          else {
            const Y = !!(V & 8), be = !!(J & 8);
            Y || be ? Y !== be && We(x, p.Duplicate_identifier_0, uc(x)) : V & J & -17 ? We(x, p.Duplicate_identifier_0, uc(x)) : y.set(O, V | J);
          }
          else y.set(O, J);
        }
      }
      function Mct(r) {
        for (const s of r.members) {
          const l = s.name;
          if (es(s) && l) {
            const f = _ge(l);
            switch (f) {
              case "name":
              case "length":
              case "caller":
              case "arguments":
                if (pe) break;
              case "prototype":
                const m = p.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1;
                We(l, m, f, X(mn(r)));
                break;
            }
          }
        }
      }
      function c7e(r) {
        const s = /* @__PURE__ */ new Map();
        for (const l of r.members) if (l.kind === 172) {
          let f;
          const m = l.name;
          switch (m.kind) {
            case 11:
            case 9:
              f = m.text;
              break;
            case 80:
              f = On(m);
              break;
            default:
              continue;
          }
          s.get(f) ? (We(va(l.symbol.valueDeclaration), p.Duplicate_identifier_0, f), We(l.name, p.Duplicate_identifier_0, f)) : s.set(f, !0);
        }
      }
      function Nme(r) {
        if (r.kind === 265) {
          const l = mn(r);
          if (l.declarations && l.declarations.length > 0 && l.declarations[0] !== r) return;
        }
        const s = d$(mn(r));
        if (s?.declarations) {
          const l = /* @__PURE__ */ new Map();
          for (const f of s.declarations) s1(f) && f.parameters.length === 1 && f.parameters[0].type && ZT(Di(f.parameters[0].type), (m) => {
            const y = l.get(Kl(m));
            y ? y.declarations.push(f) : l.set(Kl(m), {
              type: m,
              declarations: [f]
            });
          });
          l.forEach((f) => {
            if (f.declarations.length > 1) for (const m of f.declarations) We(m, p.Duplicate_index_signature_for_type_0, Xr(f.type));
          });
        }
      }
      function l7e(r) {
        !Ah(r) && !Nft(r) && aQ(r.name), AR(r), LX(r), Qn(r, 64) && r.kind === 173 && r.initializer && We(r, p.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract, Do(r.name));
      }
      function Rct(r) {
        return Oi(r.name) && We(r, p.Private_identifiers_are_not_allowed_outside_class_bodies), l7e(r);
      }
      function jct(r) {
        E5e(r) || aQ(r.name), hc(r) && r.asteriskToken && Fe(r.name) && On(r.name) === "constructor" && We(r.name, p.Class_constructor_may_not_be_a_generator), T7e(r), Qn(r, 64) && r.kind === 175 && r.body && We(r, p.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract, Do(r.name)), Oi(r.name) && !nu(r) && We(r, p.Private_identifiers_are_not_allowed_outside_class_bodies), LX(r);
      }
      function LX(r) {
        if (Oi(r.name) && (z < Rl.PrivateNamesAndClassStaticBlocks || z < Rl.ClassAndClassElementDecorators || !pe)) {
          for (let s = Bd(r); s; s = Bd(s)) Pn(s).flags |= 1048576;
          if (Hc(r.parent)) {
            const s = Ade(r.parent);
            s && (Pn(r.name).flags |= 32768, Pn(s).flags |= 4096);
          }
        }
      }
      function Bct(r) {
        Ah(r), Fa(r, xs);
      }
      function Jct(r) {
        n7(r), Pft(r) || Aft(r), xs(r.body);
        const s = mn(r);
        if (r === Ho(s, r.kind) && jX(s), Nc(r.body)) return;
        n(f);
        return;
        function l(m) {
          return qu(m) ? !0 : m.kind === 173 && !es(m) && !!m.initializer;
        }
        function f() {
          const m = r.parent;
          if (Mb(m)) {
            Nde(r.parent, m);
            const y = Ide(m), x = dIe(r.body);
            if (x) {
              if (y && We(x, p.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null), !ie && (_t(r.parent.members, l) || _t(r.parameters, (O) => Qn(O, 31)))) if (!zct(x, r.body)) We(x, p.A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers);
              else {
                let O;
                for (const J of r.body.statements) {
                  if (zl(J) && hS(Ic(J.expression))) {
                    O = J;
                    break;
                  }
                  if (u7e(J)) break;
                }
                O === void 0 && We(r, p.A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers);
              }
            } else y || We(r, p.Constructors_for_derived_classes_must_contain_a_super_call);
          }
        }
      }
      function zct(r, s) {
        const l = dd(r.parent);
        return zl(l) && l.parent === s;
      }
      function u7e(r) {
        return r.kind === 108 || r.kind === 110 ? !0 : wK(r) ? !1 : !!Fa(r, u7e);
      }
      function _7e(r) {
        Fe(r.name) && On(r.name) === "constructor" && Zn(r.parent) && We(r.name, p.Class_constructor_may_not_be_an_accessor), n(s), xs(r.body), LX(r);
        function s() {
          if (!iQ(r) && !yft(r) && aQ(r.name), DR(r), n7(r), r.kind === 178 && !(r.flags & 33554432) && Gp(r.body) && r.flags & 512 && (r.flags & 1024 || We(r.name, p.A_get_accessor_must_return_a_value)), r.name.kind === 168 && Od(r.name), t4(r)) {
            const f = mn(r), m = Ho(f, 178), y = Ho(f, 179);
            if (m && y && !(MC(m) & 1)) {
              Pn(m).flags |= 1;
              const x = Pu(m), O = Pu(y);
              (x & 64) !== (O & 64) && (We(m.name, p.Accessors_must_both_be_abstract_or_non_abstract), We(y.name, p.Accessors_must_both_be_abstract_or_non_abstract)), (x & 4 && !(O & 6) || x & 2 && !(O & 2)) && (We(m.name, p.A_get_accessor_must_be_at_least_as_accessible_as_the_setter), We(y.name, p.A_get_accessor_must_be_at_least_as_accessible_as_the_setter));
            }
          }
          const l = KE(mn(r));
          r.kind === 178 && Tme(r, l);
        }
      }
      function Wct(r) {
        DR(r);
      }
      function Uct(r, s, l) {
        return r.typeArguments && l < r.typeArguments.length ? Di(r.typeArguments[l]) : MX(r, s)[l];
      }
      function MX(r, s) {
        return yy(or(r.typeArguments, Di), s, wg(s), rn(r));
      }
      function f7e(r, s) {
        let l, f, m = !0;
        for (let y = 0; y < s.length; y++) {
          const x = g_(s[y]);
          x && (l || (l = MX(r, s), f = Lf(s, l)), m = m && zu(l[y], Ji(x, f), r.typeArguments[y], p.Type_0_does_not_satisfy_the_constraint_1));
        }
        return m;
      }
      function Vct(r, s) {
        if (!hi(r)) return s.flags & 524288 && Wi(s).typeParameters || (yn(r) & 4 ? r.target.localTypeParameters : void 0);
      }
      function Ime(r) {
        const s = Di(r);
        if (!hi(s)) {
          const l = Pn(r).resolvedSymbol;
          if (l) return Vct(s, l);
        }
      }
      function p7e(r) {
        switch (r.kind) {
          case 214:
          case 171:
            return Pa(Ol(r.expression), 0);
          case 215:
            return Pa(Ol(r.expression), 1);
          case 286:
          case 287:
            return ex(r.tagName) ? [] : Pa(Ol(r.tagName), 0);
          case 216:
            return Pa(Ol(r.tag), 0);
          case 227:
          case 290:
            return [];
        }
      }
      function RX(r, s) {
        return Yn(ks(r, (l) => {
          var f;
          const m = (f = l.typeParameters) == null ? void 0 : f[s];
          if (m === void 0) return [];
          const y = g_(m);
          return y === void 0 ? [] : [y];
        }));
      }
      function Ome(r) {
        if (RR(r, r.typeArguments), r.kind === 184 && !rn(r) && !oD(r) && r.typeArguments && r.typeName.end !== r.typeArguments.pos) {
          const s = Sr(r);
          yK(s, r.typeName.end) === 25 && bb(r, gs(s.text, r.typeName.end), 1, p.JSDoc_types_can_only_be_used_inside_documentation_comments);
        }
        bt(r.typeArguments, xs), d7e(r);
      }
      function d7e(r) {
        if (!hi(Di(r))) {
          r.typeArguments && n(() => {
            const l = Ime(r);
            l && f7e(r, l);
          });
          const s = Pn(r).resolvedSymbol;
          s && _t(s.declarations, (l) => Kx(l) && !!(l.flags & 536870912)) && Cd(gR(r), s.declarations, s.escapedName);
        }
      }
      function qct(r) {
        let s;
        if (zK(r.parent) && Array.isArray(r.parent.typeArguments) && (s = r.parent.typeArguments.indexOf(r)), s !== void 0) {
          if (Wy(r.parent)) return RX(p7e(r.parent), s);
          if (pl(r.parent.parent)) return RX(p7e(r.parent.parent), s);
          if (rh(r.parent) && zl(r.parent.parent)) {
            const l = aa(r.parent.expression), f = RX(Pa(l, 0), s), m = RX(Pa(l, 1), s);
            return m.flags & 262144 ? f : f.flags & 262144 ? m : Ss([f, m]);
          }
          if (pB(r.parent)) {
            const l = Ime(r.parent);
            if (!l) return;
            const f = l[s], m = g_(f);
            return m && Ji(m, Lf(l, MX(r.parent, l)));
          }
        }
      }
      function Gct(r) {
        H3e(r);
      }
      function Hct(r) {
        bt(r.members, xs), n(s);
        function s() {
          const l = MAe(r);
          GX(l, l.symbol), Nme(r), c7e(r);
        }
      }
      function $ct(r) {
        xs(r.elementType);
      }
      function Xct(r) {
        let s = !1, l = !1;
        for (const f of r.elements) {
          let m = dpe(f);
          if (m & 8) {
            const y = Di(f.type);
            if (!Sy(y)) {
              We(f, p.A_rest_element_type_must_be_an_array_type);
              break;
            }
            (Jp(y) || Ls(y) && y.target.combinedFlags & 4) && (m |= 4);
          }
          if (m & 4) {
            if (l) {
              sr(f, p.A_rest_element_cannot_follow_another_rest_element);
              break;
            }
            l = !0;
          } else if (m & 2) {
            if (l) {
              sr(f, p.An_optional_element_cannot_follow_a_rest_element);
              break;
            }
            s = !0;
          } else if (m & 1 && s) {
            sr(f, p.A_required_element_cannot_follow_an_optional_element);
            break;
          }
        }
        bt(r.elements, xs), Di(r);
      }
      function Qct(r) {
        bt(r.types, xs), Di(r);
      }
      function m7e(r, s) {
        if (!(r.flags & 33554432)) return r;
        const l = r.objectType, f = r.indexType, m = !!kh(l, et);
        if (cf(f, (y) => qa(y, eg(l, 0)) || m && TC(y, et)))
          return s.kind === 213 && Qy(s) && yn(l) & 32 && Dg(l) & 1 && We(s, p.Index_signature_in_type_0_only_permits_reading, Xr(l)), r;
        if (UT(l)) {
          const y = k$(f, s);
          if (y) {
            const x = ZT(h_(l), (O) => ms(O, y));
            if (x && kp(x) & 6)
              return We(s, p.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter, Ti(y)), rt;
          }
        }
        return We(s, p.Type_0_cannot_be_used_to_index_type_1, Xr(f), Xr(l)), rt;
      }
      function Yct(r) {
        xs(r.objectType), xs(r.indexType), m7e(AAe(r), r);
      }
      function Zct(r) {
        Kct(r), xs(r.typeParameter), xs(r.nameType), xs(r.type), r.type || gb(r, Ve);
        const s = Dpe(r), l = Th(s);
        l ? zu(l, oo, r.nameType) : zu(pp(s), oo, $C(r.typeParameter));
      }
      function Kct(r) {
        var s;
        if ((s = r.members) != null && s.length) return sr(r.members[0], p.A_mapped_type_may_not_declare_properties_or_methods);
      }
      function elt(r) {
        Fpe(r);
      }
      function tlt(r) {
        bft(r), xs(r.type);
      }
      function rlt(r) {
        Fa(r, xs);
      }
      function nlt(r) {
        cr(r, (l) => l.parent && l.parent.kind === 195 && l.parent.extendsType === l) || sr(r, p.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type), xs(r.typeParameter);
        const s = mn(r.typeParameter);
        if (s.declarations && s.declarations.length > 1) {
          const l = Wi(s);
          if (!l.typeParametersChecked) {
            l.typeParametersChecked = !0;
            const f = sb(s), m = QZ(s, 169);
            if (!z7e(m, [f], (y) => [y])) {
              const y = Xi(s);
              for (const x of m) We(x.name, p.All_declarations_of_0_must_have_identical_constraints, y);
            }
          }
        }
        G1(r);
      }
      function ilt(r) {
        for (const s of r.templateSpans)
          xs(s.type), zu(Di(s.type), ia, s.type);
        Di(r);
      }
      function alt(r) {
        xs(r.argument), r.attributes && (r.attributes.token !== 118 && L.ignoreDeprecations !== "6.0" && Ll(r.attributes, p.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert), eE(r.attributes, sr)), d7e(r);
      }
      function slt(r) {
        r.dotDotDotToken && r.questionToken && sr(r, p.A_tuple_member_cannot_be_both_optional_and_rest), r.type.kind === 191 && sr(r.type, p.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type), r.type.kind === 192 && sr(r.type, p.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type), xs(r.type), Di(r);
      }
      function CR(r) {
        return (vf(r, 2) || qu(r)) && !!(r.flags & 33554432);
      }
      function i7(r, s) {
        let l = oQ(r);
        if (r.parent.kind !== 265 && r.parent.kind !== 264 && r.parent.kind !== 232 && r.flags & 33554432) {
          const f = h5(r);
          f && f.flags & 128 && !(l & 128) && !(Vd(r.parent) && Qc(r.parent.parent) && ug(r.parent.parent)) && (l |= 32), l |= 128;
        }
        return l & s;
      }
      function jX(r) {
        n(() => olt(r));
      }
      function olt(r) {
        function s(lr, ur) {
          return ur !== void 0 && ur.parent === lr[0].parent ? ur : lr[0];
        }
        function l(lr, ur, En, si, Ii) {
          if ((si ^ Ii) !== 0) {
            const Si = i7(s(lr, ur), En);
            BC(lr, (fi) => Sr(fi).fileName).forEach((fi) => {
              const vs = i7(s(fi, ur), En);
              for (const Cs of fi) {
                const ka = i7(Cs, En) ^ Si, Ro = i7(Cs, En) ^ vs;
                Ro & 32 ? We(va(Cs), p.Overload_signatures_must_all_be_exported_or_non_exported) : Ro & 128 ? We(va(Cs), p.Overload_signatures_must_all_be_ambient_or_non_ambient) : ka & 6 ? We(va(Cs) || Cs, p.Overload_signatures_must_all_be_public_private_or_protected) : ka & 64 && We(va(Cs), p.Overload_signatures_must_all_be_abstract_or_non_abstract);
              }
            });
          }
        }
        function f(lr, ur, En, si) {
          if (En !== si) {
            const Ii = Mx(s(lr, ur));
            bt(lr, (Si) => {
              Mx(Si) !== Ii && We(va(Si), p.Overload_signatures_must_all_be_optional_or_required);
            });
          }
        }
        const m = 230;
        let y = 0, x = m, O = !1, J = !0, V = !1, Y, be, me;
        const Je = r.declarations, gt = (r.flags & 16384) !== 0;
        function ht(lr) {
          if (lr.name && Nc(lr.name)) return;
          let ur = !1;
          const En = Fa(lr.parent, (Ii) => {
            if (ur) return Ii;
            ur = Ii === lr;
          });
          if (En && En.pos === lr.end && En.kind === lr.kind) {
            const Ii = En.name || En, Si = En.name;
            if (lr.name && Si && (Oi(lr.name) && Oi(Si) && lr.name.escapedText === Si.escapedText || _s(lr.name) && _s(Si) && Dh(Od(lr.name), Od(Si)) || Tm(lr.name) && Tm(Si) && yD(lr.name) === yD(Si))) {
              (lr.kind === 175 || lr.kind === 174) && es(lr) !== es(En) && We(Ii, es(lr) ? p.Function_overload_must_be_static : p.Function_overload_must_not_be_static);
              return;
            }
            if (Gp(En.body)) {
              We(Ii, p.Function_implementation_name_must_be_0, Do(lr.name));
              return;
            }
          }
          const si = lr.name || lr;
          gt ? We(si, p.Constructor_implementation_is_missing) : Qn(lr, 64) ? We(si, p.All_declarations_of_an_abstract_method_must_be_consecutive) : We(si, p.Function_implementation_is_missing_or_not_immediately_following_the_declaration);
        }
        let ir = !1, mr = !1, br = !1;
        const Hr = [];
        if (Je) for (const lr of Je) {
          const ur = lr, En = ur.flags & 33554432, si = ur.parent && (ur.parent.kind === 265 || ur.parent.kind === 188) || En;
          if (si && (me = void 0), (ur.kind === 264 || ur.kind === 232) && !En && (br = !0), ur.kind === 263 || ur.kind === 175 || ur.kind === 174 || ur.kind === 177) {
            Hr.push(ur);
            const Ii = i7(ur, m);
            y |= Ii, x &= Ii, O = O || Mx(ur), J = J && Mx(ur);
            const Si = Gp(ur.body);
            Si && Y ? gt ? mr = !0 : ir = !0 : me?.parent === ur.parent && me.end !== ur.pos && ht(me), Si ? Y || (Y = ur) : V = !0, me = ur, si || (be = ur);
          }
          rn(lr) && Ra(lr) && lr.jsDoc && (V = It(XB(lr)) > 0);
        }
        if (mr && bt(Hr, (lr) => {
          We(lr, p.Multiple_constructor_implementations_are_not_allowed);
        }), ir && bt(Hr, (lr) => {
          We(va(lr) || lr, p.Duplicate_function_implementation);
        }), br && !gt && r.flags & 16 && Je) {
          const lr = dn(Je, (ur) => ur.kind === 264).map((ur) => Kr(ur, p.Consider_adding_a_declare_modifier_to_this_class));
          bt(Je, (ur) => {
            const En = ur.kind === 264 ? p.Class_declaration_cannot_implement_overload_list_for_0 : ur.kind === 263 ? p.Function_with_bodies_can_only_merge_with_classes_that_are_ambient : void 0;
            En && ts(We(va(ur) || ur, En, kc(r)), ...lr);
          });
        }
        if (be && !be.body && !Qn(be, 64) && !be.questionToken && ht(be), V && (Je && (l(Je, Y, m, y, x), f(Je, Y, O, J)), Y)) {
          const lr = B2(r), ur = mp(Y);
          for (const En of lr) if (!_nt(ur, En)) {
            ts(We(En.declaration && z0(En.declaration) ? En.declaration.parent.tagName : En.declaration, p.This_overload_signature_is_not_compatible_with_its_implementation_signature), Kr(Y, p.The_implementation_signature_is_declared_here));
            break;
          }
        }
      }
      function a7(r) {
        n(() => clt(r));
      }
      function clt(r) {
        let s = r.localSymbol;
        if (!s && (s = mn(r), !s.exportSymbol) || Ho(s, r.kind) !== r) return;
        let l = 0, f = 0, m = 0;
        for (const V of s.declarations) {
          const Y = J(V), be = i7(V, 2080);
          be & 32 ? be & 2048 ? m |= Y : l |= Y : f |= Y;
        }
        const y = l | f, x = l & f, O = m & y;
        if (x || O) for (const V of s.declarations) {
          const Y = J(V), be = va(V);
          Y & O ? We(be, p.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead, Do(be)) : Y & x && We(be, p.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local, Do(be));
        }
        function J(V) {
          let Y = V;
          switch (Y.kind) {
            case 265:
            case 266:
            case 347:
            case 339:
            case 341:
              return 2;
            case 268:
              return o_(Y) || m1(Y) !== 0 ? 5 : 4;
            case 264:
            case 267:
            case 307:
              return 3;
            case 308:
              return 7;
            case 278:
            case 227:
              const be = Y, me = Xo(be) ? be.expression : be.right;
              if (!go(me)) return 1;
              Y = me;
            case 272:
            case 275:
            case 274:
              let Je = 0;
              return bt(Zl(mn(Y)).declarations, (gt) => {
                Je |= J(gt);
              }), Je;
            case 261:
            case 209:
            case 263:
            case 277:
            case 80:
              return 1;
            case 174:
            case 172:
              return 2;
            default:
              return E.failBadSyntaxKind(Y);
          }
        }
      }
      function $P(r, s, l, ...f) {
        const m = s7(r, s);
        return m && OC(m, s, l, ...f);
      }
      function s7(r, s, l) {
        if (Bi(r)) return;
        const f = r;
        if (f.promisedTypeOfPromise) return f.promisedTypeOfPromise;
        if (ti(r, PM(!1))) return f.promisedTypeOfPromise = Vo(r)[0];
        if (r7(Km(r), 12976124)) return;
        const m = xn(r, "then");
        if (Bi(m)) return;
        const y = m ? Pa(m, 0) : Te;
        if (y.length === 0) {
          s && We(s, p.A_promise_must_have_a_then_method);
          return;
        }
        let x, O;
        for (const Y of y) {
          const be = lb(Y);
          be && be !== Qt && !tg(r, be, cp) ? x = be : O = kr(O, Y);
        }
        if (!O) {
          E.assertIsDefined(x), l && (l.value = x), s && We(s, p.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1, Xr(r), Xr(x));
          return;
        }
        const J = zp(Yn(or(O, hme)), 2097152);
        if (Bi(J)) return;
        const V = Pa(J, 0);
        if (V.length === 0) {
          s && We(s, p.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);
          return;
        }
        return f.promisedTypeOfPromise = Yn(or(V, hme), 2);
      }
      function ER(r, s, l, f, ...m) {
        return (s ? OC(r, l, f, ...m) : v0(r, l, f, ...m)) || rt;
      }
      function g7e(r) {
        if (r7(Km(r), 12976124)) return !1;
        const s = xn(r, "then");
        return !!s && Pa(zp(s, 2097152), 0).length > 0;
      }
      function BX(r) {
        var s;
        if (r.flags & 67108864) {
          const l = ppe(!1);
          return !!l && r.aliasSymbol === l && ((s = r.aliasTypeArguments) == null ? void 0 : s.length) === 1;
        }
        return !1;
      }
      function XP(r) {
        return r.flags & 134217728 ? sc(r, XP) : BX(r) ? r.aliasTypeArguments[0] : r;
      }
      function h7e(r) {
        if (Bi(r) || BX(r)) return !1;
        if (UT(r)) {
          const s = xu(r);
          if (s ? s.flags & 3 || d0(s) || gp(s, g7e) : Wc(r, 34078720)) return !0;
        }
        return !1;
      }
      function llt(r) {
        const s = ppe(!0);
        if (s) return i4(s, [XP(r)]);
      }
      function ult(r) {
        return h7e(r) ? llt(r) ?? r : (E.assert(BX(r) || s7(r) === void 0, "type provided should not be a non-generic 'promise'-like."), r);
      }
      function OC(r, s, l, ...f) {
        const m = v0(r, s, l, ...f);
        return m && ult(m);
      }
      function v0(r, s, l, ...f) {
        if (Bi(r) || BX(r)) return r;
        const m = r;
        if (m.awaitedTypeOfType) return m.awaitedTypeOfType;
        if (r.flags & 134217728) {
          if (ry.lastIndexOf(r.id) >= 0) {
            s && We(s, p.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);
            return;
          }
          const O = s ? (V) => v0(V, s, l, ...f) : v0;
          ry.push(r.id);
          const J = sc(r, O);
          return ry.pop(), m.awaitedTypeOfType = J;
        }
        if (h7e(r)) return m.awaitedTypeOfType = r;
        const y = { value: void 0 }, x = s7(r, void 0, y);
        if (x) {
          if (r.id === x.id || ry.lastIndexOf(x.id) >= 0) {
            s && We(s, p.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);
            return;
          }
          ry.push(r.id);
          const O = v0(x, s, l, ...f);
          return ry.pop(), O ? m.awaitedTypeOfType = O : void 0;
        }
        if (g7e(r)) {
          if (s) {
            E.assertIsDefined(l);
            let O;
            y.value && (O = ba(O, p.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1, Xr(r), Xr(y.value))), O = ba(O, l, ...f), Ws.add(Gg(Sr(s), s, O));
          }
          return;
        }
        return m.awaitedTypeOfType = r;
      }
      function _lt(r, s, l) {
        const f = Di(s);
        if (z >= 2) {
          if (hi(f)) return;
          const y = PM(!0);
          if (y !== Ma && !ti(f, y)) {
            m(p.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0, s, l, Xr(v0(f) || Qt));
            return;
          }
        } else {
          if (NC(r, 5), hi(f)) return;
          const y = tA(s);
          if (y === void 0) {
            m(p.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value, s, l, Xr(f));
            return;
          }
          const x = Tc(y, 111551, !0), O = x ? ft(x) : rt;
          if (hi(O)) {
            y.kind === 80 && y.escapedText === "Promise" && vi(f) === PM(!1) ? We(l, p.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option) : m(p.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value, s, l, mf(y));
            return;
          }
          const J = btt(!0);
          if (J === Yi) {
            m(p.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value, s, l, mf(y));
            return;
          }
          const V = p.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;
          if (!zu(O, J, l, V, () => s === l ? void 0 : ba(void 0, p.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type))) return;
          const be = y && x_(y), me = Ku(r.locals, be.escapedText, 111551);
          if (me) {
            We(me.valueDeclaration, p.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions, On(be), mf(y));
            return;
          }
        }
        ER(f, !1, r, p.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);
        function m(y, x, O, J) {
          x === O ? We(O, y, J) : ts(We(O, p.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type), Kr(x, y, J));
        }
      }
      function flt(r) {
        if (!H1(Sr(r))) {
          let s = r.expression;
          if (E_(s)) return !1;
          let l = !0, f;
          for (; ; ) {
            if (rh(s) || mk(s)) {
              s = s.expression;
              continue;
            }
            if (za(s)) {
              l || (f = s), s.questionDotToken && (f = s.questionDotToken), s = s.expression, l = !1;
              continue;
            }
            if (Ln(s)) {
              s.questionDotToken && (f = s.questionDotToken), s = s.expression, l = !1;
              continue;
            }
            Fe(s) || (f = s);
            break;
          }
          if (f)
            return ts(We(r.expression, p.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator), Kr(f, p.Invalid_syntax_in_decorator)), !0;
        }
        return !1;
      }
      function plt(r) {
        flt(r);
        const s = m4(r);
        wX(s, r);
        const l = ro(s);
        if (l.flags & 1) return;
        const f = bme(r);
        if (!f?.resolvedReturnType) return;
        let m;
        const y = f.resolvedReturnType;
        switch (r.parent.kind) {
          case 264:
          case 232:
            m = p.Decorator_function_return_type_0_is_not_assignable_to_type_1;
            break;
          case 173:
            if (!U) {
              m = p.Decorator_function_return_type_0_is_not_assignable_to_type_1;
              break;
            }
          case 170:
            m = p.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;
            break;
          case 175:
          case 178:
          case 179:
            m = p.Decorator_function_return_type_0_is_not_assignable_to_type_1;
            break;
          default:
            return E.failBadSyntaxKind(r.parent);
        }
        zu(l, y, r.expression, m);
      }
      function o7(r, s, l, f, m, y = l.length, x = 0) {
        return Zm(A.createFunctionTypeNode(void 0, Te, A.createKeywordTypeNode(133)), r, s, l, f, m, y, x);
      }
      function Fme(r, s, l, f, m, y, x) {
        return BT(o7(r, s, l, f, m, y, x));
      }
      function y7e(r) {
        return Fme(void 0, void 0, Te, r);
      }
      function v7e(r) {
        return Fme(void 0, void 0, [Pf("value", r)], Qt);
      }
      function Lme(r) {
        if (r) switch (r.kind) {
          case 194:
          case 193:
            return b7e(r.types);
          case 195:
            return b7e([r.trueType, r.falseType]);
          case 197:
          case 203:
            return Lme(r.type);
          case 184:
            return r.typeName;
        }
      }
      function b7e(r) {
        let s;
        for (let l of r) {
          for (; l.kind === 197 || l.kind === 203; ) l = l.type;
          if (l.kind === 146 || !Q && (l.kind === 202 && l.literal.kind === 106 || l.kind === 157)) continue;
          const f = Lme(l);
          if (!f) return;
          if (s) {
            if (!Fe(s) || !Fe(f) || s.escapedText !== f.escapedText) return;
          } else s = f;
        }
        return s;
      }
      function JX(r) {
        const s = _l(r);
        return cg(r) ? jB(s) : s;
      }
      function DR(r) {
        if (!e2(r) || !tp(r) || !r.modifiers || !rA(U, r, r.parent, r.parent.parent)) return;
        const s = xr(r.modifiers, pl);
        if (s) {
          U ? (Fl(s, 8), r.kind === 170 && Fl(s, 32)) : z < Rl.ClassAndClassElementDecorators && (Fl(s, 8), sl(r) ? r.name ? W7e(r) && Fl(s, 4194304) : Fl(s, 4194304) : Hc(r) || (Oi(r.name) && (hc(r) || zy(r) || R_(r)) && Fl(s, 4194304), _s(r.name) && Fl(s, 8388608))), NC(r, 8);
          for (const l of r.modifiers) pl(l) && plt(l);
        }
      }
      function dlt(r) {
        n(s);
        function s() {
          T7e(r), oge(r), QP(r, r.name);
        }
      }
      function mlt(r) {
        r.typeExpression || We(r.name, p.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags), r.name && YP(r.name, p.Type_alias_name_cannot_be_0), xs(r.typeExpression), OR(Ry(r));
      }
      function glt(r) {
        xs(r.constraint);
        for (const s of r.typeParameters) xs(s);
      }
      function hlt(r) {
        xs(r.typeExpression);
      }
      function ylt(r) {
        xs(r.typeExpression);
        const s = pv(r);
        if (s) {
          const l = G7(s, oF);
          if (It(l) > 1) for (let f = 1; f < It(l); f++) {
            const m = l[f].tagName;
            We(m, p._0_tag_already_specified, On(m));
          }
        }
      }
      function vlt(r) {
        r.name && LR(r.name, !0);
      }
      function blt(r) {
        xs(r.typeExpression);
      }
      function Slt(r) {
        xs(r.typeExpression);
      }
      function Tlt(r) {
        n(s), n7(r);
        function s() {
          !r.type && !Rx(r) && gb(r, Ve);
        }
      }
      function xlt(r) {
        const s = pv(r);
        s && Bo(s) && We(r.tagName, p.An_arrow_function_cannot_have_a_this_parameter);
      }
      function klt(r) {
        Xme(r);
      }
      function Clt(r) {
        const s = pv(r);
        (!s || !sl(s) && !Hc(s)) && We(s, p.JSDoc_0_is_not_attached_to_a_class, On(r.tagName));
      }
      function Elt(r) {
        const s = pv(r);
        if (!s || !sl(s) && !Hc(s)) {
          We(s, p.JSDoc_0_is_not_attached_to_a_class, On(r.tagName));
          return;
        }
        const l = av(s).filter(yk);
        E.assert(l.length > 0), l.length > 1 && We(l[1], p.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);
        const f = S7e(r.class.expression), m = Mb(s);
        if (m) {
          const y = S7e(m.expression);
          y && f.escapedText !== y.escapedText && We(f, p.JSDoc_0_1_does_not_match_the_extends_2_clause, On(r.tagName), On(f), On(y));
        }
      }
      function Dlt(r) {
        const s = Fb(r);
        s && qu(s) && We(r, p.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);
      }
      function S7e(r) {
        switch (r.kind) {
          case 80:
            return r;
          case 212:
            return r.name;
          default:
            return;
        }
      }
      function T7e(r) {
        var s;
        DR(r), n7(r);
        const l = Gc(r);
        if (r.name && r.name.kind === 168 && Od(r.name), t4(r)) {
          const y = mn(r), x = r.localSymbol || y;
          r === ((s = x.declarations) == null ? void 0 : s.find((O) => O.kind === r.kind && !(O.flags & 524288))) && jX(x), y.parent && jX(y);
        }
        const f = r.kind === 174 ? void 0 : r.body;
        if (xs(f), Tme(r, r4(r)), n(m), rn(r)) {
          const y = iv(r);
          y && y.typeExpression && !Wde(Di(y.typeExpression), r) && We(y.typeExpression.type, p.The_type_of_a_function_declaration_must_match_the_function_s_signature);
        }
        function m() {
          yf(r) || (Nc(f) && !CR(r) && gb(r, Ve), l & 1 && Gp(f) && ro(mp(r)));
        }
      }
      function G1(r) {
        n(s);
        function s() {
          const l = Sr(r);
          let f = hn.get(l.path);
          f || (f = [], hn.set(l.path, f)), f.push(r);
        }
      }
      function x7e(r, s) {
        for (const l of r) switch (l.kind) {
          case 264:
          case 232:
            wlt(l, s), Mme(l, s);
            break;
          case 308:
          case 268:
          case 242:
          case 270:
          case 249:
          case 250:
          case 251:
            E7e(l, s);
            break;
          case 177:
          case 219:
          case 263:
          case 220:
          case 175:
          case 178:
          case 179:
            l.body && E7e(l, s), Mme(l, s);
            break;
          case 174:
          case 180:
          case 181:
          case 185:
          case 186:
          case 266:
          case 265:
            Mme(l, s);
            break;
          case 196:
            Plt(l, s);
            break;
          default:
            E.assertNever(l, "Node should not have been registered for unused identifiers check");
        }
      }
      function k7e(r, s, l) {
        l(r, 0, Kr(va(r) || r, Kx(r) ? p._0_is_declared_but_never_used : p._0_is_declared_but_its_value_is_never_read, s));
      }
      function c7(r) {
        return Fe(r) && On(r).charCodeAt(0) === 95;
      }
      function wlt(r, s) {
        for (const l of r.members) switch (l.kind) {
          case 175:
          case 173:
          case 178:
          case 179:
            if (l.kind === 179 && l.symbol.flags & 32768) break;
            const f = mn(l);
            !f.isReferenced && (vf(l, 2) || Bl(l) && Oi(l.name)) && !(l.flags & 33554432) && s(l, 0, Kr(l.name, p._0_is_declared_but_its_value_is_never_read, Xi(f)));
            break;
          case 177:
            for (const m of l.parameters) !m.symbol.isReferenced && Qn(m, 2) && s(m, 0, Kr(m.name, p.Property_0_is_declared_but_its_value_is_never_read, kc(m.symbol)));
            break;
          case 182:
          case 241:
          case 176:
            break;
          default:
            E.fail("Unexpected class member");
        }
      }
      function Plt(r, s) {
        const { typeParameter: l } = r;
        Rme(l) && s(r, 1, Kr(r, p._0_is_declared_but_its_value_is_never_read, On(l.name)));
      }
      function Mme(r, s) {
        const l = mn(r).declarations;
        if (!l || ws(l) !== r) return;
        const f = Ry(r), m = /* @__PURE__ */ new Set();
        for (const y of f) {
          if (!Rme(y)) continue;
          const x = On(y.name), { parent: O } = y;
          if (O.kind !== 196 && O.typeParameters.every(Rme)) {
            if (b_(m, O)) {
              const J = Sr(O), V = ed(O) ? ez(O) : tz(J, O.typeParameters), Y = O.typeParameters.length === 1 ? [p._0_is_declared_but_its_value_is_never_read, x] : [p.All_type_parameters_are_unused];
              s(y, 1, wl(J, V.pos, V.end - V.pos, ...Y));
            }
          } else s(y, 1, Kr(y, p._0_is_declared_but_its_value_is_never_read, x));
        }
      }
      function Rme(r) {
        return !(ys(r.symbol).isReferenced & 262144) && !c7(r.name);
      }
      function wR(r, s, l, f) {
        const m = String(f(s)), y = r.get(m);
        y ? y[1].push(l) : r.set(m, [s, [l]]);
      }
      function C7e(r) {
        return qn(xm(r), Fi);
      }
      function Alt(r) {
        return Ns(r) ? rp(r.parent) ? !!(r.propertyName && c7(r.name)) : c7(r.name) : o_(r) || (ci(r) && wb(r.parent.parent) || D7e(r)) && c7(r.name);
      }
      function E7e(r, s) {
        const l = /* @__PURE__ */ new Map(), f = /* @__PURE__ */ new Map(), m = /* @__PURE__ */ new Map();
        r.locals.forEach((y) => {
          if (!(y.flags & 262144 ? !(y.flags & 3 && !(y.isReferenced & 3)) : y.isReferenced || y.exportSymbol) && y.declarations) {
            for (const x of y.declarations)
              if (!Alt(x))
                if (D7e(x)) wR(l, Ilt(x), x, Hs);
                else if (Ns(x) && rp(x.parent))
                  (x === ws(x.parent.elements) || !ws(x.parent.elements).dotDotDotToken) && wR(f, x.parent, x, Hs);
                else if (ci(x)) {
                  const O = Q2(x) & 7, J = va(x);
                  (O !== 4 && O !== 6 || !J || !c7(J)) && wR(m, x.parent, x, Hs);
                } else {
                  const O = y.valueDeclaration && C7e(y.valueDeclaration), J = y.valueDeclaration && va(y.valueDeclaration);
                  O && J ? !df(O, O.parent) && !Yy(O) && !c7(J) && (Ns(x) && J0(x.parent) ? wR(f, x.parent, x, Hs) : s(O, 1, Kr(J, p._0_is_declared_but_its_value_is_never_read, kc(y)))) : k7e(x, kc(y), s);
                }
          }
        }), l.forEach(([y, x]) => {
          const O = y.parent;
          if ((y.name ? 1 : 0) + (y.namedBindings ? y.namedBindings.kind === 275 ? 1 : y.namedBindings.elements.length : 0) === x.length) s(O, 0, x.length === 1 ? Kr(O, p._0_is_declared_but_its_value_is_never_read, On(js(x).name)) : Kr(O, p.All_imports_in_import_declaration_are_unused));
          else for (const J of x) k7e(J, On(J.name), s);
        }), f.forEach(([y, x]) => {
          const O = C7e(y.parent) ? 1 : 0;
          if (y.elements.length === x.length) x.length === 1 && y.parent.kind === 261 && y.parent.parent.kind === 262 ? wR(m, y.parent.parent, y.parent, Hs) : s(y, O, x.length === 1 ? Kr(y, p._0_is_declared_but_its_value_is_never_read, PR(js(x).name)) : Kr(y, p.All_destructured_elements_are_unused));
          else for (const J of x) s(J, O, Kr(J, p._0_is_declared_but_its_value_is_never_read, PR(J.name)));
        }), m.forEach(([y, x]) => {
          if (y.declarations.length === x.length) s(y, 0, x.length === 1 ? Kr(js(x).name, p._0_is_declared_but_its_value_is_never_read, PR(js(x).name)) : Kr(y.parent.kind === 244 ? y.parent : y, p.All_variables_are_unused));
          else for (const O of x) s(O, 0, Kr(O, p._0_is_declared_but_its_value_is_never_read, PR(O.name)));
        });
      }
      function Nlt() {
        var r;
        for (const s of Hv) if (!((r = mn(s)) != null && r.isReferenced)) {
          const l = cS(s);
          E.assert(mv(l), "Only parameter declaration should be checked here");
          const f = Kr(s.name, p._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation, Do(s.name), Do(s.propertyName));
          l.type || ts(f, wl(Sr(l), l.end, 0, p.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here, Do(s.propertyName))), Ws.add(f);
        }
      }
      function PR(r) {
        switch (r.kind) {
          case 80:
            return On(r);
          case 208:
          case 207:
            return PR(ns(js(r.elements), Ns).name);
          default:
            return E.assertNever(r);
        }
      }
      function D7e(r) {
        return r.kind === 274 || r.kind === 277 || r.kind === 275;
      }
      function Ilt(r) {
        return r.kind === 274 ? r : r.kind === 275 ? r.parent : r.parent.parent;
      }
      function zX(r) {
        if (r.kind === 242 && b0(r), aB(r)) {
          const s = Zi;
          bt(r.statements, xs), Zi = s;
        } else bt(r.statements, xs);
        r.locals && G1(r);
      }
      function Olt(r) {
        z >= 2 || !dB(r) || r.flags & 33554432 || Nc(r.body) || bt(r.parameters, (s) => {
          s.name && !Ja(s.name) && s.name.escapedText === Xe.escapedName && ny("noEmit", s, p.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters);
        });
      }
      function l7(r, s, l) {
        if (s?.escapedText !== l || r.kind === 173 || r.kind === 172 || r.kind === 175 || r.kind === 174 || r.kind === 178 || r.kind === 179 || r.kind === 304 || r.flags & 33554432 || (hd(r) || bl(r) || p_(r)) && C0(r))
          return !1;
        const f = xm(r);
        return !(Fi(f) && Nc(f.parent.body));
      }
      function Flt(r) {
        cr(r, (s) => MC(s) & 4 ? (r.kind !== 80 ? We(va(r), p.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference) : We(r, p.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference), !0) : !1);
      }
      function Llt(r) {
        cr(r, (s) => MC(s) & 8 ? (r.kind !== 80 ? We(va(r), p.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference) : We(r, p.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference), !0) : !1);
      }
      function Mlt(r, s) {
        if (e.getEmitModuleFormatOfFile(Sr(r)) >= 5 || !s || !l7(r, s, "require") && !l7(r, s, "exports") || Qc(r) && m1(r) !== 1) return;
        const l = Ki(r);
        l.kind === 308 && gf(l) && ny("noEmit", s, p.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module, Do(s), Do(s));
      }
      function Rlt(r, s) {
        if (!s || z >= 4 || !l7(r, s, "Promise") || Qc(r) && m1(r) !== 1) return;
        const l = Ki(r);
        l.kind === 308 && gf(l) && l.flags & 4096 && ny("noEmit", s, p.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions, Do(s), Do(s));
      }
      function jlt(r, s) {
        z <= 8 && (l7(r, s, "WeakMap") || l7(r, s, "WeakSet")) && ty.push(r);
      }
      function Blt(r) {
        MC(Bd(r)) & 1048576 && (E.assert(Bl(r) && Fe(r.name) && typeof r.name.escapedText == "string", "The target of a WeakMap/WeakSet collision check should be an identifier"), ny("noEmit", r, p.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel, r.name.escapedText));
      }
      function Jlt(r, s) {
        s && z >= 2 && z <= 8 && l7(r, s, "Reflect") && _h.push(r);
      }
      function zlt(r) {
        let s = !1;
        if (Hc(r)) {
          for (const l of r.members) if (MC(l) & 2097152) {
            s = !0;
            break;
          }
        } else if (Lo(r))
          MC(r) & 2097152 && (s = !0);
        else {
          const l = Bd(r);
          l && MC(l) & 2097152 && (s = !0);
        }
        s && (E.assert(Bl(r) && Fe(r.name), "The target of a Reflect collision check should be an identifier"), ny("noEmit", r, p.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers, Do(r.name), "Reflect"));
      }
      function QP(r, s) {
        s && (Mlt(r, s), Rlt(r, s), jlt(r, s), Jlt(r, s), Zn(r) ? (YP(s, p.Class_name_cannot_be_0), r.flags & 33554432 || hut(s)) : l1(r) && YP(s, p.Enum_name_cannot_be_0));
      }
      function Wlt(r) {
        if ((Q2(r) & 7) !== 0 || mv(r)) return;
        const s = mn(r);
        if (s.flags & 1) {
          if (!Fe(r.name)) return E.fail();
          const l = Gr(r, r.name.escapedText, 3, void 0, !1);
          if (l && l !== s && l.flags & 2 && qde(l) & 7) {
            const f = dv(l.valueDeclaration, 262), m = f.parent.kind === 244 && f.parent.parent ? f.parent.parent : void 0;
            if (!(m && (m.kind === 242 && Ra(m.parent) || m.kind === 269 || m.kind === 268 || m.kind === 308))) {
              const y = Xi(l);
              We(r, p.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1, y, y);
            }
          }
        }
      }
      function u7(r) {
        return r === fr ? Ve : r === ll ? hl : r;
      }
      function AR(r) {
        var s;
        if (DR(r), Ns(r) || xs(r.type), !r.name) return;
        if (r.name.kind === 168 && (Od(r.name), dS(r) && r.initializer && wc(r.initializer)), Ns(r)) {
          if (r.propertyName && Fe(r.name) && mv(r) && Nc(Kf(r).body)) {
            Hv.push(r);
            return;
          }
          rp(r.parent) && r.dotDotDotToken && z < Rl.ObjectSpreadRest && Fl(r, 4), r.propertyName && r.propertyName.kind === 168 && Od(r.propertyName);
          const m = r.parent.parent, y = No(m, r.dotDotDotToken ? 32 : 0), x = r.propertyName || r.name;
          if (y && !Ja(x)) {
            const O = u0(x);
            if (Cp(O)) {
              const J = ms(y, Ep(O));
              J && (pR(J, void 0, !1), Hde(r, !!m.initializer && m.initializer.kind === 108, !1, y, J));
            }
          }
        }
        if (Ja(r.name) && (r.name.kind === 208 && z < Rl.BindingPatterns && L.downlevelIteration && Fl(r, 512), bt(r.name.elements, xs)), r.initializer && mv(r) && Nc(Kf(r).body)) {
          We(r, p.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);
          return;
        }
        if (Ja(r.name)) {
          if (hde(r)) return;
          const m = dS(r) && r.initializer && r.parent.parent.kind !== 250, y = !_t(r.name.elements, k7(Al));
          if (m || y) {
            const x = ZE(r);
            if (m) {
              const O = wc(r.initializer);
              Q && y ? HIe(O, r) : q2(O, ZE(r), r, r.initializer);
            }
            y && (J0(r.name) ? xy(65, x, $e, r) : Q && HIe(x, r));
          }
          return;
        }
        const l = mn(r);
        if (l.flags & 2097152 && ($y(r) || IK(r))) {
          XX(r);
          return;
        }
        r.name.kind === 10 && We(r.name, p.A_bigint_literal_cannot_be_used_as_a_property_name);
        const f = u7(ft(l));
        if (r === l.valueDeclaration) {
          const m = dS(r) && sA(r);
          if (m && !(rn(r) && bs(m) && (m.properties.length === 0 || Ky(r.name)) && ((s = l.exports) != null && s.size)) && r.parent.parent.kind !== 250) {
            const y = wc(m);
            q2(y, f, r, m, void 0);
            const x = Q2(r) & 7;
            if (x === 6) {
              const O = Ntt(!0), J = iAe(!0);
              if (O !== Yi && J !== Yi) {
                const V = Yn([
                  O,
                  J,
                  vr,
                  $e
                ]);
                zu(h8(y, r), V, m, p.The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined);
              }
            } else if (x === 4) {
              const O = iAe(!0);
              if (O !== Yi) {
                const J = Yn([
                  O,
                  vr,
                  $e
                ]);
                zu(h8(y, r), J, m, p.The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined);
              }
            }
          }
          l.declarations && l.declarations.length > 1 && _t(l.declarations, (y) => y !== r && rD(y) && !P7e(y, r)) && We(r.name, p.All_declarations_of_0_must_have_identical_modifiers, Do(r.name));
        } else {
          const m = u7(ZE(r));
          !hi(f) && !hi(m) && !Dh(f, m) && !(l.flags & 67108864) && w7e(l.valueDeclaration, f, r, m), dS(r) && r.initializer && q2(wc(r.initializer), m, r, r.initializer, void 0), l.valueDeclaration && !P7e(r, l.valueDeclaration) && We(r.name, p.All_declarations_of_0_must_have_identical_modifiers, Do(r.name));
        }
        r.kind !== 173 && r.kind !== 172 && (a7(r), (r.kind === 261 || r.kind === 209) && Wlt(r), QP(r, r.name));
      }
      function w7e(r, s, l, f) {
        const m = va(l), y = l.kind === 173 || l.kind === 172 ? p.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2 : p.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2, x = Do(m), O = We(m, y, x, Xr(s), Xr(f));
        r && ts(O, Kr(r, p._0_was_also_declared_here, x));
      }
      function P7e(r, s) {
        if (r.kind === 170 && s.kind === 261 || r.kind === 261 && s.kind === 170) return !0;
        if (Mx(r) !== Mx(s)) return !1;
        const l = 1358;
        return Wx(r, l) === Wx(s, l);
      }
      function Ult(r) {
        var s, l;
        (s = sn) == null || s.push(sn.Phase.Check, "checkVariableDeclaration", {
          kind: r.kind,
          pos: r.pos,
          end: r.end,
          path: r.tracingPath
        }), Cft(r), AR(r), (l = sn) == null || l.pop();
      }
      function Vlt(r) {
        return Tft(r), AR(r);
      }
      function WX(r) {
        const s = x0(r) & 7;
        (s === 4 || s === 6) && z < Rl.UsingAndAwaitUsing && Fl(r, 16777216), bt(r.declarations, xs);
      }
      function qlt(r) {
        !Ah(r) && !uge(r.declarationList) && Eft(r), WX(r.declarationList);
      }
      function Glt(r) {
        b0(r), aa(r.expression);
      }
      function Hlt(r) {
        b0(r);
        const s = _7(r.expression);
        jme(r.expression, s, r.thenStatement), xs(r.thenStatement), r.thenStatement.kind === 243 && We(r.thenStatement, p.The_body_of_an_if_statement_cannot_be_the_empty_statement), xs(r.elseStatement);
      }
      function jme(r, s, l) {
        if (!Q) return;
        f(r, l);
        function f(y, x) {
          for (y = Gs(y), m(y, x); un(y) && (y.operatorToken.kind === 57 || y.operatorToken.kind === 61); )
            y = Gs(y.left), m(y, x);
        }
        function m(y, x) {
          const O = DA(y) ? Gs(y.right) : y;
          if ($g(O)) return;
          if (DA(O)) {
            f(O, x);
            return;
          }
          const J = O === y ? s : aa(O);
          if (J.flags & 32768 && Ln(O) && (Pn(O.expression).resolvedSymbol ?? it).flags & 384) {
            We(O, p.This_condition_will_always_return_0, J.value ? "true" : "false");
            return;
          }
          const V = Ln(O) && Y8e(O.expression);
          if (!lm(J, 4194304) || V) return;
          const Y = Pa(J, 0), be = !!$P(J);
          if (Y.length === 0 && !be) return;
          const me = Fe(O) ? O : Ln(O) ? O.name : void 0, Je = me && Wp(me);
          !Je && !be || Je && un(y.parent) && Xlt(y.parent, Je) || Je && x && $lt(y, x, me, Je) || (be ? am(O, !0, p.This_condition_will_always_return_true_since_this_0_is_always_defined, ab(J)) : We(O, p.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead));
        }
      }
      function $lt(r, s, l, f) {
        return !!Fa(s, function m(y) {
          if (Fe(y)) {
            const x = Wp(y);
            if (x && x === f) {
              if (Fe(r) || Fe(l) && un(l.parent)) return !0;
              let O = l.parent, J = y.parent;
              for (; O && J; ) {
                if (Fe(O) && Fe(J) || O.kind === 110 && J.kind === 110) return Wp(O) === Wp(J);
                if (Ln(O) && Ln(J)) {
                  if (Wp(O.name) !== Wp(J.name)) return !1;
                  J = J.expression, O = O.expression;
                } else if (za(O) && za(J))
                  J = J.expression, O = O.expression;
                else return !1;
              }
            }
          }
          return Fa(y, m);
        });
      }
      function Xlt(r, s) {
        for (; un(r) && r.operatorToken.kind === 56; ) {
          if (Fa(r.right, function l(f) {
            if (Fe(f)) {
              const m = Wp(f);
              if (m && m === s) return !0;
            }
            return Fa(f, l);
          })) return !0;
          r = r.parent;
        }
        return !1;
      }
      function Qlt(r) {
        b0(r), xs(r.statement), _7(r.expression);
      }
      function Ylt(r) {
        b0(r), _7(r.expression), xs(r.statement);
      }
      function Bme(r, s) {
        if (r.flags & 16) We(s, p.An_expression_of_type_void_cannot_be_tested_for_truthiness);
        else {
          const l = Jme(s);
          l !== 3 && We(s, l === 1 ? p.This_kind_of_expression_is_always_truthy : p.This_kind_of_expression_is_always_falsy);
        }
        return r;
      }
      function Jme(r) {
        switch (r = Ic(r), r.kind) {
          case 9:
            return r.text === "0" || r.text === "1" ? 3 : 1;
          case 210:
          case 220:
          case 10:
          case 232:
          case 219:
          case 285:
          case 286:
          case 211:
          case 14:
            return 1;
          case 223:
          case 106:
            return 2;
          case 15:
          case 11:
            return r.text ? 1 : 2;
          case 228:
            return Jme(r.whenTrue) | Jme(r.whenFalse);
          case 80:
            return t_(r) === ue ? 2 : 3;
        }
        return 3;
      }
      function _7(r, s) {
        return Bme(aa(r, s), r);
      }
      function Zlt(r) {
        b0(r) || r.initializer && r.initializer.kind === 262 && uge(r.initializer), r.initializer && (r.initializer.kind === 262 ? WX(r.initializer) : aa(r.initializer)), r.condition && _7(r.condition), r.incrementor && aa(r.incrementor), xs(r.statement), r.locals && G1(r);
      }
      function Klt(r) {
        C5e(r);
        const s = C5(r);
        if (r.awaitModifier ? s && Bc(s) ? sr(r.awaitModifier, p.for_await_loops_cannot_be_used_inside_a_class_static_block) : (Gc(s) & 6) === 2 && z < Rl.ForAwaitOf && Fl(r, 16384) : L.downlevelIteration && z < Rl.ForOf && Fl(r, 256), r.initializer.kind === 262) WX(r.initializer);
        else {
          const l = r.initializer, f = NR(r);
          if (l.kind === 210 || l.kind === 211) ix(l, f || rt);
          else {
            const m = aa(l);
            t7(l, p.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access, p.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access), f && q2(f, m, l, r.expression);
          }
        }
        xs(r.statement), r.locals && G1(r);
      }
      function eut(r) {
        C5e(r);
        const s = $de(aa(r.expression));
        if (r.initializer.kind === 262) {
          const l = r.initializer.declarations[0];
          l && Ja(l.name) && We(l.name, p.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern), WX(r.initializer);
        } else {
          const l = r.initializer, f = aa(l);
          l.kind === 210 || l.kind === 211 ? We(l, p.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern) : qa(hrt(s), f) ? t7(l, p.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access, p.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access) : We(l, p.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any);
        }
        (s === ct || !Cu(s, 118095872)) && We(r.expression, p.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0, Xr(s)), xs(r.statement), r.locals && G1(r);
      }
      function NR(r) {
        return xy(r.awaitModifier ? 15 : 13, p4(r.expression), $e, r.expression);
      }
      function xy(r, s, l, f) {
        return Bi(s) ? s : zme(r, s, l, f, !0) || Ve;
      }
      function zme(r, s, l, f, m) {
        const y = (r & 2) !== 0;
        if (s === ct) {
          f && Vme(f, s, y);
          return;
        }
        const x = NM(!1) !== Ma, O = z >= 2 && x, J = !O && L.downlevelIteration, V = L.noUncheckedIndexedAccess && !!(r & 128);
        if (O || J || y) {
          const gt = VX(s, r, O ? f : void 0);
          if (m && gt) {
            const ht = r & 8 ? p.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0 : r & 32 ? p.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0 : r & 64 ? p.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0 : r & 16 ? p.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0 : void 0;
            ht && zu(l, gt.nextType, f, ht);
          }
          if (gt || O) return V ? U8(gt && gt.yieldType) : gt && gt.yieldType;
        }
        let Y = s, be = !1;
        if (r & 4) {
          if (Y.flags & 134217728) {
            const gt = s.types, ht = dn(gt, (ir) => !(ir.flags & 12583968));
            ht !== gt && (Y = Yn(ht, 2));
          } else Y.flags & 12583968 && (Y = ct);
          if (be = Y !== s, be && Y.flags & 262144)
            return V ? U8(Cr) : Cr;
        }
        if (!Sy(Y)) {
          if (f) {
            const [gt, ht] = Je(!!(r & 4) && !be, J);
            am(f, ht && !!$P(Y), gt, Xr(Y));
          }
          return be ? V ? U8(Cr) : Cr : void 0;
        }
        const me = cb(Y, et);
        if (be && me)
          return me.flags & 12583968 && !L.noUncheckedIndexedAccess ? Cr : Yn(V ? [
            me,
            Cr,
            $e
          ] : [me, Cr], 2);
        return r & 128 ? U8(me) : me;
        function Je(gt, ht) {
          var ir;
          return ht ? gt ? [p.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator, !0] : [p.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator, !0] : Wme(r, 0, s, void 0) ? [p.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher, !1] : tut((ir = s.symbol) == null ? void 0 : ir.escapedName) ? [p.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher, !0] : gt ? [p.Type_0_is_not_an_array_type_or_a_string_type, !0] : [p.Type_0_is_not_an_array_type, !0];
        }
      }
      function tut(r) {
        switch (r) {
          case "Float32Array":
          case "Float64Array":
          case "Int16Array":
          case "Int32Array":
          case "Int8Array":
          case "NodeList":
          case "Uint16Array":
          case "Uint32Array":
          case "Uint8Array":
          case "Uint8ClampedArray":
            return !0;
        }
        return !1;
      }
      function Wme(r, s, l, f) {
        if (Bi(l)) return;
        const m = VX(l, r, f);
        return m && m[Y1e(s)];
      }
      function vb(r = ct, s = ct, l = Re) {
        if (r.flags & 402431 && s.flags & 262167 && l.flags & 262167) {
          const f = ld([
            r,
            s,
            l
          ]);
          let m = gl.get(f);
          return m || (m = {
            yieldType: r,
            returnType: s,
            nextType: l
          }, gl.set(f, m)), m;
        }
        return {
          yieldType: r,
          returnType: s,
          nextType: l
        };
      }
      function A7e(r) {
        let s, l, f;
        for (const m of r)
          if (!(m === void 0 || m === Os)) {
            if (m === Ao) return Ao;
            s = kr(s, m.yieldType), l = kr(l, m.returnType), f = kr(f, m.nextType);
          }
        return s || l || f ? vb(s && Yn(s), l && Yn(l), f && Ss(f)) : Os;
      }
      function UX(r, s) {
        return r[s];
      }
      function Ph(r, s, l) {
        return r[s] = l;
      }
      function VX(r, s, l) {
        var f, m;
        if (r = dp(r), Bi(r)) return Ao;
        if (!(r.flags & 134217728)) {
          const V = l ? {
            errors: void 0,
            skipLogging: !0
          } : void 0, Y = N7e(r, s, l, V);
          if (Y === Os) {
            if (l) {
              const be = Vme(l, r, !!(s & 2));
              V?.errors && ts(be, ...V.errors);
            }
            return;
          } else if ((f = V?.errors) != null && f.length) for (const be of V.errors) Ws.add(be);
          return Y;
        }
        const y = s & 2 ? "iterationTypesOfAsyncIterable" : "iterationTypesOfIterable", x = UX(r, y);
        if (x) return x === Os ? void 0 : x;
        let O;
        for (const V of r.types) {
          const Y = l ? { errors: void 0 } : void 0, be = N7e(V, s, l, Y);
          if (be === Os) {
            if (l) {
              const me = Vme(l, r, !!(s & 2));
              Y?.errors && ts(me, ...Y.errors);
            }
            Ph(r, y, Os);
            return;
          } else if ((m = Y?.errors) != null && m.length) for (const me of Y.errors) Ws.add(me);
          O = kr(O, be);
        }
        const J = O ? A7e(O) : Os;
        return Ph(r, y, J), J === Os ? void 0 : J;
      }
      function Ume(r, s) {
        if (r === Os) return Os;
        if (r === Ao) return Ao;
        const { yieldType: l, returnType: f, nextType: m } = r;
        return s && ppe(!0), vb(OC(l, s) || Ve, OC(f, s) || Ve, m);
      }
      function N7e(r, s, l, f) {
        if (Bi(r)) return Ao;
        let m = !1;
        if (s & 2) {
          let y = I7e(r, Su) || O7e(r, Su);
          if (y) if (y === Os && l) m = !0;
          else return s & 8 ? Ume(y, l) : y;
          if (y = L7e(r, Su, l, f, m), y !== Os) return y;
        }
        if (s & 1) {
          let y = I7e(r, rf) || O7e(r, rf);
          if (y) if (y === Os && l) m = !0;
          else if (s & 2) {
            if (y !== Os)
              return y = Ume(y, l), m ? y : Ph(r, "iterationTypesOfAsyncIterable", y);
          } else return y;
          if (y = L7e(r, rf, l, f, m), y !== Os) return s & 2 ? (y = Ume(y, l), m ? y : Ph(r, "iterationTypesOfAsyncIterable", y)) : y;
        }
        return Os;
      }
      function I7e(r, s) {
        return UX(r, s.iterableCacheKey);
      }
      function O7e(r, s) {
        if (ti(r, s.getGlobalIterableType(!1)) || ti(r, s.getGlobalIteratorObjectType(!1)) || ti(r, s.getGlobalIterableIteratorType(!1)) || ti(r, s.getGlobalGeneratorType(!1))) {
          const [l, f, m] = Vo(r);
          return Ph(r, s.iterableCacheKey, vb(s.resolveIterationType(l, void 0) || l, s.resolveIterationType(f, void 0) || f, m));
        }
        if (Wn(r, s.getGlobalBuiltinIteratorTypes())) {
          const [l] = Vo(r), f = fpe(), m = Re;
          return Ph(r, s.iterableCacheKey, vb(s.resolveIterationType(l, void 0) || l, s.resolveIterationType(f, void 0) || f, m));
        }
      }
      function F7e(r) {
        const s = K3e(!1), l = s && xn(ft(s), mc(r));
        return l && Cp(l) ? Ep(l) : `__@${r}`;
      }
      function L7e(r, s, l, f, m) {
        const y = ms(r, F7e(s.iteratorSymbolName)), x = y && !(y.flags & 16777216) ? ft(y) : void 0;
        if (Bi(x)) return m ? Ao : Ph(r, s.iterableCacheKey, Ao);
        const O = x ? Pa(x, 0) : void 0, J = dn(O, (Y) => fm(Y) === 0);
        if (!_t(J))
          return l && _t(O) && zu(r, s.getGlobalIterableType(!0), l, void 0, void 0, f), m ? Os : Ph(r, s.iterableCacheKey, Os);
        const V = M7e(Ss(or(J, ro)), s, l, f, m) ?? Os;
        return m ? V : Ph(r, s.iterableCacheKey, V);
      }
      function Vme(r, s, l) {
        const f = l ? p.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator : p.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator;
        return am(r, !!$P(s) || !l && oN(r.parent) && r.parent.expression === r && AM(!1) !== Ma && qa(s, LP(AM(!1), [
          Ve,
          Ve,
          Ve
        ])), f, Xr(s));
      }
      function rut(r, s, l, f) {
        return M7e(r, s, l, f, !1);
      }
      function M7e(r, s, l, f, m) {
        if (Bi(r)) return Ao;
        let y = nut(r, s) || iut(r, s);
        return y === Os && l && (y = void 0, m = !0), y ?? (y = cut(r, s, l, f, m)), y === Os ? void 0 : y;
      }
      function nut(r, s) {
        return UX(r, s.iteratorCacheKey);
      }
      function iut(r, s) {
        if (ti(r, s.getGlobalIterableIteratorType(!1)) || ti(r, s.getGlobalIteratorType(!1)) || ti(r, s.getGlobalIteratorObjectType(!1)) || ti(r, s.getGlobalGeneratorType(!1))) {
          const [l, f, m] = Vo(r);
          return Ph(r, s.iteratorCacheKey, vb(l, f, m));
        }
        if (Wn(r, s.getGlobalBuiltinIteratorTypes())) {
          const [l] = Vo(r), f = fpe(), m = Re;
          return Ph(r, s.iteratorCacheKey, vb(l, f, m));
        }
      }
      function R7e(r, s) {
        const l = xn(r, "done") || wt;
        return qa(s === 0 ? wt : Ir, l);
      }
      function aut(r) {
        return R7e(r, 0);
      }
      function sut(r) {
        return R7e(r, 1);
      }
      function out(r) {
        if (Bi(r)) return Ao;
        const s = UX(r, "iterationTypesOfIteratorResult");
        if (s) return s;
        if (ti(r, Ptt(!1))) {
          const x = Vo(r)[0];
          return Ph(r, "iterationTypesOfIteratorResult", vb(x, void 0, void 0));
        }
        if (ti(r, Att(!1))) {
          const x = Vo(r)[0];
          return Ph(r, "iterationTypesOfIteratorResult", vb(void 0, x, void 0));
        }
        const l = rl(r, aut), f = l !== ct ? xn(l, "value") : void 0, m = rl(r, sut), y = m !== ct ? xn(m, "value") : void 0;
        return !f && !y ? Ph(r, "iterationTypesOfIteratorResult", Os) : Ph(r, "iterationTypesOfIteratorResult", vb(f, y || Qt, void 0));
      }
      function qme(r, s, l, f, m) {
        var y, x, O, J;
        const V = ms(r, l);
        if (!V && l !== "next") return;
        const Y = V && !(l === "next" && V.flags & 16777216) ? l === "next" ? ft(V) : zp(ft(V), 2097152) : void 0;
        if (Bi(Y)) return Ao;
        const be = Y ? Pa(Y, 0) : Te;
        if (be.length === 0) {
          if (f) {
            const Hr = l === "next" ? s.mustHaveANextMethodDiagnostic : s.mustBeAMethodDiagnostic;
            m ? (m.errors ?? (m.errors = []), m.errors.push(Kr(f, Hr, l))) : We(f, Hr, l);
          }
          return l === "next" ? Os : void 0;
        }
        if (Y?.symbol && be.length === 1) {
          const Hr = s.getGlobalGeneratorType(!1), lr = s.getGlobalIteratorType(!1), ur = ((x = (y = Hr.symbol) == null ? void 0 : y.members) == null ? void 0 : x.get(l)) === Y.symbol, En = !ur && ((J = (O = lr.symbol) == null ? void 0 : O.members) == null ? void 0 : J.get(l)) === Y.symbol;
          if (ur || En) {
            const si = ur ? Hr : lr, { mapper: Ii } = Y;
            return vb(by(si.typeParameters[0], Ii), by(si.typeParameters[1], Ii), l === "next" ? by(si.typeParameters[2], Ii) : void 0);
          }
        }
        let me, Je;
        for (const Hr of be)
          l !== "throw" && _t(Hr.parameters) && (me = kr(me, _m(Hr, 0))), Je = kr(Je, ro(Hr));
        let gt, ht;
        if (l !== "throw") {
          const Hr = me ? Yn(me) : Re;
          if (l === "next") ht = Hr;
          else if (l === "return") {
            const lr = s.resolveIterationType(Hr, f) || Ve;
            gt = kr(gt, lr);
          }
        }
        let ir;
        const mr = Je ? Ss(Je) : ct, br = out(s.resolveIterationType(mr, f) || Ve);
        return br === Os ? (f && (m ? (m.errors ?? (m.errors = []), m.errors.push(Kr(f, s.mustHaveAValueDiagnostic, l))) : We(f, s.mustHaveAValueDiagnostic, l)), ir = Ve, gt = kr(gt, Ve)) : (ir = br.yieldType, gt = kr(gt, br.returnType)), vb(ir, Yn(gt), ht);
      }
      function cut(r, s, l, f, m) {
        const y = A7e([
          qme(r, s, "next", l, f),
          qme(r, s, "return", l, f),
          qme(r, s, "throw", l, f)
        ]);
        return m ? y : Ph(r, s.iteratorCacheKey, y);
      }
      function ky(r, s, l) {
        if (Bi(s)) return;
        const f = Gme(s, l);
        return f && f[Y1e(r)];
      }
      function Gme(r, s) {
        if (Bi(r)) return Ao;
        const l = s ? 2 : 1, f = s ? Su : rf;
        return VX(r, l, void 0) || rut(r, f, void 0, void 0);
      }
      function lut(r) {
        b0(r) || Sft(r);
      }
      function IR(r, s) {
        const l = !!(s & 1), f = !!(s & 2);
        if (l) {
          const m = ky(1, r, f);
          return m ? f ? v0(XP(m)) : m : rt;
        }
        return f ? v0(r) || rt : r;
      }
      function j7e(r, s) {
        const l = IR(s, Gc(r));
        return !!(l && (Wc(l, 16) || l.flags & 5));
      }
      function uut(r) {
        if (b0(r)) return;
        const s = C5(r);
        if (s && Bc(s)) {
          Ll(r, p.A_return_statement_cannot_be_used_inside_a_class_static_block);
          return;
        }
        if (!s) {
          Ll(r, p.A_return_statement_can_only_be_used_within_a_function_body);
          return;
        }
        const l = ro(mp(s));
        if (Q || r.expression || l.flags & 262144) {
          const f = r.expression ? wc(r.expression) : $e;
          if (s.kind === 179)
            r.expression && We(r, p.Setters_cannot_return_a_value);
          else if (s.kind === 177) {
            const m = r.expression ? wc(r.expression) : $e;
            r.expression && !q2(m, l, r, r.expression) && We(r, p.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);
          } else r4(s) && qX(s, IR(l, Gc(s)) ?? l, r, r.expression, f);
        } else s.kind !== 177 && L.noImplicitReturns && !j7e(s, l) && We(r, p.Not_all_code_paths_return_a_value);
      }
      function qX(r, s, l, f, m, y = !1) {
        const x = rn(l), O = Gc(r);
        if (f) {
          const be = Gs(f, x);
          if (MS(be)) {
            qX(r, s, l, be.whenTrue, aa(be.whenTrue), !0), qX(r, s, l, be.whenFalse, aa(be.whenFalse), !0);
            return;
          }
        }
        const J = l.kind === 254, V = O & 2 ? ER(m, !1, l, p.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member) : m, Y = f && kX(f);
        q2(V, s, J && !y ? l : Y, Y);
      }
      function _ut(r) {
        b0(r) || r.flags & 65536 && Ll(r, p.with_statements_are_not_allowed_in_an_async_function_block), aa(r.expression);
        const s = Sr(r);
        if (!H1(s)) {
          const l = _g(s, r.pos).start, f = r.statement.pos;
          bb(s, l, f - l, p.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any);
        }
      }
      function fut(r) {
        b0(r);
        let s, l = !1;
        const f = aa(r.expression);
        bt(r.caseBlock.clauses, (m) => {
          m.kind === 298 && !l && (s === void 0 ? s = m : (sr(m, p.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement), l = !0)), m.kind === 297 && n(y(m)), bt(m.statements, xs), L.noFallthroughCasesInSwitch && m.fallthroughFlowNode && tR(m.fallthroughFlowNode) && We(m, p.Fallthrough_case_in_switch);
          function y(x) {
            return () => {
              const O = aa(x.expression);
              Eme(f, O) || eNe(O, f, x.expression, void 0);
            };
          }
        }), r.caseBlock.locals && G1(r.caseBlock);
      }
      function put(r) {
        b0(r) || cr(r.parent, (s) => Ra(s) ? "quit" : s.kind === 257 && s.label.escapedText === r.label.escapedText ? (sr(r.label, p.Duplicate_label_0, uc(r.label)), !0) : !1), r.label.flags & 1073741824 && L.allowUnusedLabels !== !0 && uu(L.allowUnusedLabels === !1, r.label, p.Unused_label), xs(r.statement);
      }
      function dut(r) {
        b0(r) || Fe(r.expression) && !r.expression.escapedText && Lft(r, p.Line_break_not_permitted_here), r.expression && aa(r.expression);
      }
      function mut(r) {
        b0(r), zX(r.tryBlock);
        const s = r.catchClause;
        if (s) {
          if (s.variableDeclaration) {
            const l = s.variableDeclaration;
            AR(l);
            const f = _l(l);
            if (f) {
              const m = Di(f);
              m && !(m.flags & 3) && Ll(f, p.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified);
            } else if (l.initializer) Ll(l.initializer, p.Catch_clause_variable_cannot_have_an_initializer);
            else {
              const m = s.block.locals;
              m && Vg(s.locals, (y) => {
                const x = m.get(y);
                x?.valueDeclaration && (x.flags & 2) !== 0 && sr(x.valueDeclaration, p.Cannot_redeclare_identifier_0_in_catch_clause, Ti(y));
              });
            }
          }
          zX(s.block);
        }
        r.finallyBlock && zX(r.finallyBlock);
      }
      function GX(r, s, l) {
        const f = Bu(r);
        if (f.length === 0) return;
        for (const y of hy(r)) l && y.flags & 4194304 || B7e(r, y, kC(y, 19456, !0), kn(y));
        const m = s.valueDeclaration;
        if (m && Zn(m)) {
          for (const y of m.members) if ((!l && !es(y) || l && es(y)) && !t4(y)) {
            const x = mn(y);
            B7e(r, x, Ol(y.name.expression), kn(x));
          }
        }
        if (f.length > 1) for (const y of f) gut(r, y);
      }
      function B7e(r, s, l, f) {
        const m = s.valueDeclaration, y = va(m);
        if (y && Oi(y)) return;
        const x = Kfe(r, l), O = yn(r) & 2 ? Ho(r.symbol, 265) : void 0, J = m && m.kind === 227 || y && y.kind === 168 ? m : void 0, V = ju(s) === r.symbol ? m : void 0;
        for (const Y of x) {
          const be = Y.declaration && ju(mn(Y.declaration)) === r.symbol ? Y.declaration : void 0, me = V || be || (O && !_t(Nd(r), (Je) => !!R2(Je, s.escapedName) && !!cb(Je, Y.keyType)) ? O : void 0);
          if (me && !qa(f, Y.type)) {
            const Je = Xv(me, p.Property_0_of_type_1_is_not_assignable_to_2_index_type_3, Xi(s), Xr(f), Xr(Y.keyType), Xr(Y.type));
            J && me !== J && ts(Je, Kr(J, p._0_is_declared_here, Xi(s))), Ws.add(Je);
          }
        }
      }
      function gut(r, s) {
        const l = s.declaration, f = Kfe(r, s.keyType), m = yn(r) & 2 ? Ho(r.symbol, 265) : void 0, y = l && ju(mn(l)) === r.symbol ? l : void 0;
        for (const x of f) {
          if (x === s) continue;
          const O = x.declaration && ju(mn(x.declaration)) === r.symbol ? x.declaration : void 0, J = y || O || (m && !_t(Nd(r), (V) => !!kh(V, s.keyType) && !!cb(V, x.keyType)) ? m : void 0);
          J && !qa(s.type, x.type) && We(J, p._0_index_type_1_is_not_assignable_to_2_index_type_3, Xr(s.keyType), Xr(s.type), Xr(x.keyType), Xr(x.type));
        }
      }
      function YP(r, s) {
        switch (r.escapedText) {
          case "any":
          case "unknown":
          case "never":
          case "number":
          case "bigint":
          case "boolean":
          case "string":
          case "symbol":
          case "void":
          case "object":
          case "undefined":
            We(r, s, r.escapedText);
        }
      }
      function hut(r) {
        r.escapedText === "Object" && e.getEmitModuleFormatOfFile(Sr(r)) < 5 && We(r, p.Class_name_cannot_be_Object_when_targeting_ES5_and_above_with_module_0, mx[H]);
      }
      function yut(r) {
        const s = dn(av(r), np);
        if (!It(s)) return;
        const l = rn(r), f = /* @__PURE__ */ new Set(), m = /* @__PURE__ */ new Set();
        if (bt(r.parameters, ({ name: y }, x) => {
          Fe(y) && f.add(y.escapedText), Ja(y) && m.add(x);
        }), tpe(r)) {
          const y = s.length - 1, x = s[y];
          l && x && Fe(x.name) && x.typeExpression && x.typeExpression.type && !f.has(x.name.escapedText) && !m.has(y) && !Jp(Di(x.typeExpression.type)) && We(x.name, p.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type, On(x.name));
        } else bt(s, ({ name: y, isNameFirst: x }, O) => {
          m.has(O) || Fe(y) && f.has(y.escapedText) || (k_(y) ? l && We(y, p.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1, mf(y), mf(y.left)) : x || uu(l, y, p.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name, On(y)));
        });
      }
      function OR(r) {
        let s = !1;
        if (r) for (let f = 0; f < r.length; f++) {
          const m = r[f];
          a7e(m), n(l(m, f));
        }
        function l(f, m) {
          return () => {
            f.default ? (s = !0, vut(f.default, r, m)) : s && We(f, p.Required_type_parameters_may_not_follow_optional_type_parameters);
            for (let y = 0; y < m; y++) r[y].symbol === f.symbol && We(f.name, p.Duplicate_identifier_0, Do(f.name));
          };
        }
      }
      function vut(r, s, l) {
        f(r);
        function f(m) {
          if (m.kind === 184) {
            const y = T$(m);
            if (y.flags & 524288)
              for (let x = l; x < s.length; x++) y.symbol === mn(s[x]) && We(m, p.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters);
          }
          Fa(m, f);
        }
      }
      function J7e(r) {
        if (r.declarations && r.declarations.length === 1) return;
        const s = Wi(r);
        if (!s.typeParametersChecked) {
          s.typeParametersChecked = !0;
          const l = Dut(r);
          if (!l || l.length <= 1) return;
          if (!z7e(l, Oo(r).localTypeParameters, Ry)) {
            const f = Xi(r);
            for (const m of l) We(m.name, p.All_declarations_of_0_must_have_identical_type_parameters, f);
          }
        }
      }
      function z7e(r, s, l) {
        const f = It(s), m = wg(s);
        for (const y of r) {
          const x = l(y), O = x.length;
          if (O < m || O > f) return !1;
          for (let J = 0; J < O; J++) {
            const V = x[J], Y = s[J];
            if (V.name.escapedText !== Y.symbol.escapedName) return !1;
            const be = $C(V), me = be && Di(be), Je = g_(Y);
            if (me && Je && !Dh(me, Je)) return !1;
            const gt = V.default && Di(V.default), ht = j2(Y);
            if (gt && ht && !Dh(gt, ht)) return !1;
          }
        }
        return !0;
      }
      function W7e(r) {
        const s = !U && z < Rl.ClassAndClassElementDecorators && w0(!1, r), l = z < Rl.PrivateNamesAndClassStaticBlocks || z < Rl.ClassAndClassElementDecorators, f = !ie;
        if (s || l)
          for (const m of r.members) {
            if (s && JB(!1, m, r)) return ul(My(r)) ?? r;
            if (l) {
              if (Bc(m)) return m;
              if (es(m) && (qu(m) || f && MN(m)))
                return m;
            }
          }
      }
      function but(r) {
        if (r.name) return;
        const s = dre(r);
        if (!iJ(s)) return;
        const l = !U && z < Rl.ClassAndClassElementDecorators;
        let f;
        l && w0(!1, r) ? f = ul(My(r)) ?? r : f = W7e(r), f && (Fl(f, 4194304), (ol(s) || ga(s) || Ns(s)) && _s(s.name) && Fl(f, 8388608));
      }
      function Sut(r) {
        return U7e(r), FC(r), but(r), ft(mn(r));
      }
      function Tut(r) {
        bt(r.members, xs), G1(r);
      }
      function xut(r) {
        const s = xr(r.modifiers, pl);
        U && s && _t(r.members, (l) => vl(l) && qu(l)) && sr(s, p.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator), !r.name && !Qn(r, 2048) && Ll(r, p.A_class_declaration_without_the_default_modifier_must_have_a_name), U7e(r), bt(r.members, xs), G1(r);
      }
      function U7e(r) {
        sft(r), DR(r), QP(r, r.name), OR(Ry(r)), a7(r);
        const s = mn(r), l = Oo(s), f = Of(l), m = ft(s);
        J7e(s), jX(s), Lct(r), r.flags & 33554432 || Mct(r);
        const y = Jd(r);
        if (y) {
          bt(y.typeArguments, xs), z < Rl.Classes && Fl(y.parent, 1);
          const J = Mb(r);
          J && J !== y && aa(J.expression);
          const V = Nd(l);
          V.length && n(() => {
            const Y = V[0], be = LT(l), me = h_(be);
            if (Cut(me, y), xs(y.expression), _t(y.typeArguments)) {
              bt(y.typeArguments, xs);
              for (const gt of HPe(me, y.typeArguments, y)) if (!f7e(y, gt.typeParameters)) break;
            }
            const Je = Of(Y, l.thisType);
            zu(f, Je, void 0) ? zu(m, $Ae(me), r.name || r, p.Class_static_side_0_incorrectly_extends_base_class_static_side_1) : G7e(r, f, Je, p.Class_0_incorrectly_extends_base_class_1), be.flags & 34078720 && (j1(m) ? Pa(be, 1).some((gt) => gt.flags & 4) && !Qn(r, 64) && We(r.name || r, p.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract) : We(r.name || r, p.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)), !(me.symbol && me.symbol.flags & 32) && !(be.flags & 34078720) && bt(Rfe(me, y.typeArguments, y), (gt) => !ng(gt.declaration) && !Dh(ro(gt), Y)) && We(y.expression, p.Base_constructors_must_all_have_the_same_return_type), wut(l, Y);
          });
        }
        kut(r, l, f, m);
        const x = f6(r);
        if (x) for (const J of x)
          (!go(J.expression) || Vu(J.expression)) && We(J.expression, p.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments), Ome(J), n(O(J));
        n(() => {
          GX(l, s), GX(m, s, !0), Nme(r), Nut(r);
        });
        function O(J) {
          return () => {
            const V = dp(Di(J));
            if (!hi(V)) if (bM(V)) {
              const Y = V.symbol && V.symbol.flags & 32 ? p.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass : p.Class_0_incorrectly_implements_interface_1, be = Of(V, l.thisType);
              zu(f, be, void 0) || G7e(r, f, be, Y);
            } else We(J, p.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members);
          };
        }
      }
      function kut(r, s, l, f) {
        const m = Jd(r) && Nd(s), y = m?.length ? Of(js(m), s.thisType) : void 0, x = LT(s);
        for (const O of r.members)
          SJ(O) || (yc(O) && bt(O.parameters, (J) => {
            df(J, O) && V7e(r, f, x, y, s, l, J, !0);
          }), V7e(r, f, x, y, s, l, O, !1));
      }
      function V7e(r, s, l, f, m, y, x, O, J = !0) {
        const V = x.name && Wp(x.name) || Wp(x);
        return V ? q7e(r, s, l, f, m, y, eO(x), Jb(x), es(x), O, V, J ? x : void 0) : 0;
      }
      function q7e(r, s, l, f, m, y, x, O, J, V, Y, be) {
        const me = rn(r), Je = !!(r.flags & 33554432);
        if (x && Y?.valueDeclaration && al(Y.valueDeclaration) && Y.valueDeclaration.name && o3e(Y.valueDeclaration.name))
          return We(be, me ? p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_name_is_dynamic : p.This_member_cannot_have_an_override_modifier_because_its_name_is_dynamic), 2;
        if (f && (x || L.noImplicitOverride)) {
          const gt = J ? s : y, ht = J ? l : f, ir = ms(gt, Y.escapedName), mr = ms(ht, Y.escapedName), br = Xr(f);
          if (ir && !mr && x) {
            if (be) {
              const Hr = KIe(kc(Y), ht);
              Hr ? We(be, me ? p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1 : p.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1, br, Xi(Hr)) : We(be, me ? p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0 : p.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0, br);
            }
            return 2;
          } else if (ir && mr?.declarations && L.noImplicitOverride && !Je) {
            const Hr = _t(mr.declarations, Jb);
            if (x) return 0;
            if (Hr) {
              if (O && Hr)
                return be && We(be, p.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0, br), 1;
            } else return be && We(be, V ? me ? p.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0 : p.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0 : me ? p.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0 : p.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0, br), 1;
          }
        } else if (x) {
          if (be) {
            const gt = Xr(m);
            We(be, me ? p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class : p.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class, gt);
          }
          return 2;
        }
        return 0;
      }
      function G7e(r, s, l, f) {
        let m = !1;
        for (const y of r.members) {
          if (es(y)) continue;
          const x = y.name && Wp(y.name) || Wp(y);
          if (x) {
            const O = ms(s, x.escapedName), J = ms(l, x.escapedName);
            if (O && J) {
              const V = () => ba(void 0, p.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2, Xi(x), Xr(s), Xr(l));
              zu(ft(O), ft(J), y.name || y, void 0, V) || (m = !0);
            }
          }
        }
        m || zu(s, l, r.name || r, f);
      }
      function Cut(r, s) {
        const l = Pa(r, 1);
        if (l.length) {
          const f = l[0].declaration;
          f && vf(f, 2) && (Kme(s, I0(r.symbol)) || We(s, p.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private, py(r.symbol)));
        }
      }
      function Eut(r, s, l) {
        if (!s.name) return 0;
        const f = mn(r), m = Oo(f), y = Of(m), x = ft(f), O = Jd(r) && Nd(m), J = O?.length ? Of(js(O), m.thisType) : void 0;
        return q7e(r, x, LT(m), J, m, y, s.parent ? eO(s) : Qn(s, 16), Jb(s), es(s), !1, l);
      }
      function y4(r) {
        return gc(r) & 1 ? r.links.target : r;
      }
      function Dut(r) {
        return dn(r.declarations, (s) => s.kind === 264 || s.kind === 265);
      }
      function wut(r, s) {
        var l, f, m, y, x;
        const O = co(s), J = /* @__PURE__ */ new Map();
        e: for (const V of O) {
          const Y = y4(V);
          if (Y.flags & 4194304) continue;
          const be = R2(r, Y.escapedName);
          if (!be) continue;
          const me = y4(be), Je = kp(Y);
          if (E.assert(!!me, "derived should point to something, even if it is the base class' declaration."), me === Y) {
            const gt = I0(r.symbol);
            if (Je & 64 && (!gt || !Qn(gt, 64))) {
              for (const Hr of Nd(r)) {
                if (Hr === s) continue;
                const lr = R2(Hr, Y.escapedName), ur = lr && y4(lr);
                if (ur && ur !== Y) continue e;
              }
              const ht = Xr(s), ir = Xr(r), mr = Xi(V), br = kr((l = J.get(gt)) == null ? void 0 : l.missedProperties, mr);
              J.set(gt, {
                baseTypeName: ht,
                typeName: ir,
                missedProperties: br
              });
            }
          } else {
            const gt = kp(me);
            if (Je & 2 || gt & 2) continue;
            let ht;
            const ir = Y.flags & 98308, mr = me.flags & 98308;
            if (ir && mr) {
              if ((gc(Y) & 6 ? (f = Y.declarations) != null && f.some((Hr) => H7e(Hr, Je)) : (m = Y.declarations) != null && m.every((Hr) => H7e(Hr, Je))) || gc(Y) & 262144 || me.valueDeclaration && un(me.valueDeclaration)) continue;
              const br = ir !== 4 && mr === 4;
              if (br || ir === 4 && mr !== 4) {
                const Hr = br ? p._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property : p._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;
                We(va(me.valueDeclaration) || me.valueDeclaration, Hr, Xi(Y), Xr(s), Xr(r));
              } else if (pe) {
                const Hr = (y = me.declarations) == null ? void 0 : y.find((lr) => lr.kind === 173 && !lr.initializer);
                if (Hr && !(me.flags & 33554432) && !(Je & 64) && !(gt & 64) && !((x = me.declarations) != null && x.some((lr) => !!(lr.flags & 33554432)))) {
                  const lr = XA(I0(r.symbol)), ur = Hr.name;
                  if (Hr.exclamationToken || !lr || !Fe(ur) || !Q || !X7e(ur, r, lr)) {
                    const En = p.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;
                    We(va(me.valueDeclaration) || me.valueDeclaration, En, Xi(Y), Xr(s));
                  }
                }
              }
              continue;
            } else if (Gde(Y)) {
              if (Gde(me) || me.flags & 4) continue;
              E.assert(!!(me.flags & 98304)), ht = p.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor;
            } else Y.flags & 98304 ? ht = p.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function : ht = p.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;
            We(va(me.valueDeclaration) || me.valueDeclaration, ht, Xr(s), Xi(Y), Xr(r));
          }
        }
        for (const [V, Y] of J) if (It(Y.missedProperties) === 1) Hc(V) ? We(V, p.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1, js(Y.missedProperties), Y.baseTypeName) : We(V, p.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2, Y.typeName, js(Y.missedProperties), Y.baseTypeName);
        else if (It(Y.missedProperties) > 5) {
          const be = or(Y.missedProperties.slice(0, 4), (Je) => `'${Je}'`).join(", "), me = It(Y.missedProperties) - 4;
          Hc(V) ? We(V, p.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more, Y.baseTypeName, be, me) : We(V, p.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more, Y.typeName, Y.baseTypeName, be, me);
        } else {
          const be = or(Y.missedProperties, (me) => `'${me}'`).join(", ");
          Hc(V) ? We(V, p.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1, Y.baseTypeName, be) : We(V, p.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2, Y.typeName, Y.baseTypeName, be);
        }
      }
      function H7e(r, s) {
        return s & 64 && (!ga(r) || !r.initializer) || au(r.parent);
      }
      function Put(r, s, l) {
        if (!It(s)) return l;
        const f = /* @__PURE__ */ new Map();
        bt(l, (m) => {
          f.set(m.escapedName, m);
        });
        for (const m of s) {
          const y = co(Of(m, r.thisType));
          for (const x of y) {
            const O = f.get(x.escapedName);
            O && x.parent === O.parent && f.delete(x.escapedName);
          }
        }
        return ma(f.values());
      }
      function Aut(r, s) {
        const l = Nd(r);
        if (l.length < 2) return !0;
        const f = /* @__PURE__ */ new Map();
        bt(jfe(r).declaredProperties, (y) => {
          f.set(y.escapedName, {
            prop: y,
            containingType: r
          });
        });
        let m = !0;
        for (const y of l) {
          const x = co(Of(y, r.thisType));
          for (const O of x) {
            const J = f.get(O.escapedName);
            if (!J) f.set(O.escapedName, {
              prop: O,
              containingType: y
            });
            else if (J.containingType !== r && !Cnt(J.prop, O)) {
              m = !1;
              const V = Xr(J.containingType), Y = Xr(y);
              let be = ba(void 0, p.Named_property_0_of_types_1_and_2_are_not_identical, Xi(O), V, Y);
              be = ba(be, p.Interface_0_cannot_simultaneously_extend_types_1_and_2, Xr(r), V, Y), Ws.add(Gg(Sr(s), s, be));
            }
          }
        }
        return m;
      }
      function Nut(r) {
        if (!Q || !fe || r.flags & 33554432) return;
        const s = XA(r);
        for (const l of r.members)
          if (!(Pu(l) & 128) && !es(l) && $7e(l)) {
            const f = l.name;
            if (Fe(f) || Oi(f) || _s(f)) {
              const m = ft(mn(l));
              m.flags & 3 || c4(m) || (!s || !X7e(f, m, s)) && We(l.name, p.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor, Do(f));
            }
          }
      }
      function $7e(r) {
        return r.kind === 173 && !Jb(r) && !r.exclamationToken && !r.initializer;
      }
      function Iut(r, s, l, f, m) {
        for (const y of l) if (y.pos >= f && y.pos <= m) {
          const x = A.createPropertyAccessExpression(A.createThis(), r);
          if (eo(x.expression, x), eo(x, y), x.flowNode = y.returnFlowNode, !c4(y0(x, s, V1(s)))) return !0;
        }
        return !1;
      }
      function X7e(r, s, l) {
        const f = _s(r) ? A.createElementAccessExpression(A.createThis(), r.expression) : A.createPropertyAccessExpression(A.createThis(), r);
        return eo(f.expression, f), eo(f, l), f.flowNode = l.returnFlowNode, !c4(y0(f, s, V1(s)));
      }
      function Out(r) {
        Ah(r) || pft(r), sQ(r.parent) || sr(r, p._0_declarations_can_only_be_declared_inside_a_block, "interface"), OR(r.typeParameters), n(() => {
          YP(r.name, p.Interface_name_cannot_be_0), a7(r);
          const s = mn(r);
          if (J7e(s), r === Ho(s, 265)) {
            const l = Oo(s), f = Of(l);
            if (Aut(l, r.name)) {
              for (const m of Nd(l)) zu(f, Of(m, l.thisType), r.name, p.Interface_0_incorrectly_extends_interface_1);
              GX(l, s);
            }
          }
          c7e(r);
        }), bt(gD(r), (s) => {
          (!go(s.expression) || Vu(s.expression)) && We(s.expression, p.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments), Ome(s);
        }), bt(r.members, xs), n(() => {
          Nme(r), G1(r);
        });
      }
      function Fut(r) {
        if (Ah(r), YP(r.name, p.Type_alias_name_cannot_be_0), sQ(r.parent) || sr(r, p._0_declarations_can_only_be_declared_inside_a_block, "type"), a7(r), OR(r.typeParameters), r.type.kind === 141) {
          const s = It(r.typeParameters);
          (s === 0 ? r.name.escapedText === "BuiltinIteratorReturn" : s === 1 && $W.has(r.name.escapedText)) || We(r.type, p.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types);
        } else
          xs(r.type), G1(r);
      }
      function Q7e(r) {
        const s = Pn(r);
        if (!(s.flags & 1024)) {
          s.flags |= 1024;
          let l = 0, f;
          for (const m of r.members) {
            const y = Lut(m, l, f);
            Pn(m).enumMemberValue = y, l = typeof y.value == "number" ? y.value + 1 : void 0, f = m;
          }
        }
      }
      function Lut(r, s, l) {
        if (G3(r.name)) We(r.name, p.Computed_property_names_are_not_allowed_in_enums);
        else if (E6(r.name)) We(r.name, p.An_enum_member_cannot_have_a_numeric_name);
        else {
          const f = Ix(r.name);
          eh(f) && !UD(f) && We(r.name, p.An_enum_member_cannot_have_a_numeric_name);
        }
        if (r.initializer) return Mut(r);
        if (r.parent.flags & 33554432 && !cv(r.parent)) return Pl(void 0);
        if (s === void 0)
          return We(r.name, p.Enum_member_must_have_initializer), Pl(void 0);
        if (Zp(L) && l?.initializer) {
          const f = sx(l);
          typeof f.value == "number" && !f.resolvedOtherFiles || We(r.name, p.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled);
        }
        return Pl(s);
      }
      function Mut(r) {
        const s = cv(r.parent), l = r.initializer, f = ae(l, r);
        return f.value !== void 0 ? s && typeof f.value == "number" && !isFinite(f.value) ? We(l, isNaN(f.value) ? p.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN : p.const_enum_member_initializer_was_evaluated_to_a_non_finite_value) : Zp(L) && typeof f.value == "string" && !f.isSyntacticallyString && We(l, p._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled, `${On(r.parent.name)}.${Ix(r.name)}`) : s ? We(l, p.const_enum_member_initializers_must_be_constant_expressions) : r.parent.flags & 33554432 ? We(l, p.In_ambient_enum_declarations_member_initializer_must_be_constant_expression) : zu(aa(l), et, l, p.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values), f;
      }
      function Y7e(r, s) {
        const l = Tc(r, 111551, !0);
        if (!l) return Pl(void 0);
        if (r.kind === 80) {
          const f = r;
          if (UD(f.escapedText) && l === s4(f.escapedText, 111551, void 0)) return Pl(+f.escapedText, !1);
        }
        if (l.flags & 8) return s ? Z7e(r, l, s) : sx(l.valueDeclaration);
        if (AC(l)) {
          const f = l.valueDeclaration;
          if (f && ci(f) && !f.type && f.initializer && (!s || f !== s && cy(f, s))) {
            const m = ae(f.initializer, f);
            return s && Sr(s) !== Sr(f) ? Pl(m.value, !1, !0, !0) : Pl(m.value, m.isSyntacticallyString, m.resolvedOtherFiles, !0);
          }
        }
        return Pl(void 0);
      }
      function Rut(r, s) {
        const l = r.expression;
        if (go(l) && Xs(r.argumentExpression)) {
          const f = Tc(l, 111551, !0);
          if (f && f.flags & 384) {
            const m = mc(r.argumentExpression.text), y = f.exports.get(m);
            if (y)
              return E.assert(Sr(y.valueDeclaration) === Sr(f.valueDeclaration)), s ? Z7e(r, y, s) : sx(y.valueDeclaration);
          }
        }
        return Pl(void 0);
      }
      function Z7e(r, s, l) {
        const f = s.valueDeclaration;
        if (!f || f === l)
          return We(r, p.Property_0_is_used_before_being_assigned, Xi(s)), Pl(void 0);
        if (!cy(f, l))
          return We(r, p.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums), Pl(0);
        const m = sx(f);
        return l.parent !== f.parent ? Pl(m.value, m.isSyntacticallyString, m.resolvedOtherFiles, !0) : m;
      }
      function jut(r) {
        n(() => But(r));
      }
      function But(r) {
        Ah(r), QP(r, r.name), a7(r), r.members.forEach(xs), L.erasableSyntaxOnly && !(r.flags & 33554432) && We(r, p.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled), Q7e(r);
        const s = mn(r);
        if (r === Ho(s, r.kind)) {
          if (s.declarations && s.declarations.length > 1) {
            const f = cv(r);
            bt(s.declarations, (m) => {
              l1(m) && cv(m) !== f && We(va(m), p.Enum_declarations_must_all_be_const_or_non_const);
            });
          }
          let l = !1;
          bt(s.declarations, (f) => {
            if (f.kind !== 267) return !1;
            const m = f;
            if (!m.members.length) return !1;
            const y = m.members[0];
            y.initializer || (l ? We(y.name, p.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element) : l = !0);
          });
        }
      }
      function Jut(r) {
        Oi(r.name) && We(r, p.An_enum_member_cannot_be_named_with_a_private_identifier), r.initializer && aa(r.initializer);
      }
      function zut(r) {
        const s = r.declarations;
        if (s) {
          for (const l of s) if ((l.kind === 264 || l.kind === 263 && Gp(l.body)) && !(l.flags & 33554432)) return l;
        }
      }
      function Wut(r, s) {
        const l = Bd(r), f = Bd(s);
        return D0(l) ? D0(f) : D0(f) ? !1 : l === f;
      }
      function Uut(r) {
        r.body && (xs(r.body), ug(r) || G1(r)), n(s);
        function s() {
          var l, f;
          const m = ug(r), y = r.flags & 33554432;
          m && !y && We(r.name, p.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);
          const x = o_(r);
          if (FR(r, x ? p.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file : p.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module)) return;
          Ah(r) || !y && r.name.kind === 11 && sr(r.name, p.Only_ambient_modules_can_use_quoted_names), Fe(r.name) && (QP(r, r.name), r.flags & 2080 || We(r.name, p.A_namespace_declaration_should_not_be_declared_using_the_module_keyword_Please_use_the_namespace_keyword_instead)), a7(r);
          const O = mn(r);
          if (O.flags & 512 && !y && HF(r, e1(L))) {
            if (L.erasableSyntaxOnly && We(r.name, p.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled), Zp(L) && !Sr(r).externalModuleIndicator && We(r.name, p.Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement, Ut), ((l = O.declarations) == null ? void 0 : l.length) > 1) {
              const J = zut(O);
              J && (Sr(r) !== Sr(J) ? We(r.name, p.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged) : r.pos < J.pos && We(r.name, p.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged));
              const V = Ho(O, 264);
              V && Wut(r, V) && (Pn(r).flags |= 2048);
            }
            if (L.verbatimModuleSyntax && r.parent.kind === 308 && e.getEmitModuleFormatOfFile(r.parent) === 1) {
              const J = (f = r.modifiers) == null ? void 0 : f.find((V) => V.kind === 95);
              J && We(J, p.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);
            }
          }
          if (x) if (Nb(r)) {
            if ((m || mn(r).flags & 33554432) && r.body) for (const J of r.body.statements) Hme(J, m);
          } else D0(r.parent) ? m ? We(r.name, p.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations) : jl(Xp(r.name)) && We(r.name, p.Ambient_module_declaration_cannot_specify_relative_module_name) : m ? We(r.name, p.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations) : We(r.name, p.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces);
        }
      }
      function Hme(r, s) {
        switch (r.kind) {
          case 244:
            for (const f of r.declarationList.declarations) Hme(f, s);
            break;
          case 278:
          case 279:
            Ll(r, p.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);
            break;
          case 272:
            if (yS(r)) break;
          case 273:
            Ll(r, p.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);
            break;
          case 209:
          case 261:
            const l = r.name;
            if (Ja(l)) {
              for (const f of l.elements) Hme(f, s);
              break;
            }
          case 264:
          case 267:
          case 263:
          case 265:
          case 268:
          case 266:
            if (s) return;
            break;
        }
      }
      function Vut(r) {
        switch (r.kind) {
          case 80:
            return r;
          case 167:
            do
              r = r.left;
            while (r.kind !== 80);
            return r;
          case 212:
            do {
              if ($g(r.expression) && !Oi(r.name)) return r.name;
              r = r.expression;
            } while (r.kind !== 80);
            return r;
        }
      }
      function HX(r) {
        const s = Lx(r);
        if (!s || Nc(s)) return !1;
        if (!Ts(s))
          return We(s, p.String_literal_expected), !1;
        const l = r.parent.kind === 269 && o_(r.parent.parent);
        if (r.parent.kind !== 308 && !l)
          return We(s, r.kind === 279 ? p.Export_declarations_are_not_permitted_in_a_namespace : p.Import_declarations_in_a_namespace_cannot_reference_a_module), !1;
        if (l && jl(s.text) && !QE(r))
          return We(r, p.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name), !1;
        if (!bl(r) && r.attributes) {
          const f = r.attributes.token === 118 ? p.Import_attribute_values_must_be_string_literal_expressions : p.Import_assertion_values_must_be_string_literal_expressions;
          let m = !1;
          for (const y of r.attributes.elements) Ts(y.value) || (m = !0, We(y.value, f));
          return !m;
        }
        return !0;
      }
      function $X(r, s = !0) {
        r === void 0 || r.kind !== 11 || (s ? (H === 5 || H === 6) && sr(r, p.String_literal_import_and_export_names_are_not_supported_when_the_module_flag_is_set_to_es2015_or_es2020) : sr(r, p.Identifier_expected));
      }
      function XX(r) {
        var s, l, f, m, y;
        let x = mn(r);
        const O = Zl(x);
        if (O !== it) {
          if (x = ys(x.exportSymbol || x), rn(r) && !(O.flags & 111551) && !C0(r)) {
            const V = By(r) ? r.propertyName || r.name : Bl(r) ? r.name : r;
            if (E.assert(r.kind !== 281), r.kind === 282) {
              const Y = We(V, p.Types_cannot_appear_in_export_declarations_in_JavaScript_files), be = (l = (s = Sr(r).symbol) == null ? void 0 : s.exports) == null ? void 0 : l.get(Ab(r.propertyName || r.name));
              if (be === O) {
                const me = (f = be.declarations) == null ? void 0 : f.find(ZC);
                me && ts(Y, Kr(me, p._0_is_automatically_exported_here, Ti(be.escapedName)));
              }
            } else {
              E.assert(r.kind !== 261);
              const Y = cr(r, _f(ic, bl)), be = (Y && ((m = Fx(Y)) == null ? void 0 : m.text)) ?? "...", me = Ti(Fe(V) ? V.escapedText : x.escapedName);
              We(V, p._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation, me, `import("${be}").${me}`);
            }
            return;
          }
          const J = m_(O);
          if (J & ((x.flags & 1160127 ? 111551 : 0) | (x.flags & 788968 ? 788968 : 0) | (x.flags & 1920 ? 1920 : 0)) ? We(r, r.kind === 282 ? p.Export_declaration_conflicts_with_exported_declaration_of_0 : p.Import_declaration_conflicts_with_local_declaration_of_0, Xi(x)) : r.kind !== 282 && L.isolatedModules && !cr(r, C0) && x.flags & 1160127 && We(r, p.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled, Xi(x), Ut), Zp(L) && !C0(r) && !(r.flags & 33554432)) {
            const V = wd(x), Y = !(J & 111551);
            if (Y || V) switch (r.kind) {
              case 274:
              case 277:
              case 272:
                if (L.verbatimModuleSyntax) {
                  E.assertIsDefined(r.name, "An ImportClause with a symbol should have a name");
                  const be = L.verbatimModuleSyntax && yS(r) ? p.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled : Y ? p._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled : p._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled, me = Gy(r.kind === 277 && r.propertyName || r.name);
                  uy(We(r, be, me), Y ? void 0 : V, me);
                }
                Y && r.kind === 272 && vf(r, 32) && We(r, p.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled, Ut);
                break;
              case 282:
                if (L.verbatimModuleSyntax || Sr(V) !== Sr(r)) {
                  const be = Gy(r.propertyName || r.name);
                  uy(Y ? We(r, p.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type, Ut) : We(r, p._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled, be, Ut), Y ? void 0 : V, be);
                  break;
                }
            }
            if (L.verbatimModuleSyntax && r.kind !== 272 && !rn(r) && e.getEmitModuleFormatOfFile(Sr(r)) === 1 ? We(r, iy(r)) : H === 200 && r.kind !== 272 && r.kind !== 261 && e.getEmitModuleFormatOfFile(Sr(r)) === 1 && We(r, p.ECMAScript_module_syntax_is_not_allowed_in_a_CommonJS_module_when_module_is_set_to_preserve), L.verbatimModuleSyntax && !C0(r) && !(r.flags & 33554432) && J & 128) {
              const be = O.valueDeclaration, me = (y = e.getRedirectFromOutput(Sr(be).resolvedPath)) == null ? void 0 : y.resolvedRef;
              be.flags & 33554432 && (!me || !e1(me.commandLine.options)) && We(r, p.Cannot_access_ambient_const_enums_when_0_is_enabled, Ut);
            }
          }
          if (p_(r)) {
            const V = $me(x, r);
            kd(V) && V.declarations && Cd(r, V.declarations, V.escapedName);
          }
        }
      }
      function $me(r, s) {
        if (!(r.flags & 2097152) || kd(r) || !_p(r)) return r;
        const l = Zl(r);
        if (l === it) return l;
        for (; r.flags & 2097152; ) {
          const f = dX(r);
          if (f) {
            if (f === l) break;
            if (f.declarations && It(f.declarations)) if (kd(f)) {
              Cd(s, f.declarations, f.escapedName);
              break;
            } else {
              if (r === l) break;
              r = f;
            }
          } else break;
        }
        return l;
      }
      function QX(r) {
        QP(r, r.name), XX(r), r.kind === 277 && ($X(r.propertyName), lg(r.propertyName || r.name) && Dm(L) && e.getEmitModuleFormatOfFile(Sr(r)) < 4 && Fl(r, 131072));
      }
      function Xme(r) {
        var s;
        const l = r.attributes;
        if (l) {
          const f = upe(!0);
          f !== Yi && zu(wfe(l), HM(f, 4), l);
          const m = NU(r), y = eE(l, m ? sr : void 0), x = r.attributes.token === 118;
          if (m && y) return;
          if (!Fee(H)) return sr(l, x ? p.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve : p.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_node18_node20_nodenext_or_preserve);
          if (102 <= H && H <= 199 && !x) return Ll(l, p.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert);
          if (!x && L.ignoreDeprecations !== "6.0" && Ll(l, p.Import_assertions_have_been_replaced_by_import_attributes_Use_with_instead_of_assert), r.moduleSpecifier && gh(r.moduleSpecifier) === 1) return sr(l, x ? p.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls : p.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls);
          if (Fm(r) || (ic(r) ? (s = r.importClause) != null && s.isTypeOnly : r.isTypeOnly)) return sr(l, x ? p.Import_attributes_cannot_be_used_with_type_only_imports_or_exports : p.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);
          if (y) return sr(l, p.resolution_mode_can_only_be_set_for_type_only_imports);
        }
      }
      function qut(r) {
        return ku(wc(r.value));
      }
      function Gut(r) {
        if (!FR(r, rn(r) ? p.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module : p.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)) {
          if (!Ah(r) && r.modifiers && Ll(r, p.An_import_declaration_cannot_have_modifiers), HX(r)) {
            let s;
            const l = r.importClause;
            l && !Rft(l) ? (l.name && QX(l), l.namedBindings && (l.namedBindings.kind === 275 ? (QX(l.namedBindings), e.getEmitModuleFormatOfFile(Sr(r)) < 4 && Dm(L) && Fl(r, 65536)) : (s = Ru(r, r.moduleSpecifier), s && bt(l.namedBindings.elements, QX))), !l.isTypeOnly && 101 <= H && H <= 199 && $m(r.moduleSpecifier, s) && !Hut(r) && We(r.moduleSpecifier, p.Importing_a_JSON_file_into_an_ECMAScript_module_requires_a_type_Colon_json_import_attribute_when_module_is_set_to_0, mx[H])) : oe && !l && Ru(r, r.moduleSpecifier, void 0, p.Cannot_find_module_or_type_declarations_for_side_effect_import_of_0);
          }
          Xme(r);
        }
      }
      function Hut(r) {
        return !!r.attributes && r.attributes.elements.some((s) => {
          var l;
          return Xp(s.name) === "type" && ((l = qn(s.value, Xs)) == null ? void 0 : l.text) === "json";
        });
      }
      function $ut(r) {
        if (!FR(r, rn(r) ? p.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module : p.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module) && (Ah(r), L.erasableSyntaxOnly && !(r.flags & 33554432) && We(r, p.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled), yS(r) || HX(r)))
          if (QX(r), NC(r, 6), r.moduleReference.kind !== 284) {
            const s = Zl(mn(r));
            if (s !== it) {
              const l = m_(s);
              if (l & 111551) {
                const f = x_(r.moduleReference);
                Tc(f, 112575).flags & 1920 || We(f, p.Module_0_is_hidden_by_a_local_declaration_with_the_same_name, Do(f));
              }
              l & 788968 && YP(r.name, p.Import_name_cannot_be_0);
            }
            r.isTypeOnly && sr(r, p.An_import_alias_cannot_use_import_type);
          } else 5 <= H && H <= 99 && !r.isTypeOnly && !(r.flags & 33554432) && sr(r, p.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead);
      }
      function Xut(r) {
        if (!FR(r, rn(r) ? p.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module : p.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)) {
          if (!Ah(r) && see(r) && Ll(r, p.An_export_declaration_cannot_have_modifiers), Qut(r), !r.moduleSpecifier || HX(r)) if (r.exportClause && !gg(r.exportClause)) {
            bt(r.exportClause.elements, Yut);
            const s = r.parent.kind === 269 && o_(r.parent.parent), l = !s && r.parent.kind === 269 && !r.moduleSpecifier && r.flags & 33554432;
            r.parent.kind !== 308 && !s && !l && We(r, p.Export_declarations_are_not_permitted_in_a_namespace);
          } else {
            const s = Ru(r, r.moduleSpecifier);
            s && w2(s) ? We(r.moduleSpecifier, p.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk, Xi(s)) : r.exportClause && (XX(r.exportClause), $X(r.exportClause.name)), e.getEmitModuleFormatOfFile(Sr(r)) < 4 && (r.exportClause ? Dm(L) && Fl(r, 65536) : Fl(r, 32768));
          }
          Xme(r);
        }
      }
      function Qut(r) {
        var s;
        return r.isTypeOnly && ((s = r.exportClause) == null ? void 0 : s.kind) === 280 ? O5e(r.exportClause) : !1;
      }
      function FR(r, s) {
        const l = r.parent.kind === 308 || r.parent.kind === 269 || r.parent.kind === 268;
        return l || Ll(r, s), !l;
      }
      function Yut(r) {
        XX(r);
        const s = r.parent.parent.moduleSpecifier !== void 0;
        if ($X(r.propertyName, s), $X(r.name), U_(L) && He(r.propertyName || r.name, !0), s)
          Dm(L) && e.getEmitModuleFormatOfFile(Sr(r)) < 4 && lg(r.propertyName || r.name) && Fl(r, 131072);
        else {
          const l = r.propertyName || r.name;
          if (l.kind === 11) return;
          const f = Gr(l, l.escapedText, 2998271, void 0, !0);
          f && (f === ue || f === Ie || f.declarations && D0(Ki(f.declarations[0]))) ? We(l, p.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module, On(l)) : NC(r, 7);
        }
      }
      function Zut(r) {
        if (FR(r, r.isExportEquals ? p.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration : p.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration)) return;
        L.erasableSyntaxOnly && r.isExportEquals && !(r.flags & 33554432) && We(r, p.This_syntax_is_not_allowed_when_erasableSyntaxOnly_is_enabled);
        const s = r.parent.kind === 308 ? r.parent : r.parent.parent;
        if (s.kind === 268 && !o_(s)) {
          r.isExportEquals ? We(r, p.An_export_assignment_cannot_be_used_in_a_namespace) : We(r, p.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);
          return;
        }
        !Ah(r) && bJ(r) && Ll(r, p.An_export_assignment_cannot_have_modifiers);
        const l = _l(r);
        l && zu(wc(r.expression), Di(l), r.expression);
        const f = !r.isExportEquals && !(r.flags & 33554432) && L.verbatimModuleSyntax && e.getEmitModuleFormatOfFile(Sr(r)) === 1;
        if (r.expression.kind === 80) {
          const m = r.expression, y = Ui(Tc(m, -1, !0, !0, r));
          if (y) {
            NC(r, 3);
            const x = wd(y, 111551);
            if (m_(y) & 111551 ? (wc(m), !f && !(r.flags & 33554432) && L.verbatimModuleSyntax && x && We(m, r.isExportEquals ? p.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration : p.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration, On(m))) : !f && !(r.flags & 33554432) && L.verbatimModuleSyntax && We(m, r.isExportEquals ? p.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type : p.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type, On(m)), !f && !(r.flags & 33554432) && Zp(L) && !(y.flags & 111551)) {
              const O = m_(y, !1, !0);
              y.flags & 2097152 && O & 788968 && !(O & 111551) && (!x || Sr(x) !== Sr(r)) ? We(m, r.isExportEquals ? p._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported : p._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default, On(m), Ut) : x && Sr(x) !== Sr(r) && uy(We(m, r.isExportEquals ? p._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported : p._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default, On(m), Ut), x, On(m));
            }
          } else wc(m);
          U_(L) && He(m, !0);
        } else wc(r.expression);
        f && We(r, iy(r)), K7e(s), r.flags & 33554432 && !go(r.expression) && sr(r.expression, p.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context), r.isExportEquals && (H >= 5 && H !== 200 && (r.flags & 33554432 && e.getImpliedNodeFormatForEmit(Sr(r)) === 99 || !(r.flags & 33554432) && e.getImpliedNodeFormatForEmit(Sr(r)) !== 1) ? sr(r, p.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead) : H === 4 && !(r.flags & 33554432) && sr(r, p.Export_assignment_is_not_supported_when_module_flag_is_system));
      }
      function Kut(r) {
        return Dl(r.exports, (s, l) => l !== "export=");
      }
      function K7e(r) {
        const s = mn(r), l = Wi(s);
        if (!l.exportsChecked) {
          const f = s.exports.get("export=");
          if (f && Kut(s)) {
            const y = _p(f) || f.valueDeclaration;
            y && !QE(y) && !rn(y) && We(y, p.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements);
          }
          const m = kg(s);
          m && m.forEach(({ declarations: y, flags: x }, O) => {
            if (O === "__export" || x & 1920) return;
            const J = Qf(y, x7(PRe, k7(au)));
            if (!(x & 524288 && J <= 2) && J > 1 && !YX(y))
              for (const V of y) X1e(V) && Ws.add(Kr(V, p.Cannot_redeclare_exported_variable_0, Ti(O)));
          }), l.exportsChecked = !0;
        }
      }
      function YX(r) {
        return r && r.length > 1 && r.every((s) => rn(s) && jo(s) && (vS(s.expression) || $g(s.expression)));
      }
      function xs(r) {
        if (r) {
          const s = k, l = N;
          k = r, h = 0, e_t(r), k = s, N = l;
        }
      }
      function e_t(r) {
        if (MC(r) & 8388608) return;
        dA(r) && bt(r.jsDoc, ({ comment: l, tags: f }) => {
          e5e(l), bt(f, (m) => {
            e5e(m.comment), rn(r) && xs(m);
          });
        });
        const s = r.kind;
        if (i) switch (s) {
          case 268:
          case 264:
          case 265:
          case 263:
            i.throwIfCancellationRequested();
        }
        switch (L.allowUnreachableCode !== !0 && !N && t_t(r) && (N = !0), s) {
          case 169:
            return a7e(r);
          case 170:
            return s7e(r);
          case 173:
            return l7e(r);
          case 172:
            return Rct(r);
          case 186:
          case 185:
          case 180:
          case 181:
          case 182:
            return n7(r);
          case 175:
          case 174:
            return jct(r);
          case 176:
            return Bct(r);
          case 177:
            return Jct(r);
          case 178:
          case 179:
            return _7e(r);
          case 184:
            return Ome(r);
          case 183:
            return Oct(r);
          case 187:
            return Gct(r);
          case 188:
            return Hct(r);
          case 189:
            return $ct(r);
          case 190:
            return Xct(r);
          case 193:
          case 194:
            return Qct(r);
          case 197:
          case 191:
          case 192:
            return xs(r.type);
          case 198:
            return elt(r);
          case 199:
            return tlt(r);
          case 195:
            return rlt(r);
          case 196:
            return nlt(r);
          case 204:
            return ilt(r);
          case 206:
            return alt(r);
          case 203:
            return slt(r);
          case 329:
            return Elt(r);
          case 330:
            return Clt(r);
          case 347:
          case 339:
          case 341:
            return mlt(r);
          case 346:
            return glt(r);
          case 345:
            return hlt(r);
          case 325:
          case 326:
          case 327:
            return vlt(r);
          case 342:
            return blt(r);
          case 349:
            return Slt(r);
          case 318:
            Tlt(r);
          case 316:
          case 315:
          case 313:
          case 314:
          case 323:
            t5e(r), Fa(r, xs);
            return;
          case 319:
            r_t(r);
            return;
          case 310:
            return xs(r.type);
          case 334:
          case 336:
          case 335:
            return Dlt(r);
          case 351:
            return ylt(r);
          case 344:
            return xlt(r);
          case 352:
            return klt(r);
          case 200:
            return Yct(r);
          case 201:
            return Zct(r);
          case 263:
            return dlt(r);
          case 242:
          case 269:
            return zX(r);
          case 244:
            return qlt(r);
          case 245:
            return Glt(r);
          case 246:
            return Hlt(r);
          case 247:
            return Qlt(r);
          case 248:
            return Ylt(r);
          case 249:
            return Zlt(r);
          case 250:
            return eut(r);
          case 251:
            return Klt(r);
          case 252:
          case 253:
            return lut(r);
          case 254:
            return uut(r);
          case 255:
            return _ut(r);
          case 256:
            return fut(r);
          case 257:
            return put(r);
          case 258:
            return dut(r);
          case 259:
            return mut(r);
          case 261:
            return Ult(r);
          case 209:
            return Vlt(r);
          case 264:
            return xut(r);
          case 265:
            return Out(r);
          case 266:
            return Fut(r);
          case 267:
            return jut(r);
          case 307:
            return Jut(r);
          case 268:
            return Uut(r);
          case 273:
            return Gut(r);
          case 272:
            return $ut(r);
          case 279:
            return Xut(r);
          case 278:
            return Zut(r);
          case 243:
          case 260:
            b0(r);
            return;
          case 283:
            return Wct(r);
        }
      }
      function t_t(r) {
        if (!$D(r)) return !1;
        if (M?.has(r)) return !0;
        if (!Qme(r)) return !1;
        (M ?? (M = /* @__PURE__ */ new Set())).add(r);
        const s = Sr(r);
        let l = r, f = r;
        const m = r.parent;
        if (gte(m)) {
          const x = m.statements, O = x.indexOf(r);
          if (O >= 0) {
            let J = O;
            for (let Y = O - 1; Y >= 0; Y--) {
              const be = x[Y];
              if (!$D(be) || M.has(be) || !Qme(be)) break;
              J = Y, M.add(be);
            }
            let V = O;
            for (let Y = O + 1; Y < x.length; Y++) {
              const be = x[Y];
              if (!$D(be) || !Qme(be)) break;
              V = Y, M.add(be);
            }
            l = x[J], f = x[V];
          }
        }
        const y = ov(l, s);
        return Tg(L.allowUnreachableCode === !1, wl(s, y, f.end - y, p.Unreachable_code_detected)), !0;
      }
      function Qme(r) {
        if (r.flags & 1073741824) switch (r.kind) {
          case 267:
            return !cv(r) || e1(L);
          case 268:
            return HF(r, e1(L));
          default:
            return !0;
        }
        else if (Bx(r) && r.flowNode) return !tR(r.flowNode);
        return !1;
      }
      function e5e(r) {
        da(r) && bt(r, (s) => {
          Ex(s) && xs(s);
        });
      }
      function t5e(r) {
        if (!rn(r)) if (rF(r) || M6(r)) {
          const s = as(rF(r) ? 54 : 58), l = r.postfix ? p._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1 : p._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1, f = r.type, m = Di(f);
          sr(r, l, s, Xr(M6(r) && !(m === ct || m === Qt) ? Yn(kr([m, $e], r.postfix ? void 0 : vr)) : m));
        } else sr(r, p.JSDoc_types_can_only_be_used_inside_documentation_comments);
      }
      function r_t(r) {
        t5e(r), xs(r.type);
        const { parent: s } = r;
        if (Fi(s) && R6(s.parent)) {
          ws(s.parent.parameters) !== s && We(r, p.A_rest_parameter_must_be_last_in_a_parameter_list);
          return;
        }
        wv(s) || We(r, p.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);
        const l = r.parent.parent;
        if (!np(l)) {
          We(r, p.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);
          return;
        }
        const f = mA(l);
        if (!f) return;
        const m = fv(l);
        (!m || ws(m.parameters).symbol !== f) && We(r, p.A_rest_parameter_must_be_last_in_a_parameter_list);
      }
      function n_t(r) {
        const s = Di(r.type), { parent: l } = r, f = r.parent.parent;
        if (wv(r.parent) && np(f)) {
          const m = fv(f), y = jz(f.parent.parent);
          if (m || y) {
            const x = Wo(y ? f.parent.parent.typeExpression.parameters : m.parameters), O = mA(f);
            if (!x || O && x.symbol === O && cg(x)) return Ju(s);
          }
        }
        return Fi(l) && R6(l.parent) ? Ju(s) : _u(s);
      }
      function FC(r) {
        const s = Pn(Sr(r));
        s.flags & 1 ? E.assert(!s.deferredNodes, "A type-checked file should have no deferred nodes.") : (s.deferredNodes || (s.deferredNodes = /* @__PURE__ */ new Set()), s.deferredNodes.add(r));
      }
      function r5e(r) {
        const s = Pn(r);
        s.deferredNodes && s.deferredNodes.forEach(i_t), s.deferredNodes = void 0;
      }
      function i_t(r) {
        var s, l;
        (s = sn) == null || s.push(sn.Phase.Check, "checkDeferredNode", {
          kind: r.kind,
          pos: r.pos,
          end: r.end,
          path: r.tracingPath
        });
        const f = k;
        switch (k = r, h = 0, r.kind) {
          case 214:
          case 215:
          case 216:
          case 171:
          case 287:
            rx(r);
            break;
          case 219:
          case 220:
          case 175:
          case 174:
            Qot(r);
            break;
          case 178:
          case 179:
            _7e(r);
            break;
          case 232:
            Tut(r);
            break;
          case 169:
            Ict(r);
            break;
          case 286:
            ist(r);
            break;
          case 285:
            sst(r);
            break;
          case 217:
          case 235:
          case 218:
            bot(r);
            break;
          case 223:
            aa(r.expression);
            break;
          case 227:
            nO(r) && rx(r);
            break;
        }
        k = f, (l = sn) == null || l.pop();
      }
      function a_t(r, s) {
        var l, f;
        (l = sn) == null || l.push(sn.Phase.Check, s ? "checkSourceFileNodes" : "checkSourceFile", { path: r.path }, !0);
        const m = s ? "beforeCheckNodes" : "beforeCheck", y = s ? "afterCheckNodes" : "afterCheck";
        pc(m), s ? o_t(r, s) : s_t(r), pc(y), yp("Check", m, y), (f = sn) == null || f.pop(), M = void 0;
      }
      function n5e(r, s) {
        if (s) return !1;
        switch (r) {
          case 0:
            return !!L.noUnusedLocals;
          case 1:
            return !!L.noUnusedParameters;
          default:
            return E.assertNever(r);
        }
      }
      function i5e(r) {
        return hn.get(r.path) || Te;
      }
      function s_t(r) {
        const s = Pn(r);
        if (!(s.flags & 1)) {
          if (x6(r, L, e)) return;
          N5e(r), Yf(ey), Yf(uh), Yf(ty), Yf(_h), Yf(Hv), s.flags & 8388608 && (ey = s.potentialThisCollisions, uh = s.potentialNewTargetCollisions, ty = s.potentialWeakMapSetCollisions, _h = s.potentialReflectCollisions, Hv = s.potentialUnusedRenamedBindingElementsInTypes), bt(r.statements, xs), xs(r.endOfFileToken), r5e(r), gf(r) && G1(r), n(() => {
            !r.isDeclarationFile && (L.noUnusedLocals || L.noUnusedParameters) && x7e(i5e(r), (l, f, m) => {
              !Ax(l) && n5e(f, !!(l.flags & 33554432)) && Ws.add(m);
            }), r.isDeclarationFile || Nlt();
          }), gf(r) && K7e(r), ey.length && (bt(ey, Flt), Yf(ey)), uh.length && (bt(uh, Llt), Yf(uh)), ty.length && (bt(ty, Blt), Yf(ty)), _h.length && (bt(_h, zlt), Yf(_h)), s.flags |= 1;
        }
      }
      function o_t(r, s) {
        const l = Pn(r);
        if (!(l.flags & 1)) {
          if (x6(r, L, e)) return;
          N5e(r), Yf(ey), Yf(uh), Yf(ty), Yf(_h), Yf(Hv), bt(s, xs), r5e(r), (l.potentialThisCollisions || (l.potentialThisCollisions = [])).push(...ey), (l.potentialNewTargetCollisions || (l.potentialNewTargetCollisions = [])).push(...uh), (l.potentialWeakMapSetCollisions || (l.potentialWeakMapSetCollisions = [])).push(...ty), (l.potentialReflectCollisions || (l.potentialReflectCollisions = [])).push(..._h), (l.potentialUnusedRenamedBindingElementsInTypes || (l.potentialUnusedRenamedBindingElementsInTypes = [])).push(...Hv), l.flags |= 8388608;
          for (const f of s) {
            const m = Pn(f);
            m.flags |= 8388608;
          }
        }
      }
      function a5e(r, s, l) {
        try {
          return i = s, c_t(r, l);
        } finally {
          i = void 0;
        }
      }
      function Yme() {
        for (const r of t) r();
        t = [];
      }
      function Zme(r, s) {
        Yme();
        const l = n;
        n = (f) => f(), a_t(r, s), n = l;
      }
      function c_t(r, s) {
        if (r) {
          Yme();
          const l = Ws.getGlobalDiagnostics(), f = l.length;
          Zme(r, s);
          const m = Ws.getDiagnostics(r.fileName);
          if (s) return m;
          const y = Ws.getGlobalDiagnostics();
          return y !== l ? zi(_Q(l, y, ND), m) : f === 0 && y.length > 0 ? zi(y, m) : m;
        }
        return bt(e.getSourceFiles(), (l) => Zme(l)), Ws.getDiagnostics();
      }
      function l_t() {
        return Yme(), Ws.getGlobalDiagnostics();
      }
      function u_t(r, s) {
        if (r.flags & 67108864) return [];
        const l = Ka();
        let f = !1;
        return m(), l.delete("this"), epe(l);
        function m() {
          for (; r; ) {
            switch (og(r) && r.locals && !D0(r) && x(r.locals, s), r.kind) {
              case 308:
                if (!Sl(r)) break;
              case 268:
                O(mn(r).exports, s & 2623475);
                break;
              case 267:
                x(mn(r).exports, s & 8);
                break;
              case 232:
                r.name && y(r.symbol, s);
              case 264:
              case 265:
                f || x(Eg(mn(r)), s & 788968);
                break;
              case 219:
                r.name && y(r.symbol, s);
                break;
            }
            xK(r) && y(Xe, s), f = es(r), r = r.parent;
          }
          x(Ce, s);
        }
        function y(J, V) {
          if (v6(J) & V) {
            const Y = J.escapedName;
            l.has(Y) || l.set(Y, J);
          }
        }
        function x(J, V) {
          V && J.forEach((Y) => {
            y(Y, V);
          });
        }
        function O(J, V) {
          V && J.forEach((Y) => {
            !Ho(Y, 282) && !Ho(Y, 281) && Y.escapedName !== "default" && y(Y, V);
          });
        }
      }
      function __t(r) {
        return r.kind === 80 && Kx(r.parent) && va(r.parent) === r;
      }
      function s5e(r) {
        for (; r.parent.kind === 167; ) r = r.parent;
        return r.parent.kind === 184;
      }
      function f_t(r) {
        for (; r.parent.kind === 212; ) r = r.parent;
        return r.parent.kind === 234;
      }
      function o5e(r, s) {
        let l, f = nu(r);
        for (; f && !(l = s(f)); )
          f = nu(f);
        return l;
      }
      function p_t(r) {
        return !!cr(r, (s) => yc(s) && Gp(s.body) || ga(s) ? !0 : Zn(s) || So(s) ? "quit" : !1);
      }
      function Kme(r, s) {
        return !!o5e(r, (l) => l === s);
      }
      function d_t(r) {
        for (; r.parent.kind === 167; ) r = r.parent;
        if (r.parent.kind === 272) return r.parent.moduleReference === r ? r.parent : void 0;
        if (r.parent.kind === 278) return r.parent.expression === r ? r.parent : void 0;
      }
      function ZX(r) {
        return d_t(r) !== void 0;
      }
      function m_t(r) {
        switch (qc(r.parent.parent)) {
          case 1:
          case 3:
            return Nf(r.parent);
          case 5:
            if (Ln(r.parent) && Hx(r.parent) === r) return;
          case 4:
          case 2:
            return mn(r.parent.parent);
        }
      }
      function g_t(r) {
        let s = r.parent;
        for (; k_(s); )
          r = s, s = s.parent;
        if (s && s.kind === 206 && s.qualifier === r) return s;
      }
      function h_t(r) {
        if (r.expression.kind === 110) {
          const s = c_(r, !1, !1);
          if (Ra(s)) {
            const l = gIe(s);
            if (l) {
              const f = yIe(l, yb(l, void 0));
              return f && !Bi(f);
            }
          }
        }
      }
      function c5e(r) {
        if (pg(r)) return Nf(r.parent);
        if (rn(r) && r.parent.kind === 212 && r.parent === r.parent.parent.left && !Oi(r) && !Pv(r) && !h_t(r.parent)) {
          const s = m_t(r);
          if (s) return s;
        }
        if (r.parent.kind === 278 && go(r)) {
          const s = Tc(r, 2998271, !0);
          if (s && s !== it) return s;
        } else if (S_(r) && ZX(r)) {
          const s = dv(r, 272);
          return E.assert(s !== void 0), JE(r, !0);
        }
        if (S_(r)) {
          const s = g_t(r);
          if (s) {
            Di(s);
            const l = Pn(r).resolvedSymbol;
            return l === it ? void 0 : l;
          }
        }
        for (; fee(r); ) r = r.parent;
        if (f_t(r)) {
          let s = 0;
          r.parent.kind === 234 ? (s = Sm(r) ? 788968 : 111551, rO(r.parent) && (s |= 111551)) : s = 1920, s |= 2097152;
          const l = go(r) ? Tc(r, s, !0) : void 0;
          if (l) return l;
        }
        if (r.parent.kind === 342) return mA(r.parent);
        if (r.parent.kind === 169 && r.parent.parent.kind === 346) {
          E.assert(!rn(r));
          const s = JK(r.parent);
          return s && s.symbol;
        }
        if (fg(r)) {
          if (Nc(r)) return;
          const s = cr(r, _f(Ex, sw, Pv)), l = s ? 901119 : 111551;
          if (r.kind === 80) {
            if (c6(r) && ex(r)) {
              const m = gX(r.parent);
              return m === it ? void 0 : m;
            }
            const f = Tc(r, l, !0, !0, fv(r));
            if (!f && s) {
              const m = cr(r, _f(Zn, au));
              if (m) return LR(r, !0, mn(m));
            }
            if (f && s) {
              const m = Fb(r);
              if (m && Gh(m) && m === f.valueDeclaration) return Tc(r, l, !0, !0, Sr(m)) || f;
            }
            return f;
          } else {
            if (Oi(r)) return bX(r);
            if (r.kind === 212 || r.kind === 167) {
              const f = Pn(r);
              return f.resolvedSymbol ? f.resolvedSymbol : (r.kind === 212 ? (vX(r, 0), f.resolvedSymbol || (f.resolvedSymbol = l5e(wc(r.expression), u0(r.name)))) : $Ie(r, 0), !f.resolvedSymbol && s && k_(r) ? LR(r) : f.resolvedSymbol);
            } else if (Pv(r)) return LR(r);
          }
        } else if (S_(r) && s5e(r)) {
          const s = r.parent.kind === 184 ? 788968 : 1920, l = Tc(r, s, !0, !0);
          return l && l !== it ? l : v$(r);
        }
        if (r.parent.kind === 183) return Tc(r, 1, !0);
      }
      function l5e(r, s) {
        const l = Kfe(r, s);
        if (l.length && r.members) {
          const f = m$(om(r).members);
          if (l === Bu(r)) return f;
          if (f) {
            const m = Wi(f), y = or(Rn(l, (x) => x.declaration), Hs).join(",");
            if (m.filteredIndexSymbolCache || (m.filteredIndexSymbolCache = /* @__PURE__ */ new Map()), m.filteredIndexSymbolCache.has(y)) return m.filteredIndexSymbolCache.get(y);
            {
              const x = Fs(131072, "__index");
              return x.declarations = Rn(l, (O) => O.declaration), x.parent = r.aliasSymbol ? r.aliasSymbol : r.symbol ? r.symbol : Wp(x.declarations[0].parent), m.filteredIndexSymbolCache.set(y, x), x;
            }
          }
        }
      }
      function LR(r, s, l) {
        if (S_(r)) {
          let x = Tc(r, 901119, s, !0, fv(r));
          if (!x && Fe(r) && l && (x = ys(Ku(Tu(l), r.escapedText, 901119))), x) return x;
        }
        const f = Fe(r) ? l : LR(r.left, s, l), m = Fe(r) ? r.escapedText : r.right.escapedText;
        if (f) {
          const y = f.flags & 111551 && ms(ft(f), "prototype");
          return ms(y ? ft(y) : Oo(f), m);
        }
      }
      function Wp(r, s) {
        if (Pi(r)) return Sl(r) ? ys(r.symbol) : void 0;
        const { parent: l } = r, f = l.parent;
        if (!(r.flags & 67108864)) {
          if (Q1e(r)) {
            const m = mn(l);
            return By(r.parent) && r.parent.propertyName === r ? dX(m) : m;
          } else if (hA(r)) return mn(l.parent);
          if (r.kind === 80) {
            if (ZX(r)) return c5e(r);
            if (l.kind === 209 && f.kind === 207 && r === l.propertyName) {
              const m = ms(LC(f), r.escapedText);
              if (m) return m;
            } else if (RS(l) && l.name === r)
              return l.keywordToken === 105 && On(r) === "target" ? dme(l).symbol : l.keywordToken === 102 && On(r) === "meta" ? Y3e().members.get("meta") : void 0;
          }
          switch (r.kind) {
            case 80:
            case 81:
            case 212:
            case 167:
              if (!jb(r)) return c5e(r);
            case 110:
              const m = c_(r, !1, !1);
              if (Ra(m)) {
                const O = mp(m);
                if (O.thisParameter) return O.thisParameter;
              }
              if (A5(r)) return aa(r).symbol;
            case 198:
              return Fpe(r).symbol;
            case 108:
              return aa(r).symbol;
            case 137:
              const y = r.parent;
              return y && y.kind === 177 ? y.parent.symbol : void 0;
            case 11:
            case 15:
              if (uv(r.parent.parent) && sD(r.parent.parent) === r || (r.parent.kind === 273 || r.parent.kind === 279) && r.parent.moduleSpecifier === r || rn(r) && Fm(r.parent) && r.parent.moduleSpecifier === r || rn(r) && J_(r.parent, !1) || B_(r.parent) || B0(r.parent) && Bh(r.parent.parent) && r.parent.parent.argument === r.parent) return Ru(r, r, s);
              if (za(l) && bS(l) && l.arguments[1] === r) return mn(l);
            case 9:
              const x = Po(l) ? l.argumentExpression === r ? Ol(l.expression) : void 0 : B0(l) && $b(f) ? Di(f.objectType) : void 0;
              return x && ms(x, mc(r.text));
            case 90:
            case 100:
            case 39:
            case 86:
              return Nf(r.parent);
            case 206:
              return Bh(r) ? Wp(r.argument.literal, s) : void 0;
            case 95:
              return Xo(r.parent) ? E.checkDefined(r.parent.symbol) : void 0;
            case 102:
              if (RS(r.parent) && r.parent.name.escapedText === "defer") return;
            case 105:
              return RS(r.parent) ? I8e(r.parent).symbol : void 0;
            case 104:
              if (un(r.parent)) {
                const O = Ol(r.parent.right), J = Cme(O);
                return J?.symbol ?? O.symbol;
              }
              return;
            case 237:
              return aa(r).symbol;
            case 296:
              if (c6(r) && ex(r)) {
                const O = gX(r.parent);
                return O === it ? void 0 : O;
              }
            default:
              return;
          }
        }
      }
      function y_t(r) {
        if (Fe(r) && Ln(r.parent) && r.parent.name === r) {
          const s = u0(r), l = Ol(r.parent.expression);
          return ks(l.flags & 134217728 ? l.types : [l], (f) => dn(Bu(f), (m) => TC(s, m.keyType)));
        }
      }
      function v_t(r) {
        if (r && r.kind === 305) return Tc(r.name, 2208703, !0);
      }
      function b_t(r) {
        if ($u(r)) {
          const s = r.propertyName || r.name;
          return r.parent.parent.moduleSpecifier ? ST(r.parent.parent, r) : s.kind === 11 ? void 0 : Tc(s, 2998271, !0);
        } else return Tc(r, 2998271, !0);
      }
      function LC(r) {
        if (Pi(r) && !Sl(r) || r.flags & 67108864) return rt;
        const s = CJ(r), l = s && Rp(mn(s.class));
        if (Sm(r)) {
          const f = Di(r);
          return l ? Of(f, l.thisType) : f;
        }
        if (fg(r)) return u5e(r);
        if (l && !s.isImplements) {
          const f = ul(Nd(l));
          return f ? Of(f, l.thisType) : rt;
        }
        if (Kx(r)) return Oo(mn(r));
        if (__t(r)) {
          const f = Wp(r);
          return f ? Oo(f) : rt;
        }
        if (Ns(r)) return nn(r, !0, 0) || rt;
        if (Jl(r)) {
          const f = mn(r);
          return f ? ft(f) : rt;
        }
        if (Q1e(r)) {
          const f = Wp(r);
          return f ? ft(f) : rt;
        }
        if (Ja(r)) return nn(r.parent, !0, 0) || rt;
        if (ZX(r)) {
          const f = Wp(r);
          if (f) {
            const m = Oo(f);
            return hi(m) ? ft(f) : m;
          }
        }
        return RS(r.parent) && r.parent.keywordToken === r.kind ? I8e(r.parent) : BS(r) ? upe(!1) : rt;
      }
      function KX(r) {
        if (E.assert(r.kind === 211 || r.kind === 210), r.parent.kind === 251) return ix(r, NR(r.parent) || rt);
        if (r.parent.kind === 227) return ix(r, Ol(r.parent.right) || rt);
        if (r.parent.kind === 304) {
          const m = ns(r.parent.parent, bs);
          return H8e(m, KX(m) || rt, t6(m.properties, r.parent));
        }
        const s = ns(r.parent, hu), l = KX(s) || rt, f = xy(65, l, $e, r.parent) || rt;
        return $8e(s, l, s.elements.indexOf(r), f);
      }
      function S_t(r) {
        const s = KX(ns(r.parent.parent, Q4));
        return s && ms(s, r.escapedText);
      }
      function u5e(r) {
        return CD(r) && (r = r.parent), ku(Ol(r));
      }
      function _5e(r) {
        const s = Nf(r.parent);
        return es(r) ? ft(s) : Oo(s);
      }
      function f5e(r) {
        const s = r.name;
        switch (s.kind) {
          case 80:
            return sf(On(s));
          case 9:
          case 11:
            return sf(s.text);
          case 168:
            const l = Od(s);
            return Cu(l, 16896) ? l : Cr;
          default:
            return E.fail("Unsupported property name.");
        }
      }
      function ege(r) {
        r = h_(r);
        const s = Ka(co(r)), l = Pa(r, 0).length ? Oc : Pa(r, 1).length ? Dc : void 0;
        return l && bt(co(l), (f) => {
          s.has(f.escapedName) || s.set(f.escapedName, f);
        }), o0(s, void 0);
      }
      function eQ(r) {
        return Pa(r, 0).length !== 0 || Pa(r, 1).length !== 0;
      }
      function p5e(r) {
        const s = T_t(r);
        return s ? ks(s, p5e) : [r];
      }
      function T_t(r) {
        if (gc(r) & 6) return Rn(Wi(r).containingType.types, (s) => ms(s, r.escapedName));
        if (r.flags & 33554432) {
          const { links: { leftSpread: s, rightSpread: l, syntheticOrigin: f } } = r;
          return s ? [s, l] : f ? [f] : dx(x_t(r));
        }
      }
      function x_t(r) {
        let s, l = r;
        for (; l = Wi(l).target; ) s = l;
        return s;
      }
      function k_t(r) {
        if (Ko(r)) return !1;
        const s = Ca(r, Fe);
        if (!s) return !1;
        const l = s.parent;
        return l ? !((Ln(l) || ol(l)) && l.name === s) && p7(s) === Xe : !1;
      }
      function C_t(r) {
        return R3(r.parent) && r === r.parent.name;
      }
      function E_t(r, s) {
        var l;
        const f = Ca(r, Fe);
        if (f) {
          let m = p7(f, C_t(f));
          if (m) {
            if (m.flags & 1048576) {
              const x = ys(m.exportSymbol);
              if (!s && x.flags & 944 && !(x.flags & 3)) return;
              m = x;
            }
            const y = ju(m);
            if (y) {
              if (y.flags & 512 && ((l = y.valueDeclaration) == null ? void 0 : l.kind) === 308) {
                const x = y.valueDeclaration;
                return x !== Sr(f) ? void 0 : x;
              }
              return cr(f.parent, (x) => R3(x) && mn(x) === y);
            }
          }
        }
      }
      function D_t(r) {
        const s = Nte(r);
        if (s) return s;
        const l = Ca(r, Fe);
        if (l) {
          const f = W_t(l);
          if (lC(f, 111551) && !wd(f, 111551)) return _p(f);
        }
      }
      function w_t(r) {
        return r.valueDeclaration && Ns(r.valueDeclaration) && cS(r.valueDeclaration).parent.kind === 300;
      }
      function d5e(r) {
        if (r.flags & 418 && r.valueDeclaration && !Pi(r.valueDeclaration)) {
          const s = Wi(r);
          if (s.isDeclarationWithCollidingName === void 0) {
            const l = Bd(r.valueDeclaration);
            if (tK(l) || w_t(r)) if (Gr(l.parent, r.escapedName, 111551, void 0, !1)) s.isDeclarationWithCollidingName = !0;
            else if (tge(r.valueDeclaration, 16384)) {
              const f = tge(r.valueDeclaration, 32768), m = Uy(l, !1), y = l.kind === 242 && Uy(l.parent, !1);
              s.isDeclarationWithCollidingName = !cK(l) && (!f || !m && !y);
            } else s.isDeclarationWithCollidingName = !1;
          }
          return s.isDeclarationWithCollidingName;
        }
        return !1;
      }
      function P_t(r) {
        if (!Ko(r)) {
          const s = Ca(r, Fe);
          if (s) {
            const l = p7(s);
            if (l && d5e(l)) return l.valueDeclaration;
          }
        }
      }
      function A_t(r) {
        const s = Ca(r, Jl);
        if (s) {
          const l = mn(s);
          if (l) return d5e(l);
        }
        return !1;
      }
      function m5e(r) {
        switch (E.assert(Xt), r.kind) {
          case 272:
            return tQ(mn(r));
          case 274:
          case 275:
          case 277:
          case 282:
            const s = mn(r);
            return !!s && tQ(s, !0);
          case 279:
            const l = r.exportClause;
            return !!l && (gg(l) || _t(l.elements, m5e));
          case 278:
            return r.expression && r.expression.kind === 80 ? tQ(mn(r), !0) : !0;
        }
        return !1;
      }
      function N_t(r) {
        const s = Ca(r, bl);
        return s === void 0 || s.parent.kind !== 308 || !yS(s) ? !1 : tQ(mn(s)) && s.moduleReference && !Nc(s.moduleReference);
      }
      function tQ(r, s) {
        if (!r) return !1;
        const l = Sr(r.valueDeclaration);
        Af(l && mn(l));
        const f = Ui(Zl(r));
        return f === it ? !s || !wd(r) : !!(m_(r, s, !0) & 111551) && (e1(L) || !f7(f));
      }
      function f7(r) {
        return kme(r) || !!r.constEnumOnlyModule;
      }
      function g5e(r, s) {
        if (E.assert(Xt), fy(r)) {
          const l = mn(r), f = l && Wi(l);
          if (f?.referenced) return !0;
          const m = Wi(l).aliasTarget;
          if (m && Pu(r) & 32 && m_(m) & 111551 && (e1(L) || !f7(m))) return !0;
        }
        return s ? !!Fa(r, (l) => g5e(l, s)) : !1;
      }
      function h5e(r) {
        if (Gp(r.body)) {
          if (Wg(r) || vm(r)) return !1;
          const s = B2(mn(r));
          return s.length > 1 || s.length === 1 && s[0].declaration !== r;
        }
        return !1;
      }
      function I_t(r) {
        const s = b5e(r);
        if (!s) return !1;
        const l = Di(s);
        return hi(l) || c4(l);
      }
      function MR(r, s) {
        return (O_t(r, s) || F_t(r)) && !I_t(r);
      }
      function O_t(r, s) {
        return !Q || T8(r) || np(r) || !r.initializer ? !1 : Qn(r, 31) ? !!s && So(s) : !0;
      }
      function F_t(r) {
        return Q && T8(r) && (np(r) || !r.initializer) && Qn(r, 31);
      }
      function y5e(r) {
        const s = Ca(r, (f) => Xc(f) || ci(f));
        if (!s) return !1;
        let l;
        if (ci(s)) {
          if (s.type || !rn(s) && !d7(s)) return !1;
          const f = uD(s);
          if (!f || !jd(f)) return !1;
          l = mn(f);
        } else l = mn(s);
        return !l || !(l.flags & 16 | 3) ? !1 : !!Dl(Tu(l), (f) => f.flags & 111551 && rk(f.valueDeclaration));
      }
      function L_t(r) {
        const s = Ca(r, Xc);
        if (!s) return Te;
        const l = mn(s);
        return l && co(ft(l)) || Te;
      }
      function MC(r) {
        var s;
        const l = r.id || 0;
        return l < 0 || l >= v2.length ? 0 : ((s = v2[l]) == null ? void 0 : s.flags) || 0;
      }
      function tge(r, s) {
        return M_t(r, s), !!(MC(r) & s);
      }
      function M_t(r, s) {
        if (!L.noCheck && BD(Sr(r), L) || Pn(r).calculatedFlags & s) return;
        switch (s) {
          case 16:
          case 32:
            return y(r);
          case 128:
          case 256:
          case 2097152:
            return m(r);
          case 512:
          case 8192:
          case 65536:
          case 262144:
            return O(r);
          case 536870912:
            return V(r);
          case 4096:
          case 32768:
          case 16384:
            return be(r);
          default:
            return E.assertNever(s, `Unhandled node check flag calculation: ${E.formatNodeCheckFlags(s)}`);
        }
        function l(Je, gt) {
          const ht = gt(Je, Je.parent);
          if (ht !== "skip")
            return ht || bk(Je, gt);
        }
        function f(Je) {
          const gt = Pn(Je);
          if (gt.calculatedFlags & s) return "skip";
          gt.calculatedFlags |= 2097536, y(Je);
        }
        function m(Je) {
          l(Je, f);
        }
        function y(Je) {
          const gt = Pn(Je);
          gt.calculatedFlags |= 48, Je.kind === 108 && oX(Je);
        }
        function x(Je) {
          const gt = Pn(Je);
          if (gt.calculatedFlags & s) return "skip";
          gt.calculatedFlags |= 336384, V(Je);
        }
        function O(Je) {
          l(Je, x);
        }
        function J(Je) {
          return fg(Je) || Nu(Je.parent) && (Je.parent.objectAssignmentInitializer ?? Je.parent.name) === Je;
        }
        function V(Je) {
          const gt = Pn(Je);
          if (gt.calculatedFlags |= 536870912, Fe(Je) && (gt.calculatedFlags |= 49152, J(Je) && !(Ln(Je.parent) && Je.parent.name === Je))) {
            const ht = t_(Je);
            ht && ht !== it && fIe(Je, ht);
          }
        }
        function Y(Je) {
          const gt = Pn(Je);
          if (gt.calculatedFlags & s) return "skip";
          gt.calculatedFlags |= 53248, me(Je);
        }
        function be(Je) {
          l(Bd(pg(Je) ? Je.parent : Je), Y);
        }
        function me(Je) {
          V(Je), _s(Je) && Od(Je), Oi(Je) && al(Je.parent) && LX(Je.parent);
        }
      }
      function sx(r) {
        return Q7e(r.parent), Pn(r).enumMemberValue ?? Pl(void 0);
      }
      function v5e(r) {
        switch (r.kind) {
          case 307:
          case 212:
          case 213:
            return !0;
        }
        return !1;
      }
      function rQ(r) {
        if (r.kind === 307) return sx(r).value;
        Pn(r).resolvedSymbol || wc(r);
        const s = Pn(r).resolvedSymbol || (go(r) ? Tc(r, 111551, !0) : void 0);
        if (s && s.flags & 8) {
          const l = s.valueDeclaration;
          if (cv(l.parent)) return sx(l).value;
        }
      }
      function rge(r) {
        return !!(r.flags & 1048576) && Pa(r, 0).length > 0;
      }
      function R_t(r, s) {
        var l;
        const f = Ca(r, S_);
        if (!f || s && (s = Ca(s), !s))
          return 0;
        let m = !1;
        if (k_(f)) {
          const Y = Tc(x_(f), 111551, !0, !0, s);
          m = !!((l = Y?.declarations) != null && l.every(C0));
        }
        const y = Tc(f, 111551, !0, !0, s), x = y && y.flags & 2097152 ? Zl(y) : y;
        m || (m = !!(y && wd(y, 111551)));
        const O = Tc(f, 788968, !0, !0, s), J = O && O.flags & 2097152 ? Zl(O) : O;
        if (y || m || (m = !!(O && wd(O, 788968))), x && x === J) {
          const Y = _pe(!1);
          if (Y && x === Y) return 9;
          const be = ft(x);
          if (be && FT(be)) return m ? 10 : 1;
        }
        if (!J) return m ? 11 : 0;
        const V = Oo(J);
        return hi(V) ? m ? 11 : 0 : V.flags & 3 ? 11 : Cu(V, 262172) ? 2 : Cu(V, 8448) ? 6 : Cu(V, 67648) ? 3 : Cu(V, 4224) ? 4 : Cu(V, 12583968) ? 5 : Ls(V) ? 7 : Cu(V, 16896) ? 8 : rge(V) ? 10 : Jp(V) ? 7 : 11;
      }
      function j_t(r, s, l, f, m) {
        const y = Ca(r, RO);
        if (!y) return A.createToken(133);
        const x = mn(y);
        return K.serializeTypeForDeclaration(y, x, s, l | 1024, f, m);
      }
      function nge(r) {
        r = Ca(r, P3);
        const s = r.kind === 179 ? 178 : 179, l = Ho(mn(r), s);
        return {
          firstAccessor: l && l.pos < r.pos ? l : r,
          secondAccessor: l && l.pos < r.pos ? r : l,
          setAccessor: r.kind === 179 ? r : l,
          getAccessor: r.kind === 178 ? r : l
        };
      }
      function B_t(r, s, l, f, m) {
        const y = Ca(r, Ra);
        return y ? K.serializeReturnTypeForSignature(y, s, l | 1024, f, m) : A.createToken(133);
      }
      function J_t(r, s, l, f, m) {
        const y = Ca(r, dt);
        return y ? K.serializeTypeForExpression(y, s, l | 1024, f, m) : A.createToken(133);
      }
      function z_t(r) {
        return Ce.has(mc(r));
      }
      function p7(r, s) {
        const l = Pn(r).resolvedSymbol;
        if (l) return l;
        let f = r;
        if (s) {
          const m = r.parent;
          Jl(m) && r === m.name && (f = Ki(m));
        }
        return Gr(f, r.escapedText, 3257279, void 0, !0);
      }
      function W_t(r) {
        const s = Pn(r).resolvedSymbol;
        return s && s !== it ? s : Gr(r, r.escapedText, 3257279, void 0, !0, void 0);
      }
      function U_t(r) {
        if (!Ko(r)) {
          const s = Ca(r, Fe);
          if (s) {
            const l = p7(s);
            if (l) return Ui(l).valueDeclaration;
          }
        }
      }
      function V_t(r) {
        if (!Ko(r)) {
          const s = Ca(r, Fe);
          if (s) {
            const l = p7(s);
            if (l) return dn(Ui(l).declarations, (f) => {
              switch (f.kind) {
                case 261:
                case 170:
                case 209:
                case 173:
                case 304:
                case 305:
                case 307:
                case 211:
                case 263:
                case 219:
                case 220:
                case 264:
                case 232:
                case 267:
                case 175:
                case 178:
                case 179:
                case 268:
                  return !0;
              }
              return !1;
            });
          }
        }
      }
      function q_t(r) {
        return $3(r) || ci(r) && d7(r) ? W2(ft(mn(r))) : !1;
      }
      function G_t(r, s, l) {
        const f = r.flags & 98304 ? K.symbolToExpression(r.symbol, 111551, s, void 0, void 0, l) : r === Ir ? A.createTrue() : r === wt && A.createFalse();
        if (f) return f;
        const m = r.value;
        return typeof m == "object" ? A.createBigIntLiteral(m) : typeof m == "string" ? A.createStringLiteral(m) : m < 0 ? A.createPrefixUnaryExpression(41, A.createNumericLiteral(-m)) : A.createNumericLiteral(m);
      }
      function H_t(r, s) {
        return G_t(ft(mn(r)), r, s);
      }
      function ige(r) {
        return r ? (x2(r), Sr(r).localJsxFactory || fh) : fh;
      }
      function age(r) {
        if (r) {
          const s = Sr(r);
          if (s) {
            if (s.localJsxFragmentFactory) return s.localJsxFragmentFactory;
            const l = s.pragmas.get("jsxfrag"), f = da(l) ? l[0] : l;
            if (f)
              return s.localJsxFragmentFactory = Tk(f.arguments.factory, z), s.localJsxFragmentFactory;
          }
        }
        if (L.jsxFragmentFactory) return Tk(L.jsxFragmentFactory, z);
      }
      function b5e(r) {
        const s = _l(r);
        if (s) return s;
        if (r.kind === 170 && r.parent.kind === 179) {
          const l = nge(r.parent).getAccessor;
          if (l) return yf(l);
        }
      }
      function $_t() {
        return {
          getReferencedExportContainer: E_t,
          getReferencedImportDeclaration: D_t,
          getReferencedDeclarationWithCollidingName: P_t,
          isDeclarationWithCollidingName: A_t,
          isValueAliasDeclaration: (s) => {
            const l = Ca(s);
            return l && Xt ? m5e(l) : !0;
          },
          hasGlobalName: z_t,
          isReferencedAliasDeclaration: (s, l) => {
            const f = Ca(s);
            return f && Xt ? g5e(f, l) : !0;
          },
          hasNodeCheckFlag: (s, l) => {
            const f = Ca(s);
            return f ? tge(f, l) : !1;
          },
          isTopLevelValueImportEqualsWithEntityName: N_t,
          isDeclarationVisible: xe,
          isImplementationOfOverload: h5e,
          requiresAddingImplicitUndefined: MR,
          isExpandoFunctionDeclaration: y5e,
          getPropertiesOfContainerFunction: L_t,
          createTypeOfDeclaration: j_t,
          createReturnTypeOfSignatureDeclaration: B_t,
          createTypeOfExpression: J_t,
          createLiteralConstValue: H_t,
          isSymbolAccessible: L1,
          isEntityNameVisible: dy,
          getConstantValue: (s) => {
            const l = Ca(s, v5e);
            return l ? rQ(l) : void 0;
          },
          getEnumMemberValue: (s) => {
            const l = Ca(s, Gh);
            return l ? sx(l) : void 0;
          },
          collectLinkedAliases: He,
          markLinkedReferences: (s) => {
            const l = Ca(s);
            return l && NC(l, 0);
          },
          getReferencedValueDeclaration: U_t,
          getReferencedValueDeclarations: V_t,
          getTypeReferenceSerializationKind: R_t,
          isOptionalParameter: T8,
          isArgumentsLocalBinding: k_t,
          getExternalModuleFileFromDeclaration: (s) => {
            const l = Ca(s, _K);
            return l && sge(l);
          },
          isLiteralConstDeclaration: q_t,
          isLateBound: (s) => {
            const l = Ca(s, Jl), f = l && mn(l);
            return !!(f && gc(f) & 4096);
          },
          getJsxFactoryEntity: ige,
          getJsxFragmentFactoryEntity: age,
          isBindingCapturedByNode: (s, l) => {
            const f = Ca(s), m = Ca(l);
            return !!f && !!m && (ci(m) || Ns(m)) && aat(f, m);
          },
          getDeclarationStatementsForSourceFile: (s, l, f, m) => {
            const y = Ca(s);
            E.assert(y && y.kind === 308, "Non-sourcefile node passed into getDeclarationsForSourceFile");
            const x = mn(s);
            return x ? (Af(x), x.exports ? K.symbolTableToDeclarationStatements(x.exports, s, l, f, m) : []) : s.locals ? K.symbolTableToDeclarationStatements(s.locals, s, l, f, m) : [];
          },
          isImportRequiredByAugmentation: r,
          isDefinitelyReferenceToGlobalSymbolObject: Sg,
          createLateBoundIndexSignatures: (s, l, f, m, y) => {
            const x = s.symbol, O = Bu(ft(x)), J = d$(x), V = J && g$(J, ma(Eg(x).values()));
            let Y;
            for (const me of [O, V])
              if (It(me)) {
                Y || (Y = []);
                for (const Je of me) {
                  if (Je.declaration || Je === ml) continue;
                  if (Je.components && hr(Je.components, (ht) => {
                    var ir;
                    return !!(ht.name && _s(ht.name) && go(ht.name.expression) && l && ((ir = dy(ht.name.expression, l, !1)) == null ? void 0 : ir.accessibility) === 0);
                  })) {
                    const ht = dn(Je.components, (ir) => !e4(ir));
                    Y.push(...or(ht, (ir) => {
                      be(ir.name.expression);
                      const mr = me === O ? [A.createModifier(126)] : void 0;
                      return A.createPropertyDeclaration(kr(mr, Je.isReadonly ? A.createModifier(148) : void 0), ir.name, (f_(ir) || ga(ir) || gd(ir) || hc(ir) || Wg(ir) || vm(ir)) && ir.questionToken ? A.createToken(58) : void 0, K.typeToTypeNode(ft(ir.symbol), l, f, m, y), void 0);
                    }));
                    continue;
                  }
                  const gt = K.indexInfoToIndexSignatureDeclaration(Je, l, f, m, y);
                  gt && me === O && (gt.modifiers || (gt.modifiers = A.createNodeArray())).unshift(A.createModifier(126)), gt && Y.push(gt);
                }
              }
            return Y;
            function be(me) {
              if (!y.trackSymbol) return;
              const Je = x_(me), gt = Gr(Je, Je.escapedText, 1160127, void 0, !0);
              gt && y.trackSymbol(gt, l, 111551);
            }
          },
          symbolToDeclarations: (s, l, f, m, y, x) => K.symbolToDeclarations(s, l, f, m, y, x)
        };
        function r(s) {
          const l = Sr(s);
          if (!l.symbol) return !1;
          const f = sge(s);
          if (!f || f === l) return !1;
          const m = kg(l.symbol);
          for (const y of ma(m.values())) if (y.mergeId) {
            const x = ys(y);
            if (x.declarations) {
              for (const O of x.declarations) if (Sr(O) === f) return !0;
            }
          }
          return !1;
        }
      }
      function sge(r) {
        const s = r.kind === 268 ? qn(r.name, Ts) : Lx(r), l = eb(s, s, void 0);
        if (l)
          return Ho(l, 308);
      }
      function X_t() {
        for (const s of e.getSourceFiles()) Cne(s, L);
        Ip = /* @__PURE__ */ new Map();
        let r;
        for (const s of e.getSourceFiles())
          if (!s.redirectInfo) {
            if (!gf(s)) {
              const l = s.locals.get("globalThis");
              if (l?.declarations) for (const f of l.declarations) Ws.add(Kr(f, p.Declaration_name_conflicts_with_built_in_global_identifier_0, "globalThis"));
              to(Ce, s.locals);
            }
            s.jsGlobalAugmentations && to(Ce, s.jsGlobalAugmentations), s.patternAmbientModules && s.patternAmbientModules.length && (Hi = zi(Hi, s.patternAmbientModules)), s.moduleAugmentations.length && (r || (r = [])).push(s.moduleAugmentations), s.symbol && s.symbol.globalExports && s.symbol.globalExports.forEach((l, f) => {
              Ce.has(f) || Ce.set(f, l);
            });
          }
        if (r) for (const s of r) for (const l of s)
          ug(l.parent) && dh(l);
        if (FE(), Wi(ue).type = ye, Wi(Xe).type = Mc("IArguments", 0, !0), Wi(it).type = rt, Wi(Ie).type = Lp(16, Ie), zs = Mc("Array", 1, !0), io = Mc("Object", 0, !0), Qs = Mc("Function", 0, !0), Oc = he && Mc("CallableFunction", 0, !0) || Qs, Dc = he && Mc("NewableFunction", 0, !0) || Qs, Il = Mc("String", 0, !0), Op = Mc("Number", 0, !0), Wf = Mc("Boolean", 0, !0), id = Mc("RegExp", 0, !0), hl = Ju(Ve), ll = Ju(fr), ll === Yi && (ll = Yo(void 0, R, Te, Te, Te)), bc = aAe("ReadonlyArray", 1) || zs, Kd = bc ? LP(bc, [Ve]) : hl, ad = aAe("ThisType", 1), r) for (const s of r) for (const l of s)
          ug(l.parent) || dh(l);
        Ip.forEach(({ firstFile: s, secondFile: l, conflictingSymbols: f }) => {
          if (f.size < 8) f.forEach(({ isBlockScoped: m, firstFileLocations: y, secondFileLocations: x }, O) => {
            const J = m ? p.Cannot_redeclare_block_scoped_variable_0 : p.Duplicate_identifier_0;
            for (const V of y) oy(V, J, O, x);
            for (const V of x) oy(V, J, O, y);
          });
          else {
            const m = ma(f.keys()).join(", ");
            Ws.add(ts(Kr(s, p.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0, m), Kr(l, p.Conflicts_are_in_this_file))), Ws.add(ts(Kr(l, p.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0, m), Kr(s, p.Conflicts_are_in_this_file)));
          }
        }), Ip = void 0;
      }
      function Fl(r, s) {
        if (L.importHelpers) {
          const l = Sr(r);
          if (r6(l, L) && !(r.flags & 33554432)) {
            const f = Y_t(l, r);
            if (f !== it) {
              const m = Wi(f);
              if (m.requestedExternalEmitHelpers ?? (m.requestedExternalEmitHelpers = 0), (m.requestedExternalEmitHelpers & s) !== s) {
                const y = s & ~m.requestedExternalEmitHelpers;
                for (let x = 1; x <= 16777216; x <<= 1) if (y & x) for (const O of Q_t(x)) {
                  const J = zc(Ku(kg(f), mc(O), 111551));
                  J ? x & 524288 ? _t(B2(J), (V) => lf(V) > 3) || We(r, p.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0, Vy, O, 4) : x & 1048576 ? _t(B2(J), (V) => lf(V) > 4) || We(r, p.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0, Vy, O, 5) : x & 1024 && (_t(B2(J), (V) => lf(V) > 2) || We(r, p.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0, Vy, O, 3)) : We(r, p.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0, Vy, O);
                }
              }
              m.requestedExternalEmitHelpers |= s;
            }
          }
        }
      }
      function Q_t(r) {
        switch (r) {
          case 1:
            return ["__extends"];
          case 2:
            return ["__assign"];
          case 4:
            return ["__rest"];
          case 8:
            return U ? ["__decorate"] : ["__esDecorate", "__runInitializers"];
          case 16:
            return ["__metadata"];
          case 32:
            return ["__param"];
          case 64:
            return ["__awaiter"];
          case 128:
            return ["__generator"];
          case 256:
            return ["__values"];
          case 512:
            return ["__read"];
          case 1024:
            return ["__spreadArray"];
          case 2048:
            return ["__await"];
          case 4096:
            return ["__asyncGenerator"];
          case 8192:
            return ["__asyncDelegator"];
          case 16384:
            return ["__asyncValues"];
          case 32768:
            return ["__exportStar"];
          case 65536:
            return ["__importStar"];
          case 131072:
            return ["__importDefault"];
          case 262144:
            return ["__makeTemplateObject"];
          case 524288:
            return ["__classPrivateFieldGet"];
          case 1048576:
            return ["__classPrivateFieldSet"];
          case 2097152:
            return ["__classPrivateFieldIn"];
          case 4194304:
            return ["__setFunctionName"];
          case 8388608:
            return ["__propKey"];
          case 16777216:
            return ["__addDisposableResource", "__disposeResources"];
          case 33554432:
            return ["__rewriteRelativeImportExtension"];
          default:
            return E.fail("Unrecognized helper");
        }
      }
      function Y_t(r, s) {
        const l = Pn(r);
        return l.externalHelpersModule || (l.externalHelpersModule = tb(qft(r), Vy, p.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found, s) || it), l.externalHelpersModule;
      }
      function Ah(r) {
        var s;
        const l = eft(r) || Z_t(r);
        if (l !== void 0) return l;
        if (Fi(r) && Yy(r)) return Ll(r, p.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);
        const f = $c(r) ? r.declarationList.flags & 7 : 0;
        let m, y, x, O, J, V = 0, Y = !1, be = !1;
        for (const me of r.modifiers) if (pl(me)) {
          if (rA(U, r, r.parent, r.parent.parent)) {
            if (U && (r.kind === 178 || r.kind === 179)) {
              const Je = nge(r);
              if (tp(Je.firstAccessor) && r === Je.secondAccessor) return Ll(r, p.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name);
            }
          } else return r.kind === 175 && !Gp(r.body) ? Ll(r, p.A_decorator_can_only_decorate_a_method_implementation_not_an_overload) : Ll(r, p.Decorators_are_not_valid_here);
          if (V & -34849) return sr(me, p.Decorators_are_not_valid_here);
          if (be && V & 98303)
            return E.assertIsDefined(J), H1(Sr(me)) ? !1 : (ts(We(me, p.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export), Kr(J, p.Decorator_used_before_export_here)), !0);
          V |= 32768, V & 98303 ? V & 32 && (Y = !0) : be = !0, J ?? (J = me);
        } else {
          if (me.kind !== 148) {
            if (r.kind === 172 || r.kind === 174) return sr(me, p._0_modifier_cannot_appear_on_a_type_member, as(me.kind));
            if (r.kind === 182 && (me.kind !== 126 || !Zn(r.parent))) return sr(me, p._0_modifier_cannot_appear_on_an_index_signature, as(me.kind));
          }
          if (me.kind !== 103 && me.kind !== 147 && me.kind !== 87 && r.kind === 169)
            return sr(me, p._0_modifier_cannot_appear_on_a_type_parameter, as(me.kind));
          switch (me.kind) {
            case 87: {
              if (r.kind !== 267 && r.kind !== 169) return sr(r, p.A_class_member_cannot_have_the_0_keyword, as(87));
              const ht = ed(r.parent) && pv(r.parent) || r.parent;
              if (r.kind === 169 && !(So(ht) || Zn(ht) || mg(ht) || D6(ht) || uk(ht) || tw(ht) || gd(ht))) return sr(me, p._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class, as(me.kind));
              break;
            }
            case 164:
              if (V & 16) return sr(me, p._0_modifier_already_seen, "override");
              if (V & 128) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "override", "declare");
              if (V & 8) return sr(me, p._0_modifier_must_precede_1_modifier, "override", "readonly");
              if (V & 512) return sr(me, p._0_modifier_must_precede_1_modifier, "override", "accessor");
              if (V & 1024) return sr(me, p._0_modifier_must_precede_1_modifier, "override", "async");
              V |= 16, O = me;
              break;
            case 125:
            case 124:
            case 123:
              const Je = xP(Ux(me.kind));
              if (V & 7) return sr(me, p.Accessibility_modifier_already_seen);
              if (V & 16) return sr(me, p._0_modifier_must_precede_1_modifier, Je, "override");
              if (V & 256) return sr(me, p._0_modifier_must_precede_1_modifier, Je, "static");
              if (V & 512) return sr(me, p._0_modifier_must_precede_1_modifier, Je, "accessor");
              if (V & 8) return sr(me, p._0_modifier_must_precede_1_modifier, Je, "readonly");
              if (V & 1024) return sr(me, p._0_modifier_must_precede_1_modifier, Je, "async");
              if (r.parent.kind === 269 || r.parent.kind === 308) return sr(me, p._0_modifier_cannot_appear_on_a_module_or_namespace_element, Je);
              if (V & 64) return me.kind === 123 ? sr(me, p._0_modifier_cannot_be_used_with_1_modifier, Je, "abstract") : sr(me, p._0_modifier_must_precede_1_modifier, Je, "abstract");
              if (qu(r)) return sr(me, p.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);
              V |= Ux(me.kind);
              break;
            case 126:
              if (V & 256) return sr(me, p._0_modifier_already_seen, "static");
              if (V & 8) return sr(me, p._0_modifier_must_precede_1_modifier, "static", "readonly");
              if (V & 1024) return sr(me, p._0_modifier_must_precede_1_modifier, "static", "async");
              if (V & 512) return sr(me, p._0_modifier_must_precede_1_modifier, "static", "accessor");
              if (r.parent.kind === 269 || r.parent.kind === 308) return sr(me, p._0_modifier_cannot_appear_on_a_module_or_namespace_element, "static");
              if (r.kind === 170) return sr(me, p._0_modifier_cannot_appear_on_a_parameter, "static");
              if (V & 64) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "static", "abstract");
              if (V & 16) return sr(me, p._0_modifier_must_precede_1_modifier, "static", "override");
              V |= 256, m = me;
              break;
            case 129:
              if (V & 512) return sr(me, p._0_modifier_already_seen, "accessor");
              if (V & 8) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "accessor", "readonly");
              if (V & 128) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "accessor", "declare");
              if (r.kind !== 173) return sr(me, p.accessor_modifier_can_only_appear_on_a_property_declaration);
              V |= 512;
              break;
            case 148:
              if (V & 8) return sr(me, p._0_modifier_already_seen, "readonly");
              if (r.kind !== 173 && r.kind !== 172 && r.kind !== 182 && r.kind !== 170) return sr(me, p.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);
              if (V & 512) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "readonly", "accessor");
              V |= 8;
              break;
            case 95:
              if (L.verbatimModuleSyntax && !(r.flags & 33554432) && r.kind !== 266 && r.kind !== 265 && r.kind !== 268 && r.parent.kind === 308 && e.getEmitModuleFormatOfFile(Sr(r)) === 1) return sr(me, p.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);
              if (V & 32) return sr(me, p._0_modifier_already_seen, "export");
              if (V & 128) return sr(me, p._0_modifier_must_precede_1_modifier, "export", "declare");
              if (V & 64) return sr(me, p._0_modifier_must_precede_1_modifier, "export", "abstract");
              if (V & 1024) return sr(me, p._0_modifier_must_precede_1_modifier, "export", "async");
              if (Zn(r.parent)) return sr(me, p._0_modifier_cannot_appear_on_class_elements_of_this_kind, "export");
              if (r.kind === 170) return sr(me, p._0_modifier_cannot_appear_on_a_parameter, "export");
              if (f === 4) return sr(me, p._0_modifier_cannot_appear_on_a_using_declaration, "export");
              if (f === 6) return sr(me, p._0_modifier_cannot_appear_on_an_await_using_declaration, "export");
              V |= 32;
              break;
            case 90:
              const gt = r.parent.kind === 308 ? r.parent : r.parent.parent;
              if (gt.kind === 268 && !o_(gt)) return sr(me, p.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);
              if (f === 4) return sr(me, p._0_modifier_cannot_appear_on_a_using_declaration, "default");
              if (f === 6) return sr(me, p._0_modifier_cannot_appear_on_an_await_using_declaration, "default");
              if (V & 32) {
                if (Y) return sr(J, p.Decorators_are_not_valid_here);
              } else return sr(me, p._0_modifier_must_precede_1_modifier, "export", "default");
              V |= 2048;
              break;
            case 138:
              if (V & 128) return sr(me, p._0_modifier_already_seen, "declare");
              if (V & 1024) return sr(me, p._0_modifier_cannot_be_used_in_an_ambient_context, "async");
              if (V & 16) return sr(me, p._0_modifier_cannot_be_used_in_an_ambient_context, "override");
              if (Zn(r.parent) && !ga(r)) return sr(me, p._0_modifier_cannot_appear_on_class_elements_of_this_kind, "declare");
              if (r.kind === 170) return sr(me, p._0_modifier_cannot_appear_on_a_parameter, "declare");
              if (f === 4) return sr(me, p._0_modifier_cannot_appear_on_a_using_declaration, "declare");
              if (f === 6) return sr(me, p._0_modifier_cannot_appear_on_an_await_using_declaration, "declare");
              if (r.parent.flags & 33554432 && r.parent.kind === 269) return sr(me, p.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);
              if (qu(r)) return sr(me, p._0_modifier_cannot_be_used_with_a_private_identifier, "declare");
              if (V & 512) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "declare", "accessor");
              V |= 128, y = me;
              break;
            case 128:
              if (V & 64) return sr(me, p._0_modifier_already_seen, "abstract");
              if (r.kind !== 264 && r.kind !== 186) {
                if (r.kind !== 175 && r.kind !== 173 && r.kind !== 178 && r.kind !== 179) return sr(me, p.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);
                if (!(r.parent.kind === 264 && Qn(r.parent, 64))) return sr(me, r.kind === 173 ? p.Abstract_properties_can_only_appear_within_an_abstract_class : p.Abstract_methods_can_only_appear_within_an_abstract_class);
                if (V & 256) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "static", "abstract");
                if (V & 2) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "private", "abstract");
                if (V & 1024 && x) return sr(x, p._0_modifier_cannot_be_used_with_1_modifier, "async", "abstract");
                if (V & 16) return sr(me, p._0_modifier_must_precede_1_modifier, "abstract", "override");
                if (V & 512) return sr(me, p._0_modifier_must_precede_1_modifier, "abstract", "accessor");
              }
              if (Bl(r) && r.name.kind === 81) return sr(me, p._0_modifier_cannot_be_used_with_a_private_identifier, "abstract");
              V |= 64;
              break;
            case 134:
              if (V & 1024) return sr(me, p._0_modifier_already_seen, "async");
              if (V & 128 || r.parent.flags & 33554432) return sr(me, p._0_modifier_cannot_be_used_in_an_ambient_context, "async");
              if (r.kind === 170) return sr(me, p._0_modifier_cannot_appear_on_a_parameter, "async");
              if (V & 64) return sr(me, p._0_modifier_cannot_be_used_with_1_modifier, "async", "abstract");
              V |= 1024, x = me;
              break;
            case 103:
            case 147: {
              const ht = me.kind === 103 ? 8192 : 16384, ir = me.kind === 103 ? "in" : "out", mr = ed(r.parent) && (pv(r.parent) || xr((s = _6(r.parent)) == null ? void 0 : s.tags, WS)) || r.parent;
              if (r.kind !== 169 || mr && !(au(mr) || Zn(mr) || Kp(mr) || WS(mr))) return sr(me, p._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias, ir);
              if (V & ht) return sr(me, p._0_modifier_already_seen, ir);
              if (ht & 8192 && V & 16384) return sr(me, p._0_modifier_must_precede_1_modifier, "in", "out");
              V |= ht;
              break;
            }
          }
        }
        return r.kind === 177 ? V & 256 ? sr(m, p._0_modifier_cannot_appear_on_a_constructor_declaration, "static") : V & 16 ? sr(O, p._0_modifier_cannot_appear_on_a_constructor_declaration, "override") : V & 1024 ? sr(x, p._0_modifier_cannot_appear_on_a_constructor_declaration, "async") : !1 : (r.kind === 273 || r.kind === 272) && V & 128 ? sr(y, p.A_0_modifier_cannot_be_used_with_an_import_declaration, "declare") : r.kind === 170 && V & 31 && Ja(r.name) ? sr(r, p.A_parameter_property_may_not_be_declared_using_a_binding_pattern) : r.kind === 170 && V & 31 && r.dotDotDotToken ? sr(r, p.A_parameter_property_cannot_be_declared_using_a_rest_parameter) : V & 1024 ? rft(r, x) : !1;
      }
      function Z_t(r) {
        if (!r.modifiers) return !1;
        const s = K_t(r);
        return s && Ll(s, p.Modifiers_cannot_appear_here);
      }
      function nQ(r, s) {
        const l = xr(r.modifiers, hs);
        return l && l.kind !== s ? l : void 0;
      }
      function K_t(r) {
        switch (r.kind) {
          case 178:
          case 179:
          case 177:
          case 173:
          case 172:
          case 175:
          case 174:
          case 182:
          case 268:
          case 273:
          case 272:
          case 279:
          case 278:
          case 219:
          case 220:
          case 170:
          case 169:
            return;
          case 176:
          case 304:
          case 305:
          case 271:
          case 283:
            return xr(r.modifiers, hs);
          default:
            if (r.parent.kind === 269 || r.parent.kind === 308) return;
            switch (r.kind) {
              case 263:
                return nQ(r, 134);
              case 264:
              case 186:
                return nQ(r, 128);
              case 232:
              case 265:
              case 266:
                return xr(r.modifiers, hs);
              case 244:
                return r.declarationList.flags & 4 ? nQ(r, 135) : xr(r.modifiers, hs);
              case 267:
                return nQ(r, 87);
              default:
                E.assertNever(r);
            }
        }
      }
      function eft(r) {
        const s = tft(r);
        return s && Ll(s, p.Decorators_are_not_valid_here);
      }
      function tft(r) {
        return tW(r) ? xr(r.modifiers, pl) : void 0;
      }
      function rft(r, s) {
        switch (r.kind) {
          case 175:
          case 263:
          case 219:
          case 220:
            return !1;
        }
        return sr(s, p._0_modifier_cannot_be_used_here, "async");
      }
      function RC(r, s = p.Trailing_comma_not_allowed) {
        return r && r.hasTrailingComma ? bb(r[0], r.end - 1, 1, s) : !1;
      }
      function S5e(r, s) {
        if (r && r.length === 0) {
          const l = r.pos - 1;
          return bb(s, l, gs(s.text, r.end) + 1 - l, p.Type_parameter_list_cannot_be_empty);
        }
        return !1;
      }
      function nft(r) {
        let s = !1;
        const l = r.length;
        for (let f = 0; f < l; f++) {
          const m = r[f];
          if (m.dotDotDotToken) {
            if (f !== l - 1) return sr(m.dotDotDotToken, p.A_rest_parameter_must_be_last_in_a_parameter_list);
            if (m.flags & 33554432 || RC(r, p.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma), m.questionToken) return sr(m.questionToken, p.A_rest_parameter_cannot_be_optional);
            if (m.initializer) return sr(m.name, p.A_rest_parameter_cannot_have_an_initializer);
          } else if (_$(m)) {
            if (s = !0, m.questionToken && m.initializer) return sr(m.name, p.Parameter_cannot_have_question_mark_and_initializer);
          } else if (s && !m.initializer) return sr(m.name, p.A_required_parameter_cannot_follow_an_optional_parameter);
        }
      }
      function ift(r) {
        return dn(r, (s) => !!s.initializer || Ja(s.name) || cg(s));
      }
      function aft(r) {
        if (z >= 3) {
          const s = r.body && Wa(r.body) && Yz(r.body.statements);
          if (s) {
            const l = ift(r.parameters);
            if (It(l)) {
              bt(l, (m) => {
                ts(We(m, p.This_parameter_is_not_allowed_with_use_strict_directive), Kr(s, p.use_strict_directive_used_here));
              });
              const f = l.map((m, y) => y === 0 ? Kr(m, p.Non_simple_parameter_declared_here) : Kr(m, p.and_here));
              return ts(We(s, p.use_strict_directive_cannot_be_used_with_non_simple_parameter_list), ...f), !0;
            }
          }
        }
        return !1;
      }
      function iQ(r) {
        const s = Sr(r);
        return Ah(r) || S5e(r.typeParameters, s) || nft(r.parameters) || oft(r, s) || So(r) && aft(r);
      }
      function sft(r) {
        const s = Sr(r);
        return fft(r) || S5e(r.typeParameters, s);
      }
      function oft(r, s) {
        if (!Bo(r)) return !1;
        r.typeParameters && !(It(r.typeParameters) > 1 || r.typeParameters.hasTrailingComma || r.typeParameters[0].constraint) && s && jc(s.fileName, [".mts", ".cts"]) && sr(r.typeParameters[0], p.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);
        const { equalsGreaterThanToken: l } = r;
        return Za(s, l.pos).line !== Za(s, l.end).line && sr(l, p.Line_terminator_not_permitted_before_arrow);
      }
      function cft(r) {
        const s = r.parameters[0];
        if (r.parameters.length !== 1) return sr(s ? s.name : r, p.An_index_signature_must_have_exactly_one_parameter);
        if (RC(r.parameters, p.An_index_signature_cannot_have_a_trailing_comma), s.dotDotDotToken) return sr(s.dotDotDotToken, p.An_index_signature_cannot_have_a_rest_parameter);
        if (bJ(s)) return sr(s.name, p.An_index_signature_parameter_cannot_have_an_accessibility_modifier);
        if (s.questionToken) return sr(s.questionToken, p.An_index_signature_parameter_cannot_have_a_question_mark);
        if (s.initializer) return sr(s.name, p.An_index_signature_parameter_cannot_have_an_initializer);
        if (!s.type) return sr(s.name, p.An_index_signature_parameter_must_have_a_type_annotation);
        const l = Di(s.type);
        return gp(l, (f) => !!(f.flags & 19456)) || _b(l) ? sr(s.name, p.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead) : cf(l, h$) ? r.type ? !1 : sr(r, p.An_index_signature_must_have_a_type_annotation) : sr(s.name, p.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type);
      }
      function lft(r) {
        return Ah(r) || cft(r);
      }
      function uft(r, s) {
        if (s && s.length === 0) {
          const l = Sr(r), f = s.pos - 1;
          return bb(l, f, gs(l.text, s.end) + 1 - f, p.Type_argument_list_cannot_be_empty);
        }
        return !1;
      }
      function RR(r, s) {
        return RC(s) || uft(r, s);
      }
      function _ft(r) {
        return r.questionDotToken || r.flags & 64 ? sr(r.template, p.Tagged_template_expressions_are_not_permitted_in_an_optional_chain) : !1;
      }
      function T5e(r) {
        const s = r.types;
        if (RC(s)) return !0;
        if (s && s.length === 0) {
          const l = as(r.token);
          return bb(r, s.pos, 0, p._0_list_cannot_be_empty, l);
        }
        return _t(s, x5e);
      }
      function x5e(r) {
        return rh(r) && ew(r.expression) && r.typeArguments ? sr(r, p.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments) : RR(r, r.typeArguments);
      }
      function fft(r) {
        let s = !1, l = !1;
        if (!Ah(r) && r.heritageClauses) for (const f of r.heritageClauses) {
          if (f.token === 96) {
            if (s) return Ll(f, p.extends_clause_already_seen);
            if (l) return Ll(f, p.extends_clause_must_precede_implements_clause);
            if (f.types.length > 1) return Ll(f.types[1], p.Classes_can_only_extend_a_single_class);
            s = !0;
          } else {
            if (E.assert(f.token === 119), l) return Ll(f, p.implements_clause_already_seen);
            l = !0;
          }
          T5e(f);
        }
      }
      function pft(r) {
        let s = !1;
        if (r.heritageClauses) for (const l of r.heritageClauses) {
          if (l.token === 96) {
            if (s) return Ll(l, p.extends_clause_already_seen);
            s = !0;
          } else
            return E.assert(l.token === 119), Ll(l, p.Interface_declaration_cannot_have_implements_clause);
          T5e(l);
        }
        return !1;
      }
      function aQ(r) {
        if (r.kind !== 168) return !1;
        const s = r;
        return s.expression.kind === 227 && s.expression.operatorToken.kind === 28 ? sr(s.expression, p.A_comma_expression_is_not_allowed_in_a_computed_property_name) : !1;
      }
      function oge(r) {
        if (r.asteriskToken) {
          if (E.assert(r.kind === 263 || r.kind === 219 || r.kind === 175), r.flags & 33554432) return sr(r.asteriskToken, p.Generators_are_not_allowed_in_an_ambient_context);
          if (!r.body) return sr(r.asteriskToken, p.An_overload_signature_cannot_be_declared_as_a_generator);
        }
      }
      function cge(r, s) {
        return !!r && sr(r, s);
      }
      function k5e(r, s) {
        return !!r && sr(r, s);
      }
      function dft(r, s) {
        const l = /* @__PURE__ */ new Map();
        for (const f of r.properties) {
          if (f.kind === 306) {
            if (s) {
              const x = Gs(f.expression);
              if (hu(x) || bs(x)) return sr(f.expression, p.A_rest_element_cannot_contain_a_binding_pattern);
            }
            continue;
          }
          const m = f.name;
          if (m.kind === 168 && aQ(m), f.kind === 305 && !s && f.objectAssignmentInitializer && sr(f.equalsToken, p.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern), m.kind === 81 && sr(m, p.Private_identifiers_are_not_allowed_outside_class_bodies), vd(f) && f.modifiers)
            for (const x of f.modifiers) hs(x) && (x.kind !== 134 || f.kind !== 175) && sr(x, p._0_modifier_cannot_be_used_here, uc(x));
          else if (hre(f) && f.modifiers)
            for (const x of f.modifiers) hs(x) && sr(x, p._0_modifier_cannot_be_used_here, uc(x));
          let y;
          switch (f.kind) {
            case 305:
            case 304:
              k5e(f.exclamationToken, p.A_definite_assignment_assertion_is_not_permitted_in_this_context), cge(f.questionToken, p.An_object_member_cannot_be_declared_optional), m.kind === 9 && I5e(m), m.kind === 10 && Tg(!0, Kr(m, p.A_bigint_literal_cannot_be_used_as_a_property_name)), y = 4;
              break;
            case 175:
              y = 8;
              break;
            case 178:
              y = 1;
              break;
            case 179:
              y = 2;
              break;
            default:
              E.assertNever(f, "Unexpected syntax kind:" + f.kind);
          }
          if (!s) {
            const x = _ge(m);
            if (x === void 0) continue;
            const O = l.get(x);
            if (!O) l.set(x, y);
            else if (y & 8 && O & 8) sr(m, p.Duplicate_identifier_0, uc(m));
            else if (y & 4 && O & 4) sr(m, p.An_object_literal_cannot_have_multiple_properties_with_the_same_name, uc(m));
            else if (y & 3 && O & 3) if (O !== 3 && y !== O) l.set(x, y | O);
            else return sr(m, p.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);
            else return sr(m, p.An_object_literal_cannot_have_property_and_accessor_with_the_same_name);
          }
        }
      }
      function mft(r) {
        gft(r.tagName), RR(r, r.typeArguments);
        const s = /* @__PURE__ */ new Map();
        for (const l of r.attributes.properties) {
          if (l.kind === 294) continue;
          const { name: f, initializer: m } = l, y = qD(f);
          if (!s.get(y)) s.set(y, !0);
          else return sr(f, p.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);
          if (m && m.kind === 295 && !m.expression) return sr(m, p.JSX_attributes_must_only_be_assigned_a_non_empty_expression);
        }
      }
      function gft(r) {
        if (Ln(r) && Gd(r.expression)) return sr(r.expression, p.JSX_property_access_expressions_cannot_include_JSX_namespace_names);
        if (Gd(r) && hO(L) && !m6(r.namespace.escapedText)) return sr(r, p.React_components_cannot_include_JSX_namespace_names);
      }
      function hft(r) {
        if (r.expression && lw(r.expression)) return sr(r.expression, p.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array);
      }
      function C5e(r) {
        if (b0(r)) return !0;
        if (r.kind === 251 && r.awaitModifier && !(r.flags & 65536)) {
          const s = Sr(r);
          if (D5(r)) {
            if (!H1(s))
              switch (r6(s, L) || Ws.add(Kr(r.awaitModifier, p.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)), H) {
                case 100:
                case 101:
                case 102:
                case 199:
                  if (s.impliedNodeFormat === 1) {
                    Ws.add(Kr(r.awaitModifier, p.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));
                    break;
                  }
                case 7:
                case 99:
                case 200:
                case 4:
                  if (z >= 4) break;
                default:
                  Ws.add(Kr(r.awaitModifier, p.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));
                  break;
              }
          } else if (!H1(s)) {
            const l = Kr(r.awaitModifier, p.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules), f = Kf(r);
            return f && f.kind !== 177 && (E.assert((Gc(f) & 2) === 0, "Enclosing function should never be an async function."), ts(l, Kr(f, p.Did_you_mean_to_mark_this_function_as_async))), Ws.add(l), !0;
          }
        }
        if (oN(r) && !(r.flags & 65536) && Fe(r.initializer) && r.initializer.escapedText === "async")
          return sr(r.initializer, p.The_left_hand_side_of_a_for_of_statement_may_not_be_async), !1;
        if (r.initializer.kind === 262) {
          const s = r.initializer;
          if (!uge(s)) {
            const l = s.declarations;
            if (!l.length) return !1;
            if (l.length > 1) {
              const m = r.kind === 250 ? p.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement : p.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;
              return Ll(s.declarations[1], m);
            }
            const f = l[0];
            if (f.initializer) {
              const m = r.kind === 250 ? p.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer : p.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;
              return sr(f.name, m);
            }
            if (f.type) return sr(f, r.kind === 250 ? p.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation : p.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation);
          }
        }
        return !1;
      }
      function yft(r) {
        if (!(r.flags & 33554432) && r.parent.kind !== 188 && r.parent.kind !== 265) {
          if (z < 2 && Oi(r.name)) return sr(r.name, p.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);
          if (r.body === void 0 && !Qn(r, 64)) return bb(r, r.end - 1, 1, p._0_expected, "{");
        }
        if (r.body) {
          if (Qn(r, 64)) return sr(r, p.An_abstract_accessor_cannot_have_an_implementation);
          if (r.parent.kind === 188 || r.parent.kind === 265) return sr(r.body, p.An_implementation_cannot_be_declared_in_ambient_contexts);
        }
        if (r.typeParameters) return sr(r.name, p.An_accessor_cannot_have_type_parameters);
        if (!vft(r)) return sr(r.name, r.kind === 178 ? p.A_get_accessor_cannot_have_parameters : p.A_set_accessor_must_have_exactly_one_parameter);
        if (r.kind === 179) {
          if (r.type) return sr(r.name, p.A_set_accessor_cannot_have_a_return_type_annotation);
          const s = E.checkDefined(xD(r), "Return value does not match parameter count assertion.");
          if (s.dotDotDotToken) return sr(s.dotDotDotToken, p.A_set_accessor_cannot_have_rest_parameter);
          if (s.questionToken) return sr(s.questionToken, p.A_set_accessor_cannot_have_an_optional_parameter);
          if (s.initializer) return sr(r.name, p.A_set_accessor_parameter_cannot_have_an_initializer);
        }
        return !1;
      }
      function vft(r) {
        return lge(r) || r.parameters.length === (r.kind === 178 ? 0 : 1);
      }
      function lge(r) {
        if (r.parameters.length === (r.kind === 178 ? 1 : 2)) return Rb(r);
      }
      function bft(r) {
        if (r.operator === 158) {
          if (r.type.kind !== 155) return sr(r.type, p._0_expected, as(155));
          let s = gA(r.parent);
          if (rn(s) && wv(s)) {
            const l = Fb(s);
            l && (s = jx(l) || l);
          }
          switch (s.kind) {
            case 261:
              const l = s;
              if (l.name.kind !== 80) return sr(r, p.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);
              if (!nD(l)) return sr(r, p.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);
              if (!(l.parent.flags & 2)) return sr(s.name, p.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);
              break;
            case 173:
              if (!es(s) || !ES(s)) return sr(s.name, p.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);
              break;
            case 172:
              if (!Qn(s, 8)) return sr(s.name, p.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);
              break;
            default:
              return sr(r, p.unique_symbol_types_are_not_allowed_here);
          }
        } else if (r.operator === 148 && r.type.kind !== 189 && r.type.kind !== 190)
          return Ll(r, p.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types, as(155));
      }
      function ZP(r, s) {
        if (o3e(r) && !go(Po(r) ? Gs(r.argumentExpression) : r.expression)) return sr(r, s);
      }
      function E5e(r) {
        if (iQ(r)) return !0;
        if (r.kind === 175) {
          if (r.parent.kind === 211) {
            if (r.modifiers && !(r.modifiers.length === 1 && js(r.modifiers).kind === 134)) return Ll(r, p.Modifiers_cannot_appear_here);
            if (cge(r.questionToken, p.An_object_member_cannot_be_declared_optional)) return !0;
            if (k5e(r.exclamationToken, p.A_definite_assignment_assertion_is_not_permitted_in_this_context)) return !0;
            if (r.body === void 0) return bb(r, r.end - 1, 1, p._0_expected, "{");
          }
          if (oge(r)) return !0;
        }
        if (Zn(r.parent)) {
          if (z < 2 && Oi(r.name)) return sr(r.name, p.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);
          if (r.flags & 33554432) return ZP(r.name, p.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);
          if (r.kind === 175 && !r.body) return ZP(r.name, p.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);
        } else {
          if (r.parent.kind === 265) return ZP(r.name, p.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);
          if (r.parent.kind === 188) return ZP(r.name, p.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);
        }
      }
      function Sft(r) {
        let s = r;
        for (; s; ) {
          if (YC(s)) return sr(r, p.Jump_target_cannot_cross_function_boundary);
          switch (s.kind) {
            case 257:
              if (r.label && s.label.escapedText === r.label.escapedText)
                return r.kind === 252 && !Uy(s.statement, !0) ? sr(r, p.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement) : !1;
              break;
            case 256:
              if (r.kind === 253 && !r.label) return !1;
              break;
            default:
              if (Uy(s, !1) && !r.label) return !1;
              break;
          }
          s = s.parent;
        }
        return r.label ? sr(r, r.kind === 253 ? p.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement : p.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement) : sr(r, r.kind === 253 ? p.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement : p.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement);
      }
      function Tft(r) {
        if (r.dotDotDotToken) {
          const s = r.parent.elements;
          if (r !== ws(s)) return sr(r, p.A_rest_element_must_be_last_in_a_destructuring_pattern);
          if (RC(s, p.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma), r.propertyName) return sr(r.name, p.A_rest_element_cannot_have_a_property_name);
        }
        if (r.dotDotDotToken && r.initializer) return bb(r, r.initializer.pos - 1, 1, p.A_rest_element_cannot_have_an_initializer);
      }
      function D5e(r) {
        return ep(r) || r.kind === 225 && r.operator === 41 && r.operand.kind === 9;
      }
      function xft(r) {
        return r.kind === 10 || r.kind === 225 && r.operator === 41 && r.operand.kind === 10;
      }
      function kft(r) {
        if ((Ln(r) || Po(r) && D5e(r.argumentExpression)) && go(r.expression)) return !!(wc(r).flags & 98304);
      }
      function w5e(r) {
        const s = r.initializer;
        if (s) {
          const l = !(D5e(s) || kft(s) || s.kind === 112 || s.kind === 97 || xft(s));
          if (($3(r) || ci(r) && d7(r)) && !r.type) {
            if (l) return sr(s, p.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference);
          } else return sr(s, p.Initializers_are_not_allowed_in_ambient_contexts);
        }
      }
      function Cft(r) {
        const s = Q2(r), l = s & 7;
        if (Ja(r.name)) switch (l) {
          case 6:
            return sr(r, p._0_declarations_may_not_have_binding_patterns, "await using");
          case 4:
            return sr(r, p._0_declarations_may_not_have_binding_patterns, "using");
        }
        if (r.parent.parent.kind !== 250 && r.parent.parent.kind !== 251) {
          if (s & 33554432) w5e(r);
          else if (!r.initializer) {
            if (Ja(r.name) && !Ja(r.parent)) return sr(r, p.A_destructuring_declaration_must_have_an_initializer);
            switch (l) {
              case 6:
                return sr(r, p._0_declarations_must_be_initialized, "await using");
              case 4:
                return sr(r, p._0_declarations_must_be_initialized, "using");
              case 2:
                return sr(r, p._0_declarations_must_be_initialized, "const");
            }
          }
        }
        if (r.exclamationToken && (r.parent.parent.kind !== 244 || !r.type || r.initializer || s & 33554432)) {
          const f = r.initializer ? p.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions : r.type ? p.A_definite_assignment_assertion_is_not_permitted_in_this_context : p.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;
          return sr(r.exclamationToken, f);
        }
        return e.getEmitModuleFormatOfFile(Sr(r)) < 4 && !(r.parent.parent.flags & 33554432) && Qn(r.parent.parent, 32) && P5e(r.name), !!l && A5e(r.name);
      }
      function P5e(r) {
        if (r.kind === 80) {
          if (On(r) === "__esModule") return wft("noEmit", r, p.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules);
        } else {
          const s = r.elements;
          for (const l of s) if (!Al(l)) return P5e(l.name);
        }
        return !1;
      }
      function A5e(r) {
        if (r.kind === 80) {
          if (r.escapedText === "let") return sr(r, p.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations);
        } else {
          const s = r.elements;
          for (const l of s) Al(l) || A5e(l.name);
        }
        return !1;
      }
      function uge(r) {
        const s = r.declarations;
        if (RC(r.declarations)) return !0;
        if (!r.declarations.length) return bb(r, s.pos, s.end - s.pos, p.Variable_declaration_list_cannot_be_empty);
        const l = r.flags & 7;
        if (l === 4 || l === 6) {
          if (eF(r.parent)) return sr(r, l === 4 ? p.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration : p.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration);
          if ($c(r.parent) && B3(r.parent.parent)) return sr(r, l === 4 ? p.using_declarations_are_not_allowed_in_case_or_default_clauses_unless_contained_within_a_block : p.await_using_declarations_are_not_allowed_in_case_or_default_clauses_unless_contained_within_a_block);
          if (r.flags & 33554432) return sr(r, l === 4 ? p.using_declarations_are_not_allowed_in_ambient_contexts : p.await_using_declarations_are_not_allowed_in_ambient_contexts);
          if (l === 6) return G8e(r);
        }
        return !1;
      }
      function sQ(r) {
        switch (r.kind) {
          case 246:
          case 247:
          case 248:
          case 255:
          case 249:
          case 250:
          case 251:
            return !1;
          case 257:
            return sQ(r.parent);
        }
        return !0;
      }
      function Eft(r) {
        if (!sQ(r.parent)) {
          const s = Q2(r.declarationList) & 7;
          if (s) {
            const l = s === 1 ? "let" : s === 2 ? "const" : s === 4 ? "using" : s === 6 ? "await using" : E.fail("Unknown BlockScope flag");
            We(r, p._0_declarations_can_only_be_declared_inside_a_block, l);
          }
        }
      }
      function Dft(r) {
        const s = r.name.escapedText;
        switch (r.keywordToken) {
          case 105:
            if (s !== "target") return sr(r.name, p._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2, Ti(r.name.escapedText), as(r.keywordToken), "target");
            break;
          case 102:
            if (s !== "meta") {
              const l = za(r.parent) && r.parent.expression === r;
              if (s === "defer") {
                if (!l) return bb(r, r.end, 0, p._0_expected, "(");
              } else
                return l ? sr(r.name, p._0_is_not_a_valid_meta_property_for_keyword_import_Did_you_mean_meta_or_defer, Ti(r.name.escapedText)) : sr(r.name, p._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2, Ti(r.name.escapedText), as(r.keywordToken), "meta");
            }
            break;
        }
      }
      function H1(r) {
        return r.parseDiagnostics.length > 0;
      }
      function Ll(r, s, ...l) {
        const f = Sr(r);
        if (!H1(f)) {
          const m = _g(f, r.pos);
          return Ws.add(wl(f, m.start, m.length, s, ...l)), !0;
        }
        return !1;
      }
      function bb(r, s, l, f, ...m) {
        const y = Sr(r);
        return H1(y) ? !1 : (Ws.add(wl(y, s, l, f, ...m)), !0);
      }
      function wft(r, s, l, ...f) {
        return H1(Sr(s)) ? !1 : (ny(r, s, l, ...f), !0);
      }
      function sr(r, s, ...l) {
        return H1(Sr(r)) ? !1 : (We(r, s, ...l), !0);
      }
      function Pft(r) {
        const s = rn(r) ? K5(r) : void 0, l = r.typeParameters || s && ul(s);
        if (l) {
          const f = l.pos === l.end ? l.pos : gs(Sr(r).text, l.pos);
          return bb(r, f, l.end - f, p.Type_parameters_cannot_appear_on_a_constructor_declaration);
        }
      }
      function Aft(r) {
        const s = r.type || yf(r);
        if (s) return sr(s, p.Type_annotation_cannot_appear_on_a_constructor_declaration);
      }
      function Nft(r) {
        if (_s(r.name) && un(r.name.expression) && r.name.expression.operatorToken.kind === 103) return sr(r.parent.members[0], p.A_mapped_type_may_not_declare_properties_or_methods);
        if (Zn(r.parent)) {
          if (Ts(r.name) && r.name.text === "constructor") return sr(r.name, p.Classes_may_not_have_a_field_named_constructor);
          if (ZP(r.name, p.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type)) return !0;
          if (z < 2 && Oi(r.name)) return sr(r.name, p.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);
          if (z < 2 && R_(r) && !(r.flags & 33554432)) return sr(r.name, p.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);
          if (R_(r) && cge(r.questionToken, p.An_accessor_property_cannot_be_declared_optional)) return !0;
        } else if (r.parent.kind === 265) {
          if (ZP(r.name, p.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)) return !0;
          if (E.assertNode(r, f_), r.initializer) return sr(r.initializer, p.An_interface_property_cannot_have_an_initializer);
        } else if (C_(r.parent)) {
          if (ZP(r.name, p.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)) return !0;
          if (E.assertNode(r, f_), r.initializer) return sr(r.initializer, p.A_type_literal_property_cannot_have_an_initializer);
        }
        if (r.flags & 33554432 && w5e(r), ga(r) && r.exclamationToken && (!Zn(r.parent) || !r.type || r.initializer || r.flags & 33554432 || es(r) || Jb(r))) {
          const s = r.initializer ? p.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions : r.type ? p.A_definite_assignment_assertion_is_not_permitted_in_this_context : p.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;
          return sr(r.exclamationToken, s);
        }
      }
      function Ift(r) {
        return r.kind === 265 || r.kind === 266 || r.kind === 273 || r.kind === 272 || r.kind === 279 || r.kind === 278 || r.kind === 271 || Qn(r, 2208) ? !1 : Ll(r, p.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier);
      }
      function Oft(r) {
        for (const s of r.statements) if ((Jl(s) || s.kind === 244) && Ift(s))
          return !0;
        return !1;
      }
      function N5e(r) {
        return !!(r.flags & 33554432) && Oft(r);
      }
      function b0(r) {
        if (r.flags & 33554432) {
          if (!Pn(r).hasReportedStatementInAmbientContext && (Ra(r.parent) || zy(r.parent))) return Pn(r).hasReportedStatementInAmbientContext = Ll(r, p.An_implementation_cannot_be_declared_in_ambient_contexts);
          if (r.parent.kind === 242 || r.parent.kind === 269 || r.parent.kind === 308) {
            const s = Pn(r.parent);
            if (!s.hasReportedStatementInAmbientContext) return s.hasReportedStatementInAmbientContext = Ll(r, p.Statements_are_not_allowed_in_ambient_contexts);
          }
        }
        return !1;
      }
      function I5e(r) {
        const s = uc(r).includes("."), l = r.numericLiteralFlags & 16;
        s || l || +r.text <= 2 ** 53 - 1 || Tg(!1, Kr(r, p.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers));
      }
      function Fft(r) {
        return !!(!(B0(r.parent) || kv(r.parent) && B0(r.parent.parent)) && !(r.flags & 33554432) && z < 7 && sr(r, p.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020));
      }
      function Lft(r, s, ...l) {
        const f = Sr(r);
        if (!H1(f)) {
          const m = _g(f, r.pos);
          return Ws.add(wl(f, dc(m), 0, s, ...l)), !0;
        }
        return !1;
      }
      function Mft() {
        return Yr || (Yr = [], Ce.forEach((r, s) => {
          Nne.test(s) && Yr.push(r);
        })), Yr;
      }
      function Rft(r) {
        var s, l;
        if (r.phaseModifier === 156) {
          if (r.name && r.namedBindings) return sr(r, p.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);
          if (((s = r.namedBindings) == null ? void 0 : s.kind) === 276) return O5e(r.namedBindings);
        } else if (r.phaseModifier === 166) {
          if (r.name) return sr(r, p.Default_imports_are_not_allowed_in_a_deferred_import);
          if (((l = r.namedBindings) == null ? void 0 : l.kind) === 276) return sr(r, p.Named_imports_are_not_allowed_in_a_deferred_import);
          if (H !== 99 && H !== 200) return sr(r, p.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve);
        }
        return !1;
      }
      function O5e(r) {
        return !!bt(r.elements, (s) => {
          if (s.isTypeOnly) return Ll(s, s.kind === 277 ? p.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement : p.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement);
        });
      }
      function jft(r) {
        if (L.verbatimModuleSyntax && H === 1) return sr(r, iy(r));
        if (r.expression.kind === 237) {
          if (H !== 99 && H !== 200) return sr(r, p.Deferred_imports_are_only_supported_when_the_module_flag_is_set_to_esnext_or_preserve);
        } else if (H === 5) return sr(r, p.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_node18_node20_or_nodenext);
        if (r.typeArguments) return sr(r, p.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);
        const s = r.arguments;
        if (!(100 <= H && H <= 199) && H !== 99 && H !== 200 && (RC(s), s.length > 1)) {
          const f = s[1];
          return sr(f, p.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_node18_node20_nodenext_or_preserve);
        }
        if (s.length === 0 || s.length > 2) return sr(r, p.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);
        const l = xr(s, wp);
        return l ? sr(l, p.Argument_of_dynamic_import_cannot_be_spread_element) : !1;
      }
      function Bft(r, s) {
        const l = yn(r);
        if (l & 20 && s.flags & 134217728) return xr(s.types, (f) => {
          if (f.flags & 1048576) {
            const m = l & yn(f);
            if (m & 4) return r.target === f.target;
            if (m & 16) return !!r.aliasSymbol && r.aliasSymbol === f.aliasSymbol;
          }
          return !1;
        });
      }
      function Jft(r, s) {
        if (yn(r) & 128 && gp(s, Sy)) return xr(s.types, (l) => !Sy(l));
      }
      function zft(r, s) {
        let l = 0;
        if (Pa(r, l).length > 0 || (l = 1, Pa(r, l).length > 0)) return xr(s.types, (f) => Pa(f, l).length > 0);
      }
      function Wft(r, s) {
        let l;
        if (!(r.flags & 14811132)) {
          let f = 0;
          for (const m of s.types) if (!(m.flags & 14811132)) {
            const y = Ss([eg(r), eg(m)]);
            if (y.flags & 2097152) return m;
            if (Id(y) || y.flags & 134217728) {
              const x = y.flags & 134217728 ? Qf(y.types, Id) : 1;
              x >= f && (l = m, f = x);
            }
          }
        }
        return l;
      }
      function Uft(r) {
        if (Wc(r, 131072)) {
          const s = rl(r, (l) => !(l.flags & 12713980));
          if (!(s.flags & 262144)) return s;
        }
        return r;
      }
      function F5e(r, s, l) {
        if (s.flags & 134217728 && r.flags & 269484032) {
          const f = FNe(s, r);
          if (f) return f;
          const m = co(r);
          if (m) {
            const y = ONe(m, s);
            if (y) {
              const x = Gpe(s, or(y, (O) => [() => ft(O), O.escapedName]), l);
              if (x !== s) return x;
            }
          }
        }
      }
      function _ge(r) {
        const s = kS(r);
        return s || (_s(r) ? yde(Ol(r.expression)) : void 0);
      }
      function oQ(r) {
        return zr === r || (zr = r, _i = nv(r)), _i;
      }
      function Q2(r) {
        return Ct === r || (Ct = r, Kt = x0(r)), Kt;
      }
      function d7(r) {
        const s = Q2(r) & 7;
        return s === 2 || s === 4 || s === 6;
      }
      function Vft(r, s) {
        const l = L.importHelpers ? 1 : 0, f = r?.imports[l];
        return f && E.assert(wo(f) && f.text === s, `Expected sourceFile.imports[${l}] to be the synthesized JSX runtime import`), f;
      }
      function qft(r) {
        E.assert(L.importHelpers, "Expected importHelpers to be enabled");
        const s = r.imports[0];
        return E.assert(s && wo(s) && s.text === "tslib", "Expected sourceFile.imports[0] to be the synthesized tslib import"), s;
      }
      function L5e(r) {
        return ge && r ? r.sort(m7) : r;
      }
      function m7(r, s) {
        if (r === s) return 0;
        if (r === void 0) return 1;
        if (s === void 0) return -1;
        if (It(r.declarations) !== 0 && It(s.declarations) !== 0) {
          const f = fge(r.declarations[0], s.declarations[0]);
          if (f !== 0) return f;
        } else {
          if (It(r.declarations) !== 0) return -1;
          if (It(s.declarations) !== 0) return 1;
        }
        const l = iS(r.escapedName, s.escapedName);
        return l !== 0 ? l : ss(r) - ss(s);
      }
      function fge(r, s) {
        if (r === s) return 0;
        if (r === void 0) return 1;
        if (s === void 0) return -1;
        const l = Sr(r), f = Sr(s);
        return l !== f ? Ae.get(l) - Ae.get(f) : r.pos - s.pos;
      }
      function $1(r, s) {
        if (r === s) return 0;
        if (r === void 0) return -1;
        if (s === void 0) return 1;
        let l = M5e(r) - M5e(s);
        if (l !== 0 || (l = Gft(r, s), l !== 0)) return l;
        if (!(r.flags & 394239)) {
          if (r.flags & 1048576) {
            const m = m7(r.symbol, s.symbol);
            if (m !== 0) return m;
            if (yn(r) & 4 && yn(s) & 4) {
              const y = r, x = s;
              if (yn(y.target) & 8 && yn(x.target) & 8) {
                const O = Hft(y.target, x.target);
                if (O !== 0) return O;
              }
              if (y.node === void 0 && x.node === void 0) {
                const O = KP(r.resolvedTypeArguments, s.resolvedTypeArguments);
                if (O !== 0) return O;
              } else {
                let O = fge(y.node, x.node);
                if (O !== 0 || (O = jR(r.mapper, s.mapper), O !== 0)) return O;
              }
            } else {
              if (yn(r) & 4) return -1;
              if (yn(s) & 4) return 1;
              {
                let y = (yn(r) & 142607679) - (yn(s) & 142607679);
                if (y !== 0 || (y = jR(r.mapper, s.mapper), y !== 0)) return y;
              }
            }
          } else if (r.flags & 134217728) {
            const m = r.origin, y = s.origin;
            if (m === void 0 && y === void 0) {
              const x = KP(r.types, s.types);
              if (x !== 0) return x;
            } else {
              if (m === void 0) return 1;
              if (y === void 0) return -1;
              {
                const x = $1(m, y);
                if (x !== 0) return x;
              }
            }
          } else if (r.flags & 268435456) {
            const m = KP(r.types, s.types);
            if (m !== 0) return m;
          } else if (r.flags & 114688) {
            const m = m7(r.symbol, s.symbol);
            if (m !== 0) return m;
          } else if (r.flags & 1024) {
            const m = iS(r.value, s.value);
            if (m !== 0) return m;
          } else if (r.flags & 2048) {
            const m = iS(r.value, s.value);
            if (m !== 0) return m;
          } else if (r.flags & 8192) {
            const m = r.intrinsicName === "true";
            if (m !== (s.intrinsicName === "true"))
              return m ? 1 : -1;
          } else if (r.flags & 524288) {
            const m = m7(r.symbol, s.symbol);
            if (m !== 0) return m;
          } else if (r.flags & 2097152) {
            let m = $1(r.type, s.type);
            if (m !== 0 || (m = r.indexFlags - s.indexFlags, m !== 0)) return m;
          } else if (r.flags & 33554432) {
            let m = $1(r.objectType, s.objectType);
            if (m !== 0 || (m = $1(r.indexType, s.indexType), m !== 0)) return m;
          } else if (r.flags & 67108864) {
            let m = fge(r.root.node, s.root.node);
            if (m !== 0 || (m = jR(r.mapper, s.mapper), m !== 0)) return m;
          } else if (r.flags & 16777216) {
            let m = $1(r.baseType, s.baseType);
            if (m !== 0 || (m = $1(r.constraint, s.constraint), m !== 0)) return m;
          } else if (r.flags & 4194304) {
            let m = f(r.texts, s.texts);
            if (m !== 0 || (m = KP(r.types, s.types), m !== 0)) return m;
          } else if (r.flags & 8388608) {
            const m = $1(r.type, s.type);
            if (m !== 0) return m;
          }
        }
        return r.id - s.id;
        function f(m, y) {
          for (let x = 0; x < m.length; x++) {
            if (x > y.length) return 1;
            const O = m[x], J = y[x], V = iS(O, J);
            if (V !== 0) return V;
          }
          return m.length < y.length ? -1 : 0;
        }
      }
      function M5e(r) {
        return r.flags & 98304 && !(r.flags & 134217728) ? 65536 : r.flags;
      }
      function Gft(r, s) {
        const l = R5e(r), f = R5e(s);
        return l === f ? r.aliasTypeArguments !== void 0 ? KP(r.aliasTypeArguments, s.aliasTypeArguments) : 0 : l === void 0 ? 1 : f === void 0 ? -1 : iS(l.escapedName, f.escapedName);
      }
      function R5e(r) {
        if (r.aliasSymbol !== void 0) return r.aliasSymbol;
        if (r.flags & 8912896 || yn(r) & 7) return r.symbol;
      }
      function Hft(r, s) {
        var l;
        if (r === s) return 0;
        if (r.readonly !== s.readonly) return r.readonly ? 1 : -1;
        if (r.elementFlags.length !== s.elementFlags.length) return r.elementFlags.length - s.elementFlags.length;
        for (let f = 0; f < r.elementFlags.length; f++) {
          const m = r.elementFlags[f] - s.elementFlags[f];
          if (m !== 0) return m;
        }
        for (let f = 0; f < (((l = r.labeledElementDeclarations) == null ? void 0 : l.length) ?? 0); f++) {
          const m = $ft(r.labeledElementDeclarations[f], s.labeledElementDeclarations[f]);
          if (m !== 0) return m;
        }
        return 0;
      }
      function $ft(r, s) {
        return r === s ? 0 : r === void 0 ? -1 : s === void 0 ? 1 : iS(r.name.escapedText, s.name.escapedText);
      }
      function KP(r, s) {
        if (It(r) !== It(s)) return It(r) - It(s);
        for (let l = 0; l < It(r); l++) {
          const f = $1(r[l], s?.[l]);
          if (f !== 0) return f;
        }
        return 0;
      }
      function jR(r, s) {
        if (r === s) return 0;
        if (r === void 0) return 1;
        if (s === void 0) return -1;
        const l = r.kind, f = s.kind;
        if (l !== f) return l - f;
        switch (l) {
          case 0: {
            const m = $1(r.source, s.source);
            return m !== 0 ? m : $1(r.target, s.target);
          }
          case 1: {
            const m = KP(r.sources, s.sources);
            return m !== 0 ? m : KP(r.targets, s.targets);
          }
          case 5: {
            const m = jR(r.mapper1, s.mapper1);
            return m !== 0 ? m : jR(r.mapper2, s.mapper2);
          }
        }
        return 0;
      }
    }
    function NRe(e) {
      return !zy(e);
    }
    function X1e(e) {
      return e.kind !== 263 && e.kind !== 175 || !!e.body;
    }
    function Q1e(e) {
      switch (e.parent.kind) {
        case 277:
        case 282:
          return Fe(e) || e.kind === 11;
        default:
          return pg(e);
      }
    }
    var ip;
    ((e) => {
      e.JSX = "JSX", e.IntrinsicElements = "IntrinsicElements", e.ElementClass = "ElementClass", e.ElementAttributesPropertyNameContainer = "ElementAttributesProperty", e.ElementChildrenAttributeNameContainer = "ElementChildrenAttribute", e.Element = "Element", e.ElementType = "ElementType", e.IntrinsicAttributes = "IntrinsicAttributes", e.IntrinsicClassAttributes = "IntrinsicClassAttributes", e.LibraryManagedAttributes = "LibraryManagedAttributes";
    })(ip || (ip = {}));
    var XW;
    ((e) => {
      e.Fragment = "Fragment";
    })(XW || (XW = {}));
    function Y1e(e) {
      switch (e) {
        case 0:
          return "yieldType";
        case 1:
          return "returnType";
        case 2:
          return "nextType";
      }
    }
    function Qu(e) {
      return !!(e.flags & 1);
    }
    function Z1e(e) {
      return !!(e.flags & 2);
    }
    function IRe(e) {
      return {
        getCommonSourceDirectory: e.getCommonSourceDirectory ? () => e.getCommonSourceDirectory() : () => "",
        getCurrentDirectory: () => e.getCurrentDirectory(),
        getSymlinkCache: Ua(e, e.getSymlinkCache),
        getPackageJsonInfoCache: () => {
          var t;
          return (t = e.getPackageJsonInfoCache) == null ? void 0 : t.call(e);
        },
        useCaseSensitiveFileNames: () => e.useCaseSensitiveFileNames(),
        redirectTargetsMap: e.redirectTargetsMap,
        getRedirectFromSourceFile: (t) => e.getRedirectFromSourceFile(t),
        isSourceOfProjectReferenceRedirect: (t) => e.isSourceOfProjectReferenceRedirect(t),
        fileExists: (t) => e.fileExists(t),
        getFileIncludeReasons: () => e.getFileIncludeReasons(),
        readFile: e.readFile ? ((t) => e.readFile(t)) : void 0,
        getDefaultResolutionModeForFile: (t) => e.getDefaultResolutionModeForFile(t),
        getModeForResolutionAtIndex: (t, n) => e.getModeForResolutionAtIndex(t, n),
        getGlobalTypingsCacheLocation: Ua(e, e.getGlobalTypingsCacheLocation)
      };
    }
    var One = class H5e {
      constructor(t, n, i) {
        this.moduleResolverHost = void 0, this.inner = void 0, this.disableTrackSymbol = !1;
        for (var a; n instanceof H5e; ) n = n.inner;
        this.inner = n, this.moduleResolverHost = i, this.context = t, this.canTrackSymbol = !!((a = this.inner) != null && a.trackSymbol);
      }
      trackSymbol(t, n, i) {
        var a, o;
        if ((a = this.inner) != null && a.trackSymbol && !this.disableTrackSymbol) {
          if (this.inner.trackSymbol(t, n, i))
            return this.onDiagnosticReported(), !0;
          t.flags & 262144 || ((o = this.context).trackedSymbols ?? (o.trackedSymbols = [])).push([
            t,
            n,
            i
          ]);
        }
        return !1;
      }
      reportInaccessibleThisError() {
        var t;
        (t = this.inner) != null && t.reportInaccessibleThisError && (this.onDiagnosticReported(), this.inner.reportInaccessibleThisError());
      }
      reportPrivateInBaseOfClassExpression(t) {
        var n;
        (n = this.inner) != null && n.reportPrivateInBaseOfClassExpression && (this.onDiagnosticReported(), this.inner.reportPrivateInBaseOfClassExpression(t));
      }
      reportInaccessibleUniqueSymbolError() {
        var t;
        (t = this.inner) != null && t.reportInaccessibleUniqueSymbolError && (this.onDiagnosticReported(), this.inner.reportInaccessibleUniqueSymbolError());
      }
      reportCyclicStructureError() {
        var t;
        (t = this.inner) != null && t.reportCyclicStructureError && (this.onDiagnosticReported(), this.inner.reportCyclicStructureError());
      }
      reportLikelyUnsafeImportRequiredError(t, n) {
        var i;
        (i = this.inner) != null && i.reportLikelyUnsafeImportRequiredError && (this.onDiagnosticReported(), this.inner.reportLikelyUnsafeImportRequiredError(t, n));
      }
      reportTruncationError() {
        var t;
        (t = this.inner) != null && t.reportTruncationError && (this.onDiagnosticReported(), this.inner.reportTruncationError());
      }
      reportNonlocalAugmentation(t, n, i) {
        var a;
        (a = this.inner) != null && a.reportNonlocalAugmentation && (this.onDiagnosticReported(), this.inner.reportNonlocalAugmentation(t, n, i));
      }
      reportNonSerializableProperty(t) {
        var n;
        (n = this.inner) != null && n.reportNonSerializableProperty && (this.onDiagnosticReported(), this.inner.reportNonSerializableProperty(t));
      }
      onDiagnosticReported() {
        this.context.reportedDiagnostic = !0;
      }
      reportInferenceFallback(t) {
        var n;
        (n = this.inner) != null && n.reportInferenceFallback && !this.context.suppressReportInferenceFallback && (this.onDiagnosticReported(), this.inner.reportInferenceFallback(t));
      }
      pushErrorFallbackNode(t) {
        var n, i;
        return (i = (n = this.inner) == null ? void 0 : n.pushErrorFallbackNode) == null ? void 0 : i.call(n, t);
      }
      popErrorFallbackNode() {
        var t, n;
        return (n = (t = this.inner) == null ? void 0 : t.popErrorFallbackNode) == null ? void 0 : n.call(t);
      }
    };
    function Ze(e, t, n, i) {
      if (e === void 0) return e;
      const a = t(e);
      let o;
      if (a !== void 0)
        return da(a) ? o = (i || jRe)(a) : o = a, E.assertNode(o, n), o;
    }
    function Fr(e, t, n, i, a) {
      if (e === void 0) return e;
      const o = e.length;
      (i === void 0 || i < 0) && (i = 0), (a === void 0 || a > o - i) && (a = o - i);
      let c, _ = -1, u = -1;
      i > 0 || a < o ? c = e.hasTrailingComma && i + a === o : (_ = e.pos, u = e.end, c = e.hasTrailingComma);
      const d = K1e(e, t, n, i, a);
      if (d !== e) {
        const g = A.createNodeArray(d, c);
        return Ud(g, _, u), g;
      }
      return e;
    }
    function bw(e, t, n, i, a) {
      if (e === void 0) return e;
      const o = e.length;
      return (i === void 0 || i < 0) && (i = 0), (a === void 0 || a > o - i) && (a = o - i), K1e(e, t, n, i, a);
    }
    function K1e(e, t, n, i, a) {
      let o;
      const c = e.length;
      (i > 0 || a < c) && (o = []);
      for (let _ = 0; _ < a; _++) {
        const u = e[_ + i], d = u !== void 0 ? t ? t(u) : u : void 0;
        if ((o !== void 0 || d === void 0 || d !== u) && (o === void 0 && (o = e.slice(0, _), E.assertEachNode(o, n)), d))
          if (da(d)) for (const g of d)
            E.assertNode(g, n), o.push(g);
          else
            E.assertNode(d, n), o.push(d);
      }
      return o || (E.assertEachNode(e, n), e);
    }
    function QW(e, t, n, i, a, o = Fr) {
      return n.startLexicalEnvironment(), e = o(e, t, Ei, i), a && (e = n.factory.ensureUseStrict(e)), A.mergeLexicalEnvironment(e, n.endLexicalEnvironment());
    }
    function Cc(e, t, n, i = Fr) {
      let a;
      return n.startLexicalEnvironment(), e && (n.setLexicalEnvironmentFlags(1, !0), a = i(e, t, Fi), n.getLexicalEnvironmentFlags() & 2 && Ps(n.getCompilerOptions()) >= 2 && (a = ORe(a, n)), n.setLexicalEnvironmentFlags(1, !1)), n.suspendLexicalEnvironment(), a;
    }
    function ORe(e, t) {
      let n;
      for (let i = 0; i < e.length; i++) {
        const a = e[i], o = FRe(a, t);
        (n || o !== a) && (n || (n = e.slice(0, i)), n[i] = o);
      }
      return n ? pt(t.factory.createNodeArray(n, e.hasTrailingComma), e) : e;
    }
    function FRe(e, t) {
      return e.dotDotDotToken ? e : Ja(e.name) ? LRe(e, t) : e.initializer ? MRe(e, e.name, e.initializer, t) : e;
    }
    function LRe(e, t) {
      const { factory: n } = t;
      return t.addInitializationStatement(n.createVariableStatement(void 0, n.createVariableDeclarationList([n.createVariableDeclaration(e.name, void 0, e.type, e.initializer ? n.createConditionalExpression(n.createStrictEquality(n.getGeneratedNameForNode(e), n.createVoidZero()), void 0, e.initializer, void 0, n.getGeneratedNameForNode(e)) : n.getGeneratedNameForNode(e))]))), n.updateParameterDeclaration(e, e.modifiers, e.dotDotDotToken, n.getGeneratedNameForNode(e), e.questionToken, e.type, void 0);
    }
    function MRe(e, t, n, i) {
      const a = i.factory;
      return i.addInitializationStatement(a.createIfStatement(a.createTypeCheck(a.cloneNode(t), "undefined"), ln(pt(a.createBlock([a.createExpressionStatement(ln(pt(a.createAssignment(ln(a.cloneNode(t), 96), ln(n, Bs(n) | 3168)), e), 3072))]), e), 3905))), a.updateParameterDeclaration(e, e.modifiers, e.dotDotDotToken, e.name, e.questionToken, e.type, void 0);
    }
    function ap(e, t, n, i = Ze) {
      n.resumeLexicalEnvironment();
      const a = i(e, t, t5), o = n.endLexicalEnvironment();
      if (_t(o)) {
        if (!a) return n.factory.createBlock(o);
        const c = n.factory.converters.convertToFunctionBlock(a), _ = A.mergeLexicalEnvironment(c.statements, o);
        return n.factory.updateBlock(c, _);
      }
      return a;
    }
    function D_(e, t, n, i = Ze) {
      n.startBlockScope();
      const a = i(e, t, Ei, n.factory.liftToBlock);
      E.assert(a);
      const o = n.endBlockScope();
      return _t(o) ? Wa(a) ? (o.push(...a.statements), n.factory.updateBlock(a, o)) : (o.push(a), n.factory.createBlock(o)) : a;
    }
    function LN(e, t, n = t) {
      if (n === t || e.length <= 1) return Fr(e, t, dt);
      let i = 0;
      const a = e.length;
      return Fr(e, (o) => {
        const c = i < a - 1;
        return i++, c ? n(o) : t(o);
      }, dt);
    }
    function Tr(e, t, n = UN, i = Fr, a, o = Ze) {
      if (e === void 0) return;
      const c = RRe[e.kind];
      return c === void 0 ? e : c(e, t, n, i, o, a);
    }
    var RRe = {
      167: function(t, n, i, a, o, c) {
        return i.factory.updateQualifiedName(t, E.checkDefined(o(t.left, n, S_)), E.checkDefined(o(t.right, n, Fe)));
      },
      168: function(t, n, i, a, o, c) {
        return i.factory.updateComputedPropertyName(t, E.checkDefined(o(t.expression, n, dt)));
      },
      169: function(t, n, i, a, o, c) {
        return i.factory.updateTypeParameterDeclaration(t, a(t.modifiers, n, hs), E.checkDefined(o(t.name, n, Fe)), o(t.constraint, n, ui), o(t.default, n, ui));
      },
      170: function(t, n, i, a, o, c) {
        return i.factory.updateParameterDeclaration(t, a(t.modifiers, n, ec), c ? o(t.dotDotDotToken, c, HO) : t.dotDotDotToken, E.checkDefined(o(t.name, n, pS)), c ? o(t.questionToken, c, a1) : t.questionToken, o(t.type, n, ui), o(t.initializer, n, dt));
      },
      171: function(t, n, i, a, o, c) {
        return i.factory.updateDecorator(t, E.checkDefined(o(t.expression, n, dt)));
      },
      172: function(t, n, i, a, o, c) {
        return i.factory.updatePropertySignature(t, a(t.modifiers, n, hs), E.checkDefined(o(t.name, n, il)), c ? o(t.questionToken, c, a1) : t.questionToken, o(t.type, n, ui));
      },
      173: function(t, n, i, a, o, c) {
        return i.factory.updatePropertyDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, il)), c ? o(t.questionToken ?? t.exclamationToken, c, yre) : t.questionToken ?? t.exclamationToken, o(t.type, n, ui), o(t.initializer, n, dt));
      },
      174: function(t, n, i, a, o, c) {
        return i.factory.updateMethodSignature(t, a(t.modifiers, n, hs), E.checkDefined(o(t.name, n, il)), c ? o(t.questionToken, c, a1) : t.questionToken, a(t.typeParameters, n, $o), a(t.parameters, n, Fi), o(t.type, n, ui));
      },
      175: function(t, n, i, a, o, c) {
        return i.factory.updateMethodDeclaration(t, a(t.modifiers, n, ec), c ? o(t.asteriskToken, c, nN) : t.asteriskToken, E.checkDefined(o(t.name, n, il)), c ? o(t.questionToken, c, a1) : t.questionToken, a(t.typeParameters, n, $o), Cc(t.parameters, n, i, a), o(t.type, n, ui), ap(t.body, n, i, o));
      },
      177: function(t, n, i, a, o, c) {
        return i.factory.updateConstructorDeclaration(t, a(t.modifiers, n, ec), Cc(t.parameters, n, i, a), ap(t.body, n, i, o));
      },
      178: function(t, n, i, a, o, c) {
        return i.factory.updateGetAccessorDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, il)), Cc(t.parameters, n, i, a), o(t.type, n, ui), ap(t.body, n, i, o));
      },
      179: function(t, n, i, a, o, c) {
        return i.factory.updateSetAccessorDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, il)), Cc(t.parameters, n, i, a), ap(t.body, n, i, o));
      },
      176: function(t, n, i, a, o, c) {
        return i.startLexicalEnvironment(), i.suspendLexicalEnvironment(), i.factory.updateClassStaticBlockDeclaration(t, ap(t.body, n, i, o));
      },
      180: function(t, n, i, a, o, c) {
        return i.factory.updateCallSignature(t, a(t.typeParameters, n, $o), a(t.parameters, n, Fi), o(t.type, n, ui));
      },
      181: function(t, n, i, a, o, c) {
        return i.factory.updateConstructSignature(t, a(t.typeParameters, n, $o), a(t.parameters, n, Fi), o(t.type, n, ui));
      },
      182: function(t, n, i, a, o, c) {
        return i.factory.updateIndexSignature(t, a(t.modifiers, n, ec), a(t.parameters, n, Fi), E.checkDefined(o(t.type, n, ui)));
      },
      183: function(t, n, i, a, o, c) {
        return i.factory.updateTypePredicateNode(t, o(t.assertsModifier, n, Bte), E.checkDefined(o(t.parameterName, n, vre)), o(t.type, n, ui));
      },
      184: function(t, n, i, a, o, c) {
        return i.factory.updateTypeReferenceNode(t, E.checkDefined(o(t.typeName, n, S_)), a(t.typeArguments, n, ui));
      },
      185: function(t, n, i, a, o, c) {
        return i.factory.updateFunctionTypeNode(t, a(t.typeParameters, n, $o), a(t.parameters, n, Fi), E.checkDefined(o(t.type, n, ui)));
      },
      186: function(t, n, i, a, o, c) {
        return i.factory.updateConstructorTypeNode(t, a(t.modifiers, n, hs), a(t.typeParameters, n, $o), a(t.parameters, n, Fi), E.checkDefined(o(t.type, n, ui)));
      },
      187: function(t, n, i, a, o, c) {
        return i.factory.updateTypeQueryNode(t, E.checkDefined(o(t.exprName, n, S_)), a(t.typeArguments, n, ui));
      },
      188: function(t, n, i, a, o, c) {
        return i.factory.updateTypeLiteralNode(t, a(t.members, n, Eb));
      },
      189: function(t, n, i, a, o, c) {
        return i.factory.updateArrayTypeNode(t, E.checkDefined(o(t.elementType, n, ui)));
      },
      190: function(t, n, i, a, o, c) {
        return i.factory.updateTupleTypeNode(t, a(t.elements, n, ui));
      },
      191: function(t, n, i, a, o, c) {
        return i.factory.updateOptionalTypeNode(t, E.checkDefined(o(t.type, n, ui)));
      },
      192: function(t, n, i, a, o, c) {
        return i.factory.updateRestTypeNode(t, E.checkDefined(o(t.type, n, ui)));
      },
      193: function(t, n, i, a, o, c) {
        return i.factory.updateUnionTypeNode(t, a(t.types, n, ui));
      },
      194: function(t, n, i, a, o, c) {
        return i.factory.updateIntersectionTypeNode(t, a(t.types, n, ui));
      },
      195: function(t, n, i, a, o, c) {
        return i.factory.updateConditionalTypeNode(t, E.checkDefined(o(t.checkType, n, ui)), E.checkDefined(o(t.extendsType, n, ui)), E.checkDefined(o(t.trueType, n, ui)), E.checkDefined(o(t.falseType, n, ui)));
      },
      196: function(t, n, i, a, o, c) {
        return i.factory.updateInferTypeNode(t, E.checkDefined(o(t.typeParameter, n, $o)));
      },
      206: function(t, n, i, a, o, c) {
        return i.factory.updateImportTypeNode(t, E.checkDefined(o(t.argument, n, ui)), o(t.attributes, n, BS), o(t.qualifier, n, S_), a(t.typeArguments, n, ui), t.isTypeOf);
      },
      303: function(t, n, i, a, o, c) {
        return i.factory.updateImportTypeAssertionContainer(t, E.checkDefined(o(t.assertClause, n, Xte)), t.multiLine);
      },
      203: function(t, n, i, a, o, c) {
        return i.factory.updateNamedTupleMember(t, c ? o(t.dotDotDotToken, c, HO) : t.dotDotDotToken, E.checkDefined(o(t.name, n, Fe)), c ? o(t.questionToken, c, a1) : t.questionToken, E.checkDefined(o(t.type, n, ui)));
      },
      197: function(t, n, i, a, o, c) {
        return i.factory.updateParenthesizedType(t, E.checkDefined(o(t.type, n, ui)));
      },
      199: function(t, n, i, a, o, c) {
        return i.factory.updateTypeOperatorNode(t, E.checkDefined(o(t.type, n, ui)));
      },
      200: function(t, n, i, a, o, c) {
        return i.factory.updateIndexedAccessTypeNode(t, E.checkDefined(o(t.objectType, n, ui)), E.checkDefined(o(t.indexType, n, ui)));
      },
      201: function(t, n, i, a, o, c) {
        return i.factory.updateMappedTypeNode(t, c ? o(t.readonlyToken, c, bre) : t.readonlyToken, E.checkDefined(o(t.typeParameter, n, $o)), o(t.nameType, n, ui), c ? o(t.questionToken, c, Sre) : t.questionToken, o(t.type, n, ui), a(t.members, n, Eb));
      },
      202: function(t, n, i, a, o, c) {
        return i.factory.updateLiteralTypeNode(t, E.checkDefined(o(t.literal, n, RZ)));
      },
      204: function(t, n, i, a, o, c) {
        return i.factory.updateTemplateLiteralType(t, E.checkDefined(o(t.head, n, ok)), a(t.templateSpans, n, Iz));
      },
      205: function(t, n, i, a, o, c) {
        return i.factory.updateTemplateLiteralTypeSpan(t, E.checkDefined(o(t.type, n, ui)), E.checkDefined(o(t.literal, n, Y7)));
      },
      207: function(t, n, i, a, o, c) {
        return i.factory.updateObjectBindingPattern(t, a(t.elements, n, Ns));
      },
      208: function(t, n, i, a, o, c) {
        return i.factory.updateArrayBindingPattern(t, a(t.elements, n, K7));
      },
      209: function(t, n, i, a, o, c) {
        return i.factory.updateBindingElement(t, c ? o(t.dotDotDotToken, c, HO) : t.dotDotDotToken, o(t.propertyName, n, il), E.checkDefined(o(t.name, n, pS)), o(t.initializer, n, dt));
      },
      210: function(t, n, i, a, o, c) {
        return i.factory.updateArrayLiteralExpression(t, a(t.elements, n, dt));
      },
      211: function(t, n, i, a, o, c) {
        return i.factory.updateObjectLiteralExpression(t, a(t.properties, n, zg));
      },
      212: function(t, n, i, a, o, c) {
        return H7(t) ? i.factory.updatePropertyAccessChain(t, E.checkDefined(o(t.expression, n, dt)), c ? o(t.questionDotToken, c, $O) : t.questionDotToken, E.checkDefined(o(t.name, n, Jg))) : i.factory.updatePropertyAccessExpression(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.name, n, Jg)));
      },
      213: function(t, n, i, a, o, c) {
        return Zj(t) ? i.factory.updateElementAccessChain(t, E.checkDefined(o(t.expression, n, dt)), c ? o(t.questionDotToken, c, $O) : t.questionDotToken, E.checkDefined(o(t.argumentExpression, n, dt))) : i.factory.updateElementAccessExpression(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.argumentExpression, n, dt)));
      },
      214: function(t, n, i, a, o, c) {
        return uS(t) ? i.factory.updateCallChain(t, E.checkDefined(o(t.expression, n, dt)), c ? o(t.questionDotToken, c, $O) : t.questionDotToken, a(t.typeArguments, n, ui), a(t.arguments, n, dt)) : i.factory.updateCallExpression(t, E.checkDefined(o(t.expression, n, dt)), a(t.typeArguments, n, ui), a(t.arguments, n, dt));
      },
      215: function(t, n, i, a, o, c) {
        return i.factory.updateNewExpression(t, E.checkDefined(o(t.expression, n, dt)), a(t.typeArguments, n, ui), a(t.arguments, n, dt));
      },
      216: function(t, n, i, a, o, c) {
        return i.factory.updateTaggedTemplateExpression(t, E.checkDefined(o(t.tag, n, dt)), a(t.typeArguments, n, ui), E.checkDefined(o(t.template, n, Cx)));
      },
      217: function(t, n, i, a, o, c) {
        return i.factory.updateTypeAssertion(t, E.checkDefined(o(t.type, n, ui)), E.checkDefined(o(t.expression, n, dt)));
      },
      218: function(t, n, i, a, o, c) {
        return i.factory.updateParenthesizedExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      219: function(t, n, i, a, o, c) {
        return i.factory.updateFunctionExpression(t, a(t.modifiers, n, hs), c ? o(t.asteriskToken, c, nN) : t.asteriskToken, o(t.name, n, Fe), a(t.typeParameters, n, $o), Cc(t.parameters, n, i, a), o(t.type, n, ui), ap(t.body, n, i, o));
      },
      220: function(t, n, i, a, o, c) {
        return i.factory.updateArrowFunction(t, a(t.modifiers, n, hs), a(t.typeParameters, n, $o), Cc(t.parameters, n, i, a), o(t.type, n, ui), c ? E.checkDefined(o(t.equalsGreaterThanToken, c, jte)) : t.equalsGreaterThanToken, ap(t.body, n, i, o));
      },
      221: function(t, n, i, a, o, c) {
        return i.factory.updateDeleteExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      222: function(t, n, i, a, o, c) {
        return i.factory.updateTypeOfExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      223: function(t, n, i, a, o, c) {
        return i.factory.updateVoidExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      224: function(t, n, i, a, o, c) {
        return i.factory.updateAwaitExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      225: function(t, n, i, a, o, c) {
        return i.factory.updatePrefixUnaryExpression(t, E.checkDefined(o(t.operand, n, dt)));
      },
      226: function(t, n, i, a, o, c) {
        return i.factory.updatePostfixUnaryExpression(t, E.checkDefined(o(t.operand, n, dt)));
      },
      227: function(t, n, i, a, o, c) {
        return i.factory.updateBinaryExpression(t, E.checkDefined(o(t.left, n, dt)), c ? E.checkDefined(o(t.operatorToken, c, xre)) : t.operatorToken, E.checkDefined(o(t.right, n, dt)));
      },
      228: function(t, n, i, a, o, c) {
        return i.factory.updateConditionalExpression(t, E.checkDefined(o(t.condition, n, dt)), c ? E.checkDefined(o(t.questionToken, c, a1)) : t.questionToken, E.checkDefined(o(t.whenTrue, n, dt)), c ? E.checkDefined(o(t.colonToken, c, Rte)) : t.colonToken, E.checkDefined(o(t.whenFalse, n, dt)));
      },
      229: function(t, n, i, a, o, c) {
        return i.factory.updateTemplateExpression(t, E.checkDefined(o(t.head, n, ok)), a(t.templateSpans, n, I6));
      },
      230: function(t, n, i, a, o, c) {
        return i.factory.updateYieldExpression(t, c ? o(t.asteriskToken, c, nN) : t.asteriskToken, o(t.expression, n, dt));
      },
      231: function(t, n, i, a, o, c) {
        return i.factory.updateSpreadElement(t, E.checkDefined(o(t.expression, n, dt)));
      },
      232: function(t, n, i, a, o, c) {
        return i.factory.updateClassExpression(t, a(t.modifiers, n, ec), o(t.name, n, Fe), a(t.typeParameters, n, $o), a(t.heritageClauses, n, kf), a(t.members, n, al));
      },
      234: function(t, n, i, a, o, c) {
        return i.factory.updateExpressionWithTypeArguments(t, E.checkDefined(o(t.expression, n, dt)), a(t.typeArguments, n, ui));
      },
      235: function(t, n, i, a, o, c) {
        return i.factory.updateAsExpression(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.type, n, ui)));
      },
      239: function(t, n, i, a, o, c) {
        return i.factory.updateSatisfiesExpression(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.type, n, ui)));
      },
      236: function(t, n, i, a, o, c) {
        return Vu(t) ? i.factory.updateNonNullChain(t, E.checkDefined(o(t.expression, n, dt))) : i.factory.updateNonNullExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      237: function(t, n, i, a, o, c) {
        return i.factory.updateMetaProperty(t, E.checkDefined(o(t.name, n, Fe)));
      },
      240: function(t, n, i, a, o, c) {
        return i.factory.updateTemplateSpan(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.literal, n, Y7)));
      },
      242: function(t, n, i, a, o, c) {
        return i.factory.updateBlock(t, a(t.statements, n, Ei));
      },
      244: function(t, n, i, a, o, c) {
        return i.factory.updateVariableStatement(t, a(t.modifiers, n, ec), E.checkDefined(o(t.declarationList, n, iu)));
      },
      245: function(t, n, i, a, o, c) {
        return i.factory.updateExpressionStatement(t, E.checkDefined(o(t.expression, n, dt)));
      },
      246: function(t, n, i, a, o, c) {
        return i.factory.updateIfStatement(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.thenStatement, n, Ei, i.factory.liftToBlock)), o(t.elseStatement, n, Ei, i.factory.liftToBlock));
      },
      247: function(t, n, i, a, o, c) {
        return i.factory.updateDoStatement(t, D_(t.statement, n, i, o), E.checkDefined(o(t.expression, n, dt)));
      },
      248: function(t, n, i, a, o, c) {
        return i.factory.updateWhileStatement(t, E.checkDefined(o(t.expression, n, dt)), D_(t.statement, n, i, o));
      },
      249: function(t, n, i, a, o, c) {
        return i.factory.updateForStatement(t, o(t.initializer, n, bp), o(t.condition, n, dt), o(t.incrementor, n, dt), D_(t.statement, n, i, o));
      },
      250: function(t, n, i, a, o, c) {
        return i.factory.updateForInStatement(t, E.checkDefined(o(t.initializer, n, bp)), E.checkDefined(o(t.expression, n, dt)), D_(t.statement, n, i, o));
      },
      251: function(t, n, i, a, o, c) {
        return i.factory.updateForOfStatement(t, c ? o(t.awaitModifier, c, Az) : t.awaitModifier, E.checkDefined(o(t.initializer, n, bp)), E.checkDefined(o(t.expression, n, dt)), D_(t.statement, n, i, o));
      },
      252: function(t, n, i, a, o, c) {
        return i.factory.updateContinueStatement(t, o(t.label, n, Fe));
      },
      253: function(t, n, i, a, o, c) {
        return i.factory.updateBreakStatement(t, o(t.label, n, Fe));
      },
      254: function(t, n, i, a, o, c) {
        return i.factory.updateReturnStatement(t, o(t.expression, n, dt));
      },
      255: function(t, n, i, a, o, c) {
        return i.factory.updateWithStatement(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.statement, n, Ei, i.factory.liftToBlock)));
      },
      256: function(t, n, i, a, o, c) {
        return i.factory.updateSwitchStatement(t, E.checkDefined(o(t.expression, n, dt)), E.checkDefined(o(t.caseBlock, n, aw)));
      },
      257: function(t, n, i, a, o, c) {
        return i.factory.updateLabeledStatement(t, E.checkDefined(o(t.label, n, Fe)), E.checkDefined(o(t.statement, n, Ei, i.factory.liftToBlock)));
      },
      258: function(t, n, i, a, o, c) {
        return i.factory.updateThrowStatement(t, E.checkDefined(o(t.expression, n, dt)));
      },
      259: function(t, n, i, a, o, c) {
        return i.factory.updateTryStatement(t, E.checkDefined(o(t.tryBlock, n, Wa)), o(t.catchClause, n, Zb), o(t.finallyBlock, n, Wa));
      },
      261: function(t, n, i, a, o, c) {
        return i.factory.updateVariableDeclaration(t, E.checkDefined(o(t.name, n, pS)), c ? o(t.exclamationToken, c, iN) : t.exclamationToken, o(t.type, n, ui), o(t.initializer, n, dt));
      },
      262: function(t, n, i, a, o, c) {
        return i.factory.updateVariableDeclarationList(t, a(t.declarations, n, ci));
      },
      263: function(t, n, i, a, o, c) {
        return i.factory.updateFunctionDeclaration(t, a(t.modifiers, n, hs), c ? o(t.asteriskToken, c, nN) : t.asteriskToken, o(t.name, n, Fe), a(t.typeParameters, n, $o), Cc(t.parameters, n, i, a), o(t.type, n, ui), ap(t.body, n, i, o));
      },
      264: function(t, n, i, a, o, c) {
        return i.factory.updateClassDeclaration(t, a(t.modifiers, n, ec), o(t.name, n, Fe), a(t.typeParameters, n, $o), a(t.heritageClauses, n, kf), a(t.members, n, al));
      },
      265: function(t, n, i, a, o, c) {
        return i.factory.updateInterfaceDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, Fe)), a(t.typeParameters, n, $o), a(t.heritageClauses, n, kf), a(t.members, n, Eb));
      },
      266: function(t, n, i, a, o, c) {
        return i.factory.updateTypeAliasDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, Fe)), a(t.typeParameters, n, $o), E.checkDefined(o(t.type, n, ui)));
      },
      267: function(t, n, i, a, o, c) {
        return i.factory.updateEnumDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, Fe)), a(t.members, n, Gh));
      },
      268: function(t, n, i, a, o, c) {
        return i.factory.updateModuleDeclaration(t, a(t.modifiers, n, ec), E.checkDefined(o(t.name, n, Tre)), o(t.body, n, BZ));
      },
      269: function(t, n, i, a, o, c) {
        return i.factory.updateModuleBlock(t, a(t.statements, n, Ei));
      },
      270: function(t, n, i, a, o, c) {
        return i.factory.updateCaseBlock(t, a(t.clauses, n, B3));
      },
      271: function(t, n, i, a, o, c) {
        return i.factory.updateNamespaceExportDeclaration(t, E.checkDefined(o(t.name, n, Fe)));
      },
      272: function(t, n, i, a, o, c) {
        return i.factory.updateImportEqualsDeclaration(t, a(t.modifiers, n, ec), t.isTypeOnly, E.checkDefined(o(t.name, n, Fe)), E.checkDefined(o(t.moduleReference, n, VZ)));
      },
      273: function(t, n, i, a, o, c) {
        return i.factory.updateImportDeclaration(t, a(t.modifiers, n, ec), o(t.importClause, n, hd), E.checkDefined(o(t.moduleSpecifier, n, dt)), o(t.attributes, n, BS));
      },
      301: function(t, n, i, a, o, c) {
        return i.factory.updateImportAttributes(t, a(t.elements, n, Qte), t.multiLine);
      },
      302: function(t, n, i, a, o, c) {
        return i.factory.updateImportAttribute(t, E.checkDefined(o(t.name, n, NZ)), E.checkDefined(o(t.value, n, dt)));
      },
      274: function(t, n, i, a, o, c) {
        return i.factory.updateImportClause(t, t.phaseModifier, o(t.name, n, Fe), o(t.namedBindings, n, _B));
      },
      275: function(t, n, i, a, o, c) {
        return i.factory.updateNamespaceImport(t, E.checkDefined(o(t.name, n, Fe)));
      },
      281: function(t, n, i, a, o, c) {
        return i.factory.updateNamespaceExport(t, E.checkDefined(o(t.name, n, Fe)));
      },
      276: function(t, n, i, a, o, c) {
        return i.factory.updateNamedImports(t, a(t.elements, n, p_));
      },
      277: function(t, n, i, a, o, c) {
        return i.factory.updateImportSpecifier(t, t.isTypeOnly, o(t.propertyName, n, tF), E.checkDefined(o(t.name, n, Fe)));
      },
      278: function(t, n, i, a, o, c) {
        return i.factory.updateExportAssignment(t, a(t.modifiers, n, ec), E.checkDefined(o(t.expression, n, dt)));
      },
      279: function(t, n, i, a, o, c) {
        return i.factory.updateExportDeclaration(t, a(t.modifiers, n, ec), t.isTypeOnly, o(t.exportClause, n, eB), o(t.moduleSpecifier, n, dt), o(t.attributes, n, BS));
      },
      280: function(t, n, i, a, o, c) {
        return i.factory.updateNamedExports(t, a(t.elements, n, $u));
      },
      282: function(t, n, i, a, o, c) {
        return i.factory.updateExportSpecifier(t, t.isTypeOnly, o(t.propertyName, n, tF), E.checkDefined(o(t.name, n, tF)));
      },
      284: function(t, n, i, a, o, c) {
        return i.factory.updateExternalModuleReference(t, E.checkDefined(o(t.expression, n, dt)));
      },
      285: function(t, n, i, a, o, c) {
        return i.factory.updateJsxElement(t, E.checkDefined(o(t.openingElement, n, qd)), a(t.children, n, j3), E.checkDefined(o(t.closingElement, n, Qb)));
      },
      286: function(t, n, i, a, o, c) {
        return i.factory.updateJsxSelfClosingElement(t, E.checkDefined(o(t.tagName, n, Y4)), a(t.typeArguments, n, ui), E.checkDefined(o(t.attributes, n, Yb)));
      },
      287: function(t, n, i, a, o, c) {
        return i.factory.updateJsxOpeningElement(t, E.checkDefined(o(t.tagName, n, Y4)), a(t.typeArguments, n, ui), E.checkDefined(o(t.attributes, n, Yb)));
      },
      288: function(t, n, i, a, o, c) {
        return i.factory.updateJsxClosingElement(t, E.checkDefined(o(t.tagName, n, Y4)));
      },
      296: function(t, n, i, a, o, c) {
        return i.factory.updateJsxNamespacedName(t, E.checkDefined(o(t.namespace, n, Fe)), E.checkDefined(o(t.name, n, Fe)));
      },
      289: function(t, n, i, a, o, c) {
        return i.factory.updateJsxFragment(t, E.checkDefined(o(t.openingFragment, n, yd)), a(t.children, n, j3), E.checkDefined(o(t.closingFragment, n, Zte)));
      },
      292: function(t, n, i, a, o, c) {
        return i.factory.updateJsxAttribute(t, E.checkDefined(o(t.name, n, ate)), o(t.initializer, n, qZ));
      },
      293: function(t, n, i, a, o, c) {
        return i.factory.updateJsxAttributes(t, a(t.properties, n, n5));
      },
      294: function(t, n, i, a, o, c) {
        return i.factory.updateJsxSpreadAttribute(t, E.checkDefined(o(t.expression, n, dt)));
      },
      295: function(t, n, i, a, o, c) {
        return i.factory.updateJsxExpression(t, o(t.expression, n, dt));
      },
      297: function(t, n, i, a, o, c) {
        return i.factory.updateCaseClause(t, E.checkDefined(o(t.expression, n, dt)), a(t.statements, n, Ei));
      },
      298: function(t, n, i, a, o, c) {
        return i.factory.updateDefaultClause(t, a(t.statements, n, Ei));
      },
      299: function(t, n, i, a, o, c) {
        return i.factory.updateHeritageClause(t, a(t.types, n, rh));
      },
      300: function(t, n, i, a, o, c) {
        return i.factory.updateCatchClause(t, o(t.variableDeclaration, n, ci), E.checkDefined(o(t.block, n, Wa)));
      },
      304: function(t, n, i, a, o, c) {
        return i.factory.updatePropertyAssignment(t, E.checkDefined(o(t.name, n, il)), E.checkDefined(o(t.initializer, n, dt)));
      },
      305: function(t, n, i, a, o, c) {
        return i.factory.updateShorthandPropertyAssignment(t, E.checkDefined(o(t.name, n, Fe)), o(t.objectAssignmentInitializer, n, dt));
      },
      306: function(t, n, i, a, o, c) {
        return i.factory.updateSpreadAssignment(t, E.checkDefined(o(t.expression, n, dt)));
      },
      307: function(t, n, i, a, o, c) {
        return i.factory.updateEnumMember(t, E.checkDefined(o(t.name, n, il)), o(t.initializer, n, dt));
      },
      308: function(t, n, i, a, o, c) {
        return i.factory.updateSourceFile(t, QW(t.statements, n, i));
      },
      356: function(t, n, i, a, o, c) {
        return i.factory.updatePartiallyEmittedExpression(t, E.checkDefined(o(t.expression, n, dt)));
      },
      357: function(t, n, i, a, o, c) {
        return i.factory.updateCommaListExpression(t, a(t.elements, n, dt));
      }
    };
    function jRe(e) {
      return E.assert(e.length <= 1, "Too many nodes written to output."), Fg(e);
    }
    function Fne(e, t, n, i, a) {
      var { enter: o, exit: c } = a.extendedDiagnostics ? lj("Source Map", "beforeSourcemap", "afterSourcemap") : OQ, _ = [], u = [], d = /* @__PURE__ */ new Map(), g, h = [], S, T = [], k = "", D = 0, P = 0, N = 0, M = 0, R = 0, G = 0, L = !1, z = 0, H = 0, U = 0, pe = 0, ie = 0, W = 0, Q = !1, se = !1, he = !1;
      return {
        getSources: () => _,
        addSource: fe,
        setSourceContent: de,
        addName: $,
        addMapping: ce,
        appendSourceMap: oe,
        toJSON: K,
        toString: () => JSON.stringify(K())
      };
      function fe(ae) {
        o();
        const Ce = bx(i, ae, e.getCurrentDirectory(), e.getCanonicalFileName, !0);
        let ue = d.get(Ce);
        return ue === void 0 && (ue = u.length, u.push(Ce), _.push(ae), d.set(Ce, ue)), c(), ue;
      }
      function de(ae, Ce) {
        if (o(), Ce !== null) {
          for (g || (g = []); g.length < ae; ) g.push(null);
          g[ae] = Ce;
        }
        c();
      }
      function $(ae) {
        o(), S || (S = /* @__PURE__ */ new Map());
        let Ce = S.get(ae);
        return Ce === void 0 && (Ce = h.length, h.push(ae), S.set(ae, Ce)), c(), Ce;
      }
      function Se(ae, Ce) {
        return !Q || z !== ae || H !== Ce;
      }
      function Be(ae, Ce, ue) {
        return ae !== void 0 && Ce !== void 0 && ue !== void 0 && U === ae && (pe > Ce || pe === Ce && ie > ue);
      }
      function ce(ae, Ce, ue, Ie, Xe, Ft) {
        E.assert(ae >= z, "generatedLine cannot backtrack"), E.assert(Ce >= 0, "generatedCharacter cannot be negative"), E.assert(ue === void 0 || ue >= 0, "sourceIndex cannot be negative"), E.assert(Ie === void 0 || Ie >= 0, "sourceLine cannot be negative"), E.assert(Xe === void 0 || Xe >= 0, "sourceCharacter cannot be negative"), o(), (Se(ae, Ce) || Be(ue, Ie, Xe)) && (Ne(), z = ae, H = Ce, se = !1, he = !1, Q = !0), ue !== void 0 && Ie !== void 0 && Xe !== void 0 && (U = ue, pe = Ie, ie = Xe, se = !0, Ft !== void 0 && (W = Ft, he = !0)), c();
      }
      function oe(ae, Ce, ue, Ie, Xe, Ft) {
        E.assert(ae >= z, "generatedLine cannot backtrack"), E.assert(Ce >= 0, "generatedCharacter cannot be negative"), o();
        const Ut = [];
        let Xt;
        const Ar = eU(ue.mappings);
        for (const Ct of Ar) {
          if (Ft && (Ct.generatedLine > Ft.line || Ct.generatedLine === Ft.line && Ct.generatedCharacter > Ft.character)) break;
          if (Xe && (Ct.generatedLine < Xe.line || Xe.line === Ct.generatedLine && Ct.generatedCharacter < Xe.character)) continue;
          let Kt, zr, _i, Gr;
          if (Ct.sourceIndex !== void 0) {
            if (Kt = Ut[Ct.sourceIndex], Kt === void 0) {
              const Zr = ue.sources[Ct.sourceIndex], ni = ue.sourceRoot ? jn(ue.sourceRoot, Zr) : Zr, ra = jn(Xn(Ie), ni);
              Ut[Ct.sourceIndex] = Kt = fe(ra), ue.sourcesContent && typeof ue.sourcesContent[Ct.sourceIndex] == "string" && de(Kt, ue.sourcesContent[Ct.sourceIndex]);
            }
            zr = Ct.sourceLine, _i = Ct.sourceCharacter, ue.names && Ct.nameIndex !== void 0 && (Xt || (Xt = []), Gr = Xt[Ct.nameIndex], Gr === void 0 && (Xt[Ct.nameIndex] = Gr = $(ue.names[Ct.nameIndex])));
          }
          const Nt = Ct.generatedLine - (Xe ? Xe.line : 0), Li = Nt + ae, ri = Xe && Xe.line === Ct.generatedLine ? Ct.generatedCharacter - Xe.character : Ct.generatedCharacter;
          ce(Li, Nt === 0 ? ri + Ce : ri, Kt, zr, _i, Gr);
        }
        c();
      }
      function ge() {
        return !L || D !== z || P !== H || N !== U || M !== pe || R !== ie || G !== W;
      }
      function Ae(ae) {
        T.push(ae), T.length >= 1024 && ot();
      }
      function Ne() {
        if (!(!Q || !ge())) {
          if (o(), D < z) {
            do
              Ae(59), D++;
            while (D < z);
            P = 0;
          } else
            E.assertEqual(D, z, "generatedLine cannot backtrack"), L && Ae(44);
          ke(H - P), P = H, se && (ke(U - N), N = U, ke(pe - M), M = pe, ke(ie - R), R = ie, he && (ke(W - G), G = W)), L = !0, c();
        }
      }
      function ot() {
        T.length > 0 && (k += String.fromCharCode.apply(void 0, T), T.length = 0);
      }
      function K() {
        return Ne(), ot(), {
          version: 3,
          file: t,
          sourceRoot: n,
          sources: u,
          names: h,
          mappings: k,
          sourcesContent: g
        };
      }
      function ke(ae) {
        ae < 0 ? ae = (-ae << 1) + 1 : ae = ae << 1;
        do {
          let Ce = ae & 31;
          ae = ae >> 5, ae > 0 && (Ce = Ce | 32), Ae(zRe(Ce));
        } while (ae > 0);
      }
    }
    var Lne = /\/\/[@#] source[M]appingURL=(.+)\r?\n?$/, YW = /^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/, ZW = /^\s*(\/\/[@#] .*)?$/;
    function KW(e, t) {
      return {
        getLineCount: () => t.length,
        getLineText: (n) => e.substring(t[n], t[n + 1])
      };
    }
    function Mne(e) {
      for (let t = e.getLineCount() - 1; t >= 0; t--) {
        const n = e.getLineText(t), i = YW.exec(n);
        if (i) return i[1].trimEnd();
        if (!n.match(ZW)) break;
      }
    }
    function BRe(e) {
      return typeof e == "string" || e === null;
    }
    function JRe(e) {
      return e !== null && typeof e == "object" && e.version === 3 && typeof e.file == "string" && typeof e.mappings == "string" && da(e.sources) && hr(e.sources, Ta) && (e.sourceRoot === void 0 || e.sourceRoot === null || typeof e.sourceRoot == "string") && (e.sourcesContent === void 0 || e.sourcesContent === null || da(e.sourcesContent) && hr(e.sourcesContent, BRe)) && (e.names === void 0 || e.names === null || da(e.names) && hr(e.names, Ta));
    }
    function Rne(e) {
      try {
        const t = JSON.parse(e);
        if (JRe(t)) return t;
      } catch {
      }
    }
    function eU(e) {
      let t = !1, n = 0, i = 0, a = 0, o = 0, c = 0, _ = 0, u = 0, d;
      return {
        get pos() {
          return n;
        },
        get error() {
          return d;
        },
        get state() {
          return g(!0, !0);
        },
        next() {
          for (; !t && n < e.length; ) {
            const N = e.charCodeAt(n);
            if (N === 59) {
              i++, a = 0, n++;
              continue;
            }
            if (N === 44) {
              n++;
              continue;
            }
            let M = !1, R = !1;
            if (a += P(), k()) return h();
            if (a < 0) return T("Invalid generatedCharacter found");
            if (!D()) {
              if (M = !0, o += P(), k()) return h();
              if (o < 0) return T("Invalid sourceIndex found");
              if (D()) return T("Unsupported Format: No entries after sourceIndex");
              if (c += P(), k()) return h();
              if (c < 0) return T("Invalid sourceLine found");
              if (D()) return T("Unsupported Format: No entries after sourceLine");
              if (_ += P(), k()) return h();
              if (_ < 0) return T("Invalid sourceCharacter found");
              if (!D()) {
                if (R = !0, u += P(), k()) return h();
                if (u < 0) return T("Invalid nameIndex found");
                if (!D()) return T("Unsupported Error Format: Entries after nameIndex");
              }
            }
            return {
              value: g(M, R),
              done: t
            };
          }
          return h();
        },
        [Symbol.iterator]() {
          return this;
        }
      };
      function g(N, M) {
        return {
          generatedLine: i,
          generatedCharacter: a,
          sourceIndex: N ? o : void 0,
          sourceLine: N ? c : void 0,
          sourceCharacter: N ? _ : void 0,
          nameIndex: M ? u : void 0
        };
      }
      function h() {
        return t = !0, {
          value: void 0,
          done: !0
        };
      }
      function S(N) {
        d === void 0 && (d = N);
      }
      function T(N) {
        return S(N), h();
      }
      function k() {
        return d !== void 0;
      }
      function D() {
        return n === e.length || e.charCodeAt(n) === 44 || e.charCodeAt(n) === 59;
      }
      function P() {
        let N = !0, M = 0, R = 0;
        for (; N; n++) {
          if (n >= e.length) return S("Error in decoding base64VLQFormatDecode, past the mapping string"), -1;
          const G = WRe(e.charCodeAt(n));
          if (G === -1) return S("Invalid character in VLQ"), -1;
          N = (G & 32) !== 0, R = R | (G & 31) << M, M += 5;
        }
        return (R & 1) === 0 ? R = R >> 1 : (R = R >> 1, R = -R), R;
      }
    }
    function eve(e, t) {
      return e === t || e.generatedLine === t.generatedLine && e.generatedCharacter === t.generatedCharacter && e.sourceIndex === t.sourceIndex && e.sourceLine === t.sourceLine && e.sourceCharacter === t.sourceCharacter && e.nameIndex === t.nameIndex;
    }
    function jne(e) {
      return e.sourceIndex !== void 0 && e.sourceLine !== void 0 && e.sourceCharacter !== void 0;
    }
    function zRe(e) {
      return e >= 0 && e < 26 ? 65 + e : e >= 26 && e < 52 ? 97 + e - 26 : e >= 52 && e < 62 ? 48 + e - 52 : e === 62 ? 43 : e === 63 ? 47 : E.fail(`${e}: not a base64 value`);
    }
    function WRe(e) {
      return e >= 65 && e <= 90 ? e - 65 : e >= 97 && e <= 122 ? e - 97 + 26 : e >= 48 && e <= 57 ? e - 48 + 52 : e === 43 ? 62 : e === 47 ? 63 : -1;
    }
    function tve(e) {
      return e.sourceIndex !== void 0 && e.sourcePosition !== void 0;
    }
    function rve(e, t) {
      return e.generatedPosition === t.generatedPosition && e.sourceIndex === t.sourceIndex && e.sourcePosition === t.sourcePosition;
    }
    function URe(e, t) {
      return E.assert(e.sourceIndex === t.sourceIndex), Fo(e.sourcePosition, t.sourcePosition);
    }
    function VRe(e, t) {
      return Fo(e.generatedPosition, t.generatedPosition);
    }
    function qRe(e) {
      return e.sourcePosition;
    }
    function GRe(e) {
      return e.generatedPosition;
    }
    function Bne(e, t, n) {
      const i = Xn(n), a = t.sourceRoot ? ca(t.sourceRoot, i) : i, o = ca(t.file, i), c = e.getSourceFileLike(o), _ = t.sources.map((M) => ca(M, a)), u = new Map(_.map((M, R) => [e.getCanonicalFileName(M), R]));
      let d, g, h;
      return {
        getSourcePosition: N,
        getGeneratedPosition: P
      };
      function S(M) {
        const R = c !== void 0 ? g3(c, M.generatedLine, M.generatedCharacter, !0) : -1;
        let G, L;
        if (jne(M)) {
          const z = e.getSourceFileLike(_[M.sourceIndex]);
          G = t.sources[M.sourceIndex], L = z !== void 0 ? g3(z, M.sourceLine, M.sourceCharacter, !0) : -1;
        }
        return {
          generatedPosition: R,
          source: G,
          sourceIndex: M.sourceIndex,
          sourcePosition: L,
          nameIndex: M.nameIndex
        };
      }
      function T() {
        if (d === void 0) {
          const M = eU(t.mappings), R = ma(M, S);
          M.error !== void 0 ? (e.log && e.log(`Encountered error while decoding sourcemap: ${M.error}`), d = Te) : d = R;
        }
        return d;
      }
      function k(M) {
        if (h === void 0) {
          const R = [];
          for (const G of T()) {
            if (!tve(G)) continue;
            let L = R[G.sourceIndex];
            L || (R[G.sourceIndex] = L = []), L.push(G);
          }
          h = R.map((G) => x4(G, URe, rve));
        }
        return h[M];
      }
      function D() {
        if (g === void 0) {
          const M = [];
          for (const R of T()) M.push(R);
          g = x4(M, VRe, rve);
        }
        return g;
      }
      function P(M) {
        const R = u.get(e.getCanonicalFileName(M.fileName));
        if (R === void 0) return M;
        const G = k(R);
        if (!_t(G)) return M;
        let L = ux(G, M.pos, qRe, Fo);
        L < 0 && (L = ~L);
        const z = G[L];
        return z === void 0 || z.sourceIndex !== R ? M : {
          fileName: o,
          pos: z.generatedPosition
        };
      }
      function N(M) {
        const R = D();
        if (!_t(R)) return M;
        let G = ux(R, M.pos, GRe, Fo);
        G < 0 && (G = ~G);
        const L = R[G];
        return L === void 0 || !tve(L) ? M : {
          fileName: _[L.sourceIndex],
          pos: L.sourcePosition
        };
      }
    }
    var tU = {
      getSourcePosition: mo,
      getGeneratedPosition: mo
    };
    function w_(e) {
      return e = rc(e), e ? Hs(e) : 0;
    }
    function nve(e) {
      return !e || !Nm(e) && !Pp(e) ? !1 : _t(e.elements, ive);
    }
    function ive(e) {
      return lg(e.propertyName || e.name);
    }
    function Xd(e, t) {
      return n;
      function n(a) {
        return a.kind === 308 ? t(a) : i(a);
      }
      function i(a) {
        return e.factory.createBundle(or(a.sourceFiles, t));
      }
    }
    function Jne(e) {
      return !!u6(e);
    }
    function $F(e) {
      if (u6(e)) return !0;
      const t = e.importClause && e.importClause.namedBindings;
      if (!t || !Nm(t)) return !1;
      let n = 0;
      for (const i of t.elements) ive(i) && n++;
      return n > 0 && n !== t.elements.length || !!(t.elements.length - n) && TS(e);
    }
    function rU(e) {
      return !$F(e) && (TS(e) || !!e.importClause && Nm(e.importClause.namedBindings) && nve(e.importClause.namedBindings));
    }
    function nU(e, t) {
      const n = e.getEmitResolver(), i = e.getCompilerOptions(), a = [], o = new HRe(), c = [], _ = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Set();
      let d, g = !1, h, S = !1, T = !1, k = !1;
      for (const M of t.statements) switch (M.kind) {
        case 273:
          a.push(M), !T && $F(M) && (T = !0), !k && rU(M) && (k = !0);
          break;
        case 272:
          M.moduleReference.kind === 284 && a.push(M);
          break;
        case 279:
          if (M.moduleSpecifier) if (!M.exportClause)
            a.push(M), S = !0;
          else if (a.push(M), Pp(M.exportClause))
            P(M), k || (k = nve(M.exportClause));
          else {
            const R = M.exportClause.name, G = Gy(R);
            _.get(G) || (Sw(c, w_(M), R), _.set(G, !0), d = kr(d, R)), T = !0;
          }
          else P(M);
          break;
        case 278:
          M.isExportEquals && !h && (h = M);
          break;
        case 244:
          if (Qn(M, 32)) for (const R of M.declarationList.declarations) d = ave(R, _, d, c);
          break;
        case 263:
          Qn(M, 32) && N(M, void 0, Qn(M, 2048));
          break;
        case 264:
          if (Qn(M, 32)) if (Qn(M, 2048))
            g || (Sw(c, w_(M), e.factory.getDeclarationName(M)), g = !0);
          else {
            const R = M.name;
            R && !_.get(On(R)) && (Sw(c, w_(M), R), _.set(On(R), !0), d = kr(d, R));
          }
          break;
      }
      const D = Zz(e.factory, e.getEmitHelperFactory(), t, i, S, T, k);
      return D && a.unshift(D), {
        externalImports: a,
        exportSpecifiers: o,
        exportEquals: h,
        hasExportStarsToExportValues: S,
        exportedBindings: c,
        exportedNames: d,
        exportedFunctions: u,
        externalHelpersImportDeclaration: D
      };
      function P(M) {
        for (const R of ns(M.exportClause, Pp).elements) {
          const G = Gy(R.name);
          if (!_.get(G)) {
            const L = R.propertyName || R.name;
            if (L.kind !== 11) {
              M.moduleSpecifier || o.add(L, R);
              const z = n.getReferencedImportDeclaration(L) || n.getReferencedValueDeclaration(L);
              if (z) {
                if (z.kind === 263) {
                  N(z, R.name, lg(R.name));
                  continue;
                }
                Sw(c, w_(z), R.name);
              }
            }
            _.set(G, !0), d = kr(d, R.name);
          }
        }
      }
      function N(M, R, G) {
        if (u.add(rc(M, Xc)), G)
          g || (Sw(c, w_(M), R ?? e.factory.getDeclarationName(M)), g = !0);
        else {
          R ?? (R = M.name);
          const L = Gy(R);
          _.get(L) || (Sw(c, w_(M), R), _.set(L, !0));
        }
      }
    }
    function ave(e, t, n, i) {
      if (Ja(e.name))
        for (const a of e.name.elements) Al(a) || (n = ave(a, t, n, i));
      else if (!Ko(e.name)) {
        const a = On(e.name);
        t.get(a) || (t.set(a, !0), n = kr(n, e.name), Hh(e.name) && Sw(i, w_(e), e.name));
      }
      return n;
    }
    function Sw(e, t, n) {
      let i = e[t];
      return i ? i.push(n) : e[t] = i = [n], i;
    }
    var Z6 = class S4 {
      constructor() {
        this._map = /* @__PURE__ */ new Map();
      }
      get size() {
        return this._map.size;
      }
      has(t) {
        return this._map.has(S4.toKey(t));
      }
      get(t) {
        return this._map.get(S4.toKey(t));
      }
      set(t, n) {
        return this._map.set(S4.toKey(t), n), this;
      }
      delete(t) {
        var n;
        return ((n = this._map) == null ? void 0 : n.delete(S4.toKey(t))) ?? !1;
      }
      clear() {
        this._map.clear();
      }
      values() {
        return this._map.values();
      }
      static toKey(t) {
        if (fS(t) || Ko(t)) {
          const n = t.emitNode.autoGenerate;
          if ((n.flags & 7) === 4) {
            const i = hN(t), a = Jg(i) && i !== t ? S4.toKey(i) : `(generated@${Hs(i)})`;
            return Av(!1, n.prefix, a, n.suffix, S4.toKey);
          } else {
            const i = `(auto@${n.id})`;
            return Av(!1, n.prefix, i, n.suffix, S4.toKey);
          }
        }
        return Oi(t) ? On(t).slice(1) : On(t);
      }
    }, HRe = class extends Z6 {
      add(e, t) {
        let n = this.get(e);
        return n ? n.push(t) : this.set(e, n = [t]), n;
      }
      remove(e, t) {
        const n = this.get(e);
        n && (px(n, t), n.length || this.delete(e));
      }
    };
    function r2(e) {
      return Xs(e) || e.kind === 9 || z_(e.kind) || Fe(e);
    }
    function Lm(e) {
      return !Fe(e) && r2(e);
    }
    function Tw(e) {
      return e >= 65 && e <= 79;
    }
    function xw(e) {
      switch (e) {
        case 65:
          return 40;
        case 66:
          return 41;
        case 67:
          return 42;
        case 68:
          return 43;
        case 69:
          return 44;
        case 70:
          return 45;
        case 71:
          return 48;
        case 72:
          return 49;
        case 73:
          return 50;
        case 74:
          return 51;
        case 75:
          return 52;
        case 79:
          return 53;
        case 76:
          return 57;
        case 77:
          return 56;
        case 78:
          return 61;
      }
    }
    function XF(e) {
      if (!zl(e)) return;
      const t = Gs(e.expression);
      return hS(t) ? t : void 0;
    }
    function sve(e, t, n) {
      for (let i = t; i < e.length; i += 1) {
        const a = e[i];
        if (XF(a))
          return n.unshift(i), !0;
        if (jS(a) && sve(a.tryBlock.statements, 0, n))
          return n.unshift(i), !0;
      }
      return !1;
    }
    function QF(e, t) {
      const n = [];
      return sve(e, t, n), n;
    }
    function iU(e, t, n) {
      return dn(e.members, (i) => XRe(i, t, n));
    }
    function $Re(e) {
      return QRe(e) || Bc(e);
    }
    function YF(e) {
      return dn(e.members, $Re);
    }
    function XRe(e, t, n) {
      return ga(e) && (!!e.initializer || !t) && vl(e) === n;
    }
    function QRe(e) {
      return ga(e) && vl(e);
    }
    function MN(e) {
      return e.kind === 173 && e.initializer !== void 0;
    }
    function zne(e) {
      return !es(e) && (kx(e) || R_(e)) && Oi(e.name);
    }
    function Wne(e) {
      let t;
      if (e) {
        const n = e.parameters, i = n.length > 0 && Yy(n[0]), a = i ? 1 : 0, o = i ? n.length - 1 : n.length;
        for (let c = 0; c < o; c++) {
          const _ = n[c + a];
          (t || tp(_)) && (t || (t = new Array(o)), t[c] = My(_));
        }
      }
      return t;
    }
    function aU(e, t) {
      const n = My(e), i = t ? Wne(Xg(e)) : void 0;
      if (!(!_t(n) && !_t(i)))
        return {
          decorators: n,
          parameters: i
        };
    }
    function ZF(e, t, n) {
      switch (e.kind) {
        case 178:
        case 179:
          return n ? YRe(e, t, !0) : ove(e, !1);
        case 175:
          return ove(e, n);
        case 173:
          return ZRe(e);
        default:
          return;
      }
    }
    function YRe(e, t, n) {
      if (!e.body) return;
      const { firstAccessor: i, secondAccessor: a, getAccessor: o, setAccessor: c } = Bb(t.members, e), _ = tp(i) ? i : a && tp(a) ? a : void 0;
      if (!_ || e !== _) return;
      const u = My(_), d = n ? Wne(c) : void 0;
      if (!(!_t(u) && !_t(d)))
        return {
          decorators: u,
          parameters: d,
          getDecorators: o && My(o),
          setDecorators: c && My(c)
        };
    }
    function ove(e, t) {
      if (!e.body) return;
      const n = My(e), i = t ? Wne(e) : void 0;
      if (!(!_t(n) && !_t(i)))
        return {
          decorators: n,
          parameters: i
        };
    }
    function ZRe(e) {
      const t = My(e);
      if (_t(t))
        return { decorators: t };
    }
    function KRe(e, t) {
      for (; e; ) {
        const n = t(e);
        if (n !== void 0) return n;
        e = e.previous;
      }
    }
    function Une(e) {
      return { data: e };
    }
    function sU(e, t) {
      var n, i;
      return fS(t) ? (n = e?.generatedIdentifiers) == null ? void 0 : n.get(hN(t)) : (i = e?.identifiers) == null ? void 0 : i.get(t.escapedText);
    }
    function HS(e, t, n) {
      fS(t) ? (e.generatedIdentifiers ?? (e.generatedIdentifiers = /* @__PURE__ */ new Map()), e.generatedIdentifiers.set(hN(t), n)) : (e.identifiers ?? (e.identifiers = /* @__PURE__ */ new Map()), e.identifiers.set(t.escapedText, n));
    }
    function Vne(e, t) {
      return KRe(e, (n) => sU(n.privateEnv, t));
    }
    function eje(e) {
      return !e.initializer && Fe(e.name);
    }
    function RN(e) {
      return hr(e, eje);
    }
    function Dk(e, t) {
      if (!e || !Ts(e) || !fA(e.text, t)) return e;
      const n = F0(e.text, VN(e.text, t));
      return n !== e.text ? Fn(pt(A.createStringLiteral(n, e.singleQuote), e), e) : e;
    }
    var qne = /* @__PURE__ */ ((e) => (e[e.All = 0] = "All", e[e.ObjectRest = 1] = "ObjectRest", e))(qne || {});
    function $S(e, t, n, i, a, o) {
      let c = e, _;
      if (A0(e))
        for (_ = e.right; dee(e.left) || DJ(e.left); ) if (A0(_))
          c = e = _, _ = e.right;
        else return E.checkDefined(Ze(_, t, dt));
      let u;
      const d = {
        context: n,
        level: i,
        downlevelIteration: !!n.getCompilerOptions().downlevelIteration,
        hoistTempVariables: !0,
        emitExpression: g,
        emitBindingOrAssignment: h,
        createArrayBindingOrAssignmentPattern: (S) => cje(n.factory, S),
        createObjectBindingOrAssignmentPattern: (S) => uje(n.factory, S),
        createArrayBindingOrAssignmentElement: fje,
        visitor: t
      };
      if (_ && (_ = Ze(_, t, dt), E.assert(_), Fe(_) && Gne(e, _.escapedText) || Hne(e) ? _ = wk(d, _, !1, c) : a ? _ = wk(d, _, !0, c) : wo(e) && (c = _)), kw(d, e, _, c, A0(e)), _ && a) {
        if (!_t(u)) return _;
        u.push(_);
      }
      return n.factory.inlineExpressions(u) || n.factory.createOmittedExpression();
      function g(S) {
        u = kr(u, S);
      }
      function h(S, T, k, D) {
        E.assertNode(S, o ? Fe : dt);
        const P = o ? o(S, T, k) : pt(n.factory.createAssignment(E.checkDefined(Ze(S, t, dt)), T), k);
        P.original = D, g(P);
      }
    }
    function Gne(e, t) {
      const n = u1(e);
      return I3(n) ? tje(n, t) : Fe(n) ? n.escapedText === t : !1;
    }
    function tje(e, t) {
      const n = W6(e);
      for (const i of n) if (Gne(i, t)) return !0;
      return !1;
    }
    function Hne(e) {
      const t = fF(e);
      if (t && _s(t) && !_S(t.expression)) return !0;
      const n = u1(e);
      return !!n && I3(n) && rje(n);
    }
    function rje(e) {
      return !!bt(W6(e), Hne);
    }
    function n2(e, t, n, i, a, o = !1, c) {
      let _;
      const u = [], d = [], g = {
        context: n,
        level: i,
        downlevelIteration: !!n.getCompilerOptions().downlevelIteration,
        hoistTempVariables: o,
        emitExpression: h,
        emitBindingOrAssignment: S,
        createArrayBindingOrAssignmentPattern: (T) => oje(n.factory, T),
        createObjectBindingOrAssignmentPattern: (T) => lje(n.factory, T),
        createArrayBindingOrAssignmentElement: (T) => _je(n.factory, T),
        visitor: t
      };
      if (ci(e)) {
        let T = mN(e);
        T && (Fe(T) && Gne(e, T.escapedText) || Hne(e)) && (T = wk(g, E.checkDefined(Ze(T, g.visitor, dt)), !1, T), e = n.factory.updateVariableDeclaration(e, e.name, void 0, void 0, T));
      }
      if (kw(g, e, a, e, c), _) {
        const T = n.factory.createTempVariable(void 0);
        if (o) {
          const k = n.factory.inlineExpressions(_);
          _ = void 0, S(T, k, void 0, void 0);
        } else {
          n.hoistVariableDeclaration(T);
          const k = ws(u);
          k.pendingExpressions = kr(k.pendingExpressions, n.factory.createAssignment(T, k.value)), Mn(k.pendingExpressions, _), k.value = T;
        }
      }
      for (const { pendingExpressions: T, name: k, value: D, location: P, original: N } of u) {
        const M = n.factory.createVariableDeclaration(k, void 0, void 0, T ? n.factory.inlineExpressions(kr(T, D)) : D);
        M.original = N, pt(M, P), d.push(M);
      }
      return d;
      function h(T) {
        _ = kr(_, T);
      }
      function S(T, k, D, P) {
        E.assertNode(T, pS), _ && (k = n.factory.inlineExpressions(kr(_, k)), _ = void 0), u.push({
          pendingExpressions: _,
          name: T,
          value: k,
          location: D,
          original: P
        });
      }
    }
    function kw(e, t, n, i, a) {
      const o = u1(t);
      if (!a) {
        const c = Ze(mN(t), e.visitor, dt);
        c ? n ? (n = aje(e, n, c, i), !Lm(c) && I3(o) && (n = wk(e, n, !0, i))) : n = c : n || (n = e.context.factory.createVoidZero());
      }
      sB(o) ? nje(e, t, o, n, i) : oB(o) ? ije(e, t, o, n, i) : e.emitBindingOrAssignment(o, n, i, t);
    }
    function nje(e, t, n, i, a) {
      const o = W6(n), c = o.length;
      if (c !== 1) {
        const d = !N3(t) || c !== 0;
        i = wk(e, i, d, a);
      }
      let _, u;
      for (let d = 0; d < c; d++) {
        const g = o[d];
        if (_F(g))
          d === c - 1 && (_ && (e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(_), i, a, n), _ = void 0), kw(e, g, e.context.getEmitHelperFactory().createRestHelper(i, o, u, n), g));
        else {
          const h = Kz(g);
          if (e.level >= 1 && !(g.transformFlags & 98304) && !(u1(g).transformFlags & 98304) && !_s(h)) _ = kr(_, Ze(g, e.visitor, FZ));
          else {
            _ && (e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(_), i, a, n), _ = void 0);
            const S = sje(e, i, h);
            _s(h) && (u = kr(u, S.argumentExpression)), kw(e, g, S, g);
          }
        }
      }
      _ && e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(_), i, a, n);
    }
    function ije(e, t, n, i, a) {
      const o = W6(n), c = o.length;
      if (e.level < 1 && e.downlevelIteration) i = wk(e, pt(e.context.getEmitHelperFactory().createReadHelper(i, c > 0 && _F(o[c - 1]) ? void 0 : c), a), !1, a);
      else if (c !== 1 && (e.level < 1 || c === 0) || hr(o, Al)) {
        const d = !N3(t) || c !== 0;
        i = wk(e, i, d, a);
      }
      let _, u;
      for (let d = 0; d < c; d++) {
        const g = o[d];
        if (e.level >= 1) if (g.transformFlags & 65536 || e.hasTransformedPriorElement && !cve(g)) {
          e.hasTransformedPriorElement = !0;
          const h = e.context.factory.createTempVariable(void 0);
          e.hoistTempVariables && e.context.hoistVariableDeclaration(h), u = kr(u, [h, g]), _ = kr(_, e.createArrayBindingOrAssignmentElement(h));
        } else _ = kr(_, g);
        else {
          if (Al(g)) continue;
          _F(g) ? d === c - 1 && kw(e, g, e.context.factory.createArraySliceCall(i, d), g) : kw(e, g, e.context.factory.createElementAccessExpression(i, d), g);
        }
      }
      if (_ && e.emitBindingOrAssignment(e.createArrayBindingOrAssignmentPattern(_), i, a, n), u) for (const [d, g] of u) kw(e, g, d, g);
    }
    function cve(e) {
      const t = u1(e);
      if (!t || Al(t)) return !0;
      const n = fF(e);
      if (n && !Tm(n)) return !1;
      const i = mN(e);
      return i && !Lm(i) ? !1 : I3(t) ? hr(W6(t), cve) : Fe(t);
    }
    function aje(e, t, n, i) {
      return t = wk(e, t, !0, i), e.context.factory.createConditionalExpression(e.context.factory.createTypeCheck(t, "undefined"), void 0, n, void 0, t);
    }
    function sje(e, t, n) {
      const { factory: i } = e.context;
      if (_s(n)) {
        const a = wk(e, E.checkDefined(Ze(n.expression, e.visitor, dt)), !1, n);
        return e.context.factory.createElementAccessExpression(t, a);
      } else if (ep(n) || E6(n)) {
        const a = i.cloneNode(n);
        return e.context.factory.createElementAccessExpression(t, a);
      } else {
        const a = e.context.factory.createIdentifier(On(n));
        return e.context.factory.createPropertyAccessExpression(t, a);
      }
    }
    function wk(e, t, n, i) {
      if (Fe(t) && n) return t;
      {
        const a = e.context.factory.createTempVariable(void 0);
        return e.hoistTempVariables ? (e.context.hoistVariableDeclaration(a), e.emitExpression(pt(e.context.factory.createAssignment(a, t), i))) : e.emitBindingOrAssignment(a, t, i, void 0), a;
      }
    }
    function oje(e, t) {
      return E.assertEachNode(t, K7), e.createArrayBindingPattern(t);
    }
    function cje(e, t) {
      return E.assertEachNode(t, F3), e.createArrayLiteralExpression(or(t, e.converters.convertToArrayAssignmentElement));
    }
    function lje(e, t) {
      return E.assertEachNode(t, Ns), e.createObjectBindingPattern(t);
    }
    function uje(e, t) {
      return E.assertEachNode(t, O3), e.createObjectLiteralExpression(or(t, e.converters.convertToObjectAssignmentElement));
    }
    function _je(e, t) {
      return e.createBindingElement(void 0, void 0, t);
    }
    function fje(e) {
      return e;
    }
    function pje(e, t, n = e.createThis()) {
      const i = e.createAssignment(t, n), a = e.createExpressionStatement(i), o = e.createBlock([a], !1), c = e.createClassStaticBlockDeclaration(o);
      return Au(c).classThis = t, c;
    }
    function Cw(e) {
      var t;
      if (!Bc(e) || e.body.statements.length !== 1) return !1;
      const n = e.body.statements[0];
      return zl(n) && Hl(n.expression, !0) && Fe(n.expression.left) && ((t = e.emitNode) == null ? void 0 : t.classThis) === n.expression.left && n.expression.right.kind === 110;
    }
    function oU(e) {
      var t;
      return !!((t = e.emitNode) != null && t.classThis) && _t(e.members, Cw);
    }
    function $ne(e, t, n, i) {
      if (oU(t)) return t;
      const a = pje(e, n, i);
      t.name && As(a.body.statements[0], t.name);
      const o = e.createNodeArray([a, ...t.members]);
      pt(o, t.members);
      const c = sl(t) ? e.updateClassDeclaration(t, t.modifiers, t.name, t.typeParameters, t.heritageClauses, o) : e.updateClassExpression(t, t.modifiers, t.name, t.typeParameters, t.heritageClauses, o);
      return Au(c).classThis = n, c;
    }
    function KF(e, t, n) {
      const i = rc(Ic(n));
      return (sl(i) || Xc(i)) && !i.name && Qn(i, 2048) ? e.createStringLiteral("default") : e.createStringLiteralFromNode(t);
    }
    function lve(e, t, n) {
      const { factory: i } = e;
      if (n !== void 0) return {
        assignedName: i.createStringLiteral(n),
        name: t
      };
      if (Tm(t) || Oi(t)) return {
        assignedName: i.createStringLiteralFromNode(t),
        name: t
      };
      if (Tm(t.expression) && !Fe(t.expression)) return {
        assignedName: i.createStringLiteralFromNode(t.expression),
        name: t
      };
      const a = i.getGeneratedNameForNode(t);
      e.hoistVariableDeclaration(a);
      const o = e.getEmitHelperFactory().createPropKeyHelper(t.expression), c = i.createAssignment(a, o);
      return {
        assignedName: a,
        name: i.updateComputedPropertyName(t, c)
      };
    }
    function dje(e, t, n = e.factory.createThis()) {
      const { factory: i } = e, a = e.getEmitHelperFactory().createSetFunctionNameHelper(n, t), o = i.createExpressionStatement(a), c = i.createBlock([o], !1), _ = i.createClassStaticBlockDeclaration(c);
      return Au(_).assignedName = t, _;
    }
    function Pk(e) {
      var t;
      if (!Bc(e) || e.body.statements.length !== 1) return !1;
      const n = e.body.statements[0];
      return zl(n) && YD(n.expression, "___setFunctionName") && n.expression.arguments.length >= 2 && n.expression.arguments[1] === ((t = e.emitNode) == null ? void 0 : t.assignedName);
    }
    function e9(e) {
      var t;
      return !!((t = e.emitNode) != null && t.assignedName) && _t(e.members, Pk);
    }
    function cU(e) {
      return !!e.name || e9(e);
    }
    function t9(e, t, n, i) {
      if (e9(t)) return t;
      const { factory: a } = e, o = dje(e, n, i);
      t.name && As(o.body.statements[0], t.name);
      const c = qs(t.members, Cw) + 1, _ = t.members.slice(0, c), u = t.members.slice(c), d = a.createNodeArray([
        ..._,
        o,
        ...u
      ]);
      return pt(d, t.members), t = sl(t) ? a.updateClassDeclaration(t, t.modifiers, t.name, t.typeParameters, t.heritageClauses, d) : a.updateClassExpression(t, t.modifiers, t.name, t.typeParameters, t.heritageClauses, d), Au(t).assignedName = n, t;
    }
    function K6(e, t, n, i) {
      if (i && Ts(n) && zB(n)) return t;
      const { factory: a } = e, o = Ic(t), c = Hc(o) ? ns(t9(e, o, n), Hc) : e.getEmitHelperFactory().createSetFunctionNameHelper(o, n);
      return a.restoreOuterExpressions(t, c);
    }
    function mje(e, t, n, i) {
      const { factory: a } = e, { assignedName: o, name: c } = lve(e, t.name, i), _ = K6(e, t.initializer, o, n);
      return a.updatePropertyAssignment(t, c, _);
    }
    function gje(e, t, n, i) {
      const { factory: a } = e, o = i !== void 0 ? a.createStringLiteral(i) : KF(a, t.name, t.objectAssignmentInitializer), c = K6(e, t.objectAssignmentInitializer, o, n);
      return a.updateShorthandPropertyAssignment(t, t.name, c);
    }
    function hje(e, t, n, i) {
      const { factory: a } = e, o = i !== void 0 ? a.createStringLiteral(i) : KF(a, t.name, t.initializer), c = K6(e, t.initializer, o, n);
      return a.updateVariableDeclaration(t, t.name, t.exclamationToken, t.type, c);
    }
    function yje(e, t, n, i) {
      const { factory: a } = e, o = i !== void 0 ? a.createStringLiteral(i) : KF(a, t.name, t.initializer), c = K6(e, t.initializer, o, n);
      return a.updateParameterDeclaration(t, t.modifiers, t.dotDotDotToken, t.name, t.questionToken, t.type, c);
    }
    function vje(e, t, n, i) {
      const { factory: a } = e, o = i !== void 0 ? a.createStringLiteral(i) : KF(a, t.name, t.initializer), c = K6(e, t.initializer, o, n);
      return a.updateBindingElement(t, t.dotDotDotToken, t.propertyName, t.name, c);
    }
    function bje(e, t, n, i) {
      const { factory: a } = e, { assignedName: o, name: c } = lve(e, t.name, i), _ = K6(e, t.initializer, o, n);
      return a.updatePropertyDeclaration(t, t.modifiers, c, t.questionToken ?? t.exclamationToken, t.type, _);
    }
    function Sje(e, t, n, i) {
      const { factory: a } = e, o = i !== void 0 ? a.createStringLiteral(i) : KF(a, t.left, t.right), c = K6(e, t.right, o, n);
      return a.updateBinaryExpression(t, t.left, t.operatorToken, c);
    }
    function Tje(e, t, n, i) {
      const { factory: a } = e, o = i !== void 0 ? a.createStringLiteral(i) : a.createStringLiteral(t.isExportEquals ? "" : "default"), c = K6(e, t.expression, o, n);
      return a.updateExportAssignment(t, t.modifiers, c);
    }
    function Cf(e, t, n, i) {
      switch (t.kind) {
        case 304:
          return mje(e, t, n, i);
        case 305:
          return gje(e, t, n, i);
        case 261:
          return hje(e, t, n, i);
        case 170:
          return yje(e, t, n, i);
        case 209:
          return vje(e, t, n, i);
        case 173:
          return bje(e, t, n, i);
        case 227:
          return Sje(e, t, n, i);
        case 278:
          return Tje(e, t, n, i);
      }
    }
    var Xne = /* @__PURE__ */ ((e) => (e[e.LiftRestriction = 0] = "LiftRestriction", e[e.All = 1] = "All", e))(Xne || {});
    function lU(e, t, n, i, a, o) {
      const c = Ze(t.tag, n, dt);
      E.assert(c);
      const _ = [void 0], u = [], d = [], g = t.template;
      if (o === 0 && !uJ(g)) return Tr(t, n, e);
      const { factory: h } = e;
      if (IS(g))
        u.push(Qne(h, g)), d.push(Yne(h, g, i));
      else {
        u.push(Qne(h, g.head)), d.push(Yne(h, g.head, i));
        for (const T of g.templateSpans)
          u.push(Qne(h, T.literal)), d.push(Yne(h, T.literal, i)), _.push(E.checkDefined(Ze(T.expression, n, dt)));
      }
      const S = e.getEmitHelperFactory().createTemplateObjectHelper(h.createArrayLiteralExpression(u), h.createArrayLiteralExpression(d));
      if (Sl(i)) {
        const T = h.createUniqueName("templateObject");
        a(T), _[0] = h.createLogicalOr(T, h.createAssignment(T, S));
      } else _[0] = S;
      return h.createCallExpression(c, void 0, _);
    }
    function Qne(e, t) {
      return t.templateFlags & 26656 ? e.createVoidZero() : e.createStringLiteral(t.text);
    }
    function Yne(e, t, n) {
      let i = t.rawText;
      if (i === void 0) {
        E.assertIsDefined(n, "Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."), i = Pb(n, t);
        const a = t.kind === 15 || t.kind === 18;
        i = i.substring(1, i.length - (a ? 1 : 2));
      }
      return i = i.replace(/\r\n?/g, `
`), pt(e.createStringLiteral(i), t);
    }
    var xje = !1;
    function Zne(e) {
      const { factory: t, getEmitHelperFactory: n, startLexicalEnvironment: i, resumeLexicalEnvironment: a, endLexicalEnvironment: o, hoistVariableDeclaration: c } = e, _ = e.getEmitResolver(), u = e.getCompilerOptions(), d = Ps(u), g = u_(u), h = !!u.experimentalDecorators, S = u.emitDecoratorMetadata ? eie(e) : void 0, T = e.onEmitNode, k = e.onSubstituteNode;
      e.onEmitNode = fa, e.onSubstituteNode = $a, e.enableSubstitution(212), e.enableSubstitution(213);
      let D, P, N, M, R, G = 0, L;
      return z;
      function z(I) {
        return I.kind === 309 ? H(I) : U(I);
      }
      function H(I) {
        return t.createBundle(I.sourceFiles.map(U));
      }
      function U(I) {
        if (I.isDeclarationFile) return I;
        D = I;
        const je = pe(I, ke);
        return th(je, e.readEmitHelpers()), D = void 0, je;
      }
      function pe(I, je) {
        const lt = M, St = R;
        ie(I);
        const jr = je(I);
        return M !== lt && (R = St), M = lt, jr;
      }
      function ie(I) {
        switch (I.kind) {
          case 308:
          case 270:
          case 269:
          case 242:
            M = I, R = void 0;
            break;
          case 264:
          case 263:
            if (Qn(I, 128)) break;
            I.name ? j(I) : E.assert(I.kind === 264 || Qn(I, 2048));
            break;
        }
      }
      function W(I) {
        return pe(I, Q);
      }
      function Q(I) {
        return I.transformFlags & 1 ? K(I) : I;
      }
      function se(I) {
        return pe(I, he);
      }
      function he(I) {
        switch (I.kind) {
          case 273:
          case 272:
          case 278:
          case 279:
            return de(I);
          default:
            return Q(I);
        }
      }
      function fe(I) {
        const je = Ca(I);
        if (je === I || Xo(I)) return !1;
        if (!je || je.kind !== I.kind) return !0;
        switch (I.kind) {
          case 273:
            if (E.assertNode(je, ic), I.importClause !== je.importClause || I.attributes !== je.attributes) return !0;
            break;
          case 272:
            if (E.assertNode(je, bl), I.name !== je.name || I.isTypeOnly !== je.isTypeOnly || I.moduleReference !== je.moduleReference && (S_(I.moduleReference) || S_(je.moduleReference))) return !0;
            break;
          case 279:
            if (E.assertNode(je, tl), I.exportClause !== je.exportClause || I.attributes !== je.attributes) return !0;
            break;
        }
        return !1;
      }
      function de(I) {
        if (fe(I))
          return I.transformFlags & 1 ? Tr(I, W, e) : I;
        switch (I.kind) {
          case 273:
            return vr(I);
          case 272:
            return Qt(I);
          case 278:
            return kt(I);
          case 279:
            return wt(I);
          default:
            E.fail("Unhandled ellided statement");
        }
      }
      function $(I) {
        return pe(I, Se);
      }
      function Se(I) {
        if (!(I.kind === 279 || I.kind === 273 || I.kind === 274 || I.kind === 272 && I.moduleReference.kind === 284))
          return I.transformFlags & 1 || Qn(I, 32) ? K(I) : I;
      }
      function Be(I) {
        return (je) => pe(je, (lt) => ce(lt, I));
      }
      function ce(I, je) {
        switch (I.kind) {
          case 177:
            return vt(I);
          case 173:
            return Me(I, je);
          case 178:
            return Ea(I, je);
          case 179:
            return Da(I, je);
          case 175:
            return zn(I, je);
          case 176:
            return Tr(I, W, e);
          case 241:
            return I;
          case 182:
            return;
          default:
            return E.failBadSyntaxKind(I);
        }
      }
      function oe(I) {
        return (je) => pe(je, (lt) => ge(lt, I));
      }
      function ge(I, je) {
        switch (I.kind) {
          case 304:
          case 305:
          case 306:
            return W(I);
          case 178:
            return Ea(I, je);
          case 179:
            return Da(I, je);
          case 175:
            return zn(I, je);
          default:
            return E.failBadSyntaxKind(I);
        }
      }
      function Ae(I) {
        return pl(I) ? void 0 : W(I);
      }
      function Ne(I) {
        return hs(I) ? void 0 : W(I);
      }
      function ot(I) {
        if (!pl(I) && !(Ux(I.kind) & 28895) && !(P && I.kind === 95))
          return I;
      }
      function K(I) {
        if (Ei(I) && Qn(I, 128)) return t.createNotEmittedStatement(I);
        switch (I.kind) {
          case 95:
          case 90:
            return P ? void 0 : I;
          case 125:
          case 123:
          case 124:
          case 128:
          case 164:
          case 87:
          case 138:
          case 148:
          case 103:
          case 147:
          case 189:
          case 190:
          case 191:
          case 192:
          case 188:
          case 183:
          case 169:
          case 133:
          case 159:
          case 136:
          case 154:
          case 150:
          case 146:
          case 116:
          case 155:
          case 186:
          case 185:
          case 187:
          case 184:
          case 193:
          case 194:
          case 195:
          case 197:
          case 198:
          case 199:
          case 200:
          case 201:
          case 202:
          case 182:
            return;
          case 266:
            return t.createNotEmittedStatement(I);
          case 271:
            return;
          case 265:
            return t.createNotEmittedStatement(I);
          case 264:
            return Xe(I);
          case 232:
            return Ft(I);
          case 299:
            return Zr(I);
          case 234:
            return ni(I);
          case 211:
            return ae(I);
          case 177:
          case 173:
          case 175:
          case 178:
          case 179:
          case 176:
            return E.fail("Class and object literal elements must be visited with their respective visitors");
          case 263:
            return Lr(I);
          case 219:
            return ha(I);
          case 220:
            return Ye(I);
          case 170:
            return Pt(I);
          case 218:
            return we(I);
          case 217:
          case 235:
            return Ge(I);
          case 239:
            return it(I);
          case 214:
            return ut(I);
          case 215:
            return Qe(I);
          case 216:
            return xt(I);
          case 236:
            return nt(I);
          case 267:
            return rr(I);
          case 244:
            return ne(I);
          case 261:
            return re(I);
          case 268:
            return Ke(I);
          case 272:
            return Qt(I);
          case 286:
            return Dt(I);
          case 287:
            return Ve(I);
          default:
            return Tr(I, W, e);
        }
      }
      function ke(I) {
        const je = OD(u) && !(Sl(I) && g >= 5) && !Tp(I);
        return t.updateSourceFile(I, QW(I.statements, se, e, 0, je));
      }
      function ae(I) {
        return t.updateObjectLiteralExpression(I, Fr(I.properties, oe(I), zg));
      }
      function Ce(I) {
        let je = 0;
        _t(iU(I, !0, !0)) && (je |= 1);
        const lt = Jd(I);
        return lt && Ic(lt.expression).kind !== 106 && (je |= 64), w0(h, I) && (je |= 2), aD(h, I) && (je |= 4), ct(I) ? je |= 8 : os(I) ? je |= 32 : Mi(I) && (je |= 16), je;
      }
      function ue(I) {
        return !!(I.transformFlags & 8192);
      }
      function Ie(I) {
        return tp(I) || _t(I.typeParameters) || _t(I.heritageClauses, ue) || _t(I.members, ue);
      }
      function Xe(I) {
        const je = Ce(I), lt = d < 2 && !!(je & 7);
        if (!Ie(I) && !w0(h, I) && !ct(I)) return t.updateClassDeclaration(I, Fr(I.modifiers, ot, hs), I.name, void 0, Fr(I.heritageClauses, W, kf), Fr(I.members, Be(I), al));
        lt && e.startLexicalEnvironment();
        const St = lt || je & 8;
        let jr = St ? Fr(I.modifiers, Ne, ec) : Fr(I.modifiers, W, ec);
        je & 2 && (jr = Xt(jr, I));
        const Bn = St && !I.name || je & 4 || je & 1 ? I.name ?? t.getGeneratedNameForNode(I) : I.name, tn = t.updateClassDeclaration(I, jr, Bn, void 0, Fr(I.heritageClauses, W, kf), Ut(I));
        let ai = Bs(I);
        je & 1 && (ai |= 64), ln(tn, ai);
        let ei;
        if (lt) {
          const La = [tn], ds = PJ(gs(D.text, I.members.end), 20), cl = t.getInternalName(I), vc = t.createPartiallyEmittedExpression(cl);
          k6(vc, ds.end), ln(vc, 3072);
          const ml = t.createReturnStatement(vc);
          zD(ml, ds.pos), ln(ml, 3840), La.push(ml), qg(La, e.endLexicalEnvironment());
          const gl = t.createImmediatelyInvokedArrowFunction(La);
          eN(gl, 1);
          const Os = t.createVariableDeclaration(t.getLocalName(I, !1, !1), void 0, void 0, gl);
          Fn(Os, I);
          const Ao = t.createVariableStatement(void 0, t.createVariableDeclarationList([Os], 1));
          Fn(Ao, I), fl(Ao, I), As(Ao, Vh(I)), Xu(Ao), ei = Ao;
        } else ei = tn;
        if (St) {
          if (je & 8) return [ei, cs(I)];
          if (je & 32) return [ei, t.createExportDefault(t.getLocalName(I, !1, !0))];
          if (je & 16) return [ei, t.createExternalModuleExport(t.getDeclarationName(I, !1, !0))];
        }
        return ei;
      }
      function Ft(I) {
        let je = Fr(I.modifiers, Ne, ec);
        return w0(h, I) && (je = Xt(je, I)), t.updateClassExpression(I, je, I.name, void 0, Fr(I.heritageClauses, W, kf), Ut(I));
      }
      function Ut(I) {
        const je = Fr(I.members, Be(I), al);
        let lt;
        const St = Xg(I), jr = St && dn(St.parameters, (Bn) => df(Bn, St));
        if (jr) for (const Bn of jr) {
          if (!Fe(Bn.name)) continue;
          const tn = t.createPropertyDeclaration(void 0, Bn.name, void 0, void 0, void 0);
          Fn(tn, Bn), lt = kr(lt, tn);
        }
        return lt ? (lt = Mn(lt, je), pt(t.createNodeArray(lt), I.members)) : je;
      }
      function Xt(I, je) {
        const lt = Ct(je, je);
        if (_t(lt)) {
          const St = [];
          Mn(St, oj(I, gN)), Mn(St, dn(I, pl)), Mn(St, lt), Mn(St, dn(EQ(I, gN), hs)), I = pt(t.createNodeArray(St), I);
        }
        return I;
      }
      function Ar(I, je, lt) {
        if (Zn(lt) && JB(h, je, lt)) {
          const St = Ct(je, lt);
          if (_t(St)) {
            const jr = [];
            Mn(jr, dn(I, pl)), Mn(jr, St), Mn(jr, dn(I, hs)), I = pt(t.createNodeArray(jr), I);
          }
        }
        return I;
      }
      function Ct(I, je) {
        if (h)
          return xje ? zr(I, je) : Kt(I, je);
      }
      function Kt(I, je) {
        if (S) {
          let lt;
          if (_i(I)) {
            const St = n().createMetadataHelper("design:type", S.serializeTypeOfNode({
              currentLexicalScope: M,
              currentNameScope: je
            }, I, je));
            lt = kr(lt, t.createDecorator(St));
          }
          if (Nt(I)) {
            const St = n().createMetadataHelper("design:paramtypes", S.serializeParameterTypesOfNode({
              currentLexicalScope: M,
              currentNameScope: je
            }, I, je));
            lt = kr(lt, t.createDecorator(St));
          }
          if (Gr(I)) {
            const St = n().createMetadataHelper("design:returntype", S.serializeReturnTypeOfNode({
              currentLexicalScope: M,
              currentNameScope: je
            }, I));
            lt = kr(lt, t.createDecorator(St));
          }
          return lt;
        }
      }
      function zr(I, je) {
        if (S) {
          let lt;
          if (_i(I)) {
            const St = t.createPropertyAssignment("type", t.createArrowFunction(void 0, void 0, [], void 0, t.createToken(39), S.serializeTypeOfNode({
              currentLexicalScope: M,
              currentNameScope: je
            }, I, je)));
            lt = kr(lt, St);
          }
          if (Nt(I)) {
            const St = t.createPropertyAssignment("paramTypes", t.createArrowFunction(void 0, void 0, [], void 0, t.createToken(39), S.serializeParameterTypesOfNode({
              currentLexicalScope: M,
              currentNameScope: je
            }, I, je)));
            lt = kr(lt, St);
          }
          if (Gr(I)) {
            const St = t.createPropertyAssignment("returnType", t.createArrowFunction(void 0, void 0, [], void 0, t.createToken(39), S.serializeReturnTypeOfNode({
              currentLexicalScope: M,
              currentNameScope: je
            }, I)));
            lt = kr(lt, St);
          }
          if (lt) {
            const St = n().createMetadataHelper("design:typeinfo", t.createObjectLiteralExpression(lt, !0));
            return [t.createDecorator(St)];
          }
        }
      }
      function _i(I) {
        const je = I.kind;
        return je === 175 || je === 178 || je === 179 || je === 173;
      }
      function Gr(I) {
        return I.kind === 175;
      }
      function Nt(I) {
        switch (I.kind) {
          case 264:
          case 232:
            return Xg(I) !== void 0;
          case 175:
          case 178:
          case 179:
            return !0;
        }
        return !1;
      }
      function Li(I, je) {
        const lt = I.name;
        return Oi(lt) ? t.createIdentifier("") : _s(lt) ? je && !Lm(lt.expression) ? t.getGeneratedNameForNode(lt) : lt.expression : Fe(lt) ? t.createStringLiteral(On(lt)) : t.cloneNode(lt);
      }
      function ri(I) {
        const je = I.name;
        if (h && _s(je) && tp(I)) {
          const lt = Ze(je.expression, W, dt);
          if (E.assert(lt), !Lm(fd(lt))) {
            const St = t.getGeneratedNameForNode(je);
            return c(St), t.updateComputedPropertyName(je, t.createAssignment(St, lt));
          }
        }
        return E.checkDefined(Ze(je, W, il));
      }
      function Zr(I) {
        if (I.token !== 119)
          return Tr(I, W, e);
      }
      function ni(I) {
        return t.updateExpressionWithTypeArguments(I, E.checkDefined(Ze(I.expression, W, j_)), void 0);
      }
      function ra(I) {
        return !Nc(I.body);
      }
      function Me(I, je) {
        const lt = I.flags & 33554432 || Qn(I, 64);
        if (lt && !(h && tp(I))) return;
        let St = Zn(je) ? lt ? Fr(I.modifiers, Ne, ec) : Fr(I.modifiers, W, ec) : Fr(I.modifiers, Ae, ec);
        return St = Ar(St, I, je), lt ? t.updatePropertyDeclaration(I, zi(St, t.createModifiersFromModifierFlags(128)), E.checkDefined(Ze(I.name, W, il)), void 0, void 0, void 0) : t.updatePropertyDeclaration(I, St, ri(I), void 0, void 0, Ze(I.initializer, W, dt));
      }
      function vt(I) {
        if (ra(I))
          return t.updateConstructorDeclaration(I, void 0, Cc(I.parameters, W, e), Ur(I.body, I));
      }
      function tr(I, je, lt, St, jr, Bn) {
        const tn = St[jr], ai = je[tn];
        if (Mn(I, Fr(je, W, Ei, lt, tn - lt)), jS(ai)) {
          const ei = [];
          tr(ei, ai.tryBlock.statements, 0, St, jr + 1, Bn), pt(t.createNodeArray(ei), ai.tryBlock.statements), I.push(t.updateTryStatement(ai, t.updateBlock(ai.tryBlock, ei), Ze(ai.catchClause, W, Zb), Ze(ai.finallyBlock, W, Wa)));
        } else
          Mn(I, Fr(je, W, Ei, tn, 1)), Mn(I, Bn);
        Mn(I, Fr(je, W, Ei, tn + 1));
      }
      function Ur(I, je) {
        const lt = je && dn(je.parameters, (ei) => df(ei, je));
        if (!_t(lt)) return ap(I, W, e);
        let St = [];
        a();
        const jr = t.copyPrologue(I.statements, St, !1, W), Bn = QF(I.statements, jr), tn = Rn(lt, $n);
        Bn.length ? tr(St, I.statements, jr, Bn, 0, tn) : (Mn(St, tn), Mn(St, Fr(I.statements, W, Ei, jr))), St = t.mergeLexicalEnvironment(St, o());
        const ai = t.createBlock(pt(t.createNodeArray(St), I.statements), !0);
        return pt(ai, I), Fn(ai, I), ai;
      }
      function $n(I) {
        const je = I.name;
        if (!Fe(je)) return;
        const lt = eo(pt(t.cloneNode(je), je), je.parent);
        ln(lt, 3168);
        const St = eo(pt(t.cloneNode(je), je), je.parent);
        return ln(St, 3072), Xu(KA(pt(Fn(t.createExpressionStatement(t.createAssignment(pt(t.createPropertyAccessExpression(t.createThis(), lt), I.name), St)), I), hv(I, -1))));
      }
      function zn(I, je) {
        if (!(I.transformFlags & 1)) return I;
        if (!ra(I)) return;
        let lt = Zn(je) ? Fr(I.modifiers, W, ec) : Fr(I.modifiers, Ae, ec);
        return lt = Ar(lt, I, je), t.updateMethodDeclaration(I, lt, I.asteriskToken, ri(I), void 0, void 0, Cc(I.parameters, W, e), void 0, ap(I.body, W, e));
      }
      function na(I) {
        return !(Nc(I.body) && Qn(I, 64));
      }
      function Ea(I, je) {
        if (!(I.transformFlags & 1)) return I;
        if (!na(I)) return;
        let lt = Zn(je) ? Fr(I.modifiers, W, ec) : Fr(I.modifiers, Ae, ec);
        return lt = Ar(lt, I, je), t.updateGetAccessorDeclaration(I, lt, ri(I), Cc(I.parameters, W, e), void 0, ap(I.body, W, e) || t.createBlock([]));
      }
      function Da(I, je) {
        if (!(I.transformFlags & 1)) return I;
        if (!na(I)) return;
        let lt = Zn(je) ? Fr(I.modifiers, W, ec) : Fr(I.modifiers, Ae, ec);
        return lt = Ar(lt, I, je), t.updateSetAccessorDeclaration(I, lt, ri(I), Cc(I.parameters, W, e), ap(I.body, W, e) || t.createBlock([]));
      }
      function Lr(I) {
        if (!ra(I)) return t.createNotEmittedStatement(I);
        const je = t.updateFunctionDeclaration(I, Fr(I.modifiers, ot, hs), I.asteriskToken, I.name, void 0, Cc(I.parameters, W, e), void 0, ap(I.body, W, e) || t.createBlock([]));
        if (ct(I)) {
          const lt = [je];
          return xa(lt, I), lt;
        }
        return je;
      }
      function ha(I) {
        return ra(I) ? t.updateFunctionExpression(I, Fr(I.modifiers, ot, hs), I.asteriskToken, I.name, void 0, Cc(I.parameters, W, e), void 0, ap(I.body, W, e) || t.createBlock([])) : t.createOmittedExpression();
      }
      function Ye(I) {
        return t.updateArrowFunction(I, Fr(I.modifiers, ot, hs), void 0, Cc(I.parameters, W, e), void 0, I.equalsGreaterThanToken, ap(I.body, W, e));
      }
      function Pt(I) {
        if (Yy(I)) return;
        const je = t.updateParameterDeclaration(I, Fr(I.modifiers, (lt) => pl(lt) ? W(lt) : void 0, ec), I.dotDotDotToken, E.checkDefined(Ze(I.name, W, pS)), void 0, void 0, Ze(I.initializer, W, dt));
        return je !== I && (fl(je, I), pt(je, Em(I)), As(je, Em(I)), ln(je.name, 64)), je;
      }
      function ne(I) {
        if (ct(I)) {
          const je = wD(I.declarationList);
          return je.length === 0 ? void 0 : pt(t.createExpressionStatement(t.inlineExpressions(or(je, tt))), I);
        } else return Tr(I, W, e);
      }
      function tt(I) {
        const je = I.name;
        return Ja(je) ? $S(I, W, e, 0, !1, To) : pt(t.createAssignment(ia(je), E.checkDefined(Ze(I.initializer, W, dt))), I);
      }
      function re(I) {
        const je = t.updateVariableDeclaration(I, E.checkDefined(Ze(I.name, W, pS)), void 0, void 0, Ze(I.initializer, W, dt));
        return I.type && wte(je.name, I.type), je;
      }
      function we(I) {
        const je = Ic(I.expression, -55);
        if (Db(je) || N6(je)) {
          const lt = Ze(I.expression, W, dt);
          return E.assert(lt), t.createPartiallyEmittedExpression(lt, I);
        }
        return Tr(I, W, e);
      }
      function Ge(I) {
        const je = Ze(I.expression, W, dt);
        return E.assert(je), t.createPartiallyEmittedExpression(je, I);
      }
      function nt(I) {
        const je = Ze(I.expression, W, j_);
        return E.assert(je), t.createPartiallyEmittedExpression(je, I);
      }
      function it(I) {
        const je = Ze(I.expression, W, dt);
        return E.assert(je), t.createPartiallyEmittedExpression(je, I);
      }
      function ut(I) {
        return t.updateCallExpression(I, E.checkDefined(Ze(I.expression, W, dt)), void 0, Fr(I.arguments, W, dt));
      }
      function Qe(I) {
        return t.updateNewExpression(I, E.checkDefined(Ze(I.expression, W, dt)), void 0, Fr(I.arguments, W, dt));
      }
      function xt(I) {
        return t.updateTaggedTemplateExpression(I, E.checkDefined(Ze(I.tag, W, dt)), void 0, E.checkDefined(Ze(I.template, W, Cx)));
      }
      function Dt(I) {
        return t.updateJsxSelfClosingElement(I, E.checkDefined(Ze(I.tagName, W, Y4)), void 0, E.checkDefined(Ze(I.attributes, W, Yb)));
      }
      function Ve(I) {
        return t.updateJsxOpeningElement(I, E.checkDefined(Ze(I.tagName, W, Y4)), void 0, E.checkDefined(Ze(I.attributes, W, Yb)));
      }
      function fr(I) {
        return !cv(I) || e1(u);
      }
      function rr(I) {
        if (!fr(I)) return t.createNotEmittedStatement(I);
        const je = [];
        let lt = 4;
        const St = ye(je, I);
        St && (g !== 4 || M !== D) && (lt |= 1024);
        const jr = ja(I), Bn = _o(I), tn = ct(I) ? t.getExternalModuleOrNamespaceExportName(N, I, !1, !0) : t.getDeclarationName(I, !1, !0);
        let ai = t.createLogicalOr(tn, t.createAssignment(tn, t.createObjectLiteralExpression()));
        if (ct(I)) {
          const La = t.getLocalName(I, !1, !0);
          ai = t.createAssignment(La, ai);
        }
        const ei = t.createExpressionStatement(t.createCallExpression(t.createFunctionExpression(void 0, void 0, void 0, void 0, [t.createParameterDeclaration(void 0, void 0, jr)], void 0, Oe(I, Bn)), void 0, [ai]));
        return Fn(ei, I), St && (Sv(ei, void 0), ik(ei, void 0)), pt(ei, I), wm(ei, lt), je.push(ei), je;
      }
      function Oe(I, je) {
        const lt = N;
        N = je;
        const St = [];
        i();
        const jr = or(I.members, rt);
        return qg(St, o()), Mn(St, jr), N = lt, t.createBlock(pt(t.createNodeArray(St), I.members), !0);
      }
      function rt(I) {
        const je = Li(I, !1), lt = _.getEnumMemberValue(I), St = ee(I, lt?.value), jr = t.createAssignment(t.createElementAccessExpression(N, je), St), Bn = typeof lt?.value == "string" || lt?.isSyntacticallyString ? jr : t.createAssignment(t.createElementAccessExpression(N, jr), je);
        return pt(t.createExpressionStatement(pt(Bn, I)), I);
      }
      function ee(I, je) {
        return je !== void 0 ? typeof je == "string" ? t.createStringLiteral(je) : je < 0 ? t.createPrefixUnaryExpression(41, t.createNumericLiteral(-je)) : t.createNumericLiteral(je) : (Yc(), I.initializer ? E.checkDefined(Ze(I.initializer, W, dt)) : t.createVoidZero());
      }
      function q(I) {
        const je = Ca(I, Qc);
        return je ? HF(je, e1(u)) : !0;
      }
      function j(I) {
        R || (R = /* @__PURE__ */ new Map());
        const je = $e(I);
        R.has(je) || R.set(je, I);
      }
      function Re(I) {
        if (R) {
          const je = $e(I);
          return R.get(je) === I;
        }
        return !0;
      }
      function $e(I) {
        return E.assertNode(I.name, Fe), I.name.escapedText;
      }
      function ye(I, je) {
        const lt = t.createVariableDeclaration(t.getLocalName(je, !1, !0)), St = M.kind === 308 ? 0 : 1, jr = t.createVariableStatement(Fr(je.modifiers, ot, hs), t.createVariableDeclarationList([lt], St));
        return Fn(lt, je), Sv(lt, void 0), ik(lt, void 0), Fn(jr, je), j(je), Re(je) ? (je.kind === 267 ? As(jr.declarationList, je) : As(jr, je), fl(jr, je), wm(jr, 2048), I.push(jr), !0) : !1;
      }
      function Ke(I) {
        if (!q(I)) return t.createNotEmittedStatement(I);
        E.assertNode(I.name, Fe, "A TypeScript namespace should have an Identifier name."), Ou();
        const je = [];
        let lt = 4;
        const St = ye(je, I);
        St && (g !== 4 || M !== D) && (lt |= 1024);
        const jr = ja(I), Bn = _o(I), tn = ct(I) ? t.getExternalModuleOrNamespaceExportName(N, I, !1, !0) : t.getDeclarationName(I, !1, !0);
        let ai = t.createLogicalOr(tn, t.createAssignment(tn, t.createObjectLiteralExpression()));
        if (ct(I)) {
          const La = t.getLocalName(I, !1, !0);
          ai = t.createAssignment(La, ai);
        }
        const ei = t.createExpressionStatement(t.createCallExpression(t.createFunctionExpression(void 0, void 0, void 0, void 0, [t.createParameterDeclaration(void 0, void 0, jr)], void 0, pr(I, Bn)), void 0, [ai]));
        return Fn(ei, I), St && (Sv(ei, void 0), ik(ei, void 0)), pt(ei, I), wm(ei, lt), je.push(ei), je;
      }
      function pr(I, je) {
        const lt = N, St = P, jr = R;
        N = je, P = I, R = void 0;
        const Bn = [];
        i();
        let tn, ai;
        if (I.body) if (I.body.kind === 269)
          pe(I.body, (La) => Mn(Bn, Fr(La.statements, $, Ei))), tn = I.body.statements, ai = I.body;
        else {
          const La = Ke(I.body);
          La && (da(La) ? Mn(Bn, La) : Bn.push(La));
          const ds = Pr(I).body;
          tn = hv(ds.statements, -1);
        }
        qg(Bn, o()), N = lt, P = St, R = jr;
        const ei = t.createBlock(pt(t.createNodeArray(Bn), tn), !0);
        return pt(ei, ai), (!I.body || I.body.kind !== 269) && ln(ei, Bs(ei) | 3072), ei;
      }
      function Pr(I) {
        if (I.body.kind === 268) return Pr(I.body) || I.body;
      }
      function vr(I) {
        if (!I.importClause) return I;
        if (I.importClause.isTypeOnly) return;
        const je = Ze(I.importClause, fn, hd);
        return je ? t.updateImportDeclaration(I, void 0, je, I.moduleSpecifier, I.attributes) : void 0;
      }
      function fn(I) {
        E.assert(I.phaseModifier !== 156);
        const je = Qo(I) ? I.name : void 0, lt = Ze(I.namedBindings, Cr, _B);
        return je || lt ? t.updateImportClause(I, I.phaseModifier, je, lt) : void 0;
      }
      function Cr(I) {
        if (I.kind === 275) return Qo(I) ? I : void 0;
        {
          const je = u.verbatimModuleSyntax, lt = Fr(I.elements, et, p_);
          return je || _t(lt) ? t.updateNamedImports(I, lt) : void 0;
        }
      }
      function et(I) {
        return !I.isTypeOnly && Qo(I) ? I : void 0;
      }
      function kt(I) {
        return u.verbatimModuleSyntax || _.isValueAliasDeclaration(I) ? Tr(I, W, e) : void 0;
      }
      function wt(I) {
        if (I.isTypeOnly) return;
        if (!I.exportClause || gg(I.exportClause)) return t.updateExportDeclaration(I, I.modifiers, I.isTypeOnly, I.exportClause, I.moduleSpecifier, I.attributes);
        const je = !!u.verbatimModuleSyntax, lt = Ze(I.exportClause, (St) => Yt(St, je), eB);
        return lt ? t.updateExportDeclaration(I, void 0, I.isTypeOnly, lt, I.moduleSpecifier, I.attributes) : void 0;
      }
      function qt(I, je) {
        const lt = Fr(I.elements, Jt, $u);
        return je || _t(lt) ? t.updateNamedExports(I, lt) : void 0;
      }
      function Ir(I) {
        return t.updateNamespaceExport(I, E.checkDefined(Ze(I.name, W, Fe)));
      }
      function Yt(I, je) {
        return gg(I) ? Ir(I) : qt(I, je);
      }
      function Jt(I) {
        return !I.isTypeOnly && (u.verbatimModuleSyntax || _.isValueAliasDeclaration(I)) ? I : void 0;
      }
      function $t(I) {
        return Qo(I) || !Sl(D) && _.isTopLevelValueImportEqualsWithEntityName(I);
      }
      function Qt(I) {
        if (I.isTypeOnly) return;
        if (uv(I))
          return Qo(I) ? Tr(I, W, e) : void 0;
        if (!$t(I)) return;
        const je = _N(t, I.moduleReference);
        return ln(je, 7168), Mi(I) || !ct(I) ? Fn(pt(t.createVariableStatement(Fr(I.modifiers, ot, hs), t.createVariableDeclarationList([Fn(t.createVariableDeclaration(I.name, void 0, void 0, je), I)])), I), I) : Fn(oo(I.name, je, I), I);
      }
      function ct(I) {
        return P !== void 0 && Qn(I, 32);
      }
      function wn(I) {
        return P === void 0 && Qn(I, 32);
      }
      function Mi(I) {
        return wn(I) && !Qn(I, 2048);
      }
      function os(I) {
        return wn(I) && Qn(I, 2048);
      }
      function cs(I) {
        const je = t.createAssignment(t.getExternalModuleOrNamespaceExportName(N, I, !1, !0), t.getLocalName(I));
        As(je, bf(I.name ? I.name.pos : I.pos, I.end));
        const lt = t.createExpressionStatement(je);
        return As(lt, bf(-1, I.end)), lt;
      }
      function xa(I, je) {
        I.push(cs(je));
      }
      function oo(I, je, lt) {
        return pt(t.createExpressionStatement(t.createAssignment(t.getNamespaceMemberName(N, I, !1, !0), je)), lt);
      }
      function To(I, je, lt) {
        return pt(t.createAssignment(ia(I), je), lt);
      }
      function ia(I) {
        return t.getNamespaceMemberName(N, I, !1, !0);
      }
      function ja(I) {
        const je = t.getGeneratedNameForNode(I);
        return As(je, I.name), je;
      }
      function _o(I) {
        return t.getGeneratedNameForNode(I);
      }
      function Yc() {
        (G & 8) === 0 && (G |= 8, e.enableSubstitution(80));
      }
      function Ou() {
        (G & 2) === 0 && (G |= 2, e.enableSubstitution(80), e.enableSubstitution(305), e.enableEmitNotification(268));
      }
      function _c(I) {
        return rc(I).kind === 268;
      }
      function xl(I) {
        return rc(I).kind === 267;
      }
      function fa(I, je, lt) {
        const St = L, jr = D;
        Pi(je) && (D = je), G & 2 && _c(je) && (L |= 2), G & 8 && xl(je) && (L |= 8), T(I, je, lt), L = St, D = jr;
      }
      function $a(I, je) {
        return je = k(I, je), I === 1 ? Is(je) : Nu(je) ? Yi(je) : je;
      }
      function Yi(I) {
        if (G & 2) {
          const je = I.name, lt = Mo(je);
          if (lt) {
            if (I.objectAssignmentInitializer) {
              const St = t.createAssignment(lt, I.objectAssignmentInitializer);
              return pt(t.createPropertyAssignment(je, St), I);
            }
            return pt(t.createPropertyAssignment(je, lt), I);
          }
        }
        return I;
      }
      function Is(I) {
        switch (I.kind) {
          case 80:
            return Zt(I);
          case 212:
            return ou(I);
          case 213:
            return Wl(I);
        }
        return I;
      }
      function Zt(I) {
        return Mo(I) || I;
      }
      function Mo(I) {
        if (G & L && !Ko(I) && !Hh(I)) {
          const je = _.getReferencedExportContainer(I, !1);
          if (je && je.kind !== 308 && (L & 2 && je.kind === 268 || L & 8 && je.kind === 267))
            return pt(t.createPropertyAccessExpression(t.getGeneratedNameForNode(je), I), I);
        }
      }
      function ou(I) {
        return Ma(I);
      }
      function Wl(I) {
        return Ma(I);
      }
      function bu(I) {
        return I.replace(/\*\//g, "*_/");
      }
      function Ma(I) {
        const je = ac(I);
        if (je !== void 0) {
          Ete(I, je);
          const lt = typeof je == "string" ? t.createStringLiteral(je) : je < 0 ? t.createPrefixUnaryExpression(41, t.createNumericLiteral(-je)) : t.createNumericLiteral(je);
          return u.removeComments || QD(lt, 3, ` ${bu(uc(rc(I, jo)))} `), lt;
        }
        return I;
      }
      function ac(I) {
        if (!Zp(u))
          return Ln(I) || Po(I) ? _.getConstantValue(I) : void 0;
      }
      function Qo(I) {
        return u.verbatimModuleSyntax || rn(I) || _.isReferencedAliasDeclaration(I);
      }
    }
    function Kne(e) {
      const { factory: t, getEmitHelperFactory: n, hoistVariableDeclaration: i, endLexicalEnvironment: a, startLexicalEnvironment: o, resumeLexicalEnvironment: c, addBlockScopedVariable: _ } = e, u = e.getEmitResolver(), d = e.getCompilerOptions(), g = Ps(d), h = jA(d), S = !!d.experimentalDecorators, T = !h, k = h && g < 9, D = T || k, P = g < 9, N = g < 99 ? -1 : h ? 0 : 3, M = g < 9, R = M && g >= 2, G = D || P || N === -1, L = e.onSubstituteNode;
      e.onSubstituteNode = Wl;
      const z = e.onEmitNode;
      e.onEmitNode = ou;
      let H = !1, U = 0, pe, ie, W, Q;
      const se = /* @__PURE__ */ new Map(), he = /* @__PURE__ */ new Set();
      let fe, de, $ = !1, Se = !1;
      return Xd(e, Be);
      function Be(I) {
        if (I.isDeclarationFile || (Q = void 0, H = !!(pd(I) & 32), !G && !H)) return I;
        const je = Tr(I, oe, e);
        return th(je, e.readEmitHelpers()), je;
      }
      function ce(I) {
        return I.kind === 129 ? vt() ? void 0 : I : qn(I, hs);
      }
      function oe(I) {
        if (!(I.transformFlags & 16777216) && !(I.transformFlags & 134234112)) return I;
        switch (I.kind) {
          case 264:
            return fr(I);
          case 232:
            return Oe(I);
          case 176:
          case 173:
            return E.fail("Use `classElementVisitor` instead.");
          case 304:
            return Ie(I);
          case 244:
            return Xe(I);
          case 261:
            return Ft(I);
          case 170:
            return Ut(I);
          case 209:
            return Xt(I);
          case 278:
            return Ar(I);
          case 81:
            return Ce(I);
          case 212:
            return Ea(I);
          case 213:
            return Da(I);
          case 225:
          case 226:
            return Lr(I, !1);
          case 227:
            return Ge(I, !1);
          case 218:
            return it(I, !1);
          case 214:
            return ne(I);
          case 245:
            return Ye(I);
          case 216:
            return tt(I);
          case 249:
            return ha(I);
          case 110:
            return q(I);
          case 263:
          case 219:
            return Nt(void 0, ge, I);
          case 177:
          case 175:
          case 178:
          case 179:
            return Nt(I, ge, I);
          default:
            return ge(I);
        }
      }
      function ge(I) {
        return Tr(I, oe, e);
      }
      function Ae(I) {
        switch (I.kind) {
          case 225:
          case 226:
            return Lr(I, !0);
          case 227:
            return Ge(I, !0);
          case 357:
            return nt(I, !0);
          case 218:
            return it(I, !0);
          default:
            return oe(I);
        }
      }
      function Ne(I) {
        switch (I.kind) {
          case 299:
            return Tr(I, Ne, e);
          case 234:
            return Dt(I);
          default:
            return oe(I);
        }
      }
      function ot(I) {
        switch (I.kind) {
          case 211:
          case 210:
            return Mo(I);
          default:
            return oe(I);
        }
      }
      function K(I) {
        switch (I.kind) {
          case 177:
            return Nt(I, zr, I);
          case 178:
          case 179:
          case 175:
            return Nt(I, Gr, I);
          case 173:
            return Nt(I, tr, I);
          case 176:
            return Nt(I, ee, I);
          case 168:
            return Kt(I);
          case 241:
            return I;
          default:
            return ec(I) ? ce(I) : oe(I);
        }
      }
      function ke(I) {
        return I.kind === 168 ? Kt(I) : oe(I);
      }
      function ae(I) {
        switch (I.kind) {
          case 173:
            return Me(I);
          case 178:
          case 179:
            return K(I);
          default:
            E.assertMissingNode(I, "Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");
            break;
        }
      }
      function Ce(I) {
        return !P || Ei(I.parent) ? I : Fn(t.createIdentifier(""), I);
      }
      function ue(I) {
        const je = _o(I.left);
        if (je) {
          const lt = Ze(I.right, oe, dt);
          return Fn(n().createClassPrivateFieldInHelper(je.brandCheckIdentifier, lt), I);
        }
        return Tr(I, oe, e);
      }
      function Ie(I) {
        return hf(I, we) && (I = Cf(e, I)), Tr(I, oe, e);
      }
      function Xe(I) {
        const je = W;
        W = [];
        const lt = Tr(I, oe, e), St = _t(W) ? [lt, ...W] : lt;
        return W = je, St;
      }
      function Ft(I) {
        return hf(I, we) && (I = Cf(e, I)), Tr(I, oe, e);
      }
      function Ut(I) {
        return hf(I, we) && (I = Cf(e, I)), Tr(I, oe, e);
      }
      function Xt(I) {
        return hf(I, we) && (I = Cf(e, I)), Tr(I, oe, e);
      }
      function Ar(I) {
        return hf(I, we) && (I = Cf(e, I, !0, I.isExportEquals ? "" : "default")), Tr(I, oe, e);
      }
      function Ct(I) {
        return _t(ie) && (E_(I) ? (ie.push(I.expression), I = t.updateParenthesizedExpression(I, t.inlineExpressions(ie))) : (ie.push(I), I = t.inlineExpressions(ie)), ie = void 0), I;
      }
      function Kt(I) {
        const je = Ze(I.expression, oe, dt);
        return t.updateComputedPropertyName(I, Ct(je));
      }
      function zr(I) {
        return fe ? $e(I, fe) : ge(I);
      }
      function _i(I) {
        return !!(P || vl(I) && pd(I) & 32);
      }
      function Gr(I) {
        if (E.assert(!tp(I)), !qu(I) || !_i(I)) return Tr(I, K, e);
        const je = _o(I.name);
        if (E.assert(je, "Undeclared private name for property declaration."), !je.isValid) return I;
        const lt = Li(I);
        lt && ct().push(t.createAssignment(lt, t.createFunctionExpression(dn(I.modifiers, (St) => hs(St) && !lk(St) && !Nz(St)), I.asteriskToken, lt, void 0, Cc(I.parameters, oe, e), void 0, ap(I.body, oe, e))));
      }
      function Nt(I, je, lt) {
        if (I !== de) {
          const St = de;
          de = I;
          const jr = je(lt);
          return de = St, jr;
        }
        return je(lt);
      }
      function Li(I) {
        E.assert(Oi(I.name));
        const je = _o(I.name);
        if (E.assert(je, "Undeclared private name for property declaration."), je.kind === "m") return je.methodName;
        if (je.kind === "a") {
          if (Wg(I)) return je.getterName;
          if (vm(I)) return je.setterName;
        }
      }
      function ri() {
        const I = $t();
        return I.classThis ?? I.classConstructor ?? fe?.name;
      }
      function Zr(I) {
        const je = Pm(I), lt = M0(I), St = I.name;
        let jr = St, Bn = St;
        if (_s(St) && !Lm(St.expression)) {
          const cl = dF(St);
          if (cl)
            jr = t.updateComputedPropertyName(St, Ze(St.expression, oe, dt)), Bn = t.updateComputedPropertyName(St, cl.left);
          else {
            const vc = t.createTempVariable(i);
            As(vc, St.expression);
            const ml = Ze(St.expression, oe, dt), gl = t.createAssignment(vc, ml);
            As(gl, St.expression), jr = t.updateComputedPropertyName(St, gl), Bn = t.updateComputedPropertyName(St, vc);
          }
        }
        const tn = Fr(I.modifiers, ce, hs), ai = iW(t, I, tn, I.initializer);
        Fn(ai, I), ln(ai, 3072), As(ai, lt);
        const ei = es(I) ? ri() ?? t.createThis() : t.createThis(), La = Cre(t, I, tn, jr, ei);
        Fn(La, I), fl(La, je), As(La, lt);
        const ds = Ere(t, I, t.createModifiersFromModifierFlags(Cm(tn)), Bn, ei);
        return Fn(ds, I), ln(ds, 3072), As(ds, lt), bw([
          ai,
          La,
          ds
        ], ae, al);
      }
      function ni(I) {
        if (_i(I)) {
          const je = _o(I.name);
          if (E.assert(je, "Undeclared private name for property declaration."), !je.isValid) return I;
          if (je.isStatic && !P) {
            const lt = Pr(I, t.createThis());
            if (lt) return t.createClassStaticBlockDeclaration(t.createBlock([lt], !0));
          }
          return;
        }
        return T && !es(I) && Q?.data && Q.data.facts & 16 ? t.updatePropertyDeclaration(I, Fr(I.modifiers, oe, ec), I.name, void 0, void 0, void 0) : (hf(I, we) && (I = Cf(e, I)), t.updatePropertyDeclaration(I, Fr(I.modifiers, ce, hs), Ze(I.name, ke, il), void 0, void 0, Ze(I.initializer, oe, dt)));
      }
      function ra(I) {
        if (D && !R_(I)) {
          const je = Ir(I.name, !!I.initializer || h);
          if (je && ct().push(...Dre(je)), es(I) && !P) {
            const lt = Pr(I, t.createThis());
            if (lt) {
              const St = t.createClassStaticBlockDeclaration(t.createBlock([lt]));
              return Fn(St, I), fl(St, I), fl(lt, {
                pos: -1,
                end: -1
              }), Sv(lt, void 0), ik(lt, void 0), St;
            }
          }
          return;
        }
        return t.updatePropertyDeclaration(I, Fr(I.modifiers, ce, hs), Ze(I.name, ke, il), void 0, void 0, Ze(I.initializer, oe, dt));
      }
      function Me(I) {
        return E.assert(!tp(I), "Decorators should already have been transformed and elided."), qu(I) ? ni(I) : ra(I);
      }
      function vt() {
        return N === -1 || N === 3 && !!Q?.data && !!(Q.data.facts & 16);
      }
      function tr(I) {
        return R_(I) && (vt() || vl(I) && pd(I) & 32) ? Zr(I) : Me(I);
      }
      function Ur() {
        return !!de && vl(de) && zy(de) && R_(rc(de));
      }
      function $n(I) {
        if (Ur()) {
          const je = Ic(I);
          je.kind === 110 && he.add(je);
        }
      }
      function zn(I, je) {
        return je = Ze(je, oe, dt), $n(je), na(I, je);
      }
      function na(I, je) {
        switch (fl(je, hv(je, -1)), I.kind) {
          case "a":
            return n().createClassPrivateFieldGetHelper(je, I.brandCheckIdentifier, I.kind, I.getterName);
          case "m":
            return n().createClassPrivateFieldGetHelper(je, I.brandCheckIdentifier, I.kind, I.methodName);
          case "f":
            return n().createClassPrivateFieldGetHelper(je, I.brandCheckIdentifier, I.kind, I.isStatic ? I.variableName : void 0);
          case "untransformed":
            return E.fail("Access helpers should not be created for untransformed private elements");
          default:
            E.assertNever(I, "Unknown private element type");
        }
      }
      function Ea(I) {
        if (Oi(I.name)) {
          const je = _o(I.name);
          if (je) return pt(Fn(zn(je, I.expression), I), I);
        }
        if (R && de && Z_(I) && Fe(I.name) && Ew(de) && Q?.data) {
          const { classConstructor: je, superClassReference: lt, facts: St } = Q.data;
          if (St & 1) return qt(I);
          if (je && lt) {
            const jr = t.createReflectGetCall(lt, t.createStringLiteralFromNode(I.name), je);
            return Fn(jr, I.expression), pt(jr, I.expression), jr;
          }
        }
        return Tr(I, oe, e);
      }
      function Da(I) {
        if (R && de && Z_(I) && Ew(de) && Q?.data) {
          const { classConstructor: je, superClassReference: lt, facts: St } = Q.data;
          if (St & 1) return qt(I);
          if (je && lt) {
            const jr = t.createReflectGetCall(lt, Ze(I.argumentExpression, oe, dt), je);
            return Fn(jr, I.expression), pt(jr, I.expression), jr;
          }
        }
        return Tr(I, oe, e);
      }
      function Lr(I, je) {
        if (I.operator === 46 || I.operator === 47) {
          const lt = Gs(I.operand);
          if (QC(lt)) {
            let St;
            if (St = _o(lt.name)) {
              const jr = Ze(lt.expression, oe, dt);
              $n(jr);
              const { readExpression: Bn, initializeExpression: tn } = Pt(jr);
              let ai = zn(St, Bn);
              const ei = kv(I) || je ? void 0 : t.createTempVariable(i);
              return ai = cF(t, I, ai, i, ei), ai = ut(St, tn || Bn, ai, 64), Fn(ai, I), pt(ai, I), ei && (ai = t.createComma(ai, ei), pt(ai, I)), ai;
            }
          } else if (R && de && Z_(lt) && Ew(de) && Q?.data) {
            const { classConstructor: St, superClassReference: jr, facts: Bn } = Q.data;
            if (Bn & 1) {
              const tn = qt(lt);
              return kv(I) ? t.updatePrefixUnaryExpression(I, tn) : t.updatePostfixUnaryExpression(I, tn);
            }
            if (St && jr) {
              let tn, ai;
              if (Ln(lt) ? Fe(lt.name) && (ai = tn = t.createStringLiteralFromNode(lt.name)) : Lm(lt.argumentExpression) ? ai = tn = lt.argumentExpression : (ai = t.createTempVariable(i), tn = t.createAssignment(ai, Ze(lt.argumentExpression, oe, dt))), tn && ai) {
                let ei = t.createReflectGetCall(jr, ai, St);
                pt(ei, lt);
                const La = je ? void 0 : t.createTempVariable(i);
                return ei = cF(t, I, ei, i, La), ei = t.createReflectSetCall(jr, tn, ei, St), Fn(ei, I), pt(ei, I), La && (ei = t.createComma(ei, La), pt(ei, I)), ei;
              }
            }
          }
        }
        return Tr(I, oe, e);
      }
      function ha(I) {
        return t.updateForStatement(I, Ze(I.initializer, Ae, bp), Ze(I.condition, oe, dt), Ze(I.incrementor, Ae, dt), D_(I.statement, oe, e));
      }
      function Ye(I) {
        return t.updateExpressionStatement(I, Ze(I.expression, Ae, dt));
      }
      function Pt(I) {
        const je = wo(I) ? I : t.cloneNode(I);
        if (I.kind === 110 && he.has(I) && he.add(je), Lm(I)) return {
          readExpression: je,
          initializeExpression: void 0
        };
        const lt = t.createTempVariable(i);
        return {
          readExpression: lt,
          initializeExpression: t.createAssignment(lt, je)
        };
      }
      function ne(I) {
        var je;
        if (QC(I.expression) && _o(I.expression.name)) {
          const { thisArg: lt, target: St } = t.createCallBinding(I.expression, i, g);
          return uS(I) ? t.updateCallChain(I, t.createPropertyAccessChain(Ze(St, oe, dt), I.questionDotToken, "call"), void 0, void 0, [Ze(lt, oe, dt), ...Fr(I.arguments, oe, dt)]) : t.updateCallExpression(I, t.createPropertyAccessExpression(Ze(St, oe, dt), "call"), void 0, [Ze(lt, oe, dt), ...Fr(I.arguments, oe, dt)]);
        }
        if (R && de && Z_(I.expression) && Ew(de) && ((je = Q?.data) != null && je.classConstructor)) {
          const lt = t.createFunctionCallCall(Ze(I.expression, oe, dt), Q.data.classConstructor, Fr(I.arguments, oe, dt));
          return Fn(lt, I), pt(lt, I), lt;
        }
        return Tr(I, oe, e);
      }
      function tt(I) {
        var je;
        if (QC(I.tag) && _o(I.tag.name)) {
          const { thisArg: lt, target: St } = t.createCallBinding(I.tag, i, g);
          return t.updateTaggedTemplateExpression(I, t.createCallExpression(t.createPropertyAccessExpression(Ze(St, oe, dt), "bind"), void 0, [Ze(lt, oe, dt)]), void 0, Ze(I.template, oe, Cx));
        }
        if (R && de && Z_(I.tag) && Ew(de) && ((je = Q?.data) != null && je.classConstructor)) {
          const lt = t.createFunctionBindCall(Ze(I.tag, oe, dt), Q.data.classConstructor, []);
          return Fn(lt, I), pt(lt, I), t.updateTaggedTemplateExpression(I, lt, void 0, Ze(I.template, oe, Cx));
        }
        return Tr(I, oe, e);
      }
      function re(I) {
        if (Q && se.set(rc(I), Q), P) {
          if (Cw(I)) {
            const St = Ze(I.body.statements[0].expression, oe, dt);
            return Hl(St, !0) && St.left === St.right ? void 0 : St;
          }
          if (Pk(I)) return Ze(I.body.statements[0].expression, oe, dt);
          o();
          let je = Nt(I, (St) => Fr(St, oe, Ei), I.body.statements);
          je = t.mergeLexicalEnvironment(je, a());
          const lt = t.createImmediatelyInvokedArrowFunction(je);
          return Fn(Gs(lt.expression), I), wm(Gs(lt.expression), 4), Fn(lt, I), pt(lt, I), lt;
        }
      }
      function we(I) {
        if (Hc(I) && !I.name) {
          const je = YF(I);
          return _t(je, Pk) ? !1 : (P || !!pd(I)) && _t(je, (lt) => Bc(lt) || qu(lt) || D && MN(lt));
        }
        return !1;
      }
      function Ge(I, je) {
        if (A0(I)) {
          const lt = ie;
          ie = void 0, I = t.updateBinaryExpression(I, Ze(I.left, ot, dt), I.operatorToken, Ze(I.right, oe, dt));
          const St = _t(ie) ? t.inlineExpressions(a3([...ie, I])) : I;
          return ie = lt, St;
        }
        if (Hl(I)) {
          hf(I, we) && (I = Cf(e, I), E.assertNode(I, Hl));
          const lt = Ic(I.left, 9);
          if (QC(lt)) {
            const St = _o(lt.name);
            if (St) return pt(Fn(ut(St, lt.expression, I.right, I.operatorToken.kind), I), I);
          } else if (R && de && Z_(I.left) && Ew(de) && Q?.data) {
            const { classConstructor: St, superClassReference: jr, facts: Bn } = Q.data;
            if (Bn & 1) return t.updateBinaryExpression(I, qt(I.left), I.operatorToken, Ze(I.right, oe, dt));
            if (St && jr) {
              let tn = Po(I.left) ? Ze(I.left.argumentExpression, oe, dt) : Fe(I.left.name) ? t.createStringLiteralFromNode(I.left.name) : void 0;
              if (tn) {
                let ai = Ze(I.right, oe, dt);
                if (Tw(I.operatorToken.kind)) {
                  let La = tn;
                  Lm(tn) || (La = t.createTempVariable(i), tn = t.createAssignment(La, tn));
                  const ds = t.createReflectGetCall(jr, La, St);
                  Fn(ds, I.left), pt(ds, I.left), ai = t.createBinaryExpression(ds, xw(I.operatorToken.kind), ai), pt(ai, I);
                }
                const ei = je ? void 0 : t.createTempVariable(i);
                return ei && (ai = t.createAssignment(ei, ai), pt(ei, I)), ai = t.createReflectSetCall(jr, tn, ai, St), Fn(ai, I), pt(ai, I), ei && (ai = t.createComma(ai, ei), pt(ai, I)), ai;
              }
            }
          }
        }
        return wje(I) ? ue(I) : Tr(I, oe, e);
      }
      function nt(I, je) {
        const lt = je ? LN(I.elements, Ae) : LN(I.elements, oe, Ae);
        return t.updateCommaListExpression(I, lt);
      }
      function it(I, je) {
        const lt = je ? Ae : oe, St = Ze(I.expression, lt, dt);
        return t.updateParenthesizedExpression(I, St);
      }
      function ut(I, je, lt, St) {
        if (je = Ze(je, oe, dt), lt = Ze(lt, oe, dt), $n(je), Tw(St)) {
          const { readExpression: jr, initializeExpression: Bn } = Pt(je);
          je = Bn || jr, lt = t.createBinaryExpression(na(I, jr), xw(St), lt);
        }
        switch (fl(je, hv(je, -1)), I.kind) {
          case "a":
            return n().createClassPrivateFieldSetHelper(je, I.brandCheckIdentifier, lt, I.kind, I.setterName);
          case "m":
            return n().createClassPrivateFieldSetHelper(je, I.brandCheckIdentifier, lt, I.kind, void 0);
          case "f":
            return n().createClassPrivateFieldSetHelper(je, I.brandCheckIdentifier, lt, I.kind, I.isStatic ? I.variableName : void 0);
          case "untransformed":
            return E.fail("Access helpers should not be created for untransformed private elements");
          default:
            E.assertNever(I, "Unknown private element type");
        }
      }
      function Qe(I) {
        return dn(I.members, zne);
      }
      function xt(I) {
        var je;
        let lt = 0;
        const St = rc(I);
        Zn(St) && w0(S, St) && (lt |= 1), P && (oU(I) || e9(I)) && (lt |= 2);
        let jr = !1, Bn = !1, tn = !1, ai = !1;
        for (const ei of I.members) es(ei) ? ((ei.name && (Oi(ei.name) || R_(ei)) && P || R_(ei) && N === -1 && !I.name && !((je = I.emitNode) != null && je.classThis)) && (lt |= 2), (ga(ei) || Bc(ei)) && (M && ei.transformFlags & 16384 && (lt |= 8, lt & 1 || (lt |= 2)), R && ei.transformFlags & 134217728 && (lt & 1 || (lt |= 6)))) : Jb(rc(ei)) || (R_(ei) ? (ai = !0, tn || (tn = qu(ei))) : qu(ei) ? (tn = !0, u.hasNodeCheckFlag(ei, 262144) && (lt |= 2)) : ga(ei) && (jr = !0, Bn || (Bn = !!ei.initializer)));
        return (k && jr || T && Bn || P && tn || P && ai && N === -1) && (lt |= 16), lt;
      }
      function Dt(I) {
        var je;
        if ((((je = Q?.data) == null ? void 0 : je.facts) || 0) & 4) {
          const lt = t.createTempVariable(i, !0);
          return $t().superClassReference = lt, t.updateExpressionWithTypeArguments(I, t.createAssignment(lt, Ze(I.expression, oe, dt)), void 0);
        }
        return Tr(I, oe, e);
      }
      function Ve(I, je) {
        var lt;
        const St = fe, jr = ie, Bn = Q;
        fe = I, ie = void 0, Yt();
        const tn = pd(I) & 32;
        if (P || tn) {
          const La = va(I);
          if (La && Fe(La)) Qt().data.className = La;
          else if ((lt = I.emitNode) != null && lt.assignedName && Ts(I.emitNode.assignedName)) {
            if (I.emitNode.assignedName.textSourceNode && Fe(I.emitNode.assignedName.textSourceNode)) Qt().data.className = I.emitNode.assignedName.textSourceNode;
            else if (Y_(I.emitNode.assignedName.text, g)) {
              const ds = t.createIdentifier(I.emitNode.assignedName.text);
              Qt().data.className = ds;
            }
          }
        }
        if (P) {
          const La = Qe(I);
          _t(La) && (Qt().data.weakSetName = ia("instances", La[0].name));
        }
        const ai = xt(I);
        ai && ($t().facts = ai), ai & 8 && kt();
        const ei = je(I, ai);
        return Jt(), E.assert(Q === Bn), fe = St, ie = jr, ei;
      }
      function fr(I) {
        return Ve(I, rr);
      }
      function rr(I, je) {
        var lt, St;
        let jr;
        if (je & 2) if (P && ((lt = I.emitNode) != null && lt.classThis))
          $t().classConstructor = I.emitNode.classThis, jr = t.createAssignment(I.emitNode.classThis, t.getInternalName(I));
        else {
          const Os = t.createTempVariable(i, !0);
          $t().classConstructor = t.cloneNode(Os), jr = t.createAssignment(Os, t.getInternalName(I));
        }
        (St = I.emitNode) != null && St.classThis && ($t().classThis = I.emitNode.classThis);
        const Bn = u.hasNodeCheckFlag(I, 262144), tn = Qn(I, 32), ai = Qn(I, 2048);
        let ei = Fr(I.modifiers, ce, hs);
        const La = Fr(I.heritageClauses, Ne, kf), { members: ds, prologue: cl } = j(I), vc = [];
        if (jr && ct().unshift(jr), _t(ie) && vc.push(t.createExpressionStatement(t.inlineExpressions(ie))), T || P || pd(I) & 32) {
          const Os = YF(I);
          _t(Os) && pr(vc, Os, t.getInternalName(I));
        }
        vc.length > 0 && tn && ai && (ei = Fr(ei, (Os) => gN(Os) ? void 0 : Os, hs), vc.push(t.createExportAssignment(void 0, !1, t.getLocalName(I, !1, !0))));
        const ml = $t().classConstructor;
        Bn && ml && (et(), pe[w_(I)] = ml);
        const gl = t.updateClassDeclaration(I, ei, I.name, void 0, La, ds);
        return vc.unshift(gl), cl && vc.unshift(t.createExpressionStatement(cl)), vc;
      }
      function Oe(I) {
        return Ve(I, rt);
      }
      function rt(I, je) {
        var lt, St, jr;
        const Bn = !!(je & 1), tn = YF(I), ai = u.hasNodeCheckFlag(I, 262144), ei = u.hasNodeCheckFlag(I, 32768);
        let La;
        function ds() {
          var Su;
          if (P && ((Su = I.emitNode) != null && Su.classThis)) return $t().classConstructor = I.emitNode.classThis;
          const rf = t.createTempVariable(ei ? _ : i, !0);
          return $t().classConstructor = t.cloneNode(rf), rf;
        }
        (lt = I.emitNode) != null && lt.classThis && ($t().classThis = I.emitNode.classThis), je & 2 && (La ?? (La = ds()));
        const cl = Fr(I.modifiers, ce, hs), vc = Fr(I.heritageClauses, Ne, kf), { members: ml, prologue: gl } = j(I), Os = t.updateClassExpression(I, cl, I.name, void 0, vc, ml), Ao = [];
        if (gl && Ao.push(gl), (P || pd(I) & 32) && _t(tn, (Su) => Bc(Su) || qu(Su) || D && MN(Su)) || _t(ie)) if (Bn)
          E.assertIsDefined(W, "Decorated classes transformed by TypeScript are expected to be within a variable declaration."), _t(ie) && Mn(W, or(ie, t.createExpressionStatement)), _t(tn) && pr(W, tn, ((St = I.emitNode) == null ? void 0 : St.classThis) ?? t.getInternalName(I)), La ? Ao.push(t.createAssignment(La, Os)) : P && ((jr = I.emitNode) != null && jr.classThis) ? Ao.push(t.createAssignment(I.emitNode.classThis, Os)) : Ao.push(Os);
        else {
          if (La ?? (La = ds()), ai) {
            et();
            const Su = t.cloneNode(La);
            Su.emitNode.autoGenerate.flags &= -9, pe[w_(I)] = Su;
          }
          Ao.push(t.createAssignment(La, Os)), Mn(Ao, ie), Mn(Ao, vr(tn, La)), Ao.push(t.cloneNode(La));
        }
        else Ao.push(Os);
        return Ao.length > 1 && (wm(Os, 131072), Ao.forEach(Xu)), t.inlineExpressions(Ao);
      }
      function ee(I) {
        if (!P) return Tr(I, oe, e);
      }
      function q(I) {
        if (M && de && Bc(de) && Q?.data) {
          const { classThis: je, classConstructor: lt } = Q.data;
          return je ?? lt ?? I;
        }
        return I;
      }
      function j(I) {
        const je = !!(pd(I) & 32);
        if (P || H) {
          for (const tn of I.members) qu(tn) && (_i(tn) ? To(tn, tn.name, wn) : HS(Qt(), tn.name, { kind: "untransformed" }));
          if (P && _t(Qe(I)) && Re(), vt()) {
            for (const tn of I.members) if (R_(tn)) {
              const ai = t.getGeneratedPrivateNameForNode(tn.name, void 0, "_accessor_storage");
              P || je && vl(tn) ? To(tn, ai, Mi) : HS(Qt(), ai, { kind: "untransformed" });
            }
          }
        }
        let lt = Fr(I.members, K, al), St;
        _t(lt, yc) || (St = $e(void 0, I));
        let jr, Bn;
        if (!P && _t(ie)) {
          let tn = t.createExpressionStatement(t.inlineExpressions(ie));
          if (tn.transformFlags & 134234112) {
            const ei = t.createTempVariable(i), La = t.createArrowFunction(void 0, void 0, [], void 0, void 0, t.createBlock([tn]));
            jr = t.createAssignment(ei, La), tn = t.createExpressionStatement(t.createCallExpression(ei, void 0, []));
          }
          const ai = t.createBlock([tn]);
          Bn = t.createClassStaticBlockDeclaration(ai), ie = void 0;
        }
        if (St || Bn) {
          let tn;
          const ai = xr(lt, Cw), ei = xr(lt, Pk);
          tn = kr(tn, ai), tn = kr(tn, ei), tn = kr(tn, St), tn = kr(tn, Bn);
          const La = ai || ei ? dn(lt, (ds) => ds !== ai && ds !== ei) : lt;
          tn = Mn(tn, La), lt = pt(t.createNodeArray(tn), I.members);
        }
        return {
          members: lt,
          prologue: jr
        };
      }
      function Re() {
        const { weakSetName: I } = Qt().data;
        E.assert(I, "weakSetName should be set in private identifier environment"), ct().push(t.createAssignment(I, t.createNewExpression(t.createIdentifier("WeakSet"), void 0, [])));
      }
      function $e(I, je) {
        if (I = Ze(I, oe, yc), !Q?.data || !(Q.data.facts & 16)) return I;
        const lt = Jd(je), St = !!(lt && Ic(lt.expression).kind !== 106), jr = Cc(I ? I.parameters : void 0, oe, e), Bn = Ke(je, I, St);
        return Bn ? I ? (E.assert(jr), t.updateConstructorDeclaration(I, void 0, jr, Bn)) : Xu(Fn(pt(t.createConstructorDeclaration(void 0, jr ?? [], Bn), I || je), I)) : I;
      }
      function ye(I, je, lt, St, jr, Bn, tn) {
        const ai = St[jr], ei = je[ai];
        if (Mn(I, Fr(je, oe, Ei, lt, ai - lt)), lt = ai + 1, jS(ei)) {
          const La = [];
          ye(La, ei.tryBlock.statements, 0, St, jr + 1, Bn, tn), pt(t.createNodeArray(La), ei.tryBlock.statements), I.push(t.updateTryStatement(ei, t.updateBlock(ei.tryBlock, La), Ze(ei.catchClause, oe, Zb), Ze(ei.finallyBlock, oe, Wa)));
        } else {
          for (Mn(I, Fr(je, oe, Ei, ai, 1)); lt < je.length; ) {
            const La = je[lt];
            if (df(rc(La), tn)) lt++;
            else break;
          }
          Mn(I, Bn);
        }
        Mn(I, Fr(je, oe, Ei, lt));
      }
      function Ke(I, je, lt) {
        var St;
        const jr = iU(I, !1, !1);
        let Bn = jr;
        h || (Bn = dn(Bn, (gl) => !!gl.initializer || Oi(gl.name) || km(gl)));
        const tn = Qe(I), ai = _t(Bn) || _t(tn);
        if (!je && !ai) return ap(void 0, oe, e);
        c();
        const ei = !je && lt;
        let La = 0, ds = [];
        const cl = [], vc = t.createThis();
        if (wt(cl, tn, vc), je) {
          const gl = dn(jr, (Ao) => df(rc(Ao), je)), Os = dn(Bn, (Ao) => !df(rc(Ao), je));
          pr(cl, gl, vc), pr(cl, Os, vc);
        } else pr(cl, Bn, vc);
        if (je?.body) {
          La = t.copyPrologue(je.body.statements, ds, !1, oe);
          const gl = QF(je.body.statements, La);
          if (gl.length) ye(ds, je.body.statements, La, gl, 0, cl, je);
          else {
            for (; La < je.body.statements.length; ) {
              const Os = je.body.statements[La];
              if (df(rc(Os), je)) La++;
              else break;
            }
            Mn(ds, cl), Mn(ds, Fr(je.body.statements, oe, Ei, La));
          }
        } else
          ei && ds.push(t.createExpressionStatement(t.createCallExpression(t.createSuper(), void 0, [t.createSpreadElement(t.createIdentifier("arguments"))]))), Mn(ds, cl);
        if (ds = t.mergeLexicalEnvironment(ds, a()), ds.length === 0 && !je) return;
        const ml = je?.body && je.body.statements.length >= ds.length ? je.body.multiLine ?? ds.length > 0 : ds.length > 0;
        return pt(t.createBlock(pt(t.createNodeArray(ds), ((St = je?.body) == null ? void 0 : St.statements) ?? I.members), ml), je?.body);
      }
      function pr(I, je, lt) {
        for (const St of je) {
          if (es(St) && !P) continue;
          const jr = Pr(St, lt);
          jr && I.push(jr);
        }
      }
      function Pr(I, je) {
        const lt = Bc(I) ? Nt(I, re, I) : fn(I, je);
        if (!lt) return;
        const St = t.createExpressionStatement(lt);
        Fn(St, I), wm(St, Bs(I) & 3072), fl(St, I);
        const jr = rc(I);
        return Fi(jr) ? (As(St, jr), KA(St)) : As(St, Em(I)), Sv(lt, void 0), ik(lt, void 0), km(jr) && wm(St, 3072), St;
      }
      function vr(I, je) {
        const lt = [];
        for (const St of I) {
          const jr = Bc(St) ? Nt(St, re, St) : Nt(St, () => fn(St, je), void 0);
          jr && (Xu(jr), Fn(jr, St), wm(jr, Bs(St) & 3072), As(jr, Em(St)), fl(jr, St), lt.push(jr));
        }
        return lt;
      }
      function fn(I, je) {
        var lt;
        const St = de, jr = Cr(I, je);
        return jr && vl(I) && ((lt = Q?.data) != null && lt.facts) && (Fn(jr, I), wm(jr, 4), As(jr, M0(I.name)), se.set(rc(I), Q)), de = St, jr;
      }
      function Cr(I, je) {
        const lt = !h;
        hf(I, we) && (I = Cf(e, I));
        const St = km(I) ? t.getGeneratedPrivateNameForNode(I.name) : _s(I.name) && !Lm(I.name.expression) ? t.updateComputedPropertyName(I.name, t.getGeneratedNameForNode(I.name)) : I.name;
        if (vl(I) && (de = I), Oi(St) && _i(I)) {
          const tn = _o(St);
          if (tn) return tn.kind === "f" ? tn.isStatic ? kje(t, tn.variableName, Ze(I.initializer, oe, dt)) : Cje(t, je, Ze(I.initializer, oe, dt), tn.brandCheckIdentifier) : void 0;
          E.fail("Undeclared private name for property declaration.");
        }
        if ((Oi(St) || vl(I)) && !I.initializer) return;
        const jr = rc(I);
        if (Qn(jr, 64)) return;
        let Bn = Ze(I.initializer, oe, dt);
        if (df(jr, jr.parent) && Fe(St)) {
          const tn = t.cloneNode(St);
          Bn ? (E_(Bn) && fN(Bn.expression) && YD(Bn.expression.left, "___runInitializers") && dk(Bn.expression.right) && V_(Bn.expression.right.expression) && (Bn = Bn.expression.left), Bn = t.inlineExpressions([Bn, tn])) : Bn = tn, ln(St, 3168), As(tn, jr.name), ln(tn, 3072);
        } else Bn ?? (Bn = t.createVoidZero());
        if (lt || Oi(St)) {
          const tn = US(t, je, St, St);
          return wm(tn, 1024), t.createAssignment(tn, Bn);
        } else {
          const tn = _s(St) ? St.expression : Fe(St) ? t.createStringLiteral(Ti(St.escapedText)) : St, ai = t.createPropertyDescriptor({
            value: Bn,
            configurable: !0,
            writable: !0,
            enumerable: !0
          });
          return t.createObjectDefinePropertyCall(je, tn, ai);
        }
      }
      function et() {
        (U & 1) === 0 && (U |= 1, e.enableSubstitution(80), pe = []);
      }
      function kt() {
        (U & 2) === 0 && (U |= 2, e.enableSubstitution(110), e.enableEmitNotification(263), e.enableEmitNotification(219), e.enableEmitNotification(177), e.enableEmitNotification(178), e.enableEmitNotification(179), e.enableEmitNotification(175), e.enableEmitNotification(173), e.enableEmitNotification(168));
      }
      function wt(I, je, lt) {
        if (!P || !_t(je)) return;
        const { weakSetName: St } = Qt().data;
        E.assert(St, "weakSetName should be set in private identifier environment"), I.push(t.createExpressionStatement(Eje(t, lt, St)));
      }
      function qt(I) {
        return Ln(I) ? t.updatePropertyAccessExpression(I, t.createVoidZero(), I.name) : t.updateElementAccessExpression(I, t.createVoidZero(), Ze(I.argumentExpression, oe, dt));
      }
      function Ir(I, je) {
        if (_s(I)) {
          const lt = dF(I), St = Ze(I.expression, oe, dt), jr = fd(St), Bn = Lm(jr);
          if (!(lt || Hl(jr) && Ko(jr.left)) && !Bn && je) {
            const tn = t.getGeneratedNameForNode(I);
            return u.hasNodeCheckFlag(I, 32768) ? _(tn) : i(tn), t.createAssignment(tn, St);
          }
          return Bn || Fe(jr) ? void 0 : St;
        }
      }
      function Yt() {
        Q = {
          previous: Q,
          data: void 0
        };
      }
      function Jt() {
        Q = Q?.previous;
      }
      function $t() {
        return E.assert(Q), Q.data ?? (Q.data = {
          facts: 0,
          classConstructor: void 0,
          classThis: void 0,
          superClassReference: void 0
        });
      }
      function Qt() {
        return E.assert(Q), Q.privateEnv ?? (Q.privateEnv = Une({
          className: void 0,
          weakSetName: void 0
        }));
      }
      function ct() {
        return ie ?? (ie = []);
      }
      function wn(I, je, lt, St, jr, Bn, tn) {
        R_(I) ? oo(I, je, lt, St, jr, Bn, tn) : ga(I) ? Mi(I, je, lt, St, jr, Bn, tn) : hc(I) ? os(I, je, lt, St, jr, Bn, tn) : Dp(I) ? cs(I, je, lt, St, jr, Bn, tn) : ef(I) && xa(I, je, lt, St, jr, Bn, tn);
      }
      function Mi(I, je, lt, St, jr, Bn, tn) {
        if (jr) HS(St, je, {
          kind: "f",
          isStatic: !0,
          brandCheckIdentifier: E.checkDefined(lt.classThis ?? lt.classConstructor, "classConstructor should be set in private identifier environment"),
          variableName: ja(je),
          isValid: Bn
        });
        else {
          const ai = ja(je);
          HS(St, je, {
            kind: "f",
            isStatic: !1,
            brandCheckIdentifier: ai,
            isValid: Bn
          }), ct().push(t.createAssignment(ai, t.createNewExpression(t.createIdentifier("WeakMap"), void 0, [])));
        }
      }
      function os(I, je, lt, St, jr, Bn, tn) {
        HS(St, je, {
          kind: "m",
          methodName: ja(je),
          brandCheckIdentifier: jr ? E.checkDefined(lt.classThis ?? lt.classConstructor, "classConstructor should be set in private identifier environment") : E.checkDefined(St.data.weakSetName, "weakSetName should be set in private identifier environment"),
          isStatic: jr,
          isValid: Bn
        });
      }
      function cs(I, je, lt, St, jr, Bn, tn) {
        const ai = ja(je, "_get"), ei = jr ? E.checkDefined(lt.classThis ?? lt.classConstructor, "classConstructor should be set in private identifier environment") : E.checkDefined(St.data.weakSetName, "weakSetName should be set in private identifier environment");
        tn?.kind === "a" && tn.isStatic === jr && !tn.getterName ? tn.getterName = ai : HS(St, je, {
          kind: "a",
          getterName: ai,
          setterName: void 0,
          brandCheckIdentifier: ei,
          isStatic: jr,
          isValid: Bn
        });
      }
      function xa(I, je, lt, St, jr, Bn, tn) {
        const ai = ja(je, "_set"), ei = jr ? E.checkDefined(lt.classThis ?? lt.classConstructor, "classConstructor should be set in private identifier environment") : E.checkDefined(St.data.weakSetName, "weakSetName should be set in private identifier environment");
        tn?.kind === "a" && tn.isStatic === jr && !tn.setterName ? tn.setterName = ai : HS(St, je, {
          kind: "a",
          getterName: void 0,
          setterName: ai,
          brandCheckIdentifier: ei,
          isStatic: jr,
          isValid: Bn
        });
      }
      function oo(I, je, lt, St, jr, Bn, tn) {
        HS(St, je, {
          kind: "a",
          getterName: ja(je, "_get"),
          setterName: ja(je, "_set"),
          brandCheckIdentifier: jr ? E.checkDefined(lt.classThis ?? lt.classConstructor, "classConstructor should be set in private identifier environment") : E.checkDefined(St.data.weakSetName, "weakSetName should be set in private identifier environment"),
          isStatic: jr,
          isValid: Bn
        });
      }
      function To(I, je, lt) {
        const St = $t(), jr = Qt(), Bn = sU(jr, je);
        lt(I, je, St, jr, vl(I), !Dje(je) && Bn === void 0, Bn);
      }
      function ia(I, je, lt) {
        const { className: St } = Qt().data, jr = St ? {
          prefix: "_",
          node: St,
          suffix: "_"
        } : "_", Bn = typeof I == "object" ? t.getGeneratedNameForNode(I, 24, jr, lt) : typeof I == "string" ? t.createUniqueName(I, 16, jr, lt) : t.createTempVariable(void 0, !0, jr, lt);
        return u.hasNodeCheckFlag(je, 32768) ? _(Bn) : i(Bn), Bn;
      }
      function ja(I, je) {
        const lt = tD(I);
        return ia(lt?.substring(1) ?? I, I, je);
      }
      function _o(I) {
        const je = Vne(Q, I);
        return je?.kind === "untransformed" ? void 0 : je;
      }
      function Yc(I) {
        const je = t.getGeneratedNameForNode(I), lt = _o(I.name);
        if (!lt) return Tr(I, oe, e);
        let St = I.expression;
        return (eA(I) || Z_(I) || !r2(I.expression)) && (St = t.createTempVariable(i, !0), ct().push(t.createBinaryExpression(St, 64, Ze(I.expression, oe, dt)))), t.createAssignmentTargetWrapper(je, ut(lt, St, je, 64));
      }
      function Ou(I) {
        if (bs(I) || hu(I)) return Mo(I);
        if (QC(I)) return Yc(I);
        if (R && de && Z_(I) && Ew(de) && Q?.data) {
          const { classConstructor: je, superClassReference: lt, facts: St } = Q.data;
          if (St & 1) return qt(I);
          if (je && lt) {
            const jr = Po(I) ? Ze(I.argumentExpression, oe, dt) : Fe(I.name) ? t.createStringLiteralFromNode(I.name) : void 0;
            if (jr) {
              const Bn = t.createTempVariable(void 0);
              return t.createAssignmentTargetWrapper(Bn, t.createReflectSetCall(lt, jr, Bn, je));
            }
          }
        }
        return Tr(I, oe, e);
      }
      function _c(I) {
        if (hf(I, we) && (I = Cf(e, I)), Hl(I, !0)) {
          const je = Ou(I.left), lt = Ze(I.right, oe, dt);
          return t.updateBinaryExpression(I, je, I.operatorToken, lt);
        }
        return Ou(I);
      }
      function xl(I) {
        if (j_(I.expression)) {
          const je = Ou(I.expression);
          return t.updateSpreadElement(I, je);
        }
        return Tr(I, oe, e);
      }
      function fa(I) {
        if (F3(I)) {
          if (wp(I)) return xl(I);
          if (!Al(I)) return _c(I);
        }
        return Tr(I, oe, e);
      }
      function $a(I) {
        const je = Ze(I.name, oe, il);
        if (Hl(I.initializer, !0)) {
          const lt = _c(I.initializer);
          return t.updatePropertyAssignment(I, je, lt);
        }
        if (j_(I.initializer)) {
          const lt = Ou(I.initializer);
          return t.updatePropertyAssignment(I, je, lt);
        }
        return Tr(I, oe, e);
      }
      function Yi(I) {
        return hf(I, we) && (I = Cf(e, I)), Tr(I, oe, e);
      }
      function Is(I) {
        if (j_(I.expression)) {
          const je = Ou(I.expression);
          return t.updateSpreadAssignment(I, je);
        }
        return Tr(I, oe, e);
      }
      function Zt(I) {
        return E.assertNode(I, O3), ih(I) ? Is(I) : Nu(I) ? Yi(I) : ol(I) ? $a(I) : Tr(I, oe, e);
      }
      function Mo(I) {
        return hu(I) ? t.updateArrayLiteralExpression(I, Fr(I.elements, fa, dt)) : t.updateObjectLiteralExpression(I, Fr(I.properties, Zt, zg));
      }
      function ou(I, je, lt) {
        const St = rc(je), jr = se.get(St);
        if (jr) {
          const Bn = Q, tn = Se;
          Q = jr, Se = $, $ = !Bc(St) || !(pd(St) & 32), z(I, je, lt), $ = Se, Se = tn, Q = Bn;
          return;
        }
        switch (je.kind) {
          case 219:
            if (Bo(St) || Bs(je) & 524288) break;
          case 263:
          case 177:
          case 178:
          case 179:
          case 175:
          case 173: {
            const Bn = Q, tn = Se;
            Q = void 0, Se = $, $ = !1, z(I, je, lt), $ = Se, Se = tn, Q = Bn;
            return;
          }
          case 168: {
            const Bn = Q, tn = $;
            Q = Q?.previous, $ = Se, z(I, je, lt), $ = tn, Q = Bn;
            return;
          }
        }
        z(I, je, lt);
      }
      function Wl(I, je) {
        return je = L(I, je), I === 1 ? bu(je) : je;
      }
      function bu(I) {
        switch (I.kind) {
          case 80:
            return ac(I);
          case 110:
            return Ma(I);
        }
        return I;
      }
      function Ma(I) {
        if (U & 2 && Q?.data && !he.has(I)) {
          const { facts: je, classConstructor: lt, classThis: St } = Q.data, jr = $ ? St ?? lt : lt;
          if (jr) return pt(Fn(t.cloneNode(jr), I), I);
          if (je & 1 && S) return t.createParenthesizedExpression(t.createVoidZero());
        }
        return I;
      }
      function ac(I) {
        return Qo(I) || I;
      }
      function Qo(I) {
        if (U & 1 && u.hasNodeCheckFlag(I, 536870912)) {
          const je = u.getReferencedValueDeclaration(I);
          if (je) {
            const lt = pe[je.id];
            if (lt) {
              const St = t.cloneNode(lt);
              return As(St, I), fl(St, I), St;
            }
          }
        }
      }
    }
    function kje(e, t, n) {
      return e.createAssignment(t, e.createObjectLiteralExpression([e.createPropertyAssignment("value", n || e.createVoidZero())]));
    }
    function Cje(e, t, n, i) {
      return e.createCallExpression(e.createPropertyAccessExpression(i, "set"), void 0, [t, n || e.createVoidZero()]);
    }
    function Eje(e, t, n) {
      return e.createCallExpression(e.createPropertyAccessExpression(n, "add"), void 0, [t]);
    }
    function Dje(e) {
      return !fS(e) && e.escapedText === "#constructor";
    }
    function wje(e) {
      return Oi(e.left) && e.operatorToken.kind === 103;
    }
    function Pje(e) {
      return ga(e) && vl(e);
    }
    function Ew(e) {
      return Bc(e) || Pje(e);
    }
    function eie(e) {
      const { factory: t, hoistVariableDeclaration: n } = e, i = e.getEmitResolver(), a = e.getCompilerOptions(), o = Ps(a), c = Sf(a, "strictNullChecks");
      let _, u;
      return {
        serializeTypeNode: (ie, W) => d(ie, D, W),
        serializeTypeOfNode: (ie, W, Q) => d(ie, h, W, Q),
        serializeParameterTypesOfNode: (ie, W, Q) => d(ie, S, W, Q),
        serializeReturnTypeOfNode: (ie, W) => d(ie, k, W)
      };
      function d(ie, W, Q, se) {
        const he = _, fe = u;
        _ = ie.currentLexicalScope, u = ie.currentNameScope;
        const de = se === void 0 ? W(Q) : W(Q, se);
        return _ = he, u = fe, de;
      }
      function g(ie, W) {
        const Q = Bb(W.members, ie);
        return Q.setAccessor && ree(Q.setAccessor) || Q.getAccessor && yf(Q.getAccessor);
      }
      function h(ie, W) {
        switch (ie.kind) {
          case 173:
          case 170:
            return D(ie.type);
          case 179:
          case 178:
            return D(g(ie, W));
          case 264:
          case 232:
          case 175:
            return t.createIdentifier("Function");
          default:
            return t.createVoidZero();
        }
      }
      function S(ie, W) {
        const Q = Zn(ie) ? Xg(ie) : Ra(ie) && Gp(ie.body) ? ie : void 0, se = [];
        if (Q) {
          const he = T(Q, W), fe = he.length;
          for (let de = 0; de < fe; de++) {
            const $ = he[de];
            de === 0 && Fe($.name) && $.name.escapedText === "this" || ($.dotDotDotToken ? se.push(D(jB($.type))) : se.push(h($, W)));
          }
        }
        return t.createArrayLiteralExpression(se);
      }
      function T(ie, W) {
        if (W && ie.kind === 178) {
          const { setAccessor: Q } = Bb(W.members, ie);
          if (Q) return Q.parameters;
        }
        return ie.parameters;
      }
      function k(ie) {
        return Ra(ie) && ie.type ? D(ie.type) : hD(ie) ? t.createIdentifier("Promise") : t.createVoidZero();
      }
      function D(ie) {
        if (ie === void 0) return t.createIdentifier("Object");
        switch (ie = pD(ie), ie.kind) {
          case 116:
          case 157:
          case 146:
            return t.createVoidZero();
          case 185:
          case 186:
            return t.createIdentifier("Function");
          case 189:
          case 190:
            return t.createIdentifier("Array");
          case 183:
            return ie.assertsModifier ? t.createVoidZero() : t.createIdentifier("Boolean");
          case 136:
            return t.createIdentifier("Boolean");
          case 204:
          case 154:
            return t.createIdentifier("String");
          case 151:
            return t.createIdentifier("Object");
          case 202:
            return P(ie.literal);
          case 150:
            return t.createIdentifier("Number");
          case 163:
            return pe("BigInt", 7);
          case 155:
            return pe("Symbol", 2);
          case 184:
            return R(ie);
          case 194:
            return N(ie.types, !0);
          case 193:
            return N(ie.types, !1);
          case 195:
            return N([ie.trueType, ie.falseType], !1);
          case 199:
            if (ie.operator === 148) return D(ie.type);
            break;
          case 187:
          case 200:
          case 201:
          case 188:
          case 133:
          case 159:
          case 198:
          case 206:
            break;
          case 313:
          case 314:
          case 318:
          case 319:
          case 320:
            break;
          case 315:
          case 316:
          case 317:
            return D(ie.type);
          default:
            return E.failBadSyntaxKind(ie);
        }
        return t.createIdentifier("Object");
      }
      function P(ie) {
        switch (ie.kind) {
          case 11:
          case 15:
            return t.createIdentifier("String");
          case 225: {
            const W = ie.operand;
            switch (W.kind) {
              case 9:
              case 10:
                return P(W);
              default:
                return E.failBadSyntaxKind(W);
            }
          }
          case 9:
            return t.createIdentifier("Number");
          case 10:
            return pe("BigInt", 7);
          case 112:
          case 97:
            return t.createIdentifier("Boolean");
          case 106:
            return t.createVoidZero();
          default:
            return E.failBadSyntaxKind(ie);
        }
      }
      function N(ie, W) {
        let Q;
        for (let se of ie) {
          if (se = pD(se), se.kind === 146) {
            if (W) return t.createVoidZero();
            continue;
          }
          if (se.kind === 159) {
            if (!W) return t.createIdentifier("Object");
            continue;
          }
          if (se.kind === 133) return t.createIdentifier("Object");
          if (!c && (B0(se) && se.literal.kind === 106 || se.kind === 157)) continue;
          const he = D(se);
          if (Fe(he) && he.escapedText === "Object") return he;
          if (Q) {
            if (!M(Q, he)) return t.createIdentifier("Object");
          } else Q = he;
        }
        return Q ?? t.createVoidZero();
      }
      function M(ie, W) {
        return Ko(ie) ? Ko(W) : Fe(ie) ? Fe(W) && ie.escapedText === W.escapedText : Ln(ie) ? Ln(W) && M(ie.expression, W.expression) && M(ie.name, W.name) : dk(ie) ? dk(W) && V_(ie.expression) && ie.expression.text === "0" && V_(W.expression) && W.expression.text === "0" : Ts(ie) ? Ts(W) && ie.text === W.text : P6(ie) ? P6(W) && M(ie.expression, W.expression) : E_(ie) ? E_(W) && M(ie.expression, W.expression) : MS(ie) ? MS(W) && M(ie.condition, W.condition) && M(ie.whenTrue, W.whenTrue) && M(ie.whenFalse, W.whenFalse) : un(ie) ? un(W) && ie.operatorToken.kind === W.operatorToken.kind && M(ie.left, W.left) && M(ie.right, W.right) : !1;
      }
      function R(ie) {
        const W = i.getTypeReferenceSerializationKind(ie.typeName, u ?? _);
        switch (W) {
          case 0:
            if (cr(ie, (he) => he.parent && Hb(he.parent) && (he.parent.trueType === he || he.parent.falseType === he))) return t.createIdentifier("Object");
            const Q = L(ie.typeName), se = t.createTempVariable(n);
            return t.createConditionalExpression(t.createTypeCheck(t.createAssignment(se, Q), "function"), void 0, se, void 0, t.createIdentifier("Object"));
          case 1:
            return z(ie.typeName);
          case 2:
            return t.createVoidZero();
          case 4:
            return pe("BigInt", 7);
          case 6:
            return t.createIdentifier("Boolean");
          case 3:
            return t.createIdentifier("Number");
          case 5:
            return t.createIdentifier("String");
          case 7:
            return t.createIdentifier("Array");
          case 8:
            return pe("Symbol", 2);
          case 10:
            return t.createIdentifier("Function");
          case 9:
            return t.createIdentifier("Promise");
          case 11:
            return t.createIdentifier("Object");
          default:
            return E.assertNever(W);
        }
      }
      function G(ie, W) {
        return t.createLogicalAnd(t.createStrictInequality(t.createTypeOfExpression(ie), t.createStringLiteral("undefined")), W);
      }
      function L(ie) {
        if (ie.kind === 80) {
          const se = z(ie);
          return G(se, se);
        }
        if (ie.left.kind === 80) return G(z(ie.left), z(ie));
        const W = L(ie.left), Q = t.createTempVariable(n);
        return t.createLogicalAnd(t.createLogicalAnd(W.left, t.createStrictInequality(t.createAssignment(Q, W.right), t.createVoidZero())), t.createPropertyAccessExpression(Q, ie.right));
      }
      function z(ie) {
        switch (ie.kind) {
          case 80:
            const W = eo(pt(Nv.cloneNode(ie), ie), ie.parent);
            return W.original = void 0, eo(W, Ca(_)), W;
          case 167:
            return H(ie);
        }
      }
      function H(ie) {
        return t.createPropertyAccessExpression(z(ie.left), ie.right);
      }
      function U(ie) {
        return t.createConditionalExpression(t.createTypeCheck(t.createIdentifier(ie), "function"), void 0, t.createIdentifier(ie), void 0, t.createIdentifier("Object"));
      }
      function pe(ie, W) {
        return o < W ? U(ie) : t.createIdentifier(ie);
      }
    }
    function tie(e) {
      const { factory: t, getEmitHelperFactory: n, hoistVariableDeclaration: i } = e, a = e.getEmitResolver(), o = Ps(e.getCompilerOptions()), c = e.onSubstituteNode;
      e.onSubstituteNode = K;
      let _;
      return Xd(e, u);
      function u(ue) {
        const Ie = Tr(ue, g, e);
        return th(Ie, e.readEmitHelpers()), Ie;
      }
      function d(ue) {
        return pl(ue) ? void 0 : ue;
      }
      function g(ue) {
        if (!(ue.transformFlags & 33554432)) return ue;
        switch (ue.kind) {
          case 171:
            return;
          case 264:
            return h(ue);
          case 232:
            return M(ue);
          case 177:
            return R(ue);
          case 175:
            return L(ue);
          case 179:
            return H(ue);
          case 178:
            return z(ue);
          case 173:
            return U(ue);
          case 170:
            return pe(ue);
          default:
            return Tr(ue, g, e);
        }
      }
      function h(ue) {
        return w0(!0, ue) || aD(!0, ue) ? ig(w0(!0, ue) ? N(ue, ue.name) : P(ue, ue.name)) : Tr(ue, g, e);
      }
      function S(ue) {
        return !!(ue.transformFlags & 536870912);
      }
      function T(ue) {
        return _t(ue, S);
      }
      function k(ue) {
        for (const Ie of ue.members) {
          if (!e2(Ie)) continue;
          const Xe = ZF(Ie, ue, !0);
          if (_t(Xe?.decorators, S) || _t(Xe?.parameters, T)) return !0;
        }
        return !1;
      }
      function D(ue, Ie) {
        let Xe = [];
        return Q(Xe, ue, !1), Q(Xe, ue, !0), k(ue) && (Ie = pt(t.createNodeArray([...Ie, t.createClassStaticBlockDeclaration(t.createBlock(Xe, !0))]), Ie), Xe = void 0), {
          decorationStatements: Xe,
          members: Ie
        };
      }
      function P(ue, Ie) {
        const Xe = Fr(ue.modifiers, d, hs), Ft = Fr(ue.heritageClauses, g, kf);
        let Ut = Fr(ue.members, g, al), Xt = [];
        return { members: Ut, decorationStatements: Xt } = D(ue, Ut), Mn([t.updateClassDeclaration(ue, Xe, Ie, void 0, Ft, Ut)], Xt);
      }
      function N(ue, Ie) {
        const Xe = Qn(ue, 32), Ft = Qn(ue, 2048), Ut = Fr(ue.modifiers, (Me) => gN(Me) || pl(Me) ? void 0 : Me, ec), Xt = Em(ue), Ar = Ae(ue), Ct = o < 2 ? t.getInternalName(ue, !1, !0) : t.getLocalName(ue, !1, !0), Kt = Fr(ue.heritageClauses, g, kf);
        let zr = Fr(ue.members, g, al), _i = [];
        ({ members: zr, decorationStatements: _i } = D(ue, zr));
        const Gr = o >= 9 && !!Ar && _t(zr, (Me) => ga(Me) && Qn(Me, 256) || Bc(Me));
        Gr && (zr = pt(t.createNodeArray([t.createClassStaticBlockDeclaration(t.createBlock([t.createExpressionStatement(t.createAssignment(Ar, t.createThis()))])), ...zr]), zr));
        const Nt = t.createClassExpression(Ut, Ie && Ko(Ie) ? void 0 : Ie, void 0, Kt, zr);
        Fn(Nt, ue), pt(Nt, Xt);
        const Li = Ar && !Gr ? t.createAssignment(Ar, Nt) : Nt, ri = t.createVariableDeclaration(Ct, void 0, void 0, Li);
        Fn(ri, ue);
        const Zr = t.createVariableDeclarationList([ri], 1), ni = t.createVariableStatement(void 0, Zr);
        Fn(ni, ue), pt(ni, Xt), fl(ni, ue);
        const ra = [ni];
        if (Mn(ra, _i), $(ra, ue), Xe) if (Ft) {
          const Me = t.createExportDefault(Ct);
          ra.push(Me);
        } else {
          const Me = t.createExternalModuleExport(t.getDeclarationName(ue));
          ra.push(Me);
        }
        return ra;
      }
      function M(ue) {
        return t.updateClassExpression(ue, Fr(ue.modifiers, d, hs), ue.name, void 0, Fr(ue.heritageClauses, g, kf), Fr(ue.members, g, al));
      }
      function R(ue) {
        return t.updateConstructorDeclaration(ue, Fr(ue.modifiers, d, hs), Fr(ue.parameters, g, Fi), Ze(ue.body, g, Wa));
      }
      function G(ue, Ie) {
        return ue !== Ie && (fl(ue, Ie), As(ue, Em(Ie))), ue;
      }
      function L(ue) {
        return G(t.updateMethodDeclaration(ue, Fr(ue.modifiers, d, hs), ue.asteriskToken, E.checkDefined(Ze(ue.name, g, il)), void 0, void 0, Fr(ue.parameters, g, Fi), void 0, Ze(ue.body, g, Wa)), ue);
      }
      function z(ue) {
        return G(t.updateGetAccessorDeclaration(ue, Fr(ue.modifiers, d, hs), E.checkDefined(Ze(ue.name, g, il)), Fr(ue.parameters, g, Fi), void 0, Ze(ue.body, g, Wa)), ue);
      }
      function H(ue) {
        return G(t.updateSetAccessorDeclaration(ue, Fr(ue.modifiers, d, hs), E.checkDefined(Ze(ue.name, g, il)), Fr(ue.parameters, g, Fi), Ze(ue.body, g, Wa)), ue);
      }
      function U(ue) {
        if (!(ue.flags & 33554432 || Qn(ue, 128)))
          return G(t.updatePropertyDeclaration(ue, Fr(ue.modifiers, d, hs), E.checkDefined(Ze(ue.name, g, il)), void 0, void 0, Ze(ue.initializer, g, dt)), ue);
      }
      function pe(ue) {
        const Ie = t.updateParameterDeclaration(ue, kre(t, ue.modifiers), ue.dotDotDotToken, E.checkDefined(Ze(ue.name, g, pS)), void 0, void 0, Ze(ue.initializer, g, dt));
        return Ie !== ue && (fl(Ie, ue), pt(Ie, Em(ue)), As(Ie, Em(ue)), ln(Ie.name, 64)), Ie;
      }
      function ie(ue) {
        return YD(ue.expression, "___metadata");
      }
      function W(ue) {
        if (!ue) return;
        const { false: Ie, true: Xe } = QR(ue.decorators, ie), Ft = [];
        return Mn(Ft, or(Ie, Be)), Mn(Ft, ks(ue.parameters, ce)), Mn(Ft, or(Xe, Be)), Ft;
      }
      function Q(ue, Ie, Xe) {
        Mn(ue, or(fe(Ie, Xe), (Ft) => t.createExpressionStatement(Ft)));
      }
      function se(ue, Ie, Xe) {
        return nA(!0, ue, Xe) && Ie === es(ue);
      }
      function he(ue, Ie) {
        return dn(ue.members, (Xe) => se(Xe, Ie, ue));
      }
      function fe(ue, Ie) {
        const Xe = he(ue, Ie);
        let Ft;
        for (const Ut of Xe) Ft = kr(Ft, de(ue, Ut));
        return Ft;
      }
      function de(ue, Ie) {
        const Xe = W(ZF(Ie, ue, !0));
        if (!Xe) return;
        const Ft = ot(ue, Ie), Ut = oe(Ie, !Qn(Ie, 128)), Xt = ga(Ie) && !km(Ie) ? t.createVoidZero() : t.createNull(), Ar = n().createDecorateHelper(Xe, Ft, Ut, Xt);
        return ln(Ar, 3072), As(Ar, Em(Ie)), Ar;
      }
      function $(ue, Ie) {
        const Xe = Se(Ie);
        Xe && ue.push(Fn(t.createExpressionStatement(Xe), Ie));
      }
      function Se(ue) {
        const Ie = W(aU(ue, !0));
        if (!Ie) return;
        const Xe = _ && _[w_(ue)], Ft = o < 2 ? t.getInternalName(ue, !1, !0) : t.getDeclarationName(ue, !1, !0), Ut = n().createDecorateHelper(Ie, Ft), Xt = t.createAssignment(Ft, Xe ? t.createAssignment(Xe, Ut) : Ut);
        return ln(Xt, 3072), As(Xt, Em(ue)), Xt;
      }
      function Be(ue) {
        return E.checkDefined(Ze(ue.expression, g, dt));
      }
      function ce(ue, Ie) {
        let Xe;
        if (ue) {
          Xe = [];
          for (const Ft of ue) {
            const Ut = n().createParamHelper(Be(Ft), Ie);
            pt(Ut, Ft.expression), ln(Ut, 3072), Xe.push(Ut);
          }
        }
        return Xe;
      }
      function oe(ue, Ie) {
        const Xe = ue.name;
        return Oi(Xe) ? t.createIdentifier("") : _s(Xe) ? Ie && !Lm(Xe.expression) ? t.getGeneratedNameForNode(Xe) : Xe.expression : Fe(Xe) ? t.createStringLiteral(On(Xe)) : t.cloneNode(Xe);
      }
      function ge() {
        _ || (e.enableSubstitution(80), _ = []);
      }
      function Ae(ue) {
        if (a.hasNodeCheckFlag(ue, 262144)) {
          ge();
          const Ie = t.createUniqueName(ue.name && !Ko(ue.name) ? On(ue.name) : "default");
          return _[w_(ue)] = Ie, i(Ie), Ie;
        }
      }
      function Ne(ue) {
        return t.createPropertyAccessExpression(t.getDeclarationName(ue), "prototype");
      }
      function ot(ue, Ie) {
        return es(Ie) ? t.getDeclarationName(ue) : Ne(ue);
      }
      function K(ue, Ie) {
        return Ie = c(ue, Ie), ue === 1 ? ke(Ie) : Ie;
      }
      function ke(ue) {
        return ue.kind === 80 ? ae(ue) : ue;
      }
      function ae(ue) {
        return Ce(ue) ?? ue;
      }
      function Ce(ue) {
        if (_ && a.hasNodeCheckFlag(ue, 536870912)) {
          const Ie = a.getReferencedValueDeclaration(ue);
          if (Ie) {
            const Xe = _[Ie.id];
            if (Xe) {
              const Ft = t.cloneNode(Xe);
              return As(Ft, ue), fl(Ft, ue), Ft;
            }
          }
        }
      }
    }
    function rie(e) {
      const { factory: t, getEmitHelperFactory: n, startLexicalEnvironment: i, endLexicalEnvironment: a, hoistVariableDeclaration: o } = e, c = Ps(e.getCompilerOptions());
      let _, u, d, g, h, S;
      return Xd(e, T);
      function T(q) {
        _ = void 0, S = !1;
        const j = Tr(q, U, e);
        return th(j, e.readEmitHelpers()), S && (AS(j, 32), S = !1), j;
      }
      function k() {
        switch (u = void 0, d = void 0, g = void 0, _?.kind) {
          case "class":
            u = _.classInfo;
            break;
          case "class-element":
            u = _.next.classInfo, d = _.classThis, g = _.classSuper;
            break;
          case "name":
            const q = _.next.next.next;
            q?.kind === "class-element" && (u = q.next.classInfo, d = q.classThis, g = q.classSuper);
            break;
        }
      }
      function D(q) {
        _ = {
          kind: "class",
          next: _,
          classInfo: q,
          savedPendingExpressions: h
        }, h = void 0, k();
      }
      function P() {
        E.assert(_?.kind === "class", "Incorrect value for top.kind.", () => `Expected top.kind to be 'class' but got '${_?.kind}' instead.`), h = _.savedPendingExpressions, _ = _.next, k();
      }
      function N(q) {
        var j, Re;
        E.assert(_?.kind === "class", "Incorrect value for top.kind.", () => `Expected top.kind to be 'class' but got '${_?.kind}' instead.`), _ = {
          kind: "class-element",
          next: _
        }, (Bc(q) || ga(q) && vl(q)) && (_.classThis = (j = _.next.classInfo) == null ? void 0 : j.classThis, _.classSuper = (Re = _.next.classInfo) == null ? void 0 : Re.classSuper), k();
      }
      function M() {
        var q;
        E.assert(_?.kind === "class-element", "Incorrect value for top.kind.", () => `Expected top.kind to be 'class-element' but got '${_?.kind}' instead.`), E.assert(((q = _.next) == null ? void 0 : q.kind) === "class", "Incorrect value for top.next.kind.", () => {
          var j;
          return `Expected top.next.kind to be 'class' but got '${(j = _.next) == null ? void 0 : j.kind}' instead.`;
        }), _ = _.next, k();
      }
      function R() {
        E.assert(_?.kind === "class-element", "Incorrect value for top.kind.", () => `Expected top.kind to be 'class-element' but got '${_?.kind}' instead.`), _ = {
          kind: "name",
          next: _
        }, k();
      }
      function G() {
        E.assert(_?.kind === "name", "Incorrect value for top.kind.", () => `Expected top.kind to be 'name' but got '${_?.kind}' instead.`), _ = _.next, k();
      }
      function L() {
        _?.kind === "other" ? (E.assert(!h), _.depth++) : (_ = {
          kind: "other",
          next: _,
          depth: 0,
          savedPendingExpressions: h
        }, h = void 0, k());
      }
      function z() {
        E.assert(_?.kind === "other", "Incorrect value for top.kind.", () => `Expected top.kind to be 'other' but got '${_?.kind}' instead.`), _.depth > 0 ? (E.assert(!h), _.depth--) : (h = _.savedPendingExpressions, _ = _.next, k());
      }
      function H(q) {
        return !!(q.transformFlags & 33554432) || !!d && !!(q.transformFlags & 16384) || !!d && !!g && !!(q.transformFlags & 134217728);
      }
      function U(q) {
        if (!H(q)) return q;
        switch (q.kind) {
          case 171:
            return E.fail("Use `modifierVisitor` instead.");
          case 264:
            return Be(q);
          case 232:
            return ce(q);
          case 177:
          case 173:
          case 176:
            return E.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");
          case 170:
            return Ar(q);
          case 227:
            return Gr(q, !1);
          case 304:
            return ra(q);
          case 261:
            return Me(q);
          case 209:
            return vt(q);
          case 278:
            return Ye(q);
          case 110:
            return Ie(q);
          case 249:
            return zr(q);
          case 245:
            return _i(q);
          case 357:
            return Li(q, !1);
          case 218:
            return Pt(q, !1);
          case 356:
            return ne(q, !1);
          case 214:
            return Xe(q);
          case 216:
            return Ft(q);
          case 225:
          case 226:
            return Nt(q, !1);
          case 212:
            return Ut(q);
          case 213:
            return Xt(q);
          case 168:
            return ni(q);
          case 175:
          case 179:
          case 178:
          case 219:
          case 263: {
            L();
            const j = Tr(q, pe, e);
            return z(), j;
          }
          default:
            return Tr(q, pe, e);
        }
      }
      function pe(q) {
        if (q.kind !== 171)
          return U(q);
      }
      function ie(q) {
        if (q.kind !== 171)
          return q;
      }
      function W(q) {
        switch (q.kind) {
          case 177:
            return Ae(q);
          case 175:
            return K(q);
          case 178:
            return ke(q);
          case 179:
            return ae(q);
          case 173:
            return ue(q);
          case 176:
            return Ce(q);
          default:
            return U(q);
        }
      }
      function Q(q) {
        switch (q.kind) {
          case 225:
          case 226:
            return Nt(q, !0);
          case 227:
            return Gr(q, !0);
          case 357:
            return Li(q, !0);
          case 218:
            return Pt(q, !0);
          default:
            return U(q);
        }
      }
      function se(q) {
        let j = q.name && Fe(q.name) && !Ko(q.name) ? On(q.name) : q.name && Oi(q.name) && !Ko(q.name) ? On(q.name).slice(1) : q.name && Ts(q.name) && Y_(q.name.text, 99) ? q.name.text : Zn(q) ? "class" : "member";
        return Wg(q) && (j = `get_${j}`), vm(q) && (j = `set_${j}`), q.name && Oi(q.name) && (j = `private_${j}`), es(q) && (j = `static_${j}`), "_" + j;
      }
      function he(q, j) {
        return t.createUniqueName(`${se(q)}_${j}`, 24);
      }
      function fe(q, j) {
        return t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(q, void 0, void 0, j)], 1));
      }
      function de(q) {
        const j = t.createUniqueName("_metadata", 48);
        let Re, $e, ye = !1, Ke = !1, pr = !1, Pr, vr, fn;
        if (o6(!1, q)) {
          const Cr = _t(q.members, (et) => (qu(et) || R_(et)) && vl(et));
          Pr = t.createUniqueName("_classThis", Cr ? 24 : 48);
        }
        for (const Cr of q.members) {
          if (kx(Cr) && nA(!1, Cr, q)) if (vl(Cr)) {
            if (!$e) {
              $e = t.createUniqueName("_staticExtraInitializers", 48);
              const et = n().createRunInitializersHelper(Pr ?? t.createThis(), $e);
              As(et, q.name ?? Vh(q)), vr ?? (vr = []), vr.push(et);
            }
          } else {
            if (!Re) {
              Re = t.createUniqueName("_instanceExtraInitializers", 48);
              const et = n().createRunInitializersHelper(t.createThis(), Re);
              As(et, q.name ?? Vh(q)), fn ?? (fn = []), fn.push(et);
            }
            Re ?? (Re = t.createUniqueName("_instanceExtraInitializers", 48));
          }
          if (Bc(Cr) ? Pk(Cr) || (ye = !0) : ga(Cr) && (vl(Cr) ? ye || (ye = !!Cr.initializer || tp(Cr)) : Ke || (Ke = !AB(Cr))), (qu(Cr) || R_(Cr)) && vl(Cr) && (pr = !0), $e && Re && ye && Ke && pr) break;
        }
        return {
          class: q,
          classThis: Pr,
          metadataReference: j,
          instanceMethodExtraInitializersName: Re,
          staticMethodExtraInitializersName: $e,
          hasStaticInitializers: ye,
          hasNonAmbientInstanceFields: Ke,
          hasStaticPrivateClassElements: pr,
          pendingStaticInitializers: vr,
          pendingInstanceInitializers: fn
        };
      }
      function $(q) {
        i(), !cU(q) && w0(!1, q) && (q = t9(e, q, t.createStringLiteral("")));
        const j = t.getLocalName(q, !1, !1, !0), Re = de(q), $e = [];
        let ye, Ke, pr, Pr, vr = !1;
        const fn = Ge(aU(q, !1));
        fn && (Re.classDecoratorsName = t.createUniqueName("_classDecorators", 48), Re.classDescriptorName = t.createUniqueName("_classDescriptor", 48), Re.classExtraInitializersName = t.createUniqueName("_classExtraInitializers", 48), E.assertIsDefined(Re.classThis), $e.push(fe(Re.classDecoratorsName, t.createArrayLiteralExpression(fn)), fe(Re.classDescriptorName), fe(Re.classExtraInitializersName, t.createArrayLiteralExpression()), fe(Re.classThis)), Re.hasStaticPrivateClassElements && (vr = !0, S = !0));
        const Cr = vA(q.heritageClauses, 96), et = Cr && ul(Cr.types), kt = et && Ze(et.expression, U, dt);
        if (kt) {
          Re.classSuper = t.createUniqueName("_classSuper", 48);
          const Qt = Ic(kt), ct = Hc(Qt) && !Qt.name || Lo(Qt) && !Qt.name || Bo(Qt) ? t.createComma(t.createNumericLiteral(0), kt) : kt;
          $e.push(fe(Re.classSuper, ct));
          const wn = t.updateExpressionWithTypeArguments(et, Re.classSuper, void 0), Mi = t.updateHeritageClause(Cr, [wn]);
          Pr = t.createNodeArray([Mi]);
        }
        const wt = Re.classThis ?? t.createThis();
        D(Re), ye = kr(ye, Oe(Re.metadataReference, Re.classSuper));
        let qt = q.members;
        if (qt = Fr(qt, (Qt) => yc(Qt) ? Qt : W(Qt), al), qt = Fr(qt, (Qt) => yc(Qt) ? W(Qt) : Qt, al), h) {
          let Qt;
          for (let ct of h) {
            ct = Ze(ct, function Mi(os) {
              return os.transformFlags & 16384 ? os.kind === 110 ? (Qt || (Qt = t.createUniqueName("_outerThis", 16), $e.unshift(fe(Qt, t.createThis()))), Qt) : Tr(os, Mi, e) : os;
            }, dt);
            const wn = t.createExpressionStatement(ct);
            ye = kr(ye, wn);
          }
          h = void 0;
        }
        if (P(), _t(Re.pendingInstanceInitializers) && !Xg(q)) {
          const Qt = oe(q, Re);
          if (Qt) {
            const ct = Jd(q), wn = !!(ct && Ic(ct.expression).kind !== 106), Mi = [];
            if (wn) {
              const cs = t.createSpreadElement(t.createIdentifier("arguments")), xa = t.createCallExpression(t.createSuper(), void 0, [cs]);
              Mi.push(t.createExpressionStatement(xa));
            }
            Mn(Mi, Qt);
            const os = t.createBlock(Mi, !0);
            pr = t.createConstructorDeclaration(void 0, [], os);
          }
        }
        if (Re.staticMethodExtraInitializersName && $e.push(fe(Re.staticMethodExtraInitializersName, t.createArrayLiteralExpression())), Re.instanceMethodExtraInitializersName && $e.push(fe(Re.instanceMethodExtraInitializersName, t.createArrayLiteralExpression())), Re.memberInfos && Dl(Re.memberInfos, (Qt, ct) => {
          es(ct) && ($e.push(fe(Qt.memberDecoratorsName)), Qt.memberInitializersName && $e.push(fe(Qt.memberInitializersName, t.createArrayLiteralExpression())), Qt.memberExtraInitializersName && $e.push(fe(Qt.memberExtraInitializersName, t.createArrayLiteralExpression())), Qt.memberDescriptorName && $e.push(fe(Qt.memberDescriptorName)));
        }), Re.memberInfos && Dl(Re.memberInfos, (Qt, ct) => {
          es(ct) || ($e.push(fe(Qt.memberDecoratorsName)), Qt.memberInitializersName && $e.push(fe(Qt.memberInitializersName, t.createArrayLiteralExpression())), Qt.memberExtraInitializersName && $e.push(fe(Qt.memberExtraInitializersName, t.createArrayLiteralExpression())), Qt.memberDescriptorName && $e.push(fe(Qt.memberDescriptorName)));
        }), ye = Mn(ye, Re.staticNonFieldDecorationStatements), ye = Mn(ye, Re.nonStaticNonFieldDecorationStatements), ye = Mn(ye, Re.staticFieldDecorationStatements), ye = Mn(ye, Re.nonStaticFieldDecorationStatements), Re.classDescriptorName && Re.classDecoratorsName && Re.classExtraInitializersName && Re.classThis) {
          ye ?? (ye = []);
          const Qt = t.createPropertyAssignment("value", wt), ct = t.createObjectLiteralExpression([Qt]), wn = t.createAssignment(Re.classDescriptorName, ct), Mi = t.createPropertyAccessExpression(wt, "name"), os = n().createESDecorateHelper(t.createNull(), wn, Re.classDecoratorsName, {
            kind: "class",
            name: Mi,
            metadata: Re.metadataReference
          }, t.createNull(), Re.classExtraInitializersName), cs = t.createExpressionStatement(os);
          As(cs, Vh(q)), ye.push(cs);
          const xa = t.createPropertyAccessExpression(Re.classDescriptorName, "value"), oo = t.createAssignment(Re.classThis, xa), To = t.createAssignment(j, oo);
          ye.push(t.createExpressionStatement(To));
        }
        if (ye.push(rt(wt, Re.metadataReference)), _t(Re.pendingStaticInitializers)) {
          for (const Qt of Re.pendingStaticInitializers) {
            const ct = t.createExpressionStatement(Qt);
            As(ct, M0(Qt)), Ke = kr(Ke, ct);
          }
          Re.pendingStaticInitializers = void 0;
        }
        if (Re.classExtraInitializersName) {
          const Qt = n().createRunInitializersHelper(wt, Re.classExtraInitializersName), ct = t.createExpressionStatement(Qt);
          As(ct, q.name ?? Vh(q)), Ke = kr(Ke, ct);
        }
        ye && Ke && !Re.hasStaticInitializers && (Mn(ye, Ke), Ke = void 0);
        const Ir = ye && t.createClassStaticBlockDeclaration(t.createBlock(ye, !0));
        Ir && vr && eN(Ir, 32);
        const Yt = Ke && t.createClassStaticBlockDeclaration(t.createBlock(Ke, !0));
        if (Ir || pr || Yt) {
          const Qt = [], ct = qt.findIndex(Pk);
          Ir ? (Mn(Qt, qt, 0, ct + 1), Qt.push(Ir), Mn(Qt, qt, ct + 1)) : Mn(Qt, qt), pr && Qt.push(pr), Yt && Qt.push(Yt), qt = pt(t.createNodeArray(Qt), qt);
        }
        const Jt = a();
        let $t;
        if (fn) {
          $t = t.createClassExpression(void 0, void 0, void 0, Pr, qt), Re.classThis && ($t = $ne(t, $t, Re.classThis));
          const Qt = t.createVariableDeclaration(j, void 0, void 0, $t), ct = t.createVariableDeclarationList([Qt]), wn = Re.classThis ? t.createAssignment(j, Re.classThis) : j;
          $e.push(t.createVariableStatement(void 0, ct), t.createReturnStatement(wn));
        } else
          $t = t.createClassExpression(void 0, q.name, void 0, Pr, qt), $e.push(t.createReturnStatement($t));
        if (vr) {
          AS($t, 32);
          for (const Qt of $t.members) (qu(Qt) || R_(Qt)) && vl(Qt) && AS(Qt, 32);
        }
        return Fn($t, q), t.createImmediatelyInvokedArrowFunction(t.mergeLexicalEnvironment($e, Jt));
      }
      function Se(q) {
        return w0(!1, q) || aD(!1, q);
      }
      function Be(q) {
        if (Se(q)) {
          const j = [], Re = rc(q, Zn) ?? q, $e = Re.name ? t.createStringLiteralFromNode(Re.name) : t.createStringLiteral("default"), ye = Qn(q, 32), Ke = Qn(q, 2048);
          if (q.name || (q = t9(e, q, $e)), ye && Ke) {
            const pr = $(q);
            if (q.name) {
              const Pr = t.createVariableDeclaration(t.getLocalName(q), void 0, void 0, pr);
              Fn(Pr, q);
              const vr = t.createVariableDeclarationList([Pr], 1), fn = t.createVariableStatement(void 0, vr);
              j.push(fn);
              const Cr = t.createExportDefault(t.getDeclarationName(q));
              Fn(Cr, q), fl(Cr, Pm(q)), As(Cr, Vh(q)), j.push(Cr);
            } else {
              const Pr = t.createExportDefault(pr);
              Fn(Pr, q), fl(Pr, Pm(q)), As(Pr, Vh(q)), j.push(Pr);
            }
          } else {
            E.assertIsDefined(q.name, "A class declaration that is not a default export must have a name.");
            const pr = $(q), Pr = ye ? ((wt) => ck(wt) ? void 0 : ie(wt)) : ie, vr = Fr(q.modifiers, Pr, hs), fn = t.getLocalName(q, !1, !0), Cr = t.createVariableDeclaration(fn, void 0, void 0, pr);
            Fn(Cr, q);
            const et = t.createVariableDeclarationList([Cr], 1), kt = t.createVariableStatement(vr, et);
            if (Fn(kt, q), fl(kt, Pm(q)), j.push(kt), ye) {
              const wt = t.createExternalModuleExport(fn);
              Fn(wt, q), j.push(wt);
            }
          }
          return ig(j);
        } else {
          const j = Fr(q.modifiers, ie, hs), Re = Fr(q.heritageClauses, U, kf);
          D(void 0);
          const $e = Fr(q.members, W, al);
          return P(), t.updateClassDeclaration(q, j, q.name, void 0, Re, $e);
        }
      }
      function ce(q) {
        if (Se(q)) {
          const j = $(q);
          return Fn(j, q), j;
        } else {
          const j = Fr(q.modifiers, ie, hs), Re = Fr(q.heritageClauses, U, kf);
          D(void 0);
          const $e = Fr(q.members, W, al);
          return P(), t.updateClassExpression(q, j, q.name, void 0, Re, $e);
        }
      }
      function oe(q, j) {
        if (_t(j.pendingInstanceInitializers)) {
          const Re = [];
          return Re.push(t.createExpressionStatement(t.inlineExpressions(j.pendingInstanceInitializers))), j.pendingInstanceInitializers = void 0, Re;
        }
      }
      function ge(q, j, Re, $e, ye, Ke) {
        const pr = $e[ye], Pr = j[pr];
        if (Mn(q, Fr(j, U, Ei, Re, pr - Re)), jS(Pr)) {
          const vr = [];
          ge(vr, Pr.tryBlock.statements, 0, $e, ye + 1, Ke), pt(t.createNodeArray(vr), Pr.tryBlock.statements), q.push(t.updateTryStatement(Pr, t.updateBlock(Pr.tryBlock, vr), Ze(Pr.catchClause, U, Zb), Ze(Pr.finallyBlock, U, Wa)));
        } else
          Mn(q, Fr(j, U, Ei, pr, 1)), Mn(q, Ke);
        Mn(q, Fr(j, U, Ei, pr + 1));
      }
      function Ae(q) {
        N(q);
        const j = Fr(q.modifiers, ie, hs), Re = Fr(q.parameters, U, Fi);
        let $e;
        if (q.body && u) {
          const ye = oe(u.class, u);
          if (ye) {
            const Ke = [], pr = t.copyPrologue(q.body.statements, Ke, !1, U), Pr = QF(q.body.statements, pr);
            Pr.length > 0 ? ge(Ke, q.body.statements, pr, Pr, 0, ye) : (Mn(Ke, ye), Mn(Ke, Fr(q.body.statements, U, Ei))), $e = t.createBlock(Ke, !0), Fn($e, q.body), pt($e, q.body);
          }
        }
        return $e ?? ($e = Ze(q.body, U, Wa)), M(), t.updateConstructorDeclaration(q, j, Re, $e);
      }
      function Ne(q, j) {
        return q !== j && (fl(q, j), As(q, Vh(j))), q;
      }
      function ot(q, j, Re) {
        let $e, ye, Ke, pr, Pr, vr;
        if (!j) {
          const et = Fr(q.modifiers, ie, hs);
          return R(), ye = Zr(q.name), G(), {
            modifiers: et,
            referencedName: $e,
            name: ye,
            initializersName: Ke,
            descriptorName: vr,
            thisArg: Pr
          };
        }
        const fn = Ge(ZF(q, j.class, !1)), Cr = Fr(q.modifiers, ie, hs);
        if (fn) {
          const et = he(q, "decorators"), kt = t.createArrayLiteralExpression(fn), wt = t.createAssignment(et, kt), qt = { memberDecoratorsName: et };
          j.memberInfos ?? (j.memberInfos = /* @__PURE__ */ new Map()), j.memberInfos.set(q, qt), h ?? (h = []), h.push(wt);
          const Ir = kx(q) || R_(q) ? es(q) ? j.staticNonFieldDecorationStatements ?? (j.staticNonFieldDecorationStatements = []) : j.nonStaticNonFieldDecorationStatements ?? (j.nonStaticNonFieldDecorationStatements = []) : ga(q) && !R_(q) ? es(q) ? j.staticFieldDecorationStatements ?? (j.staticFieldDecorationStatements = []) : j.nonStaticFieldDecorationStatements ?? (j.nonStaticFieldDecorationStatements = []) : E.fail(), Yt = Dp(q) ? "getter" : ef(q) ? "setter" : hc(q) ? "method" : R_(q) ? "accessor" : ga(q) ? "field" : E.fail();
          let Jt;
          if (Fe(q.name) || Oi(q.name)) Jt = {
            computed: !1,
            name: q.name
          };
          else if (Tm(q.name)) Jt = {
            computed: !0,
            name: t.createStringLiteralFromNode(q.name)
          };
          else {
            const Qt = q.name.expression;
            Tm(Qt) && !Fe(Qt) ? Jt = {
              computed: !0,
              name: t.createStringLiteralFromNode(Qt)
            } : (R(), { referencedName: $e, name: ye } = ri(q.name), Jt = {
              computed: !0,
              name: $e
            }, G());
          }
          const $t = {
            kind: Yt,
            name: Jt,
            static: es(q),
            private: Oi(q.name),
            access: {
              get: ga(q) || Dp(q) || hc(q),
              set: ga(q) || ef(q)
            },
            metadata: j.metadataReference
          };
          if (kx(q)) {
            const Qt = es(q) ? j.staticMethodExtraInitializersName : j.instanceMethodExtraInitializersName;
            E.assertIsDefined(Qt);
            let ct;
            qu(q) && Re && (ct = Re(q, Fr(Cr, (os) => qn(os, ZD), hs)), qt.memberDescriptorName = vr = he(q, "descriptor"), ct = t.createAssignment(vr, ct));
            const wn = n().createESDecorateHelper(t.createThis(), ct ?? t.createNull(), et, $t, t.createNull(), Qt), Mi = t.createExpressionStatement(wn);
            As(Mi, Vh(q)), Ir.push(Mi);
          } else if (ga(q)) {
            Ke = qt.memberInitializersName ?? (qt.memberInitializersName = he(q, "initializers")), pr = qt.memberExtraInitializersName ?? (qt.memberExtraInitializersName = he(q, "extraInitializers")), es(q) && (Pr = j.classThis);
            let Qt;
            qu(q) && km(q) && Re && (Qt = Re(q, void 0), qt.memberDescriptorName = vr = he(q, "descriptor"), Qt = t.createAssignment(vr, Qt));
            const ct = n().createESDecorateHelper(R_(q) ? t.createThis() : t.createNull(), Qt ?? t.createNull(), et, $t, Ke, pr), wn = t.createExpressionStatement(ct);
            As(wn, Vh(q)), Ir.push(wn);
          }
        }
        return ye === void 0 && (R(), ye = Zr(q.name), G()), !_t(Cr) && (hc(q) || ga(q)) && ln(ye, 1024), {
          modifiers: Cr,
          referencedName: $e,
          name: ye,
          initializersName: Ke,
          extraInitializersName: pr,
          descriptorName: vr,
          thisArg: Pr
        };
      }
      function K(q) {
        N(q);
        const { modifiers: j, name: Re, descriptorName: $e } = ot(q, u, ut);
        if ($e)
          return M(), Ne(Ve(j, Re, $e), q);
        {
          const ye = Fr(q.parameters, U, Fi), Ke = Ze(q.body, U, Wa);
          return M(), Ne(t.updateMethodDeclaration(q, j, q.asteriskToken, Re, void 0, void 0, ye, void 0, Ke), q);
        }
      }
      function ke(q) {
        N(q);
        const { modifiers: j, name: Re, descriptorName: $e } = ot(q, u, Qe);
        if ($e)
          return M(), Ne(fr(j, Re, $e), q);
        {
          const ye = Fr(q.parameters, U, Fi), Ke = Ze(q.body, U, Wa);
          return M(), Ne(t.updateGetAccessorDeclaration(q, j, Re, ye, void 0, Ke), q);
        }
      }
      function ae(q) {
        N(q);
        const { modifiers: j, name: Re, descriptorName: $e } = ot(q, u, xt);
        if ($e)
          return M(), Ne(rr(j, Re, $e), q);
        {
          const ye = Fr(q.parameters, U, Fi), Ke = Ze(q.body, U, Wa);
          return M(), Ne(t.updateSetAccessorDeclaration(q, j, Re, ye, Ke), q);
        }
      }
      function Ce(q) {
        N(q);
        let j;
        if (Pk(q)) j = Tr(q, U, e);
        else if (Cw(q)) {
          const Re = d;
          d = void 0, j = Tr(q, U, e), d = Re;
        } else if (q = Tr(q, U, e), j = q, u && (u.hasStaticInitializers = !0, _t(u.pendingStaticInitializers))) {
          const Re = [];
          for (const ye of u.pendingStaticInitializers) {
            const Ke = t.createExpressionStatement(ye);
            As(Ke, M0(ye)), Re.push(Ke);
          }
          const $e = t.createBlock(Re, !0);
          j = [t.createClassStaticBlockDeclaration($e), j], u.pendingStaticInitializers = void 0;
        }
        return M(), j;
      }
      function ue(q) {
        hf(q, Ct) && (q = Cf(e, q, Kt(q.initializer))), N(q), E.assert(!AB(q), "Not yet implemented.");
        const { modifiers: j, name: Re, initializersName: $e, extraInitializersName: ye, descriptorName: Ke, thisArg: pr } = ot(q, u, km(q) ? Dt : void 0);
        i();
        let Pr = Ze(q.initializer, U, dt);
        $e && (Pr = n().createRunInitializersHelper(pr ?? t.createThis(), $e, Pr ?? t.createVoidZero())), es(q) && u && Pr && (u.hasStaticInitializers = !0);
        const vr = a();
        if (_t(vr) && (Pr = t.createImmediatelyInvokedArrowFunction([...vr, t.createReturnStatement(Pr)])), u && (es(q) ? (Pr = we(u, !0, Pr), ye && (u.pendingStaticInitializers ?? (u.pendingStaticInitializers = []), u.pendingStaticInitializers.push(n().createRunInitializersHelper(u.classThis ?? t.createThis(), ye)))) : (Pr = we(u, !1, Pr), ye && (u.pendingInstanceInitializers ?? (u.pendingInstanceInitializers = []), u.pendingInstanceInitializers.push(n().createRunInitializersHelper(t.createThis(), ye))))), M(), km(q) && Ke) {
          const fn = Pm(q), Cr = M0(q), et = q.name;
          let kt = et, wt = et;
          if (_s(et) && !Lm(et.expression)) {
            const $t = dF(et);
            if ($t)
              kt = t.updateComputedPropertyName(et, Ze(et.expression, U, dt)), wt = t.updateComputedPropertyName(et, $t.left);
            else {
              const Qt = t.createTempVariable(o);
              As(Qt, et.expression);
              const ct = Ze(et.expression, U, dt), wn = t.createAssignment(Qt, ct);
              As(wn, et.expression), kt = t.updateComputedPropertyName(et, wn), wt = t.updateComputedPropertyName(et, Qt);
            }
          }
          const qt = Fr(j, ($t) => $t.kind !== 129 ? $t : void 0, hs), Ir = iW(t, q, qt, Pr);
          Fn(Ir, q), ln(Ir, 3072), As(Ir, Cr), As(Ir.name, q.name);
          const Yt = fr(qt, kt, Ke);
          Fn(Yt, q), fl(Yt, fn), As(Yt, Cr);
          const Jt = rr(qt, wt, Ke);
          return Fn(Jt, q), ln(Jt, 3072), As(Jt, Cr), [
            Ir,
            Yt,
            Jt
          ];
        }
        return Ne(t.updatePropertyDeclaration(q, j, Re, void 0, void 0, Pr), q);
      }
      function Ie(q) {
        return d ?? q;
      }
      function Xe(q) {
        if (Z_(q.expression) && d) {
          const j = Ze(q.expression, U, dt), Re = Fr(q.arguments, U, dt), $e = t.createFunctionCallCall(j, d, Re);
          return Fn($e, q), pt($e, q), $e;
        }
        return Tr(q, U, e);
      }
      function Ft(q) {
        if (Z_(q.tag) && d) {
          const j = Ze(q.tag, U, dt), Re = t.createFunctionBindCall(j, d, []);
          Fn(Re, q), pt(Re, q);
          const $e = Ze(q.template, U, Cx);
          return t.updateTaggedTemplateExpression(q, Re, void 0, $e);
        }
        return Tr(q, U, e);
      }
      function Ut(q) {
        if (Z_(q) && Fe(q.name) && d && g) {
          const j = t.createStringLiteralFromNode(q.name), Re = t.createReflectGetCall(g, j, d);
          return Fn(Re, q.expression), pt(Re, q.expression), Re;
        }
        return Tr(q, U, e);
      }
      function Xt(q) {
        if (Z_(q) && d && g) {
          const j = Ze(q.argumentExpression, U, dt), Re = t.createReflectGetCall(g, j, d);
          return Fn(Re, q.expression), pt(Re, q.expression), Re;
        }
        return Tr(q, U, e);
      }
      function Ar(q) {
        hf(q, Ct) && (q = Cf(e, q, Kt(q.initializer)));
        const j = t.updateParameterDeclaration(q, void 0, q.dotDotDotToken, Ze(q.name, U, pS), void 0, void 0, Ze(q.initializer, U, dt));
        return j !== q && (fl(j, q), pt(j, Em(q)), As(j, Em(q)), ln(j.name, 64)), j;
      }
      function Ct(q) {
        return Hc(q) && !q.name && Se(q);
      }
      function Kt(q) {
        const j = Ic(q);
        return Hc(j) && !j.name && !w0(!1, j);
      }
      function zr(q) {
        return t.updateForStatement(q, Ze(q.initializer, Q, bp), Ze(q.condition, U, dt), Ze(q.incrementor, Q, dt), D_(q.statement, U, e));
      }
      function _i(q) {
        return Tr(q, Q, e);
      }
      function Gr(q, j) {
        if (A0(q)) {
          const Re = ha(q.left), $e = Ze(q.right, U, dt);
          return t.updateBinaryExpression(q, Re, q.operatorToken, $e);
        }
        if (Hl(q)) {
          if (hf(q, Ct))
            return q = Cf(e, q, Kt(q.right)), Tr(q, U, e);
          if (Z_(q.left) && d && g) {
            let Re = Po(q.left) ? Ze(q.left.argumentExpression, U, dt) : Fe(q.left.name) ? t.createStringLiteralFromNode(q.left.name) : void 0;
            if (Re) {
              let $e = Ze(q.right, U, dt);
              if (Tw(q.operatorToken.kind)) {
                let Ke = Re;
                Lm(Re) || (Ke = t.createTempVariable(o), Re = t.createAssignment(Ke, Re));
                const pr = t.createReflectGetCall(g, Ke, d);
                Fn(pr, q.left), pt(pr, q.left), $e = t.createBinaryExpression(pr, xw(q.operatorToken.kind), $e), pt($e, q);
              }
              const ye = j ? void 0 : t.createTempVariable(o);
              return ye && ($e = t.createAssignment(ye, $e), pt(ye, q)), $e = t.createReflectSetCall(g, Re, $e, d), Fn($e, q), pt($e, q), ye && ($e = t.createComma($e, ye), pt($e, q)), $e;
            }
          }
        }
        if (q.operatorToken.kind === 28) {
          const Re = Ze(q.left, Q, dt), $e = Ze(q.right, j ? Q : U, dt);
          return t.updateBinaryExpression(q, Re, q.operatorToken, $e);
        }
        return Tr(q, U, e);
      }
      function Nt(q, j) {
        if (q.operator === 46 || q.operator === 47) {
          const Re = Gs(q.operand);
          if (Z_(Re) && d && g) {
            let $e = Po(Re) ? Ze(Re.argumentExpression, U, dt) : Fe(Re.name) ? t.createStringLiteralFromNode(Re.name) : void 0;
            if ($e) {
              let ye = $e;
              Lm($e) || (ye = t.createTempVariable(o), $e = t.createAssignment(ye, $e));
              let Ke = t.createReflectGetCall(g, ye, d);
              Fn(Ke, q), pt(Ke, q);
              const pr = j ? void 0 : t.createTempVariable(o);
              return Ke = cF(t, q, Ke, o, pr), Ke = t.createReflectSetCall(g, $e, Ke, d), Fn(Ke, q), pt(Ke, q), pr && (Ke = t.createComma(Ke, pr), pt(Ke, q)), Ke;
            }
          }
        }
        return Tr(q, U, e);
      }
      function Li(q, j) {
        const Re = j ? LN(q.elements, Q) : LN(q.elements, U, Q);
        return t.updateCommaListExpression(q, Re);
      }
      function ri(q) {
        if (Tm(q) || Oi(q)) return {
          referencedName: t.createStringLiteralFromNode(q),
          name: Ze(q, U, il)
        };
        if (Tm(q.expression) && !Fe(q.expression)) return {
          referencedName: t.createStringLiteralFromNode(q.expression),
          name: Ze(q, U, il)
        };
        const j = t.getGeneratedNameForNode(q);
        o(j);
        const Re = n().createPropKeyHelper(Ze(q.expression, U, dt)), $e = t.createAssignment(j, Re);
        return {
          referencedName: j,
          name: t.updateComputedPropertyName(q, re($e))
        };
      }
      function Zr(q) {
        return _s(q) ? ni(q) : Ze(q, U, il);
      }
      function ni(q) {
        let j = Ze(q.expression, U, dt);
        return Lm(j) || (j = re(j)), t.updateComputedPropertyName(q, j);
      }
      function ra(q) {
        return hf(q, Ct) && (q = Cf(e, q, Kt(q.initializer))), Tr(q, U, e);
      }
      function Me(q) {
        return hf(q, Ct) && (q = Cf(e, q, Kt(q.initializer))), Tr(q, U, e);
      }
      function vt(q) {
        return hf(q, Ct) && (q = Cf(e, q, Kt(q.initializer))), Tr(q, U, e);
      }
      function tr(q) {
        if (bs(q) || hu(q)) return ha(q);
        if (Z_(q) && d && g) {
          const j = Po(q) ? Ze(q.argumentExpression, U, dt) : Fe(q.name) ? t.createStringLiteralFromNode(q.name) : void 0;
          if (j) {
            const Re = t.createTempVariable(void 0), $e = t.createAssignmentTargetWrapper(Re, t.createReflectSetCall(g, j, Re, d));
            return Fn($e, q), pt($e, q), $e;
          }
        }
        return Tr(q, U, e);
      }
      function Ur(q) {
        if (Hl(q, !0)) {
          hf(q, Ct) && (q = Cf(e, q, Kt(q.right)));
          const j = tr(q.left), Re = Ze(q.right, U, dt);
          return t.updateBinaryExpression(q, j, q.operatorToken, Re);
        } else return tr(q);
      }
      function $n(q) {
        if (j_(q.expression)) {
          const j = tr(q.expression);
          return t.updateSpreadElement(q, j);
        }
        return Tr(q, U, e);
      }
      function zn(q) {
        return E.assertNode(q, F3), wp(q) ? $n(q) : Al(q) ? Tr(q, U, e) : Ur(q);
      }
      function na(q) {
        const j = Ze(q.name, U, il);
        if (Hl(q.initializer, !0)) {
          const Re = Ur(q.initializer);
          return t.updatePropertyAssignment(q, j, Re);
        }
        if (j_(q.initializer)) {
          const Re = tr(q.initializer);
          return t.updatePropertyAssignment(q, j, Re);
        }
        return Tr(q, U, e);
      }
      function Ea(q) {
        return hf(q, Ct) && (q = Cf(e, q, Kt(q.objectAssignmentInitializer))), Tr(q, U, e);
      }
      function Da(q) {
        if (j_(q.expression)) {
          const j = tr(q.expression);
          return t.updateSpreadAssignment(q, j);
        }
        return Tr(q, U, e);
      }
      function Lr(q) {
        return E.assertNode(q, O3), ih(q) ? Da(q) : Nu(q) ? Ea(q) : ol(q) ? na(q) : Tr(q, U, e);
      }
      function ha(q) {
        if (hu(q)) {
          const j = Fr(q.elements, zn, dt);
          return t.updateArrayLiteralExpression(q, j);
        } else {
          const j = Fr(q.properties, Lr, zg);
          return t.updateObjectLiteralExpression(q, j);
        }
      }
      function Ye(q) {
        return hf(q, Ct) && (q = Cf(e, q, Kt(q.expression))), Tr(q, U, e);
      }
      function Pt(q, j) {
        const Re = j ? Q : U, $e = Ze(q.expression, Re, dt);
        return t.updateParenthesizedExpression(q, $e);
      }
      function ne(q, j) {
        const Re = j ? Q : U, $e = Ze(q.expression, Re, dt);
        return t.updatePartiallyEmittedExpression(q, $e);
      }
      function tt(q, j) {
        return _t(q) && (j ? E_(j) ? (q.push(j.expression), j = t.updateParenthesizedExpression(j, t.inlineExpressions(q))) : (q.push(j), j = t.inlineExpressions(q)) : j = t.inlineExpressions(q)), j;
      }
      function re(q) {
        const j = tt(h, q);
        return E.assertIsDefined(j), j !== q && (h = void 0), j;
      }
      function we(q, j, Re) {
        const $e = tt(j ? q.pendingStaticInitializers : q.pendingInstanceInitializers, Re);
        return $e !== Re && (j ? q.pendingStaticInitializers = void 0 : q.pendingInstanceInitializers = void 0), $e;
      }
      function Ge(q) {
        if (!q) return;
        const j = [];
        return Mn(j, or(q.decorators, nt)), j;
      }
      function nt(q) {
        const j = Ze(q.expression, U, dt);
        if (ln(j, 3072), jo(Ic(j))) {
          const { target: Re, thisArg: $e } = t.createCallBinding(j, o, c, !0);
          return t.restoreOuterExpressions(j, t.createFunctionBindCall(Re, $e, []));
        }
        return j;
      }
      function it(q, j, Re, $e, ye, Ke, pr) {
        const Pr = t.createFunctionExpression(Re, $e, void 0, void 0, Ke, void 0, pr ?? t.createBlock([]));
        Fn(Pr, q), As(Pr, Vh(q)), ln(Pr, 3072);
        const vr = ye === "get" || ye === "set" ? ye : void 0, fn = t.createStringLiteralFromNode(j, void 0), Cr = n().createSetFunctionNameHelper(Pr, fn, vr), et = t.createPropertyAssignment(t.createIdentifier(ye), Cr);
        return Fn(et, q), As(et, Vh(q)), ln(et, 3072), et;
      }
      function ut(q, j) {
        return t.createObjectLiteralExpression([it(q, q.name, j, q.asteriskToken, "value", Fr(q.parameters, U, Fi), Ze(q.body, U, Wa))]);
      }
      function Qe(q, j) {
        return t.createObjectLiteralExpression([it(q, q.name, j, void 0, "get", [], Ze(q.body, U, Wa))]);
      }
      function xt(q, j) {
        return t.createObjectLiteralExpression([it(q, q.name, j, void 0, "set", Fr(q.parameters, U, Fi), Ze(q.body, U, Wa))]);
      }
      function Dt(q, j) {
        return t.createObjectLiteralExpression([it(q, q.name, j, void 0, "get", [], t.createBlock([t.createReturnStatement(t.createPropertyAccessExpression(t.createThis(), t.getGeneratedPrivateNameForNode(q.name)))])), it(q, q.name, j, void 0, "set", [t.createParameterDeclaration(void 0, void 0, "value")], t.createBlock([t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createThis(), t.getGeneratedPrivateNameForNode(q.name)), t.createIdentifier("value")))]))]);
      }
      function Ve(q, j, Re) {
        return q = Fr(q, ($e) => lk($e) ? $e : void 0, hs), t.createGetAccessorDeclaration(q, j, [], void 0, t.createBlock([t.createReturnStatement(t.createPropertyAccessExpression(Re, t.createIdentifier("value")))]));
      }
      function fr(q, j, Re) {
        return q = Fr(q, ($e) => lk($e) ? $e : void 0, hs), t.createGetAccessorDeclaration(q, j, [], void 0, t.createBlock([t.createReturnStatement(t.createFunctionCallCall(t.createPropertyAccessExpression(Re, t.createIdentifier("get")), t.createThis(), []))]));
      }
      function rr(q, j, Re) {
        return q = Fr(q, ($e) => lk($e) ? $e : void 0, hs), t.createSetAccessorDeclaration(q, j, [t.createParameterDeclaration(void 0, void 0, "value")], t.createBlock([t.createReturnStatement(t.createFunctionCallCall(t.createPropertyAccessExpression(Re, t.createIdentifier("set")), t.createThis(), [t.createIdentifier("value")]))]));
      }
      function Oe(q, j) {
        const Re = t.createVariableDeclaration(q, void 0, void 0, t.createConditionalExpression(t.createLogicalAnd(t.createTypeCheck(t.createIdentifier("Symbol"), "function"), t.createPropertyAccessExpression(t.createIdentifier("Symbol"), "metadata")), t.createToken(58), t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"), "create"), void 0, [j ? ee(j) : t.createNull()]), t.createToken(59), t.createVoidZero()));
        return t.createVariableStatement(void 0, t.createVariableDeclarationList([Re], 2));
      }
      function rt(q, j) {
        const Re = t.createObjectDefinePropertyCall(q, t.createPropertyAccessExpression(t.createIdentifier("Symbol"), "metadata"), t.createPropertyDescriptor({
          configurable: !0,
          writable: !0,
          enumerable: !0,
          value: j
        }, !0));
        return ln(t.createIfStatement(j, t.createExpressionStatement(Re)), 1);
      }
      function ee(q) {
        return t.createBinaryExpression(t.createElementAccessExpression(q, t.createPropertyAccessExpression(t.createIdentifier("Symbol"), "metadata")), 61, t.createNull());
      }
    }
    function nie(e) {
      const { factory: t, getEmitHelperFactory: n, resumeLexicalEnvironment: i, endLexicalEnvironment: a, hoistVariableDeclaration: o } = e, c = e.getEmitResolver(), _ = e.getCompilerOptions(), u = Ps(_);
      let d = 0, g = 0, h, S, T, k;
      const D = [];
      let P = 0;
      const N = e.onEmitNode, M = e.onSubstituteNode;
      return e.onEmitNode = _i, e.onSubstituteNode = Gr, Xd(e, R);
      function R(Me) {
        if (Me.isDeclarationFile) return Me;
        G(1, !1), G(2, !PB(Me, _));
        const vt = Tr(Me, W, e);
        return th(vt, e.readEmitHelpers()), vt;
      }
      function G(Me, vt) {
        P = vt ? P | Me : P & ~Me;
      }
      function L(Me) {
        return (P & Me) !== 0;
      }
      function z() {
        return !L(1);
      }
      function H() {
        return L(2);
      }
      function U(Me, vt, tr) {
        const Ur = Me & ~P;
        if (Ur) {
          G(Ur, !0);
          const $n = vt(tr);
          return G(Ur, !1), $n;
        }
        return vt(tr);
      }
      function pe(Me) {
        return Tr(Me, W, e);
      }
      function ie(Me) {
        switch (Me.kind) {
          case 219:
          case 263:
          case 175:
          case 178:
          case 179:
          case 177:
            return Me;
          case 170:
          case 209:
          case 261:
            break;
          case 80:
            if (k && c.isArgumentsLocalBinding(Me)) return k;
            break;
        }
        return Tr(Me, ie, e);
      }
      function W(Me) {
        if ((Me.transformFlags & 256) === 0) return k ? ie(Me) : Me;
        switch (Me.kind) {
          case 134:
            return;
          case 224:
            return Se(Me);
          case 175:
            return U(3, ce, Me);
          case 263:
            return U(3, Ae, Me);
          case 219:
            return U(3, Ne, Me);
          case 220:
            return U(1, ot, Me);
          case 212:
            return S && Ln(Me) && Me.expression.kind === 108 && S.add(Me.name.escapedText), Tr(Me, W, e);
          case 213:
            return S && Me.expression.kind === 108 && (T = !0), Tr(Me, W, e);
          case 178:
            return U(3, oe, Me);
          case 179:
            return U(3, ge, Me);
          case 177:
            return U(3, Be, Me);
          case 264:
          case 232:
            return U(3, pe, Me);
          default:
            return Tr(Me, W, e);
        }
      }
      function Q(Me) {
        if (VK(Me)) switch (Me.kind) {
          case 244:
            return he(Me);
          case 249:
            return $(Me);
          case 250:
            return fe(Me);
          case 251:
            return de(Me);
          case 300:
            return se(Me);
          case 242:
          case 256:
          case 270:
          case 297:
          case 298:
          case 259:
          case 247:
          case 248:
          case 246:
          case 255:
          case 257:
            return Tr(Me, Q, e);
          default:
            return E.assertNever(Me, "Unhandled node.");
        }
        return W(Me);
      }
      function se(Me) {
        const vt = /* @__PURE__ */ new Set();
        K(Me.variableDeclaration, vt);
        let tr;
        if (vt.forEach((Ur, $n) => {
          h.has($n) && (tr || (tr = new Set(h)), tr.delete($n));
        }), tr) {
          const Ur = h;
          h = tr;
          const $n = Tr(Me, Q, e);
          return h = Ur, $n;
        } else return Tr(Me, Q, e);
      }
      function he(Me) {
        if (ke(Me.declarationList)) {
          const vt = ae(Me.declarationList, !1);
          return vt ? t.createExpressionStatement(vt) : void 0;
        }
        return Tr(Me, W, e);
      }
      function fe(Me) {
        return t.updateForInStatement(Me, ke(Me.initializer) ? ae(Me.initializer, !0) : E.checkDefined(Ze(Me.initializer, W, bp)), E.checkDefined(Ze(Me.expression, W, dt)), D_(Me.statement, Q, e));
      }
      function de(Me) {
        return t.updateForOfStatement(Me, Ze(Me.awaitModifier, W, Az), ke(Me.initializer) ? ae(Me.initializer, !0) : E.checkDefined(Ze(Me.initializer, W, bp)), E.checkDefined(Ze(Me.expression, W, dt)), D_(Me.statement, Q, e));
      }
      function $(Me) {
        const vt = Me.initializer;
        return t.updateForStatement(Me, ke(vt) ? ae(vt, !1) : Ze(Me.initializer, W, bp), Ze(Me.condition, W, dt), Ze(Me.incrementor, W, dt), D_(Me.statement, Q, e));
      }
      function Se(Me) {
        return z() ? Tr(Me, W, e) : Fn(pt(t.createYieldExpression(void 0, Ze(Me.expression, W, dt)), Me), Me);
      }
      function Be(Me) {
        const vt = k;
        k = void 0;
        const tr = t.updateConstructorDeclaration(Me, Fr(Me.modifiers, W, hs), Cc(Me.parameters, W, e), Ft(Me));
        return k = vt, tr;
      }
      function ce(Me) {
        let vt;
        const tr = Gc(Me), Ur = k;
        k = void 0;
        const $n = t.updateMethodDeclaration(Me, Fr(Me.modifiers, W, ec), Me.asteriskToken, Me.name, void 0, void 0, vt = tr & 2 ? Xt(Me) : Cc(Me.parameters, W, e), void 0, tr & 2 ? Ar(Me, vt) : Ft(Me));
        return k = Ur, $n;
      }
      function oe(Me) {
        const vt = k;
        k = void 0;
        const tr = t.updateGetAccessorDeclaration(Me, Fr(Me.modifiers, W, ec), Me.name, Cc(Me.parameters, W, e), void 0, Ft(Me));
        return k = vt, tr;
      }
      function ge(Me) {
        const vt = k;
        k = void 0;
        const tr = t.updateSetAccessorDeclaration(Me, Fr(Me.modifiers, W, ec), Me.name, Cc(Me.parameters, W, e), Ft(Me));
        return k = vt, tr;
      }
      function Ae(Me) {
        let vt;
        const tr = k;
        k = void 0;
        const Ur = Gc(Me), $n = t.updateFunctionDeclaration(Me, Fr(Me.modifiers, W, ec), Me.asteriskToken, Me.name, void 0, vt = Ur & 2 ? Xt(Me) : Cc(Me.parameters, W, e), void 0, Ur & 2 ? Ar(Me, vt) : ap(Me.body, W, e));
        return k = tr, $n;
      }
      function Ne(Me) {
        let vt;
        const tr = k;
        k = void 0;
        const Ur = Gc(Me), $n = t.updateFunctionExpression(Me, Fr(Me.modifiers, W, hs), Me.asteriskToken, Me.name, void 0, vt = Ur & 2 ? Xt(Me) : Cc(Me.parameters, W, e), void 0, Ur & 2 ? Ar(Me, vt) : ap(Me.body, W, e));
        return k = tr, $n;
      }
      function ot(Me) {
        let vt;
        const tr = Gc(Me);
        return t.updateArrowFunction(Me, Fr(Me.modifiers, W, hs), void 0, vt = tr & 2 ? Xt(Me) : Cc(Me.parameters, W, e), void 0, Me.equalsGreaterThanToken, tr & 2 ? Ar(Me, vt) : ap(Me.body, W, e));
      }
      function K({ name: Me }, vt) {
        if (Fe(Me)) vt.add(Me.escapedText);
        else for (const tr of Me.elements) Al(tr) || K(tr, vt);
      }
      function ke(Me) {
        return !!Me && iu(Me) && !(Me.flags & 7) && Me.declarations.some(Xe);
      }
      function ae(Me, vt) {
        Ce(Me);
        const tr = wD(Me);
        return tr.length === 0 ? vt ? Ze(t.converters.convertToAssignmentElementTarget(Me.declarations[0].name), W, dt) : void 0 : t.inlineExpressions(or(tr, Ie));
      }
      function Ce(Me) {
        bt(Me.declarations, ue);
      }
      function ue({ name: Me }) {
        if (Fe(Me)) o(Me);
        else for (const vt of Me.elements) Al(vt) || ue(vt);
      }
      function Ie(Me) {
        const vt = As(t.createAssignment(t.converters.convertToAssignmentElementTarget(Me.name), Me.initializer), Me);
        return E.checkDefined(Ze(vt, W, dt));
      }
      function Xe({ name: Me }) {
        if (Fe(Me)) return h.has(Me.escapedText);
        for (const vt of Me.elements) if (!Al(vt) && Xe(vt)) return !0;
        return !1;
      }
      function Ft(Me) {
        E.assertIsDefined(Me.body);
        const vt = S, tr = T;
        S = /* @__PURE__ */ new Set(), T = !1;
        let Ur = ap(Me.body, W, e);
        const $n = rc(Me, So);
        if (u >= 2 && (c.hasNodeCheckFlag(Me, 256) || c.hasNodeCheckFlag(Me, 128)) && (Gc($n) & 3) !== 3) {
          if (zr(), S.size) {
            const zn = r9(t, c, Me, S);
            D[Hs(zn)] = !0;
            const na = Ur.statements.slice();
            qg(na, [zn]), Ur = t.updateBlock(Ur, na);
          }
          T && (c.hasNodeCheckFlag(Me, 256) ? ak(Ur, qO) : c.hasNodeCheckFlag(Me, 128) && ak(Ur, VO));
        }
        return S = vt, T = tr, Ur;
      }
      function Ut() {
        E.assert(k);
        const Me = t.createVariableDeclaration(k, void 0, void 0, t.createIdentifier("arguments")), vt = t.createVariableStatement(void 0, [Me]);
        return Xu(vt), wm(vt, 2097152), vt;
      }
      function Xt(Me) {
        if (RN(Me.parameters)) return Cc(Me.parameters, W, e);
        const vt = [];
        for (const Ur of Me.parameters) {
          if (Ur.initializer || Ur.dotDotDotToken) {
            if (Me.kind === 220) {
              const zn = t.createParameterDeclaration(void 0, t.createToken(26), t.createUniqueName("args", 8));
              vt.push(zn);
            }
            break;
          }
          const $n = t.createParameterDeclaration(void 0, void 0, t.getGeneratedNameForNode(Ur.name, 8));
          vt.push($n);
        }
        const tr = t.createNodeArray(vt);
        return pt(tr, Me.parameters), tr;
      }
      function Ar(Me, vt) {
        const tr = RN(Me.parameters) ? void 0 : Cc(Me.parameters, W, e);
        i();
        const Ur = rc(Me, Ra).type, $n = u < 2 ? Kt(Ur) : void 0, zn = Me.kind === 220, na = k, Ea = c.hasNodeCheckFlag(Me, 512) && !k;
        Ea && (k = t.createUniqueName("arguments"));
        let Da;
        if (tr) if (zn) {
          const re = [];
          E.assert(vt.length <= Me.parameters.length);
          for (let we = 0; we < Me.parameters.length; we++) {
            E.assert(we < vt.length);
            const Ge = Me.parameters[we], nt = vt[we];
            if (E.assertNode(nt.name, Fe), Ge.initializer || Ge.dotDotDotToken) {
              E.assert(we === vt.length - 1), re.push(t.createSpreadElement(nt.name));
              break;
            }
            re.push(nt.name);
          }
          Da = t.createArrayLiteralExpression(re);
        } else Da = t.createIdentifier("arguments");
        const Lr = h;
        h = /* @__PURE__ */ new Set();
        for (const re of Me.parameters) K(re, h);
        const ha = S, Ye = T;
        zn || (S = /* @__PURE__ */ new Set(), T = !1);
        const Pt = H();
        let ne = Ct(Me.body);
        ne = t.updateBlock(ne, t.mergeLexicalEnvironment(ne.statements, a()));
        let tt;
        if (zn) {
          if (tt = n().createAwaiterHelper(Pt, Da, $n, tr, ne), Ea) {
            const re = t.converters.convertToFunctionBlock(tt);
            tt = t.updateBlock(re, t.mergeLexicalEnvironment(re.statements, [Ut()]));
          }
        } else {
          const re = [];
          re.push(t.createReturnStatement(n().createAwaiterHelper(Pt, Da, $n, tr, ne)));
          const we = u >= 2 && (c.hasNodeCheckFlag(Me, 256) || c.hasNodeCheckFlag(Me, 128));
          if (we && (zr(), S.size)) {
            const nt = r9(t, c, Me, S);
            D[Hs(nt)] = !0, qg(re, [nt]);
          }
          Ea && qg(re, [Ut()]);
          const Ge = t.createBlock(re, !0);
          pt(Ge, Me.body), we && T && (c.hasNodeCheckFlag(Me, 256) ? ak(Ge, qO) : c.hasNodeCheckFlag(Me, 128) && ak(Ge, VO)), tt = Ge;
        }
        return h = Lr, zn || (S = ha, T = Ye, k = na), tt;
      }
      function Ct(Me, vt) {
        return Wa(Me) ? t.updateBlock(Me, Fr(Me.statements, Q, Ei, vt)) : t.converters.convertToFunctionBlock(E.checkDefined(Ze(Me, Q, t5)));
      }
      function Kt(Me) {
        const vt = Me && tA(Me);
        if (vt && S_(vt)) {
          const tr = c.getTypeReferenceSerializationKind(vt);
          if (tr === 1 || tr === 0) return vt;
        }
      }
      function zr() {
        (d & 1) === 0 && (d |= 1, e.enableSubstitution(214), e.enableSubstitution(212), e.enableSubstitution(213), e.enableEmitNotification(264), e.enableEmitNotification(175), e.enableEmitNotification(178), e.enableEmitNotification(179), e.enableEmitNotification(177), e.enableEmitNotification(244));
      }
      function _i(Me, vt, tr) {
        if (d & 1 && ni(vt)) {
          const Ur = (c.hasNodeCheckFlag(vt, 128) ? 128 : 0) | (c.hasNodeCheckFlag(vt, 256) ? 256 : 0);
          if (Ur !== g) {
            const $n = g;
            g = Ur, N(Me, vt, tr), g = $n;
            return;
          }
        } else if (d && D[Hs(vt)]) {
          const Ur = g;
          g = 0, N(Me, vt, tr), g = Ur;
          return;
        }
        N(Me, vt, tr);
      }
      function Gr(Me, vt) {
        return vt = M(Me, vt), Me === 1 && g ? Nt(vt) : vt;
      }
      function Nt(Me) {
        switch (Me.kind) {
          case 212:
            return Li(Me);
          case 213:
            return ri(Me);
          case 214:
            return Zr(Me);
        }
        return Me;
      }
      function Li(Me) {
        return Me.expression.kind === 108 ? pt(t.createPropertyAccessExpression(t.createUniqueName("_super", 48), Me.name), Me) : Me;
      }
      function ri(Me) {
        return Me.expression.kind === 108 ? ra(Me.argumentExpression, Me) : Me;
      }
      function Zr(Me) {
        const vt = Me.expression;
        if (Z_(vt)) {
          const tr = Ln(vt) ? Li(vt) : ri(vt);
          return t.createCallExpression(t.createPropertyAccessExpression(tr, "call"), void 0, [t.createThis(), ...Me.arguments]);
        }
        return Me;
      }
      function ni(Me) {
        const vt = Me.kind;
        return vt === 264 || vt === 177 || vt === 175 || vt === 178 || vt === 179;
      }
      function ra(Me, vt) {
        return g & 256 ? pt(t.createPropertyAccessExpression(t.createCallExpression(t.createUniqueName("_superIndex", 48), void 0, [Me]), "value"), vt) : pt(t.createCallExpression(t.createUniqueName("_superIndex", 48), void 0, [Me]), vt);
      }
    }
    function r9(e, t, n, i) {
      const a = t.hasNodeCheckFlag(n, 256), o = [];
      return i.forEach((c, _) => {
        const u = Ti(_), d = [];
        d.push(e.createPropertyAssignment("get", e.createArrowFunction(void 0, void 0, [], void 0, void 0, ln(e.createPropertyAccessExpression(ln(e.createSuper(), 8), u), 8)))), a && d.push(e.createPropertyAssignment("set", e.createArrowFunction(void 0, void 0, [e.createParameterDeclaration(void 0, void 0, "v", void 0, void 0, void 0)], void 0, void 0, e.createAssignment(ln(e.createPropertyAccessExpression(ln(e.createSuper(), 8), u), 8), e.createIdentifier("v"))))), o.push(e.createPropertyAssignment(u, e.createObjectLiteralExpression(d)));
      }), e.createVariableStatement(void 0, e.createVariableDeclarationList([e.createVariableDeclaration(e.createUniqueName("_super", 48), void 0, void 0, e.createCallExpression(e.createPropertyAccessExpression(e.createIdentifier("Object"), "create"), void 0, [e.createNull(), e.createObjectLiteralExpression(o, !0)]))], 2));
    }
    function iie(e) {
      const { factory: t, getEmitHelperFactory: n, resumeLexicalEnvironment: i, endLexicalEnvironment: a, hoistVariableDeclaration: o } = e, c = e.getEmitResolver(), _ = e.getCompilerOptions(), u = Ps(_), d = e.onEmitNode;
      e.onEmitNode = Ea;
      const g = e.onSubstituteNode;
      e.onSubstituteNode = Da;
      let h = !1, S = 0, T, k, D = 0, P = 0, N, M, R, G;
      const L = [];
      return Xd(e, ie);
      function z(re, we) {
        return P !== (P & ~re | we);
      }
      function H(re, we) {
        const Ge = P;
        return P = (P & ~re | we) & 3, Ge;
      }
      function U(re) {
        P = re;
      }
      function pe(re) {
        M = kr(M, t.createVariableDeclaration(re));
      }
      function ie(re) {
        if (re.isDeclarationFile) return re;
        N = re;
        const we = ot(re);
        return th(we, e.readEmitHelpers()), N = void 0, M = void 0, we;
      }
      function W(re) {
        return de(re, !1);
      }
      function Q(re) {
        return de(re, !0);
      }
      function se(re) {
        if (re.kind !== 134)
          return re;
      }
      function he(re, we, Ge, nt) {
        if (z(Ge, nt)) {
          const it = H(Ge, nt), ut = re(we);
          return U(it), ut;
        }
        return re(we);
      }
      function fe(re) {
        return Tr(re, W, e);
      }
      function de(re, we) {
        if ((re.transformFlags & 128) === 0) return re;
        switch (re.kind) {
          case 224:
            return $(re);
          case 230:
            return Se(re);
          case 254:
            return Be(re);
          case 257:
            return ce(re);
          case 211:
            return ge(re);
          case 227:
            return ke(re, we);
          case 357:
            return ae(re, we);
          case 300:
            return Ce(re);
          case 244:
            return ue(re);
          case 261:
            return Ie(re);
          case 247:
          case 248:
          case 250:
            return he(fe, re, 0, 2);
          case 251:
            return Xt(re, void 0);
          case 249:
            return he(Ft, re, 0, 2);
          case 223:
            return Ut(re);
          case 177:
            return he(Li, re, 2, 1);
          case 175:
            return he(ni, re, 2, 1);
          case 178:
            return he(ri, re, 2, 1);
          case 179:
            return he(Zr, re, 2, 1);
          case 263:
            return he(ra, re, 2, 1);
          case 219:
            return he(vt, re, 2, 1);
          case 220:
            return he(Me, re, 2, 0);
          case 170:
            return Gr(re);
          case 245:
            return Ae(re);
          case 218:
            return Ne(re, we);
          case 216:
            return K(re);
          case 212:
            return R && Ln(re) && re.expression.kind === 108 && R.add(re.name.escapedText), Tr(re, W, e);
          case 213:
            return R && re.expression.kind === 108 && (G = !0), Tr(re, W, e);
          case 264:
          case 232:
            return he(fe, re, 2, 1);
          default:
            return Tr(re, W, e);
        }
      }
      function $(re) {
        return T & 2 && T & 1 ? Fn(pt(t.createYieldExpression(void 0, n().createAwaitHelper(Ze(re.expression, W, dt))), re), re) : Tr(re, W, e);
      }
      function Se(re) {
        if (T & 2 && T & 1) {
          if (re.asteriskToken) {
            const we = Ze(E.checkDefined(re.expression), W, dt);
            return Fn(pt(t.createYieldExpression(void 0, n().createAwaitHelper(t.updateYieldExpression(re, re.asteriskToken, pt(n().createAsyncDelegatorHelper(pt(n().createAsyncValuesHelper(we), we)), we)))), re), re);
          }
          return Fn(pt(t.createYieldExpression(void 0, Kt(re.expression ? Ze(re.expression, W, dt) : t.createVoidZero())), re), re);
        }
        return Tr(re, W, e);
      }
      function Be(re) {
        return T & 2 && T & 1 ? t.updateReturnStatement(re, Kt(re.expression ? Ze(re.expression, W, dt) : t.createVoidZero())) : Tr(re, W, e);
      }
      function ce(re) {
        if (T & 2) {
          const we = BB(re);
          return we.kind === 251 && we.awaitModifier ? Xt(we, re) : t.restoreEnclosingLabel(Ze(we, W, Ei, t.liftToBlock), re);
        }
        return Tr(re, W, e);
      }
      function oe(re) {
        let we;
        const Ge = [];
        for (const nt of re) if (nt.kind === 306) {
          we && (Ge.push(t.createObjectLiteralExpression(we)), we = void 0);
          const it = nt.expression;
          Ge.push(Ze(it, W, dt));
        } else we = kr(we, nt.kind === 304 ? t.createPropertyAssignment(nt.name, Ze(nt.initializer, W, dt)) : Ze(nt, W, zg));
        return we && Ge.push(t.createObjectLiteralExpression(we)), Ge;
      }
      function ge(re) {
        if (re.transformFlags & 65536) {
          const we = oe(re.properties);
          we.length && we[0].kind !== 211 && we.unshift(t.createObjectLiteralExpression());
          let Ge = we[0];
          if (we.length > 1) {
            for (let nt = 1; nt < we.length; nt++) Ge = n().createAssignHelper([Ge, we[nt]]);
            return Ge;
          } else return n().createAssignHelper(we);
        }
        return Tr(re, W, e);
      }
      function Ae(re) {
        return Tr(re, Q, e);
      }
      function Ne(re, we) {
        return Tr(re, we ? Q : W, e);
      }
      function ot(re) {
        const we = H(2, PB(re, _) ? 0 : 1);
        h = !1;
        const Ge = Tr(re, W, e), nt = zi(Ge.statements, M && [t.createVariableStatement(void 0, t.createVariableDeclarationList(M))]), it = t.updateSourceFile(Ge, pt(t.createNodeArray(nt), re.statements));
        return U(we), it;
      }
      function K(re) {
        return lU(e, re, W, N, pe, 0);
      }
      function ke(re, we) {
        return A0(re) && yN(re.left) ? $S(re, W, e, 1, !we) : re.operatorToken.kind === 28 ? t.updateBinaryExpression(re, Ze(re.left, Q, dt), re.operatorToken, Ze(re.right, we ? Q : W, dt)) : Tr(re, W, e);
      }
      function ae(re, we) {
        if (we) return Tr(re, Q, e);
        let Ge;
        for (let it = 0; it < re.elements.length; it++) {
          const ut = re.elements[it], Qe = Ze(ut, it < re.elements.length - 1 ? Q : W, dt);
          (Ge || Qe !== ut) && (Ge || (Ge = re.elements.slice(0, it)), Ge.push(Qe));
        }
        const nt = Ge ? pt(t.createNodeArray(Ge), re.elements) : re.elements;
        return t.updateCommaListExpression(re, nt);
      }
      function Ce(re) {
        if (re.variableDeclaration && Ja(re.variableDeclaration.name) && re.variableDeclaration.name.transformFlags & 65536) {
          const we = t.getGeneratedNameForNode(re.variableDeclaration.name), Ge = n2(t.updateVariableDeclaration(re.variableDeclaration, re.variableDeclaration.name, void 0, void 0, we), W, e, 1);
          let nt = Ze(re.block, W, Wa);
          return _t(Ge) && (nt = t.updateBlock(nt, [t.createVariableStatement(void 0, Ge), ...nt.statements])), t.updateCatchClause(re, t.updateVariableDeclaration(re.variableDeclaration, we, void 0, void 0, void 0), nt);
        }
        return Tr(re, W, e);
      }
      function ue(re) {
        if (Qn(re, 32)) {
          const we = h;
          h = !0;
          const Ge = Tr(re, W, e);
          return h = we, Ge;
        }
        return Tr(re, W, e);
      }
      function Ie(re) {
        if (h) {
          const we = h;
          h = !1;
          const Ge = Xe(re, !0);
          return h = we, Ge;
        }
        return Xe(re, !1);
      }
      function Xe(re, we) {
        return Ja(re.name) && re.name.transformFlags & 65536 ? n2(re, W, e, 1, void 0, we) : Tr(re, W, e);
      }
      function Ft(re) {
        return t.updateForStatement(re, Ze(re.initializer, Q, bp), Ze(re.condition, W, dt), Ze(re.incrementor, Q, dt), D_(re.statement, W, e));
      }
      function Ut(re) {
        return Tr(re, Q, e);
      }
      function Xt(re, we) {
        const Ge = H(0, 2);
        (re.initializer.transformFlags & 65536 || Q4(re.initializer) && yN(re.initializer)) && (re = Ar(re));
        const nt = re.awaitModifier ? zr(re, we, Ge) : t.restoreEnclosingLabel(Tr(re, W, e), we);
        return U(Ge), nt;
      }
      function Ar(re) {
        const we = Gs(re.initializer);
        if (iu(we) || Q4(we)) {
          let Ge, nt;
          const it = t.createTempVariable(void 0), ut = [$z(t, we, it)];
          return Wa(re.statement) ? (Mn(ut, re.statement.statements), Ge = re.statement, nt = re.statement.statements) : re.statement && (kr(ut, re.statement), Ge = re.statement, nt = re.statement), t.updateForOfStatement(re, re.awaitModifier, pt(t.createVariableDeclarationList([pt(t.createVariableDeclaration(it), re.initializer)], 1), re.initializer), re.expression, pt(t.createBlock(pt(t.createNodeArray(ut), nt), !0), Ge));
        }
        return re;
      }
      function Ct(re, we, Ge) {
        const nt = t.createTempVariable(o), it = t.createAssignment(nt, we), ut = t.createExpressionStatement(it);
        As(ut, re.expression);
        const Qe = t.createAssignment(Ge, t.createFalse()), xt = t.createExpressionStatement(Qe);
        As(xt, re.expression);
        const Dt = [ut, xt], Ve = $z(t, re.initializer, nt);
        Dt.push(Ze(Ve, W, Ei));
        let fr, rr;
        const Oe = D_(re.statement, W, e);
        return Wa(Oe) ? (Mn(Dt, Oe.statements), fr = Oe, rr = Oe.statements) : Dt.push(Oe), pt(t.createBlock(pt(t.createNodeArray(Dt), rr), !0), fr);
      }
      function Kt(re) {
        return T & 1 ? t.createYieldExpression(void 0, n().createAwaitHelper(re)) : t.createAwaitExpression(re);
      }
      function zr(re, we, Ge) {
        const nt = Ze(re.expression, W, dt), it = Fe(nt) ? t.getGeneratedNameForNode(nt) : t.createTempVariable(void 0), ut = Fe(nt) ? t.getGeneratedNameForNode(it) : t.createTempVariable(void 0), Qe = t.createTempVariable(void 0), xt = t.createTempVariable(o), Dt = t.createUniqueName("e"), Ve = t.getGeneratedNameForNode(Dt), fr = t.createTempVariable(void 0), rr = pt(n().createAsyncValuesHelper(nt), re.expression), Oe = t.createCallExpression(t.createPropertyAccessExpression(it, "next"), void 0, []), rt = t.createPropertyAccessExpression(ut, "done"), ee = t.createPropertyAccessExpression(ut, "value"), q = t.createFunctionCallCall(fr, it, []);
        o(Dt), o(fr);
        const j = Ge & 2 ? t.inlineExpressions([t.createAssignment(Dt, t.createVoidZero()), rr]) : rr, Re = ln(pt(t.createForStatement(ln(pt(t.createVariableDeclarationList([
          t.createVariableDeclaration(Qe, void 0, void 0, t.createTrue()),
          pt(t.createVariableDeclaration(it, void 0, void 0, j), re.expression),
          t.createVariableDeclaration(ut)
        ]), re.expression), 4194304), t.inlineExpressions([
          t.createAssignment(ut, Kt(Oe)),
          t.createAssignment(xt, rt),
          t.createLogicalNot(xt)
        ]), t.createAssignment(Qe, t.createTrue()), Ct(re, ee, Qe)), re), 512);
        return Fn(Re, re), t.createTryStatement(t.createBlock([t.restoreEnclosingLabel(Re, we)]), t.createCatchClause(t.createVariableDeclaration(Ve), ln(t.createBlock([t.createExpressionStatement(t.createAssignment(Dt, t.createObjectLiteralExpression([t.createPropertyAssignment("error", Ve)])))]), 1)), t.createBlock([t.createTryStatement(t.createBlock([ln(t.createIfStatement(t.createLogicalAnd(t.createLogicalAnd(t.createLogicalNot(Qe), t.createLogicalNot(xt)), t.createAssignment(fr, t.createPropertyAccessExpression(it, "return"))), t.createExpressionStatement(Kt(q))), 1)]), void 0, ln(t.createBlock([ln(t.createIfStatement(Dt, t.createThrowStatement(t.createPropertyAccessExpression(Dt, "error"))), 1)]), 1))]));
      }
      function _i(re) {
        return E.assertNode(re, Fi), Gr(re);
      }
      function Gr(re) {
        return k?.has(re) ? t.updateParameterDeclaration(re, void 0, re.dotDotDotToken, Ja(re.name) ? t.getGeneratedNameForNode(re) : re.name, void 0, void 0, void 0) : re.transformFlags & 65536 ? t.updateParameterDeclaration(re, void 0, re.dotDotDotToken, t.getGeneratedNameForNode(re), void 0, void 0, Ze(re.initializer, W, dt)) : Tr(re, W, e);
      }
      function Nt(re) {
        let we;
        for (const Ge of re.parameters) we ? we.add(Ge) : Ge.transformFlags & 65536 && (we = /* @__PURE__ */ new Set());
        return we;
      }
      function Li(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateConstructorDeclaration(re, re.modifiers, Cc(re.parameters, _i, e), $n(re));
        return T = we, k = Ge, nt;
      }
      function ri(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateGetAccessorDeclaration(re, re.modifiers, Ze(re.name, W, il), Cc(re.parameters, _i, e), void 0, $n(re));
        return T = we, k = Ge, nt;
      }
      function Zr(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateSetAccessorDeclaration(re, re.modifiers, Ze(re.name, W, il), Cc(re.parameters, _i, e), $n(re));
        return T = we, k = Ge, nt;
      }
      function ni(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateMethodDeclaration(re, T & 1 ? Fr(re.modifiers, se, ec) : re.modifiers, T & 2 ? void 0 : re.asteriskToken, Ze(re.name, W, il), Ze(void 0, W, a1), void 0, T & 2 && T & 1 ? tr(re) : Cc(re.parameters, _i, e), void 0, T & 2 && T & 1 ? Ur(re) : $n(re));
        return T = we, k = Ge, nt;
      }
      function ra(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateFunctionDeclaration(re, T & 1 ? Fr(re.modifiers, se, hs) : re.modifiers, T & 2 ? void 0 : re.asteriskToken, re.name, void 0, T & 2 && T & 1 ? tr(re) : Cc(re.parameters, _i, e), void 0, T & 2 && T & 1 ? Ur(re) : $n(re));
        return T = we, k = Ge, nt;
      }
      function Me(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateArrowFunction(re, re.modifiers, void 0, Cc(re.parameters, _i, e), void 0, re.equalsGreaterThanToken, $n(re));
        return T = we, k = Ge, nt;
      }
      function vt(re) {
        const we = T, Ge = k;
        T = Gc(re), k = Nt(re);
        const nt = t.updateFunctionExpression(re, T & 1 ? Fr(re.modifiers, se, hs) : re.modifiers, T & 2 ? void 0 : re.asteriskToken, re.name, void 0, T & 2 && T & 1 ? tr(re) : Cc(re.parameters, _i, e), void 0, T & 2 && T & 1 ? Ur(re) : $n(re));
        return T = we, k = Ge, nt;
      }
      function tr(re) {
        if (RN(re.parameters)) return Cc(re.parameters, W, e);
        const we = [];
        for (const nt of re.parameters) {
          if (nt.initializer || nt.dotDotDotToken) break;
          const it = t.createParameterDeclaration(void 0, void 0, t.getGeneratedNameForNode(nt.name, 8));
          we.push(it);
        }
        const Ge = t.createNodeArray(we);
        return pt(Ge, re.parameters), Ge;
      }
      function Ur(re) {
        const we = RN(re.parameters) ? void 0 : Cc(re.parameters, W, e);
        i();
        const Ge = R, nt = G;
        R = /* @__PURE__ */ new Set(), G = !1;
        const it = [];
        let ut = t.updateBlock(re.body, Fr(re.body.statements, W, Ei));
        ut = t.updateBlock(ut, t.mergeLexicalEnvironment(ut.statements, zn(a(), re)));
        const Qe = t.createReturnStatement(n().createAsyncGeneratorHelper(t.createFunctionExpression(void 0, t.createToken(42), re.name && t.getGeneratedNameForNode(re.name), void 0, we ?? [], void 0, ut), !!(P & 1))), xt = u >= 2 && (c.hasNodeCheckFlag(re, 256) || c.hasNodeCheckFlag(re, 128));
        if (xt) {
          na();
          const Ve = r9(t, c, re, R);
          L[Hs(Ve)] = !0, qg(it, [Ve]);
        }
        it.push(Qe);
        const Dt = t.updateBlock(re.body, it);
        return xt && G && (c.hasNodeCheckFlag(re, 256) ? ak(Dt, qO) : c.hasNodeCheckFlag(re, 128) && ak(Dt, VO)), R = Ge, G = nt, Dt;
      }
      function $n(re) {
        i();
        let we = 0;
        const Ge = [], nt = Ze(re.body, W, t5) ?? t.createBlock([]);
        Wa(nt) && (we = t.copyPrologue(nt.statements, Ge, !1, W)), Mn(Ge, zn(void 0, re));
        const it = a();
        if (we > 0 || _t(Ge) || _t(it)) {
          const ut = t.converters.convertToFunctionBlock(nt, !0);
          return qg(Ge, it), Mn(Ge, ut.statements.slice(we)), t.updateBlock(ut, pt(t.createNodeArray(Ge), ut.statements));
        }
        return nt;
      }
      function zn(re, we) {
        let Ge = !1;
        for (const nt of we.parameters) if (Ge) {
          if (Ja(nt.name)) {
            if (nt.name.elements.length > 0) {
              const it = n2(nt, W, e, 0, t.getGeneratedNameForNode(nt));
              if (_t(it)) {
                const ut = t.createVariableDeclarationList(it), Qe = t.createVariableStatement(void 0, ut);
                ln(Qe, 2097152), re = kr(re, Qe);
              }
            } else if (nt.initializer) {
              const it = t.getGeneratedNameForNode(nt), ut = Ze(nt.initializer, W, dt), Qe = t.createAssignment(it, ut), xt = t.createExpressionStatement(Qe);
              ln(xt, 2097152), re = kr(re, xt);
            }
          } else if (nt.initializer) {
            const it = t.cloneNode(nt.name);
            pt(it, nt.name), ln(it, 96);
            const ut = Ze(nt.initializer, W, dt);
            wm(ut, 3168);
            const Qe = t.createAssignment(it, ut);
            pt(Qe, nt), ln(Qe, 3072);
            const xt = t.createBlock([t.createExpressionStatement(Qe)]);
            pt(xt, nt), ln(xt, 3905);
            const Dt = t.createTypeCheck(t.cloneNode(nt.name), "undefined"), Ve = t.createIfStatement(Dt, xt);
            Xu(Ve), pt(Ve, nt), ln(Ve, 2101056), re = kr(re, Ve);
          }
        } else if (nt.transformFlags & 65536) {
          Ge = !0;
          const it = n2(nt, W, e, 1, t.getGeneratedNameForNode(nt), !1, !0);
          if (_t(it)) {
            const ut = t.createVariableDeclarationList(it), Qe = t.createVariableStatement(void 0, ut);
            ln(Qe, 2097152), re = kr(re, Qe);
          }
        }
        return re;
      }
      function na() {
        (S & 1) === 0 && (S |= 1, e.enableSubstitution(214), e.enableSubstitution(212), e.enableSubstitution(213), e.enableEmitNotification(264), e.enableEmitNotification(175), e.enableEmitNotification(178), e.enableEmitNotification(179), e.enableEmitNotification(177), e.enableEmitNotification(244));
      }
      function Ea(re, we, Ge) {
        if (S & 1 && ne(we)) {
          const nt = (c.hasNodeCheckFlag(we, 128) ? 128 : 0) | (c.hasNodeCheckFlag(we, 256) ? 256 : 0);
          if (nt !== D) {
            const it = D;
            D = nt, d(re, we, Ge), D = it;
            return;
          }
        } else if (S && L[Hs(we)]) {
          const nt = D;
          D = 0, d(re, we, Ge), D = nt;
          return;
        }
        d(re, we, Ge);
      }
      function Da(re, we) {
        return we = g(re, we), re === 1 && D ? Lr(we) : we;
      }
      function Lr(re) {
        switch (re.kind) {
          case 212:
            return ha(re);
          case 213:
            return Ye(re);
          case 214:
            return Pt(re);
        }
        return re;
      }
      function ha(re) {
        return re.expression.kind === 108 ? pt(t.createPropertyAccessExpression(t.createUniqueName("_super", 48), re.name), re) : re;
      }
      function Ye(re) {
        return re.expression.kind === 108 ? tt(re.argumentExpression, re) : re;
      }
      function Pt(re) {
        const we = re.expression;
        if (Z_(we)) {
          const Ge = Ln(we) ? ha(we) : Ye(we);
          return t.createCallExpression(t.createPropertyAccessExpression(Ge, "call"), void 0, [t.createThis(), ...re.arguments]);
        }
        return re;
      }
      function ne(re) {
        const we = re.kind;
        return we === 264 || we === 177 || we === 175 || we === 178 || we === 179;
      }
      function tt(re, we) {
        return D & 256 ? pt(t.createPropertyAccessExpression(t.createCallExpression(t.createIdentifier("_superIndex"), void 0, [re]), "value"), we) : pt(t.createCallExpression(t.createIdentifier("_superIndex"), void 0, [re]), we);
      }
    }
    function aie(e) {
      const t = e.factory;
      return Xd(e, n);
      function n(o) {
        return o.isDeclarationFile ? o : Tr(o, i, e);
      }
      function i(o) {
        return (o.transformFlags & 64) === 0 ? o : o.kind === 300 ? a(o) : Tr(o, i, e);
      }
      function a(o) {
        return o.variableDeclaration ? Tr(o, i, e) : t.updateCatchClause(o, t.createVariableDeclaration(t.createTempVariable(void 0)), Ze(o.block, i, Wa));
      }
    }
    function sie(e) {
      const { factory: t, hoistVariableDeclaration: n } = e;
      return Xd(e, i);
      function i(k) {
        return k.isDeclarationFile ? k : Tr(k, a, e);
      }
      function a(k) {
        if ((k.transformFlags & 32) === 0) return k;
        switch (k.kind) {
          case 214: {
            const D = u(k, !1);
            return E.assertNotNode(D, gk), D;
          }
          case 212:
          case 213:
            if (Vu(k)) {
              const D = g(k, !1, !1);
              return E.assertNotNode(D, gk), D;
            }
            return Tr(k, a, e);
          case 227:
            return k.operatorToken.kind === 61 ? S(k) : Tr(k, a, e);
          case 221:
            return T(k);
          default:
            return Tr(k, a, e);
        }
      }
      function o(k) {
        E.assertNotNode(k, X7);
        const D = [k];
        for (; !k.questionDotToken && !xv(k); )
          k = ns(fd(k.expression), Vu), E.assertNotNode(k, X7), D.unshift(k);
        return {
          expression: k.expression,
          chain: D
        };
      }
      function c(k, D, P) {
        const N = d(k.expression, D, P);
        return gk(N) ? t.createSyntheticReferenceExpression(t.updateParenthesizedExpression(k, N.expression), N.thisArg) : t.updateParenthesizedExpression(k, N);
      }
      function _(k, D, P) {
        if (Vu(k)) return g(k, D, P);
        let N = Ze(k.expression, a, dt);
        E.assertNotNode(N, gk);
        let M;
        return D && (r2(N) ? M = N : (M = t.createTempVariable(n), N = t.createAssignment(M, N))), N = k.kind === 212 ? t.updatePropertyAccessExpression(k, N, Ze(k.name, a, Fe)) : t.updateElementAccessExpression(k, N, Ze(k.argumentExpression, a, dt)), M ? t.createSyntheticReferenceExpression(N, M) : N;
      }
      function u(k, D) {
        if (Vu(k)) return g(k, D, !1);
        if (E_(k.expression) && Vu(Gs(k.expression))) {
          const P = c(k.expression, !0, !1), N = Fr(k.arguments, a, dt);
          return gk(P) ? pt(t.createFunctionCallCall(P.expression, P.thisArg, N), k) : t.updateCallExpression(k, P, void 0, N);
        }
        return Tr(k, a, e);
      }
      function d(k, D, P) {
        switch (k.kind) {
          case 218:
            return c(k, D, P);
          case 212:
          case 213:
            return _(k, D, P);
          case 214:
            return u(k, D);
          default:
            return Ze(k, a, dt);
        }
      }
      function g(k, D, P) {
        const { expression: N, chain: M } = o(k), R = d(fd(N), uS(M[0]), !1);
        let G = gk(R) ? R.thisArg : void 0, L = gk(R) ? R.expression : R, z = t.restoreOuterExpressions(N, L, 8);
        r2(L) || (L = t.createTempVariable(n), z = t.createAssignment(L, z));
        let H = L, U;
        for (let ie = 0; ie < M.length; ie++) {
          const W = M[ie];
          switch (W.kind) {
            case 212:
            case 213:
              ie === M.length - 1 && D && (r2(H) ? U = H : (U = t.createTempVariable(n), H = t.createAssignment(U, H))), H = W.kind === 212 ? t.createPropertyAccessExpression(H, Ze(W.name, a, Fe)) : t.createElementAccessExpression(H, Ze(W.argumentExpression, a, dt));
              break;
            case 214:
              ie === 0 && G ? (Ko(G) || (G = t.cloneNode(G), wm(G, 3072)), H = t.createFunctionCallCall(H, G.kind === 108 ? t.createThis() : G, Fr(W.arguments, a, dt))) : H = t.createCallExpression(H, void 0, Fr(W.arguments, a, dt));
              break;
          }
          Fn(H, W);
        }
        const pe = P ? t.createConditionalExpression(h(z, L, !0), void 0, t.createTrue(), void 0, t.createDeleteExpression(H)) : t.createConditionalExpression(h(z, L, !0), void 0, t.createVoidZero(), void 0, H);
        return pt(pe, k), U ? t.createSyntheticReferenceExpression(pe, U) : pe;
      }
      function h(k, D, P) {
        return t.createBinaryExpression(t.createBinaryExpression(k, t.createToken(P ? 37 : 38), t.createNull()), t.createToken(P ? 57 : 56), t.createBinaryExpression(D, t.createToken(P ? 37 : 38), t.createVoidZero()));
      }
      function S(k) {
        let D = Ze(k.left, a, dt), P = D;
        return r2(D) || (P = t.createTempVariable(n), D = t.createAssignment(P, D)), pt(t.createConditionalExpression(h(D, P), void 0, P, void 0, Ze(k.right, a, dt)), k);
      }
      function T(k) {
        return Vu(Gs(k.expression)) ? Fn(d(k.expression, !1, !0), k) : t.updateDeleteExpression(k, Ze(k.expression, a, dt));
      }
    }
    function oie(e) {
      const { hoistVariableDeclaration: t, factory: n } = e;
      return Xd(e, i);
      function i(c) {
        return c.isDeclarationFile ? c : Tr(c, a, e);
      }
      function a(c) {
        return (c.transformFlags & 16) === 0 ? c : xJ(c) ? o(c) : Tr(c, a, e);
      }
      function o(c) {
        const _ = c.operatorToken, u = xw(_.kind);
        let d = Gs(Ze(c.left, a, j_)), g = d;
        const h = Gs(Ze(c.right, a, dt));
        if (jo(d)) {
          const S = r2(d.expression), T = S ? d.expression : n.createTempVariable(t), k = S ? d.expression : n.createAssignment(T, d.expression);
          if (Ln(d))
            g = n.createPropertyAccessExpression(T, d.name), d = n.createPropertyAccessExpression(k, d.name);
          else {
            const D = r2(d.argumentExpression), P = D ? d.argumentExpression : n.createTempVariable(t);
            g = n.createElementAccessExpression(T, P), d = n.createElementAccessExpression(k, D ? d.argumentExpression : n.createAssignment(P, d.argumentExpression));
          }
        }
        return n.createBinaryExpression(d, u, n.createParenthesizedExpression(n.createAssignment(g, h)));
      }
    }
    function cie(e) {
      const { factory: t, getEmitHelperFactory: n, hoistVariableDeclaration: i, startLexicalEnvironment: a, endLexicalEnvironment: o } = e;
      let c, _, u, d;
      return Xd(e, g);
      function g(Q) {
        if (Q.isDeclarationFile) return Q;
        const se = Ze(Q, h, Pi);
        return th(se, e.readEmitHelpers()), _ = void 0, c = void 0, u = void 0, se;
      }
      function h(Q) {
        if ((Q.transformFlags & 4) === 0) return Q;
        switch (Q.kind) {
          case 308:
            return S(Q);
          case 242:
            return T(Q);
          case 249:
            return k(Q);
          case 251:
            return D(Q);
          default:
            return Tr(Q, h, e);
        }
      }
      function S(Q) {
        const se = fve(Q.statements);
        if (se) {
          a(), c = new Z6(), _ = [];
          const he = uve(Q.statements), fe = [];
          Mn(fe, bw(Q.statements, h, Ei, 0, he));
          let de = he;
          for (; de < Q.statements.length; ) {
            const Be = Q.statements[de];
            if (uie(Be) !== 0) {
              de > he && Mn(fe, Fr(Q.statements, h, Ei, he, de - he));
              break;
            }
            de++;
          }
          E.assert(de < Q.statements.length, "Should have encountered at least one 'using' statement.");
          const $ = ie(), Se = P(Q.statements, de, Q.statements.length, $, fe);
          return c.size && kr(fe, t.createExportDeclaration(void 0, !1, t.createNamedExports(ma(c.values())))), Mn(fe, o()), _.length && fe.push(t.createVariableStatement(t.createModifiersFromModifierFlags(32), t.createVariableDeclarationList(_, 1))), Mn(fe, W(Se, $, se === 2)), d && fe.push(t.createExportAssignment(void 0, !0, d)), t.updateSourceFile(Q, fe);
        }
        return Tr(Q, h, e);
      }
      function T(Q) {
        const se = fve(Q.statements);
        if (se) {
          const he = uve(Q.statements), fe = ie();
          return t.updateBlock(Q, [...bw(Q.statements, h, Ei, 0, he), ...W(P(Q.statements, he, Q.statements.length, fe, void 0), fe, se === 2)]);
        }
        return Tr(Q, h, e);
      }
      function k(Q) {
        return Q.initializer && _ve(Q.initializer) ? Ze(t.createBlock([t.createVariableStatement(void 0, Q.initializer), t.updateForStatement(Q, void 0, Q.condition, Q.incrementor, Q.statement)]), h, Ei) : Tr(Q, h, e);
      }
      function D(Q) {
        if (_ve(Q.initializer)) {
          const se = Q.initializer, he = ul(se.declarations) || t.createVariableDeclaration(t.createTempVariable(void 0)), fe = lie(se) === 2, de = t.getGeneratedNameForNode(he.name), $ = t.updateVariableDeclaration(he, he.name, void 0, void 0, de), Se = t.createVariableDeclarationList([$], fe ? 6 : 4), Be = t.createVariableStatement(void 0, Se);
          return Ze(t.updateForOfStatement(Q, Q.awaitModifier, t.createVariableDeclarationList([t.createVariableDeclaration(de)], 2), Q.expression, Wa(Q.statement) ? t.updateBlock(Q.statement, [Be, ...Q.statement.statements]) : t.createBlock([Be, Q.statement], !0)), h, Ei);
        }
        return Tr(Q, h, e);
      }
      function P(Q, se, he, fe, de) {
        const $ = [];
        for (let ce = se; ce < he; ce++) {
          const oe = Q[ce], ge = uie(oe);
          if (ge) {
            E.assertNode(oe, $c);
            const Ne = [];
            for (let ot of oe.declarationList.declarations) {
              if (!Fe(ot.name)) {
                Ne.length = 0;
                break;
              }
              hf(ot) && (ot = Cf(e, ot));
              const K = Ze(ot.initializer, h, dt) ?? t.createVoidZero();
              Ne.push(t.updateVariableDeclaration(ot, ot.name, void 0, void 0, n().createAddDisposableResourceHelper(fe, K, ge === 2)));
            }
            if (Ne.length) {
              const ot = t.createVariableDeclarationList(Ne, 2);
              Fn(ot, oe.declarationList), pt(ot, oe.declarationList), Se(t.updateVariableStatement(oe, void 0, ot));
              continue;
            }
          }
          const Ae = h(oe);
          da(Ae) ? Ae.forEach(Se) : Ae && Se(Ae);
        }
        return $;
        function Se(ce) {
          E.assertNode(ce, Ei), kr($, Be(ce));
        }
        function Be(ce) {
          if (!de) return ce;
          switch (ce.kind) {
            case 273:
            case 272:
            case 279:
            case 263:
              return N(ce, de);
            case 278:
              return M(ce);
            case 264:
              return L(ce);
            case 244:
              return z(ce);
          }
          return ce;
        }
      }
      function N(Q, se) {
        se.push(Q);
      }
      function M(Q) {
        return Q.isExportEquals ? G(Q) : R(Q);
      }
      function R(Q) {
        if (u) return Q;
        u = t.createUniqueName("_default", 56), pe(u, !0, "default", Q);
        let se = Q.expression, he = Ic(se);
        hf(he) && (he = Cf(e, he, !1, "default"), se = t.restoreOuterExpressions(se, he));
        const fe = t.createAssignment(u, se);
        return t.createExpressionStatement(fe);
      }
      function G(Q) {
        if (d) return Q;
        d = t.createUniqueName("_default", 56), i(d);
        const se = t.createAssignment(d, Q.expression);
        return t.createExpressionStatement(se);
      }
      function L(Q) {
        if (!Q.name && u) return Q;
        const se = Qn(Q, 32), he = Qn(Q, 2048);
        let fe = t.converters.convertToClassExpression(Q);
        return Q.name && (pe(t.getLocalName(Q), se && !he, void 0, Q), fe = t.createAssignment(t.getDeclarationName(Q), fe), hf(fe) && (fe = Cf(e, fe, !1)), Fn(fe, Q), As(fe, Q), fl(fe, Q)), he && !u && (u = t.createUniqueName("_default", 56), pe(u, !0, "default", Q), fe = t.createAssignment(u, fe), hf(fe) && (fe = Cf(e, fe, !1, "default")), Fn(fe, Q)), t.createExpressionStatement(fe);
      }
      function z(Q) {
        let se;
        const he = Qn(Q, 32);
        for (const fe of Q.declarationList.declarations)
          U(fe, he, fe), fe.initializer && (se = kr(se, H(fe)));
        if (se) {
          const fe = t.createExpressionStatement(t.inlineExpressions(se));
          return Fn(fe, Q), fl(fe, Q), As(fe, Q), fe;
        }
      }
      function H(Q) {
        E.assertIsDefined(Q.initializer);
        let se;
        Fe(Q.name) ? (se = t.cloneNode(Q.name), ln(se, Bs(se) & -114689)) : se = t.converters.convertToAssignmentPattern(Q.name);
        const he = t.createAssignment(se, Q.initializer);
        return Fn(he, Q), fl(he, Q), As(he, Q), he;
      }
      function U(Q, se, he) {
        if (Ja(Q.name))
          for (const fe of Q.name.elements) Al(fe) || U(fe, se, he);
        else pe(Q.name, se, void 0, he);
      }
      function pe(Q, se, he, fe) {
        const de = Ko(Q) ? Q : t.cloneNode(Q);
        if (se) {
          if (he === void 0 && !Hh(de)) {
            const ce = t.createVariableDeclaration(de);
            fe && Fn(ce, fe), _.push(ce);
            return;
          }
          const $ = he !== void 0 ? de : void 0, Se = he !== void 0 ? he : de, Be = t.createExportSpecifier(!1, $, Se);
          fe && Fn(Be, fe), c.set(de, Be);
        }
        i(de);
      }
      function ie() {
        return t.createUniqueName("env");
      }
      function W(Q, se, he) {
        const fe = [], de = t.createObjectLiteralExpression([
          t.createPropertyAssignment("stack", t.createArrayLiteralExpression()),
          t.createPropertyAssignment("error", t.createVoidZero()),
          t.createPropertyAssignment("hasError", t.createFalse())
        ]), $ = t.createVariableDeclaration(se, void 0, void 0, de), Se = t.createVariableDeclarationList([$], 2), Be = t.createVariableStatement(void 0, Se);
        fe.push(Be);
        const ce = t.createBlock(Q, !0), oe = t.createUniqueName("e"), ge = t.createCatchClause(oe, t.createBlock([t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(se, "error"), oe)), t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(se, "hasError"), t.createTrue()))], !0));
        let Ae;
        if (he) {
          const ot = t.createUniqueName("result");
          Ae = t.createBlock([t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(ot, void 0, void 0, n().createDisposeResourcesHelper(se))], 2)), t.createIfStatement(ot, t.createExpressionStatement(t.createAwaitExpression(ot)))], !0);
        } else Ae = t.createBlock([t.createExpressionStatement(n().createDisposeResourcesHelper(se))], !0);
        const Ne = t.createTryStatement(ce, ge, Ae);
        return fe.push(Ne), fe;
      }
    }
    function uve(e) {
      for (let t = 0; t < e.length; t++) if (!bm(e[t]) && !Y3(e[t])) return t;
      return 0;
    }
    function _ve(e) {
      return iu(e) && lie(e) !== 0;
    }
    function lie(e) {
      return (e.flags & 7) === 6 ? 2 : (e.flags & 7) === 4 ? 1 : 0;
    }
    function Aje(e) {
      return lie(e.declarationList);
    }
    function uie(e) {
      return $c(e) ? Aje(e) : 0;
    }
    function fve(e) {
      let t = 0;
      for (const n of e) {
        const i = uie(n);
        if (i === 2) return 2;
        i > t && (t = i);
      }
      return t;
    }
    function _ie(e) {
      const { factory: t, getEmitHelperFactory: n } = e, i = e.getCompilerOptions();
      let a, o;
      return Xd(e, h);
      function c() {
        if (o.filenameDeclaration) return o.filenameDeclaration.name;
        const K = t.createVariableDeclaration(t.createUniqueName("_jsxFileName", 48), void 0, void 0, t.createStringLiteral(a.fileName));
        return o.filenameDeclaration = K, o.filenameDeclaration.name;
      }
      function _(K) {
        return i.jsx === 5 ? "jsxDEV" : K ? "jsxs" : "jsx";
      }
      function u(K) {
        return g(_(K));
      }
      function d() {
        return g("Fragment");
      }
      function g(K) {
        var ke, ae;
        const Ce = K === "createElement" ? o.importSpecifier : yO(o.importSpecifier, i), ue = (ae = (ke = o.utilizedImplicitRuntimeImports) == null ? void 0 : ke.get(Ce)) == null ? void 0 : ae.get(K);
        if (ue) return ue.name;
        o.utilizedImplicitRuntimeImports || (o.utilizedImplicitRuntimeImports = /* @__PURE__ */ new Map());
        let Ie = o.utilizedImplicitRuntimeImports.get(Ce);
        Ie || (Ie = /* @__PURE__ */ new Map(), o.utilizedImplicitRuntimeImports.set(Ce, Ie));
        const Xe = t.createUniqueName(`_${K}`, 112), Ft = t.createImportSpecifier(!1, t.createIdentifier(K), Xe);
        return Ate(Xe, Ft), Ie.set(K, Ft), Xe;
      }
      function h(K) {
        if (K.isDeclarationFile) return K;
        a = K, o = {}, o.importSpecifier = JA(i, K);
        let ke = Tr(K, S, e);
        th(ke, e.readEmitHelpers());
        let ae = ke.statements;
        if (o.filenameDeclaration && (ae = mS(ae.slice(), t.createVariableStatement(void 0, t.createVariableDeclarationList([o.filenameDeclaration], 2)))), o.utilizedImplicitRuntimeImports) {
          for (const [Ce, ue] of ma(o.utilizedImplicitRuntimeImports.entries())) if (Sl(K)) {
            const Ie = t.createImportDeclaration(void 0, t.createImportClause(void 0, void 0, t.createNamedImports(ma(ue.values()))), t.createStringLiteral(Ce), void 0);
            bv(Ie, !1), ae = mS(ae.slice(), Ie);
          } else if (gf(K)) {
            const Ie = t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(t.createObjectBindingPattern(ma(ue.values(), (Xe) => t.createBindingElement(void 0, Xe.propertyName, Xe.name))), void 0, void 0, t.createCallExpression(t.createIdentifier("require"), void 0, [t.createStringLiteral(Ce)]))], 2));
            bv(Ie, !1), ae = mS(ae.slice(), Ie);
          }
        }
        return ae !== ke.statements && (ke = t.updateSourceFile(ke, ae)), o = void 0, ke;
      }
      function S(K) {
        return K.transformFlags & 2 ? T(K) : K;
      }
      function T(K) {
        switch (K.kind) {
          case 285:
            return M(K, !1);
          case 286:
            return R(K, !1);
          case 289:
            return G(K, !1);
          case 295:
            return ot(K);
          default:
            return Tr(K, S, e);
        }
      }
      function k(K) {
        switch (K.kind) {
          case 12:
            return Se(K);
          case 295:
            return ot(K);
          case 285:
            return M(K, !0);
          case 286:
            return R(K, !0);
          case 289:
            return G(K, !0);
          default:
            return E.failBadSyntaxKind(K);
        }
      }
      function D(K) {
        return K.properties.some((ke) => ol(ke) && (Fe(ke.name) && On(ke.name) === "__proto__" || Ts(ke.name) && ke.name.text === "__proto__"));
      }
      function P(K) {
        let ke = !1;
        for (const ae of K.attributes.properties) if (hk(ae) && (!bs(ae.expression) || ae.expression.properties.some(ih))) ke = !0;
        else if (ke && Om(ae) && Fe(ae.name) && ae.name.escapedText === "key") return !0;
        return !1;
      }
      function N(K) {
        return o.importSpecifier === void 0 || P(K);
      }
      function M(K, ke) {
        return (N(K.openingElement) ? pe : H)(K.openingElement, K.children, ke, bf(gs(a.text, K.pos), K.end));
      }
      function R(K, ke) {
        return (N(K) ? pe : H)(K, void 0, ke, bf(gs(a.text, K.pos), K.end));
      }
      function G(K, ke) {
        return (o.importSpecifier === void 0 ? W : ie)(K.openingFragment, K.children, ke, bf(gs(a.text, K.pos), K.end));
      }
      function L(K) {
        const ke = z(K);
        return ke && t.createObjectLiteralExpression([ke]);
      }
      function z(K) {
        const ke = d6(K);
        if (It(ke) === 1 && !ke[0].dotDotDotToken) {
          const Ce = k(ke[0]);
          return Ce && t.createPropertyAssignment("children", Ce);
        }
        const ae = Rn(K, k);
        return It(ae) ? t.createPropertyAssignment("children", t.createArrayLiteralExpression(ae)) : void 0;
      }
      function H(K, ke, ae, Ce) {
        const ue = Ae(K), Ie = ke && ke.length ? z(ke) : void 0, Xe = xr(K.attributes.properties, (Ut) => !!Ut.name && Fe(Ut.name) && Ut.name.escapedText === "key"), Ft = Xe ? dn(K.attributes.properties, (Ut) => Ut !== Xe) : K.attributes.properties;
        return U(ue, It(Ft) ? se(Ft, Ie) : t.createObjectLiteralExpression(Ie ? [Ie] : Te), Xe, ke || Te, ae, Ce);
      }
      function U(K, ke, ae, Ce, ue, Ie) {
        var Xe;
        const Ft = d6(Ce), Ut = It(Ft) > 1 || !!((Xe = Ft[0]) != null && Xe.dotDotDotToken), Xt = [K, ke];
        if (ae && Xt.push($(ae.initializer)), i.jsx === 5) {
          const Ct = rc(a);
          if (Ct && Pi(Ct)) {
            ae === void 0 && Xt.push(t.createVoidZero()), Xt.push(Ut ? t.createTrue() : t.createFalse());
            const Kt = Za(Ct, Ie.pos);
            Xt.push(t.createObjectLiteralExpression([
              t.createPropertyAssignment("fileName", c()),
              t.createPropertyAssignment("lineNumber", t.createNumericLiteral(Kt.line + 1)),
              t.createPropertyAssignment("columnNumber", t.createNumericLiteral(Kt.character + 1))
            ])), Xt.push(t.createThis());
          }
        }
        const Ar = pt(t.createCallExpression(u(Ut), void 0, Xt), Ie);
        return ue && Xu(Ar), Ar;
      }
      function pe(K, ke, ae, Ce) {
        const ue = Ae(K), Ie = K.attributes.properties, Xe = It(Ie) ? se(Ie) : t.createNull(), Ft = ure(t, o.importSpecifier === void 0 ? Hz(t, e.getEmitResolver().getJsxFactoryEntity(a), i.reactNamespace, K) : g("createElement"), ue, Xe, Rn(ke, k), Ce);
        return ae && Xu(Ft), Ft;
      }
      function ie(K, ke, ae, Ce) {
        let ue;
        if (ke && ke.length) {
          const Ie = L(ke);
          Ie && (ue = Ie);
        }
        return U(d(), ue || t.createObjectLiteralExpression([]), void 0, ke, ae, Ce);
      }
      function W(K, ke, ae, Ce) {
        const ue = _re(t, e.getEmitResolver().getJsxFactoryEntity(a), e.getEmitResolver().getJsxFragmentFactoryEntity(a), i.reactNamespace, Rn(ke, k), K, Ce);
        return ae && Xu(ue), ue;
      }
      function Q(K) {
        return bs(K.expression) && !D(K.expression) ? el(K.expression.properties, (ke) => E.checkDefined(Ze(ke, S, zg))) : t.createSpreadAssignment(E.checkDefined(Ze(K.expression, S, dt)));
      }
      function se(K, ke) {
        const ae = Ps(i);
        return ae && ae >= 5 ? t.createObjectLiteralExpression(he(K, ke)) : fe(K, ke);
      }
      function he(K, ke) {
        const ae = Rf(tS(K, hk, (Ce, ue) => Rf(or(Ce, (Ie) => ue ? Q(Ie) : de(Ie)))));
        return ke && ae.push(ke), ae;
      }
      function fe(K, ke) {
        const ae = [];
        let Ce = [];
        for (const Ie of K) {
          if (hk(Ie)) {
            if (bs(Ie.expression) && !D(Ie.expression)) {
              for (const Xe of Ie.expression.properties) {
                if (ih(Xe)) {
                  ue(), ae.push(E.checkDefined(Ze(Xe.expression, S, dt)));
                  continue;
                }
                Ce.push(E.checkDefined(Ze(Xe, S)));
              }
              continue;
            }
            ue(), ae.push(E.checkDefined(Ze(Ie.expression, S, dt)));
            continue;
          }
          Ce.push(de(Ie));
        }
        return ke && Ce.push(ke), ue(), ae.length && !bs(ae[0]) && ae.unshift(t.createObjectLiteralExpression()), Fg(ae) || n().createAssignHelper(ae);
        function ue() {
          Ce.length && (ae.push(t.createObjectLiteralExpression(Ce)), Ce = []);
        }
      }
      function de(K) {
        const ke = Ne(K), ae = $(K.initializer);
        return t.createPropertyAssignment(ke, ae);
      }
      function $(K) {
        if (K === void 0) return t.createTrue();
        if (K.kind === 11) {
          const ke = K.singleQuote !== void 0 ? K.singleQuote : !L5(K, a);
          return pt(t.createStringLiteral(ge(K.text) || K.text, ke), K);
        }
        return K.kind === 295 ? K.expression === void 0 ? t.createTrue() : E.checkDefined(Ze(K.expression, S, dt)) : Im(K) ? M(K, !1) : JS(K) ? R(K, !1) : Dv(K) ? G(K, !1) : E.failBadSyntaxKind(K);
      }
      function Se(K) {
        const ke = Be(K.text);
        return ke === void 0 ? void 0 : t.createStringLiteral(ke);
      }
      function Be(K) {
        let ke, ae = 0, Ce = -1;
        for (let ue = 0; ue < K.length; ue++) {
          const Ie = K.charCodeAt(ue);
          Uu(Ie) ? (ae !== -1 && Ce !== -1 && (ke = ce(ke, K.substr(ae, Ce - ae + 1))), ae = -1) : hm(Ie) || (Ce = ue, ae === -1 && (ae = ue));
        }
        return ae !== -1 ? ce(ke, K.substr(ae)) : ke;
      }
      function ce(K, ke) {
        const ae = oe(ke);
        return K === void 0 ? ae : K + " " + ae;
      }
      function oe(K) {
        return K.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g, (ke, ae, Ce, ue, Ie, Xe, Ft) => {
          if (Ie) return J4(parseInt(Ie, 10));
          if (Xe) return J4(parseInt(Xe, 16));
          {
            const Ut = Nje.get(Ft);
            return Ut ? J4(Ut) : ke;
          }
        });
      }
      function ge(K) {
        const ke = oe(K);
        return ke === K ? void 0 : ke;
      }
      function Ae(K) {
        if (K.kind === 285) return Ae(K.openingElement);
        {
          const ke = K.tagName;
          return Fe(ke) && m6(ke.escapedText) ? t.createStringLiteral(On(ke)) : Gd(ke) ? t.createStringLiteral(On(ke.namespace) + ":" + On(ke.name)) : _N(t, ke);
        }
      }
      function Ne(K) {
        const ke = K.name;
        if (Fe(ke)) {
          const ae = On(ke);
          return /^[A-Z_]\w*$/i.test(ae) ? ke : t.createStringLiteral(ae);
        }
        return t.createStringLiteral(On(ke.namespace) + ":" + On(ke.name));
      }
      function ot(K) {
        const ke = Ze(K.expression, S, dt);
        return K.dotDotDotToken ? t.createSpreadElement(ke) : ke;
      }
    }
    var Nje = new Map(Object.entries({
      quot: 34,
      amp: 38,
      apos: 39,
      lt: 60,
      gt: 62,
      nbsp: 160,
      iexcl: 161,
      cent: 162,
      pound: 163,
      curren: 164,
      yen: 165,
      brvbar: 166,
      sect: 167,
      uml: 168,
      copy: 169,
      ordf: 170,
      laquo: 171,
      not: 172,
      shy: 173,
      reg: 174,
      macr: 175,
      deg: 176,
      plusmn: 177,
      sup2: 178,
      sup3: 179,
      acute: 180,
      micro: 181,
      para: 182,
      middot: 183,
      cedil: 184,
      sup1: 185,
      ordm: 186,
      raquo: 187,
      frac14: 188,
      frac12: 189,
      frac34: 190,
      iquest: 191,
      Agrave: 192,
      Aacute: 193,
      Acirc: 194,
      Atilde: 195,
      Auml: 196,
      Aring: 197,
      AElig: 198,
      Ccedil: 199,
      Egrave: 200,
      Eacute: 201,
      Ecirc: 202,
      Euml: 203,
      Igrave: 204,
      Iacute: 205,
      Icirc: 206,
      Iuml: 207,
      ETH: 208,
      Ntilde: 209,
      Ograve: 210,
      Oacute: 211,
      Ocirc: 212,
      Otilde: 213,
      Ouml: 214,
      times: 215,
      Oslash: 216,
      Ugrave: 217,
      Uacute: 218,
      Ucirc: 219,
      Uuml: 220,
      Yacute: 221,
      THORN: 222,
      szlig: 223,
      agrave: 224,
      aacute: 225,
      acirc: 226,
      atilde: 227,
      auml: 228,
      aring: 229,
      aelig: 230,
      ccedil: 231,
      egrave: 232,
      eacute: 233,
      ecirc: 234,
      euml: 235,
      igrave: 236,
      iacute: 237,
      icirc: 238,
      iuml: 239,
      eth: 240,
      ntilde: 241,
      ograve: 242,
      oacute: 243,
      ocirc: 244,
      otilde: 245,
      ouml: 246,
      divide: 247,
      oslash: 248,
      ugrave: 249,
      uacute: 250,
      ucirc: 251,
      uuml: 252,
      yacute: 253,
      thorn: 254,
      yuml: 255,
      OElig: 338,
      oelig: 339,
      Scaron: 352,
      scaron: 353,
      Yuml: 376,
      fnof: 402,
      circ: 710,
      tilde: 732,
      Alpha: 913,
      Beta: 914,
      Gamma: 915,
      Delta: 916,
      Epsilon: 917,
      Zeta: 918,
      Eta: 919,
      Theta: 920,
      Iota: 921,
      Kappa: 922,
      Lambda: 923,
      Mu: 924,
      Nu: 925,
      Xi: 926,
      Omicron: 927,
      Pi: 928,
      Rho: 929,
      Sigma: 931,
      Tau: 932,
      Upsilon: 933,
      Phi: 934,
      Chi: 935,
      Psi: 936,
      Omega: 937,
      alpha: 945,
      beta: 946,
      gamma: 947,
      delta: 948,
      epsilon: 949,
      zeta: 950,
      eta: 951,
      theta: 952,
      iota: 953,
      kappa: 954,
      lambda: 955,
      mu: 956,
      nu: 957,
      xi: 958,
      omicron: 959,
      pi: 960,
      rho: 961,
      sigmaf: 962,
      sigma: 963,
      tau: 964,
      upsilon: 965,
      phi: 966,
      chi: 967,
      psi: 968,
      omega: 969,
      thetasym: 977,
      upsih: 978,
      piv: 982,
      ensp: 8194,
      emsp: 8195,
      thinsp: 8201,
      zwnj: 8204,
      zwj: 8205,
      lrm: 8206,
      rlm: 8207,
      ndash: 8211,
      mdash: 8212,
      lsquo: 8216,
      rsquo: 8217,
      sbquo: 8218,
      ldquo: 8220,
      rdquo: 8221,
      bdquo: 8222,
      dagger: 8224,
      Dagger: 8225,
      bull: 8226,
      hellip: 8230,
      permil: 8240,
      prime: 8242,
      Prime: 8243,
      lsaquo: 8249,
      rsaquo: 8250,
      oline: 8254,
      frasl: 8260,
      euro: 8364,
      image: 8465,
      weierp: 8472,
      real: 8476,
      trade: 8482,
      alefsym: 8501,
      larr: 8592,
      uarr: 8593,
      rarr: 8594,
      darr: 8595,
      harr: 8596,
      crarr: 8629,
      lArr: 8656,
      uArr: 8657,
      rArr: 8658,
      dArr: 8659,
      hArr: 8660,
      forall: 8704,
      part: 8706,
      exist: 8707,
      empty: 8709,
      nabla: 8711,
      isin: 8712,
      notin: 8713,
      ni: 8715,
      prod: 8719,
      sum: 8721,
      minus: 8722,
      lowast: 8727,
      radic: 8730,
      prop: 8733,
      infin: 8734,
      ang: 8736,
      and: 8743,
      or: 8744,
      cap: 8745,
      cup: 8746,
      int: 8747,
      there4: 8756,
      sim: 8764,
      cong: 8773,
      asymp: 8776,
      ne: 8800,
      equiv: 8801,
      le: 8804,
      ge: 8805,
      sub: 8834,
      sup: 8835,
      nsub: 8836,
      sube: 8838,
      supe: 8839,
      oplus: 8853,
      otimes: 8855,
      perp: 8869,
      sdot: 8901,
      lceil: 8968,
      rceil: 8969,
      lfloor: 8970,
      rfloor: 8971,
      lang: 9001,
      rang: 9002,
      loz: 9674,
      spades: 9824,
      clubs: 9827,
      hearts: 9829,
      diams: 9830
    }));
    function fie(e) {
      const { factory: t, hoistVariableDeclaration: n } = e;
      return Xd(e, i);
      function i(u) {
        return u.isDeclarationFile ? u : Tr(u, a, e);
      }
      function a(u) {
        return (u.transformFlags & 512) === 0 ? u : u.kind === 227 ? o(u) : Tr(u, a, e);
      }
      function o(u) {
        switch (u.operatorToken.kind) {
          case 68:
            return c(u);
          case 43:
            return _(u);
          default:
            return Tr(u, a, e);
        }
      }
      function c(u) {
        let d, g;
        const h = Ze(u.left, a, dt), S = Ze(u.right, a, dt);
        if (Po(h)) {
          const T = t.createTempVariable(n), k = t.createTempVariable(n);
          d = pt(t.createElementAccessExpression(pt(t.createAssignment(T, h.expression), h.expression), pt(t.createAssignment(k, h.argumentExpression), h.argumentExpression)), h), g = pt(t.createElementAccessExpression(T, k), h);
        } else if (Ln(h)) {
          const T = t.createTempVariable(n);
          d = pt(t.createPropertyAccessExpression(pt(t.createAssignment(T, h.expression), h.expression), h.name), h), g = pt(t.createPropertyAccessExpression(T, h.name), h);
        } else
          d = h, g = h;
        return pt(t.createAssignment(d, pt(t.createGlobalMethodCall("Math", "pow", [g, S]), u)), u);
      }
      function _(u) {
        const d = Ze(u.left, a, dt), g = Ze(u.right, a, dt);
        return pt(t.createGlobalMethodCall("Math", "pow", [d, g]), u);
      }
    }
    function pve(e, t) {
      return {
        kind: e,
        expression: t
      };
    }
    function pie(e) {
      const { factory: t, getEmitHelperFactory: n, startLexicalEnvironment: i, resumeLexicalEnvironment: a, endLexicalEnvironment: o, hoistVariableDeclaration: c } = e, _ = e.getCompilerOptions(), u = e.getEmitResolver(), d = e.onSubstituteNode, g = e.onEmitNode;
      e.onEmitNode = id, e.onSubstituteNode = ll;
      let h, S, T, k;
      function D(Z) {
        k = kr(k, t.createVariableDeclaration(Z));
      }
      let P, N = 0;
      return Xd(e, M);
      function M(Z) {
        if (Z.isDeclarationFile) return Z;
        h = Z, S = Z.text;
        const st = se(Z);
        return th(st, e.readEmitHelpers()), h = void 0, S = void 0, k = void 0, T = 0, st;
      }
      function R(Z, st) {
        const Rt = T;
        return T = (T & ~Z | st) & 32767, Rt;
      }
      function G(Z, st, Rt) {
        T = (T & ~st | Rt) & -32768 | Z;
      }
      function L(Z) {
        return (T & 8192) !== 0 && Z.kind === 254 && !Z.expression;
      }
      function z(Z) {
        return Z.transformFlags & 4194304 && (zf(Z) || Cv(Z) || $te(Z) || iw(Z) || aw(Z) || F6(Z) || L6(Z) || jS(Z) || Zb(Z) || c1(Z) || Uy(Z, !1) || Wa(Z));
      }
      function H(Z) {
        return (Z.transformFlags & 1024) !== 0 || P !== void 0 || T & 8192 && z(Z) || Uy(Z, !1) && ja(Z) || (pd(Z) & 1) !== 0;
      }
      function U(Z) {
        return H(Z) ? Q(Z, !1) : Z;
      }
      function pe(Z) {
        return H(Z) ? Q(Z, !0) : Z;
      }
      function ie(Z) {
        if (H(Z)) {
          const st = rc(Z);
          if (ga(st) && vl(st)) {
            const Rt = R(32670, 16449), F = Q(Z, !1);
            return G(Rt, 229376, 0), F;
          }
          return Q(Z, !1);
        }
        return Z;
      }
      function W(Z) {
        return Z.kind === 108 ? Op(Z, !0) : U(Z);
      }
      function Q(Z, st) {
        switch (Z.kind) {
          case 126:
            return;
          case 264:
            return Ae(Z);
          case 232:
            return Ne(Z);
          case 170:
            return Da(Z);
          case 263:
            return fr(Z);
          case 220:
            return Dt(Z);
          case 219:
            return Ve(Z);
          case 261:
            return fn(Z);
          case 80:
            return oe(Z);
          case 262:
            return Ke(Z);
          case 256:
            return he(Z);
          case 270:
            return fe(Z);
          case 242:
            return rt(Z, !1);
          case 253:
          case 252:
            return ge(Z);
          case 257:
            return kt(Z);
          case 247:
          case 248:
            return Ir(Z, void 0);
          case 249:
            return Yt(Z, void 0);
          case 250:
            return $t(Z, void 0);
          case 251:
            return Qt(Z, void 0);
          case 245:
            return ee(Z);
          case 211:
            return cs(Z);
          case 300:
            return ei(Z);
          case 305:
            return vc(Z);
          case 168:
            return ml(Z);
          case 210:
            return Os(Z);
          case 214:
            return Ao(Z);
          case 215:
            return Ip(Z);
          case 218:
            return q(Z, st);
          case 227:
            return j(Z, st);
          case 357:
            return Re(Z, st);
          case 15:
          case 16:
          case 17:
          case 18:
            return Qs(Z);
          case 11:
            return Oc(Z);
          case 9:
            return Dc(Z);
          case 216:
            return zs(Z);
          case 229:
            return bc(Z);
          case 230:
            return gl(Z);
          case 231:
            return io(Z);
          case 108:
            return Op(Z, !1);
          case 110:
            return Be(Z);
          case 237:
            return Wf(Z);
          case 175:
            return ds(Z);
          case 178:
          case 179:
            return cl(Z);
          case 244:
            return ye(Z);
          case 254:
            return Se(Z);
          case 223:
            return ce(Z);
          default:
            return Tr(Z, U, e);
        }
      }
      function se(Z) {
        const st = R(8064, 64), Rt = [], F = [];
        i();
        const ve = t.copyPrologue(Z.statements, Rt, !1, U);
        return Mn(F, Fr(Z.statements, U, Ei, ve)), k && F.push(t.createVariableStatement(void 0, t.createVariableDeclarationList(k))), t.mergeLexicalEnvironment(Rt, o()), re(Rt, Z), G(st, 0, 0), t.updateSourceFile(Z, pt(t.createNodeArray(zi(Rt, F)), Z.statements));
      }
      function he(Z) {
        if (P !== void 0) {
          const st = P.allowedNonLabeledJumps;
          P.allowedNonLabeledJumps |= 2;
          const Rt = Tr(Z, U, e);
          return P.allowedNonLabeledJumps = st, Rt;
        }
        return Tr(Z, U, e);
      }
      function fe(Z) {
        const st = R(7104, 0), Rt = Tr(Z, U, e);
        return G(st, 0, 0), Rt;
      }
      function de(Z) {
        return Fn(t.createReturnStatement($()), Z);
      }
      function $() {
        return t.createUniqueName("_this", 48);
      }
      function Se(Z) {
        return P ? (P.nonLocalJumps |= 8, L(Z) && (Z = de(Z)), t.createReturnStatement(t.createObjectLiteralExpression([t.createPropertyAssignment(t.createIdentifier("value"), Z.expression ? E.checkDefined(Ze(Z.expression, U, dt)) : t.createVoidZero())]))) : L(Z) ? de(Z) : Tr(Z, U, e);
      }
      function Be(Z) {
        return T |= 65536, T & 2 && !(T & 16384) && (T |= 131072), P ? T & 2 ? (P.containsLexicalThis = !0, Z) : P.thisName || (P.thisName = t.createUniqueName("this")) : Z;
      }
      function ce(Z) {
        return Tr(Z, pe, e);
      }
      function oe(Z) {
        return P && u.isArgumentsLocalBinding(Z) ? P.argumentsName || (P.argumentsName = t.createUniqueName("arguments")) : Z.flags & 256 ? Fn(pt(t.createIdentifier(Ti(Z.escapedText)), Z), Z) : Z;
      }
      function ge(Z) {
        if (P) {
          const st = Z.kind === 253 ? 2 : 4;
          if (!(Z.label && P.labels && P.labels.get(On(Z.label)) || !Z.label && P.allowedNonLabeledJumps & st)) {
            let Rt;
            const F = Z.label;
            F ? Z.kind === 253 ? (Rt = `break-${F.escapedText}`, je(P, !0, On(F), Rt)) : (Rt = `continue-${F.escapedText}`, je(P, !1, On(F), Rt)) : Z.kind === 253 ? (P.nonLocalJumps |= 2, Rt = "break") : (P.nonLocalJumps |= 4, Rt = "continue");
            let ve = t.createStringLiteral(Rt);
            if (P.loopOutParameters.length) {
              const qe = P.loopOutParameters;
              let Bt;
              for (let Rr = 0; Rr < qe.length; Rr++) {
                const cn = Ma(qe[Rr], 1);
                Rr === 0 ? Bt = cn : Bt = t.createBinaryExpression(Bt, 28, cn);
              }
              ve = t.createBinaryExpression(Bt, 28, ve);
            }
            return t.createReturnStatement(ve);
          }
        }
        return Tr(Z, U, e);
      }
      function Ae(Z) {
        const st = t.createVariableDeclaration(t.getLocalName(Z, !0), void 0, void 0, ot(Z));
        Fn(st, Z);
        const Rt = [], F = t.createVariableStatement(void 0, t.createVariableDeclarationList([st]));
        if (Fn(F, Z), pt(F, Z), Xu(F), Rt.push(F), Qn(Z, 32)) {
          const ve = Qn(Z, 2048) ? t.createExportDefault(t.getLocalName(Z)) : t.createExternalModuleExport(t.getLocalName(Z));
          Fn(ve, F), Rt.push(ve);
        }
        return ig(Rt);
      }
      function Ne(Z) {
        return ot(Z);
      }
      function ot(Z) {
        Z.name && ad();
        const st = Mb(Z), Rt = t.createFunctionExpression(void 0, void 0, void 0, void 0, st ? [t.createParameterDeclaration(void 0, void 0, Il())] : [], void 0, K(Z, st));
        ln(Rt, Bs(Z) & 131072 | 1048576);
        const F = t.createPartiallyEmittedExpression(Rt);
        k6(F, Z.end), ln(F, 3072);
        const ve = t.createPartiallyEmittedExpression(F);
        k6(ve, gs(S, Z.pos)), ln(ve, 3072);
        const qe = t.createParenthesizedExpression(t.createCallExpression(ve, void 0, st ? [E.checkDefined(Ze(st.expression, U, dt))] : []));
        return i1(qe, 3, "* @class "), qe;
      }
      function K(Z, st) {
        const Rt = [], F = t.getInternalName(Z), ve = rJ(F) ? t.getGeneratedNameForNode(F) : F;
        i(), ke(Rt, Z, st), ae(Rt, Z, ve, st), nt(Rt, Z);
        const qe = PJ(gs(S, Z.members.end), 20), Bt = t.createPartiallyEmittedExpression(ve);
        k6(Bt, qe.end), ln(Bt, 3072);
        const Rr = t.createReturnStatement(Bt);
        zD(Rr, qe.pos), ln(Rr, 3840), Rt.push(Rr), qg(Rt, o());
        const cn = t.createBlock(pt(t.createNodeArray(Rt), Z.members), !0);
        return ln(cn, 3072), cn;
      }
      function ke(Z, st, Rt) {
        Rt && Z.push(pt(t.createExpressionStatement(n().createExtendsHelper(t.getInternalName(st))), Rt));
      }
      function ae(Z, st, Rt, F) {
        const ve = P;
        P = void 0;
        const qe = R(32662, 73), Bt = Xg(st), Rr = Uf(Bt, F !== void 0), cn = t.createFunctionDeclaration(void 0, void 0, Rt, void 0, Ce(Bt, Rr), void 0, Ft(Bt, st, F, Rr));
        pt(cn, Bt || st), F && ln(cn, 16), Z.push(cn), G(qe, 229376, 0), P = ve;
      }
      function Ce(Z, st) {
        return Cc(Z && !st ? Z.parameters : void 0, U, e) || [];
      }
      function ue(Z, st) {
        const Rt = [];
        a(), t.mergeLexicalEnvironment(Rt, o()), st && Rt.push(t.createReturnStatement(Ea()));
        const F = t.createNodeArray(Rt);
        pt(F, Z.members);
        const ve = t.createBlock(F, !0);
        return pt(ve, Z), ln(ve, 3072), ve;
      }
      function Ie(Z) {
        return $c(Z) && hr(Z.declarationList.declarations, (st) => Fe(st.name) && !st.initializer);
      }
      function Xe(Z) {
        if (hS(Z)) return !0;
        if (!(Z.transformFlags & 134217728)) return !1;
        switch (Z.kind) {
          case 220:
          case 219:
          case 263:
          case 177:
          case 176:
            return !1;
          case 178:
          case 179:
          case 175:
          case 173: {
            const st = Z;
            return _s(st.name) ? !!Fa(st.name, Xe) : !1;
          }
        }
        return !!Fa(Z, Xe);
      }
      function Ft(Z, st, Rt, F) {
        const ve = !!Rt && Ic(Rt.expression).kind !== 106;
        if (!Z) return ue(st, ve);
        const qe = [], Bt = [];
        a();
        const Rr = t.copyStandardPrologue(Z.body.statements, qe, 0);
        (F || Xe(Z.body)) && (T |= 8192), Mn(Bt, Fr(Z.body.statements, U, Ei, Rr));
        const cn = ve || T & 8192;
        ha(qe, Z), tt(qe, Z, F), Ge(qe, Z), cn ? we(qe, Z, na()) : re(qe, Z), t.mergeLexicalEnvironment(qe, o()), cn && !zn(Z.body) && Bt.push(t.createReturnStatement($()));
        const dr = t.createBlock(pt(t.createNodeArray([...qe, ...Bt]), Z.body.statements), !0);
        return pt(dr, Z.body), $n(dr, Z.body, F);
      }
      function Ut(Z) {
        return Ko(Z) && On(Z) === "_this";
      }
      function Xt(Z) {
        return Ko(Z) && On(Z) === "_super";
      }
      function Ar(Z) {
        return $c(Z) && Z.declarationList.declarations.length === 1 && Ct(Z.declarationList.declarations[0]);
      }
      function Ct(Z) {
        return ci(Z) && Ut(Z.name) && !!Z.initializer;
      }
      function Kt(Z) {
        return Hl(Z, !0) && Ut(Z.left);
      }
      function zr(Z) {
        return za(Z) && Ln(Z.expression) && Xt(Z.expression.expression) && Fe(Z.expression.name) && (On(Z.expression.name) === "call" || On(Z.expression.name) === "apply") && Z.arguments.length >= 1 && Z.arguments[0].kind === 110;
      }
      function _i(Z) {
        return un(Z) && Z.operatorToken.kind === 57 && Z.right.kind === 110 && zr(Z.left);
      }
      function Gr(Z) {
        return un(Z) && Z.operatorToken.kind === 56 && un(Z.left) && Z.left.operatorToken.kind === 38 && Xt(Z.left.left) && Z.left.right.kind === 106 && zr(Z.right) && On(Z.right.expression.name) === "apply";
      }
      function Nt(Z) {
        return un(Z) && Z.operatorToken.kind === 57 && Z.right.kind === 110 && Gr(Z.left);
      }
      function Li(Z) {
        return Kt(Z) && _i(Z.right);
      }
      function ri(Z) {
        return Kt(Z) && Nt(Z.right);
      }
      function Zr(Z) {
        return zr(Z) || _i(Z) || Li(Z) || Gr(Z) || Nt(Z) || ri(Z);
      }
      function ni(Z) {
        for (let st = 0; st < Z.statements.length - 1; st++) {
          const Rt = Z.statements[st];
          if (!Ar(Rt)) continue;
          const F = Rt.declarationList.declarations[0];
          if (F.initializer.kind !== 110) continue;
          const ve = st;
          let qe = st + 1;
          for (; qe < Z.statements.length; ) {
            const ji = Z.statements[qe];
            if (zl(ji) && Zr(Ic(ji.expression)))
              break;
            if (Ie(ji)) {
              qe++;
              continue;
            }
            return Z;
          }
          const Bt = Z.statements[qe];
          let Rr = Bt.expression;
          Kt(Rr) && (Rr = Rr.right);
          const cn = t.updateVariableDeclaration(F, F.name, void 0, void 0, Rr), dr = t.updateVariableDeclarationList(Rt.declarationList, [cn]), Cn = t.createVariableStatement(Rt.modifiers, dr);
          Fn(Cn, Bt), pt(Cn, Bt);
          const fs = t.createNodeArray([
            ...Z.statements.slice(0, ve),
            ...Z.statements.slice(ve + 1, qe),
            Cn,
            ...Z.statements.slice(qe + 1)
          ]);
          return pt(fs, Z.statements), t.updateBlock(Z, fs);
        }
        return Z;
      }
      function ra(Z, st) {
        for (const F of st.statements) if (F.transformFlags & 134217728 && !XF(F)) return Z;
        const Rt = !(st.transformFlags & 16384) && !(T & 65536) && !(T & 131072);
        for (let F = Z.statements.length - 1; F > 0; F--) {
          const ve = Z.statements[F];
          if (zf(ve) && ve.expression && Ut(ve.expression)) {
            const qe = Z.statements[F - 1];
            let Bt;
            if (zl(qe) && Li(Ic(qe.expression))) Bt = qe.expression;
            else if (Rt && Ar(qe)) {
              const dr = qe.declarationList.declarations[0];
              Zr(Ic(dr.initializer)) && (Bt = t.createAssignment($(), dr.initializer));
            }
            if (!Bt) break;
            const Rr = t.createReturnStatement(Bt);
            Fn(Rr, qe), pt(Rr, qe);
            const cn = t.createNodeArray([
              ...Z.statements.slice(0, F - 1),
              Rr,
              ...Z.statements.slice(F + 1)
            ]);
            return pt(cn, Z.statements), t.updateBlock(Z, cn);
          }
        }
        return Z;
      }
      function Me(Z) {
        if (Ar(Z)) {
          if (Z.declarationList.declarations[0].initializer.kind === 110) return;
        } else if (Kt(Z)) return t.createPartiallyEmittedExpression(Z.right, Z);
        switch (Z.kind) {
          case 220:
          case 219:
          case 263:
          case 177:
          case 176:
            return Z;
          case 178:
          case 179:
          case 175:
          case 173: {
            const st = Z;
            return _s(st.name) ? t.replacePropertyName(st, Tr(st.name, Me, void 0)) : Z;
          }
        }
        return Tr(Z, Me, void 0);
      }
      function vt(Z, st) {
        if (st.transformFlags & 16384 || T & 65536 || T & 131072) return Z;
        for (const Rt of st.statements) if (Rt.transformFlags & 134217728 && !XF(Rt)) return Z;
        return t.updateBlock(Z, Fr(Z.statements, Me, Ei));
      }
      function tr(Z) {
        if (zr(Z) && Z.arguments.length === 2 && Fe(Z.arguments[1]) && On(Z.arguments[1]) === "arguments") return t.createLogicalAnd(t.createStrictInequality(Il(), t.createNull()), Z);
        switch (Z.kind) {
          case 220:
          case 219:
          case 263:
          case 177:
          case 176:
            return Z;
          case 178:
          case 179:
          case 175:
          case 173: {
            const st = Z;
            return _s(st.name) ? t.replacePropertyName(st, Tr(st.name, tr, void 0)) : Z;
          }
        }
        return Tr(Z, tr, void 0);
      }
      function Ur(Z) {
        return t.updateBlock(Z, Fr(Z.statements, tr, Ei));
      }
      function $n(Z, st, Rt) {
        const F = Z;
        return Z = ni(Z), Z = ra(Z, st), Z !== F && (Z = vt(Z, st)), Rt && (Z = Ur(Z)), Z;
      }
      function zn(Z) {
        if (Z.kind === 254) return !0;
        if (Z.kind === 246) {
          const st = Z;
          if (st.elseStatement) return zn(st.thenStatement) && zn(st.elseStatement);
        } else if (Z.kind === 242) {
          const st = Wo(Z.statements);
          if (st && zn(st)) return !0;
        }
        return !1;
      }
      function na() {
        return ln(t.createThis(), 8);
      }
      function Ea() {
        return t.createLogicalOr(t.createLogicalAnd(t.createStrictInequality(Il(), t.createNull()), t.createFunctionApplyCall(Il(), na(), t.createIdentifier("arguments"))), na());
      }
      function Da(Z) {
        if (!Z.dotDotDotToken)
          return Ja(Z.name) ? Fn(pt(t.createParameterDeclaration(void 0, void 0, t.getGeneratedNameForNode(Z), void 0, void 0, void 0), Z), Z) : Z.initializer ? Fn(pt(t.createParameterDeclaration(void 0, void 0, Z.name, void 0, void 0, void 0), Z), Z) : Z;
      }
      function Lr(Z) {
        return Z.initializer !== void 0 || Ja(Z.name);
      }
      function ha(Z, st) {
        if (!_t(st.parameters, Lr)) return !1;
        let Rt = !1;
        for (const F of st.parameters) {
          const { name: ve, initializer: qe, dotDotDotToken: Bt } = F;
          Bt || (Ja(ve) ? Rt = Ye(Z, F, ve, qe) || Rt : qe && (Pt(Z, F, ve, qe), Rt = !0));
        }
        return Rt;
      }
      function Ye(Z, st, Rt, F) {
        return Rt.elements.length > 0 ? (mS(Z, ln(t.createVariableStatement(void 0, t.createVariableDeclarationList(n2(st, U, e, 0, t.getGeneratedNameForNode(st)))), 2097152)), !0) : F ? (mS(Z, ln(t.createExpressionStatement(t.createAssignment(t.getGeneratedNameForNode(st), E.checkDefined(Ze(F, U, dt)))), 2097152)), !0) : !1;
      }
      function Pt(Z, st, Rt, F) {
        F = E.checkDefined(Ze(F, U, dt));
        const ve = t.createIfStatement(t.createTypeCheck(t.cloneNode(Rt), "undefined"), ln(pt(t.createBlock([t.createExpressionStatement(ln(pt(t.createAssignment(ln(eo(pt(t.cloneNode(Rt), Rt), Rt.parent), 96), ln(F, Bs(F) | 3168)), st), 3072))]), st), 3905));
        Xu(ve), pt(ve, st), ln(ve, 2101056), mS(Z, ve);
      }
      function ne(Z, st) {
        return !!(Z && Z.dotDotDotToken && !st);
      }
      function tt(Z, st, Rt) {
        const F = [], ve = Wo(st.parameters);
        if (!ne(ve, Rt)) return !1;
        const qe = ve.name.kind === 80 ? eo(pt(t.cloneNode(ve.name), ve.name), ve.name.parent) : t.createTempVariable(void 0);
        ln(qe, 96);
        const Bt = ve.name.kind === 80 ? t.cloneNode(ve.name) : qe, Rr = st.parameters.length - 1, cn = t.createLoopVariable();
        F.push(ln(pt(t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(qe, void 0, void 0, t.createArrayLiteralExpression([]))])), ve), 2097152));
        const dr = t.createForStatement(pt(t.createVariableDeclarationList([t.createVariableDeclaration(cn, void 0, void 0, t.createNumericLiteral(Rr))]), ve), pt(t.createLessThan(cn, t.createPropertyAccessExpression(t.createIdentifier("arguments"), "length")), ve), pt(t.createPostfixIncrement(cn), ve), t.createBlock([Xu(pt(t.createExpressionStatement(t.createAssignment(t.createElementAccessExpression(Bt, Rr === 0 ? cn : t.createSubtract(cn, t.createNumericLiteral(Rr))), t.createElementAccessExpression(t.createIdentifier("arguments"), cn))), ve))]));
        return ln(dr, 2097152), Xu(dr), F.push(dr), ve.name.kind !== 80 && F.push(ln(pt(t.createVariableStatement(void 0, t.createVariableDeclarationList(n2(ve, U, e, 0, Bt))), ve), 2097152)), bB(Z, F), !0;
      }
      function re(Z, st) {
        return T & 131072 && st.kind !== 220 ? (we(Z, st, t.createThis()), !0) : !1;
      }
      function we(Z, st, Rt) {
        hl();
        const F = t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration($(), void 0, void 0, Rt)]));
        ln(F, 2100224), As(F, st), mS(Z, F);
      }
      function Ge(Z, st) {
        if (T & 32768) {
          let Rt;
          switch (st.kind) {
            case 220:
              return Z;
            case 175:
            case 178:
            case 179:
              Rt = t.createVoidZero();
              break;
            case 177:
              Rt = t.createPropertyAccessExpression(ln(t.createThis(), 8), "constructor");
              break;
            case 263:
            case 219:
              Rt = t.createConditionalExpression(t.createLogicalAnd(ln(t.createThis(), 8), t.createBinaryExpression(ln(t.createThis(), 8), 104, t.getLocalName(st))), void 0, t.createPropertyAccessExpression(ln(t.createThis(), 8), "constructor"), void 0, t.createVoidZero());
              break;
            default:
              return E.failBadSyntaxKind(st);
          }
          const F = t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(t.createUniqueName("_newTarget", 48), void 0, void 0, Rt)]));
          ln(F, 2100224), mS(Z, F);
        }
        return Z;
      }
      function nt(Z, st) {
        for (const Rt of st.members) switch (Rt.kind) {
          case 241:
            Z.push(it(Rt));
            break;
          case 175:
            Z.push(ut(t0(st, Rt), Rt, st));
            break;
          case 178:
          case 179:
            const F = Bb(st.members, Rt);
            Rt === F.firstAccessor && Z.push(Qe(t0(st, Rt), F, st));
            break;
          case 177:
          case 176:
            break;
          default:
            E.failBadSyntaxKind(Rt, h && h.fileName);
            break;
        }
      }
      function it(Z) {
        return pt(t.createEmptyStatement(), Z);
      }
      function ut(Z, st, Rt) {
        const F = Pm(st), ve = M0(st), qe = rr(st, st, void 0, Rt), Bt = Ze(st.name, U, il);
        E.assert(Bt);
        let Rr;
        if (!Oi(Bt) && jA(e.getCompilerOptions())) {
          const dr = _s(Bt) ? Bt.expression : Fe(Bt) ? t.createStringLiteral(Ti(Bt.escapedText)) : Bt;
          Rr = t.createObjectDefinePropertyCall(Z, dr, t.createPropertyDescriptor({
            value: qe,
            enumerable: !1,
            writable: !0,
            configurable: !0
          }));
        } else {
          const dr = US(t, Z, Bt, st.name);
          Rr = t.createAssignment(dr, qe);
        }
        ln(qe, 3072), As(qe, ve);
        const cn = pt(t.createExpressionStatement(Rr), st);
        return Fn(cn, st), fl(cn, F), ln(cn, 96), cn;
      }
      function Qe(Z, st, Rt) {
        const F = t.createExpressionStatement(xt(Z, st, Rt, !1));
        return ln(F, 3072), As(F, M0(st.firstAccessor)), F;
      }
      function xt(Z, { firstAccessor: st, getAccessor: Rt, setAccessor: F }, ve, qe) {
        const Bt = eo(pt(t.cloneNode(Z), Z), Z.parent);
        ln(Bt, 3136), As(Bt, st.name);
        const Rr = Ze(st.name, U, il);
        if (E.assert(Rr), Oi(Rr)) return E.failBadSyntaxKind(Rr, "Encountered unhandled private identifier while transforming ES2015.");
        const cn = Xz(t, Rr);
        ln(cn, 3104), As(cn, st.name);
        const dr = [];
        if (Rt) {
          const fs = rr(Rt, void 0, void 0, ve);
          As(fs, M0(Rt)), ln(fs, 1024);
          const ji = t.createPropertyAssignment("get", fs);
          fl(ji, Pm(Rt)), dr.push(ji);
        }
        if (F) {
          const fs = rr(F, void 0, void 0, ve);
          As(fs, M0(F)), ln(fs, 1024);
          const ji = t.createPropertyAssignment("set", fs);
          fl(ji, Pm(F)), dr.push(ji);
        }
        dr.push(t.createPropertyAssignment("enumerable", Rt || F ? t.createFalse() : t.createTrue()), t.createPropertyAssignment("configurable", t.createTrue()));
        const Cn = t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"), "defineProperty"), void 0, [
          Bt,
          cn,
          t.createObjectLiteralExpression(dr, !0)
        ]);
        return qe && Xu(Cn), Cn;
      }
      function Dt(Z) {
        Z.transformFlags & 16384 && !(T & 16384) && (T |= 131072);
        const st = P;
        P = void 0;
        const Rt = R(15232, 66), F = t.createFunctionExpression(void 0, void 0, void 0, void 0, Cc(Z.parameters, U, e), void 0, Oe(Z));
        return pt(F, Z), Fn(F, Z), ln(F, 16), G(Rt, 0, 0), P = st, F;
      }
      function Ve(Z) {
        const st = Bs(Z) & 524288 ? R(32662, 69) : R(32670, 65), Rt = P;
        P = void 0;
        const F = Cc(Z.parameters, U, e), ve = Oe(Z), qe = T & 32768 ? t.getLocalName(Z) : Z.name;
        return G(st, 229376, 0), P = Rt, t.updateFunctionExpression(Z, void 0, Z.asteriskToken, qe, void 0, F, void 0, ve);
      }
      function fr(Z) {
        const st = P;
        P = void 0;
        const Rt = R(32670, 65), F = Cc(Z.parameters, U, e), ve = Oe(Z), qe = T & 32768 ? t.getLocalName(Z) : Z.name;
        return G(Rt, 229376, 0), P = st, t.updateFunctionDeclaration(Z, Fr(Z.modifiers, U, hs), Z.asteriskToken, qe, void 0, F, void 0, ve);
      }
      function rr(Z, st, Rt, F) {
        const ve = P;
        P = void 0;
        const qe = F && Zn(F) && !es(Z) ? R(32670, 73) : R(32670, 65), Bt = Cc(Z.parameters, U, e), Rr = Oe(Z);
        return T & 32768 && !Rt && (Z.kind === 263 || Z.kind === 219) && (Rt = t.getGeneratedNameForNode(Z)), G(qe, 229376, 0), P = ve, Fn(pt(t.createFunctionExpression(void 0, Z.asteriskToken, Rt, void 0, Bt, void 0, Rr), st), Z);
      }
      function Oe(Z) {
        let st = !1, Rt = !1, F, ve;
        const qe = [], Bt = [], Rr = Z.body;
        let cn;
        if (a(), Wa(Rr) && (cn = t.copyStandardPrologue(Rr.statements, qe, 0, !1), cn = t.copyCustomPrologue(Rr.statements, Bt, cn, U, b5), cn = t.copyCustomPrologue(Rr.statements, Bt, cn, U, S5)), st = ha(Bt, Z) || st, st = tt(Bt, Z, !1) || st, Wa(Rr))
          cn = t.copyCustomPrologue(Rr.statements, Bt, cn, U), F = Rr.statements, Mn(Bt, Fr(Rr.statements, U, Ei, cn)), !st && Rr.multiLine && (st = !0);
        else {
          E.assert(Z.kind === 220), F = aO(Rr, -1);
          const Cn = Z.equalsGreaterThanToken;
          !wo(Cn) && !wo(Rr) && (IA(Cn, Rr, h) ? Rt = !0 : st = !0);
          const fs = Ze(Rr, U, dt), ji = t.createReturnStatement(fs);
          pt(ji, Rr), kte(ji, Rr), ln(ji, 2880), Bt.push(ji), ve = Rr;
        }
        if (t.mergeLexicalEnvironment(qe, o()), Ge(qe, Z), re(qe, Z), _t(qe) && (st = !0), Bt.unshift(...qe), Wa(Rr) && jf(Bt, Rr.statements)) return Rr;
        const dr = t.createBlock(pt(t.createNodeArray(Bt), F), st);
        return pt(dr, Z.body), !st && Rt && ln(dr, 1), ve && xte(dr, 20, ve), Fn(dr, Z.body), dr;
      }
      function rt(Z, st) {
        if (st) return Tr(Z, U, e);
        const Rt = T & 256 ? R(7104, 512) : R(6976, 128), F = Tr(Z, U, e);
        return G(Rt, 0, 0), F;
      }
      function ee(Z) {
        return Tr(Z, pe, e);
      }
      function q(Z, st) {
        return Tr(Z, st ? pe : U, e);
      }
      function j(Z, st) {
        return A0(Z) ? $S(Z, U, e, 0, !st) : Z.operatorToken.kind === 28 ? t.updateBinaryExpression(Z, E.checkDefined(Ze(Z.left, pe, dt)), Z.operatorToken, E.checkDefined(Ze(Z.right, st ? pe : U, dt))) : Tr(Z, U, e);
      }
      function Re(Z, st) {
        if (st) return Tr(Z, pe, e);
        let Rt;
        for (let ve = 0; ve < Z.elements.length; ve++) {
          const qe = Z.elements[ve], Bt = Ze(qe, ve < Z.elements.length - 1 ? pe : U, dt);
          (Rt || Bt !== qe) && (Rt || (Rt = Z.elements.slice(0, ve)), E.assert(Bt), Rt.push(Bt));
        }
        const F = Rt ? pt(t.createNodeArray(Rt), Z.elements) : Z.elements;
        return t.updateCommaListExpression(Z, F);
      }
      function $e(Z) {
        return Z.declarationList.declarations.length === 1 && !!Z.declarationList.declarations[0].initializer && !!(pd(Z.declarationList.declarations[0].initializer) & 1);
      }
      function ye(Z) {
        const st = R(0, Qn(Z, 32) ? 32 : 0);
        let Rt;
        if (P && (Z.declarationList.flags & 7) === 0 && !$e(Z)) {
          let F;
          for (const ve of Z.declarationList.declarations)
            if (Yc(P, ve), ve.initializer) {
              let qe;
              Ja(ve.name) ? qe = $S(ve, U, e, 0) : (qe = t.createBinaryExpression(ve.name, 64, E.checkDefined(Ze(ve.initializer, U, dt))), pt(qe, ve)), F = kr(F, qe);
            }
          F ? Rt = pt(t.createExpressionStatement(t.inlineExpressions(F)), Z) : Rt = void 0;
        } else Rt = Tr(Z, U, e);
        return G(st, 0, 0), Rt;
      }
      function Ke(Z) {
        if (Z.flags & 7 || Z.transformFlags & 524288) {
          Z.flags & 7 && ad();
          const st = Fr(Z.declarations, Z.flags & 1 ? vr : fn, ci), Rt = t.createVariableDeclarationList(st);
          return Fn(Rt, Z), pt(Rt, Z), fl(Rt, Z), Z.transformFlags & 524288 && (Ja(Z.declarations[0].name) || Ja(ws(Z.declarations).name)) && As(Rt, pr(st)), Rt;
        }
        return Tr(Z, U, e);
      }
      function pr(Z) {
        let st = -1, Rt = -1;
        for (const F of Z)
          st = st === -1 ? F.pos : F.pos === -1 ? st : Math.min(st, F.pos), Rt = Math.max(Rt, F.end);
        return bf(st, Rt);
      }
      function Pr(Z) {
        const st = u.hasNodeCheckFlag(Z, 16384), Rt = u.hasNodeCheckFlag(Z, 32768);
        return !((T & 64) !== 0 || st && Rt && (T & 512) !== 0) && (T & 4096) === 0 && (!u.isDeclarationWithCollidingName(Z) || Rt && !st && (T & 6144) === 0);
      }
      function vr(Z) {
        const st = Z.name;
        return Ja(st) ? fn(Z) : !Z.initializer && Pr(Z) ? t.updateVariableDeclaration(Z, Z.name, void 0, void 0, t.createVoidZero()) : Tr(Z, U, e);
      }
      function fn(Z) {
        const st = R(32, 0);
        let Rt;
        return Ja(Z.name) ? Rt = n2(Z, U, e, 0, void 0, (st & 32) !== 0) : Rt = Tr(Z, U, e), G(st, 0, 0), Rt;
      }
      function Cr(Z) {
        P.labels.set(On(Z.label), !0);
      }
      function et(Z) {
        P.labels.set(On(Z.label), !1);
      }
      function kt(Z) {
        P && !P.labels && (P.labels = /* @__PURE__ */ new Map());
        const st = BB(Z, P && Cr);
        return Uy(st, !1) ? wt(st, Z) : t.restoreEnclosingLabel(Ze(st, U, Ei, t.liftToBlock) ?? pt(t.createEmptyStatement(), st), Z, P && et);
      }
      function wt(Z, st) {
        switch (Z.kind) {
          case 247:
          case 248:
            return Ir(Z, st);
          case 249:
            return Yt(Z, st);
          case 250:
            return $t(Z, st);
          case 251:
            return Qt(Z, st);
        }
      }
      function qt(Z, st, Rt, F, ve) {
        const qe = R(Z, st), Bt = Ou(Rt, F, qe, ve);
        return G(qe, 0, 0), Bt;
      }
      function Ir(Z, st) {
        return qt(0, 1280, Z, st);
      }
      function Yt(Z, st) {
        return qt(5056, 3328, Z, st);
      }
      function Jt(Z) {
        return t.updateForStatement(Z, Ze(Z.initializer, pe, bp), Ze(Z.condition, U, dt), Ze(Z.incrementor, pe, dt), E.checkDefined(Ze(Z.statement, U, Ei, t.liftToBlock)));
      }
      function $t(Z, st) {
        return qt(3008, 5376, Z, st);
      }
      function Qt(Z, st) {
        return qt(3008, 5376, Z, st, _.downlevelIteration ? os : Mi);
      }
      function ct(Z, st, Rt) {
        const F = [], ve = Z.initializer;
        if (iu(ve)) {
          Z.initializer.flags & 7 && ad();
          const qe = ul(ve.declarations);
          if (qe && Ja(qe.name)) {
            const Bt = n2(qe, U, e, 0, st), Rr = pt(t.createVariableDeclarationList(Bt), Z.initializer);
            Fn(Rr, Z.initializer), As(Rr, bf(Bt[0].pos, ws(Bt).end)), F.push(t.createVariableStatement(void 0, Rr));
          } else F.push(pt(t.createVariableStatement(void 0, Fn(pt(t.createVariableDeclarationList([t.createVariableDeclaration(qe ? qe.name : t.createTempVariable(void 0), void 0, void 0, st)]), hv(ve, -1)), ve)), aO(ve, -1)));
        } else {
          const qe = t.createAssignment(ve, st);
          A0(qe) ? F.push(t.createExpressionStatement(j(qe, !0))) : (k6(qe, ve.end), F.push(pt(t.createExpressionStatement(E.checkDefined(Ze(qe, U, dt))), aO(ve, -1))));
        }
        if (Rt) return wn(Mn(F, Rt));
        {
          const qe = Ze(Z.statement, U, Ei, t.liftToBlock);
          return E.assert(qe), Wa(qe) ? t.updateBlock(qe, pt(t.createNodeArray(zi(F, qe.statements)), qe.statements)) : (F.push(qe), wn(F));
        }
      }
      function wn(Z) {
        return ln(t.createBlock(t.createNodeArray(Z), !0), 864);
      }
      function Mi(Z, st, Rt) {
        const F = Ze(Z.expression, U, dt);
        E.assert(F);
        const ve = t.createLoopVariable(), qe = Fe(F) ? t.getGeneratedNameForNode(F) : t.createTempVariable(void 0);
        ln(F, 96 | Bs(F));
        const Bt = pt(t.createForStatement(ln(pt(t.createVariableDeclarationList([pt(t.createVariableDeclaration(ve, void 0, void 0, t.createNumericLiteral(0)), hv(Z.expression, -1)), pt(t.createVariableDeclaration(qe, void 0, void 0, F), Z.expression)]), Z.expression), 4194304), pt(t.createLessThan(ve, t.createPropertyAccessExpression(qe, "length")), Z.expression), pt(t.createPostfixIncrement(ve), Z.expression), ct(Z, t.createElementAccessExpression(qe, ve), Rt)), Z);
        return ln(Bt, 512), pt(Bt, Z), t.restoreEnclosingLabel(Bt, st, P && et);
      }
      function os(Z, st, Rt, F) {
        const ve = Ze(Z.expression, U, dt);
        E.assert(ve);
        const qe = Fe(ve) ? t.getGeneratedNameForNode(ve) : t.createTempVariable(void 0), Bt = Fe(ve) ? t.getGeneratedNameForNode(qe) : t.createTempVariable(void 0), Rr = t.createUniqueName("e"), cn = t.getGeneratedNameForNode(Rr), dr = t.createTempVariable(void 0), Cn = pt(n().createValuesHelper(ve), Z.expression), fs = t.createCallExpression(t.createPropertyAccessExpression(qe, "next"), void 0, []);
        c(Rr), c(dr);
        const ji = F & 1024 ? t.inlineExpressions([t.createAssignment(Rr, t.createVoidZero()), Cn]) : Cn, Fc = ln(pt(t.createForStatement(ln(pt(t.createVariableDeclarationList([pt(t.createVariableDeclaration(qe, void 0, void 0, ji), Z.expression), t.createVariableDeclaration(Bt, void 0, void 0, fs)]), Z.expression), 4194304), t.createLogicalNot(t.createPropertyAccessExpression(Bt, "done")), t.createAssignment(Bt, fs), ct(Z, t.createPropertyAccessExpression(Bt, "value"), Rt)), Z), 512);
        return t.createTryStatement(t.createBlock([t.restoreEnclosingLabel(Fc, st, P && et)]), t.createCatchClause(t.createVariableDeclaration(cn), ln(t.createBlock([t.createExpressionStatement(t.createAssignment(Rr, t.createObjectLiteralExpression([t.createPropertyAssignment("error", cn)])))]), 1)), t.createBlock([t.createTryStatement(t.createBlock([ln(t.createIfStatement(t.createLogicalAnd(t.createLogicalAnd(Bt, t.createLogicalNot(t.createPropertyAccessExpression(Bt, "done"))), t.createAssignment(dr, t.createPropertyAccessExpression(qe, "return"))), t.createExpressionStatement(t.createFunctionCallCall(dr, qe, []))), 1)]), void 0, ln(t.createBlock([ln(t.createIfStatement(Rr, t.createThrowStatement(t.createPropertyAccessExpression(Rr, "error"))), 1)]), 1))]));
      }
      function cs(Z) {
        const st = Z.properties;
        let Rt = -1, F = !1;
        for (let Rr = 0; Rr < st.length; Rr++) {
          const cn = st[Rr];
          if (cn.transformFlags & 1048576 && T & 4 || (F = E.checkDefined(cn.name).kind === 168)) {
            Rt = Rr;
            break;
          }
        }
        if (Rt < 0) return Tr(Z, U, e);
        const ve = t.createTempVariable(c), qe = [], Bt = t.createAssignment(ve, ln(t.createObjectLiteralExpression(Fr(st, U, zg, 0, Rt), Z.multiLine), F ? 131072 : 0));
        return Z.multiLine && Xu(Bt), qe.push(Bt), jr(qe, Z, ve, Rt), qe.push(Z.multiLine ? Xu(eo(pt(t.cloneNode(ve), ve), ve.parent)) : ve), t.inlineExpressions(qe);
      }
      function xa(Z) {
        return u.hasNodeCheckFlag(Z, 8192);
      }
      function oo(Z) {
        return Ev(Z) && !!Z.initializer && xa(Z.initializer);
      }
      function To(Z) {
        return Ev(Z) && !!Z.condition && xa(Z.condition);
      }
      function ia(Z) {
        return Ev(Z) && !!Z.incrementor && xa(Z.incrementor);
      }
      function ja(Z) {
        return _o(Z) || oo(Z);
      }
      function _o(Z) {
        return u.hasNodeCheckFlag(Z, 4096);
      }
      function Yc(Z, st) {
        Z.hoistedLocalVariables || (Z.hoistedLocalVariables = []), Rt(st.name);
        function Rt(F) {
          if (F.kind === 80) Z.hoistedLocalVariables.push(F);
          else for (const ve of F.elements) Al(ve) || Rt(ve.name);
        }
      }
      function Ou(Z, st, Rt, F) {
        if (!ja(Z)) {
          let Cn;
          P && (Cn = P.allowedNonLabeledJumps, P.allowedNonLabeledJumps = 6);
          const fs = F ? F(Z, st, void 0, Rt) : t.restoreEnclosingLabel(Ev(Z) ? Jt(Z) : Tr(Z, U, e), st, P && et);
          return P && (P.allowedNonLabeledJumps = Cn), fs;
        }
        const ve = Zt(Z), qe = [], Bt = P;
        P = ve;
        const Rr = oo(Z) ? Wl(Z, ve) : void 0, cn = _o(Z) ? bu(Z, ve, Bt) : void 0;
        P = Bt, Rr && qe.push(Rr.functionDeclaration), cn && qe.push(cn.functionDeclaration), Mo(qe, ve, Bt), Rr && qe.push(Qo(Rr.functionName, Rr.containsYield));
        let dr;
        if (cn) if (F) dr = F(Z, st, cn.part, Rt);
        else {
          const Cn = _c(Z, Rr, t.createBlock(cn.part, !0));
          dr = t.restoreEnclosingLabel(Cn, st, P && et);
        }
        else {
          const Cn = _c(Z, Rr, E.checkDefined(Ze(Z.statement, U, Ei, t.liftToBlock)));
          dr = t.restoreEnclosingLabel(Cn, st, P && et);
        }
        return qe.push(dr), qe;
      }
      function _c(Z, st, Rt) {
        switch (Z.kind) {
          case 249:
            return xl(Z, st, Rt);
          case 250:
            return $a(Z, Rt);
          case 251:
            return fa(Z, Rt);
          case 247:
            return Yi(Z, Rt);
          case 248:
            return Is(Z, Rt);
          default:
            return E.failBadSyntaxKind(Z, "IterationStatement expected");
        }
      }
      function xl(Z, st, Rt) {
        const F = Z.condition && xa(Z.condition), ve = F || Z.incrementor && xa(Z.incrementor);
        return t.updateForStatement(Z, Ze(st ? st.part : Z.initializer, pe, bp), Ze(F ? void 0 : Z.condition, U, dt), Ze(ve ? void 0 : Z.incrementor, pe, dt), Rt);
      }
      function fa(Z, st) {
        return t.updateForOfStatement(Z, void 0, E.checkDefined(Ze(Z.initializer, U, bp)), E.checkDefined(Ze(Z.expression, U, dt)), st);
      }
      function $a(Z, st) {
        return t.updateForInStatement(Z, E.checkDefined(Ze(Z.initializer, U, bp)), E.checkDefined(Ze(Z.expression, U, dt)), st);
      }
      function Yi(Z, st) {
        return t.updateDoStatement(Z, st, E.checkDefined(Ze(Z.expression, U, dt)));
      }
      function Is(Z, st) {
        return t.updateWhileStatement(Z, E.checkDefined(Ze(Z.expression, U, dt)), st);
      }
      function Zt(Z) {
        let st;
        switch (Z.kind) {
          case 249:
          case 250:
          case 251:
            const qe = Z.initializer;
            qe && qe.kind === 262 && (st = qe);
            break;
        }
        const Rt = [], F = [];
        if (st && x0(st) & 7) {
          const qe = oo(Z) || To(Z) || ia(Z);
          for (const Bt of st.declarations) St(Z, Bt, Rt, F, qe);
        }
        const ve = {
          loopParameters: Rt,
          loopOutParameters: F
        };
        return P && (P.argumentsName && (ve.argumentsName = P.argumentsName), P.thisName && (ve.thisName = P.thisName), P.hoistedLocalVariables && (ve.hoistedLocalVariables = P.hoistedLocalVariables)), ve;
      }
      function Mo(Z, st, Rt) {
        let F;
        if (st.argumentsName && (Rt ? Rt.argumentsName = st.argumentsName : (F || (F = [])).push(t.createVariableDeclaration(st.argumentsName, void 0, void 0, t.createIdentifier("arguments")))), st.thisName && (Rt ? Rt.thisName = st.thisName : (F || (F = [])).push(t.createVariableDeclaration(st.thisName, void 0, void 0, t.createIdentifier("this")))), st.hoistedLocalVariables) if (Rt) Rt.hoistedLocalVariables = st.hoistedLocalVariables;
        else {
          F || (F = []);
          for (const ve of st.hoistedLocalVariables) F.push(t.createVariableDeclaration(ve));
        }
        if (st.loopOutParameters.length) {
          F || (F = []);
          for (const ve of st.loopOutParameters) F.push(t.createVariableDeclaration(ve.outParamName));
        }
        st.conditionVariable && (F || (F = []), F.push(t.createVariableDeclaration(st.conditionVariable, void 0, void 0, t.createFalse()))), F && Z.push(t.createVariableStatement(void 0, t.createVariableDeclarationList(F)));
      }
      function ou(Z) {
        return t.createVariableDeclaration(Z.originalName, void 0, void 0, Z.outParamName);
      }
      function Wl(Z, st) {
        const Rt = t.createUniqueName("_loop_init"), F = (Z.initializer.transformFlags & 1048576) !== 0;
        let ve = 0;
        st.containsLexicalThis && (ve |= 16), F && T & 4 && (ve |= 524288);
        const qe = [];
        return qe.push(t.createVariableStatement(void 0, Z.initializer)), ac(st.loopOutParameters, 2, 1, qe), {
          functionName: Rt,
          containsYield: F,
          functionDeclaration: t.createVariableStatement(void 0, ln(t.createVariableDeclarationList([t.createVariableDeclaration(Rt, void 0, void 0, ln(t.createFunctionExpression(void 0, F ? t.createToken(42) : void 0, void 0, void 0, void 0, void 0, E.checkDefined(Ze(t.createBlock(qe, !0), U, Wa))), ve))]), 4194304)),
          part: t.createVariableDeclarationList(or(st.loopOutParameters, ou))
        };
      }
      function bu(Z, st, Rt) {
        const F = t.createUniqueName("_loop");
        i();
        const ve = Ze(Z.statement, U, Ei, t.liftToBlock), qe = o(), Bt = [];
        (To(Z) || ia(Z)) && (st.conditionVariable = t.createUniqueName("inc"), Z.incrementor ? Bt.push(t.createIfStatement(st.conditionVariable, t.createExpressionStatement(E.checkDefined(Ze(Z.incrementor, U, dt))), t.createExpressionStatement(t.createAssignment(st.conditionVariable, t.createTrue())))) : Bt.push(t.createIfStatement(t.createLogicalNot(st.conditionVariable), t.createExpressionStatement(t.createAssignment(st.conditionVariable, t.createTrue())))), To(Z) && Bt.push(t.createIfStatement(t.createPrefixUnaryExpression(54, E.checkDefined(Ze(Z.condition, U, dt))), E.checkDefined(Ze(t.createBreakStatement(), U, Ei))))), E.assert(ve), Wa(ve) ? Mn(Bt, ve.statements) : Bt.push(ve), ac(st.loopOutParameters, 1, 1, Bt), qg(Bt, qe);
        const Rr = t.createBlock(Bt, !0);
        Wa(ve) && Fn(Rr, ve);
        const cn = (Z.statement.transformFlags & 1048576) !== 0;
        let dr = 1048576;
        return st.containsLexicalThis && (dr |= 16), cn && (T & 4) !== 0 && (dr |= 524288), {
          functionName: F,
          containsYield: cn,
          functionDeclaration: t.createVariableStatement(void 0, ln(t.createVariableDeclarationList([t.createVariableDeclaration(F, void 0, void 0, ln(t.createFunctionExpression(void 0, cn ? t.createToken(42) : void 0, void 0, void 0, st.loopParameters, void 0, Rr), dr))]), 4194304)),
          part: I(F, st, Rt, cn)
        };
      }
      function Ma(Z, st) {
        const Rt = st === 0 ? Z.outParamName : Z.originalName, F = st === 0 ? Z.originalName : Z.outParamName;
        return t.createBinaryExpression(F, 64, Rt);
      }
      function ac(Z, st, Rt, F) {
        for (const ve of Z) ve.flags & st && F.push(t.createExpressionStatement(Ma(ve, Rt)));
      }
      function Qo(Z, st) {
        const Rt = t.createCallExpression(Z, void 0, []), F = st ? t.createYieldExpression(t.createToken(42), ln(Rt, 8388608)) : Rt;
        return t.createExpressionStatement(F);
      }
      function I(Z, st, Rt, F) {
        const ve = [], qe = !(st.nonLocalJumps & -5) && !st.labeledNonLocalBreaks && !st.labeledNonLocalContinues, Bt = t.createCallExpression(Z, void 0, or(st.loopParameters, (cn) => cn.name)), Rr = F ? t.createYieldExpression(t.createToken(42), ln(Bt, 8388608)) : Bt;
        if (qe)
          ve.push(t.createExpressionStatement(Rr)), ac(st.loopOutParameters, 1, 0, ve);
        else {
          const cn = t.createUniqueName("state"), dr = t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(cn, void 0, void 0, Rr)]));
          if (ve.push(dr), ac(st.loopOutParameters, 1, 0, ve), st.nonLocalJumps & 8) {
            let Cn;
            Rt ? (Rt.nonLocalJumps |= 8, Cn = t.createReturnStatement(cn)) : Cn = t.createReturnStatement(t.createPropertyAccessExpression(cn, "value")), ve.push(t.createIfStatement(t.createTypeCheck(cn, "object"), Cn));
          }
          if (st.nonLocalJumps & 2 && ve.push(t.createIfStatement(t.createStrictEquality(cn, t.createStringLiteral("break")), t.createBreakStatement())), st.labeledNonLocalBreaks || st.labeledNonLocalContinues) {
            const Cn = [];
            lt(st.labeledNonLocalBreaks, !0, cn, Rt, Cn), lt(st.labeledNonLocalContinues, !1, cn, Rt, Cn), ve.push(t.createSwitchStatement(cn, t.createCaseBlock(Cn)));
          }
        }
        return ve;
      }
      function je(Z, st, Rt, F) {
        st ? (Z.labeledNonLocalBreaks || (Z.labeledNonLocalBreaks = /* @__PURE__ */ new Map()), Z.labeledNonLocalBreaks.set(Rt, F)) : (Z.labeledNonLocalContinues || (Z.labeledNonLocalContinues = /* @__PURE__ */ new Map()), Z.labeledNonLocalContinues.set(Rt, F));
      }
      function lt(Z, st, Rt, F, ve) {
        Z && Z.forEach((qe, Bt) => {
          const Rr = [];
          if (!F || F.labels && F.labels.get(Bt)) {
            const cn = t.createIdentifier(Bt);
            Rr.push(st ? t.createBreakStatement(cn) : t.createContinueStatement(cn));
          } else
            je(F, st, Bt, qe), Rr.push(t.createReturnStatement(Rt));
          ve.push(t.createCaseClause(t.createStringLiteral(qe), Rr));
        });
      }
      function St(Z, st, Rt, F, ve) {
        const qe = st.name;
        if (Ja(qe))
          for (const Bt of qe.elements) Al(Bt) || St(Z, Bt, Rt, F, ve);
        else {
          Rt.push(t.createParameterDeclaration(void 0, void 0, qe));
          const Bt = u.hasNodeCheckFlag(st, 65536);
          if (Bt || ve) {
            const Rr = t.createUniqueName("out_" + On(qe));
            let cn = 0;
            Bt && (cn |= 1), Ev(Z) && (Z.initializer && u.isBindingCapturedByNode(Z.initializer, st) && (cn |= 2), (Z.condition && u.isBindingCapturedByNode(Z.condition, st) || Z.incrementor && u.isBindingCapturedByNode(Z.incrementor, st)) && (cn |= 1)), F.push({
              flags: cn,
              originalName: qe,
              outParamName: Rr
            });
          }
        }
      }
      function jr(Z, st, Rt, F) {
        const ve = st.properties, qe = ve.length;
        for (let Bt = F; Bt < qe; Bt++) {
          const Rr = ve[Bt];
          switch (Rr.kind) {
            case 178:
            case 179:
              const cn = Bb(st.properties, Rr);
              Rr === cn.firstAccessor && Z.push(xt(Rt, cn, st, !!st.multiLine));
              break;
            case 175:
              Z.push(ai(Rr, Rt, st, st.multiLine));
              break;
            case 304:
              Z.push(Bn(Rr, Rt, st.multiLine));
              break;
            case 305:
              Z.push(tn(Rr, Rt, st.multiLine));
              break;
            default:
              E.failBadSyntaxKind(st);
              break;
          }
        }
      }
      function Bn(Z, st, Rt) {
        const F = t.createAssignment(US(t, st, E.checkDefined(Ze(Z.name, U, il))), E.checkDefined(Ze(Z.initializer, U, dt)));
        return pt(F, Z), Rt && Xu(F), F;
      }
      function tn(Z, st, Rt) {
        const F = t.createAssignment(US(t, st, E.checkDefined(Ze(Z.name, U, il))), t.cloneNode(Z.name));
        return pt(F, Z), Rt && Xu(F), F;
      }
      function ai(Z, st, Rt, F) {
        const ve = t.createAssignment(US(t, st, E.checkDefined(Ze(Z.name, U, il))), rr(Z, Z, void 0, Rt));
        return pt(ve, Z), F && Xu(ve), ve;
      }
      function ei(Z) {
        const st = R(7104, 0);
        let Rt;
        if (E.assert(!!Z.variableDeclaration, "Catch clause variable should always be present when downleveling ES2015."), Ja(Z.variableDeclaration.name)) {
          const F = t.createTempVariable(void 0), ve = t.createVariableDeclaration(F);
          pt(ve, Z.variableDeclaration);
          const qe = n2(Z.variableDeclaration, U, e, 0, F), Bt = t.createVariableDeclarationList(qe);
          pt(Bt, Z.variableDeclaration);
          const Rr = t.createVariableStatement(void 0, Bt);
          Rt = t.updateCatchClause(Z, ve, La(Z.block, Rr));
        } else Rt = Tr(Z, U, e);
        return G(st, 0, 0), Rt;
      }
      function La(Z, st) {
        const Rt = Fr(Z.statements, U, Ei);
        return t.updateBlock(Z, [st, ...Rt]);
      }
      function ds(Z) {
        E.assert(!_s(Z.name));
        const st = rr(Z, hv(Z, -1), void 0, void 0);
        return ln(st, 1024 | Bs(st)), pt(t.createPropertyAssignment(Z.name, st), Z);
      }
      function cl(Z) {
        E.assert(!_s(Z.name));
        const st = P;
        P = void 0;
        const Rt = R(32670, 65);
        let F;
        const ve = Cc(Z.parameters, U, e), qe = Oe(Z);
        return Z.kind === 178 ? F = t.updateGetAccessorDeclaration(Z, Z.modifiers, Z.name, ve, Z.type, qe) : F = t.updateSetAccessorDeclaration(Z, Z.modifiers, Z.name, ve, qe), G(Rt, 229376, 0), P = st, F;
      }
      function vc(Z) {
        return pt(t.createPropertyAssignment(Z.name, oe(t.cloneNode(Z.name))), Z);
      }
      function ml(Z) {
        return Tr(Z, U, e);
      }
      function gl(Z) {
        return Tr(Z, U, e);
      }
      function Os(Z) {
        return _t(Z.elements, wp) ? Pe(Z.elements, !1, !!Z.multiLine, !!Z.elements.hasTrailingComma) : Tr(Z, U, e);
      }
      function Ao(Z) {
        if (pd(Z) & 1) return Su(Z);
        const st = Ic(Z.expression);
        return st.kind === 108 || Z_(st) || _t(Z.arguments, wp) ? rf(Z, !0) : t.updateCallExpression(Z, E.checkDefined(Ze(Z.expression, W, dt)), void 0, Fr(Z.arguments, U, dt));
      }
      function Su(Z) {
        const st = ns(ns(Ic(Z.expression), Bo).body, Wa), Rt = (cu) => $c(cu) && !!js(cu.declarationList.declarations).initializer, F = P;
        P = void 0;
        const ve = Fr(st.statements, ie, Ei);
        P = F;
        const qe = dn(ve, Rt), Bt = dn(ve, (cu) => !Rt(cu)), Rr = ns(js(qe), $c).declarationList.declarations[0], cn = Ic(Rr.initializer);
        let dr = qn(cn, Hl);
        !dr && un(cn) && cn.operatorToken.kind === 28 && (dr = qn(cn.left, Hl));
        const Cn = ns(dr ? Ic(dr.right) : cn, za), fs = ns(Ic(Cn.expression), Lo), ji = fs.body.statements;
        let Fc = 0, Ul = -1;
        const Lu = [];
        if (dr) {
          const cu = qn(ji[Fc], zl);
          cu && (Lu.push(cu), Fc++), Lu.push(ji[Fc]), Fc++, Lu.push(t.createExpressionStatement(t.createAssignment(dr.left, ns(Rr.name, Fe))));
        }
        for (; !zf(Py(ji, Ul)); ) Ul--;
        Mn(Lu, ji, Fc, Ul), Ul < -1 && Mn(Lu, ji, Ul + 1);
        const N_ = qn(Py(ji, Ul), zf);
        for (const cu of Bt) zf(cu) && N_?.expression && !Fe(N_.expression) ? Lu.push(N_) : Lu.push(cu);
        return Mn(Lu, qe, 1), t.restoreOuterExpressions(Z.expression, t.restoreOuterExpressions(Rr.initializer, t.restoreOuterExpressions(dr && dr.right, t.updateCallExpression(Cn, t.restoreOuterExpressions(Cn.expression, t.updateFunctionExpression(fs, void 0, void 0, void 0, void 0, fs.parameters, void 0, t.updateBlock(fs.body, Lu))), void 0, Cn.arguments))));
      }
      function rf(Z, st) {
        if (Z.transformFlags & 32768 || Z.expression.kind === 108 || Z_(Ic(Z.expression))) {
          const { target: Rt, thisArg: F } = t.createCallBinding(Z.expression, c);
          Z.expression.kind === 108 && ln(F, 8);
          let ve;
          if (Z.transformFlags & 32768 ? ve = t.createFunctionApplyCall(E.checkDefined(Ze(Rt, W, dt)), Z.expression.kind === 108 ? F : E.checkDefined(Ze(F, U, dt)), Pe(Z.arguments, !0, !1, !1)) : ve = pt(t.createFunctionCallCall(E.checkDefined(Ze(Rt, W, dt)), Z.expression.kind === 108 ? F : E.checkDefined(Ze(F, U, dt)), Fr(Z.arguments, U, dt)), Z), Z.expression.kind === 108) {
            const qe = t.createLogicalOr(ve, na());
            ve = st ? t.createAssignment($(), qe) : qe;
          }
          return Fn(ve, Z);
        }
        return hS(Z) && (T |= 131072), Tr(Z, U, e);
      }
      function Ip(Z) {
        if (_t(Z.arguments, wp)) {
          const { target: st, thisArg: Rt } = t.createCallBinding(t.createPropertyAccessExpression(Z.expression, "bind"), c);
          return t.createNewExpression(t.createFunctionApplyCall(E.checkDefined(Ze(st, U, dt)), Rt, Pe(t.createNodeArray([t.createVoidZero(), ...Z.arguments]), !0, !1, !1)), void 0, []);
        }
        return Tr(Z, U, e);
      }
      function Pe(Z, st, Rt, F) {
        const ve = Z.length, qe = Rf(tS(Z, jt, (dr, Cn, fs, ji) => Cn(dr, Rt, F && ji === ve)));
        if (qe.length === 1) {
          const dr = qe[0];
          if (st && !_.downlevelIteration || iz(dr.expression) || YD(dr.expression, "___spreadArray")) return dr.expression;
        }
        const Bt = n(), Rr = qe[0].kind !== 0;
        let cn = Rr ? t.createArrayLiteralExpression() : qe[0].expression;
        for (let dr = Rr ? 0 : 1; dr < qe.length; dr++) {
          const Cn = qe[dr];
          cn = Bt.createSpreadArrayHelper(cn, Cn.expression, Cn.kind === 1 && !st);
        }
        return cn;
      }
      function jt(Z) {
        return wp(Z) ? Yr : Js;
      }
      function Yr(Z) {
        return or(Z, Hi);
      }
      function Hi(Z) {
        E.assertNode(Z, wp);
        let st = Ze(Z.expression, U, dt);
        E.assert(st);
        const Rt = YD(st, "___read");
        let F = Rt || iz(st) ? 2 : 1;
        return _.downlevelIteration && F === 1 && !hu(st) && !Rt && (st = n().createReadHelper(st, void 0), F = 2), pve(F, st);
      }
      function Js(Z, st, Rt) {
        return pve(0, t.createArrayLiteralExpression(Fr(t.createNodeArray(Z, Rt), U, dt), st));
      }
      function io(Z) {
        return Ze(Z.expression, U, dt);
      }
      function Qs(Z) {
        return pt(t.createStringLiteral(Z.text), Z);
      }
      function Oc(Z) {
        return Z.hasExtendedUnicodeEscape ? pt(t.createStringLiteral(Z.text), Z) : Z;
      }
      function Dc(Z) {
        return Z.numericLiteralFlags & 384 ? pt(t.createNumericLiteral(Z.text), Z) : Z;
      }
      function zs(Z) {
        return lU(e, Z, U, h, D, 1);
      }
      function bc(Z) {
        let st = t.createStringLiteral(Z.head.text);
        for (const Rt of Z.templateSpans) {
          const F = [E.checkDefined(Ze(Rt.expression, U, dt))];
          Rt.literal.text.length > 0 && F.push(t.createStringLiteral(Rt.literal.text)), st = t.createCallExpression(t.createPropertyAccessExpression(st, "concat"), void 0, F);
        }
        return pt(st, Z);
      }
      function Il() {
        return t.createUniqueName("_super", 48);
      }
      function Op(Z, st) {
        const Rt = T & 8 && !st ? t.createPropertyAccessExpression(Fn(Il(), Z), "prototype") : Il();
        return Fn(Rt, Z), fl(Rt, Z), As(Rt, Z), Rt;
      }
      function Wf(Z) {
        return Z.keywordToken === 105 && Z.name.escapedText === "target" ? (T |= 32768, t.createUniqueName("_newTarget", 48)) : Z;
      }
      function id(Z, st, Rt) {
        if (N & 1 && Ra(st)) {
          const F = R(32670, Bs(st) & 16 ? 81 : 65);
          g(Z, st, Rt), G(F, 0, 0);
          return;
        }
        g(Z, st, Rt);
      }
      function ad() {
        (N & 2) === 0 && (N |= 2, e.enableSubstitution(80));
      }
      function hl() {
        (N & 1) === 0 && (N |= 1, e.enableSubstitution(110), e.enableEmitNotification(177), e.enableEmitNotification(175), e.enableEmitNotification(178), e.enableEmitNotification(179), e.enableEmitNotification(220), e.enableEmitNotification(219), e.enableEmitNotification(263));
      }
      function ll(Z, st) {
        return st = d(Z, st), Z === 1 ? e0(st) : Fe(st) ? Kd(st) : st;
      }
      function Kd(Z) {
        if (N & 2 && !Qz(Z)) {
          const st = Ca(Z, Fe);
          if (st && em(st)) return pt(t.getGeneratedNameForNode(st), Z);
        }
        return Z;
      }
      function em(Z) {
        switch (Z.parent.kind) {
          case 209:
          case 264:
          case 267:
          case 261:
            return Z.parent.name === Z && u.isDeclarationWithCollidingName(Z.parent);
        }
        return !1;
      }
      function e0(Z) {
        switch (Z.kind) {
          case 80:
            return Fu(Z);
          case 110:
            return A_(Z);
        }
        return Z;
      }
      function Fu(Z) {
        if (N & 2 && !Qz(Z)) {
          const st = u.getReferencedDeclarationWithCollidingName(Z);
          if (st && !(Zn(st) && nf(st, Z))) return pt(t.getGeneratedNameForNode(va(st)), Z);
        }
        return Z;
      }
      function nf(Z, st) {
        let Rt = Ca(st);
        if (!Rt || Rt === Z || Rt.end <= Z.pos || Rt.pos >= Z.end) return !1;
        const F = Bd(Z);
        for (; Rt; ) {
          if (Rt === F || Rt === Z) return !1;
          if (al(Rt) && Rt.parent === Z) return !0;
          Rt = Rt.parent;
        }
        return !1;
      }
      function A_(Z) {
        return N & 1 && T & 16 ? pt($(), Z) : Z;
      }
      function t0(Z, st) {
        return es(st) ? t.getInternalName(Z) : t.createPropertyAccessExpression(t.getInternalName(Z), "prototype");
      }
      function Uf(Z, st) {
        if (!Z || !st || _t(Z.parameters)) return !1;
        const Rt = ul(Z.body.statements);
        if (!Rt || !wo(Rt) || Rt.kind !== 245) return !1;
        const F = Rt.expression;
        if (!wo(F) || F.kind !== 214) return !1;
        const ve = F.expression;
        if (!wo(ve) || ve.kind !== 108) return !1;
        const qe = Fg(F.arguments);
        if (!qe || !wo(qe) || qe.kind !== 231) return !1;
        const Bt = qe.expression;
        return Fe(Bt) && Bt.escapedText === "arguments";
      }
    }
    function Ije(e) {
      switch (e) {
        case 2:
          return "return";
        case 3:
          return "break";
        case 4:
          return "yield";
        case 5:
          return "yield*";
        case 7:
          return "endfinally";
        default:
          return;
      }
    }
    function die(e) {
      const { factory: t, getEmitHelperFactory: n, resumeLexicalEnvironment: i, endLexicalEnvironment: a, hoistFunctionDeclaration: o, hoistVariableDeclaration: c } = e, _ = Ps(e.getCompilerOptions()), u = e.getEmitResolver(), d = e.onSubstituteNode;
      e.onSubstituteNode = rt;
      let g, h, S, T, k, D, P, N, M, R, G = 1, L, z, H, U, pe = 0, ie = 0, W, Q, se, he, fe, de, $, Se;
      return Xd(e, Be);
      function Be(Pe) {
        if (Pe.isDeclarationFile || (Pe.transformFlags & 2048) === 0) return Pe;
        const jt = Tr(Pe, ce, e);
        return th(jt, e.readEmitHelpers()), jt;
      }
      function ce(Pe) {
        const jt = Pe.transformFlags;
        return T ? oe(Pe) : S ? ge(Pe) : So(Pe) && Pe.asteriskToken ? Ne(Pe) : jt & 2048 ? Tr(Pe, ce, e) : Pe;
      }
      function oe(Pe) {
        switch (Pe.kind) {
          case 247:
            return na(Pe);
          case 248:
            return Da(Pe);
          case 256:
            return Qe(Pe);
          case 257:
            return Dt(Pe);
          default:
            return ge(Pe);
        }
      }
      function ge(Pe) {
        switch (Pe.kind) {
          case 263:
            return ot(Pe);
          case 219:
            return K(Pe);
          case 178:
          case 179:
            return ke(Pe);
          case 244:
            return Ce(Pe);
          case 249:
            return ha(Pe);
          case 250:
            return Pt(Pe);
          case 253:
            return we(Pe);
          case 252:
            return tt(Pe);
          case 254:
            return nt(Pe);
          default:
            return Pe.transformFlags & 1048576 ? Ae(Pe) : Pe.transformFlags & 4196352 ? Tr(Pe, ce, e) : Pe;
        }
      }
      function Ae(Pe) {
        switch (Pe.kind) {
          case 227:
            return ue(Pe);
          case 357:
            return Ut(Pe);
          case 228:
            return Ar(Pe);
          case 230:
            return Ct(Pe);
          case 210:
            return Kt(Pe);
          case 211:
            return _i(Pe);
          case 213:
            return Gr(Pe);
          case 214:
            return Nt(Pe);
          case 215:
            return Li(Pe);
          default:
            return Tr(Pe, ce, e);
        }
      }
      function Ne(Pe) {
        switch (Pe.kind) {
          case 263:
            return ot(Pe);
          case 219:
            return K(Pe);
          default:
            return E.failBadSyntaxKind(Pe);
        }
      }
      function ot(Pe) {
        if (Pe.asteriskToken) Pe = Fn(pt(t.createFunctionDeclaration(Pe.modifiers, void 0, Pe.name, void 0, Cc(Pe.parameters, ce, e), void 0, ae(Pe.body)), Pe), Pe);
        else {
          const jt = S, Yr = T;
          S = !1, T = !1, Pe = Tr(Pe, ce, e), S = jt, T = Yr;
        }
        if (S) {
          o(Pe);
          return;
        } else return Pe;
      }
      function K(Pe) {
        if (Pe.asteriskToken) Pe = Fn(pt(t.createFunctionExpression(void 0, void 0, Pe.name, void 0, Cc(Pe.parameters, ce, e), void 0, ae(Pe.body)), Pe), Pe);
        else {
          const jt = S, Yr = T;
          S = !1, T = !1, Pe = Tr(Pe, ce, e), S = jt, T = Yr;
        }
        return Pe;
      }
      function ke(Pe) {
        const jt = S, Yr = T;
        return S = !1, T = !1, Pe = Tr(Pe, ce, e), S = jt, T = Yr, Pe;
      }
      function ae(Pe) {
        const jt = [], Yr = S, Hi = T, Js = k, io = D, Qs = P, Oc = N, Dc = M, zs = R, bc = G, Il = L, Op = z, Wf = H, id = U;
        S = !0, T = !1, k = void 0, D = void 0, P = void 0, N = void 0, M = void 0, R = void 0, G = 1, L = void 0, z = void 0, H = void 0, U = t.createTempVariable(void 0), i();
        const ad = t.copyPrologue(Pe.statements, jt, !1, ce);
        ri(Pe.statements, ad);
        const hl = I();
        return qg(jt, a()), jt.push(t.createReturnStatement(hl)), S = Yr, T = Hi, k = Js, D = io, P = Qs, N = Oc, M = Dc, R = zs, G = bc, L = Il, z = Op, H = Wf, U = id, pt(t.createBlock(jt, Pe.multiLine), Pe);
      }
      function Ce(Pe) {
        if (Pe.transformFlags & 1048576) {
          tr(Pe.declarationList);
          return;
        } else {
          if (Bs(Pe) & 2097152) return Pe;
          for (const Yr of Pe.declarationList.declarations) c(Yr.name);
          const jt = wD(Pe.declarationList);
          return jt.length === 0 ? void 0 : As(t.createExpressionStatement(t.inlineExpressions(or(jt, Ur))), Pe);
        }
      }
      function ue(Pe) {
        const jt = oJ(Pe);
        switch (jt) {
          case 0:
            return Xe(Pe);
          case 1:
            return Ie(Pe);
          default:
            return E.assertNever(jt);
        }
      }
      function Ie(Pe) {
        const { left: jt, right: Yr } = Pe;
        if (rr(Yr)) {
          let Hi;
          switch (jt.kind) {
            case 212:
              Hi = t.updatePropertyAccessExpression(jt, j(E.checkDefined(Ze(jt.expression, ce, j_))), jt.name);
              break;
            case 213:
              Hi = t.updateElementAccessExpression(jt, j(E.checkDefined(Ze(jt.expression, ce, j_))), j(E.checkDefined(Ze(jt.argumentExpression, ce, dt))));
              break;
            default:
              Hi = E.checkDefined(Ze(jt, ce, dt));
              break;
          }
          const Js = Pe.operatorToken.kind;
          return Tw(Js) ? pt(t.createAssignment(Hi, pt(t.createBinaryExpression(j(Hi), xw(Js), E.checkDefined(Ze(Yr, ce, dt))), Pe)), Pe) : t.updateBinaryExpression(Pe, Hi, Pe.operatorToken, E.checkDefined(Ze(Yr, ce, dt)));
        }
        return Tr(Pe, ce, e);
      }
      function Xe(Pe) {
        return rr(Pe.right) ? _ee(Pe.operatorToken.kind) ? Xt(Pe) : Pe.operatorToken.kind === 28 ? Ft(Pe) : t.updateBinaryExpression(Pe, j(E.checkDefined(Ze(Pe.left, ce, dt))), Pe.operatorToken, E.checkDefined(Ze(Pe.right, ce, dt))) : Tr(Pe, ce, e);
      }
      function Ft(Pe) {
        let jt = [];
        return Yr(Pe.left), Yr(Pe.right), t.inlineExpressions(jt);
        function Yr(Hi) {
          un(Hi) && Hi.operatorToken.kind === 28 ? (Yr(Hi.left), Yr(Hi.right)) : (rr(Hi) && jt.length > 0 && (Qo(1, [t.createExpressionStatement(t.inlineExpressions(jt))]), jt = []), jt.push(E.checkDefined(Ze(Hi, ce, dt))));
        }
      }
      function Ut(Pe) {
        let jt = [];
        for (const Yr of Pe.elements) un(Yr) && Yr.operatorToken.kind === 28 ? jt.push(Ft(Yr)) : (rr(Yr) && jt.length > 0 && (Qo(1, [t.createExpressionStatement(t.inlineExpressions(jt))]), jt = []), jt.push(E.checkDefined(Ze(Yr, ce, dt))));
        return t.inlineExpressions(jt);
      }
      function Xt(Pe) {
        const jt = $e(), Yr = Re();
        return Yi(Yr, E.checkDefined(Ze(Pe.left, ce, dt)), Pe.left), Pe.operatorToken.kind === 56 ? Mo(jt, Yr, Pe.left) : Zt(jt, Yr, Pe.left), Yi(Yr, E.checkDefined(Ze(Pe.right, ce, dt)), Pe.right), ye(jt), Yr;
      }
      function Ar(Pe) {
        if (rr(Pe.whenTrue) || rr(Pe.whenFalse)) {
          const jt = $e(), Yr = $e(), Hi = Re();
          return Mo(jt, E.checkDefined(Ze(Pe.condition, ce, dt)), Pe.condition), Yi(Hi, E.checkDefined(Ze(Pe.whenTrue, ce, dt)), Pe.whenTrue), Is(Yr), ye(jt), Yi(Hi, E.checkDefined(Ze(Pe.whenFalse, ce, dt)), Pe.whenFalse), ye(Yr), Hi;
        }
        return Tr(Pe, ce, e);
      }
      function Ct(Pe) {
        const jt = $e(), Yr = Ze(Pe.expression, ce, dt);
        return Pe.asteriskToken ? ou((Bs(Pe.expression) & 8388608) === 0 ? pt(n().createValuesHelper(Yr), Pe) : Yr, Pe) : Wl(Yr, Pe), ye(jt), xl(Pe);
      }
      function Kt(Pe) {
        return zr(Pe.elements, void 0, void 0, Pe.multiLine);
      }
      function zr(Pe, jt, Yr, Hi) {
        const Js = Oe(Pe);
        let io;
        if (Js > 0) {
          io = Re();
          const Dc = Fr(Pe, ce, dt, 0, Js);
          Yi(io, t.createArrayLiteralExpression(jt ? [jt, ...Dc] : Dc)), jt = void 0;
        }
        const Qs = a_(Pe, Oc, [], Js);
        return io ? t.createArrayConcatCall(io, [t.createArrayLiteralExpression(Qs, Hi)]) : pt(t.createArrayLiteralExpression(jt ? [jt, ...Qs] : Qs, Hi), Yr);
        function Oc(Dc, zs) {
          if (rr(zs) && Dc.length > 0) {
            const bc = io !== void 0;
            io || (io = Re()), Yi(io, bc ? t.createArrayConcatCall(io, [t.createArrayLiteralExpression(Dc, Hi)]) : t.createArrayLiteralExpression(jt ? [jt, ...Dc] : Dc, Hi)), jt = void 0, Dc = [];
          }
          return Dc.push(E.checkDefined(Ze(zs, ce, dt))), Dc;
        }
      }
      function _i(Pe) {
        const jt = Pe.properties, Yr = Pe.multiLine, Hi = Oe(jt), Js = Re();
        Yi(Js, t.createObjectLiteralExpression(Fr(jt, ce, zg, 0, Hi), Yr));
        const io = a_(jt, Qs, [], Hi);
        return io.push(Yr ? Xu(eo(pt(t.cloneNode(Js), Js), Js.parent)) : Js), t.inlineExpressions(io);
        function Qs(Oc, Dc) {
          rr(Dc) && Oc.length > 0 && ($a(t.createExpressionStatement(t.inlineExpressions(Oc))), Oc = []);
          const zs = Ze(fre(t, Pe, Dc, Js), ce, dt);
          return zs && (Yr && Xu(zs), Oc.push(zs)), Oc;
        }
      }
      function Gr(Pe) {
        return rr(Pe.argumentExpression) ? t.updateElementAccessExpression(Pe, j(E.checkDefined(Ze(Pe.expression, ce, j_))), E.checkDefined(Ze(Pe.argumentExpression, ce, dt))) : Tr(Pe, ce, e);
      }
      function Nt(Pe) {
        if (!B_(Pe) && bt(Pe.arguments, rr)) {
          const { target: jt, thisArg: Yr } = t.createCallBinding(Pe.expression, c, _, !0);
          return Fn(pt(t.createFunctionApplyCall(j(E.checkDefined(Ze(jt, ce, j_))), Yr, zr(Pe.arguments)), Pe), Pe);
        }
        return Tr(Pe, ce, e);
      }
      function Li(Pe) {
        if (bt(Pe.arguments, rr)) {
          const { target: jt, thisArg: Yr } = t.createCallBinding(t.createPropertyAccessExpression(Pe.expression, "bind"), c);
          return Fn(pt(t.createNewExpression(t.createFunctionApplyCall(j(E.checkDefined(Ze(jt, ce, dt))), Yr, zr(Pe.arguments, t.createVoidZero())), void 0, []), Pe), Pe);
        }
        return Tr(Pe, ce, e);
      }
      function ri(Pe, jt = 0) {
        const Yr = Pe.length;
        for (let Hi = jt; Hi < Yr; Hi++) ni(Pe[Hi]);
      }
      function Zr(Pe) {
        Wa(Pe) ? ri(Pe.statements) : ni(Pe);
      }
      function ni(Pe) {
        const jt = T;
        T || (T = rr(Pe)), ra(Pe), T = jt;
      }
      function ra(Pe) {
        switch (Pe.kind) {
          case 242:
            return Me(Pe);
          case 245:
            return vt(Pe);
          case 246:
            return $n(Pe);
          case 247:
            return zn(Pe);
          case 248:
            return Ea(Pe);
          case 249:
            return Lr(Pe);
          case 250:
            return Ye(Pe);
          case 252:
            return ne(Pe);
          case 253:
            return re(Pe);
          case 254:
            return Ge(Pe);
          case 255:
            return it(Pe);
          case 256:
            return ut(Pe);
          case 257:
            return xt(Pe);
          case 258:
            return Ve(Pe);
          case 259:
            return fr(Pe);
          default:
            return $a(Ze(Pe, ce, Ei));
        }
      }
      function Me(Pe) {
        rr(Pe) ? ri(Pe.statements) : $a(Ze(Pe, ce, Ei));
      }
      function vt(Pe) {
        $a(Ze(Pe, ce, Ei));
      }
      function tr(Pe) {
        for (const io of Pe.declarations) {
          const Qs = t.cloneNode(io.name);
          fl(Qs, io.name), c(Qs);
        }
        const jt = wD(Pe), Yr = jt.length;
        let Hi = 0, Js = [];
        for (; Hi < Yr; ) {
          for (let io = Hi; io < Yr; io++) {
            const Qs = jt[io];
            if (rr(Qs.initializer) && Js.length > 0) break;
            Js.push(Ur(Qs));
          }
          Js.length && ($a(t.createExpressionStatement(t.inlineExpressions(Js))), Hi += Js.length, Js = []);
        }
      }
      function Ur(Pe) {
        return As(t.createAssignment(As(t.cloneNode(Pe.name), Pe.name), E.checkDefined(Ze(Pe.initializer, ce, dt))), Pe);
      }
      function $n(Pe) {
        if (rr(Pe)) if (rr(Pe.thenStatement) || rr(Pe.elseStatement)) {
          const jt = $e(), Yr = Pe.elseStatement ? $e() : void 0;
          Mo(Pe.elseStatement ? Yr : jt, E.checkDefined(Ze(Pe.expression, ce, dt)), Pe.expression), Zr(Pe.thenStatement), Pe.elseStatement && (Is(jt), ye(Yr), Zr(Pe.elseStatement)), ye(jt);
        } else $a(Ze(Pe, ce, Ei));
        else $a(Ze(Pe, ce, Ei));
      }
      function zn(Pe) {
        if (rr(Pe)) {
          const jt = $e(), Yr = $e();
          Yt(jt), ye(Yr), Zr(Pe.statement), ye(jt), Zt(Yr, E.checkDefined(Ze(Pe.expression, ce, dt))), Jt();
        } else $a(Ze(Pe, ce, Ei));
      }
      function na(Pe) {
        return T ? (Ir(), Pe = Tr(Pe, ce, e), Jt(), Pe) : Tr(Pe, ce, e);
      }
      function Ea(Pe) {
        if (rr(Pe)) {
          const jt = $e(), Yr = Yt(jt);
          ye(jt), Mo(Yr, E.checkDefined(Ze(Pe.expression, ce, dt))), Zr(Pe.statement), Is(jt), Jt();
        } else $a(Ze(Pe, ce, Ei));
      }
      function Da(Pe) {
        return T ? (Ir(), Pe = Tr(Pe, ce, e), Jt(), Pe) : Tr(Pe, ce, e);
      }
      function Lr(Pe) {
        if (rr(Pe)) {
          const jt = $e(), Yr = $e(), Hi = Yt(Yr);
          if (Pe.initializer) {
            const Js = Pe.initializer;
            iu(Js) ? tr(Js) : $a(pt(t.createExpressionStatement(E.checkDefined(Ze(Js, ce, dt))), Js));
          }
          ye(jt), Pe.condition && Mo(Hi, E.checkDefined(Ze(Pe.condition, ce, dt))), Zr(Pe.statement), ye(Yr), Pe.incrementor && $a(pt(t.createExpressionStatement(E.checkDefined(Ze(Pe.incrementor, ce, dt))), Pe.incrementor)), Is(jt), Jt();
        } else $a(Ze(Pe, ce, Ei));
      }
      function ha(Pe) {
        T && Ir();
        const jt = Pe.initializer;
        if (jt && iu(jt)) {
          for (const Hi of jt.declarations) c(Hi.name);
          const Yr = wD(jt);
          Pe = t.updateForStatement(Pe, Yr.length > 0 ? t.inlineExpressions(or(Yr, Ur)) : void 0, Ze(Pe.condition, ce, dt), Ze(Pe.incrementor, ce, dt), D_(Pe.statement, ce, e));
        } else Pe = Tr(Pe, ce, e);
        return T && Jt(), Pe;
      }
      function Ye(Pe) {
        if (rr(Pe)) {
          const jt = Re(), Yr = Re(), Hi = Re(), Js = t.createLoopVariable(), io = Pe.initializer;
          c(Js), Yi(jt, E.checkDefined(Ze(Pe.expression, ce, dt))), Yi(Yr, t.createArrayLiteralExpression()), $a(t.createForInStatement(Hi, jt, t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(Yr, "push"), void 0, [Hi])))), Yi(Js, t.createNumericLiteral(0));
          const Qs = $e(), Oc = $e(), Dc = Yt(Oc);
          ye(Qs), Mo(Dc, t.createLessThan(Js, t.createPropertyAccessExpression(Yr, "length"))), Yi(Hi, t.createElementAccessExpression(Yr, Js)), Mo(Oc, t.createBinaryExpression(Hi, 103, jt));
          let zs;
          if (iu(io)) {
            for (const bc of io.declarations) c(bc.name);
            zs = t.cloneNode(io.declarations[0].name);
          } else
            zs = E.checkDefined(Ze(io, ce, dt)), E.assert(j_(zs));
          Yi(zs, Hi), Zr(Pe.statement), ye(Oc), $a(t.createExpressionStatement(t.createPostfixIncrement(Js))), Is(Qs), Jt();
        } else $a(Ze(Pe, ce, Ei));
      }
      function Pt(Pe) {
        T && Ir();
        const jt = Pe.initializer;
        if (iu(jt)) {
          for (const Yr of jt.declarations) c(Yr.name);
          Pe = t.updateForInStatement(Pe, jt.declarations[0].name, E.checkDefined(Ze(Pe.expression, ce, dt)), E.checkDefined(Ze(Pe.statement, ce, Ei, t.liftToBlock)));
        } else Pe = Tr(Pe, ce, e);
        return T && Jt(), Pe;
      }
      function ne(Pe) {
        const jt = ja(Pe.label ? On(Pe.label) : void 0);
        jt > 0 ? Is(jt, Pe) : $a(Pe);
      }
      function tt(Pe) {
        if (T) {
          const jt = ja(Pe.label && On(Pe.label));
          if (jt > 0) return Ou(jt, Pe);
        }
        return Tr(Pe, ce, e);
      }
      function re(Pe) {
        const jt = ia(Pe.label ? On(Pe.label) : void 0);
        jt > 0 ? Is(jt, Pe) : $a(Pe);
      }
      function we(Pe) {
        if (T) {
          const jt = ia(Pe.label && On(Pe.label));
          if (jt > 0) return Ou(jt, Pe);
        }
        return Tr(Pe, ce, e);
      }
      function Ge(Pe) {
        bu(Ze(Pe.expression, ce, dt), Pe);
      }
      function nt(Pe) {
        return _c(Ze(Pe.expression, ce, dt), Pe);
      }
      function it(Pe) {
        rr(Pe) ? (fn(j(E.checkDefined(Ze(Pe.expression, ce, dt)))), Zr(Pe.statement), Cr()) : $a(Ze(Pe, ce, Ei));
      }
      function ut(Pe) {
        if (rr(Pe.caseBlock)) {
          const jt = Pe.caseBlock, Yr = jt.clauses.length, Hi = Qt(), Js = j(E.checkDefined(Ze(Pe.expression, ce, dt))), io = [];
          let Qs = -1;
          for (let zs = 0; zs < Yr; zs++) {
            const bc = jt.clauses[zs];
            io.push($e()), bc.kind === 298 && Qs === -1 && (Qs = zs);
          }
          let Oc = 0, Dc = [];
          for (; Oc < Yr; ) {
            let zs = 0;
            for (let bc = Oc; bc < Yr; bc++) {
              const Il = jt.clauses[bc];
              if (Il.kind === 297) {
                if (rr(Il.expression) && Dc.length > 0) break;
                Dc.push(t.createCaseClause(E.checkDefined(Ze(Il.expression, ce, dt)), [Ou(io[bc], Il.expression)]));
              } else zs++;
            }
            Dc.length && ($a(t.createSwitchStatement(Js, t.createCaseBlock(Dc))), Oc += Dc.length, Dc = []), zs > 0 && (Oc += zs, zs = 0);
          }
          Qs >= 0 ? Is(io[Qs]) : Is(Hi);
          for (let zs = 0; zs < Yr; zs++)
            ye(io[zs]), ri(jt.clauses[zs].statements);
          ct();
        } else $a(Ze(Pe, ce, Ei));
      }
      function Qe(Pe) {
        return T && $t(), Pe = Tr(Pe, ce, e), T && ct(), Pe;
      }
      function xt(Pe) {
        rr(Pe) ? (Mi(On(Pe.label)), Zr(Pe.statement), os()) : $a(Ze(Pe, ce, Ei));
      }
      function Dt(Pe) {
        return T && wn(On(Pe.label)), Pe = Tr(Pe, ce, e), T && os(), Pe;
      }
      function Ve(Pe) {
        Ma(E.checkDefined(Ze(Pe.expression ?? t.createVoidZero(), ce, dt)), Pe);
      }
      function fr(Pe) {
        rr(Pe) ? (et(), Zr(Pe.tryBlock), Pe.catchClause && (kt(Pe.catchClause.variableDeclaration), Zr(Pe.catchClause.block)), Pe.finallyBlock && (wt(), Zr(Pe.finallyBlock)), qt()) : $a(Tr(Pe, ce, e));
      }
      function rr(Pe) {
        return !!Pe && (Pe.transformFlags & 1048576) !== 0;
      }
      function Oe(Pe) {
        const jt = Pe.length;
        for (let Yr = 0; Yr < jt; Yr++) if (rr(Pe[Yr])) return Yr;
        return -1;
      }
      function rt(Pe, jt) {
        return jt = d(Pe, jt), Pe === 1 ? ee(jt) : jt;
      }
      function ee(Pe) {
        return Fe(Pe) ? q(Pe) : Pe;
      }
      function q(Pe) {
        if (!Ko(Pe) && g && g.has(On(Pe))) {
          const jt = rc(Pe);
          if (Fe(jt) && jt.parent) {
            const Yr = u.getReferencedValueDeclaration(jt);
            if (Yr) {
              const Hi = h[w_(Yr)];
              if (Hi) {
                const Js = eo(pt(t.cloneNode(Hi), Hi), Hi.parent);
                return As(Js, Pe), fl(Js, Pe), Js;
              }
            }
          }
        }
        return Pe;
      }
      function j(Pe) {
        if (Ko(Pe) || Bs(Pe) & 8192) return Pe;
        const jt = t.createTempVariable(c);
        return Yi(jt, Pe, Pe), jt;
      }
      function Re(Pe) {
        const jt = Pe ? t.createUniqueName(Pe) : t.createTempVariable(void 0);
        return c(jt), jt;
      }
      function $e() {
        M || (M = []);
        const Pe = G;
        return G++, M[Pe] = -1, Pe;
      }
      function ye(Pe) {
        E.assert(M !== void 0, "No labels were defined."), M[Pe] = L ? L.length : 0;
      }
      function Ke(Pe) {
        k || (k = [], P = [], D = [], N = []);
        const jt = P.length;
        return P[jt] = 0, D[jt] = L ? L.length : 0, k[jt] = Pe, N.push(Pe), jt;
      }
      function pr() {
        const Pe = Pr();
        if (Pe === void 0) return E.fail("beginBlock was never called.");
        const jt = P.length;
        return P[jt] = 1, D[jt] = L ? L.length : 0, k[jt] = Pe, N.pop(), Pe;
      }
      function Pr() {
        return Wo(N);
      }
      function vr() {
        const Pe = Pr();
        return Pe && Pe.kind;
      }
      function fn(Pe) {
        const jt = $e(), Yr = $e();
        ye(jt), Ke({
          kind: 1,
          expression: Pe,
          startLabel: jt,
          endLabel: Yr
        });
      }
      function Cr() {
        E.assert(vr() === 1), ye(pr().endLabel);
      }
      function et() {
        const Pe = $e(), jt = $e();
        return ye(Pe), Ke({
          kind: 0,
          state: 0,
          startLabel: Pe,
          endLabel: jt
        }), fa(), jt;
      }
      function kt(Pe) {
        E.assert(vr() === 0);
        let jt;
        if (Ko(Pe.name))
          jt = Pe.name, c(Pe.name);
        else {
          const io = On(Pe.name);
          jt = Re(io), g || (g = /* @__PURE__ */ new Map(), h = [], e.enableSubstitution(80)), g.set(io, !0), h[w_(Pe)] = jt;
        }
        const Yr = Pr();
        E.assert(Yr.state < 1);
        const Hi = Yr.endLabel;
        Is(Hi);
        const Js = $e();
        ye(Js), Yr.state = 1, Yr.catchVariable = jt, Yr.catchLabel = Js, Yi(jt, t.createCallExpression(t.createPropertyAccessExpression(U, "sent"), void 0, [])), fa();
      }
      function wt() {
        E.assert(vr() === 0);
        const Pe = Pr();
        E.assert(Pe.state < 2);
        const jt = Pe.endLabel;
        Is(jt);
        const Yr = $e();
        ye(Yr), Pe.state = 2, Pe.finallyLabel = Yr;
      }
      function qt() {
        E.assert(vr() === 0);
        const Pe = pr();
        Pe.state < 2 ? Is(Pe.endLabel) : ac(), ye(Pe.endLabel), fa(), Pe.state = 3;
      }
      function Ir() {
        Ke({
          kind: 3,
          isScript: !0,
          breakLabel: -1,
          continueLabel: -1
        });
      }
      function Yt(Pe) {
        const jt = $e();
        return Ke({
          kind: 3,
          isScript: !1,
          breakLabel: jt,
          continueLabel: Pe
        }), jt;
      }
      function Jt() {
        E.assert(vr() === 3);
        const Pe = pr(), jt = Pe.breakLabel;
        Pe.isScript || ye(jt);
      }
      function $t() {
        Ke({
          kind: 2,
          isScript: !0,
          breakLabel: -1
        });
      }
      function Qt() {
        const Pe = $e();
        return Ke({
          kind: 2,
          isScript: !1,
          breakLabel: Pe
        }), Pe;
      }
      function ct() {
        E.assert(vr() === 2);
        const Pe = pr(), jt = Pe.breakLabel;
        Pe.isScript || ye(jt);
      }
      function wn(Pe) {
        Ke({
          kind: 4,
          isScript: !0,
          labelText: Pe,
          breakLabel: -1
        });
      }
      function Mi(Pe) {
        Ke({
          kind: 4,
          isScript: !1,
          labelText: Pe,
          breakLabel: $e()
        });
      }
      function os() {
        E.assert(vr() === 4);
        const Pe = pr();
        Pe.isScript || ye(Pe.breakLabel);
      }
      function cs(Pe) {
        return Pe.kind === 2 || Pe.kind === 3;
      }
      function xa(Pe) {
        return Pe.kind === 4;
      }
      function oo(Pe) {
        return Pe.kind === 3;
      }
      function To(Pe, jt) {
        for (let Yr = jt; Yr >= 0; Yr--) {
          const Hi = N[Yr];
          if (xa(Hi)) {
            if (Hi.labelText === Pe) return !0;
          } else break;
        }
        return !1;
      }
      function ia(Pe) {
        if (N) if (Pe) for (let jt = N.length - 1; jt >= 0; jt--) {
          const Yr = N[jt];
          if (xa(Yr) && Yr.labelText === Pe) return Yr.breakLabel;
          if (cs(Yr) && To(Pe, jt - 1)) return Yr.breakLabel;
        }
        else for (let jt = N.length - 1; jt >= 0; jt--) {
          const Yr = N[jt];
          if (cs(Yr)) return Yr.breakLabel;
        }
        return 0;
      }
      function ja(Pe) {
        if (N) if (Pe) for (let jt = N.length - 1; jt >= 0; jt--) {
          const Yr = N[jt];
          if (oo(Yr) && To(Pe, jt - 1)) return Yr.continueLabel;
        }
        else for (let jt = N.length - 1; jt >= 0; jt--) {
          const Yr = N[jt];
          if (oo(Yr)) return Yr.continueLabel;
        }
        return 0;
      }
      function _o(Pe) {
        if (Pe !== void 0 && Pe > 0) {
          R === void 0 && (R = []);
          const jt = t.createNumericLiteral(Number.MAX_SAFE_INTEGER);
          return R[Pe] === void 0 ? R[Pe] = [jt] : R[Pe].push(jt), jt;
        }
        return t.createOmittedExpression();
      }
      function Yc(Pe) {
        const jt = t.createNumericLiteral(Pe);
        return QD(jt, 3, Ije(Pe)), jt;
      }
      function Ou(Pe, jt) {
        return E.assertLessThan(0, Pe, "Invalid label"), pt(t.createReturnStatement(t.createArrayLiteralExpression([Yc(3), _o(Pe)])), jt);
      }
      function _c(Pe, jt) {
        return pt(t.createReturnStatement(t.createArrayLiteralExpression(Pe ? [Yc(2), Pe] : [Yc(2)])), jt);
      }
      function xl(Pe) {
        return pt(t.createCallExpression(t.createPropertyAccessExpression(U, "sent"), void 0, []), Pe);
      }
      function fa() {
        Qo(0);
      }
      function $a(Pe) {
        Pe ? Qo(1, [Pe]) : fa();
      }
      function Yi(Pe, jt, Yr) {
        Qo(2, [Pe, jt], Yr);
      }
      function Is(Pe, jt) {
        Qo(3, [Pe], jt);
      }
      function Zt(Pe, jt, Yr) {
        Qo(4, [Pe, jt], Yr);
      }
      function Mo(Pe, jt, Yr) {
        Qo(5, [Pe, jt], Yr);
      }
      function ou(Pe, jt) {
        Qo(7, [Pe], jt);
      }
      function Wl(Pe, jt) {
        Qo(6, [Pe], jt);
      }
      function bu(Pe, jt) {
        Qo(8, [Pe], jt);
      }
      function Ma(Pe, jt) {
        Qo(9, [Pe], jt);
      }
      function ac() {
        Qo(10);
      }
      function Qo(Pe, jt, Yr) {
        L === void 0 && (L = [], z = [], H = []), M === void 0 && ye($e());
        const Hi = L.length;
        L[Hi] = Pe, z[Hi] = jt, H[Hi] = Yr;
      }
      function I() {
        pe = 0, ie = 0, W = void 0, Q = !1, se = !1, he = void 0, fe = void 0, de = void 0, $ = void 0, Se = void 0;
        const Pe = je();
        return n().createGeneratorHelper(ln(t.createFunctionExpression(void 0, void 0, void 0, void 0, [t.createParameterDeclaration(void 0, void 0, U)], void 0, t.createBlock(Pe, Pe.length > 0)), 1048576));
      }
      function je() {
        if (L) {
          for (let Pe = 0; Pe < L.length; Pe++) La(Pe);
          St(L.length);
        } else St(0);
        if (he) {
          const Pe = t.createPropertyAccessExpression(U, "label");
          return [Xu(t.createSwitchStatement(Pe, t.createCaseBlock(he)))];
        }
        return fe || [];
      }
      function lt() {
        fe && (Bn(!Q), Q = !1, se = !1, ie++);
      }
      function St(Pe) {
        jr(Pe) && (tn(Pe), Se = void 0, ml(void 0, void 0)), fe && he && Bn(!1), ai();
      }
      function jr(Pe) {
        if (!se) return !0;
        if (!M || !R) return !1;
        for (let jt = 0; jt < M.length; jt++) if (M[jt] === Pe && R[jt]) return !0;
        return !1;
      }
      function Bn(Pe) {
        if (he || (he = []), fe) {
          if (Se) for (let jt = Se.length - 1; jt >= 0; jt--) {
            const Yr = Se[jt];
            fe = [t.createWithStatement(Yr.expression, t.createBlock(fe))];
          }
          if ($) {
            const { startLabel: jt, catchLabel: Yr, finallyLabel: Hi, endLabel: Js } = $;
            fe.unshift(t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createPropertyAccessExpression(U, "trys"), "push"), void 0, [t.createArrayLiteralExpression([
              _o(jt),
              _o(Yr),
              _o(Hi),
              _o(Js)
            ])]))), $ = void 0;
          }
          Pe && fe.push(t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(U, "label"), t.createNumericLiteral(ie + 1))));
        }
        he.push(t.createCaseClause(t.createNumericLiteral(ie), fe || [])), fe = void 0;
      }
      function tn(Pe) {
        if (M)
          for (let jt = 0; jt < M.length; jt++) M[jt] === Pe && (lt(), W === void 0 && (W = []), W[ie] === void 0 ? W[ie] = [jt] : W[ie].push(jt));
      }
      function ai() {
        if (R !== void 0 && W !== void 0) for (let Pe = 0; Pe < W.length; Pe++) {
          const jt = W[Pe];
          if (jt !== void 0) for (const Yr of jt) {
            const Hi = R[Yr];
            if (Hi !== void 0) for (const Js of Hi) Js.text = String(Pe);
          }
        }
      }
      function ei(Pe) {
        if (k) for (; pe < P.length && D[pe] <= Pe; pe++) {
          const jt = k[pe], Yr = P[pe];
          switch (jt.kind) {
            case 0:
              Yr === 0 ? (de || (de = []), fe || (fe = []), de.push($), $ = jt) : Yr === 1 && ($ = de.pop());
              break;
            case 1:
              Yr === 0 ? (Se || (Se = []), Se.push(jt)) : Yr === 1 && Se.pop();
              break;
          }
        }
      }
      function La(Pe) {
        if (tn(Pe), ei(Pe), Q) return;
        Q = !1, se = !1;
        const jt = L[Pe];
        if (jt === 0) return;
        if (jt === 10) return Ip();
        const Yr = z[Pe];
        if (jt === 1) return ds(Yr[0]);
        const Hi = H[Pe];
        switch (jt) {
          case 2:
            return cl(Yr[0], Yr[1], Hi);
          case 3:
            return gl(Yr[0], Hi);
          case 4:
            return Os(Yr[0], Yr[1], Hi);
          case 5:
            return Ao(Yr[0], Yr[1], Hi);
          case 6:
            return Su(Yr[0], Hi);
          case 7:
            return rf(Yr[0], Hi);
          case 8:
            return ml(Yr[0], Hi);
          case 9:
            return vc(Yr[0], Hi);
        }
      }
      function ds(Pe) {
        Pe && (fe ? fe.push(Pe) : fe = [Pe]);
      }
      function cl(Pe, jt, Yr) {
        ds(pt(t.createExpressionStatement(t.createAssignment(Pe, jt)), Yr));
      }
      function vc(Pe, jt) {
        Q = !0, se = !0, ds(pt(t.createThrowStatement(Pe), jt));
      }
      function ml(Pe, jt) {
        Q = !0, se = !0, ds(ln(pt(t.createReturnStatement(t.createArrayLiteralExpression(Pe ? [Yc(2), Pe] : [Yc(2)])), jt), 768));
      }
      function gl(Pe, jt) {
        Q = !0, ds(ln(pt(t.createReturnStatement(t.createArrayLiteralExpression([Yc(3), _o(Pe)])), jt), 768));
      }
      function Os(Pe, jt, Yr) {
        ds(ln(t.createIfStatement(jt, ln(pt(t.createReturnStatement(t.createArrayLiteralExpression([Yc(3), _o(Pe)])), Yr), 768)), 1));
      }
      function Ao(Pe, jt, Yr) {
        ds(ln(t.createIfStatement(t.createLogicalNot(jt), ln(pt(t.createReturnStatement(t.createArrayLiteralExpression([Yc(3), _o(Pe)])), Yr), 768)), 1));
      }
      function Su(Pe, jt) {
        Q = !0, ds(ln(pt(t.createReturnStatement(t.createArrayLiteralExpression(Pe ? [Yc(4), Pe] : [Yc(4)])), jt), 768));
      }
      function rf(Pe, jt) {
        Q = !0, ds(ln(pt(t.createReturnStatement(t.createArrayLiteralExpression([Yc(5), Pe])), jt), 768));
      }
      function Ip() {
        Q = !0, ds(t.createReturnStatement(t.createArrayLiteralExpression([Yc(7)])));
      }
    }
    function uU(e) {
      function t(ee) {
        switch (ee) {
          case 2:
            return H;
          case 3:
            return U;
          default:
            return z;
        }
      }
      const { factory: n, getEmitHelperFactory: i, startLexicalEnvironment: a, endLexicalEnvironment: o, hoistVariableDeclaration: c } = e, _ = e.getCompilerOptions(), u = e.getEmitResolver(), d = e.getEmitHost(), g = Ps(_), h = u_(_), S = e.onSubstituteNode, T = e.onEmitNode;
      e.onSubstituteNode = Qe, e.onEmitNode = ut, e.enableSubstitution(214), e.enableSubstitution(216), e.enableSubstitution(80), e.enableSubstitution(227), e.enableSubstitution(305), e.enableEmitNotification(308);
      const k = [];
      let D, P, N;
      const M = [];
      let R;
      return Xd(e, G);
      function G(ee) {
        if (ee.isDeclarationFile || !(r6(ee, _) || ee.transformFlags & 8388608 || Tp(ee) && dO(_) && _.outFile)) return ee;
        D = ee, P = nU(e, ee), k[w_(ee)] = P, _.rewriteRelativeImportExtensions && BO(ee, !1, !1, (j) => {
          (!Xs(j.arguments[0]) || fA(j.arguments[0].text, _)) && (N = kr(N, j));
        });
        const q = t(h)(ee);
        return D = void 0, P = void 0, R = !1, q;
      }
      function L() {
        return Zg(D.fileName) && D.commonJsModuleIndicator && (!D.externalModuleIndicator || D.externalModuleIndicator === !0) ? !1 : !!(!P.exportEquals && Sl(D));
      }
      function z(ee) {
        a();
        const q = [], j = OD(_) || Sl(D), Re = n.copyPrologue(ee.statements, q, j && !Tp(ee), se);
        if (L() && kr(q, we()), _t(P.exportedNames))
          for (let Ke = 0; Ke < P.exportedNames.length; Ke += 50) kr(q, n.createExpressionStatement(a_(P.exportedNames.slice(Ke, Ke + 50), (pr, Pr) => Pr.kind === 11 ? n.createAssignment(n.createElementAccessExpression(n.createIdentifier("exports"), n.createStringLiteral(Pr.text)), pr) : n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"), n.createIdentifier(On(Pr))), pr), n.createVoidZero())));
        for (const ye of P.exportedFunctions) ne(q, ye);
        kr(q, Ze(P.externalHelpersImportDeclaration, se, Ei)), Mn(q, Fr(ee.statements, se, Ei, Re)), Q(q, !1), qg(q, o());
        const $e = n.updateSourceFile(ee, pt(n.createNodeArray(q), ee.statements));
        return th($e, e.readEmitHelpers()), $e;
      }
      function H(ee) {
        const q = n.createIdentifier("define"), j = dN(n, ee, d, _), Re = Tp(ee) && ee, { aliasedModuleNames: $e, unaliasedModuleNames: ye, importAliasNames: Ke } = pe(ee, !0), pr = n.updateSourceFile(ee, pt(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(q, void 0, [
          ...j ? [j] : [],
          n.createArrayLiteralExpression(Re ? Te : [
            n.createStringLiteral("require"),
            n.createStringLiteral("exports"),
            ...$e,
            ...ye
          ]),
          Re ? Re.statements.length ? Re.statements[0].expression : n.createObjectLiteralExpression() : n.createFunctionExpression(void 0, void 0, void 0, void 0, [
            n.createParameterDeclaration(void 0, void 0, "require"),
            n.createParameterDeclaration(void 0, void 0, "exports"),
            ...Ke
          ], void 0, W(ee))
        ]))]), ee.statements));
        return th(pr, e.readEmitHelpers()), pr;
      }
      function U(ee) {
        const { aliasedModuleNames: q, unaliasedModuleNames: j, importAliasNames: Re } = pe(ee, !1), $e = dN(n, ee, d, _), ye = n.createFunctionExpression(void 0, void 0, void 0, void 0, [n.createParameterDeclaration(void 0, void 0, "factory")], void 0, pt(n.createBlock([n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("module"), "object"), n.createTypeCheck(n.createPropertyAccessExpression(n.createIdentifier("module"), "exports"), "object")), n.createBlock([n.createVariableStatement(void 0, [n.createVariableDeclaration("v", void 0, void 0, n.createCallExpression(n.createIdentifier("factory"), void 0, [n.createIdentifier("require"), n.createIdentifier("exports")]))]), ln(n.createIfStatement(n.createStrictInequality(n.createIdentifier("v"), n.createIdentifier("undefined")), n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"), "exports"), n.createIdentifier("v")))), 1)]), n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("define"), "function"), n.createPropertyAccessExpression(n.createIdentifier("define"), "amd")), n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("define"), void 0, [
          ...$e ? [$e] : [],
          n.createArrayLiteralExpression([
            n.createStringLiteral("require"),
            n.createStringLiteral("exports"),
            ...q,
            ...j
          ]),
          n.createIdentifier("factory")
        ]))])))], !0), void 0)), Ke = n.updateSourceFile(ee, pt(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(ye, void 0, [n.createFunctionExpression(void 0, void 0, void 0, void 0, [
          n.createParameterDeclaration(void 0, void 0, "require"),
          n.createParameterDeclaration(void 0, void 0, "exports"),
          ...Re
        ], void 0, W(ee))]))]), ee.statements));
        return th(Ke, e.readEmitHelpers()), Ke;
      }
      function pe(ee, q) {
        const j = [], Re = [], $e = [];
        for (const ye of ee.amdDependencies) ye.name ? (j.push(n.createStringLiteral(ye.path)), $e.push(n.createParameterDeclaration(void 0, void 0, ye.name))) : Re.push(n.createStringLiteral(ye.path));
        for (const ye of P.externalImports) {
          const Ke = vk(n, ye, D, d, u, _), pr = z6(n, ye, D);
          Ke && (q && pr ? (ln(pr, 8), j.push(Ke), $e.push(n.createParameterDeclaration(void 0, void 0, pr))) : Re.push(Ke));
        }
        return {
          aliasedModuleNames: j,
          unaliasedModuleNames: Re,
          importAliasNames: $e
        };
      }
      function ie(ee) {
        if (bl(ee) || tl(ee) || !vk(n, ee, D, d, u, _)) return;
        const q = z6(n, ee, D), j = Zr(ee, q);
        if (j !== q)
          return n.createExpressionStatement(n.createAssignment(q, j));
      }
      function W(ee) {
        a();
        const q = [], j = n.copyPrologue(ee.statements, q, !0, se);
        L() && kr(q, we()), _t(P.exportedNames) && kr(q, n.createExpressionStatement(a_(P.exportedNames, ($e, ye) => ye.kind === 11 ? n.createAssignment(n.createElementAccessExpression(n.createIdentifier("exports"), n.createStringLiteral(ye.text)), $e) : n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"), n.createIdentifier(On(ye))), $e), n.createVoidZero())));
        for (const $e of P.exportedFunctions) ne(q, $e);
        kr(q, Ze(P.externalHelpersImportDeclaration, se, Ei)), h === 2 && Mn(q, Rn(P.externalImports, ie)), Mn(q, Fr(ee.statements, se, Ei, j)), Q(q, !0), qg(q, o());
        const Re = n.createBlock(q, !0);
        return R && ak(Re, Oje), Re;
      }
      function Q(ee, q) {
        if (P.exportEquals) {
          const j = Ze(P.exportEquals.expression, de, dt);
          if (j) if (q) {
            const Re = n.createReturnStatement(j);
            pt(Re, P.exportEquals), ln(Re, 3840), ee.push(Re);
          } else {
            const Re = n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"), "exports"), j));
            pt(Re, P.exportEquals), ln(Re, 3072), ee.push(Re);
          }
        }
      }
      function se(ee) {
        switch (ee.kind) {
          case 273:
            return ni(ee);
          case 272:
            return Me(ee);
          case 279:
            return vt(ee);
          case 278:
            return tr(ee);
          default:
            return he(ee);
        }
      }
      function he(ee) {
        switch (ee.kind) {
          case 244:
            return zn(ee);
          case 263:
            return Ur(ee);
          case 264:
            return $n(ee);
          case 249:
            return ce(ee, !0);
          case 250:
            return oe(ee);
          case 251:
            return ge(ee);
          case 247:
            return Ae(ee);
          case 248:
            return Ne(ee);
          case 257:
            return ot(ee);
          case 255:
            return K(ee);
          case 246:
            return ke(ee);
          case 256:
            return ae(ee);
          case 270:
            return Ce(ee);
          case 297:
            return ue(ee);
          case 298:
            return Ie(ee);
          case 259:
            return Xe(ee);
          case 300:
            return Ft(ee);
          case 242:
            return Ut(ee);
          default:
            return de(ee);
        }
      }
      function fe(ee, q) {
        if (!(ee.transformFlags & 276828160) && !N?.length) return ee;
        switch (ee.kind) {
          case 249:
            return ce(ee, !1);
          case 245:
            return Xt(ee);
          case 218:
            return Ar(ee, q);
          case 356:
            return Ct(ee, q);
          case 214:
            const j = ee === ul(N);
            if (j && N.shift(), B_(ee) && d.shouldTransformImportCall(D)) return _i(ee, j);
            if (j) return zr(ee);
            break;
          case 227:
            if (A0(ee)) return Be(ee, q);
            break;
          case 225:
          case 226:
            return Kt(ee, q);
        }
        return Tr(ee, de, e);
      }
      function de(ee) {
        return fe(ee, !1);
      }
      function $(ee) {
        return fe(ee, !0);
      }
      function Se(ee) {
        if (bs(ee)) for (const q of ee.properties) switch (q.kind) {
          case 304:
            if (Se(q.initializer)) return !0;
            break;
          case 305:
            if (Se(q.name)) return !0;
            break;
          case 306:
            if (Se(q.expression)) return !0;
            break;
          case 175:
          case 178:
          case 179:
            return !1;
          default:
            E.assertNever(q, "Unhandled object member kind");
        }
        else if (hu(ee)) {
          for (const q of ee.elements) if (wp(q)) {
            if (Se(q.expression)) return !0;
          } else if (Se(q)) return !0;
        } else if (Fe(ee)) return It(rt(ee)) > (lF(ee) ? 1 : 0);
        return !1;
      }
      function Be(ee, q) {
        return Se(ee.left) ? $S(ee, de, e, 0, !q, na) : Tr(ee, de, e);
      }
      function ce(ee, q) {
        if (q && ee.initializer && iu(ee.initializer) && !(ee.initializer.flags & 7)) {
          const j = Ye(void 0, ee.initializer, !1);
          if (j) {
            const Re = [], $e = Ze(ee.initializer, $, iu), ye = n.createVariableStatement(void 0, $e);
            Re.push(ye), Mn(Re, j);
            const Ke = Ze(ee.condition, de, dt), pr = Ze(ee.incrementor, $, dt), Pr = D_(ee.statement, q ? he : de, e);
            return Re.push(n.updateForStatement(ee, void 0, Ke, pr, Pr)), Re;
          }
        }
        return n.updateForStatement(ee, Ze(ee.initializer, $, bp), Ze(ee.condition, de, dt), Ze(ee.incrementor, $, dt), D_(ee.statement, q ? he : de, e));
      }
      function oe(ee) {
        if (iu(ee.initializer) && !(ee.initializer.flags & 7)) {
          const q = Ye(void 0, ee.initializer, !0);
          if (_t(q)) {
            const j = Ze(ee.initializer, $, bp), Re = Ze(ee.expression, de, dt), $e = D_(ee.statement, he, e), ye = Wa($e) ? n.updateBlock($e, [...q, ...$e.statements]) : n.createBlock([...q, $e], !0);
            return n.updateForInStatement(ee, j, Re, ye);
          }
        }
        return n.updateForInStatement(ee, Ze(ee.initializer, $, bp), Ze(ee.expression, de, dt), D_(ee.statement, he, e));
      }
      function ge(ee) {
        if (iu(ee.initializer) && !(ee.initializer.flags & 7)) {
          const q = Ye(void 0, ee.initializer, !0), j = Ze(ee.initializer, $, bp), Re = Ze(ee.expression, de, dt);
          let $e = D_(ee.statement, he, e);
          return _t(q) && ($e = Wa($e) ? n.updateBlock($e, [...q, ...$e.statements]) : n.createBlock([...q, $e], !0)), n.updateForOfStatement(ee, ee.awaitModifier, j, Re, $e);
        }
        return n.updateForOfStatement(ee, ee.awaitModifier, Ze(ee.initializer, $, bp), Ze(ee.expression, de, dt), D_(ee.statement, he, e));
      }
      function Ae(ee) {
        return n.updateDoStatement(ee, D_(ee.statement, he, e), Ze(ee.expression, de, dt));
      }
      function Ne(ee) {
        return n.updateWhileStatement(ee, Ze(ee.expression, de, dt), D_(ee.statement, he, e));
      }
      function ot(ee) {
        return n.updateLabeledStatement(ee, ee.label, Ze(ee.statement, he, Ei, n.liftToBlock) ?? pt(n.createEmptyStatement(), ee.statement));
      }
      function K(ee) {
        return n.updateWithStatement(ee, Ze(ee.expression, de, dt), E.checkDefined(Ze(ee.statement, he, Ei, n.liftToBlock)));
      }
      function ke(ee) {
        return n.updateIfStatement(ee, Ze(ee.expression, de, dt), Ze(ee.thenStatement, he, Ei, n.liftToBlock) ?? n.createBlock([]), Ze(ee.elseStatement, he, Ei, n.liftToBlock));
      }
      function ae(ee) {
        return n.updateSwitchStatement(ee, Ze(ee.expression, de, dt), E.checkDefined(Ze(ee.caseBlock, he, aw)));
      }
      function Ce(ee) {
        return n.updateCaseBlock(ee, Fr(ee.clauses, he, B3));
      }
      function ue(ee) {
        return n.updateCaseClause(ee, Ze(ee.expression, de, dt), Fr(ee.statements, he, Ei));
      }
      function Ie(ee) {
        return Tr(ee, he, e);
      }
      function Xe(ee) {
        return Tr(ee, he, e);
      }
      function Ft(ee) {
        return n.updateCatchClause(ee, ee.variableDeclaration, E.checkDefined(Ze(ee.block, he, Wa)));
      }
      function Ut(ee) {
        return ee = Tr(ee, he, e), ee;
      }
      function Xt(ee) {
        return n.updateExpressionStatement(ee, Ze(ee.expression, $, dt));
      }
      function Ar(ee, q) {
        return n.updateParenthesizedExpression(ee, Ze(ee.expression, q ? $ : de, dt));
      }
      function Ct(ee, q) {
        return n.updatePartiallyEmittedExpression(ee, Ze(ee.expression, q ? $ : de, dt));
      }
      function Kt(ee, q) {
        if ((ee.operator === 46 || ee.operator === 47) && Fe(ee.operand) && !Ko(ee.operand) && !Hh(ee.operand) && !IJ(ee.operand)) {
          const j = rt(ee.operand);
          if (j) {
            let Re, $e = Ze(ee.operand, de, dt);
            kv(ee) ? $e = n.updatePrefixUnaryExpression(ee, $e) : ($e = n.updatePostfixUnaryExpression(ee, $e), q || (Re = n.createTempVariable(c), $e = n.createAssignment(Re, $e), pt($e, ee)), $e = n.createComma($e, n.cloneNode(ee.operand)), pt($e, ee));
            for (const ye of j)
              M[Hs($e)] = !0, $e = nt(ye, $e), pt($e, ee);
            return Re && (M[Hs($e)] = !0, $e = n.createComma($e, Re), pt($e, ee)), $e;
          }
        }
        return Tr(ee, de, e);
      }
      function zr(ee) {
        return n.updateCallExpression(ee, ee.expression, void 0, Fr(ee.arguments, (q) => q === ee.arguments[0] ? Xs(q) ? Dk(q, _) : i().createRewriteRelativeImportExtensionsHelper(q) : de(q), dt));
      }
      function _i(ee, q) {
        if (h === 0 && g >= 7) return Tr(ee, de, e);
        const j = vk(n, ee, D, d, u, _), Re = Ze(ul(ee.arguments), de, dt), $e = j && (!Re || !Ts(Re) || Re.text !== j.text) ? j : Re && q ? Ts(Re) ? Dk(Re, _) : i().createRewriteRelativeImportExtensionsHelper(Re) : Re, ye = !!(ee.transformFlags & 16384);
        switch (_.module) {
          case 2:
            return Nt($e, ye);
          case 3:
            return Gr($e ?? n.createVoidZero(), ye);
          default:
            return Li($e);
        }
      }
      function Gr(ee, q) {
        if (R = !0, r2(ee)) {
          const j = Ko(ee) ? ee : Ts(ee) ? n.createStringLiteralFromNode(ee) : ln(pt(n.cloneNode(ee), ee), 3072);
          return n.createConditionalExpression(n.createIdentifier("__syncRequire"), void 0, Li(ee), void 0, Nt(j, q));
        } else {
          const j = n.createTempVariable(c);
          return n.createComma(n.createAssignment(j, ee), n.createConditionalExpression(n.createIdentifier("__syncRequire"), void 0, Li(j, !0), void 0, Nt(j, q)));
        }
      }
      function Nt(ee, q) {
        const j = n.createUniqueName("resolve"), Re = n.createUniqueName("reject"), $e = [n.createParameterDeclaration(void 0, void 0, j), n.createParameterDeclaration(void 0, void 0, Re)], ye = n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("require"), void 0, [
          n.createArrayLiteralExpression([ee || n.createOmittedExpression()]),
          j,
          Re
        ]))]);
        let Ke;
        g >= 2 ? Ke = n.createArrowFunction(void 0, void 0, $e, void 0, void 0, ye) : (Ke = n.createFunctionExpression(void 0, void 0, void 0, void 0, $e, void 0, ye), q && ln(Ke, 16));
        const pr = n.createNewExpression(n.createIdentifier("Promise"), void 0, [Ke]);
        return Dm(_) ? n.createCallExpression(n.createPropertyAccessExpression(pr, n.createIdentifier("then")), void 0, [i().createImportStarCallbackHelper()]) : pr;
      }
      function Li(ee, q) {
        const j = ee && !Lm(ee) && !q, Re = n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Promise"), "resolve"), void 0, j ? g >= 2 ? [n.createTemplateExpression(n.createTemplateHead(""), [n.createTemplateSpan(ee, n.createTemplateTail(""))])] : [n.createCallExpression(n.createPropertyAccessExpression(n.createStringLiteral(""), "concat"), void 0, [ee])] : []);
        let $e = n.createCallExpression(n.createIdentifier("require"), void 0, j ? [n.createIdentifier("s")] : ee ? [ee] : []);
        Dm(_) && ($e = i().createImportStarHelper($e));
        const ye = j ? [n.createParameterDeclaration(void 0, void 0, "s")] : [];
        let Ke;
        return g >= 2 ? Ke = n.createArrowFunction(void 0, void 0, ye, void 0, void 0, $e) : Ke = n.createFunctionExpression(void 0, void 0, void 0, void 0, ye, void 0, n.createBlock([n.createReturnStatement($e)])), n.createCallExpression(n.createPropertyAccessExpression(Re, "then"), void 0, [Ke]);
      }
      function ri(ee, q) {
        return !Dm(_) || pd(ee) & 2 ? q : Jne(ee) ? i().createImportStarHelper(q) : q;
      }
      function Zr(ee, q) {
        return !Dm(_) || pd(ee) & 2 ? q : $F(ee) ? i().createImportStarHelper(q) : rU(ee) ? i().createImportDefaultHelper(q) : q;
      }
      function ni(ee) {
        let q;
        const j = u6(ee);
        if (h !== 2) if (ee.importClause) {
          const Re = [];
          j && !TS(ee) ? Re.push(n.createVariableDeclaration(n.cloneNode(j.name), void 0, void 0, Zr(ee, ra(ee)))) : (Re.push(n.createVariableDeclaration(n.getGeneratedNameForNode(ee), void 0, void 0, Zr(ee, ra(ee)))), j && TS(ee) && Re.push(n.createVariableDeclaration(n.cloneNode(j.name), void 0, void 0, n.getGeneratedNameForNode(ee)))), q = kr(q, Fn(pt(n.createVariableStatement(void 0, n.createVariableDeclarationList(Re, g >= 2 ? 2 : 0)), ee), ee));
        } else
          return Fn(pt(n.createExpressionStatement(ra(ee)), ee), ee);
        else j && TS(ee) && (q = kr(q, n.createVariableStatement(void 0, n.createVariableDeclarationList([Fn(pt(n.createVariableDeclaration(n.cloneNode(j.name), void 0, void 0, n.getGeneratedNameForNode(ee)), ee), ee)], g >= 2 ? 2 : 0))));
        return q = Da(q, ee), ig(q);
      }
      function ra(ee) {
        const q = vk(n, ee, D, d, u, _), j = [];
        return q && j.push(Dk(q, _)), n.createCallExpression(n.createIdentifier("require"), void 0, j);
      }
      function Me(ee) {
        E.assert(uv(ee), "import= for internal module references should be handled in an earlier transformer.");
        let q;
        return h !== 2 ? Qn(ee, 32) ? q = kr(q, Fn(pt(n.createExpressionStatement(nt(ee.name, ra(ee))), ee), ee)) : q = kr(q, Fn(pt(n.createVariableStatement(void 0, n.createVariableDeclarationList([n.createVariableDeclaration(n.cloneNode(ee.name), void 0, void 0, ra(ee))], g >= 2 ? 2 : 0)), ee), ee)) : Qn(ee, 32) && (q = kr(q, Fn(pt(n.createExpressionStatement(nt(n.getExportName(ee), n.getLocalName(ee))), ee), ee))), q = Lr(q, ee), ig(q);
      }
      function vt(ee) {
        if (!ee.moduleSpecifier) return;
        const q = n.getGeneratedNameForNode(ee);
        if (ee.exportClause && Pp(ee.exportClause)) {
          const j = [];
          h !== 2 && j.push(Fn(pt(n.createVariableStatement(void 0, n.createVariableDeclarationList([n.createVariableDeclaration(q, void 0, void 0, ra(ee))])), ee), ee));
          for (const Re of ee.exportClause.elements) {
            const $e = Re.propertyName || Re.name, ye = Dm(_) && !(pd(ee) & 2) && lg($e) ? i().createImportDefaultHelper(q) : q, Ke = $e.kind === 11 ? n.createElementAccessExpression(ye, $e) : n.createPropertyAccessExpression(ye, $e);
            j.push(Fn(pt(n.createExpressionStatement(nt(Re.name.kind === 11 ? n.cloneNode(Re.name) : n.getExportName(Re), Ke, void 0, !0)), Re), Re));
          }
          return ig(j);
        } else if (ee.exportClause) {
          const j = [];
          return j.push(Fn(pt(n.createExpressionStatement(nt(n.cloneNode(ee.exportClause.name), ri(ee, h !== 2 ? ra(ee) : d5(ee) || ee.exportClause.name.kind === 11 ? q : n.createIdentifier(On(ee.exportClause.name))))), ee), ee)), ig(j);
        } else return Fn(pt(n.createExpressionStatement(i().createExportStarHelper(h !== 2 ? ra(ee) : q)), ee), ee);
      }
      function tr(ee) {
        if (!ee.isExportEquals)
          return Ge(n.createIdentifier("default"), Ze(ee.expression, de, dt), ee, !0);
      }
      function Ur(ee) {
        let q;
        return Qn(ee, 32) ? q = kr(q, Fn(pt(n.createFunctionDeclaration(Fr(ee.modifiers, it, hs), ee.asteriskToken, n.getDeclarationName(ee, !0, !0), void 0, Fr(ee.parameters, de, Fi), void 0, Tr(ee.body, de, e)), ee), ee)) : q = kr(q, Tr(ee, de, e)), ig(q);
      }
      function $n(ee) {
        let q;
        return Qn(ee, 32) ? q = kr(q, Fn(pt(n.createClassDeclaration(Fr(ee.modifiers, it, ec), n.getDeclarationName(ee, !0, !0), void 0, Fr(ee.heritageClauses, de, kf), Fr(ee.members, de, al)), ee), ee)) : q = kr(q, Tr(ee, de, e)), q = ne(q, ee), ig(q);
      }
      function zn(ee) {
        let q, j, Re;
        if (Qn(ee, 32)) {
          let $e, ye = !1;
          for (const Ke of ee.declarationList.declarations) if (Fe(Ke.name) && Hh(Ke.name))
            if ($e || ($e = Fr(ee.modifiers, it, hs)), Ke.initializer) {
              const pr = n.updateVariableDeclaration(Ke, Ke.name, void 0, void 0, nt(Ke.name, Ze(Ke.initializer, de, dt)));
              j = kr(j, pr);
            } else j = kr(j, Ke);
          else if (Ke.initializer) if (!Ja(Ke.name) && (Bo(Ke.initializer) || Lo(Ke.initializer) || Hc(Ke.initializer))) {
            const pr = n.createAssignment(pt(n.createPropertyAccessExpression(n.createIdentifier("exports"), Ke.name), Ke.name), n.createIdentifier(Xp(Ke.name))), Pr = n.createVariableDeclaration(Ke.name, Ke.exclamationToken, Ke.type, Ze(Ke.initializer, de, dt));
            j = kr(j, Pr), Re = kr(Re, pr), ye = !0;
          } else Re = kr(Re, Ea(Ke));
          if (j && (q = kr(q, n.updateVariableStatement(ee, $e, n.updateVariableDeclarationList(ee.declarationList, j)))), Re) {
            const Ke = Fn(pt(n.createExpressionStatement(n.inlineExpressions(Re)), ee), ee);
            ye && KA(Ke), q = kr(q, Ke);
          }
        } else q = kr(q, Tr(ee, de, e));
        return q = ha(q, ee), ig(q);
      }
      function na(ee, q, j) {
        const Re = rt(ee);
        if (Re) {
          let $e = lF(ee) ? q : n.createAssignment(ee, q);
          for (const ye of Re)
            ln($e, 8), $e = nt(ye, $e, j);
          return $e;
        }
        return n.createAssignment(ee, q);
      }
      function Ea(ee) {
        return Ja(ee.name) ? $S(Ze(ee, de, OA), de, e, 0, !1, na) : n.createAssignment(pt(n.createPropertyAccessExpression(n.createIdentifier("exports"), ee.name), ee.name), ee.initializer ? Ze(ee.initializer, de, dt) : n.createVoidZero());
      }
      function Da(ee, q) {
        if (P.exportEquals) return ee;
        const j = q.importClause;
        if (!j) return ee;
        const Re = new Z6();
        j.name && (ee = tt(ee, Re, j));
        const $e = j.namedBindings;
        if ($e) switch ($e.kind) {
          case 275:
            ee = tt(ee, Re, $e);
            break;
          case 276:
            for (const ye of $e.elements) ee = tt(ee, Re, ye, !0);
            break;
        }
        return ee;
      }
      function Lr(ee, q) {
        return P.exportEquals ? ee : tt(ee, new Z6(), q);
      }
      function ha(ee, q) {
        return Ye(ee, q.declarationList, !1);
      }
      function Ye(ee, q, j) {
        if (P.exportEquals) return ee;
        for (const Re of q.declarations) ee = Pt(ee, Re, j);
        return ee;
      }
      function Pt(ee, q, j) {
        if (P.exportEquals) return ee;
        if (Ja(q.name))
          for (const Re of q.name.elements) Al(Re) || (ee = Pt(ee, Re, j));
        else !Ko(q.name) && (!ci(q) || q.initializer || j) && (ee = tt(ee, new Z6(), q));
        return ee;
      }
      function ne(ee, q) {
        if (P.exportEquals) return ee;
        const j = new Z6();
        if (Qn(q, 32)) {
          const Re = Qn(q, 2048) ? n.createIdentifier("default") : n.getDeclarationName(q);
          ee = re(ee, j, Re, n.getLocalName(q), q);
        }
        return q.name && (ee = tt(ee, j, q)), ee;
      }
      function tt(ee, q, j, Re) {
        const $e = n.getDeclarationName(j), ye = P.exportSpecifiers.get($e);
        if (ye) for (const Ke of ye) ee = re(ee, q, Ke.name, $e, Ke.name, void 0, Re);
        return ee;
      }
      function re(ee, q, j, Re, $e, ye, Ke) {
        if (j.kind !== 11) {
          if (q.has(j)) return ee;
          q.set(j, !0);
        }
        return ee = kr(ee, Ge(j, Re, $e, ye, Ke)), ee;
      }
      function we() {
        const ee = n.createExpressionStatement(n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"), "defineProperty"), void 0, [
          n.createIdentifier("exports"),
          n.createStringLiteral("__esModule"),
          n.createObjectLiteralExpression([n.createPropertyAssignment("value", n.createTrue())])
        ]));
        return ln(ee, 2097152), ee;
      }
      function Ge(ee, q, j, Re, $e) {
        const ye = pt(n.createExpressionStatement(nt(ee, q, void 0, $e)), j);
        return Xu(ye), Re || ln(ye, 3072), ye;
      }
      function nt(ee, q, j, Re) {
        return pt(Re ? n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"), "defineProperty"), void 0, [
          n.createIdentifier("exports"),
          n.createStringLiteralFromNode(ee),
          n.createObjectLiteralExpression([n.createPropertyAssignment("enumerable", n.createTrue()), n.createPropertyAssignment("get", n.createFunctionExpression(void 0, void 0, void 0, void 0, [], void 0, n.createBlock([n.createReturnStatement(q)])))])
        ]) : n.createAssignment(ee.kind === 11 ? n.createElementAccessExpression(n.createIdentifier("exports"), n.cloneNode(ee)) : n.createPropertyAccessExpression(n.createIdentifier("exports"), n.cloneNode(ee)), q), j);
      }
      function it(ee) {
        switch (ee.kind) {
          case 95:
          case 90:
            return;
        }
        return ee;
      }
      function ut(ee, q, j) {
        q.kind === 308 ? (D = q, P = k[w_(D)], T(ee, q, j), D = void 0, P = void 0) : T(ee, q, j);
      }
      function Qe(ee, q) {
        return q = S(ee, q), q.id && M[q.id] ? q : ee === 1 ? Dt(q) : Nu(q) ? xt(q) : q;
      }
      function xt(ee) {
        const q = ee.name, j = rr(q);
        if (j !== q) {
          if (ee.objectAssignmentInitializer) {
            const Re = n.createAssignment(j, ee.objectAssignmentInitializer);
            return pt(n.createPropertyAssignment(q, Re), ee);
          }
          return pt(n.createPropertyAssignment(q, j), ee);
        }
        return ee;
      }
      function Dt(ee) {
        switch (ee.kind) {
          case 80:
            return rr(ee);
          case 214:
            return Ve(ee);
          case 216:
            return fr(ee);
          case 227:
            return Oe(ee);
        }
        return ee;
      }
      function Ve(ee) {
        if (Fe(ee.expression)) {
          const q = rr(ee.expression);
          if (M[Hs(q)] = !0, !Fe(q) && !(Bs(ee.expression) & 8192)) return AS(n.updateCallExpression(ee, q, void 0, ee.arguments), 16);
        }
        return ee;
      }
      function fr(ee) {
        if (Fe(ee.tag)) {
          const q = rr(ee.tag);
          if (M[Hs(q)] = !0, !Fe(q) && !(Bs(ee.tag) & 8192)) return AS(n.updateTaggedTemplateExpression(ee, q, void 0, ee.template), 16);
        }
        return ee;
      }
      function rr(ee) {
        var q, j;
        if (Bs(ee) & 8192) {
          const Re = pN(D);
          return Re ? n.createPropertyAccessExpression(Re, ee) : ee;
        } else if (!(Ko(ee) && !(ee.emitNode.autoGenerate.flags & 64)) && !Hh(ee)) {
          const Re = u.getReferencedExportContainer(ee, lF(ee));
          if (Re && Re.kind === 308) return pt(n.createPropertyAccessExpression(n.createIdentifier("exports"), n.cloneNode(ee)), ee);
          const $e = u.getReferencedImportDeclaration(ee);
          if ($e) {
            if (hd($e)) return pt(n.createPropertyAccessExpression(n.getGeneratedNameForNode($e.parent), n.createIdentifier("default")), ee);
            if (p_($e)) {
              const ye = $e.propertyName || $e.name, Ke = n.getGeneratedNameForNode(((j = (q = $e.parent) == null ? void 0 : q.parent) == null ? void 0 : j.parent) || $e);
              return pt(ye.kind === 11 ? n.createElementAccessExpression(Ke, n.cloneNode(ye)) : n.createPropertyAccessExpression(Ke, n.cloneNode(ye)), ee);
            }
          }
        }
        return ee;
      }
      function Oe(ee) {
        if (Uh(ee.operatorToken.kind) && Fe(ee.left) && (!Ko(ee.left) || A3(ee.left)) && !Hh(ee.left)) {
          const q = rt(ee.left);
          if (q) {
            let j = ee;
            for (const Re of q)
              M[Hs(j)] = !0, j = nt(Re, j, ee);
            return j;
          }
        }
        return ee;
      }
      function rt(ee) {
        if (Ko(ee)) {
          if (A3(ee)) {
            const q = P?.exportSpecifiers.get(ee);
            if (q) {
              const j = [];
              for (const Re of q) j.push(Re.name);
              return j;
            }
          }
        } else {
          const q = u.getReferencedImportDeclaration(ee);
          if (q) return P?.exportedBindings[w_(q)];
          const j = /* @__PURE__ */ new Set(), Re = u.getReferencedValueDeclarations(ee);
          if (Re) {
            for (const $e of Re) {
              const ye = P?.exportedBindings[w_($e)];
              if (ye) for (const Ke of ye) j.add(Ke);
            }
            if (j.size) return ma(j);
          }
        }
      }
    }
    var Oje = {
      name: "typescript:dynamicimport-sync-require",
      scoped: !0,
      text: `
            var __syncRequire = typeof module === "object" && typeof module.exports === "object";`
    };
    function mie(e) {
      const { factory: t, startLexicalEnvironment: n, endLexicalEnvironment: i, hoistVariableDeclaration: a } = e, o = e.getCompilerOptions(), c = e.getEmitResolver(), _ = e.getEmitHost(), u = e.onSubstituteNode, d = e.onEmitNode;
      e.onSubstituteNode = we, e.onEmitNode = re, e.enableSubstitution(80), e.enableSubstitution(305), e.enableSubstitution(227), e.enableSubstitution(237), e.enableEmitNotification(308);
      const g = [], h = [], S = [], T = [];
      let k, D, P, N, M, R, G;
      return Xd(e, L);
      function L(Oe) {
        if (Oe.isDeclarationFile || !(r6(Oe, o) || Oe.transformFlags & 8388608)) return Oe;
        const rt = w_(Oe);
        k = Oe, R = Oe, D = g[rt] = nU(e, Oe), P = t.createUniqueName("exports"), h[rt] = P, N = T[rt] = t.createUniqueName("context");
        const ee = z(D.externalImports), q = H(Oe, ee), j = t.createFunctionExpression(void 0, void 0, void 0, void 0, [t.createParameterDeclaration(void 0, void 0, P), t.createParameterDeclaration(void 0, void 0, N)], void 0, q), Re = dN(t, Oe, _, o), $e = t.createArrayLiteralExpression(or(ee, (Ke) => Ke.name)), ye = ln(t.updateSourceFile(Oe, pt(t.createNodeArray([t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("System"), "register"), void 0, Re ? [
          Re,
          $e,
          j
        ] : [$e, j]))]), Oe.statements)), 2048);
        return o.outFile || Dte(ye, q, (Ke) => !Ke.scoped), G && (S[rt] = G, G = void 0), k = void 0, D = void 0, P = void 0, N = void 0, M = void 0, R = void 0, ye;
      }
      function z(Oe) {
        const rt = /* @__PURE__ */ new Map(), ee = [];
        for (const q of Oe) {
          const j = vk(t, q, k, _, c, o);
          if (j) {
            const Re = j.text, $e = rt.get(Re);
            $e !== void 0 ? ee[$e].externalImports.push(q) : (rt.set(Re, ee.length), ee.push({
              name: j,
              externalImports: [q]
            }));
          }
        }
        return ee;
      }
      function H(Oe, rt) {
        const ee = [];
        n();
        const q = OD(o) || Sl(k), j = t.copyPrologue(Oe.statements, ee, q, W);
        ee.push(t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration("__moduleName", void 0, void 0, t.createLogicalAnd(N, t.createPropertyAccessExpression(N, "id")))]))), Ze(D.externalHelpersImportDeclaration, W, Ei);
        const Re = Fr(Oe.statements, W, Ei, j);
        Mn(ee, M), qg(ee, i());
        const $e = U(ee), ye = Oe.transformFlags & 2097152 ? t.createModifiersFromModifierFlags(1024) : void 0, Ke = t.createObjectLiteralExpression([t.createPropertyAssignment("setters", ie($e, rt)), t.createPropertyAssignment("execute", t.createFunctionExpression(ye, void 0, void 0, void 0, [], void 0, t.createBlock(Re, !0)))], !0);
        return ee.push(t.createReturnStatement(Ke)), t.createBlock(ee, !0);
      }
      function U(Oe) {
        if (!D.hasExportStarsToExportValues) return;
        if (!_t(D.exportedNames) && D.exportedFunctions.size === 0 && D.exportSpecifiers.size === 0) {
          let j = !1;
          for (const Re of D.externalImports) if (Re.kind === 279 && Re.exportClause) {
            j = !0;
            break;
          }
          if (!j) {
            const Re = pe(void 0);
            return Oe.push(Re), Re.name;
          }
        }
        const rt = [];
        if (D.exportedNames) for (const j of D.exportedNames)
          lg(j) || rt.push(t.createPropertyAssignment(t.createStringLiteralFromNode(j), t.createTrue()));
        for (const j of D.exportedFunctions)
          Qn(j, 2048) || (E.assert(!!j.name), rt.push(t.createPropertyAssignment(t.createStringLiteralFromNode(j.name), t.createTrue())));
        const ee = t.createUniqueName("exportedNames");
        Oe.push(t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(ee, void 0, void 0, t.createObjectLiteralExpression(rt, !0))])));
        const q = pe(ee);
        return Oe.push(q), q.name;
      }
      function pe(Oe) {
        const rt = t.createUniqueName("exportStar"), ee = t.createIdentifier("m"), q = t.createIdentifier("n"), j = t.createIdentifier("exports");
        let Re = t.createStrictInequality(q, t.createStringLiteral("default"));
        return Oe && (Re = t.createLogicalAnd(Re, t.createLogicalNot(t.createCallExpression(t.createPropertyAccessExpression(Oe, "hasOwnProperty"), void 0, [q])))), t.createFunctionDeclaration(void 0, void 0, rt, void 0, [t.createParameterDeclaration(void 0, void 0, ee)], void 0, t.createBlock([
          t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(j, void 0, void 0, t.createObjectLiteralExpression([]))])),
          t.createForInStatement(t.createVariableDeclarationList([t.createVariableDeclaration(q)]), ee, t.createBlock([ln(t.createIfStatement(Re, t.createExpressionStatement(t.createAssignment(t.createElementAccessExpression(j, q), t.createElementAccessExpression(ee, q)))), 1)])),
          t.createExpressionStatement(t.createCallExpression(P, void 0, [j]))
        ], !0));
      }
      function ie(Oe, rt) {
        const ee = [];
        for (const q of rt) {
          const j = bt(q.externalImports, (ye) => z6(t, ye, k)), Re = j ? t.getGeneratedNameForNode(j) : t.createUniqueName(""), $e = [];
          for (const ye of q.externalImports) {
            const Ke = z6(t, ye, k);
            switch (ye.kind) {
              case 273:
                if (!ye.importClause) break;
              case 272:
                E.assert(Ke !== void 0), $e.push(t.createExpressionStatement(t.createAssignment(Ke, Re))), Qn(ye, 32) && $e.push(t.createExpressionStatement(t.createCallExpression(P, void 0, [t.createStringLiteral(On(Ke)), Re])));
                break;
              case 279:
                if (E.assert(Ke !== void 0), ye.exportClause) if (Pp(ye.exportClause)) {
                  const pr = [];
                  for (const Pr of ye.exportClause.elements) pr.push(t.createPropertyAssignment(t.createStringLiteral(Gy(Pr.name)), t.createElementAccessExpression(Re, t.createStringLiteral(Gy(Pr.propertyName || Pr.name)))));
                  $e.push(t.createExpressionStatement(t.createCallExpression(P, void 0, [t.createObjectLiteralExpression(pr, !0)])));
                } else $e.push(t.createExpressionStatement(t.createCallExpression(P, void 0, [t.createStringLiteral(Gy(ye.exportClause.name)), Re])));
                else $e.push(t.createExpressionStatement(t.createCallExpression(Oe, void 0, [Re])));
                break;
            }
          }
          ee.push(t.createFunctionExpression(void 0, void 0, void 0, void 0, [t.createParameterDeclaration(void 0, void 0, Re)], void 0, t.createBlock($e, !0)));
        }
        return t.createArrayLiteralExpression(ee, !0);
      }
      function W(Oe) {
        switch (Oe.kind) {
          case 273:
            return Q(Oe);
          case 272:
            return he(Oe);
          case 279:
            return se(Oe);
          case 278:
            return fe(Oe);
          default:
            return Ut(Oe);
        }
      }
      function Q(Oe) {
        let rt;
        return Oe.importClause && a(z6(t, Oe, k)), ig(ot(rt, Oe));
      }
      function se(Oe) {
        E.assertIsDefined(Oe);
      }
      function he(Oe) {
        E.assert(uv(Oe), "import= for internal module references should be handled in an earlier transformer.");
        let rt;
        return a(z6(t, Oe, k)), ig(K(rt, Oe));
      }
      function fe(Oe) {
        if (Oe.isExportEquals) return;
        const rt = Ze(Oe.expression, zn, dt);
        return Xe(t.createIdentifier("default"), rt, !0);
      }
      function de(Oe) {
        Qn(Oe, 32) ? M = kr(M, t.updateFunctionDeclaration(Oe, Fr(Oe.modifiers, tt, ec), Oe.asteriskToken, t.getDeclarationName(Oe, !0, !0), void 0, Fr(Oe.parameters, zn, Fi), void 0, Ze(Oe.body, zn, Wa))) : M = kr(M, Tr(Oe, zn, e)), M = Ce(M, Oe);
      }
      function $(Oe) {
        let rt;
        const ee = t.getLocalName(Oe);
        return a(ee), rt = kr(rt, pt(t.createExpressionStatement(t.createAssignment(ee, pt(t.createClassExpression(Fr(Oe.modifiers, tt, ec), Oe.name, void 0, Fr(Oe.heritageClauses, zn, kf), Fr(Oe.members, zn, al)), Oe))), Oe)), rt = Ce(rt, Oe), ig(rt);
      }
      function Se(Oe) {
        if (!ce(Oe.declarationList)) return Ze(Oe, zn, Ei);
        let rt;
        if (Q3(Oe.declarationList) || X3(Oe.declarationList)) {
          const ee = Fr(Oe.modifiers, tt, ec), q = [];
          for (const Re of Oe.declarationList.declarations) q.push(t.updateVariableDeclaration(Re, t.getGeneratedNameForNode(Re.name), void 0, void 0, oe(Re, !1)));
          const j = t.updateVariableDeclarationList(Oe.declarationList, q);
          rt = kr(rt, t.updateVariableStatement(Oe, ee, j));
        } else {
          let ee;
          const q = Qn(Oe, 32);
          for (const j of Oe.declarationList.declarations) j.initializer ? ee = kr(ee, oe(j, q)) : Be(j);
          ee && (rt = kr(rt, pt(t.createExpressionStatement(t.inlineExpressions(ee)), Oe)));
        }
        return rt = ke(rt, Oe, !1), ig(rt);
      }
      function Be(Oe) {
        if (Ja(Oe.name))
          for (const rt of Oe.name.elements) Al(rt) || Be(rt);
        else a(t.cloneNode(Oe.name));
      }
      function ce(Oe) {
        return (Bs(Oe) & 4194304) === 0 && (R.kind === 308 || (rc(Oe).flags & 7) === 0);
      }
      function oe(Oe, rt) {
        const ee = rt ? ge : Ae;
        return Ja(Oe.name) ? $S(Oe, zn, e, 0, !1, ee) : Oe.initializer ? ee(Oe.name, Ze(Oe.initializer, zn, dt)) : Oe.name;
      }
      function ge(Oe, rt, ee) {
        return Ne(Oe, rt, ee, !0);
      }
      function Ae(Oe, rt, ee) {
        return Ne(Oe, rt, ee, !1);
      }
      function Ne(Oe, rt, ee, q) {
        return a(t.cloneNode(Oe)), q ? Ft(Oe, fr(pt(t.createAssignment(Oe, rt), ee))) : fr(pt(t.createAssignment(Oe, rt), ee));
      }
      function ot(Oe, rt) {
        if (D.exportEquals) return Oe;
        const ee = rt.importClause;
        if (!ee) return Oe;
        ee.name && (Oe = ue(Oe, ee));
        const q = ee.namedBindings;
        if (q) switch (q.kind) {
          case 275:
            Oe = ue(Oe, q);
            break;
          case 276:
            for (const j of q.elements) Oe = ue(Oe, j);
            break;
        }
        return Oe;
      }
      function K(Oe, rt) {
        return D.exportEquals ? Oe : ue(Oe, rt);
      }
      function ke(Oe, rt, ee) {
        if (D.exportEquals) return Oe;
        for (const q of rt.declarationList.declarations) (q.initializer || ee) && (Oe = ae(Oe, q, ee));
        return Oe;
      }
      function ae(Oe, rt, ee) {
        if (D.exportEquals) return Oe;
        if (Ja(rt.name))
          for (const q of rt.name.elements) Al(q) || (Oe = ae(Oe, q, ee));
        else if (!Ko(rt.name)) {
          let q;
          ee && (Oe = Ie(Oe, rt.name, t.getLocalName(rt)), q = On(rt.name)), Oe = ue(Oe, rt, q);
        }
        return Oe;
      }
      function Ce(Oe, rt) {
        if (D.exportEquals) return Oe;
        let ee;
        if (Qn(rt, 32)) {
          const q = Qn(rt, 2048) ? t.createStringLiteral("default") : rt.name;
          Oe = Ie(Oe, q, t.getLocalName(rt)), ee = Xp(q);
        }
        return rt.name && (Oe = ue(Oe, rt, ee)), Oe;
      }
      function ue(Oe, rt, ee) {
        if (D.exportEquals) return Oe;
        const q = t.getDeclarationName(rt), j = D.exportSpecifiers.get(q);
        if (j)
          for (const Re of j) Gy(Re.name) !== ee && (Oe = Ie(Oe, Re.name, q));
        return Oe;
      }
      function Ie(Oe, rt, ee, q) {
        return Oe = kr(Oe, Xe(rt, ee, q)), Oe;
      }
      function Xe(Oe, rt, ee) {
        const q = t.createExpressionStatement(Ft(Oe, rt));
        return Xu(q), ee || ln(q, 3072), q;
      }
      function Ft(Oe, rt) {
        const ee = Fe(Oe) ? t.createStringLiteralFromNode(Oe) : Oe;
        return ln(rt, Bs(rt) | 3072), fl(t.createCallExpression(P, void 0, [ee, rt]), rt);
      }
      function Ut(Oe) {
        switch (Oe.kind) {
          case 244:
            return Se(Oe);
          case 263:
            return de(Oe);
          case 264:
            return $(Oe);
          case 249:
            return Xt(Oe, !0);
          case 250:
            return Ar(Oe);
          case 251:
            return Ct(Oe);
          case 247:
            return _i(Oe);
          case 248:
            return Gr(Oe);
          case 257:
            return Nt(Oe);
          case 255:
            return Li(Oe);
          case 246:
            return ri(Oe);
          case 256:
            return Zr(Oe);
          case 270:
            return ni(Oe);
          case 297:
            return ra(Oe);
          case 298:
            return Me(Oe);
          case 259:
            return vt(Oe);
          case 300:
            return tr(Oe);
          case 242:
            return Ur(Oe);
          default:
            return zn(Oe);
        }
      }
      function Xt(Oe, rt) {
        const ee = R;
        return R = Oe, Oe = t.updateForStatement(Oe, Ze(Oe.initializer, rt ? zr : na, bp), Ze(Oe.condition, zn, dt), Ze(Oe.incrementor, na, dt), D_(Oe.statement, rt ? Ut : zn, e)), R = ee, Oe;
      }
      function Ar(Oe) {
        const rt = R;
        return R = Oe, Oe = t.updateForInStatement(Oe, zr(Oe.initializer), Ze(Oe.expression, zn, dt), D_(Oe.statement, Ut, e)), R = rt, Oe;
      }
      function Ct(Oe) {
        const rt = R;
        return R = Oe, Oe = t.updateForOfStatement(Oe, Oe.awaitModifier, zr(Oe.initializer), Ze(Oe.expression, zn, dt), D_(Oe.statement, Ut, e)), R = rt, Oe;
      }
      function Kt(Oe) {
        return iu(Oe) && ce(Oe);
      }
      function zr(Oe) {
        if (Kt(Oe)) {
          let rt;
          for (const ee of Oe.declarations)
            rt = kr(rt, oe(ee, !1)), ee.initializer || Be(ee);
          return rt ? t.inlineExpressions(rt) : t.createOmittedExpression();
        } else return Ze(Oe, na, bp);
      }
      function _i(Oe) {
        return t.updateDoStatement(Oe, D_(Oe.statement, Ut, e), Ze(Oe.expression, zn, dt));
      }
      function Gr(Oe) {
        return t.updateWhileStatement(Oe, Ze(Oe.expression, zn, dt), D_(Oe.statement, Ut, e));
      }
      function Nt(Oe) {
        return t.updateLabeledStatement(Oe, Oe.label, Ze(Oe.statement, Ut, Ei, t.liftToBlock) ?? t.createExpressionStatement(t.createIdentifier("")));
      }
      function Li(Oe) {
        return t.updateWithStatement(Oe, Ze(Oe.expression, zn, dt), E.checkDefined(Ze(Oe.statement, Ut, Ei, t.liftToBlock)));
      }
      function ri(Oe) {
        return t.updateIfStatement(Oe, Ze(Oe.expression, zn, dt), Ze(Oe.thenStatement, Ut, Ei, t.liftToBlock) ?? t.createBlock([]), Ze(Oe.elseStatement, Ut, Ei, t.liftToBlock));
      }
      function Zr(Oe) {
        return t.updateSwitchStatement(Oe, Ze(Oe.expression, zn, dt), E.checkDefined(Ze(Oe.caseBlock, Ut, aw)));
      }
      function ni(Oe) {
        const rt = R;
        return R = Oe, Oe = t.updateCaseBlock(Oe, Fr(Oe.clauses, Ut, B3)), R = rt, Oe;
      }
      function ra(Oe) {
        return t.updateCaseClause(Oe, Ze(Oe.expression, zn, dt), Fr(Oe.statements, Ut, Ei));
      }
      function Me(Oe) {
        return Tr(Oe, Ut, e);
      }
      function vt(Oe) {
        return Tr(Oe, Ut, e);
      }
      function tr(Oe) {
        const rt = R;
        return R = Oe, Oe = t.updateCatchClause(Oe, Oe.variableDeclaration, E.checkDefined(Ze(Oe.block, Ut, Wa))), R = rt, Oe;
      }
      function Ur(Oe) {
        const rt = R;
        return R = Oe, Oe = Tr(Oe, Ut, e), R = rt, Oe;
      }
      function $n(Oe, rt) {
        if (!(Oe.transformFlags & 276828160)) return Oe;
        switch (Oe.kind) {
          case 249:
            return Xt(Oe, !1);
          case 245:
            return Ea(Oe);
          case 218:
            return Da(Oe, rt);
          case 356:
            return Lr(Oe, rt);
          case 227:
            if (A0(Oe)) return Ye(Oe, rt);
            break;
          case 214:
            if (B_(Oe)) return ha(Oe);
            break;
          case 225:
          case 226:
            return ne(Oe, rt);
        }
        return Tr(Oe, zn, e);
      }
      function zn(Oe) {
        return $n(Oe, !1);
      }
      function na(Oe) {
        return $n(Oe, !0);
      }
      function Ea(Oe) {
        return t.updateExpressionStatement(Oe, Ze(Oe.expression, na, dt));
      }
      function Da(Oe, rt) {
        return t.updateParenthesizedExpression(Oe, Ze(Oe.expression, rt ? na : zn, dt));
      }
      function Lr(Oe, rt) {
        return t.updatePartiallyEmittedExpression(Oe, Ze(Oe.expression, rt ? na : zn, dt));
      }
      function ha(Oe) {
        const rt = vk(t, Oe, k, _, c, o), ee = Ze(ul(Oe.arguments), zn, dt), q = rt && (!ee || !Ts(ee) || ee.text !== rt.text) ? rt : ee;
        return t.createCallExpression(t.createPropertyAccessExpression(N, t.createIdentifier("import")), void 0, q ? [q] : []);
      }
      function Ye(Oe, rt) {
        return Pt(Oe.left) ? $S(Oe, zn, e, 0, !rt) : Tr(Oe, zn, e);
      }
      function Pt(Oe) {
        if (Hl(Oe, !0)) return Pt(Oe.left);
        if (wp(Oe)) return Pt(Oe.expression);
        if (bs(Oe)) return _t(Oe.properties, Pt);
        if (hu(Oe)) return _t(Oe.elements, Pt);
        if (Nu(Oe)) return Pt(Oe.name);
        if (ol(Oe)) return Pt(Oe.initializer);
        if (Fe(Oe)) {
          const rt = c.getReferencedExportContainer(Oe);
          return rt !== void 0 && rt.kind === 308;
        } else return !1;
      }
      function ne(Oe, rt) {
        if ((Oe.operator === 46 || Oe.operator === 47) && Fe(Oe.operand) && !Ko(Oe.operand) && !Hh(Oe.operand) && !IJ(Oe.operand)) {
          const ee = Dt(Oe.operand);
          if (ee) {
            let q, j = Ze(Oe.operand, zn, dt);
            kv(Oe) ? j = t.updatePrefixUnaryExpression(Oe, j) : (j = t.updatePostfixUnaryExpression(Oe, j), rt || (q = t.createTempVariable(a), j = t.createAssignment(q, j), pt(j, Oe)), j = t.createComma(j, t.cloneNode(Oe.operand)), pt(j, Oe));
            for (const Re of ee) j = Ft(Re, fr(j));
            return q && (j = t.createComma(j, q), pt(j, Oe)), j;
          }
        }
        return Tr(Oe, zn, e);
      }
      function tt(Oe) {
        switch (Oe.kind) {
          case 95:
          case 90:
            return;
        }
        return Oe;
      }
      function re(Oe, rt, ee) {
        if (rt.kind === 308) {
          const q = w_(rt);
          k = rt, D = g[q], P = h[q], G = S[q], N = T[q], G && delete S[q], d(Oe, rt, ee), k = void 0, D = void 0, P = void 0, N = void 0, G = void 0;
        } else d(Oe, rt, ee);
      }
      function we(Oe, rt) {
        return rt = u(Oe, rt), rr(rt) ? rt : Oe === 1 ? it(rt) : Oe === 4 ? Ge(rt) : rt;
      }
      function Ge(Oe) {
        return Oe.kind === 305 ? nt(Oe) : Oe;
      }
      function nt(Oe) {
        var rt, ee;
        const q = Oe.name;
        if (!Ko(q) && !Hh(q)) {
          const j = c.getReferencedImportDeclaration(q);
          if (j) {
            if (hd(j)) return pt(t.createPropertyAssignment(t.cloneNode(q), t.createPropertyAccessExpression(t.getGeneratedNameForNode(j.parent), t.createIdentifier("default"))), Oe);
            if (p_(j)) {
              const Re = j.propertyName || j.name, $e = t.getGeneratedNameForNode(((ee = (rt = j.parent) == null ? void 0 : rt.parent) == null ? void 0 : ee.parent) || j);
              return pt(t.createPropertyAssignment(t.cloneNode(q), Re.kind === 11 ? t.createElementAccessExpression($e, t.cloneNode(Re)) : t.createPropertyAccessExpression($e, t.cloneNode(Re))), Oe);
            }
          }
        }
        return Oe;
      }
      function it(Oe) {
        switch (Oe.kind) {
          case 80:
            return ut(Oe);
          case 227:
            return Qe(Oe);
          case 237:
            return xt(Oe);
        }
        return Oe;
      }
      function ut(Oe) {
        var rt, ee;
        if (Bs(Oe) & 8192) {
          const q = pN(k);
          return q ? t.createPropertyAccessExpression(q, Oe) : Oe;
        }
        if (!Ko(Oe) && !Hh(Oe)) {
          const q = c.getReferencedImportDeclaration(Oe);
          if (q) {
            if (hd(q)) return pt(t.createPropertyAccessExpression(t.getGeneratedNameForNode(q.parent), t.createIdentifier("default")), Oe);
            if (p_(q)) {
              const j = q.propertyName || q.name, Re = t.getGeneratedNameForNode(((ee = (rt = q.parent) == null ? void 0 : rt.parent) == null ? void 0 : ee.parent) || q);
              return pt(j.kind === 11 ? t.createElementAccessExpression(Re, t.cloneNode(j)) : t.createPropertyAccessExpression(Re, t.cloneNode(j)), Oe);
            }
          }
        }
        return Oe;
      }
      function Qe(Oe) {
        if (Uh(Oe.operatorToken.kind) && Fe(Oe.left) && (!Ko(Oe.left) || A3(Oe.left)) && !Hh(Oe.left)) {
          const rt = Dt(Oe.left);
          if (rt) {
            let ee = Oe;
            for (const q of rt) ee = Ft(q, fr(ee));
            return ee;
          }
        }
        return Oe;
      }
      function xt(Oe) {
        return a6(Oe) ? t.createPropertyAccessExpression(N, t.createIdentifier("meta")) : Oe;
      }
      function Dt(Oe) {
        let rt;
        const ee = Ve(Oe);
        if (ee) {
          const q = c.getReferencedExportContainer(Oe, !1);
          q && q.kind === 308 && (rt = kr(rt, t.getDeclarationName(ee))), rt = Mn(rt, D?.exportedBindings[w_(ee)]);
        } else if (Ko(Oe) && A3(Oe)) {
          const q = D?.exportSpecifiers.get(Oe);
          if (q) {
            const j = [];
            for (const Re of q) j.push(Re.name);
            return j;
          }
        }
        return rt;
      }
      function Ve(Oe) {
        if (!Ko(Oe)) {
          const rt = c.getReferencedImportDeclaration(Oe);
          if (rt) return rt;
          const ee = c.getReferencedValueDeclaration(Oe);
          if (ee && D?.exportedBindings[w_(ee)]) return ee;
          const q = c.getReferencedValueDeclarations(Oe);
          if (q) {
            for (const j of q) if (j !== ee && D?.exportedBindings[w_(j)]) return j;
          }
          return ee;
        }
      }
      function fr(Oe) {
        return G === void 0 && (G = []), G[Hs(Oe)] = !0, Oe;
      }
      function rr(Oe) {
        return G && Oe.id && G[Oe.id];
      }
    }
    function _U(e) {
      const { factory: t, getEmitHelperFactory: n } = e, i = e.getEmitHost(), a = e.getEmitResolver(), o = e.getCompilerOptions(), c = Ps(o), _ = e.onEmitNode, u = e.onSubstituteNode;
      e.onEmitNode = U, e.onSubstituteNode = pe, e.enableEmitNotification(308), e.enableSubstitution(80);
      const d = /* @__PURE__ */ new Set();
      let g, h, S, T;
      return Xd(e, k);
      function k(W) {
        if (W.isDeclarationFile) return W;
        if (Sl(W) || Zp(o)) {
          S = W, T = void 0, o.rewriteRelativeImportExtensions && (S.flags & 4194304 || rn(W)) && BO(W, !1, !1, (se) => {
            (!Xs(se.arguments[0]) || fA(se.arguments[0].text, o)) && (g = kr(g, se));
          });
          let Q = D(W);
          return th(Q, e.readEmitHelpers()), S = void 0, T && (Q = t.updateSourceFile(Q, pt(t.createNodeArray(bB(Q.statements.slice(), T)), Q.statements))), !Sl(W) || u_(o) === 200 || _t(Q.statements, M3) ? Q : t.updateSourceFile(Q, pt(t.createNodeArray([...Q.statements, uN(t)]), Q.statements));
        }
        return W;
      }
      function D(W) {
        const Q = Zz(t, n(), W, o);
        if (Q) {
          const se = [], he = t.copyPrologue(W.statements, se);
          return Mn(se, bw([Q], P, Ei)), Mn(se, Fr(W.statements, P, Ei, he)), t.updateSourceFile(W, pt(t.createNodeArray(se), W.statements));
        } else return Tr(W, P, e);
      }
      function P(W) {
        switch (W.kind) {
          case 272:
            return u_(o) >= 100 ? G(W) : void 0;
          case 278:
            return z(W);
          case 279:
            return H(W);
          case 273:
            return N(W);
          case 214:
            if (W === g?.[0]) return M(g.shift());
          default:
            if (g?.length && W_(W, g[0])) return Tr(W, P, e);
        }
        return W;
      }
      function N(W) {
        if (!o.rewriteRelativeImportExtensions) return W;
        const Q = Dk(W.moduleSpecifier, o);
        return Q === W.moduleSpecifier ? W : t.updateImportDeclaration(W, W.modifiers, W.importClause, Q, W.attributes);
      }
      function M(W) {
        return t.updateCallExpression(W, W.expression, W.typeArguments, [Xs(W.arguments[0]) ? Dk(W.arguments[0], o) : n().createRewriteRelativeImportExtensionsHelper(W.arguments[0]), ...W.arguments.slice(1)]);
      }
      function R(W) {
        const Q = vk(t, W, E.checkDefined(S), i, a, o), se = [];
        if (Q && se.push(Dk(Q, o)), u_(o) === 200) return t.createCallExpression(t.createIdentifier("require"), void 0, se);
        if (!T) {
          const fe = t.createUniqueName("_createRequire", 48), de = t.createImportDeclaration(void 0, t.createImportClause(void 0, void 0, t.createNamedImports([t.createImportSpecifier(!1, t.createIdentifier("createRequire"), fe)])), t.createStringLiteral("module"), void 0), $ = t.createUniqueName("__require", 48);
          T = [de, t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration($, void 0, void 0, t.createCallExpression(t.cloneNode(fe), void 0, [t.createPropertyAccessExpression(t.createMetaProperty(102, t.createIdentifier("meta")), t.createIdentifier("url"))]))], c >= 2 ? 2 : 0))];
        }
        const he = T[1].declarationList.declarations[0].name;
        return E.assertNode(he, Fe), t.createCallExpression(t.cloneNode(he), void 0, se);
      }
      function G(W) {
        E.assert(uv(W), "import= for internal module references should be handled in an earlier transformer.");
        let Q;
        return Q = kr(Q, Fn(pt(t.createVariableStatement(void 0, t.createVariableDeclarationList([t.createVariableDeclaration(t.cloneNode(W.name), void 0, void 0, R(W))], c >= 2 ? 2 : 0)), W), W)), Q = L(Q, W), ig(Q);
      }
      function L(W, Q) {
        return Qn(Q, 32) && (W = kr(W, t.createExportDeclaration(void 0, Q.isTypeOnly, t.createNamedExports([t.createExportSpecifier(!1, void 0, On(Q.name))])))), W;
      }
      function z(W) {
        return W.isExportEquals ? u_(o) === 200 ? Fn(t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("module"), "exports"), W.expression)), W) : void 0 : W;
      }
      function H(W) {
        const Q = Dk(W.moduleSpecifier, o);
        if (o.module !== void 0 && o.module > 5 || !W.exportClause || !gg(W.exportClause) || !W.moduleSpecifier) return !W.moduleSpecifier || Q === W.moduleSpecifier ? W : t.updateExportDeclaration(W, W.modifiers, W.isTypeOnly, W.exportClause, Q, W.attributes);
        const se = W.exportClause.name, he = t.getGeneratedNameForNode(se), fe = t.createImportDeclaration(void 0, t.createImportClause(void 0, void 0, t.createNamespaceImport(he)), Q, W.attributes);
        Fn(fe, W.exportClause);
        const de = d5(W) ? t.createExportDefault(he) : t.createExportDeclaration(void 0, !1, t.createNamedExports([t.createExportSpecifier(!1, he, se)]));
        return Fn(de, W), [fe, de];
      }
      function U(W, Q, se) {
        Pi(Q) ? ((Sl(Q) || Zp(o)) && o.importHelpers && (h = /* @__PURE__ */ new Map()), S = Q, _(W, Q, se), S = void 0, h = void 0) : _(W, Q, se);
      }
      function pe(W, Q) {
        return Q = u(W, Q), Q.id && d.has(Q.id) ? Q : Fe(Q) && Bs(Q) & 8192 ? ie(Q) : Q;
      }
      function ie(W) {
        const Q = S && pN(S);
        if (Q)
          return d.add(Hs(W)), t.createPropertyAccessExpression(Q, W);
        if (h) {
          const se = On(W);
          let he = h.get(se);
          return he || h.set(se, he = t.createUniqueName(se, 48)), he;
        }
        return W;
      }
    }
    function gie(e) {
      const t = e.onSubstituteNode, n = e.onEmitNode, i = _U(e), a = e.onSubstituteNode, o = e.onEmitNode;
      e.onSubstituteNode = t, e.onEmitNode = n;
      const c = uU(e), _ = e.onSubstituteNode, u = e.onEmitNode, d = (N) => e.getEmitHost().getEmitModuleFormatOfFile(N);
      e.onSubstituteNode = h, e.onEmitNode = S, e.enableSubstitution(308), e.enableEmitNotification(308);
      let g;
      return D;
      function h(N, M) {
        return Pi(M) ? (g = M, t(N, M)) : g ? d(g) >= 5 ? a(N, M) : _(N, M) : t(N, M);
      }
      function S(N, M, R) {
        return Pi(M) && (g = M), g ? d(g) >= 5 ? o(N, M, R) : u(N, M, R) : n(N, M, R);
      }
      function T(N) {
        return d(N) >= 5 ? i : c;
      }
      function k(N) {
        if (N.isDeclarationFile) return N;
        g = N;
        const M = T(N)(N);
        return g = void 0, E.assert(Pi(M)), M;
      }
      function D(N) {
        return N.kind === 308 ? k(N) : P(N);
      }
      function P(N) {
        return e.factory.createBundle(or(N.sourceFiles, k));
      }
    }
    function jN(e) {
      return ci(e) || ga(e) || f_(e) || Ns(e) || vm(e) || Wg(e) || tw(e) || uk(e) || hc(e) || gd(e) || Xc(e) || Fi(e) || $o(e) || rh(e) || bl(e) || Kp(e) || yc(e) || s1(e) || Ln(e) || Po(e) || un(e) || $p(e);
    }
    function hie(e) {
      if (vm(e) || Wg(e)) return t;
      return gd(e) || hc(e) ? i : Lv(e);
      function t(o) {
        const c = n(o);
        return c !== void 0 ? {
          diagnosticMessage: c,
          errorNode: e,
          typeName: e.name
        } : void 0;
      }
      function n(o) {
        return es(e) ? o.errorModuleName ? o.accessibility === 2 ? p.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1 : e.parent.kind === 264 ? o.errorModuleName ? o.accessibility === 2 ? p.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Public_property_0_of_exported_class_has_or_is_using_private_name_1 : o.errorModuleName ? p.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Property_0_of_exported_interface_has_or_is_using_private_name_1;
      }
      function i(o) {
        const c = a(o);
        return c !== void 0 ? {
          diagnosticMessage: c,
          errorNode: e,
          typeName: e.name
        } : void 0;
      }
      function a(o) {
        return es(e) ? o.errorModuleName ? o.accessibility === 2 ? p.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1 : e.parent.kind === 264 ? o.errorModuleName ? o.accessibility === 2 ? p.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Public_method_0_of_exported_class_has_or_is_using_private_name_1 : o.errorModuleName ? p.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Method_0_of_exported_interface_has_or_is_using_private_name_1;
      }
    }
    function Lv(e) {
      if (ci(e) || ga(e) || f_(e) || Ln(e) || Po(e) || un(e) || Ns(e) || yc(e)) return n;
      return vm(e) || Wg(e) ? i : tw(e) || uk(e) || hc(e) || gd(e) || Xc(e) || s1(e) ? a : Fi(e) ? df(e, e.parent) && Qn(e.parent, 2) ? n : o : $o(e) ? _ : rh(e) ? u : bl(e) ? d : Kp(e) || $p(e) ? g : E.assertNever(e, `Attempted to set a declaration diagnostic context for unhandled node kind: ${E.formatSyntaxKind(e.kind)}`);
      function t(h) {
        if (e.kind === 261 || e.kind === 209) return h.errorModuleName ? h.accessibility === 2 ? p.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Exported_variable_0_has_or_is_using_name_1_from_private_module_2 : p.Exported_variable_0_has_or_is_using_private_name_1;
        if (e.kind === 173 || e.kind === 212 || e.kind === 213 || e.kind === 227 || e.kind === 172 || e.kind === 170 && Qn(e.parent, 2)) return es(e) ? h.errorModuleName ? h.accessibility === 2 ? p.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1 : e.parent.kind === 264 || e.kind === 170 ? h.errorModuleName ? h.accessibility === 2 ? p.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Public_property_0_of_exported_class_has_or_is_using_private_name_1 : h.errorModuleName ? p.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Property_0_of_exported_interface_has_or_is_using_private_name_1;
      }
      function n(h) {
        const S = t(h);
        return S !== void 0 ? {
          diagnosticMessage: S,
          errorNode: e,
          typeName: e.name
        } : void 0;
      }
      function i(h) {
        let S;
        return e.kind === 179 ? es(e) ? S = h.errorModuleName ? p.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1 : S = h.errorModuleName ? p.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1 : es(e) ? S = h.errorModuleName ? h.accessibility === 2 ? p.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1 : S = h.errorModuleName ? h.accessibility === 2 ? p.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1, {
          diagnosticMessage: S,
          errorNode: e.name,
          typeName: e.name
        };
      }
      function a(h) {
        let S;
        switch (e.kind) {
          case 181:
            S = h.errorModuleName ? p.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;
            break;
          case 180:
            S = h.errorModuleName ? p.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;
            break;
          case 182:
            S = h.errorModuleName ? p.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;
            break;
          case 175:
          case 174:
            es(e) ? S = h.errorModuleName ? h.accessibility === 2 ? p.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named : p.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0 : e.parent.kind === 264 ? S = h.errorModuleName ? h.accessibility === 2 ? p.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named : p.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0 : S = h.errorModuleName ? p.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;
            break;
          case 263:
            S = h.errorModuleName ? h.accessibility === 2 ? p.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named : p.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1 : p.Return_type_of_exported_function_has_or_is_using_private_name_0;
            break;
          default:
            return E.fail("This is unknown kind for signature: " + e.kind);
        }
        return {
          diagnosticMessage: S,
          errorNode: e.name || e
        };
      }
      function o(h) {
        const S = c(h);
        return S !== void 0 ? {
          diagnosticMessage: S,
          errorNode: e,
          typeName: e.name
        } : void 0;
      }
      function c(h) {
        switch (e.parent.kind) {
          case 177:
            return h.errorModuleName ? h.accessibility === 2 ? p.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;
          case 181:
          case 186:
            return h.errorModuleName ? p.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;
          case 180:
            return h.errorModuleName ? p.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;
          case 182:
            return h.errorModuleName ? p.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;
          case 175:
          case 174:
            return es(e.parent) ? h.errorModuleName ? h.accessibility === 2 ? p.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1 : e.parent.parent.kind === 264 ? h.errorModuleName ? h.accessibility === 2 ? p.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1 : h.errorModuleName ? p.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;
          case 263:
          case 185:
            return h.errorModuleName ? h.accessibility === 2 ? p.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_exported_function_has_or_is_using_private_name_1;
          case 179:
          case 178:
            return h.errorModuleName ? h.accessibility === 2 ? p.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : p.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2 : p.Parameter_0_of_accessor_has_or_is_using_private_name_1;
          default:
            return E.fail(`Unknown parent for parameter: ${E.formatSyntaxKind(e.parent.kind)}`);
        }
      }
      function _() {
        let h;
        switch (e.parent.kind) {
          case 264:
            h = p.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;
            break;
          case 265:
            h = p.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;
            break;
          case 201:
            h = p.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;
            break;
          case 186:
          case 181:
            h = p.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;
            break;
          case 180:
            h = p.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;
            break;
          case 175:
          case 174:
            es(e.parent) ? h = p.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1 : e.parent.parent.kind === 264 ? h = p.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1 : h = p.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;
            break;
          case 185:
          case 263:
            h = p.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;
            break;
          case 196:
            h = p.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;
            break;
          case 266:
            h = p.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;
            break;
          default:
            return E.fail("This is unknown parent for type parameter: " + e.parent.kind);
        }
        return {
          diagnosticMessage: h,
          errorNode: e,
          typeName: e.name
        };
      }
      function u() {
        let h;
        return sl(e.parent.parent) ? h = kf(e.parent) && e.parent.token === 119 ? p.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1 : e.parent.parent.name ? p.extends_clause_of_exported_class_0_has_or_is_using_private_name_1 : p.extends_clause_of_exported_class_has_or_is_using_private_name_0 : h = p.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1, {
          diagnosticMessage: h,
          errorNode: e,
          typeName: va(e.parent.parent)
        };
      }
      function d() {
        return {
          diagnosticMessage: p.Import_declaration_0_is_using_private_name_1,
          errorNode: e,
          typeName: e.name
        };
      }
      function g(h) {
        return {
          diagnosticMessage: h.errorModuleName ? p.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2 : p.Exported_type_alias_0_has_or_is_using_private_name_1,
          errorNode: $p(e) ? E.checkDefined(e.typeExpression) : e.type,
          typeName: $p(e) ? va(e) : e.name
        };
      }
    }
    function yie(e) {
      const t = {
        220: p.Add_a_return_type_to_the_function_expression,
        219: p.Add_a_return_type_to_the_function_expression,
        175: p.Add_a_return_type_to_the_method,
        178: p.Add_a_return_type_to_the_get_accessor_declaration,
        179: p.Add_a_type_to_parameter_of_the_set_accessor_declaration,
        263: p.Add_a_return_type_to_the_function_declaration,
        181: p.Add_a_return_type_to_the_function_declaration,
        170: p.Add_a_type_annotation_to_the_parameter_0,
        261: p.Add_a_type_annotation_to_the_variable_0,
        173: p.Add_a_type_annotation_to_the_property_0,
        172: p.Add_a_type_annotation_to_the_property_0,
        278: p.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it
      }, n = {
        219: p.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,
        263: p.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,
        220: p.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,
        175: p.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,
        181: p.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,
        178: p.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,
        179: p.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations,
        170: p.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,
        261: p.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,
        173: p.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,
        172: p.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,
        168: p.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,
        306: p.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,
        305: p.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,
        210: p.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,
        278: p.Default_exports_can_t_be_inferred_with_isolatedDeclarations,
        231: p.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations
      };
      return i;
      function i(P) {
        if (cr(P, kf)) return Kr(P, p.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);
        if ((Sm(P) || Gb(P.parent)) && (S_(P) || go(P))) return k(P);
        switch (E.type(P), P.kind) {
          case 178:
          case 179:
            return o(P);
          case 168:
          case 305:
          case 306:
            return _(P);
          case 210:
          case 231:
            return u(P);
          case 175:
          case 181:
          case 219:
          case 220:
          case 263:
            return d(P);
          case 209:
            return g(P);
          case 173:
          case 261:
            return h(P);
          case 170:
            return S(P);
          case 304:
            return D(P.initializer);
          case 232:
            return T(P);
          default:
            return D(P);
        }
      }
      function a(P) {
        const N = cr(P, (M) => Xo(M) || Ei(M) || ci(M) || ga(M) || Fi(M));
        if (N)
          return Xo(N) ? N : zf(N) ? cr(N, (M) => So(M) && !yc(M)) : Ei(N) ? void 0 : N;
      }
      function o(P) {
        const { getAccessor: N, setAccessor: M } = Bb(P.symbol.declarations, P), R = Kr((vm(P) ? P.parameters[0] : P) ?? P, n[P.kind]);
        return M && ts(R, Kr(M, t[M.kind])), N && ts(R, Kr(N, t[N.kind])), R;
      }
      function c(P, N) {
        const M = a(P);
        if (M) {
          const R = Xo(M) || !M.name ? "" : uc(M.name, !1);
          ts(N, Kr(M, t[M.kind], R));
        }
        return N;
      }
      function _(P) {
        const N = Kr(P, n[P.kind]);
        return c(P, N), N;
      }
      function u(P) {
        const N = Kr(P, n[P.kind]);
        return c(P, N), N;
      }
      function d(P) {
        const N = Kr(P, n[P.kind]);
        return c(P, N), ts(N, Kr(P, t[P.kind])), N;
      }
      function g(P) {
        return Kr(P, p.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations);
      }
      function h(P) {
        const N = Kr(P, n[P.kind]), M = uc(P.name, !1);
        return ts(N, Kr(P, t[P.kind], M)), N;
      }
      function S(P) {
        if (vm(P.parent)) return o(P.parent);
        const N = e.requiresAddingImplicitUndefined(P, P.parent);
        if (!N && P.initializer) return D(P.initializer);
        const M = Kr(P, N ? p.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations : n[P.kind]), R = uc(P.name, !1);
        return ts(M, Kr(P, t[P.kind], R)), M;
      }
      function T(P) {
        return D(P, p.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations);
      }
      function k(P) {
        const N = Kr(P, p.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations, uc(P, !1));
        return c(P, N), N;
      }
      function D(P, N) {
        const M = a(P);
        let R;
        if (M) {
          const G = Xo(M) || !M.name ? "" : uc(M.name, !1);
          M === cr(P.parent, (L) => Xo(L) || (Ei(L) ? "quit" : !E_(L) && !ZO(L) && !A6(L))) ? (R = Kr(P, N ?? n[M.kind]), ts(R, Kr(M, t[M.kind], G))) : (R = Kr(P, N ?? p.Expression_type_can_t_be_inferred_with_isolatedDeclarations), ts(R, Kr(M, t[M.kind], G)), ts(R, Kr(P, p.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)));
        } else R = Kr(P, N ?? p.Expression_type_can_t_be_inferred_with_isolatedDeclarations);
        return R;
      }
    }
    function vie(e, t, n) {
      const i = e.getCompilerOptions();
      return Gi(dn(Q5(e, n), O5), n) ? WN(t, e, A, i, [n], [fU], !1).diagnostics : void 0;
    }
    var BN = 531469, JN = 8;
    function fU(e) {
      const t = () => E.fail("Diagnostic emitted without context");
      let n = t, i = !0, a = !1, o = !1, c = !1, _ = !1, u, d, g, h;
      const { factory: S } = e, T = e.getEmitHost();
      let k = () => {
      };
      const D = {
        trackSymbol: he,
        reportInaccessibleThisError: Be,
        reportInaccessibleUniqueSymbolError: $,
        reportCyclicStructureError: Se,
        reportPrivateInBaseOfClassExpression: fe,
        reportLikelyUnsafeImportRequiredError: ce,
        reportTruncationError: oe,
        moduleResolverHost: T,
        reportNonlocalAugmentation: ge,
        reportNonSerializableProperty: Ae,
        reportInferenceFallback: Q,
        pushErrorFallbackNode(ne) {
          const tt = N, re = k;
          k = () => {
            k = re, N = tt;
          }, N = ne;
        },
        popErrorFallbackNode() {
          k();
        }
      };
      let P, N, M, R, G, L;
      const z = e.getEmitResolver(), H = e.getCompilerOptions(), U = yie(z), { stripInternal: pe, isolatedDeclarations: ie } = H;
      return ot;
      function W(ne) {
        z.getPropertiesOfContainerFunction(ne).forEach((tt) => {
          if (rk(tt.valueDeclaration)) {
            const re = un(tt.valueDeclaration) ? tt.valueDeclaration.left : tt.valueDeclaration;
            e.addDiagnostic(Kr(re, p.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function));
          }
        });
      }
      function Q(ne) {
        !ie || T_(M) || Sr(ne) === M && (ci(ne) && z.isExpandoFunctionDeclaration(ne) ? W(ne) : e.addDiagnostic(U(ne)));
      }
      function se(ne) {
        if (ne.accessibility === 0) {
          if (ne.aliasesToMakeVisible) if (!d) d = ne.aliasesToMakeVisible;
          else for (const tt of ne.aliasesToMakeVisible) hp(d, tt);
        } else if (ne.accessibility !== 3) {
          const tt = n(ne);
          if (tt)
            return tt.typeName ? e.addDiagnostic(Kr(ne.errorNode || tt.errorNode, tt.diagnosticMessage, uc(tt.typeName), ne.errorSymbolName, ne.errorModuleName)) : e.addDiagnostic(Kr(ne.errorNode || tt.errorNode, tt.diagnosticMessage, ne.errorSymbolName, ne.errorModuleName)), !0;
        }
        return !1;
      }
      function he(ne, tt, re) {
        return ne.flags & 262144 ? !1 : se(z.isSymbolAccessible(ne, tt, re, !0));
      }
      function fe(ne) {
        (P || N) && e.addDiagnostic(ts(Kr(P || N, p.Property_0_of_exported_anonymous_class_type_may_not_be_private_or_protected, ne), ...ci((P || N).parent) ? [Kr(P || N, p.Add_a_type_annotation_to_the_variable_0, de())] : []));
      }
      function de() {
        return P ? Do(P) : N && va(N) ? Do(va(N)) : N && Xo(N) ? N.isExportEquals ? "export=" : "default" : "(Missing)";
      }
      function $() {
        (P || N) && e.addDiagnostic(Kr(P || N, p.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary, de(), "unique symbol"));
      }
      function Se() {
        (P || N) && e.addDiagnostic(Kr(P || N, p.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary, de()));
      }
      function Be() {
        (P || N) && e.addDiagnostic(Kr(P || N, p.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary, de(), "this"));
      }
      function ce(ne, tt) {
        (P || N) && (tt ? e.addDiagnostic(Kr(P || N, p.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_2_from_1_This_is_likely_not_portable_A_type_annotation_is_necessary, de(), ne, tt)) : e.addDiagnostic(Kr(P || N, p.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary, de(), ne)));
      }
      function oe() {
        (P || N) && e.addDiagnostic(Kr(P || N, p.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed));
      }
      function ge(ne, tt, re) {
        var we;
        const Ge = (we = tt.declarations) == null ? void 0 : we.find((it) => Sr(it) === ne), nt = dn(re.declarations, (it) => Sr(it) !== ne);
        if (Ge && nt) for (const it of nt) e.addDiagnostic(ts(Kr(it, p.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized), Kr(Ge, p.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)));
      }
      function Ae(ne) {
        (P || N) && e.addDiagnostic(Kr(P || N, p.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized, ne));
      }
      function Ne(ne) {
        const tt = n;
        n = (we) => we.errorNode && jN(we.errorNode) ? Lv(we.errorNode)(we) : {
          diagnosticMessage: we.errorModuleName ? p.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit : p.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,
          errorNode: we.errorNode || ne
        };
        const re = z.getDeclarationStatementsForSourceFile(ne, BN, JN, D);
        return n = tt, re;
      }
      function ot(ne) {
        if (ne.kind === 308 && ne.isDeclarationFile) return ne;
        if (ne.kind === 309) {
          a = !0, R = [], G = [], L = [];
          const Qe = S.createBundle(or(ne.sourceFiles, (xt) => {
            if (xt.isDeclarationFile) return;
            if (M = xt, u = xt, d = void 0, h = !1, g = /* @__PURE__ */ new Map(), n = t, c = !1, _ = !1, we(xt), gf(xt) || Tp(xt)) {
              o = !1, i = !1;
              const Ve = T_(xt) ? S.createNodeArray(Ne(xt)) : Fr(xt.statements, ra, Ei);
              return S.updateSourceFile(xt, [S.createModuleDeclaration([S.createModifier(138)], S.createStringLiteral(pJ(e.getEmitHost(), xt)), S.createModuleBlock(pt(S.createNodeArray(ri(Ve)), xt.statements)))], !0, [], [], !1, []);
            }
            i = !0;
            const Dt = T_(xt) ? S.createNodeArray(Ne(xt)) : Fr(xt.statements, ra, Ei);
            return S.updateSourceFile(xt, ri(Dt), !0, [], [], !1, []);
          }));
          return Qe.syntheticFileReferences = ut(Xn(ru(ww(ne, T, !0).declarationFilePath))), Qe.syntheticTypeReferences = nt(), Qe.syntheticLibReferences = it(), Qe;
        }
        i = !0, c = !1, _ = !1, u = ne, M = ne, n = t, a = !1, o = !1, h = !1, d = void 0, g = /* @__PURE__ */ new Map(), R = [], G = [], L = [], we(M);
        let tt;
        if (T_(M)) tt = S.createNodeArray(Ne(ne));
        else {
          const Qe = Fr(ne.statements, ra, Ei);
          tt = pt(S.createNodeArray(ri(Qe)), ne.statements), Sl(ne) && (!o || c && !_) && (tt = pt(S.createNodeArray([...tt, uN(S)]), tt));
        }
        const re = Xn(ru(ww(ne, T, !0).declarationFilePath));
        return S.updateSourceFile(ne, tt, !0, ut(re), nt(), !1, it());
        function we(Qe) {
          R = zi(R, or(Qe.referencedFiles, (xt) => [Qe, xt])), G = zi(G, Qe.typeReferenceDirectives), L = zi(L, Qe.libReferenceDirectives);
        }
        function Ge(Qe) {
          const xt = { ...Qe };
          return xt.pos = -1, xt.end = -1, xt;
        }
        function nt() {
          return Rn(G, (Qe) => {
            if (Qe.preserve)
              return Ge(Qe);
          });
        }
        function it() {
          return Rn(L, (Qe) => {
            if (Qe.preserve)
              return Ge(Qe);
          });
        }
        function ut(Qe) {
          return Rn(R, ([xt, Dt]) => {
            if (!Dt.preserve) return;
            const Ve = T.getSourceFileFromReference(xt, Dt);
            if (!Ve) return;
            let fr;
            if (Ve.isDeclarationFile) fr = Ve.fileName;
            else {
              if (a && Gi(ne.sourceFiles, Ve)) return;
              const rt = ww(Ve, T, !0);
              fr = rt.declarationFilePath || rt.jsFilePath || Ve.fileName;
            }
            if (!fr) return;
            const rr = bx(Qe, fr, T.getCurrentDirectory(), T.getCanonicalFileName, !1), Oe = Ge(Dt);
            return Oe.fileName = rr, Oe;
          });
        }
      }
      function K(ne) {
        if (ne.kind === 80) return ne;
        return ne.kind === 208 ? S.updateArrayBindingPattern(ne, Fr(ne.elements, tt, K7)) : S.updateObjectBindingPattern(ne, Fr(ne.elements, tt, Ns));
        function tt(re) {
          return re.kind === 233 ? re : (re.propertyName && _s(re.propertyName) && go(re.propertyName.expression) && Kt(re.propertyName.expression, u), S.updateBindingElement(re, re.dotDotDotToken, re.propertyName, K(re.name), void 0));
        }
      }
      function ke(ne, tt) {
        let re;
        h || (re = n, n = Lv(ne));
        const we = S.updateParameterDeclaration(ne, Lje(S, ne, tt), ne.dotDotDotToken, K(ne.name), z.isOptionalParameter(ne) ? ne.questionToken || S.createToken(58) : void 0, ue(ne, !0), Ce(ne));
        return h || (n = re), we;
      }
      function ae(ne) {
        return mve(ne) && !!ne.initializer && z.isLiteralConstDeclaration(Ca(ne));
      }
      function Ce(ne) {
        if (ae(ne))
          return MO(lte(ne.initializer)) || Q(ne), z.createLiteralConstValue(Ca(ne, mve), D);
      }
      function ue(ne, tt) {
        if (!tt && vf(ne, 2) || ae(ne)) return;
        if (!Xo(ne) && !Ns(ne) && ne.type && (!Fi(ne) || !z.requiresAddingImplicitUndefined(ne, u))) return Ze(ne.type, Zr, ui);
        const re = P;
        P = ne.name;
        let we;
        h || (we = n, jN(ne) && (n = Lv(ne)));
        let Ge;
        return RO(ne) ? Ge = z.createTypeOfDeclaration(ne, u, BN, JN, D) : Ra(ne) ? Ge = z.createReturnTypeOfSignatureDeclaration(ne, u, BN, JN, D) : E.assertNever(ne), P = re, h || (n = we), Ge ?? S.createKeywordTypeNode(133);
      }
      function Ie(ne) {
        switch (ne = Ca(ne), ne.kind) {
          case 263:
          case 268:
          case 265:
          case 264:
          case 266:
          case 267:
            return !z.isDeclarationVisible(ne);
          case 261:
            return !Ft(ne);
          case 272:
          case 273:
          case 279:
          case 278:
            return !1;
          case 176:
            return !0;
        }
        return !1;
      }
      function Xe(ne) {
        var tt;
        if (ne.body) return !0;
        const re = (tt = ne.symbol.declarations) == null ? void 0 : tt.filter((we) => Xc(we) && !we.body);
        return !re || re.indexOf(ne) === re.length - 1;
      }
      function Ft(ne) {
        return Al(ne) ? !1 : Ja(ne.name) ? _t(ne.name.elements, Ft) : z.isDeclarationVisible(ne);
      }
      function Ut(ne, tt, re) {
        if (vf(ne, 2)) return S.createNodeArray();
        const we = or(tt, (Ge) => ke(Ge, re));
        return we ? S.createNodeArray(we, tt.hasTrailingComma) : S.createNodeArray();
      }
      function Xt(ne, tt) {
        let re;
        if (!tt) {
          const we = Rb(ne);
          we && (re = [ke(we)]);
        }
        if (ef(ne)) {
          let we;
          if (!tt) {
            const Ge = xD(ne);
            Ge && (we = ke(Ge));
          }
          we || (we = S.createParameterDeclaration(void 0, void 0, "value")), re = kr(re, we);
        }
        return S.createNodeArray(re || Te);
      }
      function Ar(ne, tt) {
        return vf(ne, 2) ? void 0 : Fr(tt, Zr, $o);
      }
      function Ct(ne) {
        return Pi(ne) || Kp(ne) || Qc(ne) || sl(ne) || au(ne) || Ra(ne) || s1(ne) || LS(ne);
      }
      function Kt(ne, tt) {
        se(z.isEntityNameVisible(ne, tt));
      }
      function zr(ne, tt) {
        return Jf(ne) && Jf(tt) && (ne.jsDoc = tt.jsDoc), fl(ne, Pm(tt));
      }
      function _i(ne, tt) {
        if (tt) {
          if (o = o || ne.kind !== 268 && ne.kind !== 206, Xs(tt) && a) {
            const re = ZK(e.getEmitHost(), z, ne);
            if (re) return S.createStringLiteral(re);
          }
          return tt;
        }
      }
      function Gr(ne) {
        if (z.isDeclarationVisible(ne))
          if (ne.moduleReference.kind === 284) {
            const tt = sD(ne);
            return S.updateImportEqualsDeclaration(ne, ne.modifiers, ne.isTypeOnly, ne.name, S.updateExternalModuleReference(ne.moduleReference, _i(ne, tt)));
          } else {
            const tt = n;
            return n = Lv(ne), Kt(ne.moduleReference, u), n = tt, ne;
          }
      }
      function Nt(ne) {
        if (!ne.importClause) return S.updateImportDeclaration(ne, ne.modifiers, ne.importClause, _i(ne, ne.moduleSpecifier), Li(ne.attributes));
        const tt = ne.importClause.phaseModifier === 166 ? void 0 : ne.importClause.phaseModifier, re = ne.importClause && ne.importClause.name && z.isDeclarationVisible(ne.importClause) ? ne.importClause.name : void 0;
        if (!ne.importClause.namedBindings) return re && S.updateImportDeclaration(ne, ne.modifiers, S.updateImportClause(ne.importClause, tt, re, void 0), _i(ne, ne.moduleSpecifier), Li(ne.attributes));
        if (ne.importClause.namedBindings.kind === 275) {
          const Ge = z.isDeclarationVisible(ne.importClause.namedBindings) ? ne.importClause.namedBindings : void 0;
          return re || Ge ? S.updateImportDeclaration(ne, ne.modifiers, S.updateImportClause(ne.importClause, tt, re, Ge), _i(ne, ne.moduleSpecifier), Li(ne.attributes)) : void 0;
        }
        const we = Rn(ne.importClause.namedBindings.elements, (Ge) => z.isDeclarationVisible(Ge) ? Ge : void 0);
        if (we && we.length || re) return S.updateImportDeclaration(ne, ne.modifiers, S.updateImportClause(ne.importClause, tt, re, we && we.length ? S.updateNamedImports(ne.importClause.namedBindings, we) : void 0), _i(ne, ne.moduleSpecifier), Li(ne.attributes));
        if (z.isImportRequiredByAugmentation(ne))
          return ie && e.addDiagnostic(Kr(ne, p.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)), S.updateImportDeclaration(ne, ne.modifiers, void 0, _i(ne, ne.moduleSpecifier), Li(ne.attributes));
      }
      function Li(ne) {
        const tt = eE(ne);
        return ne && tt !== void 0 ? ne : void 0;
      }
      function ri(ne) {
        for (; It(d); ) {
          const re = d.shift();
          if (!g5(re)) return E.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${E.formatSyntaxKind(re.kind)}`);
          const we = i;
          i = re.parent && Pi(re.parent) && !(Sl(re.parent) && a);
          const Ge = tr(re);
          i = we, g.set(w_(re), Ge);
        }
        return Fr(ne, tt, Ei);
        function tt(re) {
          if (g5(re)) {
            const we = w_(re);
            if (g.has(we)) {
              const Ge = g.get(we);
              return g.delete(we), Ge && ((da(Ge) ? _t(Ge, e5) : e5(Ge)) && (c = !0), Pi(re.parent) && (da(Ge) ? _t(Ge, M3) : M3(Ge)) && (o = !0)), Ge;
            }
          }
          return re;
        }
      }
      function Zr(ne) {
        if (Ea(ne)) return;
        if (Jl(ne)) {
          if (Ie(ne)) return;
          if (zh(ne)) {
            if (ie) {
              if (!z.isDefinitelyReferenceToGlobalSymbolObject(ne.name.expression)) {
                if (sl(ne.parent) || bs(ne.parent)) {
                  e.addDiagnostic(Kr(ne, p.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));
                  return;
                } else if ((au(ne.parent) || C_(ne.parent)) && !go(ne.name.expression)) {
                  e.addDiagnostic(Kr(ne, p.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations));
                  return;
                }
              }
            } else if (!z.isLateBound(Ca(ne)) || !go(ne.name.expression)) return;
          }
        }
        if (Ra(ne) && z.isImplementationOfOverload(ne) || Hte(ne)) return;
        let tt;
        Ct(ne) && (tt = u, u = ne);
        const re = n, we = jN(ne), Ge = h;
        let nt = (ne.kind === 188 || ne.kind === 201) && ne.parent.kind !== 266;
        if ((hc(ne) || gd(ne)) && vf(ne, 2))
          return ne.symbol && ne.symbol.declarations && ne.symbol.declarations[0] !== ne ? void 0 : it(S.createPropertyDeclaration(ha(ne), ne.name, void 0, void 0, void 0));
        if (we && !h && (n = Lv(ne)), Gb(ne) && Kt(ne.exprName, u), nt && (h = !0), Rje(ne)) switch (ne.kind) {
          case 234: {
            (S_(ne.expression) || go(ne.expression)) && Kt(ne.expression, u);
            const ut = Tr(ne, Zr, e);
            return it(S.updateExpressionWithTypeArguments(ut, ut.expression, ut.typeArguments));
          }
          case 184: {
            Kt(ne.typeName, u);
            const ut = Tr(ne, Zr, e);
            return it(S.updateTypeReferenceNode(ut, ut.typeName, ut.typeArguments));
          }
          case 181:
            return it(S.updateConstructSignature(ne, Ar(ne, ne.typeParameters), Ut(ne, ne.parameters), ue(ne)));
          case 177:
            return it(S.createConstructorDeclaration(ha(ne), Ut(ne, ne.parameters, 0), void 0));
          case 175:
            return Oi(ne.name) ? it(void 0) : it(S.createMethodDeclaration(ha(ne), void 0, ne.name, ne.questionToken, Ar(ne, ne.typeParameters), Ut(ne, ne.parameters), ue(ne), void 0));
          case 178:
            return Oi(ne.name) ? it(void 0) : it(S.updateGetAccessorDeclaration(ne, ha(ne), ne.name, Xt(ne, vf(ne, 2)), ue(ne), void 0));
          case 179:
            return Oi(ne.name) ? it(void 0) : it(S.updateSetAccessorDeclaration(ne, ha(ne), ne.name, Xt(ne, vf(ne, 2)), void 0));
          case 173:
            return Oi(ne.name) ? it(void 0) : it(S.updatePropertyDeclaration(ne, ha(ne), ne.name, ne.questionToken, ue(ne), Ce(ne)));
          case 172:
            return Oi(ne.name) ? it(void 0) : it(S.updatePropertySignature(ne, ha(ne), ne.name, ne.questionToken, ue(ne)));
          case 174:
            return Oi(ne.name) ? it(void 0) : it(S.updateMethodSignature(ne, ha(ne), ne.name, ne.questionToken, Ar(ne, ne.typeParameters), Ut(ne, ne.parameters), ue(ne)));
          case 180:
            return it(S.updateCallSignature(ne, Ar(ne, ne.typeParameters), Ut(ne, ne.parameters), ue(ne)));
          case 182:
            return it(S.updateIndexSignature(ne, ha(ne), Ut(ne, ne.parameters), Ze(ne.type, Zr, ui) || S.createKeywordTypeNode(133)));
          case 261:
            return Ja(ne.name) ? $n(ne.name) : (nt = !0, h = !0, it(S.updateVariableDeclaration(ne, ne.name, void 0, ue(ne), Ce(ne))));
          case 169:
            return ni(ne) && (ne.default || ne.constraint) ? it(S.updateTypeParameterDeclaration(ne, ne.modifiers, ne.name, void 0, void 0)) : it(Tr(ne, Zr, e));
          case 195: {
            const ut = Ze(ne.checkType, Zr, ui), Qe = Ze(ne.extendsType, Zr, ui), xt = u;
            u = ne.trueType;
            const Dt = Ze(ne.trueType, Zr, ui);
            u = xt;
            const Ve = Ze(ne.falseType, Zr, ui);
            return E.assert(ut), E.assert(Qe), E.assert(Dt), E.assert(Ve), it(S.updateConditionalTypeNode(ne, ut, Qe, Dt, Ve));
          }
          case 185:
            return it(S.updateFunctionTypeNode(ne, Fr(ne.typeParameters, Zr, $o), Ut(ne, ne.parameters), E.checkDefined(Ze(ne.type, Zr, ui))));
          case 186:
            return it(S.updateConstructorTypeNode(ne, ha(ne), Fr(ne.typeParameters, Zr, $o), Ut(ne, ne.parameters), E.checkDefined(Ze(ne.type, Zr, ui))));
          case 206:
            return Bh(ne) ? it(S.updateImportTypeNode(ne, S.updateLiteralTypeNode(ne.argument, _i(ne, ne.argument.literal)), ne.attributes, ne.qualifier, Fr(ne.typeArguments, Zr, ui), ne.isTypeOf)) : it(ne);
          default:
            E.assertNever(ne, `Attempted to process unhandled node kind: ${E.formatSyntaxKind(ne.kind)}`);
        }
        return fk(ne) && Za(M, ne.pos).line === Za(M, ne.end).line && ln(ne, 1), it(Tr(ne, Zr, e));
        function it(ut) {
          return ut && we && zh(ne) && na(ne), Ct(ne) && (u = tt), we && !h && (n = re), nt && (h = Ge), ut === ne ? ut : ut && Fn(zr(ut, ne), ne);
        }
      }
      function ni(ne) {
        return ne.parent.kind === 175 && vf(ne.parent, 2);
      }
      function ra(ne) {
        if (!Mje(ne) || Ea(ne)) return;
        switch (ne.kind) {
          case 279:
            return Pi(ne.parent) && (o = !0), _ = !0, S.updateExportDeclaration(ne, ne.modifiers, ne.isTypeOnly, ne.exportClause, _i(ne, ne.moduleSpecifier), Li(ne.attributes));
          case 278:
            if (Pi(ne.parent) && (o = !0), _ = !0, ne.expression.kind === 80) return ne;
            {
              const re = S.createUniqueName("_default", 16);
              n = () => ({
                diagnosticMessage: p.Default_export_of_the_module_has_or_is_using_private_name_0,
                errorNode: ne
              }), N = ne;
              const we = ue(ne), Ge = S.createVariableDeclaration(re, void 0, we, void 0);
              N = void 0;
              const nt = S.createVariableStatement(i ? [S.createModifier(138)] : [], S.createVariableDeclarationList([Ge], 2));
              return zr(nt, ne), KA(ne), [nt, S.updateExportAssignment(ne, ne.modifiers, re)];
            }
        }
        const tt = tr(ne);
        return g.set(w_(ne), tt), ne;
      }
      function Me(ne) {
        if (bl(ne) || vf(ne, 2048) || !vd(ne)) return ne;
        const tt = S.createModifiersFromModifierFlags(Pu(ne) & 131039);
        return S.replaceModifiers(ne, tt);
      }
      function vt(ne, tt, re, we) {
        const Ge = S.updateModuleDeclaration(ne, tt, re, we);
        if (o_(Ge) || Ge.flags & 32) return Ge;
        const nt = S.createModuleDeclaration(Ge.modifiers, Ge.name, Ge.body, Ge.flags | 32);
        return Fn(nt, Ge), pt(nt, Ge), nt;
      }
      function tr(ne) {
        if (d) for (; k4(d, ne); ) ;
        if (Ea(ne)) return;
        switch (ne.kind) {
          case 272:
            return Gr(ne);
          case 273:
            return Nt(ne);
        }
        if (Jl(ne) && Ie(ne) || Fm(ne) || Ra(ne) && z.isImplementationOfOverload(ne)) return;
        let tt;
        Ct(ne) && (tt = u, u = ne);
        const re = jN(ne), we = n;
        re && (n = Lv(ne));
        const Ge = i;
        switch (ne.kind) {
          case 266: {
            i = !1;
            const it = nt(S.updateTypeAliasDeclaration(ne, ha(ne), ne.name, Fr(ne.typeParameters, Zr, $o), E.checkDefined(Ze(ne.type, Zr, ui))));
            return i = Ge, it;
          }
          case 265:
            return nt(S.updateInterfaceDeclaration(ne, ha(ne), ne.name, Ar(ne, ne.typeParameters), Pt(ne.heritageClauses), Fr(ne.members, Zr, Eb)));
          case 263: {
            const it = nt(S.updateFunctionDeclaration(ne, ha(ne), void 0, ne.name, Ar(ne, ne.typeParameters), Ut(ne, ne.parameters), ue(ne), void 0));
            if (it && z.isExpandoFunctionDeclaration(ne) && Xe(ne)) {
              const ut = z.getPropertiesOfContainerFunction(ne);
              ie && W(ne);
              const Qe = Nv.createModuleDeclaration(void 0, it.name || S.createIdentifier("_default"), S.createModuleBlock([]), 32);
              eo(Qe, u), Qe.locals = Ka(ut), Qe.symbol = ut[0].parent;
              const xt = [];
              let Dt = Rn(ut, (ee) => {
                if (!rk(ee.valueDeclaration)) return;
                const q = Ti(ee.escapedName);
                if (!Y_(q, 99)) return;
                n = Lv(ee.valueDeclaration);
                const j = z.createTypeOfDeclaration(ee.valueDeclaration, Qe, BN, JN | 2, D);
                n = we;
                const Re = Jx(q), $e = Re ? S.getGeneratedNameForNode(ee.valueDeclaration) : S.createIdentifier(q);
                Re && xt.push([$e, q]);
                const ye = S.createVariableDeclaration($e, void 0, j, void 0);
                return S.createVariableStatement(Re ? void 0 : [S.createToken(95)], S.createVariableDeclarationList([ye]));
              });
              xt.length ? Dt.push(S.createExportDeclaration(void 0, !1, S.createNamedExports(or(xt, ([ee, q]) => S.createExportSpecifier(!1, ee, q))))) : Dt = Rn(Dt, (ee) => S.replaceModifiers(ee, 0));
              const Ve = S.createModuleDeclaration(ha(ne), ne.name, S.createModuleBlock(Dt), 32);
              if (!vf(it, 2048)) return [it, Ve];
              const fr = S.createModifiersFromModifierFlags(Pu(it) & -2081 | 128), rr = S.updateFunctionDeclaration(it, fr, void 0, it.name, it.typeParameters, it.parameters, it.type, void 0), Oe = S.updateModuleDeclaration(Ve, fr, Ve.name, Ve.body), rt = S.createExportAssignment(void 0, !1, Ve.name);
              return Pi(ne.parent) && (o = !0), _ = !0, [
                rr,
                Oe,
                rt
              ];
            } else return it;
          }
          case 268: {
            i = !1;
            const it = ne.body;
            if (it && it.kind === 269) {
              const ut = c, Qe = _;
              _ = !1, c = !1;
              let xt = ri(Fr(it.statements, ra, Ei));
              ne.flags & 33554432 && (c = !1), !ug(ne) && !Lr(xt) && !_ && (c ? xt = S.createNodeArray([...xt, uN(S)]) : xt = Fr(xt, Me, Ei));
              const Dt = S.updateModuleBlock(it, xt);
              return i = Ge, c = ut, _ = Qe, nt(vt(ne, ha(ne), Nb(ne) ? _i(ne, ne.name) : ne.name, Dt));
            } else {
              i = Ge;
              const ut = ha(ne);
              i = !1, Ze(it, ra);
              const Qe = w_(it), xt = g.get(Qe);
              return g.delete(Qe), nt(vt(ne, ut, ne.name, xt));
            }
          }
          case 264: {
            P = ne.name, N = ne;
            const it = S.createNodeArray(ha(ne)), ut = Ar(ne, ne.typeParameters), Qe = Xg(ne);
            let xt;
            if (Qe) {
              const rr = n;
              xt = a3(ks(Qe.parameters, (Oe) => {
                if (!Qn(Oe, 31) || Ea(Oe)) return;
                if (n = Lv(Oe), Oe.name.kind === 80) return zr(S.createPropertyDeclaration(ha(Oe), Oe.name, Oe.questionToken, ue(Oe), Ce(Oe)), Oe);
                return rt(Oe.name);
                function rt(ee) {
                  let q;
                  for (const j of ee.elements)
                    if (!Al(j)) {
                      if (Ja(j.name)) {
                        q = zi(q, rt(j.name));
                        continue;
                      }
                      q = q || [], q.push(S.createPropertyDeclaration(ha(Oe), j.name, void 0, ue(j), void 0));
                    }
                  return q;
                }
              })), n = rr;
            }
            const Dt = zi(zi(zi(_t(ne.members, (rr) => !!rr.name && Oi(rr.name)) ? [S.createPropertyDeclaration(void 0, S.createPrivateIdentifier("#private"), void 0, void 0, void 0)] : void 0, z.createLateBoundIndexSignatures(ne, u, BN, JN, D)), xt), Fr(ne.members, Zr, al)), Ve = S.createNodeArray(Dt), fr = Jd(ne);
            if (fr && !go(fr.expression) && fr.expression.kind !== 106) {
              const rr = ne.name ? Ti(ne.name.escapedText) : "default", Oe = S.createUniqueName(`${rr}_base`, 16);
              n = () => ({
                diagnosticMessage: p.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,
                errorNode: fr,
                typeName: ne.name
              });
              const rt = S.createVariableDeclaration(Oe, void 0, z.createTypeOfExpression(fr.expression, ne, BN, JN, D), void 0), ee = S.createVariableStatement(i ? [S.createModifier(138)] : [], S.createVariableDeclarationList([rt], 2)), q = S.createNodeArray(or(ne.heritageClauses, (j) => {
                if (j.token === 96) {
                  const Re = n;
                  n = Lv(j.types[0]);
                  const $e = S.updateHeritageClause(j, or(j.types, (ye) => S.updateExpressionWithTypeArguments(ye, Oe, Fr(ye.typeArguments, Zr, ui))));
                  return n = Re, $e;
                }
                return S.updateHeritageClause(j, Fr(S.createNodeArray(dn(j.types, (Re) => go(Re.expression) || Re.expression.kind === 106)), Zr, rh));
              }));
              return [ee, nt(S.updateClassDeclaration(ne, it, ne.name, ut, q, Ve))];
            } else {
              const rr = Pt(ne.heritageClauses);
              return nt(S.updateClassDeclaration(ne, it, ne.name, ut, rr, Ve));
            }
          }
          case 244:
            return nt(Ur(ne));
          case 267:
            return nt(S.updateEnumDeclaration(ne, S.createNodeArray(ha(ne)), ne.name, S.createNodeArray(Rn(ne.members, (it) => {
              if (Ea(it)) return;
              const ut = z.getEnumMemberValue(it), Qe = ut?.value;
              ie && it.initializer && ut?.hasExternalReferences && !_s(it.name) && e.addDiagnostic(Kr(it, p.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));
              const xt = Qe === void 0 ? void 0 : typeof Qe == "string" ? S.createStringLiteral(Qe) : Qe < 0 ? S.createPrefixUnaryExpression(41, S.createNumericLiteral(-Qe)) : S.createNumericLiteral(Qe);
              return zr(S.updateEnumMember(it, it.name, xt), it);
            }))));
        }
        return E.assertNever(ne, `Unhandled top-level node in declaration emit: ${E.formatSyntaxKind(ne.kind)}`);
        function nt(it) {
          return Ct(ne) && (u = tt), re && (n = we), ne.kind === 268 && (i = Ge), it === ne ? it : (N = void 0, P = void 0, it && Fn(zr(it, ne), ne));
        }
      }
      function Ur(ne) {
        if (!bt(ne.declarationList.declarations, Ft)) return;
        const tt = Fr(ne.declarationList.declarations, Zr, ci);
        if (!It(tt)) return;
        const re = S.createNodeArray(ha(ne));
        let we;
        return Q3(ne.declarationList) || X3(ne.declarationList) ? (we = S.createVariableDeclarationList(tt, 2), Fn(we, ne.declarationList), pt(we, ne.declarationList), fl(we, ne.declarationList)) : we = S.updateVariableDeclarationList(ne.declarationList, tt), S.updateVariableStatement(ne, re, we);
      }
      function $n(ne) {
        return Rf(Rn(ne.elements, (tt) => zn(tt)));
      }
      function zn(ne) {
        if (ne.kind !== 233 && ne.name)
          return Ft(ne) ? Ja(ne.name) ? $n(ne.name) : S.createVariableDeclaration(ne.name, void 0, ue(ne), void 0) : void 0;
      }
      function na(ne) {
        let tt;
        h || (tt = n, n = hie(ne)), P = ne.name, E.assert(zh(ne));
        const re = ne.name.expression;
        Kt(re, u), h || (n = tt), P = void 0;
      }
      function Ea(ne) {
        return !!pe && !!ne && $Z(ne, M);
      }
      function Da(ne) {
        return Xo(ne) || tl(ne);
      }
      function Lr(ne) {
        return _t(ne, Da);
      }
      function ha(ne) {
        const tt = Pu(ne), re = Ye(ne);
        return tt === re ? bw(ne.modifiers, (we) => qn(we, hs), hs) : S.createModifiersFromModifierFlags(re);
      }
      function Ye(ne) {
        let tt = 130030, re = i && !Fje(ne) ? 128 : 0;
        const we = ne.parent.kind === 308;
        return (!we || a && we && Sl(ne.parent)) && (tt ^= 128, re = 0), dve(ne, tt, re);
      }
      function Pt(ne) {
        return S.createNodeArray(dn(or(ne, (tt) => S.updateHeritageClause(tt, Fr(S.createNodeArray(dn(tt.types, (re) => go(re.expression) || tt.token === 96 && re.expression.kind === 106)), Zr, rh))), (tt) => tt.types && !!tt.types.length));
      }
    }
    function Fje(e) {
      return e.kind === 265;
    }
    function Lje(e, t, n, i) {
      return e.createModifiersFromModifierFlags(dve(t, n, i));
    }
    function dve(e, t = 131070, n = 0) {
      let i = Pu(e) & t | n;
      return i & 2048 && !(i & 32) && (i ^= 32), i & 2048 && i & 128 && (i ^= 128), i;
    }
    function mve(e) {
      switch (e.kind) {
        case 173:
        case 172:
          return !vf(e, 2);
        case 170:
        case 261:
          return !0;
      }
      return !1;
    }
    function Mje(e) {
      switch (e.kind) {
        case 263:
        case 268:
        case 272:
        case 265:
        case 264:
        case 266:
        case 267:
        case 244:
        case 273:
        case 279:
        case 278:
          return !0;
      }
      return !1;
    }
    function Rje(e) {
      switch (e.kind) {
        case 181:
        case 177:
        case 175:
        case 178:
        case 179:
        case 173:
        case 172:
        case 174:
        case 180:
        case 182:
        case 261:
        case 169:
        case 234:
        case 184:
        case 195:
        case 185:
        case 186:
        case 206:
          return !0;
      }
      return !1;
    }
    function jje(e) {
      switch (e) {
        case 200:
          return _U;
        case 99:
        case 7:
        case 6:
        case 5:
        case 100:
        case 101:
        case 102:
        case 199:
        case 1:
          return gie;
        case 4:
          return mie;
        default:
          return uU;
      }
    }
    var bie = {
      scriptTransformers: Te,
      declarationTransformers: Te
    };
    function Sie(e, t, n) {
      return {
        scriptTransformers: Bje(e, t, n),
        declarationTransformers: Jje(t)
      };
    }
    function Bje(e, t, n) {
      if (n) return Te;
      const i = Ps(e), a = u_(e), o = jA(e), c = [];
      return Mn(c, t && or(t.before, hve)), c.push(Zne), e.experimentalDecorators && c.push(tie), hO(e) && c.push(_ie), i < 99 && c.push(cie), !e.experimentalDecorators && (i < 99 || !o) && c.push(rie), c.push(Kne), i < 8 && c.push(oie), i < 7 && c.push(sie), i < 6 && c.push(aie), i < 5 && c.push(iie), i < 4 && c.push(nie), i < 3 && c.push(fie), i < 2 && (c.push(pie), c.push(die)), c.push(jje(a)), Mn(c, t && or(t.after, hve)), c;
    }
    function Jje(e) {
      const t = [];
      return t.push(fU), Mn(t, e && or(e.afterDeclarations, Wje)), t;
    }
    function zje(e) {
      return (t) => Kte(t) ? e.transformBundle(t) : e.transformSourceFile(t);
    }
    function gve(e, t) {
      return (n) => {
        const i = e(n);
        return typeof i == "function" ? t(n, i) : zje(i);
      };
    }
    function hve(e) {
      return gve(e, Xd);
    }
    function Wje(e) {
      return gve(e, (t, n) => n);
    }
    function Dw(e, t) {
      return t;
    }
    function zN(e, t, n) {
      n(e, t);
    }
    function WN(e, t, n, i, a, o, c) {
      var _, u;
      const d = new Array(359);
      let g, h, S, T = 0, k = [], D = [], P = [], N = [], M = 0, R = !1, G = [], L = 0, z, H, U = Dw, pe = zN, ie = 0;
      const W = [], Q = {
        factory: n,
        getCompilerOptions: () => i,
        getEmitResolver: () => e,
        getEmitHost: () => t,
        getEmitHelperFactory: s_(() => Ote(Q)),
        startLexicalEnvironment: K,
        suspendLexicalEnvironment: ke,
        resumeLexicalEnvironment: ae,
        endLexicalEnvironment: Ce,
        setLexicalEnvironmentFlags: ue,
        getLexicalEnvironmentFlags: Ie,
        hoistVariableDeclaration: Ae,
        hoistFunctionDeclaration: Ne,
        addInitializationStatement: ot,
        startBlockScope: Xe,
        endBlockScope: Ft,
        addBlockScopedVariable: Ut,
        requestEmitHelper: Xt,
        readEmitHelpers: Ar,
        enableSubstitution: $,
        enableEmitNotification: ce,
        isSubstitutionEnabled: Se,
        isEmitNotificationEnabled: oe,
        get onSubstituteNode() {
          return U;
        },
        set onSubstituteNode(Kt) {
          E.assert(ie < 1, "Cannot modify transformation hooks after initialization has completed."), E.assert(Kt !== void 0, "Value must not be 'undefined'"), U = Kt;
        },
        get onEmitNode() {
          return pe;
        },
        set onEmitNode(Kt) {
          E.assert(ie < 1, "Cannot modify transformation hooks after initialization has completed."), E.assert(Kt !== void 0, "Value must not be 'undefined'"), pe = Kt;
        },
        addDiagnostic(Kt) {
          W.push(Kt);
        }
      };
      for (const Kt of a) Sz(Sr(Ca(Kt)));
      pc("beforeTransform");
      const se = o.map((Kt) => Kt(Q)), he = (Kt) => {
        for (const zr of se) Kt = zr(Kt);
        return Kt;
      };
      ie = 1;
      const fe = [];
      for (const Kt of a)
        (_ = sn) == null || _.push(sn.Phase.Emit, "transformNodes", Kt.kind === 308 ? { path: Kt.path } : {
          kind: Kt.kind,
          pos: Kt.pos,
          end: Kt.end
        }), fe.push((c ? he : de)(Kt)), (u = sn) == null || u.pop();
      return ie = 2, pc("afterTransform"), yp("transformTime", "beforeTransform", "afterTransform"), {
        transformed: fe,
        substituteNode: Be,
        emitNodeWithNotification: ge,
        isEmitNotificationEnabled: oe,
        dispose: Ct,
        diagnostics: W
      };
      function de(Kt) {
        return Kt && (!Pi(Kt) || !Kt.isDeclarationFile) ? he(Kt) : Kt;
      }
      function $(Kt) {
        E.assert(ie < 2, "Cannot modify the transformation context after transformation has completed."), d[Kt] |= 1;
      }
      function Se(Kt) {
        return (d[Kt.kind] & 1) !== 0 && (Bs(Kt) & 8) === 0;
      }
      function Be(Kt, zr) {
        return E.assert(ie < 3, "Cannot substitute a node after the result is disposed."), zr && Se(zr) && U(Kt, zr) || zr;
      }
      function ce(Kt) {
        E.assert(ie < 2, "Cannot modify the transformation context after transformation has completed."), d[Kt] |= 2;
      }
      function oe(Kt) {
        return (d[Kt.kind] & 2) !== 0 || (Bs(Kt) & 4) !== 0;
      }
      function ge(Kt, zr, _i) {
        E.assert(ie < 3, "Cannot invoke TransformationResult callbacks after the result is disposed."), zr && (oe(zr) ? pe(Kt, zr, _i) : _i(Kt, zr));
      }
      function Ae(Kt) {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed.");
        const zr = ln(n.createVariableDeclaration(Kt), 128);
        g ? g.push(zr) : g = [zr], T & 1 && (T |= 2);
      }
      function Ne(Kt) {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed."), ln(Kt, 2097152), h ? h.push(Kt) : h = [Kt];
      }
      function ot(Kt) {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed."), ln(Kt, 2097152), S ? S.push(Kt) : S = [Kt];
      }
      function K() {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed."), E.assert(!R, "Lexical environment is suspended."), k[M] = g, D[M] = h, P[M] = S, N[M] = T, M++, g = void 0, h = void 0, S = void 0, T = 0;
      }
      function ke() {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed."), E.assert(!R, "Lexical environment is already suspended."), R = !0;
      }
      function ae() {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed."), E.assert(R, "Lexical environment is not suspended."), R = !1;
      }
      function Ce() {
        E.assert(ie > 0, "Cannot modify the lexical environment during initialization."), E.assert(ie < 2, "Cannot modify the lexical environment after transformation has completed."), E.assert(!R, "Lexical environment is suspended.");
        let Kt;
        if (g || h || S) {
          if (h && (Kt = [...h]), g) {
            const zr = n.createVariableStatement(void 0, n.createVariableDeclarationList(g));
            ln(zr, 2097152), Kt ? Kt.push(zr) : Kt = [zr];
          }
          S && (Kt ? Kt = [...Kt, ...S] : Kt = [...S]);
        }
        return M--, g = k[M], h = D[M], S = P[M], T = N[M], M === 0 && (k = [], D = [], P = [], N = []), Kt;
      }
      function ue(Kt, zr) {
        T = zr ? T | Kt : T & ~Kt;
      }
      function Ie() {
        return T;
      }
      function Xe() {
        E.assert(ie > 0, "Cannot start a block scope during initialization."), E.assert(ie < 2, "Cannot start a block scope after transformation has completed."), G[L] = z, L++, z = void 0;
      }
      function Ft() {
        E.assert(ie > 0, "Cannot end a block scope during initialization."), E.assert(ie < 2, "Cannot end a block scope after transformation has completed.");
        const Kt = _t(z) ? [n.createVariableStatement(void 0, n.createVariableDeclarationList(z.map((zr) => n.createVariableDeclaration(zr)), 1))] : void 0;
        return L--, z = G[L], L === 0 && (G = []), Kt;
      }
      function Ut(Kt) {
        E.assert(L > 0, "Cannot add a block scoped variable outside of an iteration body."), (z || (z = [])).push(Kt);
      }
      function Xt(Kt) {
        if (E.assert(ie > 0, "Cannot modify the transformation context during initialization."), E.assert(ie < 2, "Cannot modify the transformation context after transformation has completed."), E.assert(!Kt.scoped, "Cannot request a scoped emit helper."), Kt.dependencies) for (const zr of Kt.dependencies) Xt(zr);
        H = kr(H, Kt);
      }
      function Ar() {
        E.assert(ie > 0, "Cannot modify the transformation context during initialization."), E.assert(ie < 2, "Cannot modify the transformation context after transformation has completed.");
        const Kt = H;
        return H = void 0, Kt;
      }
      function Ct() {
        if (ie < 3) {
          for (const Kt of a) Sz(Sr(Ca(Kt)));
          g = void 0, k = void 0, h = void 0, D = void 0, U = void 0, pe = void 0, H = void 0, ie = 3;
        }
      }
    }
    var UN = {
      factory: A,
      getCompilerOptions: () => ({}),
      getEmitResolver: is,
      getEmitHost: is,
      getEmitHelperFactory: is,
      startLexicalEnvironment: so,
      resumeLexicalEnvironment: so,
      suspendLexicalEnvironment: so,
      endLexicalEnvironment: Tb,
      setLexicalEnvironmentFlags: so,
      getLexicalEnvironmentFlags: () => 0,
      hoistVariableDeclaration: so,
      hoistFunctionDeclaration: so,
      addInitializationStatement: so,
      startBlockScope: so,
      endBlockScope: Tb,
      addBlockScopedVariable: so,
      requestEmitHelper: so,
      readEmitHelpers: is,
      enableSubstitution: so,
      enableEmitNotification: so,
      isSubstitutionEnabled: is,
      isEmitNotificationEnabled: is,
      onSubstituteNode: Dw,
      onEmitNode: zN,
      addDiagnostic: so
    }, yve = Vje();
    function Tie(e) {
      return lc(e, ".tsbuildinfo");
    }
    function pU(e, t, n, i = !1, a, o) {
      const c = da(n) ? n : Q5(e, n, i), _ = e.getCompilerOptions();
      if (!a) if (_.outFile) {
        if (c.length) {
          const u = A.createBundle(c), d = t(ww(u, e, i), u);
          if (d) return d;
        }
      } else for (const u of c) {
        const d = t(ww(u, e, i), u);
        if (d) return d;
      }
      if (o) {
        const u = Mv(_);
        if (u) return t({ buildInfoPath: u }, void 0);
      }
    }
    function Mv(e) {
      const t = e.configFilePath;
      if (!Uje(e)) return;
      if (e.tsBuildInfoFile) return e.tsBuildInfoFile;
      const n = e.outFile;
      let i;
      if (n) i = __(n);
      else {
        if (!t) return;
        const a = __(t);
        i = e.outDir ? e.rootDir ? Fy(e.outDir, Zf(e.rootDir, a, !0)) : jn(e.outDir, nl(a)) : a;
      }
      return i + ".tsbuildinfo";
    }
    function Uje(e) {
      return Wb(e) || !!e.tscBuild;
    }
    function xie(e, t) {
      const n = e.outFile, i = e.emitDeclarationOnly ? void 0 : n, a = i && vve(i, e), o = t || U_(e) ? __(n) + ".d.ts" : void 0;
      return {
        jsFilePath: i,
        sourceMapFilePath: a,
        declarationFilePath: o,
        declarationMapPath: o && pO(e) ? o + ".map" : void 0
      };
    }
    function ww(e, t, n) {
      const i = t.getCompilerOptions();
      if (e.kind === 309) return xie(i, n);
      {
        const a = KK(e.fileName, t, VN(e.fileName, i)), o = Tp(e), c = o && Rh(e.fileName, a, t.getCurrentDirectory(), !t.useCaseSensitiveFileNames()) === 0, _ = i.emitDeclarationOnly || c ? void 0 : a, u = !_ || Tp(e) ? void 0 : vve(_, i), d = n || U_(i) && !o ? eee(e.fileName, t) : void 0;
        return {
          jsFilePath: _,
          sourceMapFilePath: u,
          declarationFilePath: d,
          declarationMapPath: d && pO(i) ? d + ".map" : void 0
        };
      }
    }
    function vve(e, t) {
      return t.sourceMap && !t.inlineSourceMap ? e + ".map" : void 0;
    }
    function VN(e, t) {
      return lc(e, ".json") ? ".json" : t.jsx === 1 && jc(e, [".jsx", ".tsx"]) ? ".jsx" : jc(e, [".mts", ".mjs"]) ? ".mjs" : jc(e, [".cts", ".cjs"]) ? ".cjs" : ".js";
    }
    function bve(e, t, n, i) {
      return n ? Fy(n, Zf(i(), e, t)) : e;
    }
    function Pw(e, t, n, i = () => XS(t, n)) {
      return dU(e, t.options, n, i);
    }
    function dU(e, t, n, i) {
      return F0(bve(e, n, t.declarationDir || t.outDir, i), $5(e));
    }
    function Sve(e, t, n, i = () => XS(t, n)) {
      if (t.options.emitDeclarationOnly) return;
      const a = lc(e, ".json"), o = mU(e, t.options, n, i);
      return !a || Rh(e, o, E.checkDefined(t.options.configFilePath), n) !== 0 ? o : void 0;
    }
    function mU(e, t, n, i) {
      return F0(bve(e, n, t.outDir, i), VN(e, t));
    }
    function Tve() {
      let e;
      return {
        addOutput: t,
        getOutputs: n
      };
      function t(i) {
        i && (e || (e = [])).push(i);
      }
      function n() {
        return e || Te;
      }
    }
    function xve(e, t) {
      const { jsFilePath: n, sourceMapFilePath: i, declarationFilePath: a, declarationMapPath: o } = xie(e.options, !1);
      t(n), t(i), t(a), t(o);
    }
    function kve(e, t, n, i, a) {
      if ($l(t)) return;
      const o = Sve(t, e, n, a);
      if (i(o), !lc(t, ".json") && (o && e.options.sourceMap && i(`${o}.map`), U_(e.options))) {
        const c = Pw(t, e, n, a);
        i(c), e.options.declarationMap && i(`${c}.map`);
      }
    }
    function Aw(e, t, n, i, a) {
      let o;
      return e.rootDir ? (o = ca(e.rootDir, n), a?.(e.rootDir)) : e.configFilePath ? (o = Xn(ru(e.configFilePath)), a?.(o)) : o = EU(t(), n, i), o && o[o.length - 1] !== Co && (o += Co), o;
    }
    function kie(e, t, n) {
      let i = EU(e, t, n);
      return i && i[i.length - 1] !== Co && (i += Co), i;
    }
    function XS({ options: e, fileNames: t }, n) {
      return Aw(e, () => dn(t, (i) => !(e.noEmitForJsFiles && jc(i, T6)) && !$l(i)), Xn(ru(E.checkDefined(e.configFilePath))), pu(!n));
    }
    function n9(e, t) {
      const { addOutput: n, getOutputs: i } = Tve();
      if (e.options.outFile) xve(e, n);
      else {
        const a = s_(() => XS(e, t));
        for (const o of e.fileNames) kve(e, o, t, n, a);
      }
      return n(Mv(e.options)), i();
    }
    function Cve(e, t, n) {
      t = us(t), E.assert(Gi(e.fileNames, t), "Expected fileName to be present in command line");
      const { addOutput: i, getOutputs: a } = Tve();
      return e.options.outFile ? xve(e, i) : kve(e, t, n, i), a();
    }
    function gU(e, t) {
      if (e.options.outFile) {
        const { jsFilePath: a, declarationFilePath: o } = xie(e.options, !1);
        return E.checkDefined(a || o, `project ${e.options.configFilePath} expected to have at least one output`);
      }
      const n = s_(() => XS(e, t));
      for (const a of e.fileNames) {
        if ($l(a)) continue;
        const o = Sve(a, e, t, n);
        if (o) return o;
        if (!lc(a, ".json") && U_(e.options))
          return Pw(a, e, t, n);
      }
      const i = Mv(e.options);
      return i || E.fail(`project ${e.options.configFilePath} expected to have at least one output`);
    }
    function hU(e, t) {
      return !!t && !!e;
    }
    function yU(e, t, n, { scriptTransformers: i, declarationTransformers: a }, o, c, _, u) {
      var d = t.getCompilerOptions(), g = d.sourceMap || d.inlineSourceMap || pO(d) ? [] : void 0, h = d.listEmittedFiles ? [] : void 0, S = SD(), T = N0(d), k = CA(T), { enter: D, exit: P } = lj("printTime", "beforePrint", "afterPrint"), N = !1;
      return D(), pU(t, M, Q5(t, n, _), _, c, !n && !u), P(), {
        emitSkipped: N,
        diagnostics: S.getDiagnostics(),
        emittedFiles: h,
        sourceMaps: g
      };
      function M({ jsFilePath: se, sourceMapFilePath: he, declarationFilePath: fe, declarationMapPath: de, buildInfoPath: $ }, Se) {
        var Be, ce, oe, ge, Ae, Ne;
        (Be = sn) == null || Be.push(sn.Phase.Emit, "emitJsFileOrBundle", { jsFilePath: se }), G(Se, se, he), (ce = sn) == null || ce.pop(), (oe = sn) == null || oe.push(sn.Phase.Emit, "emitDeclarationFileOrBundle", { declarationFilePath: fe }), L(Se, fe, de), (ge = sn) == null || ge.pop(), (Ae = sn) == null || Ae.push(sn.Phase.Emit, "emitBuildInfo", { buildInfoPath: $ }), R($), (Ne = sn) == null || Ne.pop();
      }
      function R(se) {
        if (!se || n) return;
        if (t.isEmitBlocked(se)) {
          N = !0;
          return;
        }
        const he = t.getBuildInfo() || { version: Qr };
        Z5(t, S, se, Cie(he), !1, void 0, { buildInfo: he }), h?.push(se);
      }
      function G(se, he, fe) {
        if (!se || o || !he) return;
        if (t.isEmitBlocked(he) || d.noEmit) {
          N = !0;
          return;
        }
        (Pi(se) ? [se] : dn(se.sourceFiles, O5)).forEach((Se) => {
          (d.noCheck || !BD(Se, d)) && H(Se);
        });
        const de = WN(e, t, A, d, [se], i, !1), $ = g1({
          removeComments: d.removeComments,
          newLine: d.newLine,
          noEmitHelpers: d.noEmitHelpers,
          module: u_(d),
          moduleResolution: Hu(d),
          target: Ps(d),
          sourceMap: d.sourceMap,
          inlineSourceMap: d.inlineSourceMap,
          inlineSources: d.inlineSources,
          extendedDiagnostics: d.extendedDiagnostics
        }, {
          hasGlobalName: e.hasGlobalName,
          onEmitNode: de.emitNodeWithNotification,
          isEmitNotificationEnabled: de.isEmitNotificationEnabled,
          substituteNode: de.substituteNode
        });
        E.assert(de.transformed.length === 1, "Should only see one output from the transform"), U(he, fe, de, $, d), de.dispose(), h && (h.push(he), fe && h.push(fe));
      }
      function L(se, he, fe) {
        if (!se || o === 0) return;
        if (!he) {
          (o || d.emitDeclarationOnly) && (N = !0);
          return;
        }
        const de = Pi(se) ? [se] : se.sourceFiles, $ = _ ? de : dn(de, O5), Se = d.outFile ? [A.createBundle($)] : $;
        $.forEach((oe) => {
          (o && !U_(d) || d.noCheck || hU(o, _) || !BD(oe, d)) && z(oe);
        });
        const Be = WN(e, t, A, d, Se, a, !1);
        if (It(Be.diagnostics)) for (const oe of Be.diagnostics) S.add(oe);
        const ce = !!Be.diagnostics && !!Be.diagnostics.length || !!t.isEmitBlocked(he) || !!d.noEmit;
        if (N = N || ce, !ce || _) {
          E.assert(Be.transformed.length === 1, "Should only see one output from the decl transform");
          const oe = {
            removeComments: d.removeComments,
            newLine: d.newLine,
            noEmitHelpers: !0,
            module: d.module,
            moduleResolution: d.moduleResolution,
            target: d.target,
            sourceMap: o !== 2 && d.declarationMap,
            inlineSourceMap: d.inlineSourceMap,
            extendedDiagnostics: d.extendedDiagnostics,
            onlyPrintJsDocStyle: !0,
            omitBraceSourceMapPositions: !0
          }, ge = U(he, fe, Be, g1(oe, {
            hasGlobalName: e.hasGlobalName,
            onEmitNode: Be.emitNodeWithNotification,
            isEmitNotificationEnabled: Be.isEmitNotificationEnabled,
            substituteNode: Be.substituteNode
          }), {
            sourceMap: oe.sourceMap,
            sourceRoot: d.sourceRoot,
            mapRoot: d.mapRoot,
            extendedDiagnostics: d.extendedDiagnostics
          });
          h && (ge && h.push(he), fe && h.push(fe));
        }
        Be.dispose();
      }
      function z(se) {
        if (Xo(se)) {
          se.expression.kind === 80 && e.collectLinkedAliases(se.expression, !0);
          return;
        } else if ($u(se)) {
          e.collectLinkedAliases(se.propertyName || se.name, !0);
          return;
        }
        Fa(se, z);
      }
      function H(se) {
        T_(se) || bk(se, (he) => {
          if (bl(he) && !(P0(he) & 32) || ic(he)) return "skip";
          e.markLinkedReferences(he);
        });
      }
      function U(se, he, fe, de, $) {
        const Se = fe.transformed[0], Be = Se.kind === 309 ? Se : void 0, ce = Se.kind === 308 ? Se : void 0, oe = Be ? Be.sourceFiles : [ce];
        let ge;
        pe($, Se) && (ge = Fne(t, nl(ru(se)), ie($), W($, se, ce), $)), Be ? de.writeBundle(Be, k, ge) : de.writeFile(ce, k, ge);
        let Ae;
        if (ge) {
          g && g.push({
            inputSourceFileNames: ge.getSources(),
            sourceMap: ge.toJSON()
          });
          const K = Q($, ge, se, he, ce);
          K && (k.isAtStartOfLine() || k.rawWrite(T), Ae = k.getTextPos(), k.writeComment(`//# sourceMappingURL=${K}`)), he && Z5(t, S, he, ge.toString(), !1, oe);
        } else k.writeLine();
        const Ne = k.getText(), ot = {
          sourceMapUrlPos: Ae,
          diagnostics: fe.diagnostics
        };
        return Z5(t, S, se, Ne, !!d.emitBOM, oe, ot), k.clear(), !ot.skippedDtsWrite;
      }
      function pe(se, he) {
        return (se.sourceMap || se.inlineSourceMap) && (he.kind !== 308 || !lc(he.fileName, ".json"));
      }
      function ie(se) {
        const he = ru(se.sourceRoot || "");
        return he && El(he);
      }
      function W(se, he, fe) {
        if (se.sourceRoot) return t.getCommonSourceDirectory();
        if (se.mapRoot) {
          let de = ru(se.mapRoot);
          return fe && (de = Xn(Y5(fe.fileName, t, de))), Md(de) === 0 && (de = jn(t.getCommonSourceDirectory(), de)), de;
        }
        return Xn(us(he));
      }
      function Q(se, he, fe, de, $) {
        if (se.inlineSourceMap) {
          const Be = he.toString();
          return `data:application/json;base64,${gee(Cl, Be)}`;
        }
        const Se = nl(ru(E.checkDefined(de)));
        if (se.mapRoot) {
          let Be = ru(se.mapRoot);
          return $ && (Be = Xn(Y5($.fileName, t, Be))), Md(Be) === 0 ? (Be = jn(t.getCommonSourceDirectory(), Be), encodeURI(bx(Xn(us(fe)), jn(Be, Se), t.getCurrentDirectory(), t.getCanonicalFileName, !0))) : encodeURI(jn(Be, Se));
        }
        return encodeURI(Se);
      }
    }
    function Cie(e) {
      return JSON.stringify(e);
    }
    function vU(e, t) {
      return wJ(e, t);
    }
    var Eie = {
      hasGlobalName: is,
      getReferencedExportContainer: is,
      getReferencedImportDeclaration: is,
      getReferencedDeclarationWithCollidingName: is,
      isDeclarationWithCollidingName: is,
      isValueAliasDeclaration: is,
      isReferencedAliasDeclaration: is,
      isTopLevelValueImportEqualsWithEntityName: is,
      hasNodeCheckFlag: is,
      isDeclarationVisible: is,
      isLateBound: (e) => !1,
      collectLinkedAliases: is,
      markLinkedReferences: is,
      isImplementationOfOverload: is,
      requiresAddingImplicitUndefined: is,
      isExpandoFunctionDeclaration: is,
      getPropertiesOfContainerFunction: is,
      createTypeOfDeclaration: is,
      createReturnTypeOfSignatureDeclaration: is,
      createTypeOfExpression: is,
      createLiteralConstValue: is,
      isSymbolAccessible: is,
      isEntityNameVisible: is,
      getConstantValue: is,
      getEnumMemberValue: is,
      getReferencedValueDeclaration: is,
      getReferencedValueDeclarations: is,
      getTypeReferenceSerializationKind: is,
      isOptionalParameter: is,
      isArgumentsLocalBinding: is,
      getExternalModuleFileFromDeclaration: is,
      isLiteralConstDeclaration: is,
      getJsxFactoryEntity: is,
      getJsxFragmentFactoryEntity: is,
      isBindingCapturedByNode: is,
      getDeclarationStatementsForSourceFile: is,
      isImportRequiredByAugmentation: is,
      isDefinitelyReferenceToGlobalSymbolObject: is,
      createLateBoundIndexSignatures: is,
      symbolToDeclarations: is
    }, Die = /* @__PURE__ */ s_(() => g1({})), i2 = /* @__PURE__ */ s_(() => g1({ removeComments: !0 })), wie = /* @__PURE__ */ s_(() => g1({
      removeComments: !0,
      neverAsciiEscape: !0
    })), bU = /* @__PURE__ */ s_(() => g1({
      removeComments: !0,
      omitTrailingSemicolon: !0
    }));
    function g1(e = {}, t = {}) {
      var { hasGlobalName: n, onEmitNode: i = zN, isEmitNotificationEnabled: a, substituteNode: o = Dw, onBeforeEmitNode: c, onAfterEmitNode: _, onBeforeEmitNodeArray: u, onAfterEmitNodeArray: d, onBeforeEmitToken: g, onAfterEmitToken: h } = t, S = !!e.extendedDiagnostics, T = !!e.omitBraceSourceMapPositions, k = N0(e), D = u_(e), P = /* @__PURE__ */ new Map(), N, M, R, G, L, z, H, U, pe, ie, W, Q, se, he, fe, de = e.preserveSourceNewlines, $, Se, Be, ce = hP, oe, ge = !0, Ae, Ne, ot = -1, K, ke = -1, ae = -1, Ce = -1, ue = -1, Ie, Xe, Ft = !1, Ut = !!e.removeComments, Xt, Ar, { enter: Ct, exit: Kt } = Oge(S, "commentTime", "beforeComment", "afterComment"), zr = A.parenthesizer, _i = { select: (C) => C === 0 ? zr.parenthesizeLeadingTypeArgument : void 0 }, Gr = Dc();
      return Ea(), {
        printNode: Nt,
        printList: Li,
        printFile: Zr,
        printBundle: ri,
        writeNode: ni,
        writeList: ra,
        writeFile: vt,
        writeBundle: Me
      };
      function Nt(C, _e, Et) {
        switch (C) {
          case 0:
            E.assert(Pi(_e), "Expected a SourceFile node.");
            break;
          case 2:
            E.assert(Fe(_e), "Expected an Identifier node.");
            break;
          case 1:
            E.assert(dt(_e), "Expected an Expression node.");
            break;
        }
        switch (_e.kind) {
          case 308:
            return Zr(_e);
          case 309:
            return ri(_e);
        }
        return ni(C, _e, Et, tr()), Ur();
      }
      function Li(C, _e, Et) {
        return ra(C, _e, Et, tr()), Ur();
      }
      function ri(C) {
        return Me(C, tr(), void 0), Ur();
      }
      function Zr(C) {
        return vt(C, tr(), void 0), Ur();
      }
      function ni(C, _e, Et, nr) {
        const Nn = Se;
        na(nr, void 0), $n(C, _e, Et), Ea(), Se = Nn;
      }
      function ra(C, _e, Et, nr) {
        const Nn = Se;
        na(nr, void 0), Et && zn(Et), to(void 0, _e, C), Ea(), Se = Nn;
      }
      function Me(C, _e, Et) {
        oe = !1;
        const nr = Se;
        na(_e, Et), iy(C), We(C), fr(C), x2(C);
        for (const Nn of C.sourceFiles) $n(0, Nn, Nn);
        Ea(), Se = nr;
      }
      function vt(C, _e, Et) {
        oe = !0;
        const nr = Se;
        na(_e, Et), iy(C), We(C), $n(0, C, C), Ea(), Se = nr;
      }
      function tr() {
        return Be || (Be = CA(k));
      }
      function Ur() {
        const C = Be.getText();
        return Be.clear(), C;
      }
      function $n(C, _e, Et) {
        Et && zn(Et), re(C, _e, void 0);
      }
      function zn(C) {
        N = C, Ie = void 0, Xe = void 0, C && ju(C);
      }
      function na(C, _e) {
        C && e.omitTrailingSemicolon && (C = fJ(C)), Se = C, Ae = _e, ge = !Se || !Ae;
      }
      function Ea() {
        M = [], R = [], G = [], L = /* @__PURE__ */ new Set(), z = [], H = /* @__PURE__ */ new Map(), U = [], pe = 0, ie = [], W = 0, Q = [], se = void 0, he = [], fe = void 0, N = void 0, Ie = void 0, Xe = void 0, na(void 0, void 0);
      }
      function Da() {
        return Ie || (Ie = Mg(E.checkDefined(N)));
      }
      function Lr(C, _e) {
        C !== void 0 && re(4, C, _e);
      }
      function ha(C) {
        C !== void 0 && re(2, C, void 0);
      }
      function Ye(C, _e) {
        C !== void 0 && re(1, C, _e);
      }
      function Pt(C) {
        re(Ts(C) ? 6 : 4, C);
      }
      function ne(C) {
        de && pd(C) & 4 && (de = !1);
      }
      function tt(C) {
        de = C;
      }
      function re(C, _e, Et) {
        Ar = Et, nt(0, C, _e)(C, _e), Ar = void 0;
      }
      function we(C) {
        return !Ut && !Pi(C);
      }
      function Ge(C) {
        return !ge && !Pi(C) && !I5(C);
      }
      function nt(C, _e, Et) {
        switch (C) {
          case 0:
            if (i !== zN && (!a || a(Et))) return ut;
          case 1:
            if (o !== Dw && (Xt = o(_e, Et) || Et) !== Et)
              return Ar && (Xt = Ar(Xt)), Ve;
          case 2:
            if (we(Et)) return uC;
          case 3:
            if (Ge(Et)) return Tu;
          case 4:
            return Qe;
          default:
            return E.assertNever(C);
        }
      }
      function it(C, _e, Et) {
        return nt(C + 1, _e, Et);
      }
      function ut(C, _e) {
        i(C, _e, it(0, C, _e));
      }
      function Qe(C, _e) {
        if (c?.(_e), de) {
          const Et = de;
          ne(_e), xt(C, _e), tt(Et);
        } else xt(C, _e);
        _?.(_e), Ar = void 0;
      }
      function xt(C, _e, Et = !0) {
        if (Et) {
          const nr = xz(_e);
          if (nr) return ee(C, _e, nr);
        }
        if (C === 0) return E1(ns(_e, Pi));
        if (C === 2) return Re(ns(_e, Fe));
        if (C === 6) return rt(ns(_e, Ts), !0);
        if (C === 3) return Dt(ns(_e, $o));
        if (C === 7) return Wm(ns(_e, BS));
        if (C === 5)
          return E.assertNode(_e, Fz), A_(!0);
        if (C === 4) {
          switch (_e.kind) {
            case 16:
            case 17:
            case 18:
              return rt(_e, !1);
            case 80:
              return Re(_e);
            case 81:
              return $e(_e);
            case 167:
              return ye(_e);
            case 168:
              return pr(_e);
            case 169:
              return Pr(_e);
            case 170:
              return vr(_e);
            case 171:
              return fn(_e);
            case 172:
              return Cr(_e);
            case 173:
              return et(_e);
            case 174:
              return kt(_e);
            case 175:
              return wt(_e);
            case 176:
              return qt(_e);
            case 177:
              return Ir(_e);
            case 178:
            case 179:
              return Yt(_e);
            case 180:
              return Jt(_e);
            case 181:
              return $t(_e);
            case 182:
              return Qt(_e);
            case 183:
              return Mi(_e);
            case 184:
              return os(_e);
            case 185:
              return cs(_e);
            case 186:
              return Yc(_e);
            case 187:
              return Ou(_e);
            case 188:
              return _c(_e);
            case 189:
              return xl(_e);
            case 190:
              return $a(_e);
            case 191:
              return Is(_e);
            case 193:
              return Zt(_e);
            case 194:
              return Mo(_e);
            case 195:
              return ou(_e);
            case 196:
              return Wl(_e);
            case 197:
              return bu(_e);
            case 234:
              return id(_e);
            case 198:
              return Ma();
            case 199:
              return ac(_e);
            case 200:
              return Qo(_e);
            case 201:
              return I(_e);
            case 202:
              return je(_e);
            case 203:
              return Yi(_e);
            case 204:
              return lt(_e);
            case 205:
              return ct(_e);
            case 206:
              return St(_e);
            case 207:
              return jr(_e);
            case 208:
              return Bn(_e);
            case 209:
              return tn(_e);
            case 240:
              return em(_e);
            case 241:
              return wn();
            case 242:
              return e0(_e);
            case 244:
              return nf(_e);
            case 243:
              return A_(!1);
            case 245:
              return t0(_e);
            case 246:
              return Uf(_e);
            case 247:
              return st(_e);
            case 248:
              return Rt(_e);
            case 249:
              return F(_e);
            case 250:
              return ve(_e);
            case 251:
              return qe(_e);
            case 252:
              return Rr(_e);
            case 253:
              return cn(_e);
            case 254:
              return Ul(_e);
            case 255:
              return Lu(_e);
            case 256:
              return N_(_e);
            case 257:
              return cu(_e);
            case 258:
              return lh(_e);
            case 259:
              return X0(_e);
            case 260:
              return Q0(_e);
            case 261:
              return vg(_e);
            case 262:
              return r0(_e);
            case 263:
              return S1(_e);
            case 264:
              return yr(_e);
            case 265:
              return Tn(_e);
            case 266:
              return Er(_e);
            case 267:
              return hn(_e);
            case 268:
              return Vr(_e);
            case 269:
              return li(_e);
            case 270:
              return ki(_e);
            case 271:
              return x1(_e);
            case 272:
              return Zi(_e);
            case 273:
              return Jc(_e);
            case 274:
              return Fp(_e);
            case 275:
              return Td(_e);
            case 281:
              return sT(_e);
            case 276:
              return tm(_e);
            case 277:
              return xd(_e);
            case 278:
              return rm(_e);
            case 279:
              return nm(_e);
            case 280:
              return h2(_e);
            case 282:
              return Um(_e);
            case 301:
              return Qk(_e);
            case 302:
              return g2(_e);
            case 283:
              return;
            case 284:
              return gP(_e);
            case 12:
              return k1(_e);
            case 287:
            case 290:
              return Z0(_e);
            case 288:
            case 291:
              return eC(_e);
            case 292:
              return tC(_e);
            case 293:
              return PE(_e);
            case 294:
              return oT(_e);
            case 295:
              return rC(_e);
            case 296:
              return cT(_e);
            case 297:
              return NE(_e);
            case 298:
              return nC(_e);
            case 299:
              return ey(_e);
            case 300:
              return uh(_e);
            case 304:
              return ty(_e);
            case 305:
              return _h(_e);
            case 306:
              return Hv(_e);
            case 307:
              return ry(_e);
            case 308:
              return E1(_e);
            case 309:
              return E.fail("Bundles should be printed using printBundle");
            case 310:
              return Vm(_e);
            case 311:
              return _T(_e);
            case 313:
              return Sn("*");
            case 314:
              return Sn("?");
            case 315:
              return ia(_e);
            case 316:
              return ja(_e);
            case 317:
              return _o(_e);
            case 318:
              return To(_e);
            case 192:
            case 319:
              return fa(_e);
            case 320:
              return;
            case 321:
              return S2(_e);
            case 323:
              return lu(_e);
            case 324:
              return Lc(_e);
            case 328:
            case 333:
            case 338:
              return Sc(_e);
            case 329:
            case 330:
              return Ql(_e);
            case 331:
            case 332:
              return;
            case 334:
            case 335:
            case 336:
            case 337:
              return;
            case 339:
              return cp(_e);
            case 340:
              return lp(_e);
            case 342:
            case 349:
              return T2(_e);
            case 341:
            case 343:
            case 344:
            case 345:
            case 350:
            case 351:
              return uT(_e);
            case 346:
              return im(_e);
            case 347:
              return fh(_e);
            case 348:
              return C1(_e);
            case 352:
              return Ws(_e);
            case 354:
            case 355:
              return;
          }
          if (dt(_e) && (C = 1, o !== Dw)) {
            const nr = o(C, _e) || _e;
            nr !== _e && (_e = nr, Ar && (_e = Ar(_e)));
          }
        }
        if (C === 1) switch (_e.kind) {
          case 9:
          case 10:
            return Oe(_e);
          case 11:
          case 14:
          case 15:
            return rt(_e, !1);
          case 80:
            return Re(_e);
          case 81:
            return $e(_e);
          case 210:
            return ai(_e);
          case 211:
            return ei(_e);
          case 212:
            return La(_e);
          case 213:
            return cl(_e);
          case 214:
            return vc(_e);
          case 215:
            return ml(_e);
          case 216:
            return gl(_e);
          case 217:
            return Os(_e);
          case 218:
            return Ao(_e);
          case 219:
            return Su(_e);
          case 220:
            return rf(_e);
          case 221:
            return jt(_e);
          case 222:
            return Yr(_e);
          case 223:
            return Hi(_e);
          case 224:
            return Js(_e);
          case 225:
            return io(_e);
          case 226:
            return Oc(_e);
          case 227:
            return Gr(_e);
          case 228:
            return zs(_e);
          case 229:
            return bc(_e);
          case 230:
            return Il(_e);
          case 231:
            return Op(_e);
          case 232:
            return Wf(_e);
          case 233:
            return;
          case 235:
            return ad(_e);
          case 236:
            return hl(_e);
          case 234:
            return id(_e);
          case 239:
            return ll(_e);
          case 237:
            return Kd(_e);
          case 238:
            return E.fail("SyntheticExpression should never be printed.");
          case 283:
            return;
          case 285:
            return n0(_e);
          case 286:
            return Kk(_e);
          case 289:
            return y2(_e);
          case 353:
            return E.fail("SyntaxList should not be printed");
          case 354:
            return;
          case 356:
            return OE(_e);
          case 357:
            return ny(_e);
          case 358:
            return E.fail("SyntheticReferenceExpression should not be printed");
        }
        if (z_(_e.kind)) return mT(_e, wa);
        if (tB(_e.kind)) return mT(_e, Sn);
        E.fail(`Unhandled SyntaxKind: ${E.formatSyntaxKind(_e.kind)}.`);
      }
      function Dt(C) {
        Lr(C.name), $r(), wa("in"), $r(), Lr(C.constraint);
      }
      function Ve(C, _e) {
        const Et = it(1, C, _e);
        E.assertIsDefined(Xt), _e = Xt, Xt = void 0, Et(C, _e);
      }
      function fr(C) {
        let _e = !1;
        const Et = C.kind === 309 ? C : void 0;
        if (Et && D === 0) return;
        const nr = Et ? Et.sourceFiles.length : 1;
        for (let Nn = 0; Nn < nr; Nn++) {
          const Ui = Et ? Et.sourceFiles[Nn] : C, oa = Pi(Ui) ? Ui : N, sa = e.noEmitHelpers || !!oa && mre(oa), Vs = Pi(Ui) && !oe, H_ = rr(Ui);
          if (H_) for (const Ys of H_) {
            if (Ys.scoped) {
              if (Et) continue;
            } else {
              if (sa) continue;
              if (Vs) {
                if (P.get(Ys.name)) continue;
                P.set(Ys.name, !0);
              }
            }
            typeof Ys.text == "string" ? Hm(Ys.text) : Hm(Ys.text(cC)), _e = !0;
          }
        }
        return _e;
      }
      function rr(C) {
        const _e = Tz(C);
        return _e && uf(_e, Fte);
      }
      function Oe(C) {
        rt(C, !1);
      }
      function rt(C, _e) {
        const Et = $m(C, void 0, e.neverAsciiEscape, _e);
        (e.sourceMap || e.inlineSourceMap) && (C.kind === 11 || jy(C.kind)) ? Pn(Et) : Ku(Et);
      }
      function ee(C, _e, Et) {
        switch (Et.kind) {
          case 1:
            q(C, _e, Et);
            break;
          case 0:
            j(C, _e, Et);
            break;
        }
      }
      function q(C, _e, Et) {
        dT(`\${${Et.order}:`), xt(C, _e, !1), dT("}");
      }
      function j(C, _e, Et) {
        E.assert(_e.kind === 243, `A tab stop cannot be attached to a node of kind ${E.formatSyntaxKind(_e.kind)}.`), E.assert(C !== 5, "A tab stop cannot be attached to an embedded statement."), dT(`$${Et.order}`);
      }
      function Re(C) {
        (C.symbol ? cy : ce)(w1(C, !1), C.symbol), to(C, NS(C), 53776);
      }
      function $e(C) {
        ce(w1(C, !1));
      }
      function ye(C) {
        Ke(C.left), Sn("."), Lr(C.right);
      }
      function Ke(C) {
        C.kind === 80 ? Ye(C) : Lr(C);
      }
      function pr(C) {
        Sn("["), Ye(C.expression, zr.parenthesizeExpressionOfComputedPropertyName), Sn("]");
      }
      function Pr(C) {
        am(C, C.modifiers), Lr(C.name), C.constraint && ($r(), wa("extends"), $r(), Lr(C.constraint)), C.default && ($r(), ly("="), $r(), Lr(C.default));
      }
      function vr(C) {
        uu(C, C.modifiers, !0), Lr(C.dotDotDotToken), Tg(C.name, aC), Lr(C.questionToken), C.parent && C.parent.kind === 318 && !C.name ? Lr(C.type) : ay(C.type), kd(C.initializer, C.type ? C.type.end : C.questionToken ? C.questionToken.end : C.name ? C.name.end : C.modifiers ? C.modifiers.end : C.pos, C, zr.parenthesizeExpressionForDisallowedComma);
      }
      function fn(C) {
        Sn("@"), Ye(C.expression, zr.parenthesizeLeftSideOfAccess);
      }
      function Cr(C) {
        am(C, C.modifiers), Tg(C.name, sC), Lr(C.questionToken), ay(C.type), Mu();
      }
      function et(C) {
        uu(C, C.modifiers, !0), Lr(C.name), Lr(C.questionToken), Lr(C.exclamationToken), ay(C.type), kd(C.initializer, C.type ? C.type.end : C.questionToken ? C.questionToken.end : C.name.end, C), Mu();
      }
      function kt(C) {
        am(C, C.modifiers), Lr(C.name), Lr(C.questionToken), Vf(C, Sd, T1);
      }
      function wt(C) {
        uu(C, C.modifiers, !0), Lr(C.asteriskToken), Lr(C.name), Lr(C.questionToken), Vf(C, Sd, bg);
      }
      function qt(C) {
        wa("static"), hh(C), ze(C.body), Dd(C);
      }
      function Ir(C) {
        uu(C, C.modifiers, !1), wa("constructor"), Vf(C, Sd, bg);
      }
      function Yt(C) {
        const _e = uu(C, C.modifiers, !0);
        dr(C.kind === 178 ? 139 : 153, _e, wa, C), $r(), Lr(C.name), Vf(C, Sd, bg);
      }
      function Jt(C) {
        Vf(C, Sd, T1);
      }
      function $t(C) {
        wa("new"), $r(), Vf(C, Sd, T1);
      }
      function Qt(C) {
        uu(C, C.modifiers, !1), oy(C, C.parameters), ay(C.type), Mu();
      }
      function ct(C) {
        Lr(C.type), Lr(C.literal);
      }
      function wn() {
        Mu();
      }
      function Mi(C) {
        C.assertsModifier && (Lr(C.assertsModifier), $r()), Lr(C.parameterName), C.type && ($r(), wa("is"), $r(), Lr(C.type));
      }
      function os(C) {
        Lr(C.typeName), qm(C, C.typeArguments);
      }
      function cs(C) {
        Vf(C, xa, oo);
      }
      function xa(C) {
        i0(C, C.typeParameters), Yv(C, C.parameters), $r(), Sn("=>");
      }
      function oo(C) {
        $r(), Lr(C.type);
      }
      function To(C) {
        wa("function"), Gm(C, C.parameters), Sn(":"), Lr(C.type);
      }
      function ia(C) {
        Sn("?"), Lr(C.type);
      }
      function ja(C) {
        Sn("!"), Lr(C.type);
      }
      function _o(C) {
        Lr(C.type), Sn("=");
      }
      function Yc(C) {
        am(C, C.modifiers), wa("new"), $r(), Vf(C, xa, oo);
      }
      function Ou(C) {
        wa("typeof"), $r(), Lr(C.exprName), qm(C, C.typeArguments);
      }
      function _c(C) {
        hh(C), bt(C.members, vT), Sn("{");
        const _e = Bs(C) & 1 ? 768 : 32897;
        to(C, C.members, _e | 524288), Sn("}"), Dd(C);
      }
      function xl(C) {
        Lr(C.elementType, zr.parenthesizeNonArrayTypeOfPostfixType), Sn("["), Sn("]");
      }
      function fa(C) {
        Sn("..."), Lr(C.type);
      }
      function $a(C) {
        dr(23, C.pos, Sn, C);
        const _e = Bs(C) & 1 ? 528 : 657;
        to(C, C.elements, _e | 524288, zr.parenthesizeElementTypeOfTupleType), dr(24, C.elements.end, Sn, C);
      }
      function Yi(C) {
        Lr(C.dotDotDotToken), Lr(C.name), Lr(C.questionToken), dr(59, C.name.end, Sn, C), $r(), Lr(C.type);
      }
      function Is(C) {
        Lr(C.type, zr.parenthesizeTypeOfOptionalType), Sn("?");
      }
      function Zt(C) {
        to(C, C.types, 516, zr.parenthesizeConstituentTypeOfUnionType);
      }
      function Mo(C) {
        to(C, C.types, 520, zr.parenthesizeConstituentTypeOfIntersectionType);
      }
      function ou(C) {
        Lr(C.checkType, zr.parenthesizeCheckTypeOfConditionalType), $r(), wa("extends"), $r(), Lr(C.extendsType, zr.parenthesizeExtendsTypeOfConditionalType), $r(), Sn("?"), $r(), Lr(C.trueType), $r(), Sn(":"), $r(), Lr(C.falseType);
      }
      function Wl(C) {
        wa("infer"), $r(), Lr(C.typeParameter);
      }
      function bu(C) {
        Sn("("), Lr(C.type), Sn(")");
      }
      function Ma() {
        wa("this");
      }
      function ac(C) {
        mh(C.operator, wa), $r();
        const _e = C.operator === 148 ? zr.parenthesizeOperandOfReadonlyTypeOperator : zr.parenthesizeOperandOfTypeOperator;
        Lr(C.type, _e);
      }
      function Qo(C) {
        Lr(C.objectType, zr.parenthesizeNonArrayTypeOfPostfixType), Sn("["), Lr(C.indexType), Sn("]");
      }
      function I(C) {
        const _e = Bs(C);
        Sn("{"), _e & 1 ? $r() : (d_(), xg()), C.readonlyToken && (Lr(C.readonlyToken), C.readonlyToken.kind !== 148 && wa("readonly"), $r()), Sn("["), re(3, C.typeParameter), C.nameType && ($r(), wa("as"), $r(), Lr(C.nameType)), Sn("]"), C.questionToken && (Lr(C.questionToken), C.questionToken.kind !== 58 && Sn("?")), Sn(":"), $r(), Lr(C.type), Mu(), _e & 1 ? $r() : (d_(), sd()), to(C, C.members, 2), Sn("}");
      }
      function je(C) {
        Ye(C.literal);
      }
      function lt(C) {
        Lr(C.head), to(C, C.templateSpans, 262144);
      }
      function St(C) {
        C.isTypeOf && (wa("typeof"), $r()), wa("import"), Sn("("), Lr(C.argument), C.attributes && (Sn(","), $r(), re(7, C.attributes)), Sn(")"), C.qualifier && (Sn("."), Lr(C.qualifier)), qm(C, C.typeArguments);
      }
      function jr(C) {
        Sn("{"), to(C, C.elements, 525136), Sn("}");
      }
      function Bn(C) {
        Sn("["), to(C, C.elements, 524880), Sn("]");
      }
      function tn(C) {
        Lr(C.dotDotDotToken), C.propertyName && (Lr(C.propertyName), Sn(":"), $r()), Lr(C.name), kd(C.initializer, C.name.end, C, zr.parenthesizeExpressionForDisallowedComma);
      }
      function ai(C) {
        const _e = C.elements;
        dh(C, _e, 8914 | (C.multiLine ? 65536 : 0), zr.parenthesizeExpressionForDisallowedComma);
      }
      function ei(C) {
        hh(C), bt(C.properties, vT);
        const _e = Bs(C) & 131072;
        _e && xg();
        const Et = C.multiLine ? 65536 : 0, nr = N && !Tp(N) ? 64 : 0;
        to(C, C.properties, 526226 | nr | Et), _e && sd(), Dd(C);
      }
      function La(C) {
        Ye(C.expression, zr.parenthesizeLeftSideOfAccess);
        const _e = C.questionDotToken || Ud(A.createToken(25), C.expression.end, C.name.pos), Et = Gf(C, C.expression, _e), nr = Gf(C, _e, C.name);
        Ed(Et, !1), _e.kind !== 29 && ds(C.expression) && !Se.hasTrailingComment() && !Se.hasTrailingWhitespace() && Sn("."), C.questionDotToken ? Lr(_e) : dr(_e.kind, C.expression.end, Sn, C), Ed(nr, !1), Lr(C.name), _y(Et, nr);
      }
      function ds(C) {
        if (C = fd(C), V_(C)) {
          const _e = $m(C, void 0, !0, !1);
          return !(C.numericLiteralFlags & 448) && !_e.includes(as(25)) && !_e.includes("E") && !_e.includes("e");
        } else if (jo(C)) {
          const _e = Cte(C);
          return typeof _e == "number" && isFinite(_e) && _e >= 0 && Math.floor(_e) === _e;
        }
      }
      function cl(C) {
        Ye(C.expression, zr.parenthesizeLeftSideOfAccess), Lr(C.questionDotToken), dr(23, C.expression.end, Sn, C), Ye(C.argumentExpression), dr(24, C.argumentExpression.end, Sn, C);
      }
      function vc(C) {
        const _e = pd(C) & 16;
        _e && (Sn("("), Pn("0"), Sn(","), $r()), Ye(C.expression, zr.parenthesizeLeftSideOfAccess), _e && Sn(")"), Lr(C.questionDotToken), qm(C, C.typeArguments), dh(C, C.arguments, 2576, zr.parenthesizeExpressionForDisallowedComma);
      }
      function ml(C) {
        dr(105, C.pos, wa, C), $r(), Ye(C.expression, zr.parenthesizeExpressionOfNew), qm(C, C.typeArguments), dh(C, C.arguments, 18960, zr.parenthesizeExpressionForDisallowedComma);
      }
      function gl(C) {
        const _e = pd(C) & 16;
        _e && (Sn("("), Pn("0"), Sn(","), $r()), Ye(C.tag, zr.parenthesizeLeftSideOfAccess), _e && Sn(")"), qm(C, C.typeArguments), $r(), Ye(C.template);
      }
      function Os(C) {
        Sn("<"), Lr(C.type), Sn(">"), Ye(C.expression, zr.parenthesizeOperandOfPrefixUnary);
      }
      function Ao(C) {
        const _e = dr(21, C.pos, Sn, C), Et = oC(C.expression, C);
        Ye(C.expression, void 0), hT(C.expression, C), _y(Et), dr(22, C.expression ? C.expression.end : _e, Sn, C);
      }
      function Su(C) {
        vh(C.name), Y0(C);
      }
      function rf(C) {
        am(C, C.modifiers), Vf(C, Ip, Pe);
      }
      function Ip(C) {
        i0(C, C.typeParameters), Yv(C, C.parameters), ay(C.type), $r(), Lr(C.equalsGreaterThanToken);
      }
      function Pe(C) {
        Wa(C.body) ? ze(C.body) : ($r(), Ye(C.body, zr.parenthesizeConciseBodyOfArrowFunction));
      }
      function jt(C) {
        dr(91, C.pos, wa, C), $r(), Ye(C.expression, zr.parenthesizeOperandOfPrefixUnary);
      }
      function Yr(C) {
        dr(114, C.pos, wa, C), $r(), Ye(C.expression, zr.parenthesizeOperandOfPrefixUnary);
      }
      function Hi(C) {
        dr(116, C.pos, wa, C), $r(), Ye(C.expression, zr.parenthesizeOperandOfPrefixUnary);
      }
      function Js(C) {
        dr(135, C.pos, wa, C), $r(), Ye(C.expression, zr.parenthesizeOperandOfPrefixUnary);
      }
      function io(C) {
        mh(C.operator, ly), Qs(C) && $r(), Ye(C.operand, zr.parenthesizeOperandOfPrefixUnary);
      }
      function Qs(C) {
        const _e = C.operand;
        return _e.kind === 225 && (C.operator === 40 && (_e.operator === 40 || _e.operator === 46) || C.operator === 41 && (_e.operator === 41 || _e.operator === 47));
      }
      function Oc(C) {
        Ye(C.operand, zr.parenthesizeOperandOfPostfixUnary), mh(C.operator, ly);
      }
      function Dc() {
        return pF(C, _e, Et, nr, Nn, void 0);
        function C(oa, sa) {
          if (sa) {
            sa.stackIndex++, sa.preserveSourceNewlinesStack[sa.stackIndex] = de, sa.containerPosStack[sa.stackIndex] = ae, sa.containerEndStack[sa.stackIndex] = Ce, sa.declarationListContainerEndStack[sa.stackIndex] = ue;
            const Vs = sa.shouldEmitCommentsStack[sa.stackIndex] = we(oa), H_ = sa.shouldEmitSourceMapsStack[sa.stackIndex] = Ge(oa);
            c?.(oa), Vs && m_(oa), H_ && kg(oa), ne(oa);
          } else sa = {
            stackIndex: 0,
            preserveSourceNewlinesStack: [void 0],
            containerPosStack: [-1],
            containerEndStack: [-1],
            declarationListContainerEndStack: [-1],
            shouldEmitCommentsStack: [!1],
            shouldEmitSourceMapsStack: [!1]
          };
          return sa;
        }
        function _e(oa, sa, Vs) {
          return Ui(oa, Vs, "left");
        }
        function Et(oa, sa, Vs) {
          const H_ = oa.kind !== 28, Ys = Gf(Vs, Vs.left, oa), rb = Gf(Vs, oa, Vs.right);
          Ed(Ys, H_), I1(oa.pos), mT(oa, oa.kind === 103 ? wa : ly), Xm(oa.end, !0), Ed(rb, !0);
        }
        function nr(oa, sa, Vs) {
          return Ui(oa, Vs, "right");
        }
        function Nn(oa, sa) {
          if (_y(Gf(oa, oa.left, oa.operatorToken), Gf(oa, oa.operatorToken, oa.right)), sa.stackIndex > 0) {
            const Vs = sa.preserveSourceNewlinesStack[sa.stackIndex], H_ = sa.containerPosStack[sa.stackIndex], Ys = sa.containerEndStack[sa.stackIndex], rb = sa.declarationListContainerEndStack[sa.stackIndex], Lp = sa.shouldEmitCommentsStack[sa.stackIndex], If = sa.shouldEmitSourceMapsStack[sa.stackIndex];
            tt(Vs), If && wT(oa), Lp && Hf(oa, H_, Ys, rb), _?.(oa), sa.stackIndex--;
          }
        }
        function Ui(oa, sa, Vs) {
          const H_ = Vs === "left" ? zr.getParenthesizeLeftSideOfBinaryForOperator(sa.operatorToken.kind) : zr.getParenthesizeRightSideOfBinaryForOperator(sa.operatorToken.kind);
          let Ys = nt(0, 1, oa);
          if (Ys === Ve && (E.assertIsDefined(Xt), oa = H_(ns(Xt, dt)), Ys = it(1, 1, oa), Xt = void 0), (Ys === uC || Ys === Tu || Ys === Qe) && un(oa))
            return oa;
          Ar = H_, Ys(1, oa);
        }
      }
      function zs(C) {
        const _e = Gf(C, C.condition, C.questionToken), Et = Gf(C, C.questionToken, C.whenTrue), nr = Gf(C, C.whenTrue, C.colonToken), Nn = Gf(C, C.colonToken, C.whenFalse);
        Ye(C.condition, zr.parenthesizeConditionOfConditionalExpression), Ed(_e, !0), Lr(C.questionToken), Ed(Et, !0), Ye(C.whenTrue, zr.parenthesizeBranchOfConditionalExpression), _y(_e, Et), Ed(nr, !0), Lr(C.colonToken), Ed(Nn, !0), Ye(C.whenFalse, zr.parenthesizeBranchOfConditionalExpression), _y(nr, Nn);
      }
      function bc(C) {
        Lr(C.head), to(C, C.templateSpans, 262144);
      }
      function Il(C) {
        dr(127, C.pos, wa, C), Lr(C.asteriskToken), k2(C.expression && ji(C.expression), Fc);
      }
      function Op(C) {
        dr(26, C.pos, Sn, C), Ye(C.expression, zr.parenthesizeExpressionForDisallowedComma);
      }
      function Wf(C) {
        vh(C.name), Br(C);
      }
      function id(C) {
        Ye(C.expression, zr.parenthesizeLeftSideOfAccess), qm(C, C.typeArguments);
      }
      function ad(C) {
        Ye(C.expression, void 0), C.type && ($r(), wa("as"), $r(), Lr(C.type));
      }
      function hl(C) {
        Ye(C.expression, zr.parenthesizeLeftSideOfAccess), ly("!");
      }
      function ll(C) {
        Ye(C.expression, void 0), C.type && ($r(), wa("satisfies"), $r(), Lr(C.type));
      }
      function Kd(C) {
        Zv(C.keywordToken, C.pos, Sn), Sn("."), Lr(C.name);
      }
      function em(C) {
        Ye(C.expression), Lr(C.literal);
      }
      function e0(C) {
        Fu(C, !C.multiLine && LE(C));
      }
      function Fu(C, _e) {
        dr(19, C.pos, Sn, C);
        const Et = _e || Bs(C) & 1 ? 768 : 129;
        to(C, C.statements, Et), dr(20, C.statements.end, Sn, C, !!(Et & 1));
      }
      function nf(C) {
        uu(C, C.modifiers, !1), Lr(C.declarationList), Mu();
      }
      function A_(C) {
        C ? Sn(";") : Mu();
      }
      function t0(C) {
        Ye(C.expression, zr.parenthesizeExpressionOfExpressionStatement), (!N || !Tp(N) || wo(C.expression)) && Mu();
      }
      function Uf(C) {
        const _e = dr(101, C.pos, wa, C);
        $r(), dr(21, _e, Sn, C), Ye(C.expression), dr(22, C.expression.end, Sn, C), Pf(C, C.thenStatement), C.elseStatement && (up(C, C.thenStatement, C.elseStatement), dr(93, C.thenStatement.end, wa, C), C.elseStatement.kind === 246 ? ($r(), Lr(C.elseStatement)) : Pf(C, C.elseStatement));
      }
      function Z(C, _e) {
        const Et = dr(117, _e, wa, C);
        $r(), dr(21, Et, Sn, C), Ye(C.expression), dr(22, C.expression.end, Sn, C);
      }
      function st(C) {
        dr(92, C.pos, wa, C), Pf(C, C.statement), Wa(C.statement) && !de ? $r() : up(C, C.statement, C.expression), Z(C, C.statement.end), Mu();
      }
      function Rt(C) {
        Z(C, C.pos), Pf(C, C.statement);
      }
      function F(C) {
        const _e = dr(99, C.pos, wa, C);
        $r();
        let Et = dr(21, _e, Sn, C);
        Bt(C.initializer), Et = dr(27, C.initializer ? C.initializer.end : Et, Sn, C), k2(C.condition), Et = dr(27, C.condition ? C.condition.end : Et, Sn, C), k2(C.incrementor), dr(22, C.incrementor ? C.incrementor.end : Et, Sn, C), Pf(C, C.statement);
      }
      function ve(C) {
        const _e = dr(99, C.pos, wa, C);
        $r(), dr(21, _e, Sn, C), Bt(C.initializer), $r(), dr(103, C.initializer.end, wa, C), $r(), Ye(C.expression), dr(22, C.expression.end, Sn, C), Pf(C, C.statement);
      }
      function qe(C) {
        const _e = dr(99, C.pos, wa, C);
        $r(), Fs(C.awaitModifier), dr(21, _e, Sn, C), Bt(C.initializer), $r(), dr(165, C.initializer.end, wa, C), $r(), Ye(C.expression), dr(22, C.expression.end, Sn, C), Pf(C, C.statement);
      }
      function Bt(C) {
        C !== void 0 && (C.kind === 262 ? Lr(C) : Ye(C));
      }
      function Rr(C) {
        dr(88, C.pos, wa, C), Cd(C.label), Mu();
      }
      function cn(C) {
        dr(83, C.pos, wa, C), Cd(C.label), Mu();
      }
      function dr(C, _e, Et, nr, Nn) {
        const Ui = Ca(nr), oa = Ui && Ui.kind === nr.kind, sa = _e;
        if (oa && N && (_e = gs(N.text, _e)), oa && nr.pos !== sa) {
          const Vs = Nn && N && !xp(sa, _e, N);
          Vs && xg(), I1(sa), Vs && sd();
        }
        if (!T && (C === 19 || C === 20) ? _e = Zv(C, _e, Et, nr) : _e = mh(C, Et, _e), oa && nr.end !== _e) {
          const Vs = nr.kind === 295;
          Xm(_e, !Vs, Vs);
        }
        return _e;
      }
      function Cn(C) {
        return C.kind === 2 || !!C.hasTrailingNewLine;
      }
      function fs(C) {
        if (!N) return !1;
        const _e = jg(N.text, C.pos);
        if (_e) {
          const Et = Ca(C);
          if (Et && E_(Et.parent)) return !0;
        }
        return _t(_e, Cn) || _t(C6(C), Cn) ? !0 : Gte(C) ? C.pos !== C.expression.pos && _t(Ly(N.text, C.expression.pos), Cn) ? !0 : fs(C.expression) : !1;
      }
      function ji(C) {
        if (!Ut) switch (C.kind) {
          case 356:
            if (fs(C)) {
              const _e = Ca(C);
              if (_e && E_(_e)) {
                const Et = A.createParenthesizedExpression(C.expression);
                return Fn(Et, C), pt(Et, _e), Et;
              }
              return A.createParenthesizedExpression(C);
            }
            return A.updatePartiallyEmittedExpression(C, ji(C.expression));
          case 212:
            return A.updatePropertyAccessExpression(C, ji(C.expression), C.name);
          case 213:
            return A.updateElementAccessExpression(C, ji(C.expression), C.argumentExpression);
          case 214:
            return A.updateCallExpression(C, ji(C.expression), C.typeArguments, C.arguments);
          case 216:
            return A.updateTaggedTemplateExpression(C, ji(C.tag), C.typeArguments, C.template);
          case 226:
            return A.updatePostfixUnaryExpression(C, ji(C.operand));
          case 227:
            return A.updateBinaryExpression(C, ji(C.left), C.operatorToken, C.right);
          case 228:
            return A.updateConditionalExpression(C, ji(C.condition), C.questionToken, C.whenTrue, C.colonToken, C.whenFalse);
          case 235:
            return A.updateAsExpression(C, ji(C.expression), C.type);
          case 239:
            return A.updateSatisfiesExpression(C, ji(C.expression), C.type);
          case 236:
            return A.updateNonNullExpression(C, ji(C.expression));
        }
        return C;
      }
      function Fc(C) {
        return ji(zr.parenthesizeExpressionForDisallowedComma(C));
      }
      function Ul(C) {
        dr(107, C.pos, wa, C), k2(C.expression && ji(C.expression), ji), Mu();
      }
      function Lu(C) {
        const _e = dr(118, C.pos, wa, C);
        $r(), dr(21, _e, Sn, C), Ye(C.expression), dr(22, C.expression.end, Sn, C), Pf(C, C.statement);
      }
      function N_(C) {
        const _e = dr(109, C.pos, wa, C);
        $r(), dr(21, _e, Sn, C), Ye(C.expression), dr(22, C.expression.end, Sn, C), $r(), Lr(C.caseBlock);
      }
      function cu(C) {
        Lr(C.label), dr(59, C.label.end, Sn, C), $r(), Lr(C.statement);
      }
      function lh(C) {
        dr(111, C.pos, wa, C), k2(ji(C.expression), ji), Mu();
      }
      function X0(C) {
        dr(113, C.pos, wa, C), $r(), Lr(C.tryBlock), C.catchClause && (up(C, C.tryBlock, C.catchClause), Lr(C.catchClause)), C.finallyBlock && (up(C, C.catchClause || C.tryBlock, C.finallyBlock), dr(98, (C.catchClause || C.tryBlock).end, wa, C), $r(), Lr(C.finallyBlock));
      }
      function Q0(C) {
        Zv(89, C.pos, wa), Mu();
      }
      function vg(C) {
        var _e, Et, nr;
        Lr(C.name), Lr(C.exclamationToken), ay(C.type), kd(C.initializer, ((_e = C.type) == null ? void 0 : _e.end) ?? ((nr = (Et = C.name.emitNode) == null ? void 0 : Et.typeNode) == null ? void 0 : nr.end) ?? C.name.end, C, zr.parenthesizeExpressionForDisallowedComma);
      }
      function r0(C) {
        X3(C) ? (wa("await"), $r(), wa("using")) : wa(v5(C) ? "let" : i6(C) ? "const" : Q3(C) ? "using" : "var"), $r(), to(C, C.declarations, 528);
      }
      function S1(C) {
        Y0(C);
      }
      function Y0(C) {
        uu(C, C.modifiers, !1), wa("function"), Lr(C.asteriskToken), $r(), ha(C.name), Vf(C, Sd, bg);
      }
      function Vf(C, _e, Et) {
        const nr = Bs(C) & 131072;
        nr && xg(), hh(C), bt(C.parameters, Yl), _e(C), Et(C), Dd(C), nr && sd();
      }
      function bg(C) {
        const _e = C.body;
        _e ? ze(_e) : Mu();
      }
      function T1(C) {
        Mu();
      }
      function Sd(C) {
        i0(C, C.typeParameters), Gm(C, C.parameters), ay(C.type);
      }
      function qf(C) {
        if (Bs(C) & 1) return !0;
        if (C.multiLine || !wo(C) && N && !DS(C, N) || D1(C, ul(C.statements), 2) || _p(C, Wo(C.statements), 2, C.statements)) return !1;
        let _e;
        for (const Et of C.statements) {
          if (gT(_e, Et, 2) > 0) return !1;
          _e = Et;
        }
        return !0;
      }
      function ze(C) {
        Yl(C), c?.(C), $r(), Sn("{"), xg();
        const _e = qf(C) ? at : At;
        Tc(C, C.statements, _e), sd(), Zv(20, C.statements.end, Sn, C), _?.(C);
      }
      function at(C) {
        At(C, !0);
      }
      function At(C, _e) {
        const Et = Xv(C.statements), nr = Se.getTextPos();
        fr(C), Et === 0 && nr === Se.getTextPos() && _e ? (sd(), to(C, C.statements, 768), xg()) : to(C, C.statements, 1, void 0, Et);
      }
      function yr(C) {
        Br(C);
      }
      function Br(C) {
        uu(C, C.modifiers, !0), dr(86, Em(C).pos, wa, C), C.name && ($r(), ha(C.name));
        const _e = Bs(C) & 131072;
        _e && xg(), i0(C, C.typeParameters), to(C, C.heritageClauses, 0), $r(), Sn("{"), hh(C), bt(C.members, vT), to(C, C.members, 129), Dd(C), Sn("}"), _e && sd();
      }
      function Tn(C) {
        uu(C, C.modifiers, !1), wa("interface"), $r(), Lr(C.name), i0(C, C.typeParameters), to(C, C.heritageClauses, 512), $r(), Sn("{"), hh(C), bt(C.members, vT), to(C, C.members, 129), Dd(C), Sn("}");
      }
      function Er(C) {
        uu(C, C.modifiers, !1), wa("type"), $r(), Lr(C.name), i0(C, C.typeParameters), $r(), Sn("="), $r(), Lr(C.type), Mu();
      }
      function hn(C) {
        uu(C, C.modifiers, !1), wa("enum"), $r(), Lr(C.name), $r(), Sn("{"), to(C, C.members, 145), Sn("}");
      }
      function Vr(C) {
        uu(C, C.modifiers, !1), ~C.flags & 2048 && (wa(C.flags & 32 ? "namespace" : "module"), $r()), Lr(C.name);
        let _e = C.body;
        if (!_e) return Mu();
        for (; _e && Qc(_e); )
          Sn("."), Lr(_e.name), _e = _e.body;
        $r(), Lr(_e);
      }
      function li(C) {
        hh(C), bt(C.statements, Yl), Fu(C, LE(C)), Dd(C);
      }
      function ki(C) {
        dr(19, C.pos, Sn, C), to(C, C.clauses, 129), dr(20, C.clauses.end, Sn, C, !0);
      }
      function Zi(C) {
        uu(C, C.modifiers, !1), dr(102, C.modifiers ? C.modifiers.end : C.pos, wa, C), $r(), C.isTypeOnly && (dr(156, C.pos, wa, C), $r()), Lr(C.name), $r(), dr(64, C.name.end, Sn, C), $r(), yo(C.moduleReference), Mu();
      }
      function yo(C) {
        C.kind === 80 ? Ye(C) : Lr(C);
      }
      function Jc(C) {
        uu(C, C.modifiers, !1), dr(102, C.modifiers ? C.modifiers.end : C.pos, wa, C), $r(), C.importClause && (Lr(C.importClause), $r(), dr(161, C.importClause.end, wa, C), $r()), Ye(C.moduleSpecifier), C.attributes && Cd(C.attributes), Mu();
      }
      function Fp(C) {
        C.phaseModifier !== void 0 && (dr(C.phaseModifier, C.pos, wa, C), $r()), Lr(C.name), C.name && C.namedBindings && (dr(28, C.name.end, Sn, C), $r()), Lr(C.namedBindings);
      }
      function Td(C) {
        const _e = dr(42, C.pos, Sn, C);
        $r(), dr(130, _e, wa, C), $r(), Lr(C.name);
      }
      function tm(C) {
        Yk(C);
      }
      function xd(C) {
        Zk(C);
      }
      function rm(C) {
        const _e = dr(95, C.pos, wa, C);
        $r(), C.isExportEquals ? dr(64, _e, ly, C) : dr(90, _e, wa, C), $r(), Ye(C.expression, C.isExportEquals ? zr.getParenthesizeRightSideOfBinaryForOperator(64) : zr.parenthesizeExpressionOfExportDefault), Mu();
      }
      function nm(C) {
        uu(C, C.modifiers, !1);
        let _e = dr(95, C.pos, wa, C);
        $r(), C.isTypeOnly && (_e = dr(156, _e, wa, C), $r()), C.exportClause ? Lr(C.exportClause) : _e = dr(42, _e, Sn, C), C.moduleSpecifier && ($r(), dr(161, C.exportClause ? C.exportClause.end : _e, wa, C), $r(), Ye(C.moduleSpecifier)), C.attributes && Cd(C.attributes), Mu();
      }
      function Wm(C) {
        Sn("{"), $r(), wa(C.token === 132 ? "assert" : "with"), Sn(":"), $r();
        const _e = C.elements;
        to(C, _e, 526226), $r(), Sn("}");
      }
      function Qk(C) {
        dr(C.token, C.pos, wa, C), $r();
        const _e = C.elements;
        to(C, _e, 526226);
      }
      function g2(C) {
        Lr(C.name), Sn(":"), $r();
        const _e = C.value;
        (Bs(_e) & 1024) === 0 && Xm(Pm(_e).pos), Lr(_e);
      }
      function x1(C) {
        let _e = dr(95, C.pos, wa, C);
        $r(), _e = dr(130, _e, wa, C), $r(), _e = dr(145, _e, wa, C), $r(), Lr(C.name), Mu();
      }
      function sT(C) {
        const _e = dr(42, C.pos, Sn, C);
        $r(), dr(130, _e, wa, C), $r(), Lr(C.name);
      }
      function h2(C) {
        Yk(C);
      }
      function Um(C) {
        Zk(C);
      }
      function Yk(C) {
        Sn("{"), to(C, C.elements, 525136), Sn("}");
      }
      function Zk(C) {
        C.isTypeOnly && (wa("type"), $r()), C.propertyName && (Lr(C.propertyName), $r(), dr(130, C.propertyName.end, wa, C), $r()), Lr(C.name);
      }
      function gP(C) {
        wa("require"), Sn("("), Ye(C.expression), Sn(")");
      }
      function n0(C) {
        Lr(C.openingElement), to(C, C.children, 262144), Lr(C.closingElement);
      }
      function Kk(C) {
        Sn("<"), b2(C.tagName), qm(C, C.typeArguments), $r(), Lr(C.attributes), Sn("/>");
      }
      function y2(C) {
        Lr(C.openingFragment), to(C, C.children, 262144), Lr(C.closingFragment);
      }
      function Z0(C) {
        if (Sn("<"), qd(C)) {
          const _e = oC(C.tagName, C);
          b2(C.tagName), qm(C, C.typeArguments), C.attributes.properties && C.attributes.properties.length > 0 && $r(), Lr(C.attributes), hT(C.attributes, C), _y(_e);
        }
        Sn(">");
      }
      function k1(C) {
        Se.writeLiteral(C.text);
      }
      function eC(C) {
        Sn("</"), Qb(C) && b2(C.tagName), Sn(">");
      }
      function PE(C) {
        to(C, C.properties, 262656);
      }
      function tC(C) {
        Lr(C.name), Qv("=", Sn, C.initializer, Pt);
      }
      function oT(C) {
        Sn("{..."), Ye(C.expression), Sn("}");
      }
      function v2(C) {
        let _e = !1;
        return v3(N?.text || "", C + 1, () => _e = !0), _e;
      }
      function K0(C) {
        let _e = !1;
        return y3(N?.text || "", C + 1, () => _e = !0), _e;
      }
      function AE(C) {
        return v2(C) || K0(C);
      }
      function rC(C) {
        var _e;
        if (C.expression || !Ut && !wo(C) && AE(C.pos)) {
          const Et = N && !wo(C) && Za(N, C.pos).line !== Za(N, C.end).line;
          Et && Se.increaseIndent();
          const nr = dr(19, C.pos, Sn, C);
          Lr(C.dotDotDotToken), Ye(C.expression), dr(20, ((_e = C.expression) == null ? void 0 : _e.end) || nr, Sn, C), Et && Se.decreaseIndent();
        }
      }
      function cT(C) {
        ha(C.namespace), Sn(":"), ha(C.name);
      }
      function b2(C) {
        C.kind === 80 ? Ye(C) : Lr(C);
      }
      function NE(C) {
        dr(84, C.pos, wa, C), $r(), Ye(C.expression, zr.parenthesizeExpressionForDisallowedComma), lT(C, C.statements, C.expression.end);
      }
      function nC(C) {
        const _e = dr(90, C.pos, wa, C);
        lT(C, C.statements, _e);
      }
      function lT(C, _e, Et) {
        const nr = _e.length === 1 && (!N || wo(C) || wo(_e[0]) || sO(C, _e[0], N));
        let Nn = 163969;
        nr ? (Zv(59, Et, Sn, C), $r(), Nn &= -130) : dr(59, Et, Sn, C), to(C, _e, Nn);
      }
      function ey(C) {
        $r(), mh(C.token, wa), $r(), to(C, C.types, 528);
      }
      function uh(C) {
        const _e = dr(85, C.pos, wa, C);
        $r(), C.variableDeclaration && (dr(21, _e, Sn, C), Lr(C.variableDeclaration), dr(22, C.variableDeclaration.end, Sn, C), $r()), Lr(C.block);
      }
      function ty(C) {
        Lr(C.name), Sn(":"), $r();
        const _e = C.initializer;
        (Bs(_e) & 1024) === 0 && Xm(Pm(_e).pos), Ye(_e, zr.parenthesizeExpressionForDisallowedComma);
      }
      function _h(C) {
        Lr(C.name), C.objectAssignmentInitializer && ($r(), Sn("="), $r(), Ye(C.objectAssignmentInitializer, zr.parenthesizeExpressionForDisallowedComma));
      }
      function Hv(C) {
        C.expression && (dr(26, C.pos, Sn, C), Ye(C.expression, zr.parenthesizeExpressionForDisallowedComma));
      }
      function ry(C) {
        Lr(C.name), kd(C.initializer, C.name.end, C, zr.parenthesizeExpressionForDisallowedComma);
      }
      function S2(C) {
        if (ce("/**"), C.comment) {
          const _e = w3(C.comment);
          if (_e) {
            const Et = _e.split(/\r\n?|\n/);
            for (const nr of Et)
              d_(), $r(), Sn("*"), $r(), ce(nr);
          }
        }
        C.tags && (C.tags.length === 1 && C.tags[0].kind === 345 && !C.comment ? ($r(), Lr(C.tags[0])) : to(C, C.tags, 33)), $r(), ce("*/");
      }
      function uT(C) {
        ph(C.tagName), Vm(C.typeExpression), Sg(C.comment);
      }
      function C1(C) {
        ph(C.tagName), Lr(C.name), Sg(C.comment);
      }
      function Ws(C) {
        ph(C.tagName), $r(), C.importClause && (Lr(C.importClause), $r(), dr(161, C.importClause.end, wa, C), $r()), Ye(C.moduleSpecifier), C.attributes && Cd(C.attributes), Sg(C.comment);
      }
      function _T(C) {
        $r(), Sn("{"), Lr(C.name), Sn("}");
      }
      function Ql(C) {
        ph(C.tagName), $r(), Sn("{"), Lr(C.class), Sn("}"), Sg(C.comment);
      }
      function im(C) {
        ph(C.tagName), Vm(C.constraint), $r(), to(C, C.typeParameters, 528), Sg(C.comment);
      }
      function fh(C) {
        ph(C.tagName), C.typeExpression && (C.typeExpression.kind === 310 ? Vm(C.typeExpression) : ($r(), Sn("{"), ce("Object"), C.typeExpression.isArrayType && (Sn("["), Sn("]")), Sn("}"))), C.fullName && ($r(), Lr(C.fullName)), Sg(C.comment), C.typeExpression && C.typeExpression.kind === 323 && lu(C.typeExpression);
      }
      function cp(C) {
        ph(C.tagName), C.name && ($r(), Lr(C.name)), Sg(C.comment), Lc(C.typeExpression);
      }
      function lp(C) {
        Sg(C.comment), Lc(C.typeExpression);
      }
      function Sc(C) {
        ph(C.tagName), Sg(C.comment);
      }
      function lu(C) {
        to(C, A.createNodeArray(C.jsDocPropertyTags), 33);
      }
      function Lc(C) {
        C.typeParameters && to(C, A.createNodeArray(C.typeParameters), 33), C.parameters && to(C, A.createNodeArray(C.parameters), 33), C.type && (d_(), $r(), Sn("*"), $r(), Lr(C.type));
      }
      function T2(C) {
        ph(C.tagName), Vm(C.typeExpression), $r(), C.isBracketed && Sn("["), Lr(C.name), C.isBracketed && Sn("]"), Sg(C.comment);
      }
      function ph(C) {
        Sn("@"), Lr(C);
      }
      function Sg(C) {
        const _e = w3(C);
        _e && ($r(), ce(_e));
      }
      function Vm(C) {
        C && ($r(), Sn("{"), Lr(C.type), Sn("}"));
      }
      function E1(C) {
        d_();
        const _e = C.statements;
        if (_e.length === 0 || !bm(_e[0]) || wo(_e[0])) {
          Tc(C, _e, iC);
          return;
        }
        iC(C);
      }
      function x2(C) {
        $v(C.syntheticFileReferences || [], C.syntheticTypeReferences || [], C.syntheticLibReferences || []);
      }
      function IE(C) {
        C.isDeclarationFile && $v(C.referencedFiles, C.typeReferenceDirectives, C.libReferenceDirectives);
      }
      function $v(C, _e, Et) {
        if (N && N.moduleName && (uy(`/// <amd-module name="${N.moduleName}" />`), d_()), N && N.amdDependencies) for (const Nn of N.amdDependencies)
          Nn.name ? uy(`/// <amd-dependency name="${Nn.name}" path="${Nn.path}" />`) : uy(`/// <amd-dependency path="${Nn.path}" />`), d_();
        function nr(Nn, Ui) {
          for (const oa of Ui) {
            const sa = oa.resolutionMode ? `resolution-mode="${oa.resolutionMode === 99 ? "import" : "require"}" ` : "", Vs = oa.preserve ? 'preserve="true" ' : "";
            uy(`/// <reference ${Nn}="${oa.fileName}" ${sa}${Vs}/>`), d_();
          }
        }
        nr("path", C), nr("types", _e), nr("lib", Et);
      }
      function iC(C) {
        const _e = C.statements;
        hh(C), bt(C.statements, Yl), fr(C);
        const Et = qs(_e, (nr) => !bm(nr));
        IE(C), to(C, _e, 1, void 0, Et === -1 ? _e.length : Et), Dd(C);
      }
      function OE(C) {
        const _e = Bs(C);
        !(_e & 1024) && C.pos !== C.expression.pos && Xm(C.expression.pos), Ye(C.expression), !(_e & 2048) && C.end !== C.expression.end && I1(C.expression.end);
      }
      function ny(C) {
        dh(C, C.elements, 528, void 0);
      }
      function Xv(C, _e, Et) {
        let nr = !!_e;
        for (let Nn = 0; Nn < C.length; Nn++) {
          const Ui = C[Nn];
          if (bm(Ui))
            (!Et || !Et.has(Ui.expression.text)) && (nr && (nr = !1, zn(_e)), d_(), Lr(Ui), Et && Et.add(Ui.expression.text));
          else return Nn;
        }
        return C.length;
      }
      function We(C) {
        if (Pi(C)) Xv(C.statements, C);
        else {
          const _e = /* @__PURE__ */ new Set();
          for (const Et of C.sourceFiles) Xv(Et.statements, Et, _e);
          zn(void 0);
        }
      }
      function iy(C) {
        if (Pi(C)) {
          const _e = J7(C.text);
          if (_e)
            return uy(_e), d_(), !0;
        } else for (const _e of C.sourceFiles) if (iy(_e)) return !0;
      }
      function Tg(C, _e) {
        if (!C) return;
        const Et = ce;
        ce = _e, Lr(C), ce = Et;
      }
      function uu(C, _e, Et) {
        if (_e?.length) {
          if (hr(_e, hs)) return am(C, _e);
          if (hr(_e, pl))
            return Et ? fT(C, _e) : C.pos;
          u?.(_e);
          let nr, Nn, Ui = 0, oa = 0, sa;
          for (; Ui < _e.length; ) {
            for (; oa < _e.length; ) {
              if (sa = _e[oa], Nn = pl(sa) ? "decorators" : "modifiers", nr === void 0) nr = Nn;
              else if (Nn !== nr) break;
              oa++;
            }
            const Vs = {
              pos: -1,
              end: -1
            };
            Ui === 0 && (Vs.pos = _e.pos), oa === _e.length - 1 && (Vs.end = _e.end), (nr === "modifiers" || Et) && Wi(Lr, C, _e, nr === "modifiers" ? 2359808 : 2146305, void 0, Ui, oa - Ui, !1, Vs), Ui = oa, nr = Nn, oa++;
          }
          if (d?.(_e), sa && !Wd(sa.end)) return sa.end;
        }
        return C.pos;
      }
      function am(C, _e) {
        to(C, _e, 2359808);
        const Et = Wo(_e);
        return Et && !Wd(Et.end) ? Et.end : C.pos;
      }
      function ay(C) {
        C && (Sn(":"), $r(), Lr(C));
      }
      function kd(C, _e, Et, nr) {
        C && ($r(), dr(64, _e, ly, Et), $r(), Ye(C, nr));
      }
      function Qv(C, _e, Et, nr) {
        Et && (_e(C), nr(Et));
      }
      function Cd(C) {
        C && ($r(), Lr(C));
      }
      function k2(C, _e) {
        C && ($r(), Ye(C, _e));
      }
      function Fs(C) {
        C && (Lr(C), $r());
      }
      function Pf(C, _e) {
        Wa(_e) || Bs(C) & 1 || de && !D1(C, _e, 0) ? ($r(), Lr(_e)) : (d_(), xg(), Fz(_e) ? re(5, _e) : Lr(_e), sd());
      }
      function fT(C, _e) {
        to(C, _e, 2146305);
        const Et = Wo(_e);
        return Et && !Wd(Et.end) ? Et.end : C.pos;
      }
      function qm(C, _e) {
        to(C, _e, 53776, _i);
      }
      function i0(C, _e) {
        if (Ra(C) && C.typeArguments) return qm(C, C.typeArguments);
        to(C, _e, 53776 | (Bo(C) ? 64 : 0));
      }
      function Gm(C, _e) {
        to(C, _e, 2576);
      }
      function sy(C, _e) {
        const Et = Fg(_e);
        return Et && Et.pos === C.pos && Bo(C) && !C.type && !_t(C.modifiers) && !_t(C.typeParameters) && !_t(Et.modifiers) && !Et.dotDotDotToken && !Et.questionToken && !Et.type && !Et.initializer && Fe(Et.name);
      }
      function Yv(C, _e) {
        sy(C, _e) ? to(C, _e, 528) : Gm(C, _e);
      }
      function oy(C, _e) {
        to(C, _e, 8848);
      }
      function pT(C) {
        switch (C & 60) {
          case 0:
            break;
          case 16:
            Sn(",");
            break;
          case 4:
            $r(), Sn("|");
            break;
          case 32:
            $r(), Sn("*"), $r();
            break;
          case 8:
            $r(), Sn("&");
            break;
        }
      }
      function to(C, _e, Et, nr, Nn, Ui) {
        FE(Lr, C, _e, Et | (C && Bs(C) & 2 ? 65536 : 0), nr, Nn, Ui);
      }
      function dh(C, _e, Et, nr, Nn, Ui) {
        FE(Ye, C, _e, Et, nr, Nn, Ui);
      }
      function FE(C, _e, Et, nr, Nn, Ui = 0, oa = Et ? Et.length - Ui : 0) {
        if (Et === void 0 && nr & 16384) return;
        const sa = Et === void 0 || Ui >= Et.length || oa === 0;
        if (sa && nr & 32768) {
          u?.(Et), d?.(Et);
          return;
        }
        nr & 15360 && (Sn(qje(nr)), sa && Et && Xm(Et.pos, !0)), u?.(Et), sa ? nr & 1 && !(de && (!_e || N && DS(_e, N))) ? d_() : nr & 256 && !(nr & 524288) && $r() : Wi(C, _e, Et, nr, Nn, Ui, oa, Et.hasTrailingComma, Et), d?.(Et), nr & 15360 && (sa && Et && I1(Et.end), Sn(Gje(nr)));
      }
      function Wi(C, _e, Et, nr, Nn, Ui, oa, sa, Vs) {
        const H_ = (nr & 262144) === 0;
        let Ys = H_;
        const rb = D1(_e, Et[Ui], nr);
        rb ? (d_(rb), Ys = !1) : nr & 256 && $r(), nr & 128 && xg();
        const Lp = Qje(C, Nn);
        let If, fp = !1;
        for (let $f = 0; $f < oa; $f++) {
          const Yo = Et[Ui + $f];
          if (nr & 32)
            d_(), pT(nr);
          else if (If) {
            nr & 60 && If.end !== (_e ? _e.end : -1) && (Bs(If) & 2048 || I1(If.end)), pT(nr);
            const qE = gT(If, Yo, nr);
            qE > 0 ? ((nr & 131) === 0 && (xg(), fp = !0), Ys && nr & 60 && !Wd(Yo.pos) && Xm(Pm(Yo).pos, !!(nr & 512), !0), d_(qE), Ys = !1) : If && nr & 512 && $r();
          }
          Ys ? Xm(Pm(Yo).pos) : Ys = H_, $ = Yo.pos, Lp(Yo, C, Nn, $f), fp && (sd(), fp = !1), If = Yo;
        }
        const PT = If ? Bs(If) : 0, o0 = Ut || !!(PT & 2048), nb = sa && nr & 64 && nr & 16;
        nb && (If && !o0 ? dr(28, If.end, Sn, If) : Sn(",")), If && (_e ? _e.end : -1) !== If.end && nr & 60 && !o0 && I1(nb && Vs?.end ? Vs.end : If.end), nr & 128 && sd();
        const mC = _p(_e, Et[Ui + oa - 1], nr, Vs);
        mC ? d_(mC) : nr & 2097408 && $r();
      }
      function Pn(C) {
        Se.writeLiteral(C);
      }
      function Ku(C) {
        Se.writeStringLiteral(C);
      }
      function hP(C) {
        Se.write(C);
      }
      function cy(C, _e) {
        Se.writeSymbol(C, _e);
      }
      function Sn(C) {
        Se.writePunctuation(C);
      }
      function Mu() {
        Se.writeTrailingSemicolon(";");
      }
      function wa(C) {
        Se.writeKeyword(C);
      }
      function ly(C) {
        Se.writeOperator(C);
      }
      function aC(C) {
        Se.writeParameter(C);
      }
      function uy(C) {
        Se.writeComment(C);
      }
      function $r() {
        Se.writeSpace(" ");
      }
      function sC(C) {
        Se.writeProperty(C);
      }
      function dT(C) {
        Se.nonEscapingWrite ? Se.nonEscapingWrite(C) : Se.write(C);
      }
      function d_(C = 1) {
        for (let _e = 0; _e < C; _e++) Se.writeLine(_e > 0);
      }
      function xg() {
        Se.increaseIndent();
      }
      function sd() {
        Se.decreaseIndent();
      }
      function Zv(C, _e, Et, nr) {
        return ge ? mh(C, Et, _e) : Nf(nr, C, Et, _e, mh);
      }
      function mT(C, _e) {
        g && g(C), _e(as(C.kind)), h && h(C);
      }
      function mh(C, _e, Et) {
        const nr = as(C);
        return _e(nr), Et < 0 ? Et : Et + nr.length;
      }
      function up(C, _e, Et) {
        if (Bs(C) & 1) $r();
        else if (de) {
          const nr = Gf(C, _e, Et);
          nr ? d_(nr) : $r();
        } else d_();
      }
      function Hm(C) {
        const _e = C.split(/\r\n?|\n/), Et = HZ(_e);
        for (const nr of _e) {
          const Nn = Et ? nr.slice(Et) : nr;
          Nn.length && (d_(), ce(Nn));
        }
      }
      function Ed(C, _e) {
        C ? (xg(), d_(C)) : _e && $r();
      }
      function _y(C, _e) {
        C && sd(), _e && sd();
      }
      function D1(C, _e, Et) {
        if (Et & 2 || de) {
          if (Et & 65536) return 1;
          if (_e === void 0) return !C || N && DS(C, N) ? 0 : 1;
          if (_e.pos === $ || _e.kind === 12) return 0;
          if (N && C && !Wd(C.pos) && !wo(_e) && (!_e.parent || rc(_e.parent) === rc(C)))
            return de ? fy((nr) => See(_e.pos, C.pos, N, nr)) : sO(C, _e, N) ? 0 : 1;
          if (yT(_e, Et)) return 1;
        }
        return Et & 1 ? 1 : 0;
      }
      function gT(C, _e, Et) {
        if (Et & 2 || de) {
          if (C === void 0 || _e === void 0 || _e.kind === 12) return 0;
          if (N && !wo(C) && !wo(_e))
            return de && od(C, _e) ? fy((nr) => AJ(C, _e, N, nr)) : !de && E2(C, _e) ? IA(C, _e, N) ? 0 : 1 : Et & 65536 ? 1 : 0;
          if (yT(C, Et) || yT(_e, Et)) return 1;
        } else if (XD(_e)) return 1;
        return Et & 1 ? 1 : 0;
      }
      function _p(C, _e, Et, nr) {
        if (Et & 2 || de) {
          if (Et & 65536) return 1;
          if (_e === void 0) return !C || N && DS(C, N) ? 0 : 1;
          if (N && C && !Wd(C.pos) && !wo(_e) && (!_e.parent || _e.parent === C)) {
            if (de) {
              const Nn = nr && !Wd(nr.end) ? nr.end : _e.end;
              return fy((Ui) => Tee(Nn, C.end, N, Ui));
            }
            return yee(C, _e, N) ? 0 : 1;
          }
          if (yT(_e, Et)) return 1;
        }
        return Et & 1 && !(Et & 131072) ? 1 : 0;
      }
      function fy(C) {
        E.assert(!!de);
        const _e = C(!0);
        return _e === 0 ? C(!1) : _e;
      }
      function oC(C, _e) {
        const Et = de && D1(_e, C, 0);
        return Et && Ed(Et, !1), !!Et;
      }
      function hT(C, _e) {
        const Et = de && _p(_e, C, 0, void 0);
        Et && d_(Et);
      }
      function yT(C, _e) {
        if (wo(C)) {
          const Et = XD(C);
          return Et === void 0 ? (_e & 65536) !== 0 : Et;
        }
        return (_e & 65536) !== 0;
      }
      function Gf(C, _e, Et) {
        return Bs(C) & 262144 ? 0 : (C = gh(C), _e = gh(_e), Et = gh(Et), XD(Et) ? 1 : N && !wo(C) && !wo(_e) && !wo(Et) ? de ? fy((nr) => AJ(_e, Et, N, nr)) : IA(_e, Et, N) ? 0 : 1 : 0);
      }
      function LE(C) {
        return C.statements.length === 0 && (!N || IA(C, C, N));
      }
      function gh(C) {
        for (; C.kind === 218 && wo(C); ) C = C.expression;
        return C;
      }
      function w1(C, _e) {
        if (Ko(C) || fS(C)) return bT(C);
        if (Ts(C) && C.textSourceNode) return w1(C.textSourceNode, _e);
        const Et = N, nr = !!Et && !!C.parent && !wo(C);
        if (Jg(C)) {
          if (!nr || Sr(C) !== rc(Et)) return On(C);
        } else if (Gd(C)) {
          if (!nr || Sr(C) !== rc(Et)) return GD(C);
        } else if (E.assertNode(C, _S), !nr) return C.text;
        return Pb(Et, C, _e);
      }
      function $m(C, _e = N, Et, nr) {
        if (C.kind === 11 && C.textSourceNode) {
          const Nn = C.textSourceNode;
          if (Fe(Nn) || Oi(Nn) || V_(Nn) || Gd(Nn)) {
            const Ui = V_(Nn) ? Nn.text : w1(Nn);
            return nr ? `"${_J(Ui)}"` : Et || Bs(C) & 16777216 ? `"${dg(Ui)}"` : `"${q5(Ui)}"`;
          } else return $m(Nn, Sr(Nn), Et, nr);
        }
        return aK(C, _e, (Et ? 1 : 0) | (nr ? 2 : 0) | (e.terminateUnterminatedLiterals ? 4 : 0) | (e.target && e.target >= 8 ? 8 : 0));
      }
      function hh(C) {
        U.push(pe), pe = 0, he.push(fe), !(C && Bs(C) & 1048576) && (ie.push(W), W = 0, z.push(H), H = void 0, Q.push(se));
      }
      function Dd(C) {
        pe = U.pop(), fe = he.pop(), !(C && Bs(C) & 1048576) && (W = ie.pop(), H = z.pop(), se = Q.pop());
      }
      function yh(C) {
        (!se || se === Wo(Q)) && (se = /* @__PURE__ */ new Set()), se.add(C);
      }
      function Kv(C) {
        (!fe || fe === Wo(he)) && (fe = /* @__PURE__ */ new Set()), fe.add(C);
      }
      function Yl(C) {
        if (C)
          switch (C.kind) {
            case 242:
              bt(C.statements, Yl);
              break;
            case 257:
            case 255:
            case 247:
            case 248:
              Yl(C.statement);
              break;
            case 246:
              Yl(C.thenStatement), Yl(C.elseStatement);
              break;
            case 249:
            case 251:
            case 250:
              Yl(C.initializer), Yl(C.statement);
              break;
            case 256:
              Yl(C.caseBlock);
              break;
            case 270:
              bt(C.clauses, Yl);
              break;
            case 297:
            case 298:
              bt(C.statements, Yl);
              break;
            case 259:
              Yl(C.tryBlock), Yl(C.catchClause), Yl(C.finallyBlock);
              break;
            case 300:
              Yl(C.variableDeclaration), Yl(C.block);
              break;
            case 244:
              Yl(C.declarationList);
              break;
            case 262:
              bt(C.declarations, Yl);
              break;
            case 261:
            case 170:
            case 209:
            case 264:
              vh(C.name);
              break;
            case 263:
              vh(C.name), Bs(C) & 1048576 && (bt(C.parameters, Yl), Yl(C.body));
              break;
            case 207:
            case 208:
              bt(C.elements, Yl);
              break;
            case 273:
              Yl(C.importClause);
              break;
            case 274:
              vh(C.name), Yl(C.namedBindings);
              break;
            case 275:
              vh(C.name);
              break;
            case 281:
              vh(C.name);
              break;
            case 276:
              bt(C.elements, Yl);
              break;
            case 277:
              vh(C.propertyName || C.name);
              break;
          }
      }
      function vT(C) {
        if (C)
          switch (C.kind) {
            case 304:
            case 305:
            case 173:
            case 172:
            case 175:
            case 174:
            case 178:
            case 179:
              vh(C.name);
              break;
          }
      }
      function vh(C) {
        C && (Ko(C) || fS(C) ? bT(C) : Ja(C) && Yl(C));
      }
      function bT(C) {
        const _e = C.emitNode.autoGenerate;
        if ((_e.flags & 7) === 4) return C2(hN(C), Oi(C), _e.flags, _e.prefix, _e.suffix);
        {
          const Et = _e.id;
          return G[Et] || (G[Et] = Zl(C));
        }
      }
      function C2(C, _e, Et, nr, Nn) {
        const Ui = Hs(C), oa = _e ? R : M;
        return oa[Ui] || (oa[Ui] = zc(C, _e, Et ?? 0, U6(nr, bT), U6(Nn)));
      }
      function a0(C, _e) {
        return TT(C, _e) && !ST(C, _e) && !L.has(C);
      }
      function ST(C, _e) {
        let Et, nr;
        if (_e ? (Et = fe, nr = he) : (Et = se, nr = Q), Et?.has(C)) return !0;
        for (let Nn = nr.length - 1; Nn >= 0; Nn--)
          if (Et !== nr[Nn] && (Et = nr[Nn], Et?.has(C)))
            return !0;
        return !1;
      }
      function TT(C, _e) {
        return N ? f5(N, C, n) : !0;
      }
      function ME(C, _e) {
        for (let Et = _e; Et && Lb(Et, _e); Et = Et.nextContainer) if (og(Et) && Et.locals) {
          const nr = Et.locals.get(mc(C));
          if (nr && nr.flags & 3257279) return !1;
        }
        return !0;
      }
      function yP(C) {
        switch (C) {
          case "":
            return W;
          case "#":
            return pe;
          default:
            return H?.get(C) ?? 0;
        }
      }
      function RE(C, _e) {
        switch (C) {
          case "":
            W = _e;
            break;
          case "#":
            pe = _e;
            break;
          default:
            H ?? (H = /* @__PURE__ */ new Map()), H.set(C, _e);
            break;
        }
      }
      function P1(C, _e, Et, nr, Nn) {
        nr.length > 0 && nr.charCodeAt(0) === 35 && (nr = nr.slice(1));
        const Ui = Av(Et, nr, "", Nn);
        let oa = yP(Ui);
        if (C && !(oa & C)) {
          const sa = Av(Et, nr, C === 268435456 ? "_i" : "_n", Nn);
          if (a0(sa, Et))
            return oa |= C, Et ? Kv(sa) : _e && yh(sa), RE(Ui, oa), sa;
        }
        for (; ; ) {
          const sa = oa & 268435455;
          if (oa++, sa !== 8 && sa !== 13) {
            const Vs = sa < 26 ? "_" + String.fromCharCode(97 + sa) : "_" + (sa - 26), H_ = Av(Et, nr, Vs, Nn);
            if (a0(H_, Et))
              return Et ? Kv(H_) : _e && yh(H_), RE(Ui, oa), H_;
          }
        }
      }
      function A1(C, _e = a0, Et, nr, Nn, Ui, oa) {
        if (C.length > 0 && C.charCodeAt(0) === 35 && (C = C.slice(1)), Ui.length > 0 && Ui.charCodeAt(0) === 35 && (Ui = Ui.slice(1)), Et) {
          const Vs = Av(Nn, Ui, C, oa);
          if (_e(Vs, Nn))
            return Nn ? Kv(Vs) : nr ? yh(Vs) : L.add(Vs), Vs;
        }
        C.charCodeAt(C.length - 1) !== 95 && (C += "_");
        let sa = 1;
        for (; ; ) {
          const Vs = Av(Nn, Ui, C + sa, oa);
          if (_e(Vs, Nn))
            return Nn ? Kv(Vs) : nr ? yh(Vs) : L.add(Vs), Vs;
          sa++;
        }
      }
      function cC(C) {
        return A1(C, TT, !0, !1, !1, "", "");
      }
      function vP(C) {
        const _e = w1(C.name);
        return ME(_e, qn(C, og)) ? _e : A1(_e, a0, !1, !1, !1, "", "");
      }
      function xT(C) {
        const _e = Lx(C);
        return A1(Ts(_e) ? oK(_e.text) : "module", a0, !1, !1, !1, "", "");
      }
      function jE() {
        return A1("default", a0, !1, !1, !1, "", "");
      }
      function s0() {
        return A1("class", a0, !1, !1, !1, "", "");
      }
      function lC(C, _e, Et, nr) {
        return Fe(C.name) ? C2(C.name, _e) : P1(0, !1, _e, Et, nr);
      }
      function zc(C, _e, Et, nr, Nn) {
        switch (C.kind) {
          case 80:
          case 81:
            return A1(w1(C), a0, !!(Et & 16), !!(Et & 8), _e, nr, Nn);
          case 268:
          case 267:
            return E.assert(!nr && !Nn && !_e), vP(C);
          case 273:
          case 279:
            return E.assert(!nr && !Nn && !_e), xT(C);
          case 263:
          case 264: {
            E.assert(!nr && !Nn && !_e);
            const Ui = C.name;
            return Ui && !Ko(Ui) ? zc(Ui, !1, Et, nr, Nn) : jE();
          }
          case 278:
            return E.assert(!nr && !Nn && !_e), jE();
          case 232:
            return E.assert(!nr && !Nn && !_e), s0();
          case 175:
          case 178:
          case 179:
            return lC(C, _e, nr, Nn);
          case 168:
            return P1(0, !0, _e, nr, Nn);
          default:
            return P1(0, !1, _e, nr, Nn);
        }
      }
      function Zl(C) {
        const _e = C.emitNode.autoGenerate, Et = U6(_e.prefix, bT), nr = U6(_e.suffix);
        switch (_e.flags & 7) {
          case 1:
            return P1(0, !!(_e.flags & 8), Oi(C), Et, nr);
          case 2:
            return E.assertNode(C, Fe), P1(268435456, !!(_e.flags & 8), !1, Et, nr);
          case 3:
            return A1(On(C), _e.flags & 32 ? TT : a0, !!(_e.flags & 16), !!(_e.flags & 8), Oi(C), Et, nr);
        }
        return E.fail(`Unsupported GeneratedIdentifierKind: ${E.formatEnum(_e.flags & 7, gj, !0)}.`);
      }
      function uC(C, _e) {
        const Et = it(2, C, _e), nr = ae, Nn = Ce, Ui = ue;
        m_(_e), Et(C, _e), Hf(_e, nr, Nn, Ui);
      }
      function m_(C) {
        const _e = Bs(C), Et = Pm(C);
        BE(C, _e, Et.pos, Et.end), _e & 4096 && (Ut = !0);
      }
      function Hf(C, _e, Et, nr) {
        const Nn = Bs(C), Ui = Pm(C);
        Nn & 4096 && (Ut = !1), wd(C, Nn, Ui.pos, Ui.end, _e, Et, nr);
        const oa = Pte(C);
        oa && wd(C, Nn, oa.pos, oa.end, _e, Et, nr);
      }
      function BE(C, _e, Et, nr) {
        Ct(), Ft = !1;
        const Nn = Et < 0 || (_e & 1024) !== 0 || C.kind === 12, Ui = nr < 0 || (_e & 2048) !== 0 || C.kind === 12;
        (Et > 0 || nr > 0) && Et !== nr && (Nn || N1(Et, C.kind !== 354), (!Nn || Et >= 0 && (_e & 1024) !== 0) && (ae = Et), (!Ui || nr >= 0 && (_e & 2048) !== 0) && (Ce = nr, C.kind === 262 && (ue = nr))), bt(C6(C), JE), Kt();
      }
      function wd(C, _e, Et, nr, Nn, Ui, oa) {
        Ct();
        const sa = nr < 0 || (_e & 2048) !== 0 || C.kind === 12;
        bt(tN(C), py), (Et > 0 || nr > 0) && Et !== nr && (ae = Nn, Ce = Ui, ue = oa, !sa && C.kind !== 354 && Af(nr)), Kt();
      }
      function JE(C) {
        (C.hasLeadingNewline || C.kind === 2) && Se.writeLine(), kT(C), C.hasTrailingNewLine || C.kind === 2 ? Se.writeLine() : Se.writeSpace(" ");
      }
      function py(C) {
        Se.isAtStartOfLine() || Se.writeSpace(" "), kT(C), C.hasTrailingNewLine && Se.writeLine();
      }
      function kT(C) {
        const _e = _C(C);
        h6(_e, C.kind === 3 ? Sx(_e) : void 0, Se, 0, _e.length, k);
      }
      function _C(C) {
        return C.kind === 3 ? `/*${C.text}*/` : `//${C.text}`;
      }
      function Tc(C, _e, Et) {
        Ct();
        const { pos: nr, end: Nn } = _e, Ui = Bs(C), oa = nr < 0 || (Ui & 1024) !== 0, sa = Ut || Nn < 0 || (Ui & 2048) !== 0;
        oa || ET(_e), Kt(), Ui & 4096 && !Ut ? (Ut = !0, Et(C), Ut = !1) : Et(C), Ct(), sa || (N1(_e.end, !0), Ft && !Se.isAtStartOfLine() && Se.writeLine()), Kt();
      }
      function E2(C, _e) {
        return C = rc(C), C.parent && C.parent === rc(_e).parent;
      }
      function od(C, _e) {
        if (_e.pos < C.end) return !1;
        C = rc(C), _e = rc(_e);
        const Et = C.parent;
        if (!Et || Et !== _e.parent) return !1;
        const nr = tte(C), Nn = nr?.indexOf(C);
        return Nn !== void 0 && Nn > -1 && nr.indexOf(_e) === Nn + 1;
      }
      function N1(C, _e) {
        Ft = !1, _e ? C === 0 && N?.isDeclarationFile ? w2(C, Ru) : w2(C, tb) : C === 0 && w2(C, zE);
      }
      function zE(C, _e, Et, nr, Nn) {
        DT(C, _e) && tb(C, _e, Et, nr, Nn);
      }
      function Ru(C, _e, Et, nr, Nn) {
        DT(C, _e) || tb(C, _e, Et, nr, Nn);
      }
      function eb(C, _e) {
        return e.onlyPrintJsDocStyle ? aW(C, _e) || p5(C, _e) : !0;
      }
      function tb(C, _e, Et, nr, Nn) {
        !N || !eb(N.text, C) || (Ft || (iee(Da(), Se, Nn, C), Ft = !0), ys(C), h6(N.text, Da(), Se, C, _e, k), ys(_e), nr ? Se.writeLine() : Et === 3 && Se.writeSpace(" "));
      }
      function I1(C) {
        Ut || C === -1 || N1(C, !0);
      }
      function Af(C) {
        O1(C, D2);
      }
      function D2(C, _e, Et, nr) {
        !N || !eb(N.text, C) || (Se.isAtStartOfLine() || Se.writeSpace(" "), ys(C), h6(N.text, Da(), Se, C, _e, k), ys(_e), nr && Se.writeLine());
      }
      function Xm(C, _e, Et) {
        Ut || (Ct(), O1(C, _e ? D2 : Et ? WE : CT), Kt());
      }
      function WE(C, _e, Et) {
        N && (ys(C), h6(N.text, Da(), Se, C, _e, k), ys(_e), Et === 2 && Se.writeLine());
      }
      function CT(C, _e, Et, nr) {
        N && (ys(C), h6(N.text, Da(), Se, C, _e, k), ys(_e), nr ? Se.writeLine() : Se.writeSpace(" "));
      }
      function w2(C, _e) {
        N && (ae === -1 || C !== ae) && (P2(C) ? UE(_e) : y3(N.text, C, _e, C));
      }
      function O1(C, _e) {
        N && (Ce === -1 || C !== Ce && C !== ue) && v3(N.text, C, _e);
      }
      function P2(C) {
        return Xe !== void 0 && ws(Xe).nodePos === C;
      }
      function UE(C) {
        if (!N) return;
        const _e = ws(Xe).detachedCommentEndPos;
        Xe.length - 1 ? Xe.pop() : Xe = void 0, y3(N.text, _e, C, _e);
      }
      function ET(C) {
        const _e = N && aee(N.text, Da(), Se, fC, C, k, Ut);
        _e && (Xe ? Xe.push(_e) : Xe = [_e]);
      }
      function fC(C, _e, Et, nr, Nn, Ui) {
        !N || !eb(N.text, nr) || (ys(nr), h6(C, _e, Et, nr, Nn, Ui), ys(Nn));
      }
      function DT(C, _e) {
        return !!N && SB(N.text, C, _e);
      }
      function Tu(C, _e) {
        const Et = it(3, C, _e);
        kg(_e), Et(C, _e), wT(_e);
      }
      function kg(C) {
        const _e = Bs(C), Et = M0(C), nr = Et.source || Ne;
        C.kind !== 354 && (_e & 32) === 0 && Et.pos >= 0 && mn(Et.source || Ne, pC(nr, Et.pos)), _e & 128 && (ge = !0);
      }
      function wT(C) {
        const _e = Bs(C), Et = M0(C);
        _e & 128 && (ge = !1), C.kind !== 354 && (_e & 64) === 0 && Et.end >= 0 && mn(Et.source || Ne, Et.end);
      }
      function pC(C, _e) {
        return C.skipTrivia ? C.skipTrivia(_e) : gs(C.text, _e);
      }
      function ys(C) {
        if (ge || Wd(C) || dC(Ne)) return;
        const { line: _e, character: Et } = Za(Ne, C);
        Ae.addMapping(Se.getLine(), Se.getColumn(), ot, _e, Et, void 0);
      }
      function mn(C, _e) {
        if (C !== Ne) {
          const Et = Ne, nr = ot;
          ju(C), ys(_e), VE(Et, nr);
        } else ys(_e);
      }
      function Nf(C, _e, Et, nr, Nn) {
        if (ge || C && I5(C)) return Nn(_e, Et, nr);
        const Ui = C && C.emitNode, oa = Ui && Ui.flags || 0, sa = Ui && Ui.tokenSourceMapRanges && Ui.tokenSourceMapRanges[_e], Vs = sa && sa.source || Ne;
        return nr = pC(Vs, sa ? sa.pos : nr), (oa & 256) === 0 && nr >= 0 && mn(Vs, nr), nr = Nn(_e, Et, nr), sa && (nr = sa.end), (oa & 512) === 0 && nr >= 0 && mn(Vs, nr), nr;
      }
      function ju(C) {
        if (!ge) {
          if (Ne = C, C === K) {
            ot = ke;
            return;
          }
          dC(C) || (ot = Ae.addSource(C.fileName), e.inlineSources && Ae.setSourceContent(ot, C.text), K = C, ke = ot);
        }
      }
      function VE(C, _e) {
        Ne = C, ot = _e;
      }
      function dC(C) {
        return lc(C.fileName, ".json");
      }
    }
    function Vje() {
      const e = [];
      return e[1024] = ["{", "}"], e[2048] = ["(", ")"], e[4096] = ["<", ">"], e[8192] = ["[", "]"], e;
    }
    function qje(e) {
      return yve[e & 15360][0];
    }
    function Gje(e) {
      return yve[e & 15360][1];
    }
    function Hje(e, t, n, i) {
      t(e);
    }
    function $je(e, t, n, i) {
      t(e, n.select(i));
    }
    function Xje(e, t, n, i) {
      t(e, n);
    }
    function Qje(e, t) {
      return e.length === 1 ? Hje : typeof t == "object" ? $je : Xje;
    }
    function i9(e, t, n) {
      if (!e.getDirectories || !e.readDirectory) return;
      const i = /* @__PURE__ */ new Map(), a = pu(n);
      return {
        useCaseSensitiveFileNames: n,
        fileExists: T,
        readFile: (U, pe) => e.readFile(U, pe),
        directoryExists: e.directoryExists && k,
        getDirectories: P,
        readDirectory: N,
        createDirectory: e.createDirectory && D,
        writeFile: e.writeFile && S,
        addOrDeleteFileOrDirectory: G,
        addOrDeleteFile: L,
        clearCache: H,
        realpath: e.realpath && M
      };
      function o(U) {
        return Eo(U, t, a);
      }
      function c(U) {
        return i.get(El(U));
      }
      function _(U) {
        const pe = c(Xn(U));
        return pe && (pe.sortedAndCanonicalizedFiles || (pe.sortedAndCanonicalizedFiles = pe.files.map(a).sort(), pe.sortedAndCanonicalizedDirectories = pe.directories.map(a).sort()), pe);
      }
      function u(U) {
        return nl(us(U));
      }
      function d(U, pe) {
        var ie;
        if (!e.realpath || El(o(e.realpath(U))) === pe) {
          const W = {
            files: or(e.readDirectory(U, void 0, void 0, ["*.*"]), u) || [],
            directories: e.getDirectories(U) || []
          };
          return i.set(El(pe), W), W;
        }
        if ((ie = e.directoryExists) != null && ie.call(e, U))
          return i.set(pe, !1), !1;
      }
      function g(U, pe) {
        pe = El(pe);
        const ie = c(pe);
        if (ie) return ie;
        try {
          return d(U, pe);
        } catch {
          E.assert(!i.has(El(pe)));
          return;
        }
      }
      function h(U, pe) {
        return Lg(U, pe, mo, Du) >= 0;
      }
      function S(U, pe, ie) {
        const W = _(o(U));
        return W && z(W, u(U), !0), e.writeFile(U, pe, ie);
      }
      function T(U) {
        const pe = _(o(U));
        return pe && h(pe.sortedAndCanonicalizedFiles, a(u(U))) || e.fileExists(U);
      }
      function k(U) {
        const pe = o(U);
        return i.has(El(pe)) || e.directoryExists(U);
      }
      function D(U) {
        const pe = _(o(U));
        if (pe) {
          const ie = u(U), W = a(ie), Q = pe.sortedAndCanonicalizedDirectories;
          wy(Q, W, Du) && pe.directories.push(ie);
        }
        e.createDirectory(U);
      }
      function P(U) {
        const pe = g(U, o(U));
        return pe ? pe.directories.slice() : e.getDirectories(U);
      }
      function N(U, pe, ie, W, Q) {
        const se = o(U), he = g(U, se);
        let fe;
        if (he !== void 0) return $J(U, pe, ie, W, n, t, Q, de, M);
        return e.readDirectory(U, pe, ie, W, Q);
        function de(Se) {
          const Be = o(Se);
          if (Be === se) return he || $(Se, Be);
          const ce = g(Se, Be);
          return ce !== void 0 ? ce || $(Se, Be) : ZJ;
        }
        function $(Se, Be) {
          if (fe && Be === se) return fe;
          const ce = {
            files: or(e.readDirectory(Se, void 0, void 0, ["*.*"]), u) || Te,
            directories: e.getDirectories(Se) || Te
          };
          return Be === se && (fe = ce), ce;
        }
      }
      function M(U) {
        return e.realpath ? e.realpath(U) : U;
      }
      function R(U) {
        L4(Xn(U), (pe) => i.delete(El(pe)) ? !0 : void 0);
      }
      function G(U, pe) {
        if (c(pe) !== void 0) {
          H();
          return;
        }
        const ie = _(pe);
        if (!ie) {
          R(pe);
          return;
        }
        if (!e.directoryExists) {
          H();
          return;
        }
        const W = u(U), Q = {
          fileExists: e.fileExists(U),
          directoryExists: e.directoryExists(U)
        };
        return Q.directoryExists || h(ie.sortedAndCanonicalizedDirectories, a(W)) ? H() : z(ie, W, Q.fileExists), Q;
      }
      function L(U, pe, ie) {
        if (ie === 1) return;
        const W = _(pe);
        W ? z(W, u(U), ie === 0) : R(pe);
      }
      function z(U, pe, ie) {
        const W = U.sortedAndCanonicalizedFiles, Q = a(pe);
        if (ie)
          wy(W, Q, Du) && U.files.push(pe);
        else {
          const se = Lg(W, Q, mo, Du);
          if (se >= 0) {
            W.splice(se, 1);
            const he = U.files.findIndex((fe) => a(fe) === Q);
            U.files.splice(he, 1);
          }
        }
      }
      function H() {
        i.clear();
      }
    }
    var Pie = /* @__PURE__ */ ((e) => (e[e.Update = 0] = "Update", e[e.RootNamesAndUpdate = 1] = "RootNamesAndUpdate", e[e.Full = 2] = "Full", e))(Pie || {});
    function a9(e, t, n, i, a) {
      var o;
      const c = jC(((o = t?.configFile) == null ? void 0 : o.extendedSourceFiles) || Te, a);
      n.forEach((_, u) => {
        c.has(u) || (_.projects.delete(e), _.close());
      }), c.forEach((_, u) => {
        const d = n.get(u);
        d ? d.projects.add(e) : n.set(u, {
          projects: /* @__PURE__ */ new Set([e]),
          watcher: i(_, u),
          close: () => {
            const g = n.get(u);
            !g || g.projects.size !== 0 || (g.watcher.close(), n.delete(u));
          }
        });
      });
    }
    function SU(e, t) {
      t.forEach((n) => {
        n.projects.delete(e) && n.close();
      });
    }
    function s9(e, t, n) {
      e.delete(t) && e.forEach(({ extendedResult: i }, a) => {
        var o;
        (o = i.extendedSourceFiles) != null && o.some((c) => n(c) === t) && s9(e, a, n);
      });
    }
    function TU(e, t, n) {
      AD(t, e.getMissingFilePaths(), {
        createNewValue: n,
        onDeleteValue: md
      });
    }
    function qN(e, t, n) {
      t ? AD(e, new Map(Object.entries(t)), {
        createNewValue: i,
        onDeleteValue: Np,
        onExistingValue: a
      }) : K_(e, Np);
      function i(o, c) {
        return {
          watcher: n(o, c),
          flags: c
        };
      }
      function a(o, c, _) {
        o.flags !== c && (o.watcher.close(), e.set(_, i(_, c)));
      }
    }
    function GN({ watchedDirPath: e, fileOrDirectory: t, fileOrDirectoryPath: n, configFileName: i, options: a, program: o, extraFileExtensions: c, currentDirectory: _, useCaseSensitiveFileNames: u, writeLog: d, toPath: g, getScriptKind: h }) {
      const S = v9(n);
      if (!S)
        return d(`Project: ${i} Detected ignored path: ${t}`), !0;
      if (n = S, n === e) return !1;
      if (UC(n) && !(YJ(t, a, c) || N()))
        return d(`Project: ${i} Detected file add/remove of non supported extension: ${t}`), !0;
      if (Zre(t, a.configFile.configFileSpecs, ca(Xn(i), _), u, _))
        return d(`Project: ${i} Detected excluded file: ${t}`), !0;
      if (!o || a.outFile || a.outDir) return !1;
      if ($l(n)) {
        if (a.declarationDir) return !1;
      } else if (!jc(n, T6)) return !1;
      const T = __(n), k = da(o) ? void 0 : KU(o) ? o.getProgramOrUndefined() : o, D = !k && !da(o) ? o : void 0;
      if (P(T + ".ts") || P(T + ".tsx"))
        return d(`Project: ${i} Detected output file: ${t}`), !0;
      return !1;
      function P(M) {
        return k ? !!k.getSourceFileByPath(M) : D ? D.state.fileInfos.has(M) : !!xr(o, (R) => g(R) === M);
      }
      function N() {
        if (!h) return !1;
        switch (h(t)) {
          case 3:
          case 4:
          case 7:
          case 5:
            return !0;
          case 1:
          case 2:
            return t1(a);
          case 6:
            return zb(a);
          case 0:
            return !1;
        }
      }
    }
    function Aie(e, t) {
      return e ? e.isEmittedFile(t) : !1;
    }
    var Nie = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.TriggerOnly = 1] = "TriggerOnly", e[e.Verbose = 2] = "Verbose", e))(Nie || {});
    function xU(e, t, n, i) {
      BY(t === 2 ? n : so);
      const a = {
        watchFile: (D, P, N, M) => e.watchFile(D, P, N, M),
        watchDirectory: (D, P, N, M) => e.watchDirectory(D, P, (N & 1) !== 0, M)
      }, o = t !== 0 ? {
        watchFile: T("watchFile"),
        watchDirectory: T("watchDirectory")
      } : void 0, c = t === 2 ? {
        watchFile: h,
        watchDirectory: S
      } : o || a, _ = t === 2 ? g : Mw;
      return {
        watchFile: u("watchFile"),
        watchDirectory: u("watchDirectory")
      };
      function u(D) {
        return (P, N, M, R, G, L) => {
          var z;
          return NF(P, D === "watchFile" ? R?.excludeFiles : R?.excludeDirectories, d(), ((z = e.getCurrentDirectory) == null ? void 0 : z.call(e)) || "") ? _(P, M, R, G, L) : c[D].call(void 0, P, N, M, R, G, L);
        };
      }
      function d() {
        return typeof e.useCaseSensitiveFileNames == "boolean" ? e.useCaseSensitiveFileNames : e.useCaseSensitiveFileNames();
      }
      function g(D, P, N, M, R) {
        return n(`ExcludeWatcher:: Added:: ${k(D, P, N, M, R, i)}`), { close: () => n(`ExcludeWatcher:: Close:: ${k(D, P, N, M, R, i)}`) };
      }
      function h(D, P, N, M, R, G) {
        n(`FileWatcher:: Added:: ${k(D, N, M, R, G, i)}`);
        const L = o.watchFile(D, P, N, M, R, G);
        return { close: () => {
          n(`FileWatcher:: Close:: ${k(D, N, M, R, G, i)}`), L.close();
        } };
      }
      function S(D, P, N, M, R, G) {
        const L = `DirectoryWatcher:: Added:: ${k(D, N, M, R, G, i)}`;
        n(L);
        const z = ko(), H = o.watchDirectory(D, P, N, M, R, G);
        return n(`Elapsed:: ${ko() - z}ms ${L}`), { close: () => {
          const U = `DirectoryWatcher:: Close:: ${k(D, N, M, R, G, i)}`;
          n(U);
          const pe = ko();
          H.close(), n(`Elapsed:: ${ko() - pe}ms ${U}`);
        } };
      }
      function T(D) {
        return (P, N, M, R, G, L) => a[D].call(void 0, P, (...z) => {
          const H = `${D === "watchFile" ? "FileWatcher" : "DirectoryWatcher"}:: Triggered with ${z[0]} ${z[1] !== void 0 ? z[1] : ""}:: ${k(P, M, R, G, L, i)}`;
          n(H);
          const U = ko();
          N.call(void 0, ...z), n(`Elapsed:: ${ko() - U}ms ${H}`);
        }, M, R, G, L);
      }
      function k(D, P, N, M, R, G) {
        return `WatchInfo: ${D} ${P} ${JSON.stringify(N)} ${G ? G(M, R) : R === void 0 ? M : `${M} ${R}`}`;
      }
    }
    function HN(e) {
      const t = e?.fallbackPolling;
      return { watchFile: t !== void 0 ? t : 1 };
    }
    function Np(e) {
      e.watcher.close();
    }
    function kU(e, t, n = "tsconfig.json") {
      return L4(e, (i) => {
        const a = jn(i, n);
        return t(a) ? a : void 0;
      });
    }
    function CU(e, t) {
      const n = Xn(t);
      return us(pf(e) ? e : jn(n, e));
    }
    function EU(e, t, n) {
      let i;
      return bt(e, (a) => {
        const o = F7(a, t);
        if (o.pop(), !i) {
          i = o;
          return;
        }
        const c = Math.min(i.length, o.length);
        for (let _ = 0; _ < c; _++) if (n(i[_]) !== n(o[_])) {
          if (_ === 0) return !0;
          i.length = _;
          break;
        }
        o.length < i.length && (i.length = o.length);
      }) ? "" : i ? rv(i) : t;
    }
    function Iie(e, t) {
      return o9(e, t);
    }
    function DU(e, t) {
      return (n, i, a) => {
        let o;
        try {
          pc("beforeIORead"), o = e(n), pc("afterIORead"), yp("I/O Read", "beforeIORead", "afterIORead");
        } catch (c) {
          a && a(c.message), o = "";
        }
        return o !== void 0 ? Sk(n, o, i, t) : void 0;
      };
    }
    function wU(e, t, n) {
      return (i, a, o, c) => {
        try {
          pc("beforeIOWrite"), hJ(i, a, o, e, t, n), pc("afterIOWrite"), yp("I/O Write", "beforeIOWrite", "afterIOWrite");
        } catch (_) {
          c && c(_.message);
        }
      };
    }
    function o9(e, t, n = Cl) {
      const i = /* @__PURE__ */ new Map(), a = pu(n.useCaseSensitiveFileNames);
      function o(g) {
        return i.has(g) ? !0 : (d.directoryExists || n.directoryExists)(g) ? (i.set(g, !0), !0) : !1;
      }
      function c() {
        return Xn(us(n.getExecutingFilePath()));
      }
      const _ = N0(e), u = n.realpath && ((g) => n.realpath(g)), d = {
        getSourceFile: DU((g) => d.readFile(g), t),
        getDefaultLibLocation: c,
        getDefaultLibFileName: (g) => jn(c(), S3(g)),
        writeFile: wU((g, h, S) => n.writeFile(g, h, S), (g) => (d.createDirectory || n.createDirectory)(g), (g) => o(g)),
        getCurrentDirectory: s_(() => n.getCurrentDirectory()),
        useCaseSensitiveFileNames: () => n.useCaseSensitiveFileNames,
        getCanonicalFileName: a,
        getNewLine: () => _,
        fileExists: (g) => n.fileExists(g),
        readFile: (g) => n.readFile(g),
        trace: (g) => n.write(g + _),
        directoryExists: (g) => n.directoryExists(g),
        getEnvironmentVariable: (g) => n.getEnvironmentVariable ? n.getEnvironmentVariable(g) : "",
        getDirectories: (g) => n.getDirectories(g),
        realpath: u,
        readDirectory: (g, h, S, T, k) => n.readDirectory(g, h, S, T, k),
        createDirectory: (g) => n.createDirectory(g),
        createHash: Ua(n, n.createHash)
      };
      return d;
    }
    function Nw(e, t, n) {
      const i = e.readFile, a = e.fileExists, o = e.directoryExists, c = e.createDirectory, _ = e.writeFile, u = /* @__PURE__ */ new Map(), d = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Map(), h = /* @__PURE__ */ new Map(), S = (D) => {
        const P = t(D), N = u.get(P);
        return N !== void 0 ? N !== !1 ? N : void 0 : T(P, D);
      }, T = (D, P) => {
        const N = i.call(e, P);
        return u.set(D, N !== void 0 ? N : !1), N;
      };
      e.readFile = (D) => {
        const P = t(D), N = u.get(P);
        return N !== void 0 ? N !== !1 ? N : void 0 : !lc(D, ".json") && !Tie(D) ? i.call(e, D) : T(P, D);
      };
      const k = n ? (D, P, N, M) => {
        const R = t(D), G = typeof P == "object" ? P.impliedNodeFormat : void 0, L = h.get(G), z = L?.get(R);
        if (z) return z;
        const H = n(D, P, N, M);
        return H && ($l(D) || lc(D, ".json")) && h.set(G, (L || /* @__PURE__ */ new Map()).set(R, H)), H;
      } : void 0;
      return e.fileExists = (D) => {
        const P = t(D), N = d.get(P);
        if (N !== void 0) return N;
        const M = a.call(e, D);
        return d.set(P, !!M), M;
      }, _ && (e.writeFile = (D, P, ...N) => {
        const M = t(D);
        d.delete(M);
        const R = u.get(M);
        R !== void 0 && R !== P ? (u.delete(M), h.forEach((G) => G.delete(M))) : k && h.forEach((G) => {
          const L = G.get(M);
          L && L.text !== P && G.delete(M);
        }), _.call(e, D, P, ...N);
      }), o && (e.directoryExists = (D) => {
        const P = t(D), N = g.get(P);
        if (N !== void 0) return N;
        const M = o.call(e, D);
        return g.set(P, !!M), M;
      }, c && (e.createDirectory = (D) => {
        const P = t(D);
        g.delete(P), c.call(e, D);
      })), {
        originalReadFile: i,
        originalFileExists: a,
        originalDirectoryExists: o,
        originalCreateDirectory: c,
        originalWriteFile: _,
        getSourceFileWithCache: k,
        readFileWithCache: S
      };
    }
    function Eve(e, t, n) {
      let i;
      return i = Mn(i, e.getConfigFileParsingDiagnostics()), i = Mn(i, e.getOptionsDiagnostics(n)), i = Mn(i, e.getSyntacticDiagnostics(t, n)), i = Mn(i, e.getGlobalDiagnostics(n)), i = Mn(i, e.getSemanticDiagnostics(t, n)), U_(e.getCompilerOptions()) && (i = Mn(i, e.getDeclarationDiagnostics(t, n))), GC(i || Te);
    }
    function Dve(e, t) {
      let n = "";
      for (const i of e) n += PU(i, t);
      return n;
    }
    function PU(e, t) {
      const n = `${aS(e)} TS${e.code}: ${Mm(e.messageText, t.getNewLine())}${t.getNewLine()}`;
      if (e.file) {
        const { line: i, character: a } = Za(e.file, e.start), o = e.file.fileName;
        return `${F4(o, t.getCurrentDirectory(), (c) => t.getCanonicalFileName(c))}(${i + 1},${a + 1}): ` + n;
      }
      return n;
    }
    var Oie = /* @__PURE__ */ ((e) => (e.Grey = "\x1B[90m", e.Red = "\x1B[91m", e.Yellow = "\x1B[93m", e.Blue = "\x1B[94m", e.Cyan = "\x1B[96m", e))(Oie || {}), Fie = "\x1B[7m", Lie = " ", wve = "\x1B[0m", Pve = "...", Yje = "  ", Ave = "    ";
    function Nve(e) {
      switch (e) {
        case 1:
          return "\x1B[91m";
        case 0:
          return "\x1B[93m";
        case 2:
          return E.fail("Should never get an Info diagnostic on the command line.");
        case 3:
          return "\x1B[94m";
      }
    }
    function a2(e, t) {
      return t + e + wve;
    }
    function Ive(e, t, n, i, a, o) {
      const { line: c, character: _ } = Za(e, t), { line: u, character: d } = Za(e, t + n), g = Za(e, e.text.length).line, h = u - c >= 4;
      let S = (u + 1 + "").length;
      h && (S = Math.max(Pve.length, S));
      let T = "";
      for (let k = c; k <= u; k++) {
        T += o.getNewLine(), h && c + 1 < k && k < u - 1 && (T += i + a2(Pve.padStart(S), Fie) + Lie + o.getNewLine(), k = u - 1);
        const D = g3(e, k, 0), P = k < g ? g3(e, k + 1, 0) : e.text.length;
        let N = e.text.slice(D, P);
        if (N = N.trimEnd(), N = N.replace(/\t/g, " "), T += i + a2((k + 1 + "").padStart(S), Fie) + Lie, T += N + o.getNewLine(), T += i + a2("".padStart(S), Fie) + Lie, T += a, k === c) {
          const M = k === u ? d : void 0;
          T += N.slice(0, _).replace(/\S/g, " "), T += N.slice(_, M).replace(/./g, "~");
        } else k === u ? T += N.slice(0, d).replace(/./g, "~") : T += N.replace(/./g, "~");
        T += wve;
      }
      return T;
    }
    function AU(e, t, n, i = a2) {
      const { line: a, character: o } = Za(e, t), c = n ? F4(e.fileName, n.getCurrentDirectory(), (u) => n.getCanonicalFileName(u)) : e.fileName;
      let _ = "";
      return _ += i(c, "\x1B[96m"), _ += ":", _ += i(`${a + 1}`, "\x1B[93m"), _ += ":", _ += i(`${o + 1}`, "\x1B[93m"), _;
    }
    function Mie(e, t) {
      let n = "";
      for (const i of e) {
        if (i.file) {
          const { file: a, start: o } = i;
          n += AU(a, o, t), n += " - ";
        }
        if (n += a2(aS(i), Nve(i.category)), n += a2(` TS${i.code}: `, "\x1B[90m"), n += Mm(i.messageText, t.getNewLine()), i.file && i.code !== p.File_appears_to_be_binary.code && (n += t.getNewLine(), n += Ive(i.file, i.start, i.length, "", Nve(i.category), t)), i.relatedInformation) {
          n += t.getNewLine();
          for (const { file: a, start: o, length: c, messageText: _ } of i.relatedInformation)
            a && (n += t.getNewLine(), n += Yje + AU(a, o, t), n += Ive(a, o, c, Ave, "\x1B[96m", t)), n += t.getNewLine(), n += Ave + Mm(_, t.getNewLine());
        }
        n += t.getNewLine();
      }
      return n;
    }
    function Mm(e, t, n = 0) {
      if (Ta(e)) return e;
      if (e === void 0) return "";
      let i = "";
      if (n) {
        i += t;
        for (let a = 0; a < n; a++) i += "  ";
      }
      if (i += e.messageText, n++, e.next) for (const a of e.next) i += Mm(a, t, n);
      return i;
    }
    function Rie(e, t) {
      return (Ta(e) ? t : e.resolutionMode) || t;
    }
    function Ove(e, t, n) {
      return c9(e, YN(e, t), n);
    }
    function NU(e) {
      var t;
      return tl(e) ? e.isTypeOnly : !!((t = e.importClause) != null && t.isTypeOnly);
    }
    function IU(e, t, n) {
      return c9(e, t, n);
    }
    function c9(e, t, n) {
      if ((ic(t.parent) || tl(t.parent) || Fm(t.parent)) && NU(t.parent)) {
        const i = eE(t.parent.attributes);
        if (i) return i;
      }
      if (t.parent.parent && Am(t.parent.parent)) {
        const i = eE(t.parent.parent.attributes);
        if (i) return i;
      }
      if (n && zJ(n)) return Fve(e, t, n);
    }
    function Fve(e, t, n) {
      var i;
      if (!n) return;
      const a = (i = dd(t.parent)) == null ? void 0 : i.parent;
      if (a && bl(a) || J_(t.parent, !1)) return 1;
      if (B_(dd(t.parent))) return jve(e, n) ? 1 : 99;
      const o = Fw(e, n);
      return o === 1 ? 1 : BA(o) || o === 200 ? 99 : void 0;
    }
    function eE(e, t) {
      if (!e) return;
      if (It(e.elements) !== 1) {
        t?.(e, e.token === 118 ? p.Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require : p.Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require);
        return;
      }
      const n = e.elements[0];
      if (Xs(n.name)) {
        if (n.name.text !== "resolution-mode") {
          t?.(n.name, e.token === 118 ? p.resolution_mode_is_the_only_valid_key_for_type_import_attributes : p.resolution_mode_is_the_only_valid_key_for_type_import_assertions);
          return;
        }
        if (Xs(n.value)) {
          if (n.value.text !== "import" && n.value.text !== "require") {
            t?.(n.value, p.resolution_mode_should_be_either_require_or_import);
            return;
          }
          return n.value.text === "import" ? 99 : 1;
        }
      }
    }
    var Lve = {
      resolvedModule: void 0,
      resolvedTypeReferenceDirective: void 0
    };
    function jie(e) {
      return e.text;
    }
    var l9 = {
      getName: jie,
      getMode: (e, t, n) => IU(t, e, n)
    };
    function OU(e, t, n, i, a) {
      return {
        nameAndMode: l9,
        resolve: (o, c) => qS(o, e, n, i, a, t, c)
      };
    }
    function Bie(e) {
      return Ta(e) ? e : e.fileName;
    }
    var Mve = {
      getName: Bie,
      getMode: (e, t, n) => Rie(e, t && p9(t, n))
    };
    function u9(e, t, n, i, a) {
      return {
        nameAndMode: Mve,
        resolve: (o, c) => one(o, e, n, i, t, a, c)
      };
    }
    function $N(e, t, n, i, a, o, c, _) {
      if (e.length === 0) return Te;
      const u = [], d = /* @__PURE__ */ new Map(), g = _(t, n, i, o, c);
      for (const h of e) {
        const S = g.nameAndMode.getName(h), T = g.nameAndMode.getMode(h, a, n?.commandLine.options || i), k = gw(S, T);
        let D = d.get(k);
        D || d.set(k, D = g.resolve(S, T)), u.push(D);
      }
      return u;
    }
    var Iw = "__inferred type names__.ts";
    function _9(e, t, n) {
      return jn(e.configFilePath ? Xn(e.configFilePath) : t, `__lib_node_modules_lookup_${n}__.ts`);
    }
    function FU(e) {
      const t = e.split(".");
      let n = t[1], i = 2;
      for (; t[i] && t[i] !== "d"; )
        n += (i === 2 ? "/" : "-") + t[i], i++;
      return "@typescript/lib-" + n;
    }
    function Rv(e) {
      switch (e?.kind) {
        case 3:
        case 4:
        case 5:
        case 7:
          return !0;
        default:
          return !1;
      }
    }
    function tE(e) {
      return e.pos !== void 0;
    }
    function Ow(e, t) {
      var n, i, a, o;
      const c = E.checkDefined(e.getSourceFileByPath(t.file)), { kind: _, index: u } = t;
      let d, g, h;
      switch (_) {
        case 3:
          const S = YN(c, u);
          if (h = (i = (n = e.getResolvedModuleFromModuleSpecifier(S, c)) == null ? void 0 : n.resolvedModule) == null ? void 0 : i.packageId, S.pos === -1) return {
            file: c,
            packageId: h,
            text: S.text
          };
          d = gs(c.text, S.pos), g = S.end;
          break;
        case 4:
          ({ pos: d, end: g } = c.referencedFiles[u]);
          break;
        case 5:
          ({ pos: d, end: g } = c.typeReferenceDirectives[u]), h = (o = (a = e.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(c.typeReferenceDirectives[u], c)) == null ? void 0 : a.resolvedTypeReferenceDirective) == null ? void 0 : o.packageId;
          break;
        case 7:
          ({ pos: d, end: g } = c.libReferenceDirectives[u]);
          break;
        default:
          return E.assertNever(_);
      }
      return {
        file: c,
        pos: d,
        end: g,
        packageId: h
      };
    }
    function LU(e, t, n, i, a, o, c, _, u, d) {
      if (!e || _?.() || !jf(e.getRootFileNames(), t)) return !1;
      let g;
      if (!jf(e.getProjectReferences(), d, D) || e.getSourceFiles().some(T)) return !1;
      const h = e.getMissingFilePaths();
      if (h && Dl(h, a)) return !1;
      const S = e.getCompilerOptions();
      if (!FJ(S, n) || e.resolvedLibReferences && Dl(e.resolvedLibReferences, (N, M) => c(M))) return !1;
      if (S.configFile && n.configFile) return S.configFile.text === n.configFile.text;
      return !0;
      function T(N) {
        return !k(N) || o(N.path);
      }
      function k(N) {
        return N.version === i(N.resolvedPath, N.fileName);
      }
      function D(N, M, R) {
        return hB(N, M) && P(e.getResolvedProjectReferences()[R], N);
      }
      function P(N, M) {
        if (N) {
          if (Gi(g, N)) return !0;
          const R = u(Ak(M));
          return !R || N.commandLine.options.configFile !== R.options.configFile || !jf(N.commandLine.fileNames, R.fileNames) ? !1 : ((g || (g = [])).push(N), !bt(N.references, (G, L) => !P(G, N.commandLine.projectReferences[L])));
        }
        return !u(Ak(M));
      }
    }
    function s2(e) {
      return e.options.configFile ? [...e.options.configFile.parseDiagnostics, ...e.errors] : e.errors;
    }
    function XN(e, t, n, i) {
      const a = f9(e, t, n, i);
      return typeof a == "object" ? a.impliedNodeFormat : a;
    }
    function f9(e, t, n, i) {
      const a = Hu(i), o = 3 <= a && a <= 99 || p1(e);
      return jc(e, [
        ".d.mts",
        ".mts",
        ".mjs"
      ]) ? 99 : jc(e, [
        ".d.cts",
        ".cts",
        ".cjs"
      ]) ? 1 : o && jc(e, [
        ".d.ts",
        ".ts",
        ".tsx",
        ".js",
        ".jsx"
      ]) ? c() : void 0;
      function c() {
        const _ = hw(t, n, i), u = [];
        _.failedLookupLocations = u, _.affectingLocations = u;
        const d = yw(Xn(e), _);
        return {
          impliedNodeFormat: d?.contents.packageJsonContent.type === "module" ? 99 : 1,
          packageJsonLocations: u,
          packageJsonScope: d
        };
      }
    }
    var Rve = /* @__PURE__ */ new Set([
      p.Cannot_redeclare_block_scoped_variable_0.code,
      p.A_module_cannot_have_multiple_default_exports.code,
      p.Another_export_default_is_here.code,
      p.The_first_export_default_is_here.code,
      p.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,
      p.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,
      p.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,
      p.constructor_is_a_reserved_word.code,
      p.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,
      p.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode.code,
      p.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,
      p.Invalid_use_of_0_in_strict_mode.code,
      p.A_label_is_not_allowed_here.code,
      p.with_statements_are_not_allowed_in_strict_mode.code,
      p.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,
      p.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,
      p.A_class_declaration_without_the_default_modifier_must_have_a_name.code,
      p.A_class_member_cannot_have_the_0_keyword.code,
      p.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,
      p.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,
      p.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,
      p.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,
      p.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,
      p.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,
      p.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,
      p.A_destructuring_declaration_must_have_an_initializer.code,
      p.A_get_accessor_cannot_have_parameters.code,
      p.A_rest_element_cannot_contain_a_binding_pattern.code,
      p.A_rest_element_cannot_have_a_property_name.code,
      p.A_rest_element_cannot_have_an_initializer.code,
      p.A_rest_element_must_be_last_in_a_destructuring_pattern.code,
      p.A_rest_parameter_cannot_have_an_initializer.code,
      p.A_rest_parameter_must_be_last_in_a_parameter_list.code,
      p.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,
      p.A_return_statement_cannot_be_used_inside_a_class_static_block.code,
      p.A_set_accessor_cannot_have_rest_parameter.code,
      p.A_set_accessor_must_have_exactly_one_parameter.code,
      p.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,
      p.An_export_declaration_cannot_have_modifiers.code,
      p.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,
      p.An_import_declaration_cannot_have_modifiers.code,
      p.An_object_member_cannot_be_declared_optional.code,
      p.Argument_of_dynamic_import_cannot_be_spread_element.code,
      p.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,
      p.Cannot_redeclare_identifier_0_in_catch_clause.code,
      p.Catch_clause_variable_cannot_have_an_initializer.code,
      p.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,
      p.Classes_can_only_extend_a_single_class.code,
      p.Classes_may_not_have_a_field_named_constructor.code,
      p.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code,
      p.Duplicate_label_0.code,
      p.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,
      p.for_await_loops_cannot_be_used_inside_a_class_static_block.code,
      p.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,
      p.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,
      p.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,
      p.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,
      p.Jump_target_cannot_cross_function_boundary.code,
      p.Line_terminator_not_permitted_before_arrow.code,
      p.Modifiers_cannot_appear_here.code,
      p.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,
      p.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,
      p.Private_identifiers_are_not_allowed_outside_class_bodies.code,
      p.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,
      p.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,
      p.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,
      p.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,
      p.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,
      p.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,
      p.Trailing_comma_not_allowed.code,
      p.Variable_declaration_list_cannot_be_empty.code,
      p._0_and_1_operations_cannot_be_mixed_without_parentheses.code,
      p._0_expected.code,
      p._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,
      p._0_list_cannot_be_empty.code,
      p._0_modifier_already_seen.code,
      p._0_modifier_cannot_appear_on_a_constructor_declaration.code,
      p._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,
      p._0_modifier_cannot_appear_on_a_parameter.code,
      p._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,
      p._0_modifier_cannot_be_used_here.code,
      p._0_modifier_must_precede_1_modifier.code,
      p._0_declarations_can_only_be_declared_inside_a_block.code,
      p._0_declarations_must_be_initialized.code,
      p.extends_clause_already_seen.code,
      p.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,
      p.Class_constructor_may_not_be_a_generator.code,
      p.Class_constructor_may_not_be_an_accessor.code,
      p.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,
      p.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,
      p.Private_field_0_must_be_declared_in_an_enclosing_class.code,
      p.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code
    ]);
    function Zje(e, t) {
      return e ? wx(e.getCompilerOptions(), t, fW) : !1;
    }
    function Kje(e, t, n, i, a, o) {
      return {
        rootNames: e,
        options: t,
        host: n,
        oldProgram: i,
        configFileParsingDiagnostics: a,
        typeScriptVersion: o
      };
    }
    function QN(e, t, n, i, a) {
      var o, c, _, u, d, g, h, S, T, k, D, P, N, M, R, G;
      let L = da(e) ? Kje(e, t, n, i, a) : e;
      const { rootNames: z, options: H, configFileParsingDiagnostics: U, projectReferences: pe, typeScriptVersion: ie, host: W } = L;
      let { oldProgram: Q } = L;
      L = void 0, e = void 0;
      for (const ze of Jre) if (po(H, ze.name) && typeof H[ze.name] == "string")
        throw new Error(`${ze.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);
      const se = s_(() => fs("ignoreDeprecations", p.Invalid_value_for_ignoreDeprecations));
      let he, fe, de, $, Se, Be, ce, oe, ge;
      const Ae = Jie(Lu);
      let Ne, ot, K, ke, ae, Ce, ue, Ie, Xe;
      const Ft = typeof H.maxNodeModuleJsDepth == "number" ? H.maxNodeModuleJsDepth : 0;
      let Ut = 0;
      const Xt = /* @__PURE__ */ new Map(), Ar = /* @__PURE__ */ new Map();
      (o = sn) == null || o.push(sn.Phase.Program, "createProgram", {
        configFilePath: H.configFilePath,
        rootDir: H.rootDir
      }, !0), pc("beforeProgram");
      const Ct = W || Iie(H), Kt = m9(Ct), zr = s_(() => Ct.getDefaultLibFileName(H)), _i = Ct.getDefaultLibLocation ? Ct.getDefaultLibLocation() : Xn(zr());
      let Gr = !1;
      const Nt = Ct.getCurrentDirectory(), Li = LD(H), ri = WA(H, Li), Zr = /* @__PURE__ */ new Map();
      let ni, ra, Me, vt;
      const tr = Ct.hasInvalidatedResolutions || Mh;
      Ct.resolveModuleNameLiterals ? (vt = Ct.resolveModuleNameLiterals.bind(Ct), Me = (c = Ct.getModuleResolutionCache) == null ? void 0 : c.call(Ct)) : Ct.resolveModuleNames ? (vt = (ze, at, At, yr, Br, Tn) => Ct.resolveModuleNames(ze.map(jie), at, Tn?.map(jie), At, yr, Br).map((Er) => Er ? Er.extension !== void 0 ? { resolvedModule: Er } : { resolvedModule: {
        ...Er,
        extension: RD(Er.resolvedFileName)
      } } : Lve), Me = (_ = Ct.getModuleResolutionCache) == null ? void 0 : _.call(Ct)) : (Me = $6(Nt, nf, H), vt = (ze, at, At, yr, Br) => $N(ze, at, At, yr, Br, Ct, Me, OU));
      let Ur;
      if (Ct.resolveTypeReferenceDirectiveReferences) Ur = Ct.resolveTypeReferenceDirectiveReferences.bind(Ct);
      else if (Ct.resolveTypeReferenceDirectives) Ur = (ze, at, At, yr, Br) => Ct.resolveTypeReferenceDirectives(ze.map(Bie), at, At, yr, Br?.impliedNodeFormat).map((Tn) => ({ resolvedTypeReferenceDirective: Tn }));
      else {
        const ze = RF(Nt, nf, void 0, Me?.getPackageJsonInfoCache(), Me?.optionsToRedirectsKey);
        Ur = (at, At, yr, Br, Tn) => $N(at, At, yr, Br, Tn, Ct, ze, u9);
      }
      const $n = Ct.hasInvalidatedLibResolutions || Mh;
      let zn;
      if (Ct.resolveLibrary) zn = Ct.resolveLibrary.bind(Ct);
      else {
        const ze = $6(Nt, nf, H, Me?.getPackageJsonInfoCache());
        zn = (at, At, yr) => jF(at, At, yr, Ct, ze);
      }
      const na = /* @__PURE__ */ new Map();
      let Ea = /* @__PURE__ */ new Map(), Da = Up(), Lr;
      const ha = /* @__PURE__ */ new Map(), Ye = /* @__PURE__ */ new Set();
      let Pt = /* @__PURE__ */ new Map();
      const ne = Ct.useCaseSensitiveFileNames() ? /* @__PURE__ */ new Map() : void 0;
      let tt, re, we, Ge;
      const nt = !!((u = Ct.useSourceOfProjectReferenceRedirect) != null && u.call(Ct)) && !H.disableSourceOfProjectReferenceRedirect, { onProgramCreateComplete: it, fileExists: ut, directoryExists: Qe } = eBe({
        compilerHost: Ct,
        getSymlinkCache: vg,
        useSourceOfProjectReferenceRedirect: nt,
        toPath: wt,
        getResolvedProjectReferences: cs,
        getRedirectFromOutput: Il,
        forEachResolvedProjectReference: bc
      }), xt = Ct.readFile.bind(Ct);
      (d = sn) == null || d.push(sn.Phase.Program, "shouldProgramCreateNewSourceFiles", { hasOldProgram: !!Q });
      const Dt = Zje(Q, H);
      (g = sn) == null || g.pop();
      let Ve;
      if ((h = sn) == null || h.push(sn.Phase.Program, "tryReuseStructureFromOldProgram", {}), Ve = ct(), (S = sn) == null || S.pop(), Ve !== 2) {
        if (he = [], fe = [], pe && (tt || (tt = pe.map(Uf)), z.length && tt?.forEach((ze, at) => {
          if (!ze) return;
          const At = ze.commandLine.options.outFile;
          if (nt) {
            if (At || u_(ze.commandLine.options) === 0) for (const yr of ze.commandLine.fileNames) Pe(yr, {
              kind: 1,
              index: at
            });
          } else if (At) Pe(F0(At, ".d.ts"), {
            kind: 2,
            index: at
          });
          else if (u_(ze.commandLine.options) === 0) {
            const yr = s_(() => XS(ze.commandLine, !Ct.useCaseSensitiveFileNames()));
            for (const Br of ze.commandLine.fileNames) !$l(Br) && !lc(Br, ".json") && Pe(Pw(Br, ze.commandLine, !Ct.useCaseSensitiveFileNames(), yr), {
              kind: 2,
              index: at
            });
          }
        })), (T = sn) == null || T.push(sn.Phase.Program, "processRootFiles", { count: z.length }), bt(z, (ze, at) => cl(ze, !1, {
          kind: 0,
          index: at
        })), (k = sn) == null || k.pop(), Ne ?? (Ne = z.length ? LF(H, Ct) : Te), ot = H6(), Ne.length) {
          (D = sn) == null || D.push(sn.Phase.Program, "processTypeReferences", { count: Ne.length });
          const ze = jn(H.configFilePath ? Xn(H.configFilePath) : Nt, Iw), at = Jt(Ne, ze);
          for (let At = 0; At < Ne.length; At++)
            ot.set(Ne[At], void 0, at[At]), ll(Ne[At], void 0, at[At], {
              kind: 8,
              typeReference: Ne[At],
              packageId: (N = (P = at[At]) == null ? void 0 : P.resolvedTypeReferenceDirective) == null ? void 0 : N.packageId
            });
          (M = sn) == null || M.pop();
        }
        if (z.length && !H.noLib) {
          const ze = zr();
          !H.lib && ze ? (Ye.add(wt(ze)), cl(ze, !0, { kind: 6 })) : bt(H.lib, (at, At) => {
            cl(em(at), !0, {
              kind: 6,
              index: At
            });
          });
        }
        de = uf(he, et).concat(fe), he = void 0, fe = void 0, ce = void 0;
      }
      if (Q && Ct.onReleaseOldSourceFile) {
        const ze = Q.getSourceFiles();
        for (const at of ze) {
          const At = _c(at.resolvedPath);
          (Dt || !At || At.impliedNodeFormat !== at.impliedNodeFormat || at.resolvedPath === at.path && At.resolvedPath !== at.path) && Ct.onReleaseOldSourceFile(at, Q.getCompilerOptions(), !!_c(at.path), At);
        }
        Ct.getParsedCommandLine || Q.forEachResolvedProjectReference((at) => {
          Wf(at.sourceFile.path) || Ct.onReleaseOldSourceFile(at.sourceFile, Q.getCompilerOptions(), !1, void 0);
        });
      }
      Q && Ct.onReleaseParsedCommandLine && HD(Q.getProjectReferences(), Q.getResolvedProjectReferences(), (ze, at, At) => {
        const yr = Ak(at?.commandLine.projectReferences[At] || Q.getProjectReferences()[At]);
        re?.has(wt(yr)) || Ct.onReleaseParsedCommandLine(yr, ze, Q.getCompilerOptions());
      }), Q = void 0, ke = void 0, Ce = void 0, Ie = void 0;
      const fr = {
        getRootFileNames: () => z,
        getSourceFile: Ou,
        getSourceFileByPath: _c,
        getSourceFiles: () => de,
        getMissingFilePaths: () => Pt,
        getModuleResolutionCache: () => Me,
        getFilesByNameMap: () => ha,
        getCompilerOptions: () => H,
        getSyntacticDiagnostics: fa,
        getOptionsDiagnostics: ai,
        getGlobalDiagnostics: La,
        getSemanticDiagnostics: $a,
        getCachedSemanticDiagnostics: Yi,
        getSuggestionDiagnostics: je,
        getDeclarationDiagnostics: Mo,
        getBindAndCheckDiagnostics: Is,
        getProgramDiagnostics: Zt,
        getTypeChecker: ia,
        getClassifiableNames: Ir,
        getCommonSourceDirectory: qt,
        emit: ja,
        getCurrentDirectory: () => Nt,
        getNodeCount: () => ia().getNodeCount(),
        getIdentifierCount: () => ia().getIdentifierCount(),
        getSymbolCount: () => ia().getSymbolCount(),
        getTypeCount: () => ia().getTypeCount(),
        getInstantiationCount: () => ia().getInstantiationCount(),
        getRelationCacheSizes: () => ia().getRelationCacheSizes(),
        getFileProcessingDiagnostics: () => Ae.getFileProcessingDiagnostics(),
        getAutomaticTypeDirectiveNames: () => Ne,
        getAutomaticTypeDirectiveResolutions: () => ot,
        isSourceFileFromExternalLibrary: oo,
        isSourceFileDefaultLibrary: To,
        getModeForUsageLocation: r0,
        getEmitSyntaxForUsageLocation: S1,
        getModeForResolutionAtIndex: Y0,
        getSourceFileFromReference: Su,
        getLibFileFromReference: Ao,
        sourceFileToPackageName: Ea,
        redirectTargetsMap: Da,
        usesUriStyleNodeCoreModules: Lr,
        resolvedModules: ae,
        resolvedTypeReferenceDirectiveNames: ue,
        resolvedLibReferences: K,
        getProgramDiagnosticsContainer: () => Ae,
        getResolvedModule: rr,
        getResolvedModuleFromModuleSpecifier: Oe,
        getResolvedTypeReferenceDirective: rt,
        getResolvedTypeReferenceDirectiveFromTypeReferenceDirective: ee,
        forEachResolvedModule: q,
        forEachResolvedTypeReferenceDirective: j,
        getCurrentPackagesMap: () => Xe,
        typesPackageExists: ye,
        packageBundlesTypes: Ke,
        isEmittedFile: X0,
        getConfigFileParsingDiagnostics: ds,
        getProjectReferences: xa,
        getResolvedProjectReferences: cs,
        getRedirectFromSourceFile: zs,
        getResolvedProjectReferenceByPath: Wf,
        forEachResolvedProjectReference: bc,
        isSourceOfProjectReferenceRedirect: Op,
        getRedirectFromOutput: Il,
        getCompilerOptionsForFile: hl,
        getDefaultResolutionModeForFile: Vf,
        getEmitModuleFormatOfFile: T1,
        getImpliedNodeFormatForEmit: bg,
        shouldTransformImportCall: Sd,
        emitBuildInfo: os,
        fileExists: ut,
        readFile: xt,
        directoryExists: Qe,
        getSymlinkCache: vg,
        realpath: (R = Ct.realpath) == null ? void 0 : R.bind(Ct),
        useCaseSensitiveFileNames: () => Ct.useCaseSensitiveFileNames(),
        getCanonicalFileName: nf,
        getFileIncludeReasons: () => Ae.getFileReasons(),
        structureIsReused: Ve,
        writeFile: Mi,
        getGlobalTypingsCacheLocation: Ua(Ct, Ct.getGlobalTypingsCacheLocation)
      };
      return it(), Gr || Z(), pc("afterProgram"), yp("Program", "beforeProgram", "afterProgram"), (G = sn) == null || G.pop(), fr;
      function rr(ze, at, At) {
        var yr;
        return (yr = ae?.get(ze.path)) == null ? void 0 : yr.get(at, At);
      }
      function Oe(ze, at) {
        return at ?? (at = Sr(ze)), E.assertIsDefined(at, "`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."), rr(at, ze.text, r0(at, ze));
      }
      function rt(ze, at, At) {
        var yr;
        return (yr = ue?.get(ze.path)) == null ? void 0 : yr.get(at, At);
      }
      function ee(ze, at) {
        return rt(at, ze.fileName, qf(ze, at));
      }
      function q(ze, at) {
        Re(ae, ze, at);
      }
      function j(ze, at) {
        Re(ue, ze, at);
      }
      function Re(ze, at, At) {
        var yr;
        At ? (yr = ze?.get(At.path)) == null || yr.forEach((Br, Tn, Er) => at(Br, Tn, Er, At.path)) : ze?.forEach((Br, Tn) => Br.forEach((Er, hn, Vr) => at(Er, hn, Vr, Tn)));
      }
      function $e() {
        return Xe || (Xe = /* @__PURE__ */ new Map(), q(({ resolvedModule: ze }) => {
          ze?.packageId && Xe.set(ze.packageId.name, ze.extension === ".d.ts" || !!Xe.get(ze.packageId.name));
        }), Xe);
      }
      function ye(ze) {
        return $e().has(zF(ze));
      }
      function Ke(ze) {
        return !!$e().get(ze);
      }
      function pr(ze) {
        var at;
        (at = ze.resolutionDiagnostics) != null && at.length && Ae.addFileProcessingDiagnostic({
          kind: 2,
          diagnostics: ze.resolutionDiagnostics
        });
      }
      function Pr(ze, at, At, yr) {
        if (Ct.resolveModuleNameLiterals || !Ct.resolveModuleNames) return pr(At);
        if (!Me || jl(at)) return;
        const Br = Xn(ca(ze.originalFileName, Nt)), Tn = Cr(ze), Er = Me.getFromNonRelativeNameCache(at, yr, Br, Tn);
        Er && pr(Er);
      }
      function vr(ze, at, At) {
        var yr, Br;
        const Tn = ca(at.originalFileName, Nt), Er = Cr(at);
        (yr = sn) == null || yr.push(sn.Phase.Program, "resolveModuleNamesWorker", { containingFileName: Tn }), pc("beforeResolveModule");
        const hn = vt(ze, Tn, Er, H, at, At);
        return pc("afterResolveModule"), yp("ResolveModule", "beforeResolveModule", "afterResolveModule"), (Br = sn) == null || Br.pop(), hn;
      }
      function fn(ze, at, At) {
        var yr, Br;
        const Tn = Ta(at) ? void 0 : at, Er = Ta(at) ? at : ca(at.originalFileName, Nt), hn = Tn && Cr(Tn);
        (yr = sn) == null || yr.push(sn.Phase.Program, "resolveTypeReferenceDirectiveNamesWorker", { containingFileName: Er }), pc("beforeResolveTypeReference");
        const Vr = Ur(ze, Er, hn, H, Tn, At);
        return pc("afterResolveTypeReference"), yp("ResolveTypeReference", "beforeResolveTypeReference", "afterResolveTypeReference"), (Br = sn) == null || Br.pop(), Vr;
      }
      function Cr(ze) {
        var at, At;
        const yr = zs(ze.originalFileName);
        if (yr || !$l(ze.originalFileName)) return yr?.resolvedRef;
        const Br = (at = Il(ze.path)) == null ? void 0 : at.resolvedRef;
        if (Br) return Br;
        if (!Ct.realpath || !H.preserveSymlinks || !ze.originalFileName.includes(ah)) return;
        const Tn = wt(Ct.realpath(ze.originalFileName));
        return Tn === ze.path || (At = Il(Tn)) == null ? void 0 : At.resolvedRef;
      }
      function et(ze, at) {
        return Fo(kt(ze), kt(at));
      }
      function kt(ze) {
        if (vp(_i, ze.fileName, !1)) {
          const at = nl(ze.fileName);
          if (at === "lib.d.ts" || at === "lib.es6.d.ts") return 0;
          const At = zC(C4(at, "lib."), ".d.ts"), yr = hF.indexOf(At);
          if (yr !== -1) return yr + 1;
        }
        return hF.length + 2;
      }
      function wt(ze) {
        return Eo(ze, Nt, nf);
      }
      function qt() {
        let ze = Ae.getCommonSourceDirectory();
        if (ze !== void 0) return ze;
        const at = dn(de, (At) => gv(At, fr));
        return ze = Aw(H, () => Rn(at, (At) => At.isDeclarationFile ? void 0 : At.fileName), Nt, nf, (At) => t0(at, At)), Ae.setCommonSourceDirectory(ze), ze;
      }
      function Ir() {
        var ze;
        if (!Be) {
          ia(), Be = /* @__PURE__ */ new Set();
          for (const at of de) (ze = at.classifiableNames) == null || ze.forEach((At) => Be.add(At));
        }
        return Be;
      }
      function Yt(ze, at) {
        return $t({
          entries: ze,
          containingFile: at,
          containingSourceFile: at,
          redirectedReference: Cr(at),
          nameAndModeGetter: l9,
          resolutionWorker: vr,
          getResolutionFromOldProgram: (At, yr) => Q?.getResolvedModule(at, At, yr),
          getResolved: Px,
          canReuseResolutionsInFile: () => at === Q?.getSourceFile(at.fileName) && !tr(at.path),
          resolveToOwnAmbientModule: !0
        });
      }
      function Jt(ze, at) {
        const At = Ta(at) ? void 0 : at;
        return $t({
          entries: ze,
          containingFile: at,
          containingSourceFile: At,
          redirectedReference: At && Cr(At),
          nameAndModeGetter: Mve,
          resolutionWorker: fn,
          getResolutionFromOldProgram: (yr, Br) => {
            var Tn;
            return At ? Q?.getResolvedTypeReferenceDirective(At, yr, Br) : (Tn = Q?.getAutomaticTypeDirectiveResolutions()) == null ? void 0 : Tn.get(yr, Br);
          },
          getResolved: l5,
          canReuseResolutionsInFile: () => At ? At === Q?.getSourceFile(At.fileName) && !tr(At.path) : !tr(wt(at))
        });
      }
      function $t({ entries: ze, containingFile: at, containingSourceFile: At, redirectedReference: yr, nameAndModeGetter: Br, resolutionWorker: Tn, getResolutionFromOldProgram: Er, getResolved: hn, canReuseResolutionsInFile: Vr, resolveToOwnAmbientModule: li }) {
        if (!ze.length) return Te;
        if (Ve === 0 && (!li || !At.ambientModuleNames.length)) return Tn(ze, at, void 0);
        let ki, Zi, yo, Jc;
        const Fp = Vr();
        for (let tm = 0; tm < ze.length; tm++) {
          const xd = ze[tm];
          if (Fp) {
            const rm = Br.getName(xd), nm = Er(rm, Br.getMode(xd, At, yr?.commandLine.options ?? H)), Wm = nm && hn(nm);
            if (Wm) {
              _1(H, Ct) && _a(Ct, Tn === vr ? Wm.packageId ? p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2 : Wm.packageId ? p.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : p.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2, rm, At ? ca(At.originalFileName, Nt) : at, Wm.resolvedFileName, Wm.packageId && sv(Wm.packageId)), (yo ?? (yo = new Array(ze.length)))[tm] = nm, (Jc ?? (Jc = [])).push(xd);
              continue;
            }
          }
          if (li) {
            const rm = Br.getName(xd);
            if (Gi(At.ambientModuleNames, rm)) {
              _1(H, Ct) && _a(Ct, p.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1, rm, ca(At.originalFileName, Nt)), (yo ?? (yo = new Array(ze.length)))[tm] = Lve;
              continue;
            }
          }
          (ki ?? (ki = [])).push(xd), (Zi ?? (Zi = [])).push(tm);
        }
        if (!ki) return yo;
        const Td = Tn(ki, at, Jc);
        return yo ? (Td.forEach((tm, xd) => yo[Zi[xd]] = tm), yo) : Td;
      }
      function Qt() {
        return !HD(Q.getProjectReferences(), Q.getResolvedProjectReferences(), (ze, at, At) => {
          const yr = (at ? at.commandLine.projectReferences : pe)[At], Br = Uf(yr);
          return ze ? !Br || Br.sourceFile !== ze.sourceFile || !jf(ze.commandLine.fileNames, Br.commandLine.fileNames) : Br !== void 0;
        }, (ze, at) => !jf(ze, at ? Wf(at.sourceFile.path).commandLine.projectReferences : pe, hB));
      }
      function ct() {
        var ze;
        if (!Q) return 0;
        const at = Q.getCompilerOptions();
        if (o5(at, H) || !jf(Q.getRootFileNames(), z) || !Qt()) return 0;
        pe && (tt = pe.map(Uf));
        const At = [], yr = [];
        if (Ve = 2, Dl(Q.getMissingFilePaths(), (Vr) => Ct.fileExists(Vr))) return 0;
        const Br = Q.getSourceFiles();
        let Tn;
        ((Vr) => {
          Vr[Vr.Exists = 0] = "Exists", Vr[Vr.Modified = 1] = "Modified";
        })(Tn || (Tn = {}));
        const Er = /* @__PURE__ */ new Map();
        for (const Vr of Br) {
          const li = Js(Vr.fileName, Me, Ct, H);
          let ki = Ct.getSourceFileByPath ? Ct.getSourceFileByPath(Vr.fileName, Vr.resolvedPath, li, void 0, Dt) : Ct.getSourceFile(Vr.fileName, li, void 0, Dt);
          if (!ki) return 0;
          ki.packageJsonLocations = (ze = li.packageJsonLocations) != null && ze.length ? li.packageJsonLocations : void 0, ki.packageJsonScope = li.packageJsonScope, E.assert(!ki.redirectInfo, "Host should not return a redirect source file from `getSourceFile`");
          let Zi;
          if (Vr.redirectInfo) {
            if (ki !== Vr.redirectInfo.unredirected) return 0;
            Zi = !1, ki = Vr;
          } else if (Q.redirectTargetsMap.has(Vr.path)) {
            if (ki !== Vr) return 0;
            Zi = !1;
          } else Zi = ki !== Vr;
          ki.path = Vr.path, ki.originalFileName = Vr.originalFileName, ki.resolvedPath = Vr.resolvedPath, ki.fileName = Vr.fileName;
          const yo = Q.sourceFileToPackageName.get(Vr.path);
          if (yo !== void 0) {
            const Jc = Er.get(yo), Fp = Zi ? 1 : 0;
            if (Jc !== void 0 && Fp === 1 || Jc === 1) return 0;
            Er.set(yo, Fp);
          }
          Zi ? (Vr.impliedNodeFormat !== ki.impliedNodeFormat ? Ve = 1 : jf(Vr.libReferenceDirectives, ki.libReferenceDirectives, vc) && jf(Vr.referencedFiles, ki.referencedFiles, vc) ? (Os(ki), jf(Vr.imports, ki.imports, ml) && jf(Vr.moduleAugmentations, ki.moduleAugmentations, ml) ? (Vr.flags & 12582912) !== (ki.flags & 12582912) ? Ve = 1 : jf(Vr.typeReferenceDirectives, ki.typeReferenceDirectives, vc) || (Ve = 1) : Ve = 1) : Ve = 1, yr.push(ki)) : tr(Vr.path) && (Ve = 1, yr.push(ki)), At.push(ki);
        }
        if (Ve !== 2) return Ve;
        for (const Vr of yr) {
          const li = Bve(Vr), ki = Yt(li, Vr);
          (Ce ?? (Ce = /* @__PURE__ */ new Map())).set(Vr.path, ki);
          const Zi = hl(Vr);
          vB(li, ki, (Fp) => Q.getResolvedModule(Vr, Fp.text, c9(Vr, Fp, Zi)), KZ) && (Ve = 1);
          const yo = Vr.typeReferenceDirectives, Jc = Jt(yo, Vr);
          (Ie ?? (Ie = /* @__PURE__ */ new Map())).set(Vr.path, Jc), vB(yo, Jc, (Fp) => Q.getResolvedTypeReferenceDirective(Vr, Bie(Fp), qf(Fp, Vr)), eK) && (Ve = 1);
        }
        if (Ve !== 2) return Ve;
        if (YZ(at, H) || Q.resolvedLibReferences && Dl(Q.resolvedLibReferences, (Vr, li) => e0(li).actual !== Vr.actual)) return 1;
        if (Ct.hasChangedAutomaticTypeDirectiveNames) {
          if (Ct.hasChangedAutomaticTypeDirectiveNames()) return 1;
        } else if (Ne = LF(H, Ct), !jf(Q.getAutomaticTypeDirectiveNames(), Ne)) return 1;
        Pt = Q.getMissingFilePaths(), E.assert(At.length === Q.getSourceFiles().length);
        for (const Vr of At)
          ha.set(Vr.path, Vr), Q.isSourceFileDefaultLibrary(Vr) && Ye.add(Vr.path);
        Q.getFilesByNameMap().forEach((Vr, li) => {
          if (!Vr) {
            ha.set(li, Vr);
            return;
          }
          if (Vr.path === li) {
            Q.isSourceFileFromExternalLibrary(Vr) && Ar.set(Vr.path, !0);
            return;
          }
          ha.set(li, ha.get(Vr.path));
        });
        const hn = at.configFile && at.configFile === H.configFile || !at.configFile && !H.configFile && !wx(at, H, $d);
        return Ae.reuseStateFromOldProgram(Q.getProgramDiagnosticsContainer(), hn), Gr = hn, de = At, Ne = Q.getAutomaticTypeDirectiveNames(), ot = Q.getAutomaticTypeDirectiveResolutions(), Ea = Q.sourceFileToPackageName, Da = Q.redirectTargetsMap, Lr = Q.usesUriStyleNodeCoreModules, ae = Q.resolvedModules, ue = Q.resolvedTypeReferenceDirectiveNames, K = Q.resolvedLibReferences, Xe = Q.getCurrentPackagesMap(), 2;
      }
      function wn(ze) {
        return {
          getCanonicalFileName: nf,
          getCommonSourceDirectory: fr.getCommonSourceDirectory,
          getCompilerOptions: fr.getCompilerOptions,
          getCurrentDirectory: () => Nt,
          getSourceFile: fr.getSourceFile,
          getSourceFileByPath: fr.getSourceFileByPath,
          getSourceFiles: fr.getSourceFiles,
          isSourceFileFromExternalLibrary: oo,
          getRedirectFromSourceFile: zs,
          isSourceOfProjectReferenceRedirect: Op,
          getSymlinkCache: vg,
          writeFile: ze || Mi,
          isEmitBlocked: _o,
          shouldTransformImportCall: Sd,
          getEmitModuleFormatOfFile: T1,
          getDefaultResolutionModeForFile: Vf,
          getModeForResolutionAtIndex: Y0,
          readFile: (at) => Ct.readFile(at),
          fileExists: (at) => {
            const At = wt(at);
            return _c(At) ? !0 : Pt.has(At) ? !1 : Ct.fileExists(at);
          },
          realpath: Ua(Ct, Ct.realpath),
          useCaseSensitiveFileNames: () => Ct.useCaseSensitiveFileNames(),
          getBuildInfo: () => {
            var at;
            return (at = fr.getBuildInfo) == null ? void 0 : at.call(fr);
          },
          getSourceFileFromReference: (at, At) => fr.getSourceFileFromReference(at, At),
          redirectTargetsMap: Da,
          getFileIncludeReasons: fr.getFileIncludeReasons,
          createHash: Ua(Ct, Ct.createHash),
          getModuleResolutionCache: () => fr.getModuleResolutionCache(),
          trace: Ua(Ct, Ct.trace),
          getGlobalTypingsCacheLocation: fr.getGlobalTypingsCacheLocation
        };
      }
      function Mi(ze, at, At, yr, Br, Tn) {
        Ct.writeFile(ze, at, At, yr, Br, Tn);
      }
      function os(ze) {
        var at, At;
        (at = sn) == null || at.push(sn.Phase.Emit, "emitBuildInfo", {}, !0), pc("beforeEmit");
        const yr = yU(Eie, wn(ze), void 0, bie, !1, !0);
        return pc("afterEmit"), yp("Emit", "beforeEmit", "afterEmit"), (At = sn) == null || At.pop(), yr;
      }
      function cs() {
        return tt;
      }
      function xa() {
        return pe;
      }
      function oo(ze) {
        return !!Ar.get(ze.path);
      }
      function To(ze) {
        return Ye.has(ze.path);
      }
      function ia() {
        return Se || (Se = Ine(fr));
      }
      function ja(ze, at, At, yr, Br, Tn, Er) {
        var hn, Vr;
        (hn = sn) == null || hn.push(sn.Phase.Emit, "emit", { path: ze?.path }, !0);
        const li = Wl(() => Yc(fr, ze, at, At, yr, Br, Tn, Er));
        return (Vr = sn) == null || Vr.pop(), li;
      }
      function _o(ze) {
        return Zr.has(wt(ze));
      }
      function Yc(ze, at, At, yr, Br, Tn, Er, hn) {
        if (!Er) {
          const Zi = RU(ze, at, At, yr);
          if (Zi) return Zi;
        }
        const Vr = ia(), li = Vr.getEmitResolver(H.outFile ? void 0 : at, yr, hU(Br, Er));
        pc("beforeEmit");
        const ki = Vr.runWithCancellationToken(yr, () => yU(li, wn(At), at, Sie(H, Tn, Br), Br, !1, Er, hn));
        return pc("afterEmit"), yp("Emit", "beforeEmit", "afterEmit"), ki;
      }
      function Ou(ze) {
        return _c(wt(ze));
      }
      function _c(ze) {
        return ha.get(ze) || void 0;
      }
      function xl(ze, at, At) {
        return GC(ze ? at(ze, At) : ks(fr.getSourceFiles(), (yr) => (At && At.throwIfCancellationRequested(), at(yr, At))));
      }
      function fa(ze, at) {
        return xl(ze, ou, at);
      }
      function $a(ze, at, At) {
        return xl(ze, (yr, Br) => bu(yr, Br, At), at);
      }
      function Yi(ze) {
        return oe?.get(ze.path);
      }
      function Is(ze, at) {
        return Ma(ze, at, void 0);
      }
      function Zt(ze) {
        var at;
        if (x6(ze, H, fr)) return Te;
        const At = Ae.getCombinedDiagnostics(fr).getDiagnostics(ze.fileName);
        return (at = ze.commentDirectives) != null && at.length ? I(ze, ze.commentDirectives, At).diagnostics : At;
      }
      function Mo(ze, at) {
        return xl(ze, tn, at);
      }
      function ou(ze) {
        return T_(ze) ? (ze.additionalSyntacticDiagnostics || (ze.additionalSyntacticDiagnostics = St(ze)), zi(ze.additionalSyntacticDiagnostics, ze.parseDiagnostics)) : ze.parseDiagnostics;
      }
      function Wl(ze) {
        try {
          return ze();
        } catch (at) {
          throw at instanceof N4 && (Se = void 0), at;
        }
      }
      function bu(ze, at, At) {
        return zi(d9(Ma(ze, at, At), H), Zt(ze));
      }
      function Ma(ze, at, At) {
        if (At) return ac(ze, at, At);
        let yr = oe?.get(ze.path);
        return yr || (oe ?? (oe = /* @__PURE__ */ new Map())).set(ze.path, yr = ac(ze, at)), yr;
      }
      function ac(ze, at, At) {
        return Wl(() => {
          if (x6(ze, H, fr)) return Te;
          const yr = ia();
          E.assert(!!ze.bindDiagnostics);
          const Br = ze.scriptKind === 1 || ze.scriptKind === 2, Tn = K4(ze, H.checkJs), Er = Br && jD(ze, H);
          let hn = ze.bindDiagnostics, Vr = yr.getDiagnostics(ze, at, At);
          return Tn && (hn = dn(hn, (li) => Rve.has(li.code)), Vr = dn(Vr, (li) => Rve.has(li.code))), Qo(ze, !Tn, !!At, hn, Vr, Er ? ze.jsDocDiagnostics : void 0);
        });
      }
      function Qo(ze, at, At, ...yr) {
        var Br;
        const Tn = Rf(yr);
        if (!at || !((Br = ze.commentDirectives) != null && Br.length)) return Tn;
        const { diagnostics: Er, directives: hn } = I(ze, ze.commentDirectives, Tn);
        if (At) return Er;
        for (const Vr of hn.getUnusedExpectations()) Er.push(gK(ze, Vr.range, p.Unused_ts_expect_error_directive));
        return Er;
      }
      function I(ze, at, At) {
        const yr = nK(ze, at);
        return {
          diagnostics: At.filter((Br) => lt(Br, yr) === -1),
          directives: yr
        };
      }
      function je(ze, at) {
        return Wl(() => ia().getSuggestionDiagnostics(ze, at));
      }
      function lt(ze, at) {
        const { file: At, start: yr } = ze;
        if (!At) return -1;
        const Br = Mg(At);
        let Tn = VC(Br, yr).line - 1;
        for (; Tn >= 0; ) {
          if (at.markUsed(Tn)) return Tn;
          const Er = At.text.slice(Br[Tn], Br[Tn + 1]).trim();
          if (Er !== "" && !/^\s*\/\/.*$/.test(Er)) return -1;
          Tn--;
        }
        return -1;
      }
      function St(ze) {
        return Wl(() => {
          const at = [];
          return At(ze, ze), bk(ze, At, yr), at;
          function At(hn, Vr) {
            switch (Vr.kind) {
              case 170:
              case 173:
              case 175:
                if (Vr.questionToken === hn)
                  return at.push(Er(hn, p.The_0_modifier_can_only_be_used_in_TypeScript_files, "?")), "skip";
              case 174:
              case 177:
              case 178:
              case 179:
              case 219:
              case 263:
              case 220:
              case 261:
                if (Vr.type === hn)
                  return at.push(Er(hn, p.Type_annotations_can_only_be_used_in_TypeScript_files)), "skip";
            }
            switch (hn.kind) {
              case 274:
                if (hn.isTypeOnly)
                  return at.push(Er(Vr, p._0_declarations_can_only_be_used_in_TypeScript_files, "import type")), "skip";
                break;
              case 279:
                if (hn.isTypeOnly)
                  return at.push(Er(hn, p._0_declarations_can_only_be_used_in_TypeScript_files, "export type")), "skip";
                break;
              case 277:
              case 282:
                if (hn.isTypeOnly)
                  return at.push(Er(hn, p._0_declarations_can_only_be_used_in_TypeScript_files, p_(hn) ? "import...type" : "export...type")), "skip";
                break;
              case 272:
                return at.push(Er(hn, p.import_can_only_be_used_in_TypeScript_files)), "skip";
              case 278:
                if (hn.isExportEquals)
                  return at.push(Er(hn, p.export_can_only_be_used_in_TypeScript_files)), "skip";
                break;
              case 299:
                if (hn.token === 119)
                  return at.push(Er(hn, p.implements_clauses_can_only_be_used_in_TypeScript_files)), "skip";
                break;
              case 265:
                const li = as(120);
                return E.assertIsDefined(li), at.push(Er(hn, p._0_declarations_can_only_be_used_in_TypeScript_files, li)), "skip";
              case 268:
                const ki = hn.flags & 32 ? as(145) : as(144);
                return E.assertIsDefined(ki), at.push(Er(hn, p._0_declarations_can_only_be_used_in_TypeScript_files, ki)), "skip";
              case 266:
                return at.push(Er(hn, p.Type_aliases_can_only_be_used_in_TypeScript_files)), "skip";
              case 177:
              case 175:
              case 263:
                return hn.body ? void 0 : (at.push(Er(hn, p.Signature_declarations_can_only_be_used_in_TypeScript_files)), "skip");
              case 267:
                const Zi = E.checkDefined(as(94));
                return at.push(Er(hn, p._0_declarations_can_only_be_used_in_TypeScript_files, Zi)), "skip";
              case 236:
                return at.push(Er(hn, p.Non_null_assertions_can_only_be_used_in_TypeScript_files)), "skip";
              case 235:
                return at.push(Er(hn.type, p.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)), "skip";
              case 239:
                return at.push(Er(hn.type, p.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)), "skip";
              case 217:
                E.fail();
            }
          }
          function yr(hn, Vr) {
            if (tW(Vr)) {
              const li = xr(Vr.modifiers, pl);
              li && at.push(Er(li, p.Decorators_are_not_valid_here));
            } else if (e2(Vr) && Vr.modifiers) {
              const li = qs(Vr.modifiers, pl);
              if (li >= 0) {
                if (Fi(Vr) && !H.experimentalDecorators) at.push(Er(Vr.modifiers[li], p.Decorators_are_not_valid_here));
                else if (sl(Vr)) {
                  const ki = qs(Vr.modifiers, ck);
                  if (ki >= 0) {
                    const Zi = qs(Vr.modifiers, XO);
                    if (li > ki && Zi >= 0 && li < Zi) at.push(Er(Vr.modifiers[li], p.Decorators_are_not_valid_here));
                    else if (ki >= 0 && li < ki) {
                      const yo = qs(Vr.modifiers, pl, ki);
                      yo >= 0 && at.push(ts(Er(Vr.modifiers[yo], p.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export), Er(Vr.modifiers[li], p.Decorator_used_before_export_here)));
                    }
                  }
                }
              }
            }
            switch (Vr.kind) {
              case 264:
              case 232:
              case 175:
              case 177:
              case 178:
              case 179:
              case 219:
              case 263:
              case 220:
                if (hn === Vr.typeParameters)
                  return at.push(Tn(hn, p.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)), "skip";
              case 244:
                if (hn === Vr.modifiers)
                  return Br(Vr.modifiers, Vr.kind === 244), "skip";
                break;
              case 173:
                if (hn === Vr.modifiers) {
                  for (const li of hn) hs(li) && li.kind !== 126 && li.kind !== 129 && at.push(Er(li, p.The_0_modifier_can_only_be_used_in_TypeScript_files, as(li.kind)));
                  return "skip";
                }
                break;
              case 170:
                if (hn === Vr.modifiers && _t(hn, hs))
                  return at.push(Tn(hn, p.Parameter_modifiers_can_only_be_used_in_TypeScript_files)), "skip";
                break;
              case 214:
              case 215:
              case 234:
              case 286:
              case 287:
              case 216:
                if (hn === Vr.typeArguments)
                  return at.push(Tn(hn, p.Type_arguments_can_only_be_used_in_TypeScript_files)), "skip";
                break;
            }
          }
          function Br(hn, Vr) {
            for (const li of hn) switch (li.kind) {
              case 87:
                if (Vr) continue;
              case 125:
              case 123:
              case 124:
              case 148:
              case 138:
              case 128:
              case 164:
              case 103:
              case 147:
                at.push(Er(li, p.The_0_modifier_can_only_be_used_in_TypeScript_files, as(li.kind)));
                break;
              case 126:
              case 95:
              case 90:
              case 129:
            }
          }
          function Tn(hn, Vr, ...li) {
            const ki = hn.pos;
            return wl(ze, ki, hn.end - ki, Vr, ...li);
          }
          function Er(hn, Vr, ...li) {
            return Sp(ze, hn, Vr, ...li);
          }
        });
      }
      function jr(ze, at) {
        let At = ge?.get(ze.path);
        return At || (ge ?? (ge = /* @__PURE__ */ new Map())).set(ze.path, At = Bn(ze, at)), At;
      }
      function Bn(ze, at) {
        return Wl(() => {
          const At = ia().getEmitResolver(ze, at);
          return vie(wn(so), At, ze) || Te;
        });
      }
      function tn(ze, at) {
        return ze.isDeclarationFile ? Te : jr(ze, at);
      }
      function ai() {
        return GC(zi(Ae.getCombinedDiagnostics(fr).getGlobalDiagnostics(), ei()));
      }
      function ei() {
        if (!H.configFile) return Te;
        let ze = Ae.getCombinedDiagnostics(fr).getDiagnostics(H.configFile.fileName);
        return bc((at) => {
          ze = zi(ze, Ae.getCombinedDiagnostics(fr).getDiagnostics(at.sourceFile.fileName));
        }), ze;
      }
      function La() {
        return z.length ? GC(ia().getGlobalDiagnostics().slice()) : Te;
      }
      function ds() {
        return U || Te;
      }
      function cl(ze, at, At) {
        Ip(us(ze), at, void 0, At);
      }
      function vc(ze, at) {
        return ze.fileName === at.fileName;
      }
      function ml(ze, at) {
        return ze.kind === 80 ? at.kind === 80 && ze.escapedText === at.escapedText : at.kind === 11 && ze.text === at.text;
      }
      function gl(ze, at) {
        const At = A.createStringLiteral(ze), yr = A.createImportDeclaration(void 0, void 0, At);
        return AS(yr, 2), eo(At, yr), eo(yr, at), At.flags &= -17, yr.flags &= -17, At;
      }
      function Os(ze) {
        if (ze.imports) return;
        const at = T_(ze), At = Sl(ze);
        let yr, Br, Tn;
        if (at || !ze.isDeclarationFile && (Zp(H) || Sl(ze))) {
          H.importHelpers && (yr = [gl(Vy, ze)]);
          const hn = yO(JA(H, ze), H);
          hn && (yr || (yr = [])).push(gl(hn, ze));
        }
        for (const hn of ze.statements) Er(hn, !1);
        (ze.flags & 4194304 || at) && BO(ze, !0, !0, (hn, Vr) => {
          bv(hn, !1), yr = kr(yr, Vr);
        }), ze.imports = yr || Te, ze.moduleAugmentations = Br || Te, ze.ambientModuleNames = Tn || Te;
        return;
        function Er(hn, Vr) {
          if (q3(hn)) {
            const li = Lx(hn);
            li && Ts(li) && li.text && (!Vr || !jl(li.text)) && (bv(hn, !1), yr = kr(yr, li), !Lr && Ut === 0 && !ze.isDeclarationFile && (ta(li.text, "node:") && !jO.has(li.text) ? Lr = !0 : Lr === void 0 && _te.has(li.text) && (Lr = !1)));
          } else if (Qc(hn) && o_(hn) && (Vr || Qn(hn, 128) || ze.isDeclarationFile)) {
            hn.name.parent = hn;
            const li = Xp(hn.name);
            if (At || Vr && !jl(li)) (Br || (Br = [])).push(hn.name);
            else if (!Vr) {
              ze.isDeclarationFile && (Tn || (Tn = [])).push(li);
              const ki = hn.body;
              if (ki) for (const Zi of ki.statements) Er(Zi, !0);
            }
          }
        }
      }
      function Ao(ze) {
        var at;
        const At = pz(ze), yr = At && ((at = K?.get(At)) == null ? void 0 : at.actual);
        return yr !== void 0 ? Ou(yr) : void 0;
      }
      function Su(ze, at) {
        return rf(CU(at.fileName, ze.fileName), Ou);
      }
      function rf(ze, at, At, yr) {
        if (UC(ze)) {
          const Br = Ct.getCanonicalFileName(ze);
          if (!H.allowNonTsExtensions && !bt(Rf(ri), (Er) => lc(Br, Er))) {
            At && (Zg(Br) ? At(p.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option, ze) : At(p.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1, ze, "'" + Rf(Li).join("', '") + "'"));
            return;
          }
          const Tn = at(ze);
          if (At)
            if (Tn)
              Rv(yr) && Br === Ct.getCanonicalFileName(_c(yr.file).fileName) && At(p.A_file_cannot_have_a_reference_to_itself);
            else {
              const Er = zs(ze);
              Er?.outputDts ? At(p.Output_file_0_has_not_been_built_from_source_file_1, Er.outputDts, ze) : At(p.File_0_not_found, ze);
            }
          return Tn;
        } else {
          const Br = H.allowNonTsExtensions && at(ze);
          if (Br) return Br;
          if (At && H.allowNonTsExtensions) {
            At(p.File_0_not_found, ze);
            return;
          }
          const Tn = bt(Li[0], (Er) => at(ze + Er));
          return At && !Tn && At(p.Could_not_resolve_the_path_0_with_the_extensions_Colon_1, ze, "'" + Rf(Li).join("', '") + "'"), Tn;
        }
      }
      function Ip(ze, at, At, yr) {
        rf(ze, (Br) => Hi(Br, at, yr, At), (Br, ...Tn) => qe(void 0, yr, Br, Tn), yr);
      }
      function Pe(ze, at) {
        return Ip(ze, !1, void 0, at);
      }
      function jt(ze, at, At) {
        !Rv(At) && _t(Ae.getFileReasons().get(at.path), Rv) ? qe(at, At, p.Already_included_file_name_0_differs_from_file_name_1_only_in_casing, [at.fileName, ze]) : qe(at, At, p.File_name_0_differs_from_already_included_file_name_1_only_in_casing, [ze, at.fileName]);
      }
      function Yr(ze, at, At, yr, Br, Tn, Er) {
        var hn;
        const Vr = Nv.createRedirectedSourceFile({
          redirectTarget: ze,
          unredirected: at
        });
        return Vr.fileName = At, Vr.path = yr, Vr.resolvedPath = Br, Vr.originalFileName = Tn, Vr.packageJsonLocations = (hn = Er.packageJsonLocations) != null && hn.length ? Er.packageJsonLocations : void 0, Vr.packageJsonScope = Er.packageJsonScope, Ar.set(yr, Ut > 0), Vr;
      }
      function Hi(ze, at, At, yr) {
        var Br, Tn;
        (Br = sn) == null || Br.push(sn.Phase.Program, "findSourceFile", {
          fileName: ze,
          isDefaultLib: at || void 0,
          fileIncludeKind: hj[At.kind]
        });
        const Er = io(ze, at, At, yr);
        return (Tn = sn) == null || Tn.pop(), Er;
      }
      function Js(ze, at, At, yr) {
        const Br = f9(ca(ze, Nt), at?.getPackageJsonInfoCache(), At, yr), Tn = Ps(yr), Er = LA(yr);
        return typeof Br == "object" ? {
          ...Br,
          languageVersion: Tn,
          setExternalModuleIndicator: Er,
          jsDocParsingMode: At.jsDocParsingMode
        } : {
          languageVersion: Tn,
          impliedNodeFormat: Br,
          setExternalModuleIndicator: Er,
          jsDocParsingMode: At.jsDocParsingMode
        };
      }
      function io(ze, at, At, yr) {
        var Br, Tn;
        const Er = wt(ze);
        if (nt) {
          let Zi = Il(Er);
          if (!Zi && Ct.realpath && H.preserveSymlinks && $l(ze) && ze.includes(ah)) {
            const yo = wt(Ct.realpath(ze));
            yo !== Er && (Zi = Il(yo));
          }
          if (Zi?.source) {
            const yo = Hi(Zi.source, at, At, yr);
            return yo && Oc(yo, Er, ze, void 0), yo;
          }
        }
        const hn = ze;
        if (ha.has(Er)) {
          const Zi = ha.get(Er), yo = Qs(Zi || void 0, At, !0);
          if (Zi && yo && H.forceConsistentCasingInFileNames !== !1) {
            const Jc = Zi.fileName;
            wt(Jc) !== wt(ze) && (ze = ((Br = zs(ze)) == null ? void 0 : Br.outputDts) || ze), Lj(Jc, Nt) !== Lj(ze, Nt) && jt(ze, Zi, At);
          }
          return Zi && Ar.get(Zi.path) && Ut === 0 ? (Ar.set(Zi.path, !1), H.noResolve || (id(Zi, at), ad(Zi)), H.noLib || Fu(Zi), Xt.set(Zi.path, !1), A_(Zi)) : Zi && Xt.get(Zi.path) && Ut < Ft && (Xt.set(Zi.path, !1), A_(Zi)), Zi || void 0;
        }
        let Vr;
        if (!nt) {
          const Zi = zs(ze);
          if (Zi?.outputDts) {
            if (Zi.resolvedRef.commandLine.options.outFile) return;
            ze = Zi.outputDts, Vr = wt(Zi.outputDts);
          }
        }
        const li = Js(ze, Me, Ct, H), ki = Ct.getSourceFile(ze, li, (Zi) => qe(void 0, At, p.Cannot_read_file_0_Colon_1, [ze, Zi]), Dt);
        if (yr) {
          const Zi = sv(yr), yo = na.get(Zi);
          if (yo) {
            const Jc = Yr(yo, ki, ze, Er, wt(ze), hn, li);
            return Da.add(yo.path, ze), Oc(Jc, Er, ze, Vr), Qs(Jc, At, !1), Ea.set(Er, _5(yr)), fe.push(Jc), Jc;
          } else ki && (na.set(Zi, ki), Ea.set(Er, _5(yr)));
        }
        if (Oc(ki, Er, ze, Vr), ki) {
          if (Ar.set(Er, Ut > 0), ki.fileName = ze, ki.path = Er, ki.resolvedPath = wt(ze), ki.originalFileName = hn, ki.packageJsonLocations = (Tn = li.packageJsonLocations) != null && Tn.length ? li.packageJsonLocations : void 0, ki.packageJsonScope = li.packageJsonScope, Qs(ki, At, !1), Ct.useCaseSensitiveFileNames()) {
            const Zi = Ny(Er), yo = ne.get(Zi);
            yo ? jt(ze, yo, At) : ne.set(Zi, ki);
          }
          H.noResolve || (id(ki, at), ad(ki)), H.noLib || Fu(ki), A_(ki), at ? he.push(ki) : fe.push(ki), (ce ?? (ce = /* @__PURE__ */ new Set())).add(ki.path);
        }
        return ki;
      }
      function Qs(ze, at, At) {
        return ze && (!At || !Rv(at) || !ce?.has(at.file)) ? (Ae.getFileReasons().add(ze.path, at), !0) : !1;
      }
      function Oc(ze, at, At, yr) {
        yr ? (Dc(At, yr, ze), Dc(At, at, ze || !1)) : Dc(At, at, ze);
      }
      function Dc(ze, at, At) {
        ha.set(at, At), At !== void 0 ? Pt.delete(at) : Pt.set(at, ze);
      }
      function zs(ze) {
        return we?.get(wt(ze));
      }
      function bc(ze) {
        return dz(tt, ze);
      }
      function Il(ze) {
        return Ge?.get(ze);
      }
      function Op(ze) {
        return nt && !!zs(ze);
      }
      function Wf(ze) {
        if (re)
          return re.get(ze) || void 0;
      }
      function id(ze, at) {
        bt(ze.referencedFiles, (At, yr) => {
          Ip(CU(At.fileName, ze.fileName), at, void 0, {
            kind: 4,
            file: ze.path,
            index: yr
          });
        });
      }
      function ad(ze) {
        const at = ze.typeReferenceDirectives;
        if (!at.length) return;
        const At = Ie?.get(ze.path) || Jt(at, ze), yr = H6();
        (ue ?? (ue = /* @__PURE__ */ new Map())).set(ze.path, yr);
        for (let Br = 0; Br < at.length; Br++) {
          const Tn = ze.typeReferenceDirectives[Br], Er = At[Br], hn = Tn.fileName, Vr = qf(Tn, ze);
          yr.set(hn, Vr, Er), ll(hn, Vr, Er, {
            kind: 5,
            file: ze.path,
            index: Br
          });
        }
      }
      function hl(ze) {
        var at;
        return ((at = Cr(ze)) == null ? void 0 : at.commandLine.options) || H;
      }
      function ll(ze, at, At, yr) {
        var Br, Tn;
        (Br = sn) == null || Br.push(sn.Phase.Program, "processTypeReferenceDirective", {
          directive: ze,
          hasResolved: !!At.resolvedTypeReferenceDirective,
          refKind: yr.kind,
          refPath: Rv(yr) ? yr.file : void 0
        }), Kd(ze, at, At, yr), (Tn = sn) == null || Tn.pop();
      }
      function Kd(ze, at, At, yr) {
        pr(At);
        const { resolvedTypeReferenceDirective: Br } = At;
        Br ? (Br.isExternalLibraryImport && Ut++, Ip(Br.resolvedFileName, !1, Br.packageId, yr), Br.isExternalLibraryImport && Ut--) : qe(void 0, yr, p.Cannot_find_type_definition_file_for_0, [ze]);
      }
      function em(ze) {
        const at = K?.get(ze);
        if (at) return at.actual;
        const At = e0(ze);
        return (K ?? (K = /* @__PURE__ */ new Map())).set(ze, At), Ye.add(wt(At.actual)), At.actual;
      }
      function e0(ze) {
        var at, At, yr, Br, Tn;
        const Er = ke?.get(ze);
        if (Er) return Er;
        if (!H.libReplacement) {
          const Zi = {
            resolution: { resolvedModule: void 0 },
            actual: jn(_i, ze)
          };
          return (ke ?? (ke = /* @__PURE__ */ new Map())).set(ze, Zi), Zi;
        }
        if (Ve !== 0 && Q && !$n(ze)) {
          const Zi = (at = Q.resolvedLibReferences) == null ? void 0 : at.get(ze);
          if (Zi) {
            if (Zi.resolution && _1(H, Ct)) {
              const yo = FU(ze), Jc = _9(H, Nt, ze);
              _a(Ct, Zi.resolution.resolvedModule ? Zi.resolution.resolvedModule.packageId ? p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved, yo, ca(Jc, Nt), (At = Zi.resolution.resolvedModule) == null ? void 0 : At.resolvedFileName, ((yr = Zi.resolution.resolvedModule) == null ? void 0 : yr.packageId) && sv(Zi.resolution.resolvedModule.packageId));
            }
            return (ke ?? (ke = /* @__PURE__ */ new Map())).set(ze, Zi), Zi;
          }
        }
        const hn = FU(ze), Vr = _9(H, Nt, ze);
        (Br = sn) == null || Br.push(sn.Phase.Program, "resolveLibrary", { resolveFrom: Vr }), pc("beforeResolveLibrary");
        const li = zn(hn, Vr, H, ze);
        pc("afterResolveLibrary"), yp("ResolveLibrary", "beforeResolveLibrary", "afterResolveLibrary"), (Tn = sn) == null || Tn.pop();
        const ki = {
          resolution: li,
          actual: li.resolvedModule ? li.resolvedModule.resolvedFileName : jn(_i, ze)
        };
        return (ke ?? (ke = /* @__PURE__ */ new Map())).set(ze, ki), ki;
      }
      function Fu(ze) {
        bt(ze.libReferenceDirectives, (at, At) => {
          const yr = pz(at);
          yr ? cl(em(yr), !0, {
            kind: 7,
            file: ze.path,
            index: At
          }) : Ae.addFileProcessingDiagnostic({
            kind: 0,
            reason: {
              kind: 7,
              file: ze.path,
              index: At
            }
          });
        });
      }
      function nf(ze) {
        return Ct.getCanonicalFileName(ze);
      }
      function A_(ze) {
        if (Os(ze), ze.imports.length || ze.moduleAugmentations.length) {
          const at = Bve(ze), At = Ce?.get(ze.path) || Yt(at, ze);
          E.assert(At.length === at.length);
          const yr = hl(ze), Br = H6();
          (ae ?? (ae = /* @__PURE__ */ new Map())).set(ze.path, Br);
          for (let Tn = 0; Tn < at.length; Tn++) {
            const Er = At[Tn].resolvedModule, hn = at[Tn].text, Vr = c9(ze, at[Tn], yr);
            if (Br.set(hn, Vr, At[Tn]), Pr(ze, hn, At[Tn], Vr), !Er) continue;
            const li = Er.isExternalLibraryImport, ki = !MD(Er.extension) && !zs(Er.resolvedFileName), Zi = li && ki && (!Er.originalPath || p1(Er.resolvedFileName)), yo = Er.resolvedFileName;
            li && Ut++;
            const Jc = Zi && Ut > Ft, Fp = yo && !jU(yr, Er, ze) && !yr.noResolve && Tn < ze.imports.length && !Jc && !(ki && !t1(yr)) && (rn(ze.imports[Tn]) || !(ze.imports[Tn].flags & 16777216));
            Jc ? Xt.set(ze.path, !0) : Fp && Hi(yo, !1, {
              kind: 3,
              file: ze.path,
              index: Tn
            }, Er.packageId), li && Ut--;
          }
        }
      }
      function t0(ze, at) {
        let At = !0;
        const yr = Ct.getCanonicalFileName(ca(at, Nt));
        for (const Br of ze) Br.isDeclarationFile || Ct.getCanonicalFileName(ca(Br.fileName, Nt)).indexOf(yr) !== 0 && (Ae.addLazyConfigDiagnostic(Br, p.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files, Br.fileName, at), At = !1);
        return At;
      }
      function Uf(ze) {
        re || (re = /* @__PURE__ */ new Map());
        const at = Ak(ze), At = wt(at), yr = re.get(At);
        if (yr !== void 0) return yr || void 0;
        let Br, Tn;
        if (Ct.getParsedCommandLine) {
          if (Br = Ct.getParsedCommandLine(at), !Br) {
            Oc(void 0, At, at, void 0), re.set(At, !1);
            return;
          }
          Tn = E.checkDefined(Br.options.configFile), E.assert(!Tn.path || Tn.path === At), Oc(Tn, At, at, void 0);
        } else {
          const hn = ca(Xn(at), Nt);
          if (Tn = Ct.getSourceFile(at, 100), Oc(Tn, At, at, void 0), Tn === void 0) {
            re.set(At, !1);
            return;
          }
          Br = EN(Tn, Kt, hn, void 0, at);
        }
        Tn.fileName = at, Tn.path = At, Tn.resolvedPath = At, Tn.originalFileName = at;
        const Er = {
          commandLine: Br,
          sourceFile: Tn
        };
        if (re.set(At, Er), H.configFile !== Tn) {
          we ?? (we = /* @__PURE__ */ new Map()), Ge ?? (Ge = /* @__PURE__ */ new Map());
          let hn;
          Br.options.outFile && (hn = F0(Br.options.outFile, ".d.ts"), Ge?.set(wt(hn), { resolvedRef: Er }));
          const Vr = s_(() => XS(Er.commandLine, !Ct.useCaseSensitiveFileNames()));
          Br.fileNames.forEach((li) => {
            const ki = wt(li);
            let Zi;
            !$l(li) && !lc(li, ".json") && (Br.options.outFile ? Zi = hn : (Zi = Pw(li, Er.commandLine, !Ct.useCaseSensitiveFileNames(), Vr), Ge.set(wt(Zi), {
              resolvedRef: Er,
              source: li
            }))), we.set(ki, {
              resolvedRef: Er,
              outputDts: Zi
            });
          });
        }
        return Br.projectReferences && (Er.references = Br.projectReferences.map(Uf)), Er;
      }
      function Z() {
        H.strictPropertyInitialization && !Sf(H, "strictNullChecks") && Cn(p.Option_0_cannot_be_specified_without_specifying_option_1, "strictPropertyInitialization", "strictNullChecks"), H.exactOptionalPropertyTypes && !Sf(H, "strictNullChecks") && Cn(p.Option_0_cannot_be_specified_without_specifying_option_1, "exactOptionalPropertyTypes", "strictNullChecks"), (H.isolatedModules || H.verbatimModuleSyntax) && H.outFile && Cn(p.Option_0_cannot_be_specified_with_option_1, "outFile", H.verbatimModuleSyntax ? "verbatimModuleSyntax" : "isolatedModules"), H.isolatedDeclarations && (t1(H) && Cn(p.Option_0_cannot_be_specified_with_option_1, "allowJs", "isolatedDeclarations"), U_(H) || Cn(p.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2, "isolatedDeclarations", "declaration", "composite")), H.inlineSourceMap && (H.sourceMap && Cn(p.Option_0_cannot_be_specified_with_option_1, "sourceMap", "inlineSourceMap"), H.mapRoot && Cn(p.Option_0_cannot_be_specified_with_option_1, "mapRoot", "inlineSourceMap")), H.composite && (H.declaration === !1 && Cn(p.Composite_projects_may_not_disable_declaration_emit, "declaration"), H.incremental === !1 && Cn(p.Composite_projects_may_not_disable_incremental_compilation, "declaration"));
        const ze = H.outFile;
        if (!H.tsBuildInfoFile && H.incremental && !ze && !H.configFilePath && Ae.addConfigDiagnostic(nc(p.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)), F(), Bt(), H.composite) {
          const Er = new Set(z.map(wt));
          for (const hn of de) gv(hn, fr) && !Er.has(hn.path) && Ae.addLazyConfigDiagnostic(hn, p.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern, hn.fileName, H.configFilePath || "");
        }
        if (H.paths) {
          for (const Er in H.paths)
            if (po(H.paths, Er))
              if (UJ(Er) || cn(!0, Er, p.Pattern_0_can_have_at_most_one_Asterisk_character, Er), da(H.paths[Er])) {
                const hn = H.paths[Er].length;
                hn === 0 && cn(!1, Er, p.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array, Er);
                for (let Vr = 0; Vr < hn; Vr++) {
                  const li = H.paths[Er][Vr], ki = typeof li;
                  ki === "string" ? (UJ(li) || Rr(Er, Vr, p.Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character, li, Er), !H.baseUrl && !Bf(li) && !O4(li) && Rr(Er, Vr, p.Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash)) : Rr(Er, Vr, p.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2, li, Er, ki);
                }
              } else cn(!1, Er, p.Substitutions_for_pattern_0_should_be_an_array, Er);
        }
        !H.sourceMap && !H.inlineSourceMap && (H.inlineSources && Cn(p.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided, "inlineSources"), H.sourceRoot && Cn(p.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided, "sourceRoot")), H.mapRoot && !(H.sourceMap || H.declarationMap) && Cn(p.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2, "mapRoot", "sourceMap", "declarationMap"), H.declarationDir && (U_(H) || Cn(p.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2, "declarationDir", "declaration", "composite"), ze && Cn(p.Option_0_cannot_be_specified_with_option_1, "declarationDir", "outFile")), H.declarationMap && !U_(H) && Cn(p.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2, "declarationMap", "declaration", "composite"), H.lib && H.noLib && Cn(p.Option_0_cannot_be_specified_with_option_1, "lib", "noLib");
        const at = Ps(H), At = xr(de, (Er) => Sl(Er) && !Er.isDeclarationFile);
        if (H.isolatedModules || H.verbatimModuleSyntax)
          H.module === 0 && at < 2 && H.isolatedModules && Cn(p.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher, "isolatedModules", "target"), H.preserveConstEnums === !1 && Cn(p.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled, H.verbatimModuleSyntax ? "verbatimModuleSyntax" : "isolatedModules", "preserveConstEnums");
        else if (At && at < 2 && H.module === 0) {
          const Er = gS(At, typeof At.externalModuleIndicator == "boolean" ? At : At.externalModuleIndicator);
          Ae.addConfigDiagnostic(wl(At, Er.start, Er.length, p.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none));
        }
        if (ze && !H.emitDeclarationOnly) {
          if (H.module && !(H.module === 2 || H.module === 4)) Cn(p.Only_amd_and_system_modules_are_supported_alongside_0, "outFile", "module");
          else if (H.module === void 0 && At) {
            const Er = gS(At, typeof At.externalModuleIndicator == "boolean" ? At : At.externalModuleIndicator);
            Ae.addConfigDiagnostic(wl(At, Er.start, Er.length, p.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system, "outFile"));
          }
        }
        if (zb(H) && (Hu(H) === 1 ? Cn(p.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic, "resolveJsonModule") : dO(H) || Cn(p.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd, "resolveJsonModule", "module")), H.outDir || H.rootDir || H.sourceRoot || H.mapRoot || U_(H) && H.declarationDir) {
          const Er = qt();
          H.outDir && Er === "" && de.some((hn) => Md(hn.fileName) > 1) && Cn(p.Cannot_find_the_common_subdirectory_path_for_the_input_files, "outDir");
        }
        if (!H.noEmit && !H.composite && !H.rootDir && H.configFilePath && (H.outDir || U_(H) && H.declarationDir || H.outFile)) {
          const Er = qt(), hn = kie(Rn(de, (Vr) => !Vr.isDeclarationFile && gv(Vr, fr) ? Vr.fileName : void 0), Nt, nf);
          hn !== "" && nf(Er) !== nf(hn) && Fc(!0, H.outFile ? "outFile" : H.outDir ? "outDir" : "declarationDir", !H.outFile && H.outDir ? "declarationDir" : void 0, ba(ba(void 0, p.Visit_https_Colon_Slash_Slashaka_ms_Slashts6_for_migration_information), p.The_common_source_directory_of_0_is_1_The_rootDir_setting_must_be_explicitly_set_to_this_or_another_path_to_adjust_your_output_s_file_layout, nl(H.configFilePath), vx(H.configFilePath, hn, nf)));
        }
        H.checkJs && !t1(H) && Cn(p.Option_0_cannot_be_specified_without_specifying_option_1, "checkJs", "allowJs"), H.emitDeclarationOnly && (U_(H) || Cn(p.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2, "emitDeclarationOnly", "declaration", "composite")), H.emitDecoratorMetadata && !H.experimentalDecorators && Cn(p.Option_0_cannot_be_specified_without_specifying_option_1, "emitDecoratorMetadata", "experimentalDecorators"), H.jsxFactory ? (H.reactNamespace && Cn(p.Option_0_cannot_be_specified_with_option_1, "reactNamespace", "jsxFactory"), (H.jsx === 4 || H.jsx === 5) && Cn(p.Option_0_cannot_be_specified_when_option_jsx_is_1, "jsxFactory", SN.get("" + H.jsx)), Tk(H.jsxFactory, at) || fs("jsxFactory", p.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name, H.jsxFactory)) : H.reactNamespace && !Y_(H.reactNamespace, at) && fs("reactNamespace", p.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier, H.reactNamespace), H.jsxFragmentFactory && (H.jsxFactory || Cn(p.Option_0_cannot_be_specified_without_specifying_option_1, "jsxFragmentFactory", "jsxFactory"), (H.jsx === 4 || H.jsx === 5) && Cn(p.Option_0_cannot_be_specified_when_option_jsx_is_1, "jsxFragmentFactory", SN.get("" + H.jsx)), Tk(H.jsxFragmentFactory, at) || fs("jsxFragmentFactory", p.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name, H.jsxFragmentFactory)), H.reactNamespace && (H.jsx === 4 || H.jsx === 5) && Cn(p.Option_0_cannot_be_specified_when_option_jsx_is_1, "reactNamespace", SN.get("" + H.jsx)), H.jsxImportSource && H.jsx === 2 && Cn(p.Option_0_cannot_be_specified_when_option_jsx_is_1, "jsxImportSource", SN.get("" + H.jsx));
        const yr = u_(H);
        H.verbatimModuleSyntax && (yr === 2 || yr === 3 || yr === 4) && Cn(p.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System, "verbatimModuleSyntax"), H.allowImportingTsExtensions && !(H.noEmit || H.emitDeclarationOnly || H.rewriteRelativeImportExtensions) && fs("allowImportingTsExtensions", p.Option_allowImportingTsExtensions_can_only_be_used_when_one_of_noEmit_emitDeclarationOnly_or_rewriteRelativeImportExtensions_is_set);
        const Br = Hu(H);
        if (H.resolvePackageJsonExports && !S6(Br) && Cn(p.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler, "resolvePackageJsonExports"), H.resolvePackageJsonImports && !S6(Br) && Cn(p.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler, "resolvePackageJsonImports"), H.customConditions && !S6(Br) && Cn(p.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler, "customConditions"), Br === 100 && !BA(yr) && yr !== 200 && yr !== 1 && fs("moduleResolution", p.Option_0_can_only_be_used_when_module_is_set_to_preserve_commonjs_or_es2015_or_later, "bundler"), mx[yr] && 100 <= yr && yr <= 199 && !(3 <= Br && Br <= 99)) {
          const Er = mx[yr], hn = WC[Er] ? Er : "Node16";
          fs("moduleResolution", p.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1, hn, Er);
        } else if (WC[Br] && 3 <= Br && Br <= 99 && !(100 <= yr && yr <= 199)) {
          const Er = WC[Br];
          fs("module", p.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1, Er, Er);
        }
        if (!H.noEmit && !H.suppressOutputPathCheck) {
          const Er = wn(), hn = /* @__PURE__ */ new Set();
          pU(Er, (Vr) => {
            H.emitDeclarationOnly || Tn(Vr.jsFilePath, hn), Tn(Vr.declarationFilePath, hn);
          });
        }
        function Tn(Er, hn) {
          if (Er) {
            const Vr = wt(Er);
            if (ha.has(Vr)) {
              let ki;
              H.configFilePath || (ki = ba(void 0, p.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)), ki = ba(ki, p.Cannot_write_file_0_because_it_would_overwrite_input_file, Er), lh(Er, _O(ki));
            }
            const li = Ct.useCaseSensitiveFileNames() ? Vr : Ny(Vr);
            hn.has(li) ? lh(Er, nc(p.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files, Er)) : hn.add(li);
          }
        }
      }
      function st() {
        const ze = H.ignoreDeprecations;
        if (ze) {
          if (ze === "5.0" || ze === "6.0") return new Ld(ze);
          se();
        }
        return Ld.zero;
      }
      function Rt(ze, at, At, yr) {
        const Br = new Ld(ze), Tn = new Ld(at), Er = new Ld(ie || Un), hn = st(), Vr = Tn.compareTo(Er) !== 1, li = !Vr && hn.compareTo(Br) === -1;
        (Vr || li) && yr((ki, Zi, yo, Jc) => {
          Vr ? Zi === void 0 ? At(ki, Zi, yo, Jc, p.Option_0_has_been_removed_Please_remove_it_from_your_configuration, ki) : At(ki, Zi, yo, Jc, p.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration, ki, Zi) : Zi === void 0 ? At(ki, Zi, yo, Jc, p.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error, ki, at, ze) : At(ki, Zi, yo, Jc, p.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error, ki, Zi, at, ze);
        });
      }
      function F() {
        function ze(at, At, yr, Br, Tn, ...Er) {
          if (yr) {
            let hn = ba(void 0, p.Use_0_instead, yr);
            Br && (hn = ba(hn, Br));
            const Vr = ba(hn, Tn, ...Er);
            Fc(!At, at, void 0, Vr);
          } else {
            let hn;
            Br && (hn = ba(void 0, Br));
            const Vr = ba(hn, Tn, ...Er);
            Fc(!At, at, void 0, Vr);
          }
        }
        Rt("5.0", "5.5", ze, (at) => {
          H.target === 0 && at("target", "ES3"), H.noImplicitUseStrict && at("noImplicitUseStrict"), H.keyofStringsOnly && at("keyofStringsOnly"), H.suppressExcessPropertyErrors && at("suppressExcessPropertyErrors"), H.suppressImplicitAnyIndexErrors && at("suppressImplicitAnyIndexErrors"), H.noStrictGenericChecks && at("noStrictGenericChecks"), H.charset && at("charset"), H.out && at("out"), H.importsNotUsedAsValues && at("importsNotUsedAsValues", void 0, "verbatimModuleSyntax"), H.preserveValueImports && at("preserveValueImports", void 0, "verbatimModuleSyntax");
        }), Rt("6.0", "7.0", ze, (at) => {
          H.alwaysStrict === !1 && at("alwaysStrict", "false", void 0, void 0), H.target === 1 && at("target", "ES5"), H.moduleResolution === 2 && at("moduleResolution", "node10", void 0, p.Visit_https_Colon_Slash_Slashaka_ms_Slashts6_for_migration_information), H.moduleResolution === 1 && at("moduleResolution", "classic", void 0, void 0), H.baseUrl !== void 0 && at("baseUrl", void 0, void 0, p.Visit_https_Colon_Slash_Slashaka_ms_Slashts6_for_migration_information), H.esModuleInterop === !1 && at("esModuleInterop", "false", void 0, void 0), H.allowSyntheticDefaultImports === !1 && at("allowSyntheticDefaultImports", "false", void 0, void 0), H.outFile && at("outFile"), (H.module === 0 || H.module === 2 || H.module === 3 || H.module === 4) && at("module", mx[H.module], void 0, void 0), H.downlevelIteration !== void 0 && at("downlevelIteration");
        });
      }
      function ve(ze, at, At) {
        function yr(Br, Tn, Er, hn, Vr, ...li) {
          ji(at, At, Vr, ...li);
        }
        Rt("5.0", "5.5", yr, (Br) => {
          ze.prepend && Br("prepend");
        });
      }
      function qe(ze, at, At, yr) {
        Ae.addFileProcessingDiagnostic({
          kind: 1,
          file: ze && ze.path,
          fileProcessingReason: at,
          diagnostic: At,
          args: yr
        });
      }
      function Bt() {
        const ze = H.suppressOutputPathCheck ? void 0 : Mv(H);
        HD(pe, tt, (at, At, yr) => {
          const Br = (At ? At.commandLine.projectReferences : pe)[yr], Tn = At && At.sourceFile;
          if (ve(Br, Tn, yr), !at) {
            ji(Tn, yr, p.File_0_not_found, Br.path);
            return;
          }
          const Er = at.commandLine.options;
          (!Er.composite || Er.noEmit) && (At ? At.commandLine.fileNames : z).length && (Er.composite || ji(Tn, yr, p.Referenced_project_0_must_have_setting_composite_Colon_true, Br.path), Er.noEmit && ji(Tn, yr, p.Referenced_project_0_may_not_disable_emit, Br.path)), !At && ze && ze === Mv(Er) && (ji(Tn, yr, p.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1, ze, Br.path), Zr.set(wt(ze), !0));
        });
      }
      function Rr(ze, at, At, ...yr) {
        let Br = !0;
        dr((Tn) => {
          bs(Tn.initializer) && s6(Tn.initializer, ze, (Er) => {
            const hn = Er.initializer;
            hu(hn) && hn.elements.length > at && (Ae.addConfigDiagnostic(Sp(H.configFile, hn.elements[at], At, ...yr)), Br = !1);
          });
        }), Br && Ul(At, ...yr);
      }
      function cn(ze, at, At, ...yr) {
        let Br = !0;
        dr((Tn) => {
          bs(Tn.initializer) && cu(Tn.initializer, ze, at, void 0, At, ...yr) && (Br = !1);
        }), Br && Ul(At, ...yr);
      }
      function dr(ze) {
        return gz(Lu(), "paths", ze);
      }
      function Cn(ze, at, At, yr) {
        Fc(!0, at, At, ze, at, At, yr);
      }
      function fs(ze, at, ...At) {
        Fc(!1, ze, void 0, at, ...At);
      }
      function ji(ze, at, At, ...yr) {
        const Br = Z3(ze || H.configFile, "references", (Tn) => hu(Tn.initializer) ? Tn.initializer : void 0);
        Br && Br.elements.length > at ? Ae.addConfigDiagnostic(Sp(ze || H.configFile, Br.elements[at], At, ...yr)) : Ae.addConfigDiagnostic(nc(At, ...yr));
      }
      function Fc(ze, at, At, yr, ...Br) {
        const Tn = Lu();
        (!Tn || !cu(Tn, ze, at, At, yr, ...Br)) && Ul(yr, ...Br);
      }
      function Ul(ze, ...at) {
        const At = N_();
        At ? "messageText" in ze ? Ae.addConfigDiagnostic(Gg(H.configFile, At.name, ze)) : Ae.addConfigDiagnostic(Sp(H.configFile, At.name, ze, ...at)) : "messageText" in ze ? Ae.addConfigDiagnostic(_O(ze)) : Ae.addConfigDiagnostic(nc(ze, ...at));
      }
      function Lu() {
        if (ni === void 0) {
          const ze = N_();
          ni = ze && qn(ze.initializer, bs) || !1;
        }
        return ni || void 0;
      }
      function N_() {
        return ra === void 0 && (ra = s6(iD(H.configFile), "compilerOptions", mo) || !1), ra || void 0;
      }
      function cu(ze, at, At, yr, Br, ...Tn) {
        let Er = !1;
        return s6(ze, At, (hn) => {
          "messageText" in Br ? Ae.addConfigDiagnostic(Gg(H.configFile, at ? hn.name : hn.initializer, Br)) : Ae.addConfigDiagnostic(Sp(H.configFile, at ? hn.name : hn.initializer, Br, ...Tn)), Er = !0;
        }, yr), Er;
      }
      function lh(ze, at) {
        Zr.set(wt(ze), !0), Ae.addConfigDiagnostic(at);
      }
      function X0(ze) {
        if (H.noEmit) return !1;
        const at = wt(ze);
        if (_c(at)) return !1;
        const At = H.outFile;
        if (At) return Q0(at, At) || Q0(at, __(At) + ".d.ts");
        if (H.declarationDir && vp(H.declarationDir, at, Nt, !Ct.useCaseSensitiveFileNames())) return !0;
        if (H.outDir) return vp(H.outDir, at, Nt, !Ct.useCaseSensitiveFileNames());
        if (jc(at, T6) || $l(at)) {
          const yr = __(at);
          return !!_c(yr + ".ts") || !!_c(yr + ".tsx");
        }
        return !1;
      }
      function Q0(ze, at) {
        return Rh(ze, at, Nt, !Ct.useCaseSensitiveFileNames()) === 0;
      }
      function vg() {
        return Ct.getSymlinkCache ? Ct.getSymlinkCache() : ($ || ($ = VJ(Nt, nf)), de && !$.hasProcessedResolutions() && $.setSymlinksFromResolutions(q, j, ot), $);
      }
      function r0(ze, at) {
        return c9(ze, at, hl(ze));
      }
      function S1(ze, at) {
        return Fve(ze, at, hl(ze));
      }
      function Y0(ze, at) {
        return r0(ze, YN(ze, at));
      }
      function Vf(ze) {
        return p9(ze, hl(ze));
      }
      function bg(ze) {
        return QS(ze, hl(ze));
      }
      function T1(ze) {
        return Fw(ze, hl(ze));
      }
      function Sd(ze) {
        return jve(ze, hl(ze));
      }
      function qf(ze, at) {
        return ze.resolutionMode || Vf(at);
      }
    }
    function jve(e, t) {
      const n = u_(t);
      return 100 <= n && n <= 199 || n === 200 ? !1 : Fw(e, t) < 5;
    }
    function Fw(e, t) {
      return QS(e, t) ?? u_(t);
    }
    function QS(e, t) {
      var n, i;
      const a = u_(t);
      if (100 <= a && a <= 199) return e.impliedNodeFormat;
      if (e.impliedNodeFormat === 1 && (((n = e.packageJsonScope) == null ? void 0 : n.contents.packageJsonContent.type) === "commonjs" || jc(e.fileName, [".cjs", ".cts"]))) return 1;
      if (e.impliedNodeFormat === 99 && (((i = e.packageJsonScope) == null ? void 0 : i.contents.packageJsonContent.type) === "module" || jc(e.fileName, [".mjs", ".mts"]))) return 99;
    }
    function p9(e, t) {
      return zJ(t) ? QS(e, t) : void 0;
    }
    function eBe(e) {
      let t;
      const n = e.compilerHost.fileExists, i = e.compilerHost.directoryExists, a = e.compilerHost.getDirectories, o = e.compilerHost.realpath;
      if (!e.useSourceOfProjectReferenceRedirect) return {
        onProgramCreateComplete: so,
        fileExists: u
      };
      e.compilerHost.fileExists = u;
      let c;
      return i && (c = e.compilerHost.directoryExists = (T) => i.call(e.compilerHost, T) ? (h(T), !0) : e.getResolvedProjectReferences() ? (t || (t = /* @__PURE__ */ new Set(), e.forEachResolvedProjectReference((k) => {
        const D = k.commandLine.options.outFile;
        if (D) t.add(Xn(e.toPath(D)));
        else {
          const P = k.commandLine.options.declarationDir || k.commandLine.options.outDir;
          P && t.add(e.toPath(P));
        }
      })), S(T, !1)) : !1), a && (e.compilerHost.getDirectories = (T) => !e.getResolvedProjectReferences() || i && i.call(e.compilerHost, T) ? a.call(e.compilerHost, T) : []), o && (e.compilerHost.realpath = (T) => {
        var k;
        return ((k = e.getSymlinkCache().getSymlinkedFiles()) == null ? void 0 : k.get(e.toPath(T))) || o.call(e.compilerHost, T);
      }), {
        onProgramCreateComplete: _,
        fileExists: u,
        directoryExists: c
      };
      function _() {
        e.compilerHost.fileExists = n, e.compilerHost.directoryExists = i, e.compilerHost.getDirectories = a;
      }
      function u(T) {
        return n.call(e.compilerHost, T) ? !0 : !e.getResolvedProjectReferences() || !$l(T) ? !1 : S(T, !0);
      }
      function d(T) {
        const k = e.getRedirectFromOutput(e.toPath(T));
        return k !== void 0 ? Ta(k.source) ? n.call(e.compilerHost, k.source) : !0 : void 0;
      }
      function g(T) {
        const k = e.toPath(T), D = `${k}${Co}`;
        return Vg(t, (P) => k === P || ta(P, D) || ta(k, `${P}/`));
      }
      function h(T) {
        var k;
        if (!e.getResolvedProjectReferences() || WD(T) || !o || !T.includes(ah)) return;
        const D = e.getSymlinkCache(), P = El(e.toPath(T));
        if ((k = D.getSymlinkedDirectories()) != null && k.has(P)) return;
        const N = us(o.call(e.compilerHost, T));
        let M;
        if (N === T || (M = El(e.toPath(N))) === P) {
          D.setSymlinkedDirectory(P, !1);
          return;
        }
        D.setSymlinkedDirectory(T, {
          real: El(N),
          realPath: M
        });
      }
      function S(T, k) {
        var D;
        const P = k ? d : g, N = P(T);
        if (N !== void 0) return N;
        const M = e.getSymlinkCache(), R = M.getSymlinkedDirectories();
        if (!R) return !1;
        const G = e.toPath(T);
        return G.includes(ah) ? k && ((D = M.getSymlinkedFiles()) != null && D.has(G)) ? !0 : rs(R.entries(), ([L, z]) => {
          if (!z || !ta(G, L)) return;
          const H = P(G.replace(L, z.realPath));
          if (k && H) {
            const U = ca(T, e.compilerHost.getCurrentDirectory());
            M.setSymlinkedFile(G, `${z.real}${U.replace(new RegExp(L, "i"), "")}`);
          }
          return H;
        }) || !1 : !1;
      }
    }
    var MU = {
      diagnostics: Te,
      sourceMaps: void 0,
      emittedFiles: void 0,
      emitSkipped: !0
    };
    function RU(e, t, n, i) {
      const a = e.getCompilerOptions();
      if (a.noEmit) return t ? MU : e.emitBuildInfo(n, i);
      if (!a.noEmitOnError) return;
      let o = [
        ...e.getOptionsDiagnostics(i),
        ...e.getSyntacticDiagnostics(t, i),
        ...e.getGlobalDiagnostics(i),
        ...e.getSemanticDiagnostics(t, i)
      ];
      if (o.length === 0 && U_(e.getCompilerOptions()) && (o = e.getDeclarationDiagnostics(void 0, i)), !o.length) return;
      let c;
      if (!t) {
        const _ = e.emitBuildInfo(n, i);
        _.diagnostics && (o = [...o, ..._.diagnostics]), c = _.emittedFiles;
      }
      return {
        diagnostics: o,
        sourceMaps: void 0,
        emittedFiles: c,
        emitSkipped: !0
      };
    }
    function d9(e, t) {
      return dn(e, (n) => !n.skippedOn || !t[n.skippedOn]);
    }
    function m9(e, t = e) {
      return {
        fileExists: (n) => t.fileExists(n),
        readDirectory(n, i, a, o, c) {
          return E.assertIsDefined(t.readDirectory, "'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"), t.readDirectory(n, i, a, o, c);
        },
        readFile: (n) => t.readFile(n),
        directoryExists: Ua(t, t.directoryExists),
        getDirectories: Ua(t, t.getDirectories),
        realpath: Ua(t, t.realpath),
        useCaseSensitiveFileNames: e.useCaseSensitiveFileNames(),
        getCurrentDirectory: () => e.getCurrentDirectory(),
        onUnRecoverableConfigFileDiagnostic: e.onUnRecoverableConfigFileDiagnostic || Tb,
        trace: e.trace ? (n) => e.trace(n) : void 0
      };
    }
    function Ak(e) {
      return pV(e.path);
    }
    function jU(e, { extension: t }, { isDeclarationFile: n }) {
      switch (t) {
        case ".ts":
        case ".d.ts":
        case ".mts":
        case ".d.mts":
        case ".cts":
        case ".d.cts":
          return;
        case ".tsx":
          return i();
        case ".jsx":
          return i() || a();
        case ".js":
        case ".mjs":
        case ".cjs":
          return a();
        case ".json":
          return o();
        default:
          return c();
      }
      function i() {
        return e.jsx ? void 0 : p.Module_0_was_resolved_to_1_but_jsx_is_not_set;
      }
      function a() {
        return t1(e) || !Sf(e, "noImplicitAny") ? void 0 : p.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type;
      }
      function o() {
        return zb(e) ? void 0 : p.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used;
      }
      function c() {
        return n || e.allowArbitraryExtensions ? void 0 : p.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set;
      }
    }
    function Bve({ imports: e, moduleAugmentations: t }) {
      const n = e.map((i) => i);
      for (const i of t) i.kind === 11 && n.push(i);
      return n;
    }
    function YN({ imports: e, moduleAugmentations: t }, n) {
      if (n < e.length) return e[n];
      let i = e.length;
      for (const a of t) if (a.kind === 11) {
        if (n === i) return a;
        i++;
      }
      E.fail("should never ask for module name at index higher than possible module name");
    }
    function Jie(e) {
      let t, n = Up(), i, a, o, c, _, u;
      return {
        addConfigDiagnostic(T) {
          E.assert(t === void 0, "Cannot modify program diagnostic state after requesting combined diagnostics"), (o ?? (o = SD())).add(T);
        },
        addLazyConfigDiagnostic(T, k, ...D) {
          E.assert(t === void 0, "Cannot modify program diagnostic state after requesting combined diagnostics"), (c ?? (c = [])).push({
            file: T,
            diagnostic: k,
            args: D
          });
        },
        addFileProcessingDiagnostic(T) {
          E.assert(t === void 0, "Cannot modify program diagnostic state after requesting combined diagnostics"), (i ?? (i = [])).push(T);
        },
        setCommonSourceDirectory(T) {
          a = T;
        },
        reuseStateFromOldProgram(T, k) {
          n = T.getFileReasons(), i = T.getFileProcessingDiagnostics(), k && (a = T.getCommonSourceDirectory(), o = T.getConfigDiagnostics(), c = T.getLazyConfigDiagnostics());
        },
        getFileProcessingDiagnostics() {
          return i;
        },
        getFileReasons() {
          return n;
        },
        getCommonSourceDirectory() {
          return a;
        },
        getConfigDiagnostics() {
          return o;
        },
        getLazyConfigDiagnostics() {
          return c;
        },
        getCombinedDiagnostics(T) {
          return t || (t = SD(), o?.getDiagnostics().forEach((k) => t.add(k)), i?.forEach((k) => {
            switch (k.kind) {
              case 1:
                return t.add(g(T, k.file && T.getSourceFileByPath(k.file), k.fileProcessingReason, k.diagnostic, k.args || Te));
              case 0:
                return t.add(d(T, k));
              case 2:
                return k.diagnostics.forEach((D) => t.add(D));
              default:
                E.assertNever(k);
            }
          }), c?.forEach(({ file: k, diagnostic: D, args: P }) => t.add(g(T, k, void 0, D, P))), _ = void 0, u = void 0, t);
        }
      };
      function d(T, { reason: k }) {
        const { file: D, pos: P, end: N } = Ow(T, k), M = D.libReferenceDirectives[k.index], R = fz(M), G = xb(zC(C4(R, "lib."), ".d.ts"), hF, mo);
        return wl(D, E.checkDefined(P), E.checkDefined(N) - P, G ? p.Cannot_find_lib_definition_for_0_Did_you_mean_1 : p.Cannot_find_lib_definition_for_0, R, G);
      }
      function g(T, k, D, P, N) {
        let M, R, G, L, z, H;
        const U = k && n.get(k.path);
        let pe = Rv(D) ? D : void 0, ie = k && _?.get(k.path);
        ie ? (ie.fileIncludeReasonDetails ? (M = new Set(U), U?.forEach(he)) : U?.forEach(se), z = ie.redirectInfo) : (U?.forEach(se), z = k && tV(k, T.getCompilerOptionsForFile(k))), D && se(D);
        const W = M?.size !== U?.length;
        pe && M?.size === 1 && (M = void 0), M && ie && (ie.details && !W ? H = ba(ie.details, P, ...N ?? Te) : ie.fileIncludeReasonDetails && (W ? fe() ? R = kr(ie.fileIncludeReasonDetails.next.slice(0, U.length), R[0]) : R = [...ie.fileIncludeReasonDetails.next, R[0]] : fe() ? R = ie.fileIncludeReasonDetails.next.slice(0, U.length) : L = ie.fileIncludeReasonDetails)), H || (L || (L = M && ba(R, p.The_file_is_in_the_program_because_Colon)), H = ba(z ? L ? [L, ...z] : z : L, P, ...N || Te)), k && (ie ? (!ie.fileIncludeReasonDetails || !W && L) && (ie.fileIncludeReasonDetails = L) : (_ ?? (_ = /* @__PURE__ */ new Map())).set(k.path, ie = {
          fileIncludeReasonDetails: L,
          redirectInfo: z
        }), !ie.details && !W && (ie.details = H.next));
        const Q = pe && Ow(T, pe);
        return Q && tE(Q) ? y5(Q.file, Q.pos, Q.end - Q.pos, H, G) : _O(H, G);
        function se(de) {
          M?.has(de) || ((M ?? (M = /* @__PURE__ */ new Set())).add(de), (R ?? (R = [])).push(iV(T, de)), he(de));
        }
        function he(de) {
          !pe && Rv(de) ? pe = de : pe !== de && (G = kr(G, h(T, de)));
        }
        function fe() {
          var de;
          return ((de = ie.fileIncludeReasonDetails.next) == null ? void 0 : de.length) !== U?.length;
        }
      }
      function h(T, k) {
        let D = u?.get(k);
        return D === void 0 && (u ?? (u = /* @__PURE__ */ new Map())).set(k, D = S(T, k) ?? !1), D || void 0;
      }
      function S(T, k) {
        if (Rv(k)) {
          const G = Ow(T, k);
          let L;
          switch (k.kind) {
            case 3:
              L = p.File_is_included_via_import_here;
              break;
            case 4:
              L = p.File_is_included_via_reference_here;
              break;
            case 5:
              L = p.File_is_included_via_type_library_reference_here;
              break;
            case 7:
              L = p.File_is_included_via_library_reference_here;
              break;
            default:
              E.assertNever(k);
          }
          return tE(G) ? wl(G.file, G.pos, G.end - G.pos, L) : void 0;
        }
        const D = T.getCurrentDirectory(), P = T.getRootFileNames(), N = T.getCompilerOptions();
        if (!N.configFile) return;
        let M, R;
        switch (k.kind) {
          case 0:
            if (!N.configFile.configFileSpecs) return;
            const G = ca(P[k.index], D), L = rV(T, G);
            if (L) {
              M = k5(N.configFile, "files", L), R = p.File_is_matched_by_files_list_specified_here;
              break;
            }
            const z = nV(T, G);
            if (!z || !Ta(z)) return;
            M = k5(N.configFile, "include", z), R = p.File_is_matched_by_include_pattern_specified_here;
            break;
          case 1:
          case 2:
            const H = T.getResolvedProjectReferences(), U = T.getProjectReferences(), pe = E.checkDefined(H?.[k.index]), ie = HD(U, H, (fe, de, $) => fe === pe ? {
              sourceFile: de?.sourceFile || N.configFile,
              index: $
            } : void 0);
            if (!ie) return;
            const { sourceFile: W, index: Q } = ie, se = Z3(W, "references", (fe) => hu(fe.initializer) ? fe.initializer : void 0);
            return se && se.elements.length > Q ? Sp(W, se.elements[Q], k.kind === 2 ? p.File_is_output_from_referenced_project_specified_here : p.File_is_source_from_referenced_project_specified_here) : void 0;
          case 8:
            M = mz(e(), "types", yv(N) ? "*" : k.typeReference), R = p.File_is_entry_point_of_type_library_specified_here;
            break;
          case 6:
            if (k.index !== void 0) {
              M = mz(e(), "lib", N.lib[k.index]), R = p.File_is_library_specified_here;
              break;
            }
            const he = mO(Ps(N));
            M = he ? pte(e(), "target", he) : void 0, R = p.File_is_default_library_for_target_specified_here;
            break;
          default:
            E.assertNever(k);
        }
        return M && Sp(N.configFile, M, R);
      }
    }
    function zie(e, t, n, i, a, o) {
      const c = [], { emitSkipped: _, diagnostics: u } = e.emit(t, d, i, n, a, o);
      return {
        outputFiles: c,
        emitSkipped: _,
        diagnostics: u
      };
      function d(g, h, S) {
        c.push({
          name: g,
          writeByteOrderMark: S,
          text: h
        });
      }
    }
    var Wie = /* @__PURE__ */ ((e) => (e[e.ComputedDts = 0] = "ComputedDts", e[e.StoredSignatureAtEmit = 1] = "StoredSignatureAtEmit", e[e.UsedVersion = 2] = "UsedVersion", e))(Wie || {}), Qd;
    ((e) => {
      function t() {
        function ie(W, Q, se) {
          const he = {
            getKeys: (fe) => Q.get(fe),
            getValues: (fe) => W.get(fe),
            keys: () => W.keys(),
            size: () => W.size,
            deleteKey: (fe) => {
              (se || (se = /* @__PURE__ */ new Set())).add(fe);
              const de = W.get(fe);
              return de ? (de.forEach(($) => i(Q, $, fe)), W.delete(fe), !0) : !1;
            },
            set: (fe, de) => {
              se?.delete(fe);
              const $ = W.get(fe);
              return W.set(fe, de), $?.forEach((Se) => {
                de.has(Se) || i(Q, Se, fe);
              }), de.forEach((Se) => {
                $?.has(Se) || n(Q, Se, fe);
              }), he;
            }
          };
          return he;
        }
        return ie(/* @__PURE__ */ new Map(), /* @__PURE__ */ new Map(), void 0);
      }
      e.createManyToManyPathMap = t;
      function n(ie, W, Q) {
        let se = ie.get(W);
        se || (se = /* @__PURE__ */ new Set(), ie.set(W, se)), se.add(Q);
      }
      function i(ie, W, Q) {
        const se = ie.get(W);
        return se?.delete(Q) ? (se.size || ie.delete(W), !0) : !1;
      }
      function a(ie) {
        return Rn(ie.declarations, (W) => {
          var Q;
          return (Q = Sr(W)) == null ? void 0 : Q.resolvedPath;
        });
      }
      function o(ie, W) {
        const Q = ie.getSymbolAtLocation(W);
        return Q && a(Q);
      }
      function c(ie, W, Q, se) {
        var he;
        return Eo(((he = ie.getRedirectFromSourceFile(W)) == null ? void 0 : he.outputDts) || W, Q, se);
      }
      function _(ie, W, Q) {
        let se;
        if (W.imports && W.imports.length > 0) {
          const $ = ie.getTypeChecker();
          for (const Se of W.imports) o($, Se)?.forEach(de);
        }
        const he = Xn(W.resolvedPath);
        if (W.referencedFiles && W.referencedFiles.length > 0) for (const $ of W.referencedFiles) de(c(ie, $.fileName, he, Q));
        if (ie.forEachResolvedTypeReferenceDirective(({ resolvedTypeReferenceDirective: $ }) => {
          if (!$) return;
          const Se = $.resolvedFileName;
          de(c(ie, Se, he, Q));
        }, W), W.moduleAugmentations.length) {
          const $ = ie.getTypeChecker();
          for (const Se of W.moduleAugmentations) {
            if (!Ts(Se)) continue;
            const Be = $.getSymbolAtLocation(Se);
            Be && fe(Be);
          }
        }
        for (const $ of ie.getTypeChecker().getAmbientModules()) $.declarations && $.declarations.length > 1 && fe($);
        return se;
        function fe($) {
          if ($.declarations)
            for (const Se of $.declarations) {
              const Be = Sr(Se);
              Be && Be !== W && de(Be.resolvedPath);
            }
        }
        function de($) {
          (se || (se = /* @__PURE__ */ new Set())).add($);
        }
      }
      function u(ie, W) {
        return W && !W.referencedMap == !ie;
      }
      e.canReuseOldState = u;
      function d(ie) {
        return ie.module !== 0 && !ie.outFile ? t() : void 0;
      }
      e.createReferencedMap = d;
      function g(ie, W, Q) {
        var se, he;
        const fe = /* @__PURE__ */ new Map(), de = ie.getCompilerOptions(), $ = d(de), Se = u($, W);
        ie.getTypeChecker();
        for (const Be of ie.getSourceFiles()) {
          const ce = E.checkDefined(Be.version, "Program intended to be used with Builder should have source files with versions set"), oe = Se ? (se = W.oldSignatures) == null ? void 0 : se.get(Be.resolvedPath) : void 0, ge = oe === void 0 ? Se ? (he = W.fileInfos.get(Be.resolvedPath)) == null ? void 0 : he.signature : void 0 : oe || void 0;
          if ($) {
            const Ae = _(ie, Be, ie.getCanonicalFileName);
            Ae && $.set(Be.resolvedPath, Ae);
          }
          fe.set(Be.resolvedPath, {
            version: ce,
            signature: ge,
            affectsGlobalScope: de.outFile ? void 0 : z(Be) || void 0,
            impliedFormat: Be.impliedNodeFormat
          });
        }
        return {
          fileInfos: fe,
          referencedMap: $,
          useFileVersionAsSignature: !Q && !Se
        };
      }
      e.create = g;
      function h(ie) {
        ie.allFilesExcludingDefaultLibraryFile = void 0, ie.allFileNames = void 0;
      }
      e.releaseCache = h;
      function S(ie, W, Q, se, he) {
        var fe;
        const de = T(ie, W, Q, se, he);
        return (fe = ie.oldSignatures) == null || fe.clear(), de;
      }
      e.getFilesAffectedBy = S;
      function T(ie, W, Q, se, he) {
        const fe = W.getSourceFileByPath(Q);
        return fe ? P(ie, W, fe, se, he) ? (ie.referencedMap ? pe : U)(ie, W, fe, se, he) : [fe] : Te;
      }
      e.getFilesAffectedByWithOldState = T;
      function k(ie, W, Q) {
        ie.fileInfos.get(Q).signature = W, (ie.hasCalledUpdateShapeSignature || (ie.hasCalledUpdateShapeSignature = /* @__PURE__ */ new Set())).add(Q);
      }
      e.updateSignatureOfFile = k;
      function D(ie, W, Q, se, he) {
        ie.emit(W, (fe, de, $, Se, Be, ce) => {
          E.assert($l(fe), `File extension for signature expected to be dts: Got:: ${fe}`), he(zU(ie, W, de, se, ce), Be);
        }, Q, 2, void 0, !0);
      }
      e.computeDtsSignature = D;
      function P(ie, W, Q, se, he, fe = ie.useFileVersionAsSignature) {
        var de;
        if ((de = ie.hasCalledUpdateShapeSignature) != null && de.has(Q.resolvedPath)) return !1;
        const $ = ie.fileInfos.get(Q.resolvedPath), Se = $.signature;
        let Be;
        return !Q.isDeclarationFile && !fe && D(W, Q, se, he, (ce) => {
          Be = ce, he.storeSignatureInfo && (ie.signatureInfo ?? (ie.signatureInfo = /* @__PURE__ */ new Map())).set(Q.resolvedPath, 0);
        }), Be === void 0 && (Be = Q.version, he.storeSignatureInfo && (ie.signatureInfo ?? (ie.signatureInfo = /* @__PURE__ */ new Map())).set(Q.resolvedPath, 2)), (ie.oldSignatures || (ie.oldSignatures = /* @__PURE__ */ new Map())).set(Q.resolvedPath, Se || !1), (ie.hasCalledUpdateShapeSignature || (ie.hasCalledUpdateShapeSignature = /* @__PURE__ */ new Set())).add(Q.resolvedPath), $.signature = Be, Be !== Se;
      }
      e.updateShapeSignature = P;
      function N(ie, W, Q) {
        if (W.getCompilerOptions().outFile || !ie.referencedMap || z(Q)) return M(ie, W);
        const se = /* @__PURE__ */ new Set(), he = [Q.resolvedPath];
        for (; he.length; ) {
          const fe = he.pop();
          if (!se.has(fe)) {
            se.add(fe);
            const de = ie.referencedMap.getValues(fe);
            if (de) for (const $ of de.keys()) he.push($);
          }
        }
        return ma(Go(se.keys(), (fe) => {
          var de;
          return ((de = W.getSourceFileByPath(fe)) == null ? void 0 : de.fileName) ?? fe;
        }));
      }
      e.getAllDependencies = N;
      function M(ie, W) {
        if (!ie.allFileNames) {
          const Q = W.getSourceFiles();
          ie.allFileNames = Q === Te ? Te : Q.map((se) => se.fileName);
        }
        return ie.allFileNames;
      }
      function R(ie, W) {
        const Q = ie.referencedMap.getKeys(W);
        return Q ? ma(Q.keys()) : [];
      }
      e.getReferencedByPaths = R;
      function G(ie) {
        for (const W of ie.statements) if (!m5(W)) return !1;
        return !0;
      }
      function L(ie) {
        return _t(ie.moduleAugmentations, (W) => ug(W.parent));
      }
      function z(ie) {
        return L(ie) || !gf(ie) && !Tp(ie) && !G(ie);
      }
      function H(ie, W, Q) {
        if (ie.allFilesExcludingDefaultLibraryFile) return ie.allFilesExcludingDefaultLibraryFile;
        let se;
        Q && he(Q);
        for (const fe of W.getSourceFiles()) fe !== Q && he(fe);
        return ie.allFilesExcludingDefaultLibraryFile = se || Te, ie.allFilesExcludingDefaultLibraryFile;
        function he(fe) {
          W.isSourceFileDefaultLibrary(fe) || (se || (se = [])).push(fe);
        }
      }
      e.getAllFilesExcludingDefaultLibraryFile = H;
      function U(ie, W, Q) {
        const se = W.getCompilerOptions();
        return se && se.outFile ? [Q] : H(ie, W, Q);
      }
      function pe(ie, W, Q, se, he) {
        if (z(Q)) return H(ie, W, Q);
        const fe = W.getCompilerOptions();
        if (fe && (Zp(fe) || fe.outFile)) return [Q];
        const de = /* @__PURE__ */ new Map();
        de.set(Q.resolvedPath, Q);
        const $ = R(ie, Q.resolvedPath);
        for (; $.length > 0; ) {
          const Se = $.pop();
          if (!de.has(Se)) {
            const Be = W.getSourceFileByPath(Se);
            de.set(Se, Be), Be && P(ie, W, Be, se, he) && $.push(...R(ie, Be.resolvedPath));
          }
        }
        return ma(Go(de.values(), (Se) => Se));
      }
    })(Qd || (Qd = {}));
    var Uie = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Js = 1] = "Js", e[e.JsMap = 2] = "JsMap", e[e.JsInlineMap = 4] = "JsInlineMap", e[e.DtsErrors = 8] = "DtsErrors", e[e.DtsEmit = 16] = "DtsEmit", e[e.DtsMap = 32] = "DtsMap", e[e.Dts = 24] = "Dts", e[e.AllJs = 7] = "AllJs", e[e.AllDtsEmit = 48] = "AllDtsEmit", e[e.AllDts = 56] = "AllDts", e[e.All = 63] = "All", e))(Uie || {});
    function rE(e) {
      return e.program !== void 0;
    }
    function tBe(e) {
      return E.assert(rE(e)), e;
    }
    function h1(e) {
      let t = 1;
      return e.sourceMap && (t = t | 2), e.inlineSourceMap && (t = t | 4), U_(e) && (t = t | 24), e.declarationMap && (t = t | 32), e.emitDeclarationOnly && (t = t & 56), t;
    }
    function g9(e, t) {
      const n = t && (Ay(t) ? t : h1(t)), i = Ay(e) ? e : h1(e);
      if (n === i) return 0;
      if (!n || !i) return i;
      const a = n ^ i;
      let o = 0;
      return a & 7 && (o = i & 7), a & 8 && (o = o | i & 8), a & 48 && (o = o | i & 48), o;
    }
    function rBe(e, t) {
      return e === t || e !== void 0 && t !== void 0 && e.size === t.size && !Vg(e, (n) => !t.has(n));
    }
    function nBe(e, t) {
      var n, i;
      const a = Qd.create(e, t, !1);
      a.program = e;
      const o = e.getCompilerOptions();
      a.compilerOptions = o;
      const c = o.outFile;
      a.semanticDiagnosticsPerFile = /* @__PURE__ */ new Map(), c && o.composite && t?.outSignature && c === t.compilerOptions.outFile && (a.outSignature = t.outSignature && Jve(o, t.compilerOptions, t.outSignature)), a.changedFilesSet = /* @__PURE__ */ new Set(), a.latestChangedDtsFile = o.composite ? t?.latestChangedDtsFile : void 0, a.checkPending = a.compilerOptions.noCheck ? !0 : void 0;
      const _ = Qd.canReuseOldState(a.referencedMap, t), u = _ ? t.compilerOptions : void 0;
      let d = _ && !Lee(o, u);
      const g = o.composite && t?.emitSignatures && !c && !Ree(o, t.compilerOptions);
      let h = !0;
      _ ? ((n = t.changedFilesSet) == null || n.forEach((N) => a.changedFilesSet.add(N)), !c && ((i = t.affectedFilesPendingEmit) != null && i.size) && (a.affectedFilesPendingEmit = new Map(t.affectedFilesPendingEmit), a.seenAffectedFiles = /* @__PURE__ */ new Set()), a.programEmitPending = t.programEmitPending, c && a.changedFilesSet.size && (d = !1, h = !1), a.hasErrorsFromOldState = t.hasErrors) : a.buildInfoEmitPending = Wb(o);
      const S = a.referencedMap, T = _ ? t.referencedMap : void 0, k = d && !o.skipLibCheck == !u.skipLibCheck, D = k && !o.skipDefaultLibCheck == !u.skipDefaultLibCheck;
      if (a.fileInfos.forEach((N, M) => {
        var R;
        let G, L;
        if (!_ || !(G = t.fileInfos.get(M)) || G.version !== N.version || G.impliedFormat !== N.impliedFormat || !rBe(L = S && S.getValues(M), T && T.getValues(M)) || L && Vg(L, (z) => !a.fileInfos.has(z) && t.fileInfos.has(z))) P(M);
        else {
          const z = e.getSourceFileByPath(M), H = h ? (R = t.emitDiagnosticsPerFile) == null ? void 0 : R.get(M) : void 0;
          if (H && (a.emitDiagnosticsPerFile ?? (a.emitDiagnosticsPerFile = /* @__PURE__ */ new Map())).set(M, t.hasReusableDiagnostic ? Wve(H, M, e) : zve(H, e)), d) {
            if (z.isDeclarationFile && !k || e.isSourceFileDefaultLibrary(z) && !D) return;
            const U = t.semanticDiagnosticsPerFile.get(M);
            U && (a.semanticDiagnosticsPerFile.set(M, t.hasReusableDiagnostic ? Wve(U, M, e) : zve(U, e)), (a.semanticDiagnosticsFromOldState ?? (a.semanticDiagnosticsFromOldState = /* @__PURE__ */ new Set())).add(M));
          }
        }
        if (g) {
          const z = t.emitSignatures.get(M);
          z && (a.emitSignatures ?? (a.emitSignatures = /* @__PURE__ */ new Map())).set(M, Jve(o, t.compilerOptions, z));
        }
      }), _ && Dl(t.fileInfos, (N, M) => a.fileInfos.has(M) ? !1 : N.affectsGlobalScope ? !0 : (a.buildInfoEmitPending = !0, !!c))) Qd.getAllFilesExcludingDefaultLibraryFile(a, e, void 0).forEach((N) => P(N.resolvedPath));
      else if (u) {
        const N = Mee(o, u) ? h1(o) : g9(o, u);
        N !== 0 && (c ? a.changedFilesSet.size || (a.programEmitPending = a.programEmitPending ? a.programEmitPending | N : N) : (e.getSourceFiles().forEach((M) => {
          a.changedFilesSet.has(M.resolvedPath) || UU(a, M.resolvedPath, N);
        }), E.assert(!a.seenAffectedFiles || !a.seenAffectedFiles.size), a.seenAffectedFiles = a.seenAffectedFiles || /* @__PURE__ */ new Set()), a.buildInfoEmitPending = !0);
      }
      return _ && a.semanticDiagnosticsPerFile.size !== a.fileInfos.size && t.checkPending !== a.checkPending && (a.buildInfoEmitPending = !0), a;
      function P(N) {
        a.changedFilesSet.add(N), c && (d = !1, h = !1, a.semanticDiagnosticsFromOldState = void 0, a.semanticDiagnosticsPerFile.clear(), a.emitDiagnosticsPerFile = void 0), a.buildInfoEmitPending = !0, a.programEmitPending = void 0;
      }
    }
    function Jve(e, t, n) {
      return !!e.declarationMap == !!t.declarationMap ? n : Ta(n) ? [n] : n[0];
    }
    function zve(e, t) {
      return e.length ? el(e, (n) => {
        if (Ta(n.messageText)) return n;
        const i = Vie(n.messageText, n.file, t, (a) => {
          var o;
          return (o = a.repopulateInfo) == null ? void 0 : o.call(a);
        });
        return i === n.messageText ? n : {
          ...n,
          messageText: i
        };
      }) : e;
    }
    function Vie(e, t, n, i) {
      const a = i(e);
      if (a === !0) return {
        ...yB(t),
        next: qie(e.next, t, n, i)
      };
      if (a) return {
        ...u5(t, n, a.moduleReference, a.mode, a.packageName || a.moduleReference),
        next: qie(e.next, t, n, i)
      };
      const o = qie(e.next, t, n, i);
      return o === e.next ? e : {
        ...e,
        next: o
      };
    }
    function qie(e, t, n, i) {
      return el(e, (a) => Vie(a, t, n, i));
    }
    function Wve(e, t, n) {
      if (!e.length) return Te;
      let i;
      return e.map((o) => {
        const c = Uve(o, t, n, a);
        c.reportsUnnecessary = o.reportsUnnecessary, c.reportsDeprecated = o.reportDeprecated, c.source = o.source, c.skippedOn = o.skippedOn;
        const { relatedInformation: _ } = o;
        return c.relatedInformation = _ ? _.length ? _.map((u) => Uve(u, t, n, a)) : [] : void 0, c;
      });
      function a(o) {
        return i ?? (i = Xn(ca(Mv(n.getCompilerOptions()), n.getCurrentDirectory()))), Eo(o, i, n.getCanonicalFileName);
      }
    }
    function Uve(e, t, n, i) {
      const { file: a } = e, o = a !== !1 ? n.getSourceFileByPath(a ? i(a) : t) : void 0;
      return {
        ...e,
        file: o,
        messageText: Ta(e.messageText) ? e.messageText : Vie(e.messageText, o, n, (c) => c.info)
      };
    }
    function iBe(e) {
      Qd.releaseCache(e), e.program = void 0;
    }
    function Gie(e, t) {
      E.assert(!t || !e.affectedFiles || e.affectedFiles[e.affectedFilesIndex - 1] !== t || !e.semanticDiagnosticsPerFile.has(t.resolvedPath));
    }
    function Vve(e, t, n) {
      for (var i; ; ) {
        const { affectedFiles: a } = e;
        if (a) {
          const c = e.seenAffectedFiles;
          let _ = e.affectedFilesIndex;
          for (; _ < a.length; ) {
            const u = a[_];
            if (!c.has(u.resolvedPath))
              return e.affectedFilesIndex = _, UU(e, u.resolvedPath, h1(e.compilerOptions)), oBe(e, u, t, n), u;
            _++;
          }
          e.changedFilesSet.delete(e.currentChangedFilePath), e.currentChangedFilePath = void 0, (i = e.oldSignatures) == null || i.clear(), e.affectedFiles = void 0;
        }
        const o = e.changedFilesSet.keys().next();
        if (o.done) return;
        if (e.program.getCompilerOptions().outFile) return e.program;
        e.affectedFiles = Qd.getFilesAffectedByWithOldState(e, e.program, o.value, t, n), e.currentChangedFilePath = o.value, e.affectedFilesIndex = 0, e.seenAffectedFiles || (e.seenAffectedFiles = /* @__PURE__ */ new Set());
      }
    }
    function qve(e, t, n) {
      var i, a;
      if (!(!((i = e.affectedFilesPendingEmit) != null && i.size) && !e.programEmitPending) && (!t && !n && (e.affectedFilesPendingEmit = void 0, e.programEmitPending = void 0), (a = e.affectedFilesPendingEmit) == null || a.forEach((o, c) => {
        const _ = n ? o & 55 : o & 7;
        _ ? e.affectedFilesPendingEmit.set(c, _) : e.affectedFilesPendingEmit.delete(c);
      }), e.programEmitPending)) {
        const o = n ? e.programEmitPending & 55 : e.programEmitPending & 7;
        o ? e.programEmitPending = o : e.programEmitPending = void 0;
      }
    }
    function h9(e, t, n, i) {
      let a = g9(e, t);
      return n && (a = a & 56), i && (a = a & 8), a;
    }
    function BU(e) {
      return e ? 8 : 56;
    }
    function aBe(e, t, n) {
      var i;
      if ((i = e.affectedFilesPendingEmit) != null && i.size)
        return Dl(e.affectedFilesPendingEmit, (a, o) => {
          var c;
          const _ = e.program.getSourceFileByPath(o);
          if (!_ || !gv(_, e.program)) {
            e.affectedFilesPendingEmit.delete(o);
            return;
          }
          const u = h9(a, (c = e.seenEmittedFiles) == null ? void 0 : c.get(_.resolvedPath), t, n);
          if (u) return {
            affectedFile: _,
            emitKind: u
          };
        });
    }
    function sBe(e, t) {
      var n;
      if ((n = e.emitDiagnosticsPerFile) != null && n.size)
        return Dl(e.emitDiagnosticsPerFile, (i, a) => {
          var o;
          const c = e.program.getSourceFileByPath(a);
          if (!c || !gv(c, e.program)) {
            e.emitDiagnosticsPerFile.delete(a);
            return;
          }
          const _ = ((o = e.seenEmittedFiles) == null ? void 0 : o.get(c.resolvedPath)) || 0;
          if (!(_ & BU(t))) return {
            affectedFile: c,
            diagnostics: i,
            seenKind: _
          };
        });
    }
    function Gve(e) {
      if (!e.cleanedDiagnosticsOfLibFiles) {
        e.cleanedDiagnosticsOfLibFiles = !0;
        const t = e.program.getCompilerOptions();
        bt(e.program.getSourceFiles(), (n) => e.program.isSourceFileDefaultLibrary(n) && !Xee(n, t, e.program) && $ie(e, n.resolvedPath));
      }
    }
    function oBe(e, t, n, i) {
      if ($ie(e, t.resolvedPath), e.allFilesExcludingDefaultLibraryFile === e.affectedFiles) {
        Gve(e), Qd.updateShapeSignature(e, e.program, t, n, i);
        return;
      }
      e.compilerOptions.assumeChangesOnlyAffectDirectDependencies || cBe(e, t, n, i);
    }
    function Hie(e, t, n, i, a) {
      if ($ie(e, t), !e.changedFilesSet.has(t)) {
        const o = e.program.getSourceFileByPath(t);
        o && (Qd.updateShapeSignature(e, e.program, o, i, a, !0), n ? UU(e, t, h1(e.compilerOptions)) : U_(e.compilerOptions) && UU(e, t, e.compilerOptions.declarationMap ? 56 : 24));
      }
    }
    function $ie(e, t) {
      return e.semanticDiagnosticsFromOldState ? (e.semanticDiagnosticsFromOldState.delete(t), e.semanticDiagnosticsPerFile.delete(t), !e.semanticDiagnosticsFromOldState.size) : !0;
    }
    function Hve(e, t) {
      const n = E.checkDefined(e.oldSignatures).get(t) || void 0;
      return E.checkDefined(e.fileInfos.get(t)).signature !== n;
    }
    function Xie(e, t, n, i, a) {
      var o;
      return (o = e.fileInfos.get(t)) != null && o.affectsGlobalScope ? (Qd.getAllFilesExcludingDefaultLibraryFile(e, e.program, void 0).forEach((c) => Hie(e, c.resolvedPath, n, i, a)), Gve(e), !0) : !1;
    }
    function cBe(e, t, n, i) {
      var a, o;
      if (!e.referencedMap || !e.changedFilesSet.has(t.resolvedPath) || !Hve(e, t.resolvedPath)) return;
      if (Zp(e.compilerOptions)) {
        const u = /* @__PURE__ */ new Map();
        u.set(t.resolvedPath, !0);
        const d = Qd.getReferencedByPaths(e, t.resolvedPath);
        for (; d.length > 0; ) {
          const g = d.pop();
          if (!u.has(g)) {
            if (u.set(g, !0), Xie(e, g, !1, n, i)) return;
            if (Hie(e, g, !1, n, i), Hve(e, g)) {
              const h = e.program.getSourceFileByPath(g);
              d.push(...Qd.getReferencedByPaths(e, h.resolvedPath));
            }
          }
        }
      }
      const c = /* @__PURE__ */ new Set(), _ = !!((a = t.symbol) != null && a.exports) && !!Dl(t.symbol.exports, (u) => {
        if ((u.flags & 128) !== 0) return !0;
        const d = mu(u, e.program.getTypeChecker());
        return d === u ? !1 : (d.flags & 128) !== 0 && _t(d.declarations, (g) => Sr(g) === t);
      });
      (o = e.referencedMap.getKeys(t.resolvedPath)) == null || o.forEach((u) => {
        if (Xie(e, u, _, n, i)) return !0;
        const d = e.referencedMap.getKeys(u);
        return d && Vg(d, (g) => $ve(e, g, _, c, n, i));
      });
    }
    function $ve(e, t, n, i, a, o) {
      var c;
      if (b_(i, t)) {
        if (Xie(e, t, n, a, o)) return !0;
        Hie(e, t, n, a, o), (c = e.referencedMap.getKeys(t)) == null || c.forEach((_) => $ve(e, _, n, i, a, o));
      }
    }
    function JU(e, t, n, i) {
      return e.compilerOptions.noCheck ? Te : zi(lBe(e, t, n, i), e.program.getProgramDiagnostics(t));
    }
    function lBe(e, t, n, i) {
      i ?? (i = e.semanticDiagnosticsPerFile);
      const a = t.resolvedPath, o = i.get(a);
      if (o) return d9(o, e.compilerOptions);
      const c = e.program.getBindAndCheckDiagnostics(t, n);
      return i.set(a, c), e.buildInfoEmitPending = !0, d9(c, e.compilerOptions);
    }
    function Qie(e) {
      var t;
      return !!((t = e.options) != null && t.outFile);
    }
    function ZN(e) {
      return !!e.fileNames;
    }
    function uBe(e) {
      return !ZN(e) && !!e.root;
    }
    function Xve(e) {
      e.hasErrors === void 0 && (Wb(e.compilerOptions) ? e.hasErrors = !_t(e.program.getSourceFiles(), (t) => {
        var n, i;
        const a = e.semanticDiagnosticsPerFile.get(t.resolvedPath);
        return a === void 0 || !!a.length || !!((i = (n = e.emitDiagnosticsPerFile) == null ? void 0 : n.get(t.resolvedPath)) != null && i.length);
      }) && (Qve(e) || _t(e.program.getSourceFiles(), (t) => !!e.program.getProgramDiagnostics(t).length)) : e.hasErrors = _t(e.program.getSourceFiles(), (t) => {
        var n, i;
        const a = e.semanticDiagnosticsPerFile.get(t.resolvedPath);
        return !!a?.length || !!((i = (n = e.emitDiagnosticsPerFile) == null ? void 0 : n.get(t.resolvedPath)) != null && i.length);
      }) || Qve(e));
    }
    function Qve(e) {
      return !!e.program.getConfigFileParsingDiagnostics().length || !!e.program.getSyntacticDiagnostics().length || !!e.program.getOptionsDiagnostics().length || !!e.program.getGlobalDiagnostics().length;
    }
    function Yve(e) {
      return Xve(e), e.buildInfoEmitPending ?? (e.buildInfoEmitPending = !!e.hasErrorsFromOldState != !!e.hasErrors);
    }
    function _Be(e) {
      var t, n;
      const i = e.program.getCurrentDirectory(), a = Xn(ca(Mv(e.compilerOptions), i)), o = e.latestChangedDtsFile ? N(e.latestChangedDtsFile) : void 0, c = [], _ = /* @__PURE__ */ new Map(), u = new Set(e.program.getRootFileNames().map((de) => Eo(de, i, e.program.getCanonicalFileName)));
      if (Xve(e), !Wb(e.compilerOptions)) return {
        root: ma(u, (de) => M(de)),
        errors: e.hasErrors ? !0 : void 0,
        checkPending: e.checkPending,
        version: Qr
      };
      const d = [];
      if (e.compilerOptions.outFile) return {
        fileNames: c,
        fileInfos: ma(e.fileInfos.entries(), ([de, $]) => (L(de, R(de)), $.impliedFormat ? {
          version: $.version,
          impliedFormat: $.impliedFormat,
          signature: void 0,
          affectsGlobalScope: void 0
        } : $.version)),
        root: d,
        resolvedRoot: z(),
        options: H(e.compilerOptions),
        semanticDiagnosticsPerFile: e.changedFilesSet.size ? void 0 : pe(),
        emitDiagnosticsPerFile: ie(),
        changeFileSet: fe(),
        outSignature: e.outSignature,
        latestChangedDtsFile: o,
        pendingEmit: e.programEmitPending ? e.programEmitPending === h1(e.compilerOptions) ? !1 : e.programEmitPending : void 0,
        errors: e.hasErrors ? !0 : void 0,
        checkPending: e.checkPending,
        version: Qr
      };
      let g, h, S;
      const T = ma(e.fileInfos.entries(), ([de, $]) => {
        var Se, Be;
        const ce = R(de);
        L(de, ce), E.assert(c[ce - 1] === M(de));
        const oe = (Se = e.oldSignatures) == null ? void 0 : Se.get(de), ge = oe !== void 0 ? oe || void 0 : $.signature;
        if (e.compilerOptions.composite) {
          const Ae = e.program.getSourceFileByPath(de);
          if (!Tp(Ae) && gv(Ae, e.program)) {
            const Ne = (Be = e.emitSignatures) == null ? void 0 : Be.get(de);
            Ne !== ge && (S = kr(S, Ne === void 0 ? ce : [ce, !Ta(Ne) && Ne[0] === ge ? Te : Ne]));
          }
        }
        return $.version === ge ? $.affectsGlobalScope || $.impliedFormat ? {
          version: $.version,
          signature: void 0,
          affectsGlobalScope: $.affectsGlobalScope,
          impliedFormat: $.impliedFormat
        } : $.version : ge !== void 0 ? oe === void 0 ? $ : {
          version: $.version,
          signature: ge,
          affectsGlobalScope: $.affectsGlobalScope,
          impliedFormat: $.impliedFormat
        } : {
          version: $.version,
          signature: !1,
          affectsGlobalScope: $.affectsGlobalScope,
          impliedFormat: $.impliedFormat
        };
      });
      let k;
      (t = e.referencedMap) != null && t.size() && (k = ma(e.referencedMap.keys()).sort(Du).map((de) => [R(de), G(e.referencedMap.getValues(de))]));
      const D = pe();
      let P;
      if ((n = e.affectedFilesPendingEmit) != null && n.size) {
        const de = h1(e.compilerOptions), $ = /* @__PURE__ */ new Set();
        for (const Se of ma(e.affectedFilesPendingEmit.keys()).sort(Du)) if (b_($, Se)) {
          const Be = e.program.getSourceFileByPath(Se);
          if (!Be || !gv(Be, e.program)) continue;
          const ce = R(Se), oe = e.affectedFilesPendingEmit.get(Se);
          P = kr(P, oe === de ? ce : oe === 24 ? [ce] : [ce, oe]);
        }
      }
      return {
        fileNames: c,
        fileIdsList: g,
        fileInfos: T,
        root: d,
        resolvedRoot: z(),
        options: H(e.compilerOptions),
        referencedMap: k,
        semanticDiagnosticsPerFile: D,
        emitDiagnosticsPerFile: ie(),
        changeFileSet: fe(),
        affectedFilesPendingEmit: P,
        emitSignatures: S,
        latestChangedDtsFile: o,
        errors: e.hasErrors ? !0 : void 0,
        checkPending: e.checkPending,
        version: Qr
      };
      function N(de) {
        return M(ca(de, i));
      }
      function M(de) {
        return sS(Zf(a, de, e.program.getCanonicalFileName));
      }
      function R(de) {
        let $ = _.get(de);
        return $ === void 0 && (c.push(M(de)), _.set(de, $ = c.length)), $;
      }
      function G(de) {
        const $ = ma(de.keys(), R).sort(Fo), Se = $.join();
        let Be = h?.get(Se);
        return Be === void 0 && (g = kr(g, $), (h ?? (h = /* @__PURE__ */ new Map())).set(Se, Be = g.length)), Be;
      }
      function L(de, $) {
        const Se = e.program.getSourceFile(de);
        if (!e.program.getFileIncludeReasons().get(Se.path).some((ge) => ge.kind === 0)) return;
        if (!d.length) return d.push($);
        const Be = d[d.length - 1], ce = da(Be);
        if (ce && Be[1] === $ - 1) return Be[1] = $;
        if (ce || d.length === 1 || Be !== $ - 1) return d.push($);
        const oe = d[d.length - 2];
        return !Ay(oe) || oe !== Be - 1 ? d.push($) : (d[d.length - 2] = [oe, $], d.length = d.length - 1);
      }
      function z() {
        let de;
        return u.forEach(($) => {
          const Se = e.program.getSourceFileByPath($);
          Se && $ !== Se.resolvedPath && (de = kr(de, [R(Se.resolvedPath), R($)]));
        }), de;
      }
      function H(de) {
        let $;
        const { optionsNameMap: Se } = q6();
        for (const Be of mm(de).sort(Du)) {
          const ce = Se.get(Be.toLowerCase());
          ce?.affectsBuildInfo && (($ || ($ = {}))[Be] = U(ce, de[Be]));
        }
        return $;
      }
      function U(de, $) {
        if (de) {
          if (E.assert(de.type !== "listOrElement"), de.type === "list") {
            const Se = $;
            if (de.element.isFilePath && Se.length) return Se.map(N);
          } else if (de.isFilePath) return N($);
        }
        return $;
      }
      function pe() {
        let de;
        return e.fileInfos.forEach(($, Se) => {
          const Be = e.semanticDiagnosticsPerFile.get(Se);
          Be ? Be.length && (de = kr(de, [R(Se), W(Be, Se)])) : e.changedFilesSet.has(Se) || (de = kr(de, R(Se)));
        }), de;
      }
      function ie() {
        var de;
        let $;
        if (!((de = e.emitDiagnosticsPerFile) != null && de.size)) return $;
        for (const Se of ma(e.emitDiagnosticsPerFile.keys()).sort(Du)) {
          const Be = e.emitDiagnosticsPerFile.get(Se);
          $ = kr($, [R(Se), W(Be, Se)]);
        }
        return $;
      }
      function W(de, $) {
        return E.assert(!!de.length), de.map((Se) => {
          const Be = Q(Se, $);
          Be.reportsUnnecessary = Se.reportsUnnecessary, Be.reportDeprecated = Se.reportsDeprecated, Be.source = Se.source, Be.skippedOn = Se.skippedOn;
          const { relatedInformation: ce } = Se;
          return Be.relatedInformation = ce ? ce.length ? ce.map((oe) => Q(oe, $)) : [] : void 0, Be;
        });
      }
      function Q(de, $) {
        const { file: Se } = de;
        return {
          ...de,
          file: Se ? Se.resolvedPath === $ ? void 0 : M(Se.resolvedPath) : !1,
          messageText: Ta(de.messageText) ? de.messageText : se(de.messageText)
        };
      }
      function se(de) {
        if (de.repopulateInfo) return {
          info: de.repopulateInfo(),
          next: he(de.next)
        };
        const $ = he(de.next);
        return $ === de.next ? de : {
          ...de,
          next: $
        };
      }
      function he(de) {
        return de && (bt(de, ($, Se) => {
          const Be = se($);
          if ($ === Be) return;
          const ce = Se > 0 ? de.slice(0, Se - 1) : [];
          ce.push(Be);
          for (let oe = Se + 1; oe < de.length; oe++) ce.push(se(de[oe]));
          return ce;
        }) || de);
      }
      function fe() {
        let de;
        if (e.changedFilesSet.size) for (const $ of ma(e.changedFilesSet.keys()).sort(Du)) de = kr(de, R($));
        return de;
      }
    }
    var Yie = /* @__PURE__ */ ((e) => (e[e.SemanticDiagnosticsBuilderProgram = 0] = "SemanticDiagnosticsBuilderProgram", e[e.EmitAndSemanticDiagnosticsBuilderProgram = 1] = "EmitAndSemanticDiagnosticsBuilderProgram", e))(Yie || {});
    function y9(e, t, n, i, a, o) {
      let c, _, u;
      return e === void 0 ? (E.assert(t === void 0), c = n, u = i, E.assert(!!u), _ = u.getProgram()) : da(e) ? (u = i, _ = QN({
        rootNames: e,
        options: t,
        host: n,
        oldProgram: u && u.getProgramOrUndefined(),
        configFileParsingDiagnostics: a,
        projectReferences: o
      }), c = n) : (_ = e, c = t, u = n, a = i), {
        host: c,
        newProgram: _,
        oldProgram: u,
        configFileParsingDiagnostics: a || Te
      };
    }
    function Zve(e, t) {
      return t?.sourceMapUrlPos !== void 0 ? e.substring(0, t.sourceMapUrlPos) : e;
    }
    function zU(e, t, n, i, a) {
      var o;
      n = Zve(n, a);
      let c;
      return (o = a?.diagnostics) != null && o.length && (n += a.diagnostics.map((d) => `${u(d)}${w7[d.category]}${d.code}: ${_(d.messageText)}`).join(`
`)), (i.createHash ?? I4)(n);
      function _(d) {
        return Ta(d) ? d : d === void 0 ? "" : d.next ? d.messageText + d.next.map(_).join(`
`) : d.messageText;
      }
      function u(d) {
        return d.file.resolvedPath === t.resolvedPath ? `(${d.start},${d.length})` : (c === void 0 && (c = Xn(t.resolvedPath)), `${sS(Zf(c, d.file.resolvedPath, e.getCanonicalFileName))}(${d.start},${d.length})`);
      }
    }
    function fBe(e, t, n) {
      return (t.createHash ?? I4)(Zve(e, n));
    }
    function WU(e, { newProgram: t, host: n, oldProgram: i, configFileParsingDiagnostics: a }) {
      let o = i && i.state;
      if (o && t === o.program && a === t.getConfigFileParsingDiagnostics())
        return t = void 0, o = void 0, i;
      const c = nBe(t, o);
      t.getBuildInfo = () => _Be(tBe(c)), t = void 0, i = void 0, o = void 0;
      const _ = qU(c, a);
      return _.state = c, _.hasChangedEmitSignature = () => !!c.hasChangedEmitSignature, _.getAllDependencies = (M) => Qd.getAllDependencies(c, E.checkDefined(c.program), M), _.getSemanticDiagnostics = N, _.getDeclarationDiagnostics = D, _.emit = T, _.releaseProgram = () => iBe(c), e === 0 ? _.getSemanticDiagnosticsOfNextAffectedFile = P : e === 1 ? (_.getSemanticDiagnosticsOfNextAffectedFile = P, _.emitNextAffectedFile = h, _.emitBuildInfo = u) : is(), _;
      function u(M, R) {
        if (E.assert(rE(c)), Yve(c)) {
          const G = c.program.emitBuildInfo(M || Ua(n, n.writeFile), R);
          return c.buildInfoEmitPending = !1, G;
        }
        return MU;
      }
      function d(M, R, G, L, z) {
        var H, U, pe, ie;
        E.assert(rE(c));
        let W = Vve(c, R, n);
        const Q = h1(c.compilerOptions);
        let se = z ? 8 : G ? Q & 56 : Q;
        if (!W) {
          if (c.compilerOptions.outFile) {
            if (c.programEmitPending && (se = h9(c.programEmitPending, c.seenProgramEmit, G, z), se && (W = c.program)), !W && ((H = c.emitDiagnosticsPerFile) != null && H.size)) {
              const de = c.seenProgramEmit || 0;
              if (!(de & BU(z))) {
                c.seenProgramEmit = BU(z) | de;
                const $ = [];
                return c.emitDiagnosticsPerFile.forEach((Se) => Mn($, Se)), {
                  result: {
                    emitSkipped: !0,
                    diagnostics: $
                  },
                  affected: c.program
                };
              }
            }
          } else {
            const de = aBe(c, G, z);
            if (de) ({ affectedFile: W, emitKind: se } = de);
            else {
              const $ = sBe(c, z);
              if ($)
                return (c.seenEmittedFiles ?? (c.seenEmittedFiles = /* @__PURE__ */ new Map())).set($.affectedFile.resolvedPath, $.seenKind | BU(z)), {
                  result: {
                    emitSkipped: !0,
                    diagnostics: $.diagnostics
                  },
                  affected: $.affectedFile
                };
            }
          }
          if (!W) {
            if (z || !Yve(c)) return;
            const de = c.program, $ = de.emitBuildInfo(M || Ua(n, n.writeFile), R);
            return c.buildInfoEmitPending = !1, {
              result: $,
              affected: de
            };
          }
        }
        let he;
        se & 7 && (he = 0), se & 56 && (he = he === void 0 ? 1 : void 0);
        const fe = z ? {
          emitSkipped: !0,
          diagnostics: c.program.getDeclarationDiagnostics(W === c.program ? void 0 : W, R)
        } : c.program.emit(W === c.program ? void 0 : W, S(M, L), R, he, L, void 0, !0);
        if (W !== c.program) {
          const de = W;
          c.seenAffectedFiles.add(de.resolvedPath), c.affectedFilesIndex !== void 0 && c.affectedFilesIndex++, c.buildInfoEmitPending = !0;
          const $ = ((U = c.seenEmittedFiles) == null ? void 0 : U.get(de.resolvedPath)) || 0;
          (c.seenEmittedFiles ?? (c.seenEmittedFiles = /* @__PURE__ */ new Map())).set(de.resolvedPath, se | $);
          const Se = g9(((pe = c.affectedFilesPendingEmit) == null ? void 0 : pe.get(de.resolvedPath)) || Q, se | $);
          Se ? (c.affectedFilesPendingEmit ?? (c.affectedFilesPendingEmit = /* @__PURE__ */ new Map())).set(de.resolvedPath, Se) : (ie = c.affectedFilesPendingEmit) == null || ie.delete(de.resolvedPath), fe.diagnostics.length && (c.emitDiagnosticsPerFile ?? (c.emitDiagnosticsPerFile = /* @__PURE__ */ new Map())).set(de.resolvedPath, fe.diagnostics);
        } else
          c.changedFilesSet.clear(), c.programEmitPending = c.changedFilesSet.size ? g9(Q, se) : c.programEmitPending ? g9(c.programEmitPending, se) : void 0, c.seenProgramEmit = se | (c.seenProgramEmit || 0), g(fe.diagnostics), c.buildInfoEmitPending = !0;
        return {
          result: fe,
          affected: W
        };
      }
      function g(M) {
        let R;
        M.forEach((G) => {
          if (!G.file) return;
          let L = R?.get(G.file.resolvedPath);
          L || (R ?? (R = /* @__PURE__ */ new Map())).set(G.file.resolvedPath, L = []), L.push(G);
        }), R && (c.emitDiagnosticsPerFile = R);
      }
      function h(M, R, G, L) {
        return d(M, R, G, L, !1);
      }
      function S(M, R) {
        return E.assert(rE(c)), U_(c.compilerOptions) ? (G, L, z, H, U, pe) => {
          var ie, W, Q;
          if ($l(G))
            if (c.compilerOptions.outFile) {
              if (c.compilerOptions.composite) {
                const he = se(c.outSignature, void 0);
                if (!he) return pe.skippedDtsWrite = !0;
                c.outSignature = he;
              }
            } else {
              E.assert(U?.length === 1);
              let he;
              if (!R) {
                const fe = U[0], de = c.fileInfos.get(fe.resolvedPath);
                if (de.signature === fe.version) {
                  const $ = zU(c.program, fe, L, n, pe);
                  (ie = pe?.diagnostics) != null && ie.length || (he = $), $ !== fe.version && (n.storeSignatureInfo && (c.signatureInfo ?? (c.signatureInfo = /* @__PURE__ */ new Map())).set(fe.resolvedPath, 1), c.affectedFiles && ((W = c.oldSignatures) == null ? void 0 : W.get(fe.resolvedPath)) === void 0 && (c.oldSignatures ?? (c.oldSignatures = /* @__PURE__ */ new Map())).set(fe.resolvedPath, de.signature || !1), de.signature = $);
                }
              }
              if (c.compilerOptions.composite) {
                const fe = U[0].resolvedPath;
                if (he = se((Q = c.emitSignatures) == null ? void 0 : Q.get(fe), he), !he) return pe.skippedDtsWrite = !0;
                (c.emitSignatures ?? (c.emitSignatures = /* @__PURE__ */ new Map())).set(fe, he);
              }
            }
          M ? M(G, L, z, H, U, pe) : n.writeFile ? n.writeFile(G, L, z, H, U, pe) : c.program.writeFile(G, L, z, H, U, pe);
          function se(he, fe) {
            const de = !he || Ta(he) ? he : he[0];
            if (fe ?? (fe = fBe(L, n, pe)), fe === de) {
              if (he === de) return;
              pe ? pe.differsOnlyInMap = !0 : pe = { differsOnlyInMap: !0 };
            } else
              c.hasChangedEmitSignature = !0, c.latestChangedDtsFile = G;
            return fe;
          }
        } : M || Ua(n, n.writeFile);
      }
      function T(M, R, G, L, z) {
        E.assert(rE(c)), e === 1 && Gie(c, M);
        const H = RU(_, M, R, G);
        if (H) return H;
        if (!M) if (e === 1) {
          let pe = [], ie = !1, W, Q = [], se;
          for (; se = h(R, G, L, z); )
            ie = ie || se.result.emitSkipped, W = Mn(W, se.result.diagnostics), Q = Mn(Q, se.result.emittedFiles), pe = Mn(pe, se.result.sourceMaps);
          return {
            emitSkipped: ie,
            diagnostics: W || Te,
            emittedFiles: Q,
            sourceMaps: pe
          };
        } else qve(c, L, !1);
        const U = c.program.emit(M, S(R, z), G, L, z);
        return k(M, L, !1, U.diagnostics), U;
      }
      function k(M, R, G, L) {
        !M && e !== 1 && (qve(c, R, G), g(L));
      }
      function D(M, R) {
        var G;
        if (E.assert(rE(c)), e === 1) {
          Gie(c, M);
          let L, z;
          for (; L = d(void 0, R, void 0, void 0, !0); ) M || (z = Mn(z, L.result.diagnostics));
          return (M ? (G = c.emitDiagnosticsPerFile) == null ? void 0 : G.get(M.resolvedPath) : z) || Te;
        } else {
          const L = c.program.getDeclarationDiagnostics(M, R);
          return k(M, void 0, !0, L), L;
        }
      }
      function P(M, R) {
        for (E.assert(rE(c)); ; ) {
          const G = Vve(c, M, n);
          let L;
          if (G)
            if (G !== c.program) {
              const z = G;
              if ((!R || !R(z)) && (L = JU(c, z, M)), c.seenAffectedFiles.add(z.resolvedPath), c.affectedFilesIndex++, c.buildInfoEmitPending = !0, !L) continue;
            } else {
              let z;
              const H = /* @__PURE__ */ new Map();
              c.program.getSourceFiles().forEach((U) => z = Mn(z, JU(c, U, M, H))), c.semanticDiagnosticsPerFile = H, L = z || Te, c.changedFilesSet.clear(), c.programEmitPending = h1(c.compilerOptions), c.compilerOptions.noCheck || (c.checkPending = void 0), c.buildInfoEmitPending = !0;
            }
          else {
            c.checkPending && !c.compilerOptions.noCheck && (c.checkPending = void 0, c.buildInfoEmitPending = !0);
            return;
          }
          return {
            result: L,
            affected: G
          };
        }
      }
      function N(M, R) {
        if (E.assert(rE(c)), Gie(c, M), M) return JU(c, M, R);
        for (; ; ) {
          const L = P(R);
          if (!L) break;
          if (L.affected === c.program) return L.result;
        }
        let G;
        for (const L of c.program.getSourceFiles()) G = Mn(G, JU(c, L, R));
        return c.checkPending && !c.compilerOptions.noCheck && (c.checkPending = void 0, c.buildInfoEmitPending = !0), G || Te;
      }
    }
    function UU(e, t, n) {
      var i, a;
      const o = ((i = e.affectedFilesPendingEmit) == null ? void 0 : i.get(t)) || 0;
      (e.affectedFilesPendingEmit ?? (e.affectedFilesPendingEmit = /* @__PURE__ */ new Map())).set(t, o | n), (a = e.emitDiagnosticsPerFile) == null || a.delete(t);
    }
    function Zie(e) {
      return Ta(e) ? {
        version: e,
        signature: e,
        affectsGlobalScope: void 0,
        impliedFormat: void 0
      } : Ta(e.signature) ? e : {
        version: e.version,
        signature: e.signature === !1 ? void 0 : e.version,
        affectsGlobalScope: e.affectsGlobalScope,
        impliedFormat: e.impliedFormat
      };
    }
    function Kie(e, t) {
      return Ay(e) ? t : e[1] || 24;
    }
    function eae(e, t) {
      return e || h1(t || {});
    }
    function tae(e, t, n) {
      var i, a, o, c;
      const _ = Xn(ca(t, n.getCurrentDirectory())), u = pu(n.useCaseSensitiveFileNames());
      let d;
      const g = (i = e.fileNames) == null ? void 0 : i.map(D);
      let h;
      const S = e.latestChangedDtsFile ? P(e.latestChangedDtsFile) : void 0, T = /* @__PURE__ */ new Map(), k = new Set(or(e.changeFileSet, N));
      if (Qie(e))
        e.fileInfos.forEach((z, H) => {
          const U = N(H + 1);
          T.set(U, Ta(z) ? {
            version: z,
            signature: void 0,
            affectsGlobalScope: void 0,
            impliedFormat: void 0
          } : z);
        }), d = {
          fileInfos: T,
          compilerOptions: e.options ? DF(e.options, P) : {},
          semanticDiagnosticsPerFile: G(e.semanticDiagnosticsPerFile),
          emitDiagnosticsPerFile: L(e.emitDiagnosticsPerFile),
          hasReusableDiagnostic: !0,
          changedFilesSet: k,
          latestChangedDtsFile: S,
          outSignature: e.outSignature,
          programEmitPending: e.pendingEmit === void 0 ? void 0 : eae(e.pendingEmit, e.options),
          hasErrors: e.errors,
          checkPending: e.checkPending
        };
      else {
        h = (a = e.fileIdsList) == null ? void 0 : a.map((U) => new Set(U.map(N)));
        const z = (o = e.options) != null && o.composite && !e.options.outFile ? /* @__PURE__ */ new Map() : void 0;
        e.fileInfos.forEach((U, pe) => {
          const ie = N(pe + 1), W = Zie(U);
          T.set(ie, W), z && W.signature && z.set(ie, W.signature);
        }), (c = e.emitSignatures) == null || c.forEach((U) => {
          if (Ay(U)) z.delete(N(U));
          else {
            const pe = N(U[0]);
            z.set(pe, !Ta(U[1]) && !U[1].length ? [z.get(pe)] : U[1]);
          }
        });
        const H = e.affectedFilesPendingEmit ? h1(e.options || {}) : void 0;
        d = {
          fileInfos: T,
          compilerOptions: e.options ? DF(e.options, P) : {},
          referencedMap: R(e.referencedMap, e.options ?? {}),
          semanticDiagnosticsPerFile: G(e.semanticDiagnosticsPerFile),
          emitDiagnosticsPerFile: L(e.emitDiagnosticsPerFile),
          hasReusableDiagnostic: !0,
          changedFilesSet: k,
          affectedFilesPendingEmit: e.affectedFilesPendingEmit && jC(e.affectedFilesPendingEmit, (U) => N(Ay(U) ? U : U[0]), (U) => Kie(U, H)),
          latestChangedDtsFile: S,
          emitSignatures: z?.size ? z : void 0,
          hasErrors: e.errors,
          checkPending: e.checkPending
        };
      }
      return {
        state: d,
        getProgram: is,
        getProgramOrUndefined: Tb,
        releaseProgram: so,
        getCompilerOptions: () => d.compilerOptions,
        getSourceFile: is,
        getSourceFiles: is,
        getOptionsDiagnostics: is,
        getGlobalDiagnostics: is,
        getConfigFileParsingDiagnostics: is,
        getSyntacticDiagnostics: is,
        getDeclarationDiagnostics: is,
        getSemanticDiagnostics: is,
        emit: is,
        getAllDependencies: is,
        getCurrentDirectory: is,
        emitNextAffectedFile: is,
        getSemanticDiagnosticsOfNextAffectedFile: is,
        emitBuildInfo: is,
        close: so,
        hasChangedEmitSignature: Mh
      };
      function D(z) {
        return Eo(z, _, u);
      }
      function P(z) {
        return ca(z, _);
      }
      function N(z) {
        return g[z - 1];
      }
      function M(z) {
        return h[z - 1];
      }
      function R(z, H) {
        const U = Qd.createReferencedMap(H);
        return !U || !z || z.forEach(([pe, ie]) => U.set(N(pe), M(ie))), U;
      }
      function G(z) {
        const H = new Map(Go(T.keys(), (U) => k.has(U) ? void 0 : [U, Te]));
        return z?.forEach((U) => {
          Ay(U) ? H.delete(N(U)) : H.set(N(U[0]), U[1]);
        }), H;
      }
      function L(z) {
        return z && jC(z, (H) => N(H[0]), (H) => H[1]);
      }
    }
    function VU(e, t, n) {
      const i = Xn(ca(t, n.getCurrentDirectory())), a = pu(n.useCaseSensitiveFileNames()), o = /* @__PURE__ */ new Map();
      let c = 0;
      const _ = /* @__PURE__ */ new Map(), u = new Map(e.resolvedRoot);
      return e.fileInfos.forEach((g, h) => {
        const S = Eo(e.fileNames[h], i, a), T = Ta(g) ? g : g.version;
        if (o.set(S, T), c < e.root.length) {
          const k = e.root[c], D = h + 1;
          da(k) ? k[0] <= D && D <= k[1] && (d(D, S), k[1] === D && c++) : k === D && (d(D, S), c++);
        }
      }), {
        fileInfos: o,
        roots: _
      };
      function d(g, h) {
        const S = u.get(g);
        S ? _.set(Eo(e.fileNames[S - 1], i, a), h) : _.set(h, void 0);
      }
    }
    function rae(e, t, n) {
      if (!uBe(e)) return;
      const i = Xn(ca(t, n.getCurrentDirectory())), a = pu(n.useCaseSensitiveFileNames());
      return e.root.map((o) => Eo(o, i, a));
    }
    function qU(e, t) {
      return {
        state: void 0,
        getProgram: n,
        getProgramOrUndefined: () => e.program,
        releaseProgram: () => e.program = void 0,
        getCompilerOptions: () => e.compilerOptions,
        getSourceFile: (i) => n().getSourceFile(i),
        getSourceFiles: () => n().getSourceFiles(),
        getOptionsDiagnostics: (i) => n().getOptionsDiagnostics(i),
        getGlobalDiagnostics: (i) => n().getGlobalDiagnostics(i),
        getConfigFileParsingDiagnostics: () => t,
        getSyntacticDiagnostics: (i, a) => n().getSyntacticDiagnostics(i, a),
        getDeclarationDiagnostics: (i, a) => n().getDeclarationDiagnostics(i, a),
        getSemanticDiagnostics: (i, a) => n().getSemanticDiagnostics(i, a),
        emit: (i, a, o, c, _) => n().emit(i, a, o, c, _),
        emitBuildInfo: (i, a) => n().emitBuildInfo(i, a),
        getAllDependencies: is,
        getCurrentDirectory: () => n().getCurrentDirectory(),
        close: so
      };
      function n() {
        return E.checkDefined(e.program);
      }
    }
    function Kve(e, t, n, i, a, o) {
      return WU(0, y9(e, t, n, i, a, o));
    }
    function GU(e, t, n, i, a, o) {
      return WU(1, y9(e, t, n, i, a, o));
    }
    function ebe(e, t, n, i, a, o) {
      const { newProgram: c, configFileParsingDiagnostics: _ } = y9(e, t, n, i, a, o);
      return qU({
        program: c,
        compilerOptions: c.getCompilerOptions()
      }, _);
    }
    function v9(e) {
      return Uo(e, "/node_modules/.staging") ? zC(e, "/.staging") : _t(N7, (t) => e.includes(t)) ? void 0 : e;
    }
    function nae(e, t) {
      if (t <= 1) return 1;
      let n = 1, i = e[0].search(/[a-z]:/i) === 0;
      if (e[0] !== Co && !i && e[1].search(/[a-z]\$$/i) === 0) {
        if (t === 2) return 2;
        n = 2, i = !0;
      }
      return i && !e[n].match(/^users$/i) ? n : e[n].match(/^workspaces$/i) ? n + 1 : n + 2;
    }
    function HU(e, t) {
      if (t === void 0 && (t = e.length), t <= 2) return !1;
      const n = nae(e, t);
      return t > n + 1;
    }
    function Lw(e) {
      return HU(wu(e));
    }
    function iae(e) {
      return rbe(Xn(e));
    }
    function tbe(e, t) {
      if (t.length < e.length) return !1;
      for (let n = 0; n < e.length; n++) if (t[n] !== e[n]) return !1;
      return !0;
    }
    function rbe(e) {
      return Lw(e);
    }
    function aae(e) {
      return rbe(e);
    }
    function $U(e, t, n, i, a, o, c, _) {
      const u = wu(t);
      e = pf(e) ? us(e) : ca(e, c());
      const d = wu(e), g = nae(u, u.length);
      if (u.length <= g + 1) return;
      const h = u.indexOf("node_modules");
      if (h !== -1 && h + 1 <= g + 1) return;
      const S = u.lastIndexOf("node_modules");
      return o && tbe(a, u) ? u.length > a.length + 1 ? sae(d, u, Math.max(a.length + 1, g + 1), S) : {
        dir: n,
        dirPath: i,
        nonRecursive: !0
      } : nbe(d, u, u.length - 1, g, h, a, S, _);
    }
    function nbe(e, t, n, i, a, o, c, _) {
      if (a !== -1) return sae(e, t, a + 1, c);
      let u = !0, d = n;
      if (!_) {
        for (let g = 0; g < n; g++) if (t[g] !== o[g]) {
          u = !1, d = Math.max(g + 1, i + 1);
          break;
        }
      }
      return sae(e, t, d, c, u);
    }
    function sae(e, t, n, i, a) {
      let o;
      return i !== -1 && i + 1 >= n && i + 2 < t.length && (ta(t[i + 1], "@") ? i + 3 < t.length && (o = i + 3) : o = i + 2), {
        dir: rv(e, n),
        dirPath: rv(t, n),
        nonRecursive: a,
        packageDir: o !== void 0 ? rv(e, o) : void 0,
        packageDirPath: o !== void 0 ? rv(t, o) : void 0
      };
    }
    function oae(e, t, n, i, a, o, c, _) {
      const u = wu(t);
      if (a && tbe(i, u)) return n;
      e = pf(e) ? us(e) : ca(e, o());
      const d = nbe(wu(e), u, u.length, nae(u, u.length), u.indexOf("node_modules"), i, u.lastIndexOf("node_modules"), c);
      return d && _(d.dirPath) ? d.dirPath : void 0;
    }
    function cae(e, t) {
      const n = ca(e, t());
      return Oj(n) ? n : T0(n);
    }
    function b9(e) {
      var t;
      return ((t = e.getCompilerHost) == null ? void 0 : t.call(e)) || e;
    }
    function lae(e, t, n, i, a) {
      return {
        nameAndMode: l9,
        resolve: (o, c) => pBe(i, a, o, e, n, t, c)
      };
    }
    function pBe(e, t, n, i, a, o, c) {
      const _ = b9(e), u = qS(n, i, a, _, t, o, c);
      if (!e.getGlobalTypingsCacheLocation) return u;
      const d = e.getGlobalTypingsCacheLocation();
      if (d !== void 0 && !jl(n) && !(u.resolvedModule && DO(u.resolvedModule.extension))) {
        const { resolvedModule: g, failedLookupLocations: h, affectingLocations: S, resolutionDiagnostics: T } = Sne(E.checkDefined(e.globalCacheResolutionModuleName)(n), e.projectName, a, _, d, t);
        if (g)
          return u.resolvedModule = g, u.failedLookupLocations = G6(u.failedLookupLocations, h), u.affectingLocations = G6(u.affectingLocations, S), u.resolutionDiagnostics = G6(u.resolutionDiagnostics, T), u;
      }
      return u;
    }
    function XU(e, t, n) {
      let i, a, o;
      const c = /* @__PURE__ */ new Set(), _ = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set(), d = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Map();
      let h = !1, S, T, k, D, P, N = !1;
      const M = s_(() => e.getCurrentDirectory()), R = e.getCachedDirectoryStructureHost(), G = /* @__PURE__ */ new Map(), L = $6(M(), e.getCanonicalFileName, e.getCompilationSettings()), z = /* @__PURE__ */ new Map(), H = RF(M(), e.getCanonicalFileName, e.getCompilationSettings(), L.getPackageJsonInfoCache(), L.optionsToRedirectsKey), U = /* @__PURE__ */ new Map(), pe = $6(M(), e.getCanonicalFileName, AW(e.getCompilationSettings()), L.getPackageJsonInfoCache()), ie = /* @__PURE__ */ new Map(), W = /* @__PURE__ */ new Map(), Q = cae(t, M), se = e.toPath(Q), he = wu(se), fe = HU(he), de = /* @__PURE__ */ new Map(), $ = /* @__PURE__ */ new Map(), Se = /* @__PURE__ */ new Map(), Be = /* @__PURE__ */ new Map();
      return {
        rootDirForResolution: t,
        resolvedModuleNames: G,
        resolvedTypeReferenceDirectives: z,
        resolvedLibraries: U,
        resolvedFileToResolution: d,
        resolutionsWithFailedLookups: _,
        resolutionsWithOnlyAffectingLocations: u,
        directoryWatchesOfFailedLookups: ie,
        fileWatchesOfAffectingLocations: W,
        packageDirWatchers: $,
        dirPathToSymlinkPackageRefCount: Se,
        watchFailedLookupLocationsOfExternalModuleResolutions: Kt,
        getModuleResolutionCache: () => L,
        startRecordingFilesWithChangedResolutions: ge,
        finishRecordingFilesWithChangedResolutions: Ae,
        startCachingPerDirectoryResolution: K,
        finishCachingPerDirectoryResolution: ae,
        resolveModuleNameLiterals: Ut,
        resolveTypeReferenceDirectiveReferences: Ft,
        resolveLibrary: Xt,
        resolveSingleModuleNameWithoutWatching: Ar,
        removeResolutionsFromProjectReferenceRedirects: zn,
        removeResolutionsOfFile: na,
        hasChangedAutomaticTypeDirectiveNames: () => h,
        invalidateResolutionOfFile: Da,
        invalidateResolutionsOfFailedLookupLocations: Pt,
        setFilesWithInvalidatedNonRelativeUnresolvedImports: Lr,
        createHasInvalidatedResolutions: ot,
        isFileWithInvalidatedNonRelativeUnresolvedImports: Ne,
        updateTypeRootsWatch: nt,
        closeTypeRootsWatch: we,
        clear: ce,
        onChangesAffectModuleResolution: oe
      };
      function ce() {
        K_(ie, Np), K_(W, Np), de.clear(), $.clear(), Se.clear(), c.clear(), we(), G.clear(), z.clear(), d.clear(), _.clear(), u.clear(), k = void 0, D = void 0, P = void 0, T = void 0, S = void 0, N = !1, L.clear(), H.clear(), L.update(e.getCompilationSettings()), H.update(e.getCompilationSettings()), pe.clear(), g.clear(), U.clear(), h = !1;
      }
      function oe() {
        N = !0, L.clearAllExceptPackageJsonInfoCache(), H.clearAllExceptPackageJsonInfoCache(), L.update(e.getCompilationSettings()), H.update(e.getCompilationSettings());
      }
      function ge() {
        i = [];
      }
      function Ae() {
        const ut = i;
        return i = void 0, ut;
      }
      function Ne(ut) {
        if (!o) return !1;
        const Qe = o.get(ut);
        return !!Qe && !!Qe.length;
      }
      function ot(ut, Qe) {
        Pt();
        const xt = a;
        return a = void 0, {
          hasInvalidatedResolutions: (Dt) => ut(Dt) || N || !!xt?.has(Dt) || Ne(Dt),
          hasInvalidatedLibResolutions: (Dt) => {
            var Ve;
            return Qe(Dt) || !!((Ve = U?.get(Dt)) != null && Ve.isInvalidated);
          }
        };
      }
      function K() {
        L.isReadonly = void 0, H.isReadonly = void 0, pe.isReadonly = void 0, L.getPackageJsonInfoCache().isReadonly = void 0, L.clearAllExceptPackageJsonInfoCache(), H.clearAllExceptPackageJsonInfoCache(), pe.clearAllExceptPackageJsonInfoCache(), ri(), de.clear();
      }
      function ke(ut) {
        U.forEach((Qe, xt) => {
          var Dt;
          (Dt = ut?.resolvedLibReferences) != null && Dt.has(xt) || (vt(Qe, e.toPath(_9(e.getCompilationSettings(), M(), xt)), Px), U.delete(xt));
        });
      }
      function ae(ut, Qe) {
        o = void 0, N = !1, ri(), ut !== Qe && (ke(ut), ut?.getSourceFiles().forEach((xt) => {
          var Dt;
          const Ve = ((Dt = xt.packageJsonLocations) == null ? void 0 : Dt.length) ?? 0, fr = g.get(xt.resolvedPath) ?? Te;
          for (let rr = fr.length; rr < Ve; rr++) Nt(xt.packageJsonLocations[rr], !1);
          if (fr.length > Ve) for (let rr = Ve; rr < fr.length; rr++) W.get(fr[rr]).files--;
          Ve ? g.set(xt.resolvedPath, xt.packageJsonLocations) : g.delete(xt.resolvedPath);
        }), g.forEach((xt, Dt) => {
          const Ve = ut?.getSourceFileByPath(Dt);
          (!Ve || Ve.resolvedPath !== Dt) && (xt.forEach((fr) => W.get(fr).files--), g.delete(Dt));
        })), ie.forEach(ue), W.forEach(Ie), $.forEach(Ce), h = !1, L.isReadonly = !0, H.isReadonly = !0, pe.isReadonly = !0, L.getPackageJsonInfoCache().isReadonly = !0, de.clear();
      }
      function Ce(ut, Qe) {
        ut.dirPathToWatcher.size === 0 && $.delete(Qe);
      }
      function ue(ut, Qe) {
        ut.refCount === 0 && (ie.delete(Qe), ut.watcher.close());
      }
      function Ie(ut, Qe) {
        var xt;
        ut.files === 0 && ut.resolutions === 0 && !((xt = ut.symlinks) != null && xt.size) && (W.delete(Qe), ut.watcher.close());
      }
      function Xe({ entries: ut, containingFile: Qe, containingSourceFile: xt, redirectedReference: Dt, options: Ve, perFileCache: fr, reusedNames: rr, loader: Oe, getResolutionWithResolvedFileName: rt, deferWatchingNonRelativeResolution: ee, shouldRetryResolution: q, logChanges: j }) {
        var Re, $e;
        const ye = e.toPath(Qe), Ke = fr.get(ye) || fr.set(ye, H6()).get(ye), pr = [], Pr = j && Ne(ye), vr = e.getCurrentProgram(), fn = vr && ((Re = vr.getRedirectFromSourceFile(Qe)) == null ? void 0 : Re.resolvedRef), Cr = fn ? !Dt || Dt.sourceFile.path !== fn.sourceFile.path : !!Dt, et = H6();
        for (const wt of ut) {
          const qt = Oe.nameAndMode.getName(wt), Ir = Oe.nameAndMode.getMode(wt, xt, Dt?.commandLine.options || Ve);
          let Yt = Ke.get(qt, Ir);
          if (!et.has(qt, Ir) && (N || Cr || !Yt || Yt.isInvalidated || Pr && !jl(qt) && q(Yt))) {
            const Jt = Yt;
            Yt = Oe.resolve(qt, Ir), e.onDiscoveredSymlink && dBe(Yt) && e.onDiscoveredSymlink(), Ke.set(qt, Ir, Yt), Yt !== Jt && !(($e = e.skipWatchingFailedLookups) != null && $e.call(e, ye)) && (Kt(qt, Yt, ye, rt, ee), Jt && vt(Jt, ye, rt)), j && i && !kt(Jt, Yt) && (i.push(ye), j = !1);
          } else {
            const Jt = b9(e);
            if (_1(Ve, Jt) && !et.has(qt, Ir)) {
              const $t = rt(Yt);
              _a(Jt, fr === G ? $t?.resolvedFileName ? $t.packageId ? p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved : $t?.resolvedFileName ? $t.packageId ? p.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : p.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2 : p.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved, qt, Qe, $t?.resolvedFileName, $t?.packageId && sv($t.packageId));
            }
          }
          E.assert(Yt !== void 0 && !Yt.isInvalidated), et.set(qt, Ir, !0), pr.push(Yt);
        }
        return rr?.forEach((wt) => et.set(Oe.nameAndMode.getName(wt), Oe.nameAndMode.getMode(wt, xt, Dt?.commandLine.options || Ve), !0)), Ke.size() !== et.size() && Ke.forEach((wt, qt, Ir) => {
          var Yt;
          et.has(qt, Ir) || ((Yt = e.skipWatchingFailedLookups) != null && Yt.call(e, ye) || vt(wt, ye, rt), Ke.delete(qt, Ir));
        }), pr;
        function kt(wt, qt) {
          if (wt === qt) return !0;
          if (!wt || !qt) return !1;
          const Ir = rt(wt), Yt = rt(qt);
          return Ir === Yt ? !0 : !Ir || !Yt ? !1 : Ir.resolvedFileName === Yt.resolvedFileName;
        }
      }
      function Ft(ut, Qe, xt, Dt, Ve, fr) {
        return Xe({
          entries: ut,
          containingFile: Qe,
          containingSourceFile: Ve,
          redirectedReference: xt,
          options: Dt,
          reusedNames: fr,
          perFileCache: z,
          loader: u9(Qe, xt, Dt, b9(e), H),
          getResolutionWithResolvedFileName: l5,
          shouldRetryResolution: (rr) => rr.resolvedTypeReferenceDirective === void 0,
          deferWatchingNonRelativeResolution: !1
        });
      }
      function Ut(ut, Qe, xt, Dt, Ve, fr) {
        return Xe({
          entries: ut,
          containingFile: Qe,
          containingSourceFile: Ve,
          redirectedReference: xt,
          options: Dt,
          reusedNames: fr,
          perFileCache: G,
          loader: lae(Qe, xt, Dt, e, L),
          getResolutionWithResolvedFileName: Px,
          shouldRetryResolution: (rr) => !rr.resolvedModule || !MD(rr.resolvedModule.extension),
          logChanges: n,
          deferWatchingNonRelativeResolution: !0
        });
      }
      function Xt(ut, Qe, xt, Dt) {
        const Ve = b9(e);
        let fr = U?.get(Dt);
        if (!fr || fr.isInvalidated) {
          const rr = fr;
          fr = jF(ut, Qe, xt, Ve, pe);
          const Oe = e.toPath(Qe);
          Kt(ut, fr, Oe, Px, !1), U.set(Dt, fr), rr && vt(rr, Oe, Px);
        } else if (_1(xt, Ve)) {
          const rr = Px(fr);
          _a(Ve, rr?.resolvedFileName ? rr.packageId ? p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2 : p.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved, ut, Qe, rr?.resolvedFileName, rr?.packageId && sv(rr.packageId));
        }
        return fr;
      }
      function Ar(ut, Qe) {
        var xt, Dt;
        const Ve = e.toPath(Qe), fr = G.get(Ve), rr = fr?.get(ut, void 0);
        if (rr && !rr.isInvalidated) return rr;
        const Oe = (xt = e.beforeResolveSingleModuleNameWithoutWatching) == null ? void 0 : xt.call(e, L), rt = b9(e), ee = qS(ut, Qe, e.getCompilationSettings(), rt, L);
        return (Dt = e.afterResolveSingleModuleNameWithoutWatching) == null || Dt.call(e, L, ut, Qe, ee, Oe), ee;
      }
      function Ct(ut) {
        return Uo(ut, "/node_modules/@types");
      }
      function Kt(ut, Qe, xt, Dt, Ve) {
        if ((Qe.files ?? (Qe.files = /* @__PURE__ */ new Set())).add(xt), Qe.files.size !== 1) return;
        !Ve || jl(ut) ? _i(Qe) : c.add(Qe);
        const fr = Dt(Qe);
        if (fr && fr.resolvedFileName) {
          const rr = e.toPath(fr.resolvedFileName);
          let Oe = d.get(rr);
          Oe || d.set(rr, Oe = /* @__PURE__ */ new Set()), Oe.add(Qe);
        }
      }
      function zr(ut, Qe) {
        const xt = $U(ut, e.toPath(ut), Q, se, he, fe, M, e.preferNonRecursiveWatch);
        if (xt) {
          const { dir: Dt, dirPath: Ve, nonRecursive: fr, packageDir: rr, packageDirPath: Oe } = xt;
          Ve === se ? (E.assert(fr), E.assert(!rr), Qe = !0) : ni(Dt, Ve, rr, Oe, fr);
        }
        return Qe;
      }
      function _i(ut) {
        var Qe;
        E.assert(!!((Qe = ut.files) != null && Qe.size));
        const { failedLookupLocations: xt, affectingLocations: Dt, alternateResult: Ve } = ut;
        if (!xt?.length && !Dt?.length && !Ve) return;
        (xt?.length || Ve) && _.add(ut);
        let fr = !1;
        if (xt) for (const rr of xt) fr = zr(rr, fr);
        Ve && (fr = zr(Ve, fr)), fr && ni(Q, se, void 0, void 0, !0), Gr(ut, !xt?.length && !Ve);
      }
      function Gr(ut, Qe) {
        var xt;
        E.assert(!!((xt = ut.files) != null && xt.size));
        const { affectingLocations: Dt } = ut;
        if (Dt?.length) {
          Qe && u.add(ut);
          for (const Ve of Dt) Nt(Ve, !0);
        }
      }
      function Nt(ut, Qe) {
        const xt = W.get(ut);
        if (xt) {
          Qe ? xt.resolutions++ : xt.files++;
          return;
        }
        let Dt = ut, Ve = !1, fr;
        e.realpath && (Dt = e.realpath(ut), ut !== Dt && (Ve = !0, fr = W.get(Dt)));
        const rr = Qe ? 1 : 0, Oe = Qe ? 0 : 1;
        if (!Ve || !fr) {
          const rt = {
            watcher: aae(e.toPath(Dt)) ? e.watchAffectingFileLocation(Dt, (ee, q) => {
              R?.addOrDeleteFile(ee, e.toPath(Dt), q), Li(Dt, L.getPackageJsonInfoCache().getInternalMap()), e.scheduleInvalidateResolutionsOfFailedLookupLocations();
            }) : iE,
            resolutions: Ve ? 0 : rr,
            files: Ve ? 0 : Oe,
            symlinks: void 0
          };
          W.set(Dt, rt), Ve && (fr = rt);
        }
        if (Ve) {
          E.assert(!!fr);
          const rt = {
            watcher: { close: () => {
              var ee;
              const q = W.get(Dt);
              (ee = q?.symlinks) != null && ee.delete(ut) && !q.symlinks.size && !q.resolutions && !q.files && (W.delete(Dt), q.watcher.close());
            } },
            resolutions: rr,
            files: Oe,
            symlinks: void 0
          };
          W.set(ut, rt), (fr.symlinks ?? (fr.symlinks = /* @__PURE__ */ new Set())).add(ut);
        }
      }
      function Li(ut, Qe) {
        var xt;
        const Dt = W.get(ut);
        Dt?.resolutions && (T ?? (T = /* @__PURE__ */ new Set())).add(ut), Dt?.files && (S ?? (S = /* @__PURE__ */ new Set())).add(ut), (xt = Dt?.symlinks) == null || xt.forEach((Ve) => Li(Ve, Qe)), Qe?.delete(e.toPath(ut));
      }
      function ri() {
        c.forEach(_i), c.clear();
      }
      function Zr(ut, Qe, xt, Dt, Ve) {
        E.assert(!Ve);
        let fr = de.get(Dt), rr = $.get(Dt);
        if (fr === void 0) {
          const ee = e.realpath(xt);
          fr = ee !== xt && e.toPath(ee) !== Dt, de.set(Dt, fr), rr ? rr.isSymlink !== fr && (rr.dirPathToWatcher.forEach((q) => {
            tr(rr.isSymlink ? Dt : Qe), q.watcher = rt();
          }), rr.isSymlink = fr) : $.set(Dt, rr = {
            dirPathToWatcher: /* @__PURE__ */ new Map(),
            isSymlink: fr
          });
        } else
          E.assertIsDefined(rr), E.assert(fr === rr.isSymlink);
        const Oe = rr.dirPathToWatcher.get(Qe);
        Oe ? Oe.refCount++ : (rr.dirPathToWatcher.set(Qe, {
          watcher: rt(),
          refCount: 1
        }), fr && Se.set(Qe, (Se.get(Qe) ?? 0) + 1));
        function rt() {
          return fr ? ra(xt, Dt, Ve) : ra(ut, Qe, Ve);
        }
      }
      function ni(ut, Qe, xt, Dt, Ve) {
        !Dt || !e.realpath ? ra(ut, Qe, Ve) : Zr(ut, Qe, xt, Dt, Ve);
      }
      function ra(ut, Qe, xt) {
        let Dt = ie.get(Qe);
        return Dt ? (E.assert(!!xt == !!Dt.nonRecursive), Dt.refCount++) : ie.set(Qe, Dt = {
          watcher: Ur(ut, Qe, xt),
          refCount: 1,
          nonRecursive: xt
        }), Dt;
      }
      function Me(ut, Qe) {
        const xt = $U(ut, e.toPath(ut), Q, se, he, fe, M, e.preferNonRecursiveWatch);
        if (xt) {
          const { dirPath: Dt, packageDirPath: Ve } = xt;
          if (Dt === se) Qe = !0;
          else if (Ve && e.realpath) {
            const fr = $.get(Ve), rr = fr.dirPathToWatcher.get(Dt);
            if (rr.refCount--, rr.refCount === 0 && (tr(fr.isSymlink ? Ve : Dt), fr.dirPathToWatcher.delete(Dt), fr.isSymlink)) {
              const Oe = Se.get(Dt) - 1;
              Oe === 0 ? Se.delete(Dt) : Se.set(Dt, Oe);
            }
          } else tr(Dt);
        }
        return Qe;
      }
      function vt(ut, Qe, xt) {
        if (E.checkDefined(ut.files).delete(Qe), ut.files.size) return;
        ut.files = void 0;
        const Dt = xt(ut);
        if (Dt && Dt.resolvedFileName) {
          const Oe = e.toPath(Dt.resolvedFileName), rt = d.get(Oe);
          rt?.delete(ut) && !rt.size && d.delete(Oe);
        }
        const { failedLookupLocations: Ve, affectingLocations: fr, alternateResult: rr } = ut;
        if (_.delete(ut)) {
          let Oe = !1;
          if (Ve) for (const rt of Ve) Oe = Me(rt, Oe);
          rr && (Oe = Me(rr, Oe)), Oe && tr(se);
        } else fr?.length && u.delete(ut);
        if (fr) for (const Oe of fr) {
          const rt = W.get(Oe);
          rt.resolutions--;
        }
      }
      function tr(ut) {
        const Qe = ie.get(ut);
        Qe.refCount--;
      }
      function Ur(ut, Qe, xt) {
        return e.watchDirectoryOfFailedLookupLocation(ut, (Dt) => {
          const Ve = e.toPath(Dt);
          R && R.addOrDeleteFileOrDirectory(Dt, Ve), ha(Ve, Qe === Ve);
        }, xt ? 0 : 1);
      }
      function $n(ut, Qe, xt) {
        var Dt;
        const Ve = ut.get(Qe);
        Ve && ((Dt = e.skipWatchingFailedLookups) != null && Dt.call(e, Qe) || Ve.forEach((fr) => vt(fr, Qe, xt)), ut.delete(Qe));
      }
      function zn(ut) {
        if (!lc(ut, ".json")) return;
        const Qe = e.getCurrentProgram();
        if (!Qe) return;
        const xt = Qe.getResolvedProjectReferenceByPath(ut);
        xt && xt.commandLine.fileNames.forEach((Dt) => na(e.toPath(Dt)));
      }
      function na(ut) {
        $n(G, ut, Px), $n(z, ut, l5);
      }
      function Ea(ut, Qe) {
        if (!ut) return !1;
        let xt = !1;
        return ut.forEach((Dt) => {
          if (!(Dt.isInvalidated || !Qe(Dt))) {
            Dt.isInvalidated = xt = !0;
            for (const Ve of E.checkDefined(Dt.files))
              (a ?? (a = /* @__PURE__ */ new Set())).add(Ve), h = h || Uo(Ve, Iw);
          }
        }), xt;
      }
      function Da(ut) {
        na(ut);
        const Qe = h;
        Ea(d.get(ut), Sb) && h && !Qe && e.onChangedAutomaticTypeDirectiveNames();
      }
      function Lr(ut) {
        E.assert(o === ut || o === void 0), o = ut;
      }
      function ha(ut, Qe) {
        if (Qe) (P || (P = /* @__PURE__ */ new Set())).add(ut);
        else {
          const xt = v9(ut);
          if (!xt || (ut = xt, e.fileIsOpen(ut))) return !1;
          const Dt = Xn(ut);
          if (Ct(ut) || M7(ut) || Ct(Dt) || M7(Dt))
            (k || (k = /* @__PURE__ */ new Set())).add(ut), (D || (D = /* @__PURE__ */ new Set())).add(ut);
          else {
            if (Aie(e.getCurrentProgram(), ut) || lc(ut, ".map")) return !1;
            (k || (k = /* @__PURE__ */ new Set())).add(ut), (D || (D = /* @__PURE__ */ new Set())).add(ut);
            const Ve = AN(ut, !0);
            Ve && (D || (D = /* @__PURE__ */ new Set())).add(Ve);
          }
        }
        e.scheduleInvalidateResolutionsOfFailedLookupLocations();
      }
      function Ye() {
        const ut = L.getPackageJsonInfoCache().getInternalMap();
        ut && (k || D || P) && ut.forEach((Qe, xt) => tt(xt) ? ut.delete(xt) : void 0);
      }
      function Pt() {
        var ut;
        if (N)
          return S = void 0, Ye(), (k || D || P || T) && Ea(U, ne), k = void 0, D = void 0, P = void 0, T = void 0, !0;
        let Qe = !1;
        return S && ((ut = e.getCurrentProgram()) == null || ut.getSourceFiles().forEach((xt) => {
          _t(xt.packageJsonLocations, (Dt) => S.has(Dt)) && ((a ?? (a = /* @__PURE__ */ new Set())).add(xt.path), Qe = !0);
        }), S = void 0), !k && !D && !P && !T || (Qe = Ea(_, ne) || Qe, Ye(), k = void 0, D = void 0, P = void 0, Qe = Ea(u, re) || Qe, T = void 0), Qe;
      }
      function ne(ut) {
        var Qe;
        return re(ut) ? !0 : !k && !D && !P ? !1 : ((Qe = ut.failedLookupLocations) == null ? void 0 : Qe.some((xt) => tt(e.toPath(xt)))) || !!ut.alternateResult && tt(e.toPath(ut.alternateResult));
      }
      function tt(ut) {
        return k?.has(ut) || rs(D?.keys() || [], (Qe) => ta(ut, Qe) ? !0 : void 0) || rs(P?.keys() || [], (Qe) => ut.length > Qe.length && ta(ut, Qe) && (Oj(Qe) || ut[Qe.length] === Co) ? !0 : void 0);
      }
      function re(ut) {
        var Qe;
        return !!T && ((Qe = ut.affectingLocations) == null ? void 0 : Qe.some((xt) => T.has(xt)));
      }
      function we() {
        K_(Be, md);
      }
      function Ge(ut) {
        return it(ut) ? e.watchTypeRootsDirectory(ut, (Qe) => {
          const xt = e.toPath(Qe);
          R && R.addOrDeleteFileOrDirectory(Qe, xt), h = !0, e.onChangedAutomaticTypeDirectiveNames();
          const Dt = oae(ut, e.toPath(ut), se, he, fe, M, e.preferNonRecursiveWatch, (Ve) => ie.has(Ve) || Se.has(Ve));
          Dt && ha(xt, Dt === xt);
        }, 1) : iE;
      }
      function nt() {
        var ut;
        const Qe = e.getCompilationSettings();
        if (!yv(Qe)) {
          we();
          return;
        }
        if (!fe || (ut = e.skipWatchingTypeRoots) != null && ut.call(e)) {
          we();
          return;
        }
        const xt = mw(Qe, { getCurrentDirectory: M });
        xt ? AD(Be, new Set(xt), {
          createNewValue: Ge,
          onDeleteValue: md
        }) : we();
      }
      function it(ut) {
        return e.getCompilationSettings().typeRoots ? !0 : iae(e.toPath(ut));
      }
    }
    function dBe(e) {
      var t, n;
      return !!((t = e.resolvedModule) != null && t.originalPath || (n = e.resolvedTypeReferenceDirective) != null && n.originalPath);
    }
    var ibe = Cl ? {
      getCurrentDirectory: () => Cl.getCurrentDirectory(),
      getNewLine: () => Cl.newLine,
      getCanonicalFileName: pu(Cl.useCaseSensitiveFileNames)
    } : void 0;
    function Nk(e, t) {
      const n = e === Cl && ibe ? ibe : {
        getCurrentDirectory: () => e.getCurrentDirectory(),
        getNewLine: () => e.newLine,
        getCanonicalFileName: pu(e.useCaseSensitiveFileNames)
      };
      if (!t) return (a) => e.write(PU(a, n));
      const i = new Array(1);
      return (a) => {
        i[0] = a, e.write(Mie(i, n) + n.getNewLine()), i[0] = void 0;
      };
    }
    function abe(e, t, n) {
      return e.clearScreen && !n.preserveWatchOutput && !n.extendedDiagnostics && !n.diagnostics && Gi(sbe, t.code) ? (e.clearScreen(), !0) : !1;
    }
    var sbe = [p.Starting_compilation_in_watch_mode.code, p.File_change_detected_Starting_incremental_compilation.code];
    function mBe(e, t) {
      return Gi(sbe, e.code) ? t + t : t;
    }
    function KN(e) {
      return e.now ? e.now().toLocaleTimeString("en-US", { timeZone: "UTC" }).replace(" ", " ") : (/* @__PURE__ */ new Date()).toLocaleTimeString();
    }
    function QU(e, t) {
      return t ? (n, i, a) => {
        abe(e, n, a);
        let o = `[${a2(KN(e), "\x1B[90m")}] `;
        o += `${Mm(n.messageText, e.newLine)}${i + i}`, e.write(o);
      } : (n, i, a) => {
        let o = "";
        abe(e, n, a) || (o += i), o += `${KN(e)} - `, o += `${Mm(n.messageText, e.newLine)}${mBe(n, i)}`, e.write(o);
      };
    }
    function uae(e, t, n, i, a, o) {
      const c = a;
      c.onUnRecoverableConfigFileDiagnostic = (u) => lbe(a, o, u);
      const _ = xN(e, t, c, n, i);
      return c.onUnRecoverableConfigFileDiagnostic = void 0, _;
    }
    function S9(e) {
      return Qf(e, (t) => t.category === 1);
    }
    function T9(e) {
      return dn(e, (t) => t.category === 1).map((t) => {
        if (t.file !== void 0)
          return `${t.file.fileName}`;
      }).map((t) => {
        if (t === void 0) return;
        const n = xr(e, (i) => i.file !== void 0 && i.file.fileName === t);
        if (n !== void 0) {
          const { line: i } = Za(n.file, n.start);
          return {
            fileName: t,
            line: i + 1
          };
        }
      });
    }
    function YU(e) {
      return e === 1 ? p.Found_1_error_Watching_for_file_changes : p.Found_0_errors_Watching_for_file_changes;
    }
    function obe(e, t) {
      const n = a2(":" + e.line, "\x1B[90m");
      return O4(e.fileName) && O4(t) ? Zf(t, e.fileName, !1) + n : e.fileName + n;
    }
    function ZU(e, t, n, i) {
      if (e === 0) return "";
      const a = t.filter((g) => g !== void 0), o = a.map((g) => `${g.fileName}:${g.line}`).filter((g, h, S) => S.indexOf(g) === h), c = a[0] && obe(a[0], i.getCurrentDirectory());
      let _;
      e === 1 ? _ = t[0] !== void 0 ? [p.Found_1_error_in_0, c] : [p.Found_1_error] : _ = o.length === 0 ? [p.Found_0_errors, e] : o.length === 1 ? [
        p.Found_0_errors_in_the_same_file_starting_at_Colon_1,
        e,
        c
      ] : [
        p.Found_0_errors_in_1_files,
        e,
        o.length
      ];
      const u = nc(..._), d = o.length > 1 ? gBe(a, i) : "";
      return `${n}${Mm(u.messageText, n)}${n}${n}${d}`;
    }
    function gBe(e, t) {
      const n = e.filter((h, S, T) => S === T.findIndex((k) => k?.fileName === h?.fileName));
      if (n.length === 0) return "";
      const i = (h) => Math.log(h) * Math.LOG10E + 1, a = n.map((h) => [h, Qf(e, (S) => S.fileName === h.fileName)]), o = ej(a, 0, (h) => h[1]), c = p.Errors_Files.message, _ = c.split(" ")[0].length, u = Math.max(_, i(o)), d = Math.max(i(o) - _, 0);
      let g = "";
      return g += " ".repeat(d) + c + `
`, a.forEach((h) => {
        const [S, T] = h, k = Math.log(T) * Math.LOG10E + 1 | 0, D = k < u ? " ".repeat(u - k) : "", P = obe(S, t.getCurrentDirectory());
        g += `${D}${T}  ${P}
`;
      }), g;
    }
    function KU(e) {
      return !!e.state;
    }
    function hBe(e, t) {
      const n = e.getCompilerOptions();
      n.explainFiles ? eV(KU(e) ? e.getProgram() : e, t) : (n.listFiles || n.listFilesOnly) && bt(e.getSourceFiles(), (i) => {
        t(i.fileName);
      });
    }
    function eV(e, t) {
      var n, i;
      const a = e.getFileIncludeReasons(), o = (c) => F4(c, e.getCurrentDirectory(), e.getCanonicalFileName);
      for (const c of e.getSourceFiles())
        t(`${nE(c, o)}`), (n = a.get(c.path)) == null || n.forEach((_) => t(`  ${iV(e, _, o).messageText}`)), (i = tV(c, e.getCompilerOptionsForFile(c), o)) == null || i.forEach((_) => t(`  ${_.messageText}`));
    }
    function tV(e, t, n) {
      var i;
      let a;
      if (e.path !== e.resolvedPath && (a ?? (a = [])).push(ba(void 0, p.File_is_output_of_project_reference_source_0, nE(e.originalFileName, n))), e.redirectInfo && (a ?? (a = [])).push(ba(void 0, p.File_redirects_to_file_0, nE(e.redirectInfo.redirectTarget, n))), gf(e)) switch (QS(e, t)) {
        case 99:
          e.packageJsonScope && (a ?? (a = [])).push(ba(void 0, p.File_is_ECMAScript_module_because_0_has_field_type_with_value_module, nE(ws(e.packageJsonLocations), n)));
          break;
        case 1:
          e.packageJsonScope ? (a ?? (a = [])).push(ba(void 0, e.packageJsonScope.contents.packageJsonContent.type ? p.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module : p.File_is_CommonJS_module_because_0_does_not_have_field_type, nE(ws(e.packageJsonLocations), n))) : (i = e.packageJsonLocations) != null && i.length && (a ?? (a = [])).push(ba(void 0, p.File_is_CommonJS_module_because_package_json_was_not_found));
          break;
      }
      return a;
    }
    function rV(e, t) {
      var n;
      const i = e.getCompilerOptions().configFile;
      if (!((n = i?.configFileSpecs) != null && n.validatedFilesSpec)) return;
      const a = e.getCanonicalFileName(t), o = Xn(ca(i.fileName, e.getCurrentDirectory())), c = qs(i.configFileSpecs.validatedFilesSpec, (_) => e.getCanonicalFileName(ca(_, o)) === a);
      return c !== -1 ? i.configFileSpecs.validatedFilesSpecBeforeSubstitution[c] : void 0;
    }
    function nV(e, t) {
      var n, i;
      const a = e.getCompilerOptions().configFile;
      if (!((n = a?.configFileSpecs) != null && n.validatedIncludeSpecs)) return;
      if (a.configFileSpecs.isDefaultIncludeSpec) return !0;
      const o = lc(t, ".json"), c = Xn(ca(a.fileName, e.getCurrentDirectory())), _ = e.useCaseSensitiveFileNames(), u = qs((i = a?.configFileSpecs) == null ? void 0 : i.validatedIncludeSpecs, (d) => {
        if (o && !Uo(d, ".json")) return !1;
        const g = HJ(d, c, "files");
        return !!g && O0(`(?:${g})$`, _).test(t);
      });
      return u !== -1 ? a.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[u] : void 0;
    }
    function iV(e, t, n) {
      var i, a;
      const o = e.getCompilerOptions();
      if (Rv(t)) {
        const c = Ow(e, t), _ = tE(c) ? c.file.text.substring(c.pos, c.end) : `"${c.text}"`;
        let u;
        switch (E.assert(tE(c) || t.kind === 3, "Only synthetic references are imports"), t.kind) {
          case 3:
            tE(c) ? u = c.packageId ? p.Imported_via_0_from_file_1_with_packageId_2 : p.Imported_via_0_from_file_1 : c.text === Vy ? u = c.packageId ? p.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions : p.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions : u = c.packageId ? p.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions : p.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;
            break;
          case 4:
            E.assert(!c.packageId), u = p.Referenced_via_0_from_file_1;
            break;
          case 5:
            u = c.packageId ? p.Type_library_referenced_via_0_from_file_1_with_packageId_2 : p.Type_library_referenced_via_0_from_file_1;
            break;
          case 7:
            E.assert(!c.packageId), u = p.Library_referenced_via_0_from_file_1;
            break;
          default:
            E.assertNever(t);
        }
        return ba(void 0, u, _, nE(c.file, n), c.packageId && sv(c.packageId));
      }
      switch (t.kind) {
        case 0:
          if (!((i = o.configFile) != null && i.configFileSpecs)) return ba(void 0, p.Root_file_specified_for_compilation);
          const c = ca(e.getRootFileNames()[t.index], e.getCurrentDirectory());
          if (rV(e, c)) return ba(void 0, p.Part_of_files_list_in_tsconfig_json);
          const _ = nV(e, c);
          return Ta(_) ? ba(void 0, p.Matched_by_include_pattern_0_in_1, _, nE(o.configFile, n)) : ba(void 0, _ ? p.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk : p.Root_file_specified_for_compilation);
        case 1:
        case 2:
          const u = t.kind === 2, d = E.checkDefined((a = e.getResolvedProjectReferences()) == null ? void 0 : a[t.index]);
          return ba(void 0, o.outFile ? u ? p.Output_from_referenced_project_0_included_because_1_specified : p.Source_from_referenced_project_0_included_because_1_specified : u ? p.Output_from_referenced_project_0_included_because_module_is_specified_as_none : p.Source_from_referenced_project_0_included_because_module_is_specified_as_none, nE(d.sourceFile.fileName, n), o.outFile ? "--outFile" : "--out");
        case 8:
          return ba(void 0, ...yv(o) ? t.packageId ? [
            p.Entry_point_for_implicit_type_library_0_with_packageId_1,
            t.typeReference,
            sv(t.packageId)
          ] : [p.Entry_point_for_implicit_type_library_0, t.typeReference] : t.packageId ? [
            p.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,
            t.typeReference,
            sv(t.packageId)
          ] : [p.Entry_point_of_type_library_0_specified_in_compilerOptions, t.typeReference]);
        case 6: {
          if (t.index !== void 0) return ba(void 0, p.Library_0_specified_in_compilerOptions, o.lib[t.index]);
          const g = mO(Ps(o));
          return ba(void 0, ...g ? [p.Default_library_for_target_0, g] : [p.Default_library]);
        }
        default:
          E.assertNever(t);
      }
    }
    function nE(e, t) {
      const n = Ta(e) ? e : e.fileName;
      return t ? t(n) : n;
    }
    function x9(e, t, n, i, a, o, c, _) {
      const u = e.getCompilerOptions(), d = e.getConfigFileParsingDiagnostics().slice(), g = d.length;
      Mn(d, e.getSyntacticDiagnostics(void 0, o)), d.length === g && (Mn(d, e.getOptionsDiagnostics(o)), u.listFilesOnly || (Mn(d, e.getGlobalDiagnostics(o)), d.length === g && Mn(d, e.getSemanticDiagnostics(void 0, o)), u.noEmit && U_(u) && d.length === g && Mn(d, e.getDeclarationDiagnostics(void 0, o))));
      const h = u.listFilesOnly ? {
        emitSkipped: !0,
        diagnostics: Te
      } : e.emit(void 0, a, o, c, _);
      Mn(d, h.diagnostics);
      const S = GC(d);
      if (S.forEach(t), n) {
        const T = e.getCurrentDirectory();
        bt(h.emittedFiles, (k) => {
          n(`TSFILE: ${ca(k, T)}`);
        }), hBe(e, n);
      }
      return i && i(S9(S), T9(S)), {
        emitResult: h,
        diagnostics: S
      };
    }
    function aV(e, t, n, i, a, o, c, _) {
      const { emitResult: u, diagnostics: d } = x9(e, t, n, i, a, o, c, _);
      return u.emitSkipped && d.length > 0 ? 1 : d.length > 0 ? 2 : 0;
    }
    var iE = { close: so }, Mw = () => iE;
    function sV(e = Cl, t) {
      return {
        onWatchStatusChange: t || QU(e),
        watchFile: Ua(e, e.watchFile) || Mw,
        watchDirectory: Ua(e, e.watchDirectory) || Mw,
        setTimeout: Ua(e, e.setTimeout) || so,
        clearTimeout: Ua(e, e.clearTimeout) || so,
        preferNonRecursiveWatch: e.preferNonRecursiveWatch
      };
    }
    var Xl = {
      ConfigFile: "Config file",
      ExtendedConfigFile: "Extended config file",
      SourceFile: "Source file",
      MissingFile: "Missing file",
      WildcardDirectory: "Wild card directory",
      FailedLookupLocations: "Failed Lookup Locations",
      AffectingFileLocation: "File location affecting resolution",
      TypeRoots: "Type roots",
      ConfigFileOfReferencedProject: "Config file of referened project",
      ExtendedConfigOfReferencedProject: "Extended config file of referenced project",
      WildcardDirectoryOfReferencedProject: "Wild card directory of referenced project",
      PackageJson: "package.json file",
      ClosedScriptInfo: "Closed Script info",
      ConfigFileForInferredRoot: "Config file for the inferred project root",
      NodeModules: "node_modules for closed script infos and package.jsons affecting module specifier cache",
      MissingSourceMapFile: "Missing source map file",
      NoopConfigFileForInferredRoot: "Noop Config file for the inferred project root",
      MissingGeneratedFile: "Missing generated file",
      NodeModulesForModuleSpecifierCache: "node_modules for module specifier cache invalidation",
      TypingInstallerLocationFile: "File location for typing installer",
      TypingInstallerLocationDirectory: "Directory location for typing installer"
    };
    function oV(e, t) {
      const n = e.trace ? t.extendedDiagnostics ? 2 : t.diagnostics ? 1 : 0 : 0, i = n !== 0 ? ((o) => e.trace(o)) : so, a = xU(e, n, i);
      return a.writeLog = i, a;
    }
    function cV(e, t, n = e) {
      const i = e.useCaseSensitiveFileNames(), a = {
        getSourceFile: DU((o, c) => c ? e.readFile(o, c) : a.readFile(o), void 0),
        getDefaultLibLocation: Ua(e, e.getDefaultLibLocation),
        getDefaultLibFileName: (o) => e.getDefaultLibFileName(o),
        writeFile: wU((o, c, _) => e.writeFile(o, c, _), (o) => e.createDirectory(o), (o) => e.directoryExists(o)),
        getCurrentDirectory: s_(() => e.getCurrentDirectory()),
        useCaseSensitiveFileNames: () => i,
        getCanonicalFileName: pu(i),
        getNewLine: () => N0(t()),
        fileExists: (o) => e.fileExists(o),
        readFile: (o) => e.readFile(o),
        trace: Ua(e, e.trace),
        directoryExists: Ua(n, n.directoryExists),
        getDirectories: Ua(n, n.getDirectories),
        realpath: Ua(e, e.realpath),
        getEnvironmentVariable: Ua(e, e.getEnvironmentVariable) || (() => ""),
        createHash: Ua(e, e.createHash),
        readDirectory: Ua(e, e.readDirectory),
        storeSignatureInfo: e.storeSignatureInfo,
        jsDocParsingMode: e.jsDocParsingMode
      };
      return a;
    }
    function k9(e, t) {
      if (t.match(Lne)) {
        let n = t.length, i = n;
        for (let a = n - 1; a >= 0; a--) {
          const o = t.charCodeAt(a);
          switch (o) {
            case 10:
              a && t.charCodeAt(a - 1) === 13 && a--;
            case 13:
              break;
            default:
              if (o < 127 || !Uu(o)) {
                i = a;
                continue;
              }
              break;
          }
          const c = t.substring(i, n);
          if (c.match(YW)) {
            t = t.substring(0, i);
            break;
          } else if (!c.match(ZW)) break;
          n = i;
        }
      }
      return (e.createHash || I4)(t);
    }
    function C9(e) {
      const t = e.getSourceFile;
      e.getSourceFile = (...n) => {
        const i = t.call(e, ...n);
        return i && (i.version = k9(e, i.text)), i;
      };
    }
    function lV(e, t) {
      const n = s_(() => Xn(us(e.getExecutingFilePath())));
      return {
        useCaseSensitiveFileNames: () => e.useCaseSensitiveFileNames,
        getNewLine: () => e.newLine,
        getCurrentDirectory: s_(() => e.getCurrentDirectory()),
        getDefaultLibLocation: n,
        getDefaultLibFileName: (i) => jn(n(), S3(i)),
        fileExists: (i) => e.fileExists(i),
        readFile: (i, a) => e.readFile(i, a),
        directoryExists: (i) => e.directoryExists(i),
        getDirectories: (i) => e.getDirectories(i),
        readDirectory: (i, a, o, c, _) => e.readDirectory(i, a, o, c, _),
        realpath: Ua(e, e.realpath),
        getEnvironmentVariable: Ua(e, e.getEnvironmentVariable),
        trace: (i) => e.write(i + e.newLine),
        createDirectory: (i) => e.createDirectory(i),
        writeFile: (i, a, o) => e.writeFile(i, a, o),
        createHash: Ua(e, e.createHash),
        createProgram: t || GU,
        storeSignatureInfo: e.storeSignatureInfo,
        now: Ua(e, e.now)
      };
    }
    function cbe(e = Cl, t, n, i) {
      const a = (c) => e.write(c + e.newLine), o = lV(e, t);
      return ZR(o, sV(e, i)), o.afterProgramCreate = (c) => {
        const _ = c.getCompilerOptions(), u = N0(_);
        x9(c, n, a, (d) => o.onWatchStatusChange(nc(YU(d), d), u, _, d));
      }, o;
    }
    function lbe(e, t, n) {
      t(n), e.exit(1);
    }
    function uV({ configFileName: e, optionsToExtend: t, watchOptionsToExtend: n, extraFileExtensions: i, system: a, createProgram: o, reportDiagnostic: c, reportWatchStatus: _ }) {
      const u = c || Nk(a), d = cbe(a, o, u, _);
      return d.onUnRecoverableConfigFileDiagnostic = (g) => lbe(a, u, g), d.configFileName = e, d.optionsToExtend = t, d.watchOptionsToExtend = n, d.extraFileExtensions = i, d;
    }
    function _V({ rootFiles: e, options: t, watchOptions: n, projectReferences: i, system: a, createProgram: o, reportDiagnostic: c, reportWatchStatus: _ }) {
      const u = cbe(a, o, c || Nk(a), _);
      return u.rootFiles = e, u.options = t, u.watchOptions = n, u.projectReferences = i, u;
    }
    function _ae(e) {
      const t = e.system || Cl, n = e.host || (e.host = D9(e.options, t)), i = fae(e), a = aV(i, e.reportDiagnostic || Nk(t), (o) => n.trace && n.trace(o), e.reportErrorSummary || e.options.pretty ? (o, c) => t.write(ZU(o, c, t.newLine, n)) : void 0);
      return e.afterProgramEmitAndDiagnostics && e.afterProgramEmitAndDiagnostics(i), a;
    }
    function E9(e, t) {
      const n = Mv(e);
      if (!n) return;
      let i;
      if (t.getBuildInfo) i = t.getBuildInfo(n, e.configFilePath);
      else {
        const a = t.readFile(n);
        if (!a) return;
        i = vU(n, a);
      }
      if (!(!i || i.version !== Qr || !ZN(i)))
        return tae(i, n, t);
    }
    function D9(e, t = Cl) {
      const n = o9(e, void 0, t);
      return n.createHash = Ua(t, t.createHash), n.storeSignatureInfo = t.storeSignatureInfo, C9(n), Nw(n, (i) => Eo(i, n.getCurrentDirectory(), n.getCanonicalFileName)), n;
    }
    function fae({ rootNames: e, options: t, configFileParsingDiagnostics: n, projectReferences: i, host: a, createProgram: o }) {
      a = a || D9(t), o = o || GU;
      const c = E9(t, a);
      return o(e, t, a, c, n, i);
    }
    function ube(e, t, n, i, a, o, c, _) {
      return da(e) ? _V({
        rootFiles: e,
        options: t,
        watchOptions: _,
        projectReferences: c,
        system: n,
        createProgram: i,
        reportDiagnostic: a,
        reportWatchStatus: o
      }) : uV({
        configFileName: e,
        optionsToExtend: t,
        watchOptionsToExtend: c,
        extraFileExtensions: _,
        system: n,
        createProgram: i,
        reportDiagnostic: a,
        reportWatchStatus: o
      });
    }
    function fV(e) {
      let t, n, i, a, o = /* @__PURE__ */ new Map([[void 0, void 0]]), c, _, u, d, g = e.extendedConfigCache, h = !1;
      const S = /* @__PURE__ */ new Map();
      let T, k = !1;
      const D = e.useCaseSensitiveFileNames(), P = e.getCurrentDirectory(), { configFileName: N, optionsToExtend: M = {}, watchOptionsToExtend: R, extraFileExtensions: G, createProgram: L } = e;
      let { rootFiles: z, options: H, watchOptions: U, projectReferences: pe } = e, ie, W, Q = !1, se = !1;
      const he = N === void 0 ? void 0 : i9(e, P, D), fe = he || e, de = m9(e, fe);
      let $ = Xt();
      N && e.configFileParsingResult && (Da(e.configFileParsingResult), $ = Xt()), ri(p.Starting_compilation_in_watch_mode), N && !e.configFileParsingResult && ($ = N0(M), E.assert(!z), Ea(), $ = Xt()), E.assert(H), E.assert(z);
      const { watchFile: Se, watchDirectory: Be, writeLog: ce } = oV(e, H), oe = pu(D);
      ce(`Current directory: ${P} CaseSensitiveFileNames: ${D}`);
      let ge;
      N && (ge = Se(N, tr, 2e3, U, Xl.ConfigFile));
      const Ae = cV(e, () => H, fe);
      C9(Ae);
      const Ne = Ae.getSourceFile;
      Ae.getSourceFile = (Qe, ...xt) => _i(Qe, Ar(Qe), ...xt), Ae.getSourceFileByPath = _i, Ae.getNewLine = () => $, Ae.fileExists = zr, Ae.onReleaseOldSourceFile = Li, Ae.onReleaseParsedCommandLine = Ye, Ae.toPath = Ar, Ae.getCompilationSettings = () => H, Ae.useSourceOfProjectReferenceRedirect = Ua(e, e.useSourceOfProjectReferenceRedirect), Ae.preferNonRecursiveWatch = e.preferNonRecursiveWatch, Ae.watchDirectoryOfFailedLookupLocation = (Qe, xt, Dt) => Be(Qe, xt, Dt, U, Xl.FailedLookupLocations), Ae.watchAffectingFileLocation = (Qe, xt) => Se(Qe, xt, 2e3, U, Xl.AffectingFileLocation), Ae.watchTypeRootsDirectory = (Qe, xt, Dt) => Be(Qe, xt, Dt, U, Xl.TypeRoots), Ae.getCachedDirectoryStructureHost = () => he, Ae.scheduleInvalidateResolutionsOfFailedLookupLocations = ra, Ae.onInvalidatedResolution = vt, Ae.onChangedAutomaticTypeDirectiveNames = vt, Ae.fileIsOpen = Mh, Ae.getCurrentProgram = Ie, Ae.writeLog = ce, Ae.getParsedCommandLine = Lr;
      const ot = XU(Ae, N ? Xn(ca(N, P)) : P, !1);
      Ae.resolveModuleNameLiterals = Ua(e, e.resolveModuleNameLiterals), Ae.resolveModuleNames = Ua(e, e.resolveModuleNames), !Ae.resolveModuleNameLiterals && !Ae.resolveModuleNames && (Ae.resolveModuleNameLiterals = ot.resolveModuleNameLiterals.bind(ot)), Ae.resolveTypeReferenceDirectiveReferences = Ua(e, e.resolveTypeReferenceDirectiveReferences), Ae.resolveTypeReferenceDirectives = Ua(e, e.resolveTypeReferenceDirectives), !Ae.resolveTypeReferenceDirectiveReferences && !Ae.resolveTypeReferenceDirectives && (Ae.resolveTypeReferenceDirectiveReferences = ot.resolveTypeReferenceDirectiveReferences.bind(ot)), Ae.resolveLibrary = e.resolveLibrary ? e.resolveLibrary.bind(e) : ot.resolveLibrary.bind(ot), Ae.getModuleResolutionCache = e.resolveModuleNameLiterals || e.resolveModuleNames ? Ua(e, e.getModuleResolutionCache) : (() => ot.getModuleResolutionCache());
      const K = e.resolveModuleNameLiterals || e.resolveTypeReferenceDirectiveReferences || e.resolveModuleNames || e.resolveTypeReferenceDirectives ? Ua(e, e.hasInvalidatedResolutions) || Sb : Mh, ke = e.resolveLibrary ? Ua(e, e.hasInvalidatedLibResolutions) || Sb : Mh;
      return t = E9(H, Ae), Xe(), N ? {
        getCurrentProgram: ue,
        getProgram: $n,
        close: ae,
        getResolutionCache: Ce
      } : {
        getCurrentProgram: ue,
        getProgram: $n,
        updateRootFileNames: Ut,
        close: ae,
        getResolutionCache: Ce
      };
      function ae() {
        ni(), ot.clear(), K_(S, (Qe) => {
          Qe && Qe.fileWatcher && (Qe.fileWatcher.close(), Qe.fileWatcher = void 0);
        }), ge && (ge.close(), ge = void 0), g?.clear(), g = void 0, d && (K_(d, Np), d = void 0), a && (K_(a, Np), a = void 0), i && (K_(i, md), i = void 0), u && (K_(u, (Qe) => {
          var xt;
          (xt = Qe.watcher) == null || xt.close(), Qe.watcher = void 0, Qe.watchedDirectories && K_(Qe.watchedDirectories, Np), Qe.watchedDirectories = void 0;
        }), u = void 0), t = void 0;
      }
      function Ce() {
        return ot;
      }
      function ue() {
        return t;
      }
      function Ie() {
        return t && t.getProgramOrUndefined();
      }
      function Xe() {
        ce("Synchronizing program"), E.assert(H), E.assert(z), ni();
        const Qe = ue();
        k && ($ = Xt(), Qe && o5(Qe.getCompilerOptions(), H) && ot.onChangesAffectModuleResolution());
        const { hasInvalidatedResolutions: xt, hasInvalidatedLibResolutions: Dt } = ot.createHasInvalidatedResolutions(K, ke), { originalReadFile: Ve, originalFileExists: fr, originalDirectoryExists: rr, originalCreateDirectory: Oe, originalWriteFile: rt, readFileWithCache: ee } = Nw(Ae, Ar);
        return LU(Ie(), z, H, (q) => Nt(q, ee), (q) => Ae.fileExists(q), xt, Dt, Zr, Lr, pe) ? se && (h && ri(p.File_change_detected_Starting_incremental_compilation), t = L(void 0, void 0, Ae, t, W, pe), se = !1) : (h && ri(p.File_change_detected_Starting_incremental_compilation), Ft(xt, Dt)), h = !1, e.afterProgramCreate && Qe !== t && e.afterProgramCreate(t), Ae.readFile = Ve, Ae.fileExists = fr, Ae.directoryExists = rr, Ae.createDirectory = Oe, Ae.writeFile = rt, o?.forEach((q, j) => {
          if (!j)
            Ge(), N && it(Ar(N), H, U, Xl.ExtendedConfigFile);
          else {
            const Re = u?.get(j);
            Re && ut(q, j, Re);
          }
        }), o = void 0, t;
      }
      function Ft(Qe, xt) {
        ce("CreatingProgramWith::"), ce(`  roots: ${JSON.stringify(z)}`), ce(`  options: ${JSON.stringify(H)}`), pe && ce(`  projectReferences: ${JSON.stringify(pe)}`);
        const Dt = k || !Ie();
        k = !1, se = !1, ot.startCachingPerDirectoryResolution(), Ae.hasInvalidatedResolutions = Qe, Ae.hasInvalidatedLibResolutions = xt, Ae.hasChangedAutomaticTypeDirectiveNames = Zr;
        const Ve = Ie();
        if (t = L(z, H, Ae, t, W, pe), ot.finishCachingPerDirectoryResolution(t.getProgram(), Ve), TU(t.getProgram(), i || (i = /* @__PURE__ */ new Map()), re), Dt && ot.updateTypeRootsWatch(), T) {
          for (const fr of T) i.has(fr) || S.delete(fr);
          T = void 0;
        }
      }
      function Ut(Qe) {
        E.assert(!N, "Cannot update root file names with config file watch mode"), z = Qe, vt();
      }
      function Xt() {
        return N0(H || M);
      }
      function Ar(Qe) {
        return Eo(Qe, P, oe);
      }
      function Ct(Qe) {
        return typeof Qe == "boolean";
      }
      function Kt(Qe) {
        return typeof Qe.version == "boolean";
      }
      function zr(Qe) {
        const xt = Ar(Qe);
        return Ct(S.get(xt)) ? !1 : fe.fileExists(Qe);
      }
      function _i(Qe, xt, Dt, Ve, fr) {
        const rr = S.get(xt);
        if (Ct(rr)) return;
        const Oe = typeof Dt == "object" ? Dt.impliedNodeFormat : void 0;
        if (rr === void 0 || fr || Kt(rr) || rr.sourceFile.impliedNodeFormat !== Oe) {
          const rt = Ne(Qe, Dt, Ve);
          if (rr) rt ? (rr.sourceFile = rt, rr.version = rt.version, rr.fileWatcher || (rr.fileWatcher = Pt(xt, Qe, ne, 250, U, Xl.SourceFile))) : (rr.fileWatcher && rr.fileWatcher.close(), S.set(xt, !1));
          else if (rt) {
            const ee = Pt(xt, Qe, ne, 250, U, Xl.SourceFile);
            S.set(xt, {
              sourceFile: rt,
              version: rt.version,
              fileWatcher: ee
            });
          } else S.set(xt, !1);
          return rt;
        }
        return rr.sourceFile;
      }
      function Gr(Qe) {
        const xt = S.get(Qe);
        xt !== void 0 && (Ct(xt) ? S.set(Qe, { version: !1 }) : xt.version = !1);
      }
      function Nt(Qe, xt) {
        const Dt = S.get(Qe);
        if (!Dt) return;
        if (Dt.version) return Dt.version;
        const Ve = xt(Qe);
        return Ve !== void 0 ? k9(Ae, Ve) : void 0;
      }
      function Li(Qe, xt, Dt) {
        const Ve = S.get(Qe.resolvedPath);
        Ve !== void 0 && (Ct(Ve) ? (T || (T = [])).push(Qe.path) : Ve.sourceFile === Qe && (Ve.fileWatcher && Ve.fileWatcher.close(), S.delete(Qe.resolvedPath), Dt || ot.removeResolutionsOfFile(Qe.path)));
      }
      function ri(Qe) {
        e.onWatchStatusChange && e.onWatchStatusChange(nc(Qe), $, H || M);
      }
      function Zr() {
        return ot.hasChangedAutomaticTypeDirectiveNames();
      }
      function ni() {
        return _ ? (e.clearTimeout(_), _ = void 0, !0) : !1;
      }
      function ra() {
        if (!e.setTimeout || !e.clearTimeout) return ot.invalidateResolutionsOfFailedLookupLocations();
        ce(`Scheduling invalidateFailedLookup${ni() ? ", Cancelled earlier one" : ""}`), _ = e.setTimeout(Me, 250, "timerToInvalidateFailedLookupResolutions");
      }
      function Me() {
        _ = void 0, ot.invalidateResolutionsOfFailedLookupLocations() && vt();
      }
      function vt() {
        !e.setTimeout || !e.clearTimeout || (c && e.clearTimeout(c), ce("Scheduling update"), c = e.setTimeout(Ur, 250, "timerToUpdateProgram"));
      }
      function tr() {
        E.assert(!!N), n = 2, vt();
      }
      function Ur() {
        c = void 0, h = !0, $n();
      }
      function $n() {
        switch (n) {
          case 1:
            zn();
            break;
          case 2:
            na();
            break;
          default:
            Xe();
            break;
        }
        return ue();
      }
      function zn() {
        ce("Reloading new file names and options"), E.assert(H), E.assert(N), n = 0, z = pw(H.configFile.configFileSpecs, ca(Xn(N), P), H, de, G), AF(z, ca(N, P), H.configFile.configFileSpecs, W, Q) && (se = !0), Xe();
      }
      function na() {
        E.assert(N), ce(`Reloading config file: ${N}`), n = 0, he && he.clearCache(), Ea(), k = !0, (o ?? (o = /* @__PURE__ */ new Map())).set(void 0, void 0), Xe();
      }
      function Ea() {
        E.assert(N), Da(xN(N, M, de, g || (g = /* @__PURE__ */ new Map()), R, G));
      }
      function Da(Qe) {
        z = Qe.fileNames, H = Qe.options, U = Qe.watchOptions, pe = Qe.projectReferences, ie = Qe.wildcardDirectories, W = s2(Qe).slice(), Q = wN(Qe.raw), se = !0;
      }
      function Lr(Qe) {
        const xt = Ar(Qe);
        let Dt = u?.get(xt);
        if (Dt) {
          if (!Dt.updateLevel) return Dt.parsedCommandLine;
          if (Dt.parsedCommandLine && Dt.updateLevel === 1 && !e.getParsedCommandLine) {
            ce("Reloading new file names and options"), E.assert(H);
            const fr = pw(Dt.parsedCommandLine.options.configFile.configFileSpecs, ca(Xn(Qe), P), H, de);
            return Dt.parsedCommandLine = {
              ...Dt.parsedCommandLine,
              fileNames: fr
            }, Dt.updateLevel = void 0, Dt.parsedCommandLine;
          }
        }
        ce(`Loading config file: ${Qe}`);
        const Ve = e.getParsedCommandLine ? e.getParsedCommandLine(Qe) : ha(Qe);
        return Dt ? (Dt.parsedCommandLine = Ve, Dt.updateLevel = void 0) : (u || (u = /* @__PURE__ */ new Map())).set(xt, Dt = { parsedCommandLine: Ve }), (o ?? (o = /* @__PURE__ */ new Map())).set(xt, Qe), Ve;
      }
      function ha(Qe) {
        const xt = de.onUnRecoverableConfigFileDiagnostic;
        de.onUnRecoverableConfigFileDiagnostic = so;
        const Dt = xN(Qe, void 0, de, g || (g = /* @__PURE__ */ new Map()), R);
        return de.onUnRecoverableConfigFileDiagnostic = xt, Dt;
      }
      function Ye(Qe) {
        var xt;
        const Dt = Ar(Qe), Ve = u?.get(Dt);
        Ve && (u.delete(Dt), Ve.watchedDirectories && K_(Ve.watchedDirectories, Np), (xt = Ve.watcher) == null || xt.close(), SU(Dt, d));
      }
      function Pt(Qe, xt, Dt, Ve, fr, rr) {
        return Se(xt, (Oe, rt) => Dt(Oe, rt, Qe), Ve, fr, rr);
      }
      function ne(Qe, xt, Dt) {
        tt(Qe, Dt, xt), xt === 2 && S.has(Dt) && ot.invalidateResolutionOfFile(Dt), Gr(Dt), vt();
      }
      function tt(Qe, xt, Dt) {
        he && he.addOrDeleteFile(Qe, xt, Dt);
      }
      function re(Qe, xt) {
        return u?.has(Qe) ? iE : Pt(Qe, xt, we, 500, U, Xl.MissingFile);
      }
      function we(Qe, xt, Dt) {
        tt(Qe, Dt, xt), xt === 0 && i.has(Dt) && (i.get(Dt).close(), i.delete(Dt), Gr(Dt), vt());
      }
      function Ge() {
        qN(a || (a = /* @__PURE__ */ new Map()), ie, nt);
      }
      function nt(Qe, xt) {
        return Be(Qe, (Dt) => {
          E.assert(N), E.assert(H);
          const Ve = Ar(Dt);
          he && he.addOrDeleteFileOrDirectory(Dt, Ve), Gr(Ve), !GN({
            watchedDirPath: Ar(Qe),
            fileOrDirectory: Dt,
            fileOrDirectoryPath: Ve,
            configFileName: N,
            extraFileExtensions: G,
            options: H,
            program: ue() || z,
            currentDirectory: P,
            useCaseSensitiveFileNames: D,
            writeLog: ce,
            toPath: Ar
          }) && n !== 2 && (n = 1, vt());
        }, xt, U, Xl.WildcardDirectory);
      }
      function it(Qe, xt, Dt, Ve) {
        a9(Qe, xt, d || (d = /* @__PURE__ */ new Map()), (fr, rr) => Se(fr, (Oe, rt) => {
          var ee;
          tt(fr, rr, rt), g && s9(g, rr, Ar);
          const q = (ee = d.get(rr)) == null ? void 0 : ee.projects;
          q?.size && q.forEach((j) => {
            if (N && Ar(N) === j) n = 2;
            else {
              const Re = u?.get(j);
              Re && (Re.updateLevel = 2), ot.removeResolutionsFromProjectReferenceRedirects(j);
            }
            vt();
          });
        }, 2e3, Dt, Ve), Ar);
      }
      function ut(Qe, xt, Dt) {
        var Ve, fr, rr, Oe;
        Dt.watcher || (Dt.watcher = Se(Qe, (rt, ee) => {
          tt(Qe, xt, ee);
          const q = u?.get(xt);
          q && (q.updateLevel = 2), ot.removeResolutionsFromProjectReferenceRedirects(xt), vt();
        }, 2e3, ((Ve = Dt.parsedCommandLine) == null ? void 0 : Ve.watchOptions) || U, Xl.ConfigFileOfReferencedProject)), qN(Dt.watchedDirectories || (Dt.watchedDirectories = /* @__PURE__ */ new Map()), (fr = Dt.parsedCommandLine) == null ? void 0 : fr.wildcardDirectories, (rt, ee) => {
          var q;
          return Be(rt, (j) => {
            const Re = Ar(j);
            he && he.addOrDeleteFileOrDirectory(j, Re), Gr(Re);
            const $e = u?.get(xt);
            $e?.parsedCommandLine && (GN({
              watchedDirPath: Ar(rt),
              fileOrDirectory: j,
              fileOrDirectoryPath: Re,
              configFileName: Qe,
              options: $e.parsedCommandLine.options,
              program: $e.parsedCommandLine.fileNames,
              currentDirectory: P,
              useCaseSensitiveFileNames: D,
              writeLog: ce,
              toPath: Ar
            }) || $e.updateLevel !== 2 && ($e.updateLevel = 1, vt()));
          }, ee, ((q = Dt.parsedCommandLine) == null ? void 0 : q.watchOptions) || U, Xl.WildcardDirectoryOfReferencedProject);
        }), it(xt, (rr = Dt.parsedCommandLine) == null ? void 0 : rr.options, ((Oe = Dt.parsedCommandLine) == null ? void 0 : Oe.watchOptions) || U, Xl.ExtendedConfigOfReferencedProject);
      }
    }
    var pae = /* @__PURE__ */ ((e) => (e[e.Unbuildable = 0] = "Unbuildable", e[e.UpToDate = 1] = "UpToDate", e[e.UpToDateWithUpstreamTypes = 2] = "UpToDateWithUpstreamTypes", e[e.OutputMissing = 3] = "OutputMissing", e[e.ErrorReadingFile = 4] = "ErrorReadingFile", e[e.OutOfDateWithSelf = 5] = "OutOfDateWithSelf", e[e.OutOfDateWithUpstream = 6] = "OutOfDateWithUpstream", e[e.OutOfDateBuildInfoWithPendingEmit = 7] = "OutOfDateBuildInfoWithPendingEmit", e[e.OutOfDateBuildInfoWithErrors = 8] = "OutOfDateBuildInfoWithErrors", e[e.OutOfDateOptions = 9] = "OutOfDateOptions", e[e.OutOfDateRoots = 10] = "OutOfDateRoots", e[e.UpstreamOutOfDate = 11] = "UpstreamOutOfDate", e[e.UpstreamBlocked = 12] = "UpstreamBlocked", e[e.ComputingUpstream = 13] = "ComputingUpstream", e[e.TsVersionOutputOfDate = 14] = "TsVersionOutputOfDate", e[e.UpToDateWithInputFileText = 15] = "UpToDateWithInputFileText", e[e.ContainerOnly = 16] = "ContainerOnly", e[e.ForceBuild = 17] = "ForceBuild", e))(pae || {});
    function pV(e) {
      return lc(e, ".json") ? e : jn(e, "tsconfig.json");
    }
    var yBe = /* @__PURE__ */ new Date(-864e13);
    function vBe(e, t, n) {
      const i = e.get(t);
      let a;
      return i || (a = n(), e.set(t, a)), i || a;
    }
    function dae(e, t) {
      return vBe(e, t, () => /* @__PURE__ */ new Map());
    }
    function dV(e) {
      return e.now ? e.now() : /* @__PURE__ */ new Date();
    }
    function Ik(e) {
      return !!e && !!e.buildOrder;
    }
    function eI(e) {
      return Ik(e) ? e.buildOrder : e;
    }
    function w9(e, t) {
      return (n) => {
        let i = t ? `[${a2(KN(e), "\x1B[90m")}] ` : `${KN(e)} - `;
        i += `${Mm(n.messageText, e.newLine)}${e.newLine + e.newLine}`, e.write(i);
      };
    }
    function _be(e, t, n, i) {
      const a = lV(e, t);
      return a.getModifiedTime = e.getModifiedTime ? (o) => e.getModifiedTime(o) : Tb, a.setModifiedTime = e.setModifiedTime ? (o, c) => e.setModifiedTime(o, c) : so, a.deleteFile = e.deleteFile ? (o) => e.deleteFile(o) : so, a.reportDiagnostic = n || Nk(e), a.reportSolutionBuilderStatus = i || w9(e), a.now = Ua(e, e.now), a;
    }
    function mae(e = Cl, t, n, i, a) {
      const o = _be(e, t, n, i);
      return o.reportErrorSummary = a, o;
    }
    function gae(e = Cl, t, n, i, a) {
      const o = _be(e, t, n, i);
      return ZR(o, sV(e, a)), o;
    }
    function bBe(e) {
      const t = {};
      return vF.forEach((n) => {
        po(e, n.name) && (t[n.name] = e[n.name]);
      }), t.tscBuild = !0, t;
    }
    function hae(e, t, n) {
      return Ibe(!1, e, t, n);
    }
    function yae(e, t, n, i) {
      return Ibe(!0, e, t, n, i);
    }
    function SBe(e, t, n, i, a) {
      const o = t, c = t, _ = bBe(i), u = cV(o, () => D.projectCompilerOptions);
      C9(u), u.getParsedCommandLine = (P) => aE(D, P, yg(D, P)), u.resolveModuleNameLiterals = Ua(o, o.resolveModuleNameLiterals), u.resolveTypeReferenceDirectiveReferences = Ua(o, o.resolveTypeReferenceDirectiveReferences), u.resolveLibrary = Ua(o, o.resolveLibrary), u.resolveModuleNames = Ua(o, o.resolveModuleNames), u.resolveTypeReferenceDirectives = Ua(o, o.resolveTypeReferenceDirectives), u.getModuleResolutionCache = Ua(o, o.getModuleResolutionCache);
      let d, g;
      !u.resolveModuleNameLiterals && !u.resolveModuleNames && (d = $6(u.getCurrentDirectory(), u.getCanonicalFileName), u.resolveModuleNameLiterals = (P, N, M, R, G) => $N(P, N, M, R, G, o, d, OU), u.getModuleResolutionCache = () => d), !u.resolveTypeReferenceDirectiveReferences && !u.resolveTypeReferenceDirectives && (g = RF(u.getCurrentDirectory(), u.getCanonicalFileName, void 0, d?.getPackageJsonInfoCache(), d?.optionsToRedirectsKey), u.resolveTypeReferenceDirectiveReferences = (P, N, M, R, G) => $N(P, N, M, R, G, o, g, u9));
      let h;
      u.resolveLibrary || (h = $6(u.getCurrentDirectory(), u.getCanonicalFileName, void 0, d?.getPackageJsonInfoCache()), u.resolveLibrary = (P, N, M) => jF(P, N, M, o, h)), u.getBuildInfo = (P, N) => xbe(D, P, yg(D, N), void 0);
      const { watchFile: S, watchDirectory: T, writeLog: k } = oV(c, i), D = {
        host: o,
        hostWithWatch: c,
        parseConfigFileHost: m9(o),
        write: Ua(o, o.trace),
        options: i,
        baseCompilerOptions: _,
        rootNames: n,
        baseWatchOptions: a,
        resolvedConfigFilePaths: /* @__PURE__ */ new Map(),
        configFileCache: /* @__PURE__ */ new Map(),
        projectStatus: /* @__PURE__ */ new Map(),
        extendedConfigCache: /* @__PURE__ */ new Map(),
        buildInfoCache: /* @__PURE__ */ new Map(),
        outputTimeStamps: /* @__PURE__ */ new Map(),
        builderPrograms: /* @__PURE__ */ new Map(),
        diagnostics: /* @__PURE__ */ new Map(),
        projectPendingBuild: /* @__PURE__ */ new Map(),
        projectErrorsReported: /* @__PURE__ */ new Map(),
        compilerHost: u,
        moduleResolutionCache: d,
        typeReferenceDirectiveResolutionCache: g,
        libraryResolutionCache: h,
        buildOrder: void 0,
        readFileWithCache: (P) => o.readFile(P),
        projectCompilerOptions: _,
        cache: void 0,
        allProjectBuildPending: !0,
        needsSummary: !0,
        watchAllProjectsPending: e,
        watch: e,
        allWatchedWildcardDirectories: /* @__PURE__ */ new Map(),
        allWatchedInputFiles: /* @__PURE__ */ new Map(),
        allWatchedConfigFiles: /* @__PURE__ */ new Map(),
        allWatchedExtendedConfigFiles: /* @__PURE__ */ new Map(),
        allWatchedPackageJsonFiles: /* @__PURE__ */ new Map(),
        filesWatched: /* @__PURE__ */ new Map(),
        lastCachedPackageJsonLookups: /* @__PURE__ */ new Map(),
        timerToBuildInvalidatedProject: void 0,
        reportFileChangeDetected: !1,
        watchFile: S,
        watchDirectory: T,
        writeLog: k
      };
      return D;
    }
    function bd(e, t) {
      return Eo(t, e.compilerHost.getCurrentDirectory(), e.compilerHost.getCanonicalFileName);
    }
    function yg(e, t) {
      const { resolvedConfigFilePaths: n } = e, i = n.get(t);
      if (i !== void 0) return i;
      const a = bd(e, t);
      return n.set(t, a), a;
    }
    function fbe(e) {
      return !!e.options;
    }
    function TBe(e, t) {
      const n = e.configFileCache.get(t);
      return n && fbe(n) ? n : void 0;
    }
    function aE(e, t, n) {
      const { configFileCache: i } = e, a = i.get(n);
      if (a) return fbe(a) ? a : void 0;
      pc("SolutionBuilder::beforeConfigFileParsing");
      let o;
      const { parseConfigFileHost: c, baseCompilerOptions: _, baseWatchOptions: u, extendedConfigCache: d, host: g } = e;
      let h;
      return g.getParsedCommandLine ? (h = g.getParsedCommandLine(t), h || (o = nc(p.File_0_not_found, t))) : (c.onUnRecoverableConfigFileDiagnostic = (S) => o = S, h = xN(t, _, c, d, u), c.onUnRecoverableConfigFileDiagnostic = so), i.set(n, h || o), pc("SolutionBuilder::afterConfigFileParsing"), yp("SolutionBuilder::Config file parsing", "SolutionBuilder::beforeConfigFileParsing", "SolutionBuilder::afterConfigFileParsing"), h;
    }
    function tI(e, t) {
      return pV(Fy(e.compilerHost.getCurrentDirectory(), t));
    }
    function pbe(e, t) {
      const n = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = [];
      let o, c;
      for (const u of t) _(u);
      return c ? {
        buildOrder: o || Te,
        circularDiagnostics: c
      } : o || Te;
      function _(u, d) {
        const g = yg(e, u);
        if (i.has(g)) return;
        if (n.has(g)) {
          d || (c || (c = [])).push(nc(p.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0, a.join(`\r
`)));
          return;
        }
        n.set(g, !0), a.push(u);
        const h = aE(e, u, g);
        if (h && h.projectReferences) for (const S of h.projectReferences) _(tI(e, S.path), d || S.circular);
        a.pop(), i.set(g, !0), (o || (o = [])).push(u);
      }
    }
    function P9(e) {
      return e.buildOrder || xBe(e);
    }
    function xBe(e) {
      const t = pbe(e, e.rootNames.map((a) => tI(e, a)));
      e.resolvedConfigFilePaths.clear();
      const n = new Set(eI(t).map((a) => yg(e, a))), i = { onDeleteValue: so };
      return Qg(e.configFileCache, n, i), Qg(e.projectStatus, n, i), Qg(e.builderPrograms, n, i), Qg(e.diagnostics, n, i), Qg(e.projectPendingBuild, n, i), Qg(e.projectErrorsReported, n, i), Qg(e.buildInfoCache, n, i), Qg(e.outputTimeStamps, n, i), Qg(e.lastCachedPackageJsonLookups, n, i), e.watch && (Qg(e.allWatchedConfigFiles, n, { onDeleteValue: md }), e.allWatchedExtendedConfigFiles.forEach((a) => {
        a.projects.forEach((o) => {
          n.has(o) || a.projects.delete(o);
        }), a.close();
      }), Qg(e.allWatchedWildcardDirectories, n, { onDeleteValue: (a) => a.forEach(Np) }), Qg(e.allWatchedInputFiles, n, { onDeleteValue: (a) => a.forEach(md) }), Qg(e.allWatchedPackageJsonFiles, n, { onDeleteValue: (a) => a.forEach(md) })), e.buildOrder = t;
    }
    function dbe(e, t, n) {
      const i = t && tI(e, t), a = P9(e);
      if (Ik(a)) return a;
      if (i) {
        const c = yg(e, i);
        if (qs(a, (_) => yg(e, _) === c) === -1) return;
      }
      const o = i ? pbe(e, [i]) : a;
      return E.assert(!Ik(o)), E.assert(!n || i !== void 0), E.assert(!n || o[o.length - 1] === i), n ? o.slice(0, o.length - 1) : o;
    }
    function mbe(e) {
      e.cache && vae(e);
      const { compilerHost: t, host: n } = e, i = e.readFileWithCache, a = t.getSourceFile, { originalReadFile: o, originalFileExists: c, originalDirectoryExists: _, originalCreateDirectory: u, originalWriteFile: d, getSourceFileWithCache: g, readFileWithCache: h } = Nw(n, (S) => bd(e, S), (...S) => a.call(t, ...S));
      e.readFileWithCache = h, t.getSourceFile = g, e.cache = {
        originalReadFile: o,
        originalFileExists: c,
        originalDirectoryExists: _,
        originalCreateDirectory: u,
        originalWriteFile: d,
        originalReadFileWithCache: i,
        originalGetSourceFile: a
      };
    }
    function vae(e) {
      if (!e.cache) return;
      const { cache: t, host: n, compilerHost: i, extendedConfigCache: a, moduleResolutionCache: o, typeReferenceDirectiveResolutionCache: c, libraryResolutionCache: _ } = e;
      n.readFile = t.originalReadFile, n.fileExists = t.originalFileExists, n.directoryExists = t.originalDirectoryExists, n.createDirectory = t.originalCreateDirectory, n.writeFile = t.originalWriteFile, i.getSourceFile = t.originalGetSourceFile, e.readFileWithCache = t.originalReadFileWithCache, a.clear(), o?.clear(), c?.clear(), _?.clear(), e.cache = void 0;
    }
    function gbe(e, t) {
      e.projectStatus.delete(t), e.diagnostics.delete(t);
    }
    function hbe({ projectPendingBuild: e }, t, n) {
      const i = e.get(t);
      (i === void 0 || i < n) && e.set(t, n);
    }
    function ybe(e, t) {
      e.allProjectBuildPending && (e.allProjectBuildPending = !1, e.options.watch && wae(e, p.Starting_compilation_in_watch_mode), mbe(e), eI(P9(e)).forEach((n) => e.projectPendingBuild.set(yg(e, n), 0)), t && t.throwIfCancellationRequested());
    }
    var bae = /* @__PURE__ */ ((e) => (e[e.Build = 0] = "Build", e[e.UpdateOutputFileStamps = 1] = "UpdateOutputFileStamps", e))(bae || {});
    function vbe(e, t) {
      return e.projectPendingBuild.delete(t), e.diagnostics.has(t) ? 1 : 0;
    }
    function kBe(e, t, n, i, a) {
      let o = !0;
      return {
        kind: 1,
        project: t,
        projectPath: n,
        buildOrder: a,
        getCompilerOptions: () => i.options,
        getCurrentDirectory: () => e.compilerHost.getCurrentDirectory(),
        updateOutputFileStatmps: () => {
          Cbe(e, i, n), o = !1;
        },
        done: () => (o && Cbe(e, i, n), pc("SolutionBuilder::Timestamps only updates"), vbe(e, n))
      };
    }
    function CBe(e, t, n, i, a, o, c) {
      let _ = 0, u, d;
      return {
        kind: 0,
        project: t,
        projectPath: n,
        buildOrder: c,
        getCompilerOptions: () => a.options,
        getCurrentDirectory: () => e.compilerHost.getCurrentDirectory(),
        getBuilderProgram: () => h(mo),
        getProgram: () => h((P) => P.getProgramOrUndefined()),
        getSourceFile: (P) => h((N) => N.getSourceFile(P)),
        getSourceFiles: () => S((P) => P.getSourceFiles()),
        getOptionsDiagnostics: (P) => S((N) => N.getOptionsDiagnostics(P)),
        getGlobalDiagnostics: (P) => S((N) => N.getGlobalDiagnostics(P)),
        getConfigFileParsingDiagnostics: () => S((P) => P.getConfigFileParsingDiagnostics()),
        getSyntacticDiagnostics: (P, N) => S((M) => M.getSyntacticDiagnostics(P, N)),
        getAllDependencies: (P) => S((N) => N.getAllDependencies(P)),
        getSemanticDiagnostics: (P, N) => S((M) => M.getSemanticDiagnostics(P, N)),
        getSemanticDiagnosticsOfNextAffectedFile: (P, N) => h((M) => M.getSemanticDiagnosticsOfNextAffectedFile && M.getSemanticDiagnosticsOfNextAffectedFile(P, N)),
        emit: (P, N, M, R, G) => P || R ? h((L) => {
          var z, H;
          return L.emit(P, N, M, R, G || ((H = (z = e.host).getCustomTransformers) == null ? void 0 : H.call(z, t)));
        }) : (D(0, M), k(N, M, G)),
        done: g
      };
      function g(P, N, M) {
        return D(3, P, N, M), pc("SolutionBuilder::Projects built"), vbe(e, n);
      }
      function h(P) {
        return D(0), u && P(u);
      }
      function S(P) {
        return h(P) || Te;
      }
      function T() {
        var P, N, M;
        if (E.assert(u === void 0), e.options.dry) {
          Ef(e, p.A_non_dry_build_would_build_project_0, t), d = 1, _ = 2;
          return;
        }
        if (e.options.verbose && Ef(e, p.Building_project_0, t), a.fileNames.length === 0) {
          rI(e, n, s2(a)), d = 0, _ = 2;
          return;
        }
        const { host: R, compilerHost: G } = e;
        if (e.projectCompilerOptions = a.options, (P = e.moduleResolutionCache) == null || P.update(a.options), (N = e.typeReferenceDirectiveResolutionCache) == null || N.update(a.options), u = R.createProgram(a.fileNames, a.options, G, EBe(e, n, a), s2(a), a.projectReferences), e.watch) {
          const L = (M = e.moduleResolutionCache) == null ? void 0 : M.getPackageJsonInfoCache().getInternalMap();
          e.lastCachedPackageJsonLookups.set(n, L && new Set(ma(L.values(), (z) => e.host.realpath && (MF(z) || z.directoryExists) ? e.host.realpath(jn(z.packageDirectory, "package.json")) : jn(z.packageDirectory, "package.json")))), e.builderPrograms.set(n, u);
        }
        _++;
      }
      function k(P, N, M) {
        var R, G, L;
        E.assertIsDefined(u), E.assert(_ === 1);
        const { host: z, compilerHost: H } = e, U = /* @__PURE__ */ new Map(), pe = u.getCompilerOptions(), ie = Wb(pe);
        let W, Q;
        const { emitResult: se, diagnostics: he } = x9(u, (fe) => z.reportDiagnostic(fe), e.write, void 0, (fe, de, $, Se, Be, ce) => {
          var oe;
          const ge = bd(e, fe);
          if (U.set(bd(e, fe), fe), ce?.buildInfo) {
            Q || (Q = dV(e.host));
            const Ne = (oe = u.hasChangedEmitSignature) == null ? void 0 : oe.call(u), ot = hV(e, fe, n);
            ot ? (ot.buildInfo = ce.buildInfo, ot.modifiedTime = Q, Ne && (ot.latestChangedDtsTime = Q)) : e.buildInfoCache.set(n, {
              path: bd(e, fe),
              buildInfo: ce.buildInfo,
              modifiedTime: Q,
              latestChangedDtsTime: Ne ? Q : void 0
            });
          }
          const Ae = ce?.differsOnlyInMap ? gx(e.host, fe) : void 0;
          (P || H.writeFile)(fe, de, $, Se, Be, ce), ce?.differsOnlyInMap ? e.host.setModifiedTime(fe, Ae) : !ie && e.watch && (W || (W = Tae(e, n))).set(ge, Q || (Q = dV(e.host)));
        }, N, void 0, M || ((G = (R = e.host).getCustomTransformers) == null ? void 0 : G.call(R, t)));
        return (!pe.noEmitOnError || !he.length) && (U.size || o.type !== 8) && kbe(e, a, n, p.Updating_unchanged_output_timestamps_of_project_0, U), e.projectErrorsReported.set(n, !0), d = (L = u.hasChangedEmitSignature) != null && L.call(u) ? 0 : 2, he.length ? (e.diagnostics.set(n, he), e.projectStatus.set(n, {
          type: 0,
          reason: "it had errors"
        }), d |= 4) : (e.diagnostics.delete(n), e.projectStatus.set(n, {
          type: 1,
          oldestOutputFileName: b7(U.values()) ?? gU(a, !z.useCaseSensitiveFileNames())
        })), DBe(e, u), _ = 2, se;
      }
      function D(P, N, M, R) {
        for (; _ <= P && _ < 3; ) {
          const G = _;
          switch (_) {
            case 0:
              T();
              break;
            case 1:
              k(M, N, R);
              break;
            case 2:
              NBe(e, t, n, i, a, c, E.checkDefined(d)), _++;
              break;
            default:
          }
          E.assert(_ > G);
        }
      }
    }
    function bbe(e, t, n) {
      if (!e.projectPendingBuild.size || Ik(t)) return;
      const { options: i, projectPendingBuild: a } = e;
      for (let o = 0; o < t.length; o++) {
        const c = t[o], _ = yg(e, c), u = e.projectPendingBuild.get(_);
        if (u === void 0) continue;
        n && (n = !1, Lbe(e, t));
        const d = aE(e, c, _);
        if (!d) {
          Obe(e, _), a.delete(_);
          continue;
        }
        u === 2 ? (Pbe(e, c, _, d), Abe(e, _, d), Nbe(e, c, _, d), Eae(e, c, _, d), Dae(e, c, _, d)) : u === 1 && (d.fileNames = pw(d.options.configFile.configFileSpecs, Xn(c), d.options, e.parseConfigFileHost), AF(d.fileNames, c, d.options.configFile.configFileSpecs, d.errors, wN(d.raw)), Eae(e, c, _, d), Dae(e, c, _, d));
        const g = kae(e, d, _);
        if (!i.force) {
          if (g.type === 1) {
            vV(e, c, g), rI(e, _, s2(d)), a.delete(_), i.dry && Ef(e, p.Project_0_is_up_to_date, c);
            continue;
          }
          if (g.type === 2 || g.type === 15)
            return rI(e, _, s2(d)), {
              kind: 1,
              status: g,
              project: c,
              projectPath: _,
              projectIndex: o,
              config: d
            };
        }
        if (g.type === 12) {
          vV(e, c, g), rI(e, _, s2(d)), a.delete(_), i.verbose && Ef(e, g.upstreamProjectBlocked ? p.Skipping_build_of_project_0_because_its_dependency_1_was_not_built : p.Skipping_build_of_project_0_because_its_dependency_1_has_errors, c, g.upstreamProjectName);
          continue;
        }
        if (g.type === 16) {
          vV(e, c, g), rI(e, _, s2(d)), a.delete(_);
          continue;
        }
        return {
          kind: 0,
          status: g,
          project: c,
          projectPath: _,
          projectIndex: o,
          config: d
        };
      }
    }
    function Sbe(e, t, n) {
      return vV(e, t.project, t.status), t.kind !== 1 ? CBe(e, t.project, t.projectPath, t.projectIndex, t.config, t.status, n) : kBe(e, t.project, t.projectPath, t.config, n);
    }
    function Sae(e, t, n) {
      const i = bbe(e, t, n);
      return i && Sbe(e, i, t);
    }
    function EBe({ options: e, builderPrograms: t, compilerHost: n }, i, a) {
      if (e.force) return;
      const o = t.get(i);
      return o || E9(a.options, n);
    }
    function DBe(e, t) {
      t && (e.host.afterProgramEmitAndDiagnostics && e.host.afterProgramEmitAndDiagnostics(t), t.releaseProgram()), e.projectCompilerOptions = e.baseCompilerOptions;
    }
    function mV(e) {
      return !!e.watcher;
    }
    function Tbe(e, t) {
      const n = bd(e, t), i = e.filesWatched.get(n);
      if (e.watch && i) {
        if (!mV(i)) return i;
        if (i.modifiedTime) return i.modifiedTime;
      }
      const a = gx(e.host, t);
      return e.watch && (i ? i.modifiedTime = a : e.filesWatched.set(n, a)), a;
    }
    function gV(e, t, n, i, a, o, c) {
      const _ = bd(e, t), u = e.filesWatched.get(_);
      if (u && mV(u)) u.callbacks.push(n);
      else {
        const d = e.watchFile(t, (g, h, S) => {
          const T = E.checkDefined(e.filesWatched.get(_));
          E.assert(mV(T)), T.modifiedTime = S, T.callbacks.forEach((k) => k(g, h, S));
        }, i, a, o, c);
        e.filesWatched.set(_, {
          callbacks: [n],
          watcher: d,
          modifiedTime: u
        });
      }
      return { close: () => {
        const d = E.checkDefined(e.filesWatched.get(_));
        E.assert(mV(d)), d.callbacks.length === 1 ? (e.filesWatched.delete(_), Np(d)) : px(d.callbacks, n);
      } };
    }
    function Tae(e, t) {
      if (!e.watch) return;
      let n = e.outputTimeStamps.get(t);
      return n || e.outputTimeStamps.set(t, n = /* @__PURE__ */ new Map()), n;
    }
    function hV(e, t, n) {
      const i = bd(e, t), a = e.buildInfoCache.get(n);
      return a?.path === i ? a : void 0;
    }
    function xbe(e, t, n, i) {
      const a = bd(e, t), o = e.buildInfoCache.get(n);
      if (o !== void 0 && o.path === a) return o.buildInfo || void 0;
      const c = e.readFileWithCache(t), _ = c ? vU(t, c) : void 0;
      return e.buildInfoCache.set(n, {
        path: a,
        buildInfo: _ || !1,
        modifiedTime: i || ff
      }), _;
    }
    function xae(e, t, n, i) {
      if (n < Tbe(e, t)) return {
        type: 5,
        outOfDateOutputFileName: i,
        newerInputFileName: t
      };
    }
    function wBe(e, t, n) {
      var i, a, o, c, _;
      if (kW(t)) return { type: 16 };
      let u;
      const d = !!e.options.force;
      if (t.projectReferences) {
        e.projectStatus.set(n, { type: 13 });
        for (const he of t.projectReferences) {
          const fe = Ak(he), de = yg(e, fe), $ = aE(e, fe, de), Se = kae(e, $, de);
          if (!(Se.type === 13 || Se.type === 16)) {
            if (e.options.stopBuildOnErrors && (Se.type === 0 || Se.type === 12)) return {
              type: 12,
              upstreamProjectName: he.path,
              upstreamProjectBlocked: Se.type === 12
            };
            d || (u || (u = [])).push({
              ref: he,
              refStatus: Se,
              resolvedRefPath: de,
              resolvedConfig: $
            });
          }
        }
      }
      if (d) return { type: 17 };
      const { host: g } = e, h = Mv(t.options), S = Wb(t.options);
      let T = hV(e, h, n);
      const k = T?.modifiedTime || gx(g, h);
      if (k === ff)
        return T || e.buildInfoCache.set(n, {
          path: bd(e, h),
          buildInfo: !1,
          modifiedTime: k
        }), {
          type: 3,
          missingOutputFileName: h
        };
      const D = xbe(e, h, n, k);
      if (!D) return {
        type: 4,
        fileName: h
      };
      const P = S && ZN(D) ? D : void 0;
      if ((P || !S) && D.version !== Qr) return {
        type: 14,
        version: D.version
      };
      if (!t.options.noCheck && (D.errors || D.checkPending)) return {
        type: 8,
        buildInfoFile: h
      };
      if (P) {
        if (!t.options.noCheck && ((i = P.changeFileSet) != null && i.length || (a = P.semanticDiagnosticsPerFile) != null && a.length || U_(t.options) && ((o = P.emitDiagnosticsPerFile) != null && o.length))) return {
          type: 8,
          buildInfoFile: h
        };
        if (!t.options.noEmit && ((c = P.changeFileSet) != null && c.length || (_ = P.affectedFilesPendingEmit) != null && _.length || P.pendingEmit !== void 0)) return {
          type: 7,
          buildInfoFile: h
        };
        if ((!t.options.noEmit || t.options.noEmit && U_(t.options)) && h9(t.options, P.options || {}, void 0, !!t.options.noEmit)) return {
          type: 9,
          buildInfoFile: h
        };
      }
      let N = k, M = h, R, G = yBe, L = !1;
      const z = /* @__PURE__ */ new Set();
      let H;
      for (const he of t.fileNames) {
        const fe = Tbe(e, he);
        if (fe === ff) return {
          type: 0,
          reason: `${he} does not exist`
        };
        const de = bd(e, he);
        if (k < fe) {
          let $, Se;
          if (P) {
            H || (H = VU(P, h, g));
            const Be = H.roots.get(de);
            $ = H.fileInfos.get(Be ?? de);
            const ce = $ ? e.readFileWithCache(Be ?? he) : void 0;
            Se = ce !== void 0 ? k9(g, ce) : void 0, $ && $ === Se && (L = !0);
          }
          if (!$ || $ !== Se) return {
            type: 5,
            outOfDateOutputFileName: h,
            newerInputFileName: he
          };
        }
        fe > G && (R = he, G = fe), z.add(de);
      }
      let U;
      if (P ? (H || (H = VU(P, h, g)), U = Dl(H.roots, (he, fe) => z.has(fe) ? void 0 : fe)) : U = bt(rae(D, h, g), (he) => z.has(he) ? void 0 : he), U) return {
        type: 10,
        buildInfoFile: h,
        inputFile: U
      };
      if (!S) {
        const he = n9(t, !g.useCaseSensitiveFileNames()), fe = Tae(e, n);
        for (const de of he) {
          if (de === h) continue;
          const $ = bd(e, de);
          let Se = fe?.get($);
          if (Se || (Se = gx(e.host, de), fe?.set($, Se)), Se === ff) return {
            type: 3,
            missingOutputFileName: de
          };
          if (Se < G) return {
            type: 5,
            outOfDateOutputFileName: de,
            newerInputFileName: R
          };
          Se < N && (N = Se, M = de);
        }
      }
      let pe = !1;
      if (u) for (const { ref: he, refStatus: fe, resolvedConfig: de, resolvedRefPath: $ } of u) {
        if (fe.newestInputFileTime && fe.newestInputFileTime <= N) continue;
        if (PBe(e, T ?? (T = e.buildInfoCache.get(n)), $)) return {
          type: 6,
          outOfDateOutputFileName: h,
          newerProjectName: he.path
        };
        const Se = ABe(e, de.options, $);
        if (Se && Se <= N) {
          pe = !0;
          continue;
        }
        return E.assert(M !== void 0, "Should have an oldest output filename here"), {
          type: 6,
          outOfDateOutputFileName: M,
          newerProjectName: he.path
        };
      }
      const ie = xae(e, t.options.configFilePath, N, M);
      if (ie) return ie;
      const W = bt(t.options.configFile.extendedSourceFiles || Te, (he) => xae(e, he, N, M));
      if (W) return W;
      const Q = e.lastCachedPackageJsonLookups.get(n), se = Q && Vg(Q, (he) => xae(e, he, N, M));
      return se || {
        type: pe ? 2 : L ? 15 : 1,
        newestInputFileTime: G,
        newestInputFileName: R,
        oldestOutputFileName: M
      };
    }
    function PBe(e, t, n) {
      return e.buildInfoCache.get(n).path === t.path;
    }
    function kae(e, t, n) {
      if (t === void 0) return {
        type: 0,
        reason: "config file deleted mid-build"
      };
      const i = e.projectStatus.get(n);
      if (i !== void 0) return i;
      pc("SolutionBuilder::beforeUpToDateCheck");
      const a = wBe(e, t, n);
      return pc("SolutionBuilder::afterUpToDateCheck"), yp("SolutionBuilder::Up-to-date check", "SolutionBuilder::beforeUpToDateCheck", "SolutionBuilder::afterUpToDateCheck"), e.projectStatus.set(n, a), a;
    }
    function kbe(e, t, n, i, a) {
      if (t.options.noEmit) return;
      let o;
      const c = Mv(t.options), _ = Wb(t.options);
      if (c && _) {
        a?.has(bd(e, c)) || (e.options.verbose && Ef(e, i, t.options.configFilePath), e.host.setModifiedTime(c, o = dV(e.host)), hV(e, c, n).modifiedTime = o), e.outputTimeStamps.delete(n);
        return;
      }
      const { host: u } = e, d = n9(t, !u.useCaseSensitiveFileNames()), g = Tae(e, n), h = g ? /* @__PURE__ */ new Set() : void 0;
      if (!a || d.length !== a.size) {
        let S = !!e.options.verbose;
        for (const T of d) {
          const k = bd(e, T);
          a?.has(k) || (S && (S = !1, Ef(e, i, t.options.configFilePath)), u.setModifiedTime(T, o || (o = dV(e.host))), T === c ? hV(e, c, n).modifiedTime = o : g && (g.set(k, o), h.add(k)));
        }
      }
      g?.forEach((S, T) => {
        !a?.has(T) && !h.has(T) && g.delete(T);
      });
    }
    function ABe(e, t, n) {
      if (!t.composite) return;
      const i = E.checkDefined(e.buildInfoCache.get(n));
      if (i.latestChangedDtsTime !== void 0) return i.latestChangedDtsTime || void 0;
      const a = i.buildInfo && ZN(i.buildInfo) && i.buildInfo.latestChangedDtsFile ? e.host.getModifiedTime(ca(i.buildInfo.latestChangedDtsFile, Xn(i.path))) : void 0;
      return i.latestChangedDtsTime = a || !1, a;
    }
    function Cbe(e, t, n) {
      if (e.options.dry) return Ef(e, p.A_non_dry_build_would_update_timestamps_for_output_of_project_0, t.options.configFilePath);
      kbe(e, t, n, p.Updating_output_timestamps_of_project_0), e.projectStatus.set(n, {
        type: 1,
        oldestOutputFileName: gU(t, !e.host.useCaseSensitiveFileNames())
      });
    }
    function NBe(e, t, n, i, a, o, c) {
      if (!(e.options.stopBuildOnErrors && c & 4) && a.options.composite)
        for (let _ = i + 1; _ < o.length; _++) {
          const u = o[_], d = yg(e, u);
          if (e.projectPendingBuild.has(d)) continue;
          const g = aE(e, u, d);
          if (!(!g || !g.projectReferences))
            for (const h of g.projectReferences) {
              if (yg(e, tI(e, h.path)) !== n) continue;
              const S = e.projectStatus.get(d);
              if (S) switch (S.type) {
                case 1:
                  if (c & 2) {
                    S.type = 2;
                    break;
                  }
                case 15:
                case 2:
                  c & 2 || e.projectStatus.set(d, {
                    type: 6,
                    outOfDateOutputFileName: S.oldestOutputFileName,
                    newerProjectName: t
                  });
                  break;
                case 12:
                  yg(e, tI(e, S.upstreamProjectName)) === n && gbe(e, d);
                  break;
              }
              hbe(e, d, 0);
              break;
            }
        }
    }
    function Ebe(e, t, n, i, a, o) {
      pc("SolutionBuilder::beforeBuild");
      const c = IBe(e, t, n, i, a, o);
      return pc("SolutionBuilder::afterBuild"), yp("SolutionBuilder::Build", "SolutionBuilder::beforeBuild", "SolutionBuilder::afterBuild"), c;
    }
    function IBe(e, t, n, i, a, o) {
      const c = dbe(e, t, o);
      if (!c) return 3;
      ybe(e, n);
      let _ = !0, u = 0;
      for (; ; ) {
        const d = Sae(e, c, _);
        if (!d) break;
        _ = !1, d.done(n, i, a?.(d.project)), e.diagnostics.has(d.projectPath) || u++;
      }
      return vae(e), Fbe(e, c), MBe(e, c), Ik(c) ? 4 : c.some((d) => e.diagnostics.has(yg(e, d))) ? u ? 2 : 1 : 0;
    }
    function Dbe(e, t, n) {
      pc("SolutionBuilder::beforeClean");
      const i = OBe(e, t, n);
      return pc("SolutionBuilder::afterClean"), yp("SolutionBuilder::Clean", "SolutionBuilder::beforeClean", "SolutionBuilder::afterClean"), i;
    }
    function OBe(e, t, n) {
      const i = dbe(e, t, n);
      if (!i) return 3;
      if (Ik(i))
        return yV(e, i.circularDiagnostics), 4;
      const { options: a, host: o } = e, c = a.dry ? [] : void 0;
      for (const _ of i) {
        const u = yg(e, _), d = aE(e, _, u);
        if (d === void 0) {
          Obe(e, u);
          continue;
        }
        const g = n9(d, !o.useCaseSensitiveFileNames());
        if (!g.length) continue;
        const h = new Set(d.fileNames.map((S) => bd(e, S)));
        for (const S of g)
          h.has(bd(e, S)) || o.fileExists(S) && (c ? c.push(S) : (o.deleteFile(S), Cae(e, u, 0)));
      }
      return c && Ef(e, p.A_non_dry_build_would_delete_the_following_files_Colon_0, c.map((_) => `\r
 * ${_}`).join("")), 0;
    }
    function Cae(e, t, n) {
      e.host.getParsedCommandLine && n === 1 && (n = 2), n === 2 && (e.configFileCache.delete(t), e.buildOrder = void 0), e.needsSummary = !0, gbe(e, t), hbe(e, t, n), mbe(e);
    }
    function A9(e, t, n) {
      e.reportFileChangeDetected = !0, Cae(e, t, n), wbe(e, 250, !0);
    }
    function wbe(e, t, n) {
      const { hostWithWatch: i } = e;
      !i.setTimeout || !i.clearTimeout || (e.timerToBuildInvalidatedProject && i.clearTimeout(e.timerToBuildInvalidatedProject), e.timerToBuildInvalidatedProject = i.setTimeout(FBe, t, "timerToBuildInvalidatedProject", e, n));
    }
    function FBe(e, t, n) {
      pc("SolutionBuilder::beforeBuild");
      const i = LBe(t, n);
      pc("SolutionBuilder::afterBuild"), yp("SolutionBuilder::Build", "SolutionBuilder::beforeBuild", "SolutionBuilder::afterBuild"), i && Fbe(t, i);
    }
    function LBe(e, t) {
      e.timerToBuildInvalidatedProject = void 0, e.reportFileChangeDetected && (e.reportFileChangeDetected = !1, e.projectErrorsReported.clear(), wae(e, p.File_change_detected_Starting_incremental_compilation));
      let n = 0;
      const i = P9(e), a = Sae(e, i, !1);
      if (a)
        for (a.done(), n++; e.projectPendingBuild.size; ) {
          if (e.timerToBuildInvalidatedProject) return;
          const o = bbe(e, i, !1);
          if (!o) break;
          if (o.kind !== 1 && (t || n === 5)) {
            wbe(e, 100, !1);
            return;
          }
          Sbe(e, o, i).done(), o.kind !== 1 && n++;
        }
      return vae(e), i;
    }
    function Pbe(e, t, n, i) {
      !e.watch || e.allWatchedConfigFiles.has(n) || e.allWatchedConfigFiles.set(n, gV(e, t, () => A9(e, n, 2), 2e3, i?.watchOptions, Xl.ConfigFile, t));
    }
    function Abe(e, t, n) {
      a9(t, n?.options, e.allWatchedExtendedConfigFiles, (i, a) => gV(e, i, () => {
        var o;
        return (o = e.allWatchedExtendedConfigFiles.get(a)) == null ? void 0 : o.projects.forEach((c) => A9(e, c, 2));
      }, 2e3, n?.watchOptions, Xl.ExtendedConfigFile), (i) => bd(e, i));
    }
    function Nbe(e, t, n, i) {
      e.watch && qN(dae(e.allWatchedWildcardDirectories, n), i.wildcardDirectories, (a, o) => e.watchDirectory(a, (c) => {
        var _;
        GN({
          watchedDirPath: bd(e, a),
          fileOrDirectory: c,
          fileOrDirectoryPath: bd(e, c),
          configFileName: t,
          currentDirectory: e.compilerHost.getCurrentDirectory(),
          options: i.options,
          program: e.builderPrograms.get(n) || ((_ = TBe(e, n)) == null ? void 0 : _.fileNames),
          useCaseSensitiveFileNames: e.parseConfigFileHost.useCaseSensitiveFileNames,
          writeLog: (u) => e.writeLog(u),
          toPath: (u) => bd(e, u)
        }) || A9(e, n, 1);
      }, o, i?.watchOptions, Xl.WildcardDirectory, t));
    }
    function Eae(e, t, n, i) {
      e.watch && AD(dae(e.allWatchedInputFiles, n), new Set(i.fileNames), {
        createNewValue: (a) => gV(e, a, () => A9(e, n, 0), 250, i?.watchOptions, Xl.SourceFile, t),
        onDeleteValue: md
      });
    }
    function Dae(e, t, n, i) {
      !e.watch || !e.lastCachedPackageJsonLookups || AD(dae(e.allWatchedPackageJsonFiles, n), e.lastCachedPackageJsonLookups.get(n), {
        createNewValue: (a) => gV(e, a, () => A9(e, n, 0), 2e3, i?.watchOptions, Xl.PackageJson, t),
        onDeleteValue: md
      });
    }
    function MBe(e, t) {
      if (e.watchAllProjectsPending) {
        pc("SolutionBuilder::beforeWatcherCreation"), e.watchAllProjectsPending = !1;
        for (const n of eI(t)) {
          const i = yg(e, n), a = aE(e, n, i);
          Pbe(e, n, i, a), Abe(e, i, a), a && (Nbe(e, n, i, a), Eae(e, n, i, a), Dae(e, n, i, a));
        }
        pc("SolutionBuilder::afterWatcherCreation"), yp("SolutionBuilder::Watcher creation", "SolutionBuilder::beforeWatcherCreation", "SolutionBuilder::afterWatcherCreation");
      }
    }
    function RBe(e) {
      K_(e.allWatchedConfigFiles, md), K_(e.allWatchedExtendedConfigFiles, Np), K_(e.allWatchedWildcardDirectories, (t) => K_(t, Np)), K_(e.allWatchedInputFiles, (t) => K_(t, md)), K_(e.allWatchedPackageJsonFiles, (t) => K_(t, md));
    }
    function Ibe(e, t, n, i, a) {
      const o = SBe(e, t, n, i, a);
      return {
        build: (c, _, u, d) => Ebe(o, c, _, u, d),
        clean: (c) => Dbe(o, c),
        buildReferences: (c, _, u, d) => Ebe(o, c, _, u, d, !0),
        cleanReferences: (c) => Dbe(o, c, !0),
        getNextInvalidatedProject: (c) => (ybe(o, c), Sae(o, P9(o), !1)),
        getBuildOrder: () => P9(o),
        getUpToDateStatusOfProject: (c) => {
          const _ = tI(o, c), u = yg(o, _);
          return kae(o, aE(o, _, u), u);
        },
        invalidateProject: (c, _) => Cae(o, c, _ || 0),
        close: () => RBe(o)
      };
    }
    function yu(e, t) {
      return F4(t, e.compilerHost.getCurrentDirectory(), e.compilerHost.getCanonicalFileName);
    }
    function Ef(e, t, ...n) {
      e.host.reportSolutionBuilderStatus(nc(t, ...n));
    }
    function wae(e, t, ...n) {
      var i, a;
      (a = (i = e.hostWithWatch).onWatchStatusChange) == null || a.call(i, nc(t, ...n), e.host.getNewLine(), e.baseCompilerOptions);
    }
    function yV({ host: e }, t) {
      t.forEach((n) => e.reportDiagnostic(n));
    }
    function rI(e, t, n) {
      yV(e, n), e.projectErrorsReported.set(t, !0), n.length && e.diagnostics.set(t, n);
    }
    function Obe(e, t) {
      rI(e, t, [e.configFileCache.get(t)]);
    }
    function Fbe(e, t) {
      if (!e.needsSummary) return;
      e.needsSummary = !1;
      const n = e.watch || !!e.host.reportErrorSummary, { diagnostics: i } = e;
      let a = 0, o = [];
      Ik(t) ? (Lbe(e, t.buildOrder), yV(e, t.circularDiagnostics), n && (a += S9(t.circularDiagnostics)), n && (o = [...o, ...T9(t.circularDiagnostics)])) : (t.forEach((c) => {
        const _ = yg(e, c);
        e.projectErrorsReported.has(_) || yV(e, i.get(_) || Te);
      }), n && i.forEach((c) => a += S9(c)), n && i.forEach((c) => [...o, ...T9(c)])), e.watch ? wae(e, YU(a), a) : e.host.reportErrorSummary && e.host.reportErrorSummary(a, o);
    }
    function Lbe(e, t) {
      e.options.verbose && Ef(e, p.Projects_in_this_build_Colon_0, t.map((n) => `\r
    * ` + yu(e, n)).join(""));
    }
    function jBe(e, t, n) {
      switch (n.type) {
        case 5:
          return Ef(e, p.Project_0_is_out_of_date_because_output_1_is_older_than_input_2, yu(e, t), yu(e, n.outOfDateOutputFileName), yu(e, n.newerInputFileName));
        case 6:
          return Ef(e, p.Project_0_is_out_of_date_because_output_1_is_older_than_input_2, yu(e, t), yu(e, n.outOfDateOutputFileName), yu(e, n.newerProjectName));
        case 3:
          return Ef(e, p.Project_0_is_out_of_date_because_output_file_1_does_not_exist, yu(e, t), yu(e, n.missingOutputFileName));
        case 4:
          return Ef(e, p.Project_0_is_out_of_date_because_there_was_error_reading_file_1, yu(e, t), yu(e, n.fileName));
        case 7:
          return Ef(e, p.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted, yu(e, t), yu(e, n.buildInfoFile));
        case 8:
          return Ef(e, p.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_program_needs_to_report_errors, yu(e, t), yu(e, n.buildInfoFile));
        case 9:
          return Ef(e, p.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions, yu(e, t), yu(e, n.buildInfoFile));
        case 10:
          return Ef(e, p.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more, yu(e, t), yu(e, n.buildInfoFile), yu(e, n.inputFile));
        case 1:
          if (n.newestInputFileTime !== void 0) return Ef(e, p.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2, yu(e, t), yu(e, n.newestInputFileName || ""), yu(e, n.oldestOutputFileName || ""));
          break;
        case 2:
          return Ef(e, p.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies, yu(e, t));
        case 15:
          return Ef(e, p.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files, yu(e, t));
        case 11:
          return Ef(e, p.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date, yu(e, t), yu(e, n.upstreamProjectName));
        case 12:
          return Ef(e, n.upstreamProjectBlocked ? p.Project_0_can_t_be_built_because_its_dependency_1_was_not_built : p.Project_0_can_t_be_built_because_its_dependency_1_has_errors, yu(e, t), yu(e, n.upstreamProjectName));
        case 0:
          return Ef(e, p.Project_0_is_out_of_date_because_1, yu(e, t), n.reason);
        case 14:
          return Ef(e, p.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2, yu(e, t), n.version, Qr);
        case 17:
          return Ef(e, p.Project_0_is_being_forcibly_rebuilt, yu(e, t));
        case 16:
        case 13:
          break;
        default:
      }
    }
    function vV(e, t, n) {
      e.options.verbose && jBe(e, t, n);
    }
    var Pae = /* @__PURE__ */ ((e) => (e[e.time = 0] = "time", e[e.count = 1] = "count", e[e.memory = 2] = "memory", e))(Pae || {});
    function BBe(e) {
      const t = JBe();
      return bt(e.getSourceFiles(), (n) => {
        const i = zBe(e, n), a = Mg(n).length;
        t.set(i, t.get(i) + a);
      }), t;
    }
    function JBe() {
      const e = /* @__PURE__ */ new Map();
      return e.set("Library", 0), e.set("Definitions", 0), e.set("TypeScript", 0), e.set("JavaScript", 0), e.set("JSON", 0), e.set("Other", 0), e;
    }
    function zBe(e, t) {
      if (e.isSourceFileDefaultLibrary(t)) return "Library";
      if (t.isDeclarationFile) return "Definitions";
      const n = t.path;
      return jc(n, XJ) ? "TypeScript" : jc(n, T6) ? "JavaScript" : lc(n, ".json") ? "JSON" : "Other";
    }
    function bV(e, t, n) {
      return N9(e, n) ? Nk(e, !0) : t;
    }
    function Mbe(e) {
      return e.getEnvironmentVariable("NO_COLOR") ? !1 : e.getEnvironmentVariable("FORCE_COLOR") ? !0 : !!e.writeOutputIsTTY && e.writeOutputIsTTY();
    }
    function N9(e, t) {
      return !t || typeof t.pretty > "u" ? Mbe(e) : t.pretty;
    }
    function Rbe(e) {
      const t = dn($d.concat(kk), (n) => n.showInHelp !== !1);
      return e.options.all ? uf(t, (n, i) => l3(n.name, i.name)) : dn(t, (n) => !!n.showInSimplifiedHelpView);
    }
    function SV(e) {
      e.write(q_(p.Version_0, Qr) + e.newLine);
    }
    function TV(e) {
      if (!Mbe(e)) return {
        bold: (d) => d,
        blue: (d) => d,
        blueBackground: (d) => d,
        brightWhite: (d) => d
      };
      function t(d) {
        return `\x1B[1m${d}\x1B[22m`;
      }
      const n = e.getEnvironmentVariable("OS") && e.getEnvironmentVariable("OS").toLowerCase().includes("windows"), i = e.getEnvironmentVariable("WT_SESSION"), a = e.getEnvironmentVariable("TERM_PROGRAM") && e.getEnvironmentVariable("TERM_PROGRAM") === "vscode";
      function o(d) {
        return n && !i && !a ? u(d) : `\x1B[94m${d}\x1B[39m`;
      }
      const c = e.getEnvironmentVariable("COLORTERM") === "truecolor" || e.getEnvironmentVariable("TERM") === "xterm-256color";
      function _(d) {
        return c ? `\x1B[48;5;68m${d}\x1B[39;49m` : `\x1B[44m${d}\x1B[39;49m`;
      }
      function u(d) {
        return `\x1B[97m${d}\x1B[39m`;
      }
      return {
        bold: t,
        blue: o,
        brightWhite: u,
        blueBackground: _
      };
    }
    function jbe(e) {
      return `--${e.name}${e.shortName ? `, -${e.shortName}` : ""}`;
    }
    function WBe(e, t, n, i) {
      var a;
      const o = [], c = TV(e), _ = jbe(t), u = k(t), d = typeof t.defaultValueDescription == "object" ? q_(t.defaultValueDescription) : h(t.defaultValueDescription, t.type === "list" || t.type === "listOrElement" ? t.element.type : t.type), g = ((a = e.getWidthOfTerminal) == null ? void 0 : a.call(e)) ?? 0;
      if (g >= 80) {
        let D = "";
        t.description && (D = q_(t.description)), o.push(...T(_, D, n, i, g, !0), e.newLine), S(u, t) && (u && o.push(...T(u.valueType, u.possibleValues, n, i, g, !1), e.newLine), d && o.push(...T(q_(p.default_Colon), d, n, i, g, !1), e.newLine)), o.push(e.newLine);
      } else {
        if (o.push(c.blue(_), e.newLine), t.description) {
          const D = q_(t.description);
          o.push(D);
        }
        if (o.push(e.newLine), S(u, t)) {
          if (u && o.push(`${u.valueType} ${u.possibleValues}`), d) {
            u && o.push(e.newLine);
            const D = q_(p.default_Colon);
            o.push(`${D} ${d}`);
          }
          o.push(e.newLine);
        }
        o.push(e.newLine);
      }
      return o;
      function h(D, P) {
        return D !== void 0 && typeof P == "object" ? ma(P.entries()).filter(([, N]) => N === D).map(([N]) => N).join("/") : String(D);
      }
      function S(D, P) {
        const N = ["string"], M = [
          void 0,
          "false",
          "n/a"
        ], R = P.defaultValueDescription;
        return !(P.category === p.Command_line_Options || Gi(N, D?.possibleValues) && Gi(M, R));
      }
      function T(D, P, N, M, R, G) {
        const L = [];
        let z = !0, H = P;
        const U = R - M;
        for (; H.length > 0; ) {
          let pe = "";
          z ? (pe = D.padStart(N), pe = pe.padEnd(M), pe = G ? c.blue(pe) : pe) : pe = "".padStart(M);
          const ie = H.substr(0, U);
          H = H.slice(U), L.push(`${pe}${ie}`), z = !1;
        }
        return L;
      }
      function k(D) {
        if (D.type === "object") return;
        return {
          valueType: P(D),
          possibleValues: N(D)
        };
        function P(M) {
          switch (E.assert(M.type !== "listOrElement"), M.type) {
            case "string":
            case "number":
            case "boolean":
              return q_(p.type_Colon);
            case "list":
              return q_(p.one_or_more_Colon);
            default:
              return q_(p.one_of_Colon);
          }
        }
        function N(M) {
          let R;
          switch (M.type) {
            case "string":
            case "number":
            case "boolean":
              R = M.type;
              break;
            case "list":
            case "listOrElement":
              R = N(M.element);
              break;
            case "object":
              R = "";
              break;
            default:
              const G = {};
              return M.type.forEach((L, z) => {
                var H;
                (H = M.deprecatedKeys) != null && H.has(z) || (G[L] || (G[L] = [])).push(z);
              }), Object.entries(G).map(([, L]) => L.join("/")).join(", ");
          }
          return R;
        }
      }
    }
    function Bbe(e, t) {
      let n = 0;
      for (const c of t) {
        const _ = jbe(c).length;
        n = n > _ ? n : _;
      }
      const i = n + 2, a = i + 2;
      let o = [];
      for (const c of t) {
        const _ = WBe(e, c, i, a);
        o = [...o, ..._];
      }
      return o[o.length - 2] !== e.newLine && o.push(e.newLine), o;
    }
    function nI(e, t, n, i, a, o) {
      let c = [];
      if (c.push(TV(e).bold(t) + e.newLine + e.newLine), a && c.push(a + e.newLine + e.newLine), !i)
        return c = [...c, ...Bbe(e, n)], o && c.push(o + e.newLine + e.newLine), c;
      const _ = /* @__PURE__ */ new Map();
      for (const u of n) {
        if (!u.category) continue;
        const d = q_(u.category), g = _.get(d) ?? [];
        g.push(u), _.set(d, g);
      }
      return _.forEach((u, d) => {
        c.push(`### ${d}${e.newLine}${e.newLine}`), c = [...c, ...Bbe(e, u)];
      }), o && c.push(o + e.newLine + e.newLine), c;
    }
    function UBe(e, t) {
      const n = TV(e);
      let i = [...xV(e, `${q_(p.tsc_Colon_The_TypeScript_Compiler)} - ${q_(p.Version_0, Qr)}`)];
      i.push(n.bold(q_(p.COMMON_COMMANDS)) + e.newLine + e.newLine), c("tsc", p.Compiles_the_current_project_tsconfig_json_in_the_working_directory), c("tsc app.ts util.ts", p.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options), c("tsc -b", p.Build_a_composite_project_in_the_working_directory), c("tsc --init", p.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory), c("tsc -p ./path/to/tsconfig.json", p.Compiles_the_TypeScript_project_located_at_the_specified_path), c("tsc --help --all", p.An_expanded_version_of_this_information_showing_all_possible_compiler_options), c(["tsc --noEmit", "tsc --target esnext"], p.Compiles_the_current_project_with_additional_settings);
      const a = t.filter((_) => _.isCommandLineOnly || _.category === p.Command_line_Options), o = t.filter((_) => !Gi(a, _));
      i = [
        ...i,
        ...nI(e, q_(p.COMMAND_LINE_FLAGS), a, !1, void 0, void 0),
        ...nI(e, q_(p.COMMON_COMPILER_OPTIONS), o, !1, void 0, Qx(p.You_can_learn_about_all_of_the_compiler_options_at_0, "https://aka.ms/tsc"))
      ];
      for (const _ of i) e.write(_);
      function c(_, u) {
        const d = typeof _ == "string" ? [_] : _;
        for (const g of d) i.push("  " + n.blue(g) + e.newLine);
        i.push("  " + q_(u) + e.newLine + e.newLine);
      }
    }
    function VBe(e, t, n, i) {
      let a = [...xV(e, `${q_(p.tsc_Colon_The_TypeScript_Compiler)} - ${q_(p.Version_0, Qr)}`)];
      a = [...a, ...nI(e, q_(p.ALL_COMPILER_OPTIONS), t, !0, void 0, Qx(p.You_can_learn_about_all_of_the_compiler_options_at_0, "https://aka.ms/tsc"))], a = [...a, ...nI(e, q_(p.WATCH_OPTIONS), dn(i, (o) => o.showInHelp !== !1), !1, q_(p.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))], a = [...a, ...nI(e, q_(p.BUILD_OPTIONS), dn(n, (o) => o !== kk && o.showInHelp !== !1), !1, Qx(p.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0, "https://aka.ms/tsc-composite-builds"))];
      for (const o of a) e.write(o);
    }
    function Jbe(e, t) {
      let n = [...xV(e, `${q_(p.tsc_Colon_The_TypeScript_Compiler)} - ${q_(p.Version_0, Qr)}`)];
      n = [...n, ...nI(e, q_(p.BUILD_OPTIONS), dn(t, (i) => i !== kk && i.showInHelp !== !1), !1, Qx(p.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0, "https://aka.ms/tsc-composite-builds"))];
      for (const i of n) e.write(i);
    }
    function xV(e, t) {
      var n;
      const i = TV(e), a = [], o = ((n = e.getWidthOfTerminal) == null ? void 0 : n.call(e)) ?? 0, c = 5, _ = i.blueBackground("".padStart(c)), u = i.blueBackground(i.brightWhite("TS ".padStart(c)));
      if (o >= t.length + c) {
        const d = (o > 120 ? 120 : o) - c;
        a.push(t.padEnd(d) + _ + e.newLine), a.push("".padStart(d) + u + e.newLine);
      } else
        a.push(t + e.newLine), a.push(e.newLine);
      return a;
    }
    function zbe(e, t) {
      t.options.all ? VBe(e, Rbe(t), pW, xk) : UBe(e, Rbe(t));
    }
    function Wbe(e, t, n) {
      let i = Nk(e), a;
      if (n.options.locale && Gj(n.options.locale, e, n.errors), n.errors.length > 0)
        return n.errors.forEach(i), e.exit(1);
      if (n.options.init)
        return $Be(e, i, n.options), e.exit(0);
      if (n.options.version)
        return SV(e), e.exit(0);
      if (n.options.help || n.options.all)
        return zbe(e, n), e.exit(0);
      if (n.options.watch && n.options.listFilesOnly)
        return i(nc(p.Options_0_and_1_cannot_be_combined, "watch", "listFilesOnly")), e.exit(1);
      if (n.options.project) {
        if (n.fileNames.length !== 0)
          return i(nc(p.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)), e.exit(1);
        const _ = us(n.options.project);
        if (!_ || e.directoryExists(_)) {
          if (a = jn(_, "tsconfig.json"), !e.fileExists(a))
            return i(nc(p.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0, n.options.project)), e.exit(1);
        } else if (a = _, !e.fileExists(a))
          return i(nc(p.The_specified_path_does_not_exist_Colon_0, n.options.project)), e.exit(1);
      } else if (!n.options.ignoreConfig || n.fileNames.length === 0) {
        if (a = kU(us(e.getCurrentDirectory()), (_) => e.fileExists(_)), n.fileNames.length !== 0) {
          if (a)
            return i(nc(p.tsconfig_json_is_present_but_will_not_be_loaded_if_files_are_specified_on_commandline_Use_ignoreConfig_to_skip_this_error)), e.exit(1);
        } else if (!a)
          return n.options.showConfig ? i(nc(p.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0, us(e.getCurrentDirectory()))) : (SV(e), zbe(e, n)), e.exit(1);
      }
      const o = e.getCurrentDirectory(), c = DF(n.options, (_) => ca(_, o));
      if (a) {
        const _ = /* @__PURE__ */ new Map(), u = uae(a, c, _, n.watchOptions, e, i);
        if (c.showConfig)
          return u.errors.length !== 0 ? (i = bV(e, i, u.options), u.errors.forEach(i), e.exit(1)) : (e.write(JSON.stringify(bW(u, a, e), null, 4) + e.newLine), e.exit(0));
        if (i = bV(e, i, u.options), OJ(u.options))
          return Nae(e, i) ? void 0 : qBe(e, t, i, u, c, n.watchOptions, _);
        Wb(u.options) ? Gbe(e, t, i, u) : qbe(e, t, i, u);
      } else {
        if (c.showConfig)
          return e.write(JSON.stringify(bW(n, jn(o, "tsconfig.json"), e), null, 4) + e.newLine), e.exit(0);
        if (i = bV(e, i, c), OJ(c))
          return Nae(e, i) ? void 0 : GBe(e, t, i, n.fileNames, c, n.watchOptions);
        Wb(c) ? Gbe(e, t, i, {
          ...n,
          options: c
        }) : qbe(e, t, i, {
          ...n,
          options: c
        });
      }
    }
    function Aae(e) {
      if (e.length > 0 && e[0].charCodeAt(0) === 45) {
        const t = e[0].slice(e[0].charCodeAt(1) === 45 ? 2 : 1).toLowerCase();
        return t === kk.name || t === kk.shortName;
      }
      return !1;
    }
    function Ube(e, t, n) {
      if (Aae(n)) {
        const { buildOptions: a, watchOptions: o, projects: c, errors: _ } = Gre(n);
        if (a.generateCpuProfile && e.enableCPUProfiler) e.enableCPUProfiler(a.generateCpuProfile, () => Vbe(e, t, a, o, c, _));
        else return Vbe(e, t, a, o, c, _);
      }
      const i = Vre(n, (a) => e.readFile(a));
      if (i.options.generateCpuProfile && e.enableCPUProfiler) e.enableCPUProfiler(i.options.generateCpuProfile, () => Wbe(e, t, i));
      else return Wbe(e, t, i);
    }
    function Nae(e, t) {
      return !e.watchFile || !e.watchDirectory ? (t(nc(p.The_current_host_does_not_support_the_0_option, "--watch")), e.exit(1), !0) : !1;
    }
    var I9 = 2;
    function Vbe(e, t, n, i, a, o) {
      const c = bV(e, Nk(e), n);
      if (n.locale && Gj(n.locale, e, o), o.length > 0)
        return o.forEach(c), e.exit(1);
      if (n.help || a.length === 0)
        return SV(e), Jbe(e, TN), e.exit(0);
      if (!e.getModifiedTime || !e.setModifiedTime || n.clean && !e.deleteFile)
        return c(nc(p.The_current_host_does_not_support_the_0_option, "--build")), e.exit(1);
      if (n.watch) {
        if (Nae(e, c)) return;
        const h = gae(e, void 0, c, w9(e, N9(e, n)), Oae(e, n));
        h.jsDocParsingMode = I9;
        const S = Qbe(e, n);
        Hbe(e, t, h, S);
        const T = h.onWatchStatusChange;
        let k = !1;
        h.onWatchStatusChange = (P, N, M, R) => {
          T?.(P, N, M, R), k && (P.code === p.Found_0_errors_Watching_for_file_changes.code || P.code === p.Found_1_error_Watching_for_file_changes.code) && Fae(D, S);
        };
        const D = yae(h, a, n, i);
        return D.build(), Fae(D, S), k = !0, D;
      }
      const _ = mae(e, void 0, c, w9(e, N9(e, n)), Iae(e, n));
      _.jsDocParsingMode = I9;
      const u = Qbe(e, n);
      Hbe(e, t, _, u);
      const d = hae(_, a, n), g = n.clean ? d.clean() : d.build();
      return Fae(d, u), RQ(), e.exit(g);
    }
    function Iae(e, t) {
      return N9(e, t) ? (n, i) => e.write(ZU(n, i, e.newLine, e)) : void 0;
    }
    function qbe(e, t, n, i) {
      const { fileNames: a, options: o, projectReferences: c } = i, _ = o9(o, void 0, e);
      _.jsDocParsingMode = I9;
      const u = _.getCurrentDirectory(), d = pu(_.useCaseSensitiveFileNames());
      Nw(_, (S) => Eo(S, u, d)), Lae(e, o, !1);
      const g = QN({
        rootNames: a,
        options: o,
        projectReferences: c,
        host: _,
        configFileParsingDiagnostics: s2(i)
      }), h = aV(g, n, (S) => e.write(S + e.newLine), Iae(e, o));
      return CV(e, g, void 0), t(g), e.exit(h);
    }
    function Gbe(e, t, n, i) {
      const { options: a, fileNames: o, projectReferences: c } = i;
      Lae(e, a, !1);
      const _ = D9(a, e);
      _.jsDocParsingMode = I9;
      const u = _ae({
        host: _,
        system: e,
        rootNames: o,
        options: a,
        configFileParsingDiagnostics: s2(i),
        projectReferences: c,
        reportDiagnostic: n,
        reportErrorSummary: Iae(e, a),
        afterProgramEmitAndDiagnostics: (d) => {
          CV(e, d.getProgram(), void 0), t(d);
        }
      });
      return e.exit(u);
    }
    function Hbe(e, t, n, i) {
      $be(e, n, !0), n.afterProgramEmitAndDiagnostics = (a) => {
        CV(e, a.getProgram(), i), t(a);
      };
    }
    function $be(e, t, n) {
      const i = t.createProgram;
      t.createProgram = (a, o, c, _, u, d) => (E.assert(a !== void 0 || o === void 0 && !!_), o !== void 0 && Lae(e, o, n), i(a, o, c, _, u, d));
    }
    function Xbe(e, t, n) {
      n.jsDocParsingMode = I9, $be(e, n, !1);
      const i = n.afterProgramCreate;
      n.afterProgramCreate = (a) => {
        i(a), CV(e, a.getProgram(), void 0), t(a);
      };
    }
    function Oae(e, t) {
      return QU(e, N9(e, t));
    }
    function qBe(e, t, n, i, a, o, c) {
      const _ = uV({
        configFileName: i.options.configFilePath,
        optionsToExtend: a,
        watchOptionsToExtend: o,
        system: e,
        reportDiagnostic: n,
        reportWatchStatus: Oae(e, i.options)
      });
      return Xbe(e, t, _), _.configFileParsingResult = i, _.extendedConfigCache = c, fV(_);
    }
    function GBe(e, t, n, i, a, o) {
      const c = _V({
        rootFiles: i,
        options: a,
        watchOptions: o,
        system: e,
        reportDiagnostic: n,
        reportWatchStatus: Oae(e, a)
      });
      return Xbe(e, t, c), fV(c);
    }
    function Qbe(e, t) {
      if (e === Cl && t.extendedDiagnostics)
        return _j(), HBe();
    }
    function HBe() {
      let e;
      return {
        addAggregateStatistic: t,
        forEachAggregateStatistics: n,
        clear: i
      };
      function t(a) {
        const o = e?.get(a.name);
        o ? o.type === 2 ? o.value = Math.max(o.value, a.value) : o.value += a.value : (e ?? (e = /* @__PURE__ */ new Map())).set(a.name, a);
      }
      function n(a) {
        e?.forEach(a);
      }
      function i() {
        e = void 0;
      }
    }
    function Fae(e, t) {
      if (!t) return;
      if (!FQ()) {
        Cl.write(p.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message + `
`);
        return;
      }
      const n = [];
      n.push({
        name: "Projects in scope",
        value: eI(e.getBuildOrder()).length,
        type: 1
      }), i("SolutionBuilder::Projects built"), i("SolutionBuilder::Timestamps only updates"), i("SolutionBuilder::Bundles updated"), t.forEachAggregateStatistics((o) => {
        o.name = `Aggregate ${o.name}`, n.push(o);
      }), uj((o, c) => {
        kV(o) && n.push({
          name: `${a(o)} time`,
          value: c,
          type: 0
        });
      }), LQ(), _j(), t.clear(), Kbe(Cl, n);
      function i(o) {
        const c = Lge(o);
        c && n.push({
          name: a(o),
          value: c,
          type: 1
        });
      }
      function a(o) {
        return o.replace("SolutionBuilder::", "");
      }
    }
    function Ybe(e, t) {
      return e === Cl && (t.diagnostics || t.extendedDiagnostics);
    }
    function Zbe(e, t) {
      return e === Cl && t.generateTrace;
    }
    function Lae(e, t, n) {
      Ybe(e, t) && _j(e), Zbe(e, t) && MQ(n ? "build" : "project", t.generateTrace, t.configFilePath);
    }
    function kV(e) {
      return ta(e, "SolutionBuilder::");
    }
    function CV(e, t, n) {
      var i;
      const a = t.getCompilerOptions();
      Zbe(e, a) && ((i = sn) == null || i.stopTracing());
      let o;
      if (Ybe(e, a)) {
        o = [];
        const d = e.getMemoryUsage ? e.getMemoryUsage() : -1;
        _("Files", t.getSourceFiles().length);
        const g = BBe(t);
        if (a.extendedDiagnostics) for (const [P, N] of g.entries()) _("Lines of " + P, N);
        else _("Lines", qo(g.values(), (P, N) => P + N, 0));
        _("Identifiers", t.getIdentifierCount()), _("Symbols", t.getSymbolCount()), _("Types", t.getTypeCount()), _("Instantiations", t.getInstantiationCount()), d >= 0 && c({
          name: "Memory used",
          value: d,
          type: 2
        }, !0);
        const h = FQ(), S = h ? A4("Program") : 0, T = h ? A4("Bind") : 0, k = h ? A4("Check") : 0, D = h ? A4("Emit") : 0;
        if (a.extendedDiagnostics) {
          const P = t.getRelationCacheSizes();
          _("Assignability cache size", P.assignable), _("Identity cache size", P.identity), _("Subtype cache size", P.subtype), _("Strict subtype cache size", P.strictSubtype), h && uj((N, M) => {
            kV(N) || u(`${N} time`, M, !0);
          });
        } else h && (u("I/O read", A4("I/O Read"), !0), u("I/O write", A4("I/O Write"), !0), u("Parse time", S, !0), u("Bind time", T, !0), u("Check time", k, !0), u("Emit time", D, !0));
        h && u("Total time", S + T + k + D, !1), Kbe(e, o), h ? n ? (uj((P) => {
          kV(P) || Rge(P);
        }), Mge((P) => {
          kV(P) || jge(P);
        })) : LQ() : e.write(p.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message + `
`);
      }
      function c(d, g) {
        o.push(d), g && n?.addAggregateStatistic(d);
      }
      function _(d, g) {
        c({
          name: d,
          value: g,
          type: 1
        }, !0);
      }
      function u(d, g, h) {
        c({
          name: d,
          value: g,
          type: 0
        }, h);
      }
    }
    function Kbe(e, t) {
      let n = 0, i = 0;
      for (const a of t) {
        a.name.length > n && (n = a.name.length);
        const o = e2e(a);
        o.length > i && (i = o.length);
      }
      for (const a of t) e.write(`${a.name}:`.padEnd(n + 2) + e2e(a).toString().padStart(i) + e.newLine);
    }
    function e2e(e) {
      switch (e.type) {
        case 1:
          return "" + e.value;
        case 0:
          return (e.value / 1e3).toFixed(2) + "s";
        case 2:
          return Math.round(e.value / 1e3) + "K";
        default:
          E.assertNever(e.type);
      }
    }
    function $Be(e, t, n) {
      const i = us(jn(e.getCurrentDirectory(), "tsconfig.json"));
      if (e.fileExists(i)) t(nc(p.A_tsconfig_json_file_is_already_defined_at_Colon_0, i));
      else {
        e.writeFile(i, Qre(n, e.newLine));
        const a = [e.newLine, ...xV(e, "Created a new tsconfig.json")];
        a.push("You can learn more at https://aka.ms/tsconfig" + e.newLine);
        for (const o of a) e.write(o);
      }
    }
    function Rm(e, t = !0) {
      return {
        type: e,
        reportFallback: t
      };
    }
    var t2e = Rm(void 0, !1), r2e = Rm(void 0, !1), Rw = Rm(void 0, !0);
    function Mae(e, t) {
      const n = Sf(e, "strictNullChecks");
      return {
        serializeTypeOfDeclaration: g,
        serializeReturnTypeForSignature: S,
        serializeTypeOfExpression: d,
        serializeTypeOfAccessor: u,
        tryReuseExistingTypeNode(ae, Ce) {
          if (t.canReuseTypeNode(ae, Ce))
            return a(ae, Ce);
        }
      };
      function i(ae, Ce, ue = Ce) {
        return Ce === void 0 ? void 0 : t.markNodeReuse(ae, Ce.flags & 16 ? Ce : A.cloneNode(Ce), ue ?? Ce);
      }
      function a(ae, Ce) {
        const { finalizeBoundary: ue, startRecoveryScope: Ie, hadError: Xe, markError: Ft } = t.createRecoveryBoundary(ae), Ut = Ze(Ce, Xt, ui);
        if (!ue()) return;
        return ae.approximateLength += Ce.end - Ce.pos, Ut;
        function Xt(Nt) {
          if (Xe()) return Nt;
          const Li = Ie(), ri = fte(Nt) ? t.enterNewScope(ae, Nt) : void 0, Zr = Gr(Nt);
          return ri?.(), Xe() ? ui(Nt) && !_k(Nt) ? (Li(), t.serializeExistingTypeNode(ae, Nt)) : Nt : Zr ? t.markNodeReuse(ae, Zr, Nt) : void 0;
        }
        function Ar(Nt) {
          const Li = pD(Nt);
          switch (Li.kind) {
            case 184:
              return _i(Li);
            case 187:
              return zr(Li);
            case 200:
              return Ct(Li);
            case 199:
              const ri = Li;
              if (ri.operator === 143) return Kt(ri);
          }
          return Ze(Nt, Xt, ui);
        }
        function Ct(Nt) {
          const Li = Ar(Nt.objectType);
          if (Li !== void 0)
            return A.updateIndexedAccessTypeNode(Nt, Li, Ze(Nt.indexType, Xt, ui));
        }
        function Kt(Nt) {
          E.assertEqual(Nt.operator, 143);
          const Li = Ar(Nt.type);
          if (Li !== void 0)
            return A.updateTypeOperatorNode(Nt, Li);
        }
        function zr(Nt) {
          const { introducesError: Li, node: ri } = t.trackExistingEntityName(ae, Nt.exprName);
          if (!Li) return A.updateTypeQueryNode(Nt, ri, Fr(Nt.typeArguments, Xt, ui));
          const Zr = t.serializeTypeName(ae, Nt.exprName, !0);
          if (Zr) return t.markNodeReuse(ae, Zr, Nt.exprName);
        }
        function _i(Nt) {
          if (t.canReuseTypeNode(ae, Nt)) {
            const { introducesError: Li, node: ri } = t.trackExistingEntityName(ae, Nt.typeName), Zr = Fr(Nt.typeArguments, Xt, ui);
            if (Li) {
              const ni = t.serializeTypeName(ae, Nt.typeName, !1, Zr);
              if (ni) return t.markNodeReuse(ae, ni, Nt.typeName);
            } else {
              const ni = A.updateTypeReferenceNode(Nt, ri, Zr);
              return t.markNodeReuse(ae, ni, Nt);
            }
          }
        }
        function Gr(Nt) {
          var Li;
          if (wv(Nt)) return Ze(Nt.type, Xt, ui);
          if (rre(Nt) || Nt.kind === 320) return A.createKeywordTypeNode(133);
          if (nre(Nt)) return A.createKeywordTypeNode(159);
          if (M6(Nt)) return A.createUnionTypeNode([Ze(Nt.type, Xt, ui), A.createLiteralTypeNode(A.createNull())]);
          if (Rz(Nt)) return A.createUnionTypeNode([Ze(Nt.type, Xt, ui), A.createKeywordTypeNode(157)]);
          if (rF(Nt)) return Ze(Nt.type, Xt);
          if (nF(Nt)) return A.createArrayTypeNode(Ze(Nt.type, Xt, ui));
          if (zS(Nt)) return A.createTypeLiteralNode(or(Nt.jsDocPropertyTags, (vt) => {
            const tr = Ze(Fe(vt.name) ? vt.name : vt.name.right, Xt, Fe), Ur = t.getJsDocPropertyOverride(ae, Nt, vt);
            return A.createPropertySignature(void 0, tr, vt.isBracketed || vt.typeExpression && Rz(vt.typeExpression.type) ? A.createToken(58) : void 0, Ur || vt.typeExpression && Ze(vt.typeExpression.type, Xt, ui) || A.createKeywordTypeNode(133));
          }));
          if (xf(Nt) && Fe(Nt.typeName) && Nt.typeName.escapedText === "") return Fn(A.createKeywordTypeNode(133), Nt);
          if ((rh(Nt) || xf(Nt)) && F5(Nt)) return A.createTypeLiteralNode([A.createIndexSignature(void 0, [A.createParameterDeclaration(void 0, void 0, "x", void 0, Ze(Nt.typeArguments[0], Xt, ui))], Ze(Nt.typeArguments[1], Xt, ui))]);
          if (R6(Nt)) if (Rx(Nt)) {
            let vt;
            return A.createConstructorTypeNode(void 0, Fr(Nt.typeParameters, Xt, $o), Rn(Nt.parameters, (tr, Ur) => tr.name && Fe(tr.name) && tr.name.escapedText === "new" ? (vt = tr.type, void 0) : A.createParameterDeclaration(void 0, ni(tr), t.markNodeReuse(ae, A.createIdentifier(ra(tr, Ur)), tr), A.cloneNode(tr.questionToken), Ze(tr.type, Xt, ui), void 0)), Ze(vt || Nt.type, Xt, ui) || A.createKeywordTypeNode(133));
          } else return A.createFunctionTypeNode(Fr(Nt.typeParameters, Xt, $o), or(Nt.parameters, (vt, tr) => A.createParameterDeclaration(void 0, ni(vt), t.markNodeReuse(ae, A.createIdentifier(ra(vt, tr)), vt), A.cloneNode(vt.questionToken), Ze(vt.type, Xt, ui), void 0)), Ze(Nt.type, Xt, ui) || A.createKeywordTypeNode(133));
          if (rw(Nt))
            return t.canReuseTypeNode(ae, Nt) || Ft(), Nt;
          if ($o(Nt)) {
            const { node: vt } = t.trackExistingEntityName(ae, Nt.name);
            return A.updateTypeParameterDeclaration(Nt, Fr(Nt.modifiers, Xt, hs), vt, Ze(Nt.constraint, Xt, ui), Ze(Nt.default, Xt, ui));
          }
          if ($b(Nt)) {
            const vt = Ct(Nt);
            return vt || (Ft(), Nt);
          }
          if (xf(Nt)) {
            const vt = _i(Nt);
            return vt || (Ft(), Nt);
          }
          if (Bh(Nt)) {
            if (((Li = Nt.attributes) == null ? void 0 : Li.token) === 132)
              return Ft(), Nt;
            if (!t.canReuseTypeNode(ae, Nt)) return t.serializeExistingTypeNode(ae, Nt);
            const vt = Me(Nt, Nt.argument.literal), tr = vt === Nt.argument.literal ? i(ae, Nt.argument.literal) : vt;
            return A.updateImportTypeNode(Nt, tr === Nt.argument.literal ? i(ae, Nt.argument) : A.createLiteralTypeNode(tr), Ze(Nt.attributes, Xt, BS), Ze(Nt.qualifier, Xt, S_), Fr(Nt.typeArguments, Xt, ui), Nt.isTypeOf);
          }
          if (Bl(Nt) && Nt.name.kind === 168 && !t.hasLateBindableName(Nt)) {
            if (!zh(Nt)) return ri(Nt, Xt);
            if (t.shouldRemoveDeclaration(ae, Nt)) return;
          }
          if (Ra(Nt) && !Nt.type || ga(Nt) && !Nt.type && !Nt.initializer || f_(Nt) && !Nt.type && !Nt.initializer || Fi(Nt) && !Nt.type && !Nt.initializer) {
            let vt = ri(Nt, Xt);
            return vt === Nt && (vt = t.markNodeReuse(ae, A.cloneNode(Nt), Nt)), vt.type = A.createKeywordTypeNode(133), Fi(Nt) && (vt.modifiers = void 0), vt;
          }
          if (Gb(Nt)) {
            const vt = zr(Nt);
            return vt || (Ft(), Nt);
          }
          if (_s(Nt) && go(Nt.expression)) {
            const { node: vt, introducesError: tr } = t.trackExistingEntityName(ae, Nt.expression);
            if (tr) {
              const Ur = t.serializeTypeOfExpression(ae, Nt.expression);
              let $n;
              if (B0(Ur)) $n = Ur.literal;
              else {
                const zn = t.evaluateEntityNameExpression(Nt.expression), na = typeof zn.value == "string" ? A.createStringLiteral(zn.value, void 0) : typeof zn.value == "number" ? A.createNumericLiteral(zn.value, 0) : void 0;
                if (!na)
                  return Am(Ur) && t.trackComputedName(ae, Nt.expression), Nt;
                $n = na;
              }
              return $n.kind === 11 && Y_($n.text, Ps(e)) ? A.createIdentifier($n.text) : $n.kind === 9 && !$n.text.startsWith("-") ? $n : A.updateComputedPropertyName(Nt, $n);
            } else
              return A.updateComputedPropertyName(Nt, vt);
          }
          if (_k(Nt)) {
            let vt;
            if (Fe(Nt.parameterName)) {
              const { node: tr, introducesError: Ur } = t.trackExistingEntityName(ae, Nt.parameterName);
              Ur && Ft(), vt = tr;
            } else vt = A.cloneNode(Nt.parameterName);
            return A.updateTypePredicateNode(Nt, A.cloneNode(Nt.assertsModifier), vt, Ze(Nt.type, Xt, ui));
          }
          if (fk(Nt) || C_(Nt) || LS(Nt)) {
            const vt = ri(Nt, Xt), tr = t.markNodeReuse(ae, vt === Nt ? A.cloneNode(Nt) : vt, Nt);
            return ln(tr, Bs(tr) | (ae.flags & 1024 && C_(Nt) ? 0 : 1)), tr;
          }
          if (Ts(Nt) && ae.flags & 268435456 && !Nt.singleQuote) {
            const vt = A.cloneNode(Nt);
            return vt.singleQuote = !0, vt;
          }
          if (Hb(Nt)) {
            const vt = Ze(Nt.checkType, Xt, ui), tr = t.enterNewScope(ae, Nt), Ur = Ze(Nt.extendsType, Xt, ui), $n = Ze(Nt.trueType, Xt, ui);
            tr();
            const zn = Ze(Nt.falseType, Xt, ui);
            return A.updateConditionalTypeNode(Nt, vt, Ur, $n, zn);
          }
          if (Tv(Nt)) {
            if (Nt.operator === 158 && Nt.type.kind === 155) {
              if (!t.canReuseTypeNode(ae, Nt))
                return Ft(), Nt;
            } else if (Nt.operator === 143) {
              const vt = Kt(Nt);
              return vt || (Ft(), Nt);
            }
          }
          return ri(Nt, Xt);
          function ri(vt, tr) {
            return Tr(vt, tr, void 0, !ae.enclosingFile || ae.enclosingFile !== Sr(vt) ? Zr : void 0);
          }
          function Zr(vt, tr, Ur, $n, zn) {
            let na = Fr(vt, tr, Ur, $n, zn);
            return na && (na.pos !== -1 || na.end !== -1) && (na === vt && (na = A.createNodeArray(vt.slice(), vt.hasTrailingComma)), Ud(na, -1, -1)), na;
          }
          function ni(vt) {
            return vt.dotDotDotToken || (vt.type && nF(vt.type) ? A.createToken(26) : void 0);
          }
          function ra(vt, tr) {
            return vt.name && Fe(vt.name) && vt.name.escapedText === "this" ? "this" : ni(vt) ? "args" : `arg${tr}`;
          }
          function Me(vt, tr) {
            const Ur = t.getModuleSpecifierOverride(ae, vt, tr);
            return Ur ? Fn(A.createStringLiteral(Ur), tr) : tr;
          }
        }
      }
      function o(ae, Ce, ue) {
        if (!ae) return;
        let Ie;
        return (!ue || Ne(ae)) && t.canReuseTypeNode(Ce, ae) && (Ie = a(Ce, ae), Ie !== void 0 && (Ie = Ae(Ie, ue, void 0, Ce))), Ie;
      }
      function c(ae, Ce, ue, Ie, Xe, Ft = Xe !== void 0) {
        if (!ae || !t.canReuseTypeNodeAnnotation(Ce, ue, ae, Ie, Xe) && (!Xe || !t.canReuseTypeNodeAnnotation(Ce, ue, ae, Ie, !1)))
          return;
        let Ut;
        return (!Xe || Ne(ae)) && (Ut = o(ae, Ce, Xe)), Ut !== void 0 || !Ft ? Ut : (Ce.tracker.reportInferenceFallback(ue), t.serializeExistingTypeNode(Ce, ae, Xe) ?? A.createKeywordTypeNode(133));
      }
      function _(ae, Ce, ue, Ie) {
        if (!ae) return;
        const Xe = o(ae, Ce, ue);
        return Xe !== void 0 ? Xe : (Ce.tracker.reportInferenceFallback(Ie ?? ae), t.serializeExistingTypeNode(Ce, ae, ue) ?? A.createKeywordTypeNode(133));
      }
      function u(ae, Ce, ue) {
        return D(ae, Ce, ue) ?? H(ae, t.getAllAccessorDeclarations(ae), ue, Ce);
      }
      function d(ae, Ce, ue, Ie) {
        const Xe = ie(ae, Ce, !1, ue, Ie);
        return Xe.type !== void 0 ? Xe.type : L(ae, Ce, Xe.reportFallback);
      }
      function g(ae, Ce, ue) {
        switch (ae.kind) {
          case 170:
          case 342:
            return N(ae, Ce, ue);
          case 261:
            return P(ae, Ce, ue);
          case 172:
          case 349:
          case 173:
            return R(ae, Ce, ue);
          case 209:
            return G(ae, Ce, ue);
          case 278:
            return d(ae.expression, ue, void 0, !0);
          case 212:
          case 213:
          case 227:
            return M(ae, Ce, ue);
          case 304:
          case 305:
            return h(ae, Ce, ue);
          default:
            E.assertNever(ae, `Node needs to be an inferrable node, found ${E.formatSyntaxKind(ae.kind)}`);
        }
      }
      function h(ae, Ce, ue) {
        const Ie = _l(ae);
        let Xe;
        if (Ie && t.canReuseTypeNodeAnnotation(ue, ae, Ie, Ce) && (Xe = o(Ie, ue)), !Xe && ae.kind === 304) {
          const Ft = ae.initializer, Ut = Kb(Ft) ? J6(Ft) : Ft.kind === 235 || Ft.kind === 217 ? Ft.type : void 0;
          Ut && !_d(Ut) && t.canReuseTypeNodeAnnotation(ue, ae, Ut, Ce) && (Xe = o(Ut, ue));
        }
        return Xe ?? G(ae, Ce, ue, !1);
      }
      function S(ae, Ce, ue) {
        switch (ae.kind) {
          case 178:
            return u(ae, Ce, ue);
          case 175:
          case 263:
          case 181:
          case 174:
          case 180:
          case 177:
          case 179:
          case 182:
          case 185:
          case 186:
          case 219:
          case 220:
          case 318:
          case 324:
            return ot(ae, Ce, ue);
          default:
            E.assertNever(ae, `Node needs to be an inferrable node, found ${E.formatSyntaxKind(ae.kind)}`);
        }
      }
      function T(ae) {
        if (ae) return ae.kind === 178 ? rn(ae) && k0(ae) || yf(ae) : vJ(ae);
      }
      function k(ae, Ce) {
        let ue = T(ae);
        return !ue && ae !== Ce.firstAccessor && (ue = T(Ce.firstAccessor)), !ue && Ce.secondAccessor && ae !== Ce.secondAccessor && (ue = T(Ce.secondAccessor)), ue;
      }
      function D(ae, Ce, ue) {
        const Ie = t.getAllAccessorDeclarations(ae), Xe = k(ae, Ie);
        if (Xe && !_k(Xe)) return U(ue, ae, () => c(Xe, ue, ae, Ce) ?? G(ae, Ce, ue));
        if (Ie.getAccessor) return U(ue, Ie.getAccessor, () => ot(Ie.getAccessor, Ce, ue));
      }
      function P(ae, Ce, ue) {
        var Ie;
        const Xe = _l(ae);
        let Ft = Rw;
        return Xe ? Ft = Rm(c(Xe, ue, ae, Ce)) : ae.initializer && (((Ie = Ce.declarations) == null ? void 0 : Ie.length) === 1 || Qf(Ce.declarations, ci) === 1) && !t.isExpandoFunctionDeclaration(ae) && !ke(ae) && (Ft = ie(ae.initializer, ue, void 0, void 0, vK(ae))), Ft.type !== void 0 ? Ft.type : G(ae, Ce, ue, Ft.reportFallback);
      }
      function N(ae, Ce, ue) {
        const Ie = ae.parent;
        if (Ie.kind === 179) return u(Ie, void 0, ue);
        const Xe = _l(ae), Ft = t.requiresAddingImplicitUndefined(ae, Ce, ue.enclosingDeclaration);
        let Ut = Rw;
        return Xe ? Ut = Rm(c(Xe, ue, ae, Ce, Ft)) : Fi(ae) && ae.initializer && Fe(ae.name) && !ke(ae) && (Ut = ie(ae.initializer, ue, void 0, Ft)), Ut.type !== void 0 ? Ut.type : G(ae, Ce, ue, Ut.reportFallback);
      }
      function M(ae, Ce, ue) {
        const Ie = _l(ae);
        let Xe;
        Ie && (Xe = c(Ie, ue, ae, Ce));
        const Ft = ue.suppressReportInferenceFallback;
        ue.suppressReportInferenceFallback = !0;
        const Ut = Xe ?? G(ae, Ce, ue, !1);
        return ue.suppressReportInferenceFallback = Ft, Ut;
      }
      function R(ae, Ce, ue) {
        const Ie = _l(ae), Xe = t.requiresAddingImplicitUndefined(ae, Ce, ue.enclosingDeclaration);
        let Ft = Rw;
        if (Ie) Ft = Rm(c(Ie, ue, ae, Ce, Xe));
        else {
          const Ut = ga(ae) ? ae.initializer : void 0;
          Ut && !ke(ae) && (Ft = ie(Ut, ue, void 0, Xe, $3(ae)));
        }
        return Ft.type !== void 0 ? Ft.type : G(ae, Ce, ue, Ft.reportFallback);
      }
      function G(ae, Ce, ue, Ie = !0) {
        return Ie && ue.tracker.reportInferenceFallback(ae), ue.noInferenceFallback === !0 ? A.createKeywordTypeNode(133) : t.serializeTypeOfDeclaration(ue, ae, Ce);
      }
      function L(ae, Ce, ue = !0, Ie) {
        return E.assert(!Ie), ue && Ce.tracker.reportInferenceFallback(ae), Ce.noInferenceFallback === !0 ? A.createKeywordTypeNode(133) : t.serializeTypeOfExpression(Ce, ae) ?? A.createKeywordTypeNode(133);
      }
      function z(ae, Ce, ue, Ie) {
        return Ie && Ce.tracker.reportInferenceFallback(ae), Ce.noInferenceFallback === !0 ? A.createKeywordTypeNode(133) : t.serializeReturnTypeForSignature(Ce, ae, ue) ?? A.createKeywordTypeNode(133);
      }
      function H(ae, Ce, ue, Ie, Xe = !0) {
        return ae.kind === 178 ? ot(ae, Ie, ue, Xe) : (Xe && ue.tracker.reportInferenceFallback(ae), (Ce.getAccessor && ot(Ce.getAccessor, Ie, ue, Xe)) ?? t.serializeTypeOfDeclaration(ue, ae, Ie) ?? A.createKeywordTypeNode(133));
      }
      function U(ae, Ce, ue) {
        const Ie = t.enterNewScope(ae, Ce), Xe = ue();
        return Ie(), Xe;
      }
      function pe(ae, Ce, ue, Ie) {
        return _d(Ce) ? ie(ae, ue, !0, Ie) : Rm(_(Ce, ue, Ie));
      }
      function ie(ae, Ce, ue = !1, Ie = !1, Xe = !1) {
        switch (ae.kind) {
          case 218:
            return Kb(ae) ? pe(ae.expression, J6(ae), Ce, Ie) : ie(ae.expression, Ce, ue, Ie);
          case 80:
            if (t.isUndefinedIdentifierExpression(ae)) return Rm(oe());
            break;
          case 106:
            return Rm(n ? Ae(A.createLiteralTypeNode(A.createNull()), Ie, ae, Ce) : A.createKeywordTypeNode(133));
          case 220:
          case 219:
            return E.type(ae), U(Ce, ae, () => W(ae, Ce));
          case 217:
          case 235:
            const Ft = ae;
            return pe(Ft.expression, Ft.type, Ce, Ie);
          case 225:
            const Ut = ae;
            if (MO(Ut)) return ge(Ut.operator === 40 ? Ut.operand : Ut, Ut.operand.kind === 10 ? 163 : 150, Ce, ue || Xe, Ie);
            break;
          case 210:
            return se(ae, Ce, ue, Ie);
          case 211:
            return fe(ae, Ce, ue, Ie);
          case 232:
            return Rm(L(ae, Ce, !0, Ie));
          case 229:
            if (!ue && !Xe) return Rm(A.createKeywordTypeNode(154));
            break;
          default:
            let Xt, Ar = ae;
            switch (ae.kind) {
              case 9:
                Xt = 150;
                break;
              case 15:
                Ar = A.createStringLiteral(ae.text), Xt = 154;
                break;
              case 11:
                Xt = 154;
                break;
              case 10:
                Xt = 163;
                break;
              case 112:
              case 97:
                Xt = 136;
                break;
            }
            if (Xt) return ge(Ar, Xt, Ce, ue || Xe, Ie);
        }
        return Rw;
      }
      function W(ae, Ce) {
        const ue = ot(ae, void 0, Ce), Ie = Se(ae.typeParameters, Ce), Xe = ae.parameters.map((Ft) => $(Ft, Ce));
        return Rm(A.createFunctionTypeNode(Ie, Xe, ue));
      }
      function Q(ae, Ce, ue) {
        if (!ue)
          return Ce.tracker.reportInferenceFallback(ae), !1;
        for (const Ie of ae.elements) if (Ie.kind === 231)
          return Ce.tracker.reportInferenceFallback(Ie), !1;
        return !0;
      }
      function se(ae, Ce, ue, Ie) {
        if (!Q(ae, Ce, ue))
          return Ie || Jl(dd(ae).parent) ? r2e : Rm(L(ae, Ce, !1, Ie));
        const Xe = Ce.noInferenceFallback;
        Ce.noInferenceFallback = !0;
        const Ft = [];
        for (const Xt of ae.elements)
          if (E.assert(Xt.kind !== 231), Xt.kind === 233) Ft.push(oe());
          else {
            const Ar = ie(Xt, Ce, ue), Ct = Ar.type !== void 0 ? Ar.type : L(Xt, Ce, Ar.reportFallback);
            Ft.push(Ct);
          }
        const Ut = A.createTupleTypeNode(Ft);
        return Ut.emitNode = {
          flags: 1,
          autoGenerate: void 0,
          internalFlags: 0
        }, Ce.noInferenceFallback = Xe, t2e;
      }
      function he(ae, Ce) {
        let ue = !0;
        for (const Ie of ae.properties) {
          if (Ie.flags & 262144) {
            ue = !1;
            break;
          }
          if (Ie.kind === 305 || Ie.kind === 306)
            Ce.tracker.reportInferenceFallback(Ie), ue = !1;
          else if (Ie.name.flags & 262144) {
            ue = !1;
            break;
          } else if (Ie.name.kind === 81) ue = !1;
          else if (Ie.name.kind === 168) {
            const Xe = Ie.name.expression;
            !MO(Xe, !1) && !t.isDefinitelyReferenceToGlobalSymbolObject(Xe) && (Ce.tracker.reportInferenceFallback(Ie.name), ue = !1);
          }
        }
        return ue;
      }
      function fe(ae, Ce, ue, Ie) {
        if (!he(ae, Ce))
          return Ie || Jl(dd(ae).parent) ? r2e : Rm(L(ae, Ce, !1, Ie));
        const Xe = Ce.noInferenceFallback;
        Ce.noInferenceFallback = !0;
        const Ft = [], Ut = Ce.flags;
        Ce.flags |= 4194304;
        for (const Ar of ae.properties) {
          E.assert(!Nu(Ar) && !ih(Ar));
          const Ct = Ar.name;
          let Kt;
          switch (Ar.kind) {
            case 175:
              Kt = U(Ce, Ar, () => Be(Ar, Ct, Ce, ue));
              break;
            case 304:
              Kt = de(Ar, Ct, Ce, ue);
              break;
            case 179:
            case 178:
              Kt = ce(Ar, Ct, Ce);
              break;
          }
          Kt && (fl(Kt, Ar), Ft.push(Kt));
        }
        Ce.flags = Ut;
        const Xt = A.createTypeLiteralNode(Ft);
        return Ce.flags & 1024 || ln(Xt, 1), Ce.noInferenceFallback = Xe, t2e;
      }
      function de(ae, Ce, ue, Ie) {
        const Xe = Ie ? [A.createModifier(148)] : [], Ft = ie(ae.initializer, ue, Ie), Ut = Ft.type !== void 0 ? Ft.type : G(ae, void 0, ue, Ft.reportFallback);
        return A.createPropertySignature(Xe, i(ue, Ce), void 0, Ut);
      }
      function $(ae, Ce) {
        return A.updateParameterDeclaration(ae, void 0, i(Ce, ae.dotDotDotToken), t.serializeNameOfParameter(Ce, ae), t.isOptionalParameter(ae) ? A.createToken(58) : void 0, N(ae, void 0, Ce), void 0);
      }
      function Se(ae, Ce) {
        return ae?.map((ue) => {
          var Ie;
          const { node: Xe } = t.trackExistingEntityName(Ce, ue.name);
          return A.updateTypeParameterDeclaration(ue, (Ie = ue.modifiers) == null ? void 0 : Ie.map((Ft) => i(Ce, Ft)), Xe, _(ue.constraint, Ce), _(ue.default, Ce));
        });
      }
      function Be(ae, Ce, ue, Ie) {
        const Xe = ot(ae, void 0, ue), Ft = Se(ae.typeParameters, ue), Ut = ae.parameters.map((Xt) => $(Xt, ue));
        return Ie ? A.createPropertySignature([A.createModifier(148)], i(ue, Ce), i(ue, ae.questionToken), A.createFunctionTypeNode(Ft, Ut, Xe)) : (Fe(Ce) && Ce.escapedText === "new" && (Ce = A.createStringLiteral("new")), A.createMethodSignature([], i(ue, Ce), i(ue, ae.questionToken), Ft, Ut, Xe));
      }
      function ce(ae, Ce, ue) {
        const Ie = t.getAllAccessorDeclarations(ae), Xe = Ie.getAccessor && T(Ie.getAccessor), Ft = Ie.setAccessor && T(Ie.setAccessor);
        if (Xe !== void 0 && Ft !== void 0) return U(ue, ae, () => {
          const Ut = ae.parameters.map((Xt) => $(Xt, ue));
          return Wg(ae) ? A.updateGetAccessorDeclaration(ae, [], i(ue, Ce), Ut, _(Xe, ue), void 0) : A.updateSetAccessorDeclaration(ae, [], i(ue, Ce), Ut, void 0);
        });
        if (Ie.firstAccessor === ae) {
          const Ut = (Xe ? U(ue, Ie.getAccessor, () => _(Xe, ue)) : Ft ? U(ue, Ie.setAccessor, () => _(Ft, ue)) : void 0) ?? H(ae, Ie, ue, void 0);
          return A.createPropertySignature(Ie.setAccessor === void 0 ? [A.createModifier(148)] : [], i(ue, Ce), void 0, Ut);
        }
      }
      function oe() {
        return n ? A.createKeywordTypeNode(157) : A.createKeywordTypeNode(133);
      }
      function ge(ae, Ce, ue, Ie, Xe) {
        let Ft;
        return Ie ? (ae.kind === 225 && ae.operator === 40 && (Ft = A.createLiteralTypeNode(i(ue, ae.operand))), Ft = A.createLiteralTypeNode(i(ue, ae))) : Ft = A.createKeywordTypeNode(Ce), Rm(Ae(Ft, Xe, ae, ue));
      }
      function Ae(ae, Ce, ue, Ie) {
        const Xe = ue && dd(ue).parent, Ft = Xe && Jl(Xe) && ek(Xe);
        return !n || !(Ce || Ft) ? ae : (Ne(ae) || Ie.tracker.reportInferenceFallback(ae), j0(ae) ? A.createUnionTypeNode([...ae.types, A.createKeywordTypeNode(157)]) : A.createUnionTypeNode([ae, A.createKeywordTypeNode(157)]));
      }
      function Ne(ae) {
        return !n || z_(ae.kind) || ae.kind === 202 || ae.kind === 185 || ae.kind === 186 || ae.kind === 189 || ae.kind === 190 || ae.kind === 188 || ae.kind === 204 || ae.kind === 198 ? !0 : ae.kind === 197 ? Ne(ae.type) : ae.kind === 193 || ae.kind === 194 ? ae.types.every(Ne) : !1;
      }
      function ot(ae, Ce, ue, Ie = !0) {
        let Xe = Rw;
        const Ft = Rx(ae) ? _l(ae.parameters[0]) : yf(ae);
        return Ft ? Xe = Rm(c(Ft, ue, ae, Ce)) : xS(ae) && (Xe = K(ae, ue)), Xe.type !== void 0 ? Xe.type : z(ae, ue, Ce, Ie && Xe.reportFallback && !Ft);
      }
      function K(ae, Ce) {
        let ue;
        if (ae && !Nc(ae.body)) {
          if (Gc(ae) & 3) return Rw;
          const Ie = ae.body;
          Ie && Wa(Ie) ? Hy(Ie, (Xe) => {
            if (Xe.parent !== Ie)
              return ue = void 0, !0;
            if (!ue) ue = Xe.expression;
            else
              return ue = void 0, !0;
          }) : ue = Ie;
        }
        if (ue) if (ke(ue)) {
          const Ie = Kb(ue) ? J6(ue) : A6(ue) || ZO(ue) ? ue.type : void 0;
          if (Ie && !_d(Ie)) return Rm(o(Ie, Ce));
        } else return ie(ue, Ce);
        return Rw;
      }
      function ke(ae) {
        return cr(ae.parent, (Ce) => za(Ce) || !So(Ce) && !!_l(Ce) || Im(Ce) || O6(Ce));
      }
    }
    var oh = {};
    gi(oh, {
      NameValidationResult: () => l2e,
      discoverTypings: () => YBe,
      isTypingUpToDate: () => o2e,
      loadSafeList: () => XBe,
      loadTypesMap: () => QBe,
      nonRelativeModuleNameForTypingCache: () => c2e,
      renderPackageNameValidationFailure: () => KBe,
      validatePackageName: () => ZBe
    });
    var O9 = "action::set", F9 = "action::invalidate", iI = "action::packageInstalled", EV = "event::typesRegistry", DV = "event::beginInstallTypes", wV = "event::endInstallTypes", Rae = "event::initializationFailed", aI = "action::watchTypingLocations", PV;
    ((e) => {
      e.GlobalCacheLocation = "--globalTypingsCacheLocation", e.LogFile = "--logFile", e.EnableTelemetry = "--enableTelemetry", e.TypingSafeListLocation = "--typingSafeListLocation", e.TypesMapLocation = "--typesMapLocation", e.NpmLocation = "--npmLocation", e.ValidateDefaultNpmLocation = "--validateDefaultNpmLocation";
    })(PV || (PV = {}));
    function n2e(e) {
      return Cl.args.includes(e);
    }
    function i2e(e) {
      const t = Cl.args.indexOf(e);
      return t >= 0 && t < Cl.args.length - 1 ? Cl.args[t + 1] : void 0;
    }
    function a2e() {
      const e = /* @__PURE__ */ new Date();
      return `${e.getHours().toString().padStart(2, "0")}:${e.getMinutes().toString().padStart(2, "0")}:${e.getSeconds().toString().padStart(2, "0")}.${e.getMilliseconds().toString().padStart(3, "0")}`;
    }
    var s2e = `
    `;
    function jw(e) {
      return s2e + e.replace(/\n/g, s2e);
    }
    function jv(e) {
      return jw(JSON.stringify(e, void 0, 2));
    }
    function o2e(e, t) {
      return new Ld(s3(t, `ts${Un}`) || s3(t, "latest")).compareTo(e.version) <= 0;
    }
    function c2e(e) {
      return nk.has(e) ? "node" : e;
    }
    function XBe(e, t) {
      const n = kN(t, (i) => e.readFile(i));
      return new Map(Object.entries(n.config));
    }
    function QBe(e, t) {
      var n;
      const i = kN(t, (a) => e.readFile(a));
      if ((n = i.config) != null && n.simpleMap) return new Map(Object.entries(i.config.simpleMap));
    }
    function YBe(e, t, n, i, a, o, c, _, u, d) {
      if (!c || !c.enable) return {
        cachedTypingPaths: [],
        newTypingNames: [],
        filesToWatch: []
      };
      const g = /* @__PURE__ */ new Map();
      n = Rn(n, (G) => {
        const L = us(G);
        if (Zg(L)) return L;
      });
      const h = [];
      c.include && N(c.include, "Explicitly included types");
      const S = c.exclude || [];
      if (!d.types || yv(d)) {
        const G = new Set(n.map(Xn));
        G.add(i), G.forEach((L) => {
          M(L, "bower.json", "bower_components", h), M(L, "package.json", "node_modules", h);
        });
      }
      c.disableFilenameBasedTypeAcquisition || R(n), _ && N(Z1(_.map(c2e), nS, Du), "Inferred typings from unresolved imports");
      for (const G of S) g.delete(G) && t && t(`Typing for ${G} is in exclude list, will be ignored.`);
      o.forEach((G, L) => {
        const z = u.get(L);
        g.get(L) === !1 && z !== void 0 && o2e(G, z) && g.set(L, G.typingLocation);
      });
      const T = [], k = [];
      g.forEach((G, L) => {
        G ? k.push(G) : T.push(L);
      });
      const D = {
        cachedTypingPaths: k,
        newTypingNames: T,
        filesToWatch: h
      };
      return t && t(`Finished typings discovery:${jv(D)}`), D;
      function P(G) {
        g.has(G) || g.set(G, !1);
      }
      function N(G, L) {
        t && t(`${L}: ${JSON.stringify(G)}`), bt(G, P);
      }
      function M(G, L, z, H) {
        const U = jn(G, L);
        let pe, ie;
        e.fileExists(U) && (H.push(U), pe = kN(U, (he) => e.readFile(he)).config, ie = ks([
          pe.dependencies,
          pe.devDependencies,
          pe.optionalDependencies,
          pe.peerDependencies
        ], mm), N(ie, `Typing names in '${U}' dependencies`));
        const W = jn(G, z);
        if (H.push(W), !e.directoryExists(W)) return;
        const Q = [], se = ie ? ie.map((he) => jn(W, he, L)) : e.readDirectory(W, [".json"], void 0, void 0, 3).filter((he) => {
          if (nl(he) !== L) return !1;
          const fe = wu(us(he)), de = fe[fe.length - 3][0] === "@";
          return de && Ny(fe[fe.length - 4]) === z || !de && Ny(fe[fe.length - 3]) === z;
        });
        t && t(`Searching for typing names in ${W}; all files: ${JSON.stringify(se)}`);
        for (const he of se) {
          const fe = us(he), de = kN(fe, (Se) => e.readFile(Se)).config;
          if (!de.name) continue;
          const $ = de.types || de.typings;
          if ($) {
            const Se = ca($, Xn(fe));
            e.fileExists(Se) ? (t && t(`    Package '${de.name}' provides its own types.`), g.set(de.name, Se)) : t && t(`    Package '${de.name}' provides its own types but they are missing.`);
          } else Q.push(de.name);
        }
        N(Q, "    Found package names");
      }
      function R(G) {
        const L = Rn(G, (z) => {
          if (!Zg(z)) return;
          const H = ij(__(Ny(nl(z))));
          return a.get(H);
        });
        L.length && N(L, "Inferred typings from file names"), _t(G, (z) => lc(z, ".jsx")) && (t && t("Inferred 'react' typings due to presence of '.jsx' extension"), P("react"));
      }
    }
    var l2e = /* @__PURE__ */ ((e) => (e[e.Ok = 0] = "Ok", e[e.EmptyName = 1] = "EmptyName", e[e.NameTooLong = 2] = "NameTooLong", e[e.NameStartsWithDot = 3] = "NameStartsWithDot", e[e.NameStartsWithUnderscore = 4] = "NameStartsWithUnderscore", e[e.NameContainsInvalidCharacters = 5] = "NameContainsInvalidCharacters", e[e.NameContainsNonURISafeCharacters = 5] = "NameContainsNonURISafeCharacters", e))(l2e || {}), u2e = 214;
    function ZBe(e) {
      return jae(e, !0);
    }
    function jae(e, t) {
      if (!e) return 1;
      if (e.length > u2e) return 2;
      if (e.charCodeAt(0) === 46) return 3;
      if (e.charCodeAt(0) === 95) return 4;
      if (t) {
        const n = /^@([^/]+)\/([^/]+)$/.exec(e);
        if (n) {
          const i = jae(n[1], !1);
          if (i !== 0) return {
            name: n[1],
            isScopeName: !0,
            result: i
          };
          const a = jae(n[2], !1);
          return a !== 0 ? {
            name: n[2],
            isScopeName: !1,
            result: a
          } : 0;
        }
      }
      return /^[\w.-]+$/.test(e) ? 0 : 5;
    }
    function KBe(e, t) {
      return typeof e == "object" ? _2e(t, e.result, e.name, e.isScopeName) : _2e(t, e, t, !1);
    }
    function _2e(e, t, n, i) {
      const a = i ? "Scope" : "Package";
      switch (t) {
        case 1:
          return `'${e}':: ${a} name '${n}' cannot be empty`;
        case 2:
          return `'${e}':: ${a} name '${n}' should be less than ${u2e} characters`;
        case 3:
          return `'${e}':: ${a} name '${n}' cannot start with '.'`;
        case 4:
          return `'${e}':: ${a} name '${n}' cannot start with '_'`;
        case 5:
          return `'${e}':: ${a} name '${n}' contains invalid characters`;
        case 0:
          return E.fail();
        default:
          E.assertNever(t);
      }
    }
    var L9;
    ((e) => {
      class t {
        constructor(a) {
          this.text = a;
        }
        getText(a, o) {
          return a === 0 && o === this.text.length ? this.text : this.text.substring(a, o);
        }
        getLength() {
          return this.text.length;
        }
        getChangeRange() {
        }
      }
      function n(i) {
        return new t(i);
      }
      e.fromString = n;
    })(L9 || (L9 = {}));
    var Bae = /* @__PURE__ */ ((e) => (e[e.Dependencies = 1] = "Dependencies", e[e.DevDependencies = 2] = "DevDependencies", e[e.PeerDependencies = 4] = "PeerDependencies", e[e.OptionalDependencies = 8] = "OptionalDependencies", e[e.All = 15] = "All", e))(Bae || {}), Jae = /* @__PURE__ */ ((e) => (e[e.Off = 0] = "Off", e[e.On = 1] = "On", e[e.Auto = 2] = "Auto", e))(Jae || {}), zae = /* @__PURE__ */ ((e) => (e[e.Semantic = 0] = "Semantic", e[e.PartialSemantic = 1] = "PartialSemantic", e[e.Syntactic = 2] = "Syntactic", e))(zae || {}), td = {}, Wae = /* @__PURE__ */ ((e) => (e.Original = "original", e.TwentyTwenty = "2020", e))(Wae || {}), AV = /* @__PURE__ */ ((e) => (e.All = "All", e.SortAndCombine = "SortAndCombine", e.RemoveUnused = "RemoveUnused", e))(AV || {}), NV = /* @__PURE__ */ ((e) => (e[e.Invoked = 1] = "Invoked", e[e.TriggerCharacter = 2] = "TriggerCharacter", e[e.TriggerForIncompleteCompletions = 3] = "TriggerForIncompleteCompletions", e))(NV || {}), Uae = /* @__PURE__ */ ((e) => (e.Type = "Type", e.Parameter = "Parameter", e.Enum = "Enum", e))(Uae || {}), Vae = /* @__PURE__ */ ((e) => (e.none = "none", e.definition = "definition", e.reference = "reference", e.writtenReference = "writtenReference", e))(Vae || {}), qae = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Block = 1] = "Block", e[e.Smart = 2] = "Smart", e))(qae || {}), IV = /* @__PURE__ */ ((e) => (e.Ignore = "ignore", e.Insert = "insert", e.Remove = "remove", e))(IV || {});
    function M9(e) {
      return {
        indentSize: 4,
        tabSize: 4,
        newLineCharacter: e || `
`,
        convertTabsToSpaces: !0,
        indentStyle: 2,
        insertSpaceAfterConstructor: !1,
        insertSpaceAfterCommaDelimiter: !0,
        insertSpaceAfterSemicolonInForStatements: !0,
        insertSpaceBeforeAndAfterBinaryOperators: !0,
        insertSpaceAfterKeywordsInControlFlowStatements: !0,
        insertSpaceAfterFunctionKeywordForAnonymousFunctions: !1,
        insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: !1,
        insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: !1,
        insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces: !0,
        insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces: !1,
        insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces: !1,
        insertSpaceBeforeFunctionParenthesis: !1,
        placeOpenBraceOnNewLineForFunctions: !1,
        placeOpenBraceOnNewLineForControlBlocks: !1,
        semicolons: "ignore",
        trimTrailingWhitespace: !0,
        indentSwitchCase: !0
      };
    }
    var f2e = M9(`
`), R9 = /* @__PURE__ */ ((e) => (e[e.aliasName = 0] = "aliasName", e[e.className = 1] = "className", e[e.enumName = 2] = "enumName", e[e.fieldName = 3] = "fieldName", e[e.interfaceName = 4] = "interfaceName", e[e.keyword = 5] = "keyword", e[e.lineBreak = 6] = "lineBreak", e[e.numericLiteral = 7] = "numericLiteral", e[e.stringLiteral = 8] = "stringLiteral", e[e.localName = 9] = "localName", e[e.methodName = 10] = "methodName", e[e.moduleName = 11] = "moduleName", e[e.operator = 12] = "operator", e[e.parameterName = 13] = "parameterName", e[e.propertyName = 14] = "propertyName", e[e.punctuation = 15] = "punctuation", e[e.space = 16] = "space", e[e.text = 17] = "text", e[e.typeParameterName = 18] = "typeParameterName", e[e.enumMemberName = 19] = "enumMemberName", e[e.functionName = 20] = "functionName", e[e.regularExpressionLiteral = 21] = "regularExpressionLiteral", e[e.link = 22] = "link", e[e.linkName = 23] = "linkName", e[e.linkText = 24] = "linkText", e))(R9 || {}), Gae = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.MayIncludeAutoImports = 1] = "MayIncludeAutoImports", e[e.IsImportStatementCompletion = 2] = "IsImportStatementCompletion", e[e.IsContinuation = 4] = "IsContinuation", e[e.ResolvedModuleSpecifiers = 8] = "ResolvedModuleSpecifiers", e[e.ResolvedModuleSpecifiersBeyondLimit = 16] = "ResolvedModuleSpecifiersBeyondLimit", e[e.MayIncludeMethodSnippets = 32] = "MayIncludeMethodSnippets", e))(Gae || {}), Hae = /* @__PURE__ */ ((e) => (e.Comment = "comment", e.Region = "region", e.Code = "code", e.Imports = "imports", e))(Hae || {}), $ae = /* @__PURE__ */ ((e) => (e[e.JavaScript = 0] = "JavaScript", e[e.SourceMap = 1] = "SourceMap", e[e.Declaration = 2] = "Declaration", e))($ae || {}), Xae = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.InMultiLineCommentTrivia = 1] = "InMultiLineCommentTrivia", e[e.InSingleQuoteStringLiteral = 2] = "InSingleQuoteStringLiteral", e[e.InDoubleQuoteStringLiteral = 3] = "InDoubleQuoteStringLiteral", e[e.InTemplateHeadOrNoSubstitutionTemplate = 4] = "InTemplateHeadOrNoSubstitutionTemplate", e[e.InTemplateMiddleOrTail = 5] = "InTemplateMiddleOrTail", e[e.InTemplateSubstitutionPosition = 6] = "InTemplateSubstitutionPosition", e))(Xae || {}), Qae = /* @__PURE__ */ ((e) => (e[e.Punctuation = 0] = "Punctuation", e[e.Keyword = 1] = "Keyword", e[e.Operator = 2] = "Operator", e[e.Comment = 3] = "Comment", e[e.Whitespace = 4] = "Whitespace", e[e.Identifier = 5] = "Identifier", e[e.NumberLiteral = 6] = "NumberLiteral", e[e.BigIntLiteral = 7] = "BigIntLiteral", e[e.StringLiteral = 8] = "StringLiteral", e[e.RegExpLiteral = 9] = "RegExpLiteral", e))(Qae || {}), Yae = /* @__PURE__ */ ((e) => (e.unknown = "", e.warning = "warning", e.keyword = "keyword", e.scriptElement = "script", e.moduleElement = "module", e.classElement = "class", e.localClassElement = "local class", e.interfaceElement = "interface", e.typeElement = "type", e.enumElement = "enum", e.enumMemberElement = "enum member", e.variableElement = "var", e.localVariableElement = "local var", e.variableUsingElement = "using", e.variableAwaitUsingElement = "await using", e.functionElement = "function", e.localFunctionElement = "local function", e.memberFunctionElement = "method", e.memberGetAccessorElement = "getter", e.memberSetAccessorElement = "setter", e.memberVariableElement = "property", e.memberAccessorVariableElement = "accessor", e.constructorImplementationElement = "constructor", e.callSignatureElement = "call", e.indexSignatureElement = "index", e.constructSignatureElement = "construct", e.parameterElement = "parameter", e.typeParameterElement = "type parameter", e.primitiveType = "primitive type", e.label = "label", e.alias = "alias", e.constElement = "const", e.letElement = "let", e.directory = "directory", e.externalModuleName = "external module name", e.jsxAttribute = "JSX attribute", e.string = "string", e.link = "link", e.linkName = "link name", e.linkText = "link text", e))(Yae || {}), Zae = /* @__PURE__ */ ((e) => (e.none = "", e.publicMemberModifier = "public", e.privateMemberModifier = "private", e.protectedMemberModifier = "protected", e.exportedModifier = "export", e.ambientModifier = "declare", e.staticModifier = "static", e.abstractModifier = "abstract", e.optionalModifier = "optional", e.deprecatedModifier = "deprecated", e.dtsModifier = ".d.ts", e.tsModifier = ".ts", e.tsxModifier = ".tsx", e.jsModifier = ".js", e.jsxModifier = ".jsx", e.jsonModifier = ".json", e.dmtsModifier = ".d.mts", e.mtsModifier = ".mts", e.mjsModifier = ".mjs", e.dctsModifier = ".d.cts", e.ctsModifier = ".cts", e.cjsModifier = ".cjs", e))(Zae || {}), Kae = /* @__PURE__ */ ((e) => (e.comment = "comment", e.identifier = "identifier", e.keyword = "keyword", e.numericLiteral = "number", e.bigintLiteral = "bigint", e.operator = "operator", e.stringLiteral = "string", e.whiteSpace = "whitespace", e.text = "text", e.punctuation = "punctuation", e.className = "class name", e.enumName = "enum name", e.interfaceName = "interface name", e.moduleName = "module name", e.typeParameterName = "type parameter name", e.typeAliasName = "type alias name", e.parameterName = "parameter name", e.docCommentTagName = "doc comment tag name", e.jsxOpenTagName = "jsx open tag name", e.jsxCloseTagName = "jsx close tag name", e.jsxSelfClosingTagName = "jsx self closing tag name", e.jsxAttribute = "jsx attribute", e.jsxText = "jsx text", e.jsxAttributeStringLiteralValue = "jsx attribute string literal value", e))(Kae || {}), OV = /* @__PURE__ */ ((e) => (e[e.comment = 1] = "comment", e[e.identifier = 2] = "identifier", e[e.keyword = 3] = "keyword", e[e.numericLiteral = 4] = "numericLiteral", e[e.operator = 5] = "operator", e[e.stringLiteral = 6] = "stringLiteral", e[e.regularExpressionLiteral = 7] = "regularExpressionLiteral", e[e.whiteSpace = 8] = "whiteSpace", e[e.text = 9] = "text", e[e.punctuation = 10] = "punctuation", e[e.className = 11] = "className", e[e.enumName = 12] = "enumName", e[e.interfaceName = 13] = "interfaceName", e[e.moduleName = 14] = "moduleName", e[e.typeParameterName = 15] = "typeParameterName", e[e.typeAliasName = 16] = "typeAliasName", e[e.parameterName = 17] = "parameterName", e[e.docCommentTagName = 18] = "docCommentTagName", e[e.jsxOpenTagName = 19] = "jsxOpenTagName", e[e.jsxCloseTagName = 20] = "jsxCloseTagName", e[e.jsxSelfClosingTagName = 21] = "jsxSelfClosingTagName", e[e.jsxAttribute = 22] = "jsxAttribute", e[e.jsxText = 23] = "jsxText", e[e.jsxAttributeStringLiteralValue = 24] = "jsxAttributeStringLiteralValue", e[e.bigintLiteral = 25] = "bigintLiteral", e))(OV || {}), su = Bg(99, !0), ese = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.Value = 1] = "Value", e[e.Type = 2] = "Type", e[e.Namespace = 4] = "Namespace", e[e.All = 7] = "All", e))(ese || {});
    function j9(e) {
      switch (e.kind) {
        case 261:
          return rn(e) && Qj(e) ? 7 : 1;
        case 170:
        case 209:
        case 173:
        case 172:
        case 304:
        case 305:
        case 175:
        case 174:
        case 177:
        case 178:
        case 179:
        case 263:
        case 219:
        case 220:
        case 300:
        case 292:
          return 1;
        case 169:
        case 265:
        case 266:
        case 188:
          return 2;
        case 347:
          return e.name === void 0 ? 3 : 2;
        case 307:
        case 264:
          return 3;
        case 268:
          return o_(e) || m1(e) === 1 ? 5 : 4;
        case 267:
        case 276:
        case 277:
        case 272:
        case 273:
        case 278:
        case 279:
          return 7;
        case 308:
          return 5;
      }
      return 7;
    }
    function YS(e) {
      e = GV(e);
      const t = e.parent;
      return e.kind === 308 ? 1 : Xo(t) || $u(t) || qh(t) || p_(t) || hd(t) || bl(t) && e === t.name ? 7 : B9(e) ? eJe(e) : pg(e) ? j9(t) : S_(e) && cr(e, _f(sw, Ex, Pv)) ? 7 : iJe(e) ? 2 : tJe(e) ? 4 : $o(t) ? (E.assert(ed(t.parent)), 2) : B0(t) ? 3 : 1;
    }
    function eJe(e) {
      const t = e.kind === 167 ? e : k_(e.parent) && e.parent.right === e ? e.parent : void 0;
      return t && t.parent.kind === 272 ? 7 : 4;
    }
    function B9(e) {
      if (!e.parent) return !1;
      for (; e.parent.kind === 167; ) e = e.parent;
      return yS(e.parent) && e.parent.moduleReference === e;
    }
    function tJe(e) {
      return rJe(e) || nJe(e);
    }
    function rJe(e) {
      let t = e, n = !0;
      if (t.parent.kind === 167) {
        for (; t.parent && t.parent.kind === 167; ) t = t.parent;
        n = t.right === e;
      }
      return t.parent.kind === 184 && !n;
    }
    function nJe(e) {
      let t = e, n = !0;
      if (t.parent.kind === 212) {
        for (; t.parent && t.parent.kind === 212; ) t = t.parent;
        n = t.name === e;
      }
      if (!n && t.parent.kind === 234 && t.parent.parent.kind === 299) {
        const i = t.parent.parent.parent;
        return i.kind === 264 && t.parent.parent.token === 119 || i.kind === 265 && t.parent.parent.token === 96;
      }
      return !1;
    }
    function iJe(e) {
      switch (CD(e) && (e = e.parent), e.kind) {
        case 110:
          return !fg(e);
        case 198:
          return !0;
      }
      switch (e.parent.kind) {
        case 184:
          return !0;
        case 206:
          return !e.parent.isTypeOf;
        case 234:
          return Sm(e.parent);
      }
      return !1;
    }
    function FV(e, t = !1, n = !1) {
      return sI(e, za, MV, t, n);
    }
    function Bw(e, t = !1, n = !1) {
      return sI(e, Xb, MV, t, n);
    }
    function LV(e, t = !1, n = !1) {
      return sI(e, ym, MV, t, n);
    }
    function tse(e, t = !1, n = !1) {
      return sI(e, xv, aJe, t, n);
    }
    function rse(e, t = !1, n = !1) {
      return sI(e, pl, MV, t, n);
    }
    function nse(e, t = !1, n = !1) {
      return sI(e, Gu, sJe, t, n);
    }
    function MV(e) {
      return e.expression;
    }
    function aJe(e) {
      return e.tag;
    }
    function sJe(e) {
      return e.tagName;
    }
    function sI(e, t, n, i, a) {
      let o = i ? oJe(e) : J9(e);
      return a && (o = Ic(o)), !!o && !!o.parent && t(o.parent) && n(o.parent) === o;
    }
    function J9(e) {
      return sE(e) ? e.parent : e;
    }
    function oJe(e) {
      return sE(e) || JV(e) ? e.parent : e;
    }
    function z9(e, t) {
      for (; e; ) {
        if (e.kind === 257 && e.label.escapedText === t) return e.label;
        e = e.parent;
      }
    }
    function oI(e, t) {
      return Ln(e.expression) ? e.expression.name.text === t : !1;
    }
    function cI(e) {
      var t;
      return Fe(e) && ((t = qn(e.parent, q4)) == null ? void 0 : t.label) === e;
    }
    function RV(e) {
      var t;
      return Fe(e) && ((t = qn(e.parent, c1)) == null ? void 0 : t.label) === e;
    }
    function jV(e) {
      return RV(e) || cI(e);
    }
    function BV(e) {
      var t;
      return ((t = qn(e.parent, KC)) == null ? void 0 : t.tagName) === e;
    }
    function ise(e) {
      var t;
      return ((t = qn(e.parent, k_)) == null ? void 0 : t.right) === e;
    }
    function sE(e) {
      var t;
      return ((t = qn(e.parent, Ln)) == null ? void 0 : t.name) === e;
    }
    function JV(e) {
      var t;
      return ((t = qn(e.parent, Po)) == null ? void 0 : t.argumentExpression) === e;
    }
    function zV(e) {
      var t;
      return ((t = qn(e.parent, Qc)) == null ? void 0 : t.name) === e;
    }
    function WV(e) {
      var t;
      return Fe(e) && ((t = qn(e.parent, Ra)) == null ? void 0 : t.name) === e;
    }
    function W9(e) {
      switch (e.parent.kind) {
        case 173:
        case 172:
        case 304:
        case 307:
        case 175:
        case 174:
        case 178:
        case 179:
        case 268:
          return va(e.parent) === e;
        case 213:
          return e.parent.argumentExpression === e;
        case 168:
          return !0;
        case 202:
          return e.parent.parent.kind === 200;
        default:
          return !1;
      }
    }
    function ase(e) {
      return uv(e.parent.parent) && sD(e.parent.parent) === e;
    }
    function ZS(e) {
      for ($p(e) && (e = e.parent.parent); ; ) {
        if (e = e.parent, !e) return;
        switch (e.kind) {
          case 308:
          case 175:
          case 174:
          case 263:
          case 219:
          case 178:
          case 179:
          case 264:
          case 265:
          case 267:
          case 268:
            return e;
        }
      }
    }
    function o2(e) {
      switch (e.kind) {
        case 308:
          return Sl(e) ? "module" : "script";
        case 268:
          return "module";
        case 264:
        case 232:
          return "class";
        case 265:
          return "interface";
        case 266:
        case 339:
        case 347:
          return "type";
        case 267:
          return "enum";
        case 261:
          return t(e);
        case 209:
          return t(xm(e));
        case 220:
        case 263:
        case 219:
          return "function";
        case 178:
          return "getter";
        case 179:
          return "setter";
        case 175:
        case 174:
          return "method";
        case 304:
          const { initializer: n } = e;
          return Ra(n) ? "method" : "property";
        case 173:
        case 172:
        case 305:
        case 306:
          return "property";
        case 182:
          return "index";
        case 181:
          return "construct";
        case 180:
          return "call";
        case 177:
        case 176:
          return "constructor";
        case 169:
          return "type parameter";
        case 307:
          return "enum member";
        case 170:
          return Qn(e, 31) ? "property" : "parameter";
        case 272:
        case 277:
        case 282:
        case 275:
        case 281:
          return "alias";
        case 227:
          const i = qc(e), { right: a } = e;
          switch (i) {
            case 7:
            case 8:
            case 9:
            case 0:
              return "";
            case 1:
            case 2:
              const c = o2(a);
              return c === "" ? "const" : c;
            case 3:
              return Lo(a) ? "method" : "property";
            case 4:
              return "property";
            case 5:
              return Lo(a) ? "method" : "property";
            case 6:
              return "local class";
            default:
              return "";
          }
        case 80:
          return hd(e.parent) ? "alias" : "";
        case 278:
          const o = o2(e.expression);
          return o === "" ? "const" : o;
        default:
          return "";
      }
      function t(n) {
        return i6(n) ? "const" : v5(n) ? "let" : "var";
      }
    }
    function oE(e) {
      switch (e.kind) {
        case 110:
          return !0;
        case 80:
          return yJ(e) && e.parent.kind === 170;
        default:
          return !1;
      }
    }
    var cJe = /^\/\/\/\s*</;
    function rd(e, t) {
      return Mg(t)[t.getLineAndCharacterOfPosition(e).line];
    }
    function sse(e, t) {
      return lI(e, t.pos) && lI(e, t.end);
    }
    function cE(e, t) {
      return e.pos <= t && t <= e.end;
    }
    function lI(e, t) {
      return e.pos < t && t < e.end;
    }
    function uI(e, t, n) {
      return e.pos <= t && e.end >= n;
    }
    function Jw(e, t, n) {
      return V9(e.pos, e.end, t, n);
    }
    function U9(e, t, n, i) {
      return V9(e.getStart(t), e.end, n, i);
    }
    function V9(e, t, n, i) {
      return Math.max(e, n) < Math.min(t, i);
    }
    function UV(e, t, n) {
      return E.assert(e.pos <= t), t < e.end || !Yd(e, n);
    }
    function Yd(e, t) {
      if (e === void 0 || Nc(e)) return !1;
      switch (e.kind) {
        case 264:
        case 265:
        case 267:
        case 211:
        case 207:
        case 188:
        case 242:
        case 269:
        case 270:
        case 276:
        case 280:
          return VV(e, 20, t);
        case 300:
          return Yd(e.block, t);
        case 215:
          if (!e.arguments) return !0;
        case 214:
        case 218:
        case 197:
          return VV(e, 22, t);
        case 185:
        case 186:
          return Yd(e.type, t);
        case 177:
        case 178:
        case 179:
        case 263:
        case 219:
        case 175:
        case 174:
        case 181:
        case 180:
        case 220:
          return e.body ? Yd(e.body, t) : e.type ? Yd(e.type, t) : qV(e, 22, t);
        case 268:
          return !!e.body && Yd(e.body, t);
        case 246:
          return e.elseStatement ? Yd(e.elseStatement, t) : Yd(e.thenStatement, t);
        case 245:
          return Yd(e.expression, t) || qV(e, 27, t);
        case 210:
        case 208:
        case 213:
        case 168:
        case 190:
          return VV(e, 24, t);
        case 182:
          return e.type ? Yd(e.type, t) : qV(e, 24, t);
        case 297:
        case 298:
          return !1;
        case 249:
        case 250:
        case 251:
        case 248:
          return Yd(e.statement, t);
        case 247:
          return qV(e, 117, t) ? VV(e, 22, t) : Yd(e.statement, t);
        case 187:
          return Yd(e.exprName, t);
        case 222:
        case 221:
        case 223:
        case 230:
        case 231:
          return Yd(e.expression, t);
        case 216:
          return Yd(e.template, t);
        case 229:
          return Yd(Wo(e.templateSpans), t);
        case 240:
          return Gp(e.literal);
        case 279:
        case 273:
          return Gp(e.moduleSpecifier);
        case 225:
          return Yd(e.operand, t);
        case 227:
          return Yd(e.right, t);
        case 228:
          return Yd(e.whenFalse, t);
        default:
          return !0;
      }
    }
    function VV(e, t, n) {
      const i = e.getChildren(n);
      if (i.length) {
        const a = ws(i);
        if (a.kind === t) return !0;
        if (a.kind === 27 && i.length !== 1) return i[i.length - 2].kind === t;
      }
      return !1;
    }
    function ose(e) {
      const t = q9(e);
      if (t)
        return {
          listItemIndex: t6(t.getChildren(), e),
          list: t
        };
    }
    function qV(e, t, n) {
      return !!uo(e, t, n);
    }
    function uo(e, t, n) {
      return xr(e.getChildren(n), (i) => i.kind === t);
    }
    function q9(e) {
      const t = xr(e.parent.getChildren(), (n) => B6(n) && W_(n, e));
      return E.assert(!t || Gi(t.getChildren(), e)), t;
    }
    function p2e(e) {
      return e.kind === 90;
    }
    function lJe(e) {
      return e.kind === 86;
    }
    function uJe(e) {
      return e.kind === 100;
    }
    function _Je(e) {
      if (Bl(e)) return e.name;
      if (sl(e)) {
        const t = e.modifiers && xr(e.modifiers, p2e);
        if (t) return t;
      }
      if (Hc(e)) {
        const t = xr(e.getChildren(), lJe);
        if (t) return t;
      }
    }
    function fJe(e) {
      if (Bl(e)) return e.name;
      if (Xc(e)) {
        const t = xr(e.modifiers, p2e);
        if (t) return t;
      }
      if (Lo(e)) {
        const t = xr(e.getChildren(), uJe);
        if (t) return t;
      }
    }
    function pJe(e) {
      let t;
      return cr(e, (n) => (ui(n) && (t = n), !k_(n.parent) && !ui(n.parent) && !Eb(n.parent))), t;
    }
    function G9(e, t) {
      if (e.flags & 16777216) return;
      const n = cL(e, t);
      if (n) return n;
      const i = pJe(e);
      return i && t.getTypeAtLocation(i);
    }
    function dJe(e, t) {
      if (!t) switch (e.kind) {
        case 264:
        case 232:
          return _Je(e);
        case 263:
        case 219:
          return fJe(e);
        case 177:
          return e;
      }
      if (Bl(e)) return e.name;
    }
    function d2e(e, t) {
      if (e.importClause) {
        if (e.importClause.name && e.importClause.namedBindings) return;
        if (e.importClause.name) return e.importClause.name;
        if (e.importClause.namedBindings) {
          if (Nm(e.importClause.namedBindings)) {
            const n = Fg(e.importClause.namedBindings.elements);
            return n ? n.name : void 0;
          } else if (nh(e.importClause.namedBindings)) return e.importClause.namedBindings.name;
        }
      }
      if (!t) return e.moduleSpecifier;
    }
    function m2e(e, t) {
      if (e.exportClause) {
        if (Pp(e.exportClause))
          return Fg(e.exportClause.elements) ? e.exportClause.elements[0].name : void 0;
        if (gg(e.exportClause)) return e.exportClause.name;
      }
      if (!t) return e.moduleSpecifier;
    }
    function mJe(e) {
      if (e.types.length === 1) return e.types[0].expression;
    }
    function g2e(e, t) {
      const { parent: n } = e;
      if (hs(e) && (t || e.kind !== 90) ? vd(n) && Gi(n.modifiers, e) : e.kind === 86 ? sl(n) || Hc(e) : e.kind === 100 ? Xc(n) || Lo(e) : e.kind === 120 ? au(n) : e.kind === 94 ? l1(n) : e.kind === 156 ? Kp(n) : e.kind === 145 || e.kind === 144 ? Qc(n) : e.kind === 102 ? bl(n) : e.kind === 139 ? Dp(n) : e.kind === 153 && ef(n)) {
        const i = dJe(n, t);
        if (i) return i;
      }
      if ((e.kind === 115 || e.kind === 87 || e.kind === 121) && iu(n) && n.declarations.length === 1) {
        const i = n.declarations[0];
        if (Fe(i.name)) return i.name;
      }
      if (e.kind === 156) {
        if (hd(n) && n.isTypeOnly) {
          const i = d2e(n.parent, t);
          if (i) return i;
        }
        if (tl(n) && n.isTypeOnly) {
          const i = m2e(n, t);
          if (i) return i;
        }
      }
      if (e.kind === 130) {
        if (p_(n) && n.propertyName || $u(n) && n.propertyName || nh(n) || gg(n)) return n.name;
        if (tl(n) && n.exportClause && gg(n.exportClause)) return n.exportClause.name;
      }
      if (e.kind === 102 && ic(n)) {
        const i = d2e(n, t);
        if (i) return i;
      }
      if (e.kind === 95) {
        if (tl(n)) {
          const i = m2e(n, t);
          if (i) return i;
        }
        if (Xo(n)) return Ic(n.expression);
      }
      if (e.kind === 149 && qh(n)) return n.expression;
      if (e.kind === 161 && (ic(n) || tl(n)) && n.moduleSpecifier) return n.moduleSpecifier;
      if ((e.kind === 96 || e.kind === 119) && kf(n) && n.token === e.kind) {
        const i = mJe(n);
        if (i) return i;
      }
      if (e.kind === 96) {
        if ($o(n) && n.constraint && xf(n.constraint)) return n.constraint.typeName;
        if (Hb(n) && xf(n.extendsType)) return n.extendsType.typeName;
      }
      if (e.kind === 140 && OS(n)) return n.typeParameter.name;
      if (e.kind === 103 && $o(n) && LS(n.parent)) return n.name;
      if (e.kind === 143 && Tv(n) && n.operator === 143 && xf(n.type)) return n.type.typeName;
      if (e.kind === 148 && Tv(n) && n.operator === 148 && aN(n.type) && xf(n.type.elementType)) return n.type.elementType.typeName;
      if (!t) {
        if ((e.kind === 105 && Xb(n) || e.kind === 116 && dk(n) || e.kind === 114 && P6(n) || e.kind === 135 && o1(n) || e.kind === 127 && sN(n) || e.kind === 91 && qte(n)) && n.expression)
          return Ic(n.expression);
        if ((e.kind === 103 || e.kind === 104) && un(n) && n.operatorToken === e) return Ic(n.right);
        if (e.kind === 130 && A6(n) && xf(n.type)) return n.type.typeName;
        if (e.kind === 103 && eF(n) || e.kind === 165 && oN(n)) return Ic(n.expression);
      }
      return e;
    }
    function GV(e) {
      return g2e(e, !1);
    }
    function H9(e) {
      return g2e(e, !0);
    }
    function G_(e, t) {
      return lE(e, t, (n) => Tm(n) || z_(n.kind) || Oi(n));
    }
    function lE(e, t, n) {
      return h2e(e, t, !1, n, !1);
    }
    function xi(e, t) {
      return h2e(e, t, !0, void 0, !1);
    }
    function h2e(e, t, n, i, a) {
      let o = e, c;
      e: for (; ; ) {
        const u = o.getChildren(e), d = ux(u, t, (g, h) => h, (g, h) => {
          const S = u[g].getEnd();
          if (S < t) return -1;
          const T = n ? u[g].getFullStart() : u[g].getStart(e, !0);
          return T > t ? 1 : _(u[g], T, S) ? u[g - 1] && _(u[g - 1]) ? 1 : 0 : i && T === t && u[g - 1] && u[g - 1].getEnd() === t && _(u[g - 1]) ? 1 : -1;
        });
        if (c) return c;
        if (d >= 0 && u[d]) {
          o = u[d];
          continue e;
        }
        return o;
      }
      function _(u, d, g) {
        if (g ?? (g = u.getEnd()), g < t || (d ?? (d = n ? u.getFullStart() : u.getStart(e, !0)), d > t)) return !1;
        if (t < g || t === g && (u.kind === 1 || a)) return !0;
        if (i && g === t) {
          const h = Tl(t, e, u);
          if (h && i(h))
            return c = h, !0;
        }
        return !1;
      }
    }
    function cse(e, t) {
      let n = xi(e, t);
      for (; $9(n); ) {
        const i = c2(n, n.parent, e);
        if (!i) return;
        n = i;
      }
      return n;
    }
    function zw(e, t) {
      const n = xi(e, t);
      return Tx(n) && t > n.getStart(e) && t < n.getEnd() ? n : Tl(t, e);
    }
    function c2(e, t, n) {
      return i(t);
      function i(a) {
        return Tx(a) && a.pos === e.end ? a : Hn(a.getChildren(n), (o) => (o.pos <= e.pos && o.end > e.end || o.pos === e.end) && dse(o, n) ? i(o) : void 0);
      }
    }
    function Tl(e, t, n, i) {
      const a = o(n || t);
      return E.assert(!(a && $9(a))), a;
      function o(c) {
        if (y2e(c) && c.kind !== 1) return c;
        const _ = c.getChildren(t), u = ux(_, e, (g, h) => h, (g, h) => e < _[g].end ? !_[g - 1] || e >= _[g - 1].end ? 0 : 1 : -1);
        if (u >= 0 && _[u]) {
          const g = _[u];
          if (e < g.end) if (g.getStart(t, !i) >= e || !dse(g, t) || $9(g)) {
            const h = use(_, u, t, c.kind);
            return h ? !i && i5(h) && h.getChildren(t).length ? o(h) : lse(h, t) : void 0;
          } else return o(g);
        }
        E.assert(n !== void 0 || c.kind === 308 || c.kind === 1 || i5(c));
        const d = use(_, _.length, t, c.kind);
        return d && lse(d, t);
      }
    }
    function y2e(e) {
      return Tx(e) && !$9(e);
    }
    function lse(e, t) {
      if (y2e(e)) return e;
      const n = e.getChildren(t);
      if (n.length === 0) return e;
      const i = use(n, n.length, t, e.kind);
      return i && lse(i, t);
    }
    function use(e, t, n, i) {
      for (let a = t - 1; a >= 0; a--) {
        const o = e[a];
        if ($9(o))
          a === 0 && (i === 12 || i === 286) && E.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");
        else if (dse(e[a], n)) return e[a];
      }
    }
    function Ok(e, t, n = Tl(t, e)) {
      if (n && nB(n)) {
        const i = n.getStart(e), a = n.getEnd();
        if (i < t && t < a) return !0;
        if (t === a) return !!n.isUnterminated;
      }
      return !1;
    }
    function _se(e, t) {
      const n = xi(e, t);
      return n ? !!(n.kind === 12 || n.kind === 30 && n.parent.kind === 12 || n.kind === 30 && n.parent.kind === 295 || n && n.kind === 20 && n.parent.kind === 295 || n.kind === 30 && n.parent.kind === 288) : !1;
    }
    function $9(e) {
      return sk(e) && e.containsOnlyTriviaWhiteSpaces;
    }
    function HV(e, t) {
      const n = xi(e, t);
      return jy(n.kind) && t > n.getStart(e);
    }
    function fse(e, t) {
      const n = xi(e, t);
      return !!(sk(n) || n.kind === 19 && O6(n.parent) && Im(n.parent.parent) || n.kind === 30 && Gu(n.parent) && Im(n.parent.parent));
    }
    function X9(e, t) {
      function n(i) {
        for (; i; ) if (i.kind >= 286 && i.kind <= 295 || i.kind === 12 || i.kind === 30 || i.kind === 32 || i.kind === 80 || i.kind === 20 || i.kind === 19 || i.kind === 44) i = i.parent;
        else if (i.kind === 285) {
          if (t > i.getStart(e)) return !0;
          i = i.parent;
        } else return !1;
        return !1;
      }
      return n(xi(e, t));
    }
    function Q9(e, t, n) {
      const i = as(e.kind), a = as(t), o = e.getFullStart(), c = n.text.lastIndexOf(a, o);
      if (c === -1) return;
      if (n.text.lastIndexOf(i, o - 1) < c) {
        const d = Tl(c + 1, n);
        if (d && d.kind === t) return d;
      }
      const _ = e.kind;
      let u = 0;
      for (; ; ) {
        const d = Tl(e.getFullStart(), n);
        if (!d) return;
        if (e = d, e.kind === t) {
          if (u === 0) return e;
          u--;
        } else e.kind === _ && u++;
      }
    }
    function gJe(e, t, n) {
      return t ? e.getNonNullableType() : n ? e.getNonOptionalType() : e;
    }
    function _I(e, t, n) {
      const i = XV(e, t);
      return i !== void 0 && (Sm(i.called) || $V(i.called, i.nTypeArguments, n).length !== 0 || _I(i.called, t, n));
    }
    function $V(e, t, n) {
      let i = n.getTypeAtLocation(e);
      return Vu(e.parent) && (i = gJe(i, U4(e.parent), !0)), (Xb(e.parent) ? i.getConstructSignatures() : i.getCallSignatures()).filter((a) => !!a.typeParameters && a.typeParameters.length >= t);
    }
    function XV(e, t) {
      if (t.text.lastIndexOf("<", e ? e.pos : t.text.length) === -1) return;
      let n = e, i = 0, a = 0;
      for (; n; ) {
        switch (n.kind) {
          case 30:
            if (n = Tl(n.getFullStart(), t), n && n.kind === 29 && (n = Tl(n.getFullStart(), t)), !n || !Fe(n)) return;
            if (!i) return pg(n) ? void 0 : {
              called: n,
              nTypeArguments: a
            };
            i--;
            break;
          case 50:
            i = 3;
            break;
          case 49:
            i = 2;
            break;
          case 32:
            i++;
            break;
          case 20:
            if (n = Q9(n, 19, t), !n) return;
            break;
          case 22:
            if (n = Q9(n, 21, t), !n) return;
            break;
          case 24:
            if (n = Q9(n, 23, t), !n) return;
            break;
          case 28:
            a++;
            break;
          case 39:
          case 80:
          case 11:
          case 9:
          case 10:
          case 112:
          case 97:
          case 114:
          case 96:
          case 143:
          case 25:
          case 52:
          case 58:
          case 59:
            break;
          default:
            if (ui(n)) break;
            return;
        }
        n = Tl(n.getFullStart(), t);
      }
    }
    function W0(e, t, n) {
      return dl.getRangeOfEnclosingComment(e, t, void 0, n);
    }
    function pse(e, t) {
      return !!cr(xi(e, t), Hd);
    }
    function dse(e, t) {
      return e.kind === 1 ? !!e.jsDoc : e.getWidth(t) !== 0;
    }
    function Ww(e, t = 0) {
      const n = [], i = Jl(e) ? qj(e) & ~t : 0;
      return i & 2 && n.push("private"), i & 4 && n.push("protected"), i & 1 && n.push("public"), (i & 256 || Bc(e)) && n.push("static"), i & 64 && n.push("abstract"), i & 32 && n.push("export"), i & 65536 && n.push("deprecated"), e.flags & 33554432 && n.push("declare"), e.kind === 278 && n.push("export"), n.length > 0 ? n.join(",") : "";
    }
    function mse(e) {
      if (e.kind === 184 || e.kind === 214) return e.typeArguments;
      if (Ra(e) || e.kind === 264 || e.kind === 265) return e.typeParameters;
    }
    function Y9(e) {
      return e === 2 || e === 3;
    }
    function QV(e) {
      return !!(e === 11 || e === 14 || jy(e));
    }
    function v2e(e, t, n) {
      return !!(t.flags & 32) && e.isEmptyAnonymousObjectType(n);
    }
    function gse(e) {
      if (!e.isIntersection()) return !1;
      const { types: t, checker: n } = e;
      return t.length === 2 && (v2e(n, t[0], t[1]) || v2e(n, t[1], t[0]));
    }
    function fI(e, t, n) {
      return jy(e.kind) && e.getStart(n) < t && t < e.end || !!e.isUnterminated && t === e.end;
    }
    function YV(e) {
      switch (e) {
        case 125:
        case 123:
        case 124:
          return !0;
      }
      return !1;
    }
    function ZV(e) {
      const t = gQ(e);
      return TW(t, e && e.configFile), t;
    }
    function U0(e) {
      return !!((e.kind === 210 || e.kind === 211) && (e.parent.kind === 227 && e.parent.left === e && e.parent.operatorToken.kind === 64 || e.parent.kind === 251 && e.parent.initializer === e || U0(e.parent.kind === 304 ? e.parent.parent : e.parent)));
    }
    function hse(e, t) {
      return b2e(e, t, !0);
    }
    function yse(e, t) {
      return b2e(e, t, !1);
    }
    function b2e(e, t, n) {
      const i = W0(e, t, void 0);
      return !!i && n === cJe.test(e.text.substring(i.pos, i.end));
    }
    function KV(e, t) {
      if (e)
        switch (e.kind) {
          case 11:
          case 15:
            return eq(e, t);
          default:
            return P_(e);
        }
    }
    function P_(e, t, n) {
      return Vc(e.getStart(t), (n || e).getEnd());
    }
    function eq(e, t) {
      let n = e.getEnd() - 1;
      if (e.isUnterminated) {
        if (e.getStart() === n) return;
        n = Math.min(t, e.getEnd());
      }
      return Vc(e.getStart() + 1, n);
    }
    function tq(e, t) {
      return bf(e.getStart(t), e.end);
    }
    function V0(e) {
      return Vc(e.pos, e.end);
    }
    function Z9(e) {
      return bf(e.start, e.start + e.length);
    }
    function K9(e, t, n) {
      return pI(du(e, t), n);
    }
    function pI(e, t) {
      return {
        span: e,
        newText: t
      };
    }
    var rq = [
      133,
      131,
      163,
      136,
      97,
      140,
      143,
      146,
      106,
      150,
      151,
      148,
      154,
      155,
      114,
      112,
      116,
      157,
      158,
      159
    ];
    function Uw(e) {
      return Gi(rq, e);
    }
    function S2e(e) {
      return e.kind === 156;
    }
    function eL(e) {
      return S2e(e) || Fe(e) && e.text === "type";
    }
    function uE() {
      const e = [];
      return (t) => {
        const n = Hs(t);
        return !e[n] && (e[n] = !0);
      };
    }
    function Fk(e) {
      return e.getText(0, e.getLength());
    }
    function dI(e, t) {
      let n = "";
      for (let i = 0; i < t; i++) n += e;
      return n;
    }
    function nq(e) {
      return e.isTypeParameter() && e.getConstraint() || e;
    }
    function mI(e) {
      return e.kind === 168 ? ep(e.expression) ? e.expression.text : void 0 : Oi(e) ? On(e) : Xp(e);
    }
    function vse(e) {
      return e.getSourceFiles().some((t) => !t.isDeclarationFile && !e.isSourceFileFromExternalLibrary(t) && !!(t.externalModuleIndicator || t.commonJsModuleIndicator));
    }
    function bse(e) {
      return e.getSourceFiles().some((t) => !t.isDeclarationFile && !e.isSourceFileFromExternalLibrary(t) && !!t.externalModuleIndicator);
    }
    function iq(e) {
      return !!e.module || Ps(e) >= 2 || !!e.noEmit;
    }
    function Bv(e, t) {
      return {
        fileExists: (n) => e.fileExists(n),
        getCurrentDirectory: () => t.getCurrentDirectory(),
        readFile: Ua(t, t.readFile),
        useCaseSensitiveFileNames: Ua(t, t.useCaseSensitiveFileNames) || e.useCaseSensitiveFileNames,
        getSymlinkCache: Ua(t, t.getSymlinkCache) || e.getSymlinkCache,
        getModuleSpecifierCache: Ua(t, t.getModuleSpecifierCache),
        getPackageJsonInfoCache: () => {
          var n;
          return (n = e.getModuleResolutionCache()) == null ? void 0 : n.getPackageJsonInfoCache();
        },
        getGlobalTypingsCacheLocation: Ua(t, t.getGlobalTypingsCacheLocation),
        redirectTargetsMap: e.redirectTargetsMap,
        getRedirectFromSourceFile: (n) => e.getRedirectFromSourceFile(n),
        isSourceOfProjectReferenceRedirect: (n) => e.isSourceOfProjectReferenceRedirect(n),
        getNearestAncestorDirectoryWithPackageJson: Ua(t, t.getNearestAncestorDirectoryWithPackageJson),
        getFileIncludeReasons: () => e.getFileIncludeReasons(),
        getCommonSourceDirectory: () => e.getCommonSourceDirectory(),
        getDefaultResolutionModeForFile: (n) => e.getDefaultResolutionModeForFile(n),
        getModeForResolutionAtIndex: (n, i) => e.getModeForResolutionAtIndex(n, i)
      };
    }
    function aq(e, t) {
      return {
        ...Bv(e, t),
        getCommonSourceDirectory: () => e.getCommonSourceDirectory()
      };
    }
    function tL(e) {
      return e === 2 || e >= 3 && e <= 99 || e === 100;
    }
    function y1(e, t, n, i, a) {
      return A.createImportDeclaration(void 0, e || t ? A.createImportClause(a ? 156 : void 0, e, t && t.length ? A.createNamedImports(t) : void 0) : void 0, typeof n == "string" ? Vw(n, i) : n, void 0);
    }
    function Vw(e, t) {
      return A.createStringLiteral(e, t === 0);
    }
    var Sse = /* @__PURE__ */ ((e) => (e[e.Single = 0] = "Single", e[e.Double = 1] = "Double", e))(Sse || {});
    function sq(e, t) {
      return L5(e, t) ? 1 : 0;
    }
    function Df(e, t) {
      if (t.quotePreference && t.quotePreference !== "auto") return t.quotePreference === "single" ? 0 : 1;
      {
        const n = Hg(e) && e.imports && xr(e.imports, (i) => Ts(i) && !wo(i.parent));
        return n ? sq(n, e) : 1;
      }
    }
    function oq(e) {
      switch (e) {
        case 0:
          return "'";
        case 1:
          return '"';
        default:
          return E.assertNever(e);
      }
    }
    function cq(e) {
      const t = rL(e);
      return t === void 0 ? void 0 : Ti(t);
    }
    function rL(e) {
      return e.escapedName !== "default" ? e.escapedName : Hn(e.declarations, (t) => {
        const n = va(t);
        return n && n.kind === 80 ? n.escapedText : void 0;
      });
    }
    function nL(e) {
      return Xs(e) && (qh(e.parent) || ic(e.parent) || Fm(e.parent) || J_(e.parent, !1) && e.parent.arguments[0] === e || B_(e.parent) && e.parent.arguments[0] === e);
    }
    function gI(e) {
      return Ns(e) && rp(e.parent) && Fe(e.name) && !e.propertyName;
    }
    function iL(e, t) {
      const n = e.getTypeAtLocation(t.parent);
      return n && e.getPropertyOfType(n, t.name.text);
    }
    function hI(e, t, n) {
      if (e)
        for (; e.parent; ) {
          if (Pi(e.parent) || !hJe(n, e.parent, t)) return e;
          e = e.parent;
        }
    }
    function hJe(e, t, n) {
      return Wj(e, t.getStart(n)) && t.getEnd() <= dc(e);
    }
    function _E(e, t) {
      return vd(e) ? xr(e.modifiers, (n) => n.kind === t) : void 0;
    }
    function lq(e, t, n, i, a) {
      var o;
      const c = (da(n) ? n[0] : n).kind === 244 ? iA : Nx, _ = dn(t.statements, c), { comparer: u, isSorted: d } = Gv.getOrganizeImportsStringComparerWithDetection(_, a), g = da(n) ? uf(n, (h, S) => Gv.compareImportsOrRequireStatements(h, S, u)) : [n];
      if (!_?.length) {
        if (Hg(t)) e.insertNodesAtTopOfFile(t, g, i);
        else for (const h of g) e.insertStatementsInNewFile(t.fileName, [h], (o = rc(h)) == null ? void 0 : o.getSourceFile());
        return;
      }
      if (E.assert(Hg(t)), _ && d) for (const h of g) {
        const S = Gv.getImportDeclarationInsertionIndex(_, h, u);
        if (S === 0) {
          const T = _[0] === t.statements[0] ? { leadingTriviaOption: on.LeadingTriviaOption.Exclude } : {};
          e.insertNodeBefore(t, _[0], h, !1, T);
        } else {
          const T = _[S - 1];
          e.insertNodeAfter(t, T, h);
        }
      }
      else {
        const h = Wo(_);
        h ? e.insertNodesAfter(t, h, g) : e.insertNodesAtTopOfFile(t, g, i);
      }
    }
    function uq(e, t) {
      return E.assert(e.isTypeOnly), ns(e.getChildAt(0, t), S2e);
    }
    function fE(e, t) {
      return !!e && !!t && e.start === t.start && e.length === t.length;
    }
    function _q(e, t, n) {
      return (n ? nS : ev)(e.fileName, t.fileName) && fE(e.textSpan, t.textSpan);
    }
    function fq(e) {
      return (t, n) => _q(t, n, e);
    }
    function pq(e, t) {
      if (e) {
        for (let n = 0; n < e.length; n++) if (e.indexOf(e[n]) === n) {
          const i = t(e[n], n);
          if (i) return i;
        }
      }
    }
    function Tse(e, t, n) {
      for (let i = t; i < n; i++) if (!Rg(e.charCodeAt(i))) return !1;
      return !0;
    }
    function qw(e, t, n) {
      const i = t.tryGetSourcePosition(e);
      return i && (!n || n(us(i.fileName)) ? i : void 0);
    }
    function aL(e, t, n) {
      const { fileName: i, textSpan: a } = e, o = qw({
        fileName: i,
        pos: a.start
      }, t, n);
      if (!o) return;
      const c = qw({
        fileName: i,
        pos: a.start + a.length
      }, t, n), _ = c ? c.pos - o.pos : a.length;
      return {
        fileName: o.fileName,
        textSpan: {
          start: o.pos,
          length: _
        },
        originalFileName: e.fileName,
        originalTextSpan: e.textSpan,
        contextSpan: dq(e, t, n),
        originalContextSpan: e.contextSpan
      };
    }
    function dq(e, t, n) {
      const i = e.contextSpan && qw({
        fileName: e.fileName,
        pos: e.contextSpan.start
      }, t, n), a = e.contextSpan && qw({
        fileName: e.fileName,
        pos: e.contextSpan.start + e.contextSpan.length
      }, t, n);
      return i && a ? {
        start: i.pos,
        length: a.pos - i.pos
      } : void 0;
    }
    function mq(e) {
      return !!cr(e.declarations ? ul(e.declarations) : void 0, (t) => Fi(t) ? !0 : Ns(t) || rp(t) || J0(t) ? !1 : "quit");
    }
    var xse = /* @__PURE__ */ new Map();
    function yJe(e) {
      return e = e || Z4, xse.has(e) || xse.set(e, vJe(e)), xse.get(e);
    }
    function vJe(e) {
      const t = e * 10;
      let n, i, a, o;
      h();
      const c = (S) => u(S, 17);
      return {
        displayParts: () => {
          const S = n.length && n[n.length - 1].text;
          return o > t && S && S !== "..." && (Rg(S.charCodeAt(S.length - 1)) || n.push(tf(" ", 16)), n.push(tf("...", 15))), n;
        },
        writeKeyword: (S) => u(S, 5),
        writeOperator: (S) => u(S, 12),
        writePunctuation: (S) => u(S, 15),
        writeTrailingSemicolon: (S) => u(S, 15),
        writeSpace: (S) => u(S, 16),
        writeStringLiteral: (S) => u(S, 8),
        writeParameter: (S) => u(S, 13),
        writeProperty: (S) => u(S, 14),
        writeLiteral: (S) => u(S, 8),
        writeSymbol: d,
        writeLine: g,
        write: c,
        writeComment: c,
        getText: () => "",
        getTextPos: () => 0,
        getColumn: () => 0,
        getLine: () => 0,
        isAtStartOfLine: () => !1,
        hasTrailingWhitespace: () => !1,
        hasTrailingComment: () => !1,
        rawWrite: is,
        getIndent: () => a,
        increaseIndent: () => {
          a++;
        },
        decreaseIndent: () => {
          a--;
        },
        clear: h
      };
      function _() {
        if (!(o > t) && i) {
          const S = G5(a);
          S && (o += S.length, n.push(tf(S, 16))), i = !1;
        }
      }
      function u(S, T) {
        o > t || (_(), o += S.length, n.push(tf(S, T)));
      }
      function d(S, T) {
        o > t || (_(), o += S.length, n.push(bJe(S, T)));
      }
      function g() {
        o > t || (o += 1, n.push(pE()), i = !0);
      }
      function h() {
        n = [], i = !0, a = 0, o = 0;
      }
    }
    function bJe(e, t) {
      return tf(e, n(t));
      function n(i) {
        const a = i.flags;
        return a & 3 ? mq(i) ? 13 : 9 : a & 4 || a & 32768 || a & 65536 ? 14 : a & 8 ? 19 : a & 16 ? 20 : a & 32 ? 1 : a & 64 ? 4 : a & 384 ? 2 : a & 1536 ? 11 : a & 8192 ? 10 : a & 262144 ? 18 : a & 524288 || a & 2097152 ? 0 : 17;
      }
    }
    function tf(e, t) {
      return {
        text: e,
        kind: R9[t]
      };
    }
    function Ec() {
      return tf(" ", 16);
    }
    function wf(e) {
      return tf(as(e), 5);
    }
    function Yu(e) {
      return tf(as(e), 15);
    }
    function Gw(e) {
      return tf(as(e), 12);
    }
    function kse(e) {
      return tf(e, 13);
    }
    function Cse(e) {
      return tf(e, 14);
    }
    function gq(e) {
      const t = oS(e);
      return t === void 0 ? sp(e) : wf(t);
    }
    function sp(e) {
      return tf(e, 17);
    }
    function Ese(e) {
      return tf(e, 0);
    }
    function Dse(e) {
      return tf(e, 18);
    }
    function wse(e) {
      return tf(e, 24);
    }
    function SJe(e, t) {
      return {
        text: e,
        kind: R9[23],
        target: {
          fileName: Sr(t).fileName,
          textSpan: P_(t)
        }
      };
    }
    function T2e(e) {
      return tf(e, 22);
    }
    function Pse(e, t) {
      var n;
      const i = [T2e(`{@${ere(e) ? "link" : tre(e) ? "linkcode" : "linkplain"} `)];
      if (!e.name)
        e.text && i.push(wse(e.text));
      else {
        const a = t?.getSymbolAtLocation(e.name), o = a && t ? vq(a, t) : void 0, c = xJe(e.text), _ = uc(e.name) + e.text.slice(0, c), u = TJe(e.text.slice(c)), d = o?.valueDeclaration || ((n = o?.declarations) == null ? void 0 : n[0]);
        if (d)
          i.push(SJe(_, d)), u && i.push(wse(u));
        else {
          const g = c === 0 || e.text.charCodeAt(c) === 124 && _.charCodeAt(_.length - 1) !== 32 ? " " : "";
          i.push(wse(_ + g + u));
        }
      }
      return i.push(T2e("}")), i;
    }
    function TJe(e) {
      let t = 0;
      if (e.charCodeAt(t++) === 124) {
        for (; t < e.length && e.charCodeAt(t) === 32; ) t++;
        return e.slice(t);
      }
      return e;
    }
    function xJe(e) {
      let t = e.indexOf("://");
      if (t === 0) {
        for (; t < e.length && e.charCodeAt(t) !== 124; ) t++;
        return t;
      }
      if (e.indexOf("()") === 0) return 2;
      if (e.charAt(0) === "<") {
        let n = 0, i = 0;
        for (; i < e.length; )
          if (e[i] === "<" && n++, e[i] === ">" && n--, i++, !n) return i;
      }
      return 0;
    }
    var kJe = `
`;
    function Xh(e, t) {
      var n;
      return t?.newLineCharacter || ((n = e.getNewLine) == null ? void 0 : n.call(e)) || kJe;
    }
    function pE() {
      return tf(`
`, 6);
    }
    function v1(e, t) {
      const n = yJe(t);
      try {
        return e(n), n.displayParts();
      } finally {
        n.clear();
      }
    }
    function yI(e, t, n, i = 0, a, o, c) {
      return v1((_) => {
        e.writeType(t, n, i | 17408, _, a, o, c);
      }, a);
    }
    function Hw(e, t, n, i, a = 0) {
      return v1((o) => {
        e.writeSymbol(t, n, i, a | 8, o);
      });
    }
    function hq(e, t, n, i = 0, a, o, c) {
      return i |= 25632, v1((_) => {
        e.writeSignature(t, n, i, void 0, _, a, o, c);
      }, a);
    }
    function Ase(e) {
      return !!e.parent && By(e.parent) && e.parent.propertyName === e;
    }
    function yq(e, t) {
      return TO(e, t.getScriptKind && t.getScriptKind(e));
    }
    function vq(e, t) {
      let n = e;
      for (; CJe(n) || Ug(n) && n.links.target; ) Ug(n) && n.links.target ? n = n.links.target : n = mu(n, t);
      return n;
    }
    function CJe(e) {
      return (e.flags & 2097152) !== 0;
    }
    function Nse(e, t) {
      return ss(mu(e, t));
    }
    function Ise(e, t) {
      for (; Rg(e.charCodeAt(t)); ) t += 1;
      return t;
    }
    function sL(e, t) {
      for (; t > -1 && hm(e.charCodeAt(t)); ) t -= 1;
      return t + 1;
    }
    function KS(e, t) {
      const n = e.getSourceFile(), i = n.text;
      EJe(e, i) ? dE(e, t, n) : bI(e, t, n), $w(e, t, n);
    }
    function EJe(e, t) {
      const n = e.getFullStart(), i = e.getStart();
      for (let a = n; a < i; a++) if (t.charCodeAt(a) === 10) return !0;
      return !1;
    }
    function eT(e, t) {
      let n = e;
      for (let i = 1; !f5(t, n); i++) n = `${e}_${i}`;
      return n;
    }
    function vI(e, t, n, i) {
      let a = 0, o = -1;
      for (const { fileName: c, textChanges: _ } of e) {
        E.assert(c === t);
        for (const u of _) {
          const { span: d, newText: g } = u, h = DJe(g, dg(n));
          if (h !== -1 && (o = d.start + a + h, !i))
            return o;
          a += g.length - d.length;
        }
      }
      return E.assert(i), E.assert(o >= 0), o;
    }
    function dE(e, t, n, i, a) {
      y3(n.text, e.pos, Ose(t, n, i, a, i1));
    }
    function $w(e, t, n, i, a) {
      v3(n.text, e.end, Ose(t, n, i, a, QD));
    }
    function bI(e, t, n, i, a) {
      v3(n.text, e.pos, Ose(t, n, i, a, i1));
    }
    function Ose(e, t, n, i, a) {
      return (o, c, _, u) => {
        _ === 3 ? (o += 2, c -= 2) : o += 2, a(e, n || _, t.text.slice(o, c), i !== void 0 ? i : u);
      };
    }
    function DJe(e, t) {
      if (ta(e, t)) return 0;
      let n = e.indexOf(" " + t);
      return n === -1 && (n = e.indexOf("." + t)), n === -1 && (n = e.indexOf('"' + t)), n === -1 ? -1 : n + 1;
    }
    function oL(e) {
      return un(e) && e.operatorToken.kind === 28 || bs(e) || (A6(e) || N6(e)) && bs(e.expression);
    }
    function cL(e, t, n) {
      const i = dd(e.parent);
      switch (i.kind) {
        case 215:
          return t.getContextualType(i, n);
        case 227: {
          const { left: a, operatorToken: o, right: c } = i;
          return lL(o.kind) ? t.getTypeAtLocation(e === c ? a : c) : t.getContextualType(e, n);
        }
        case 297:
          return Sq(i, t);
        default:
          return t.getContextualType(e, n);
      }
    }
    function Xw(e, t, n) {
      const i = Df(e, t), a = JSON.stringify(n);
      return i === 0 ? `'${Qp(a).replace(/'/g, () => "\\'").replace(/\\"/g, '"')}'` : a;
    }
    function lL(e) {
      switch (e) {
        case 37:
        case 35:
        case 38:
        case 36:
          return !0;
        default:
          return !1;
      }
    }
    function Fse(e) {
      switch (e.kind) {
        case 11:
        case 15:
        case 229:
        case 216:
          return !0;
        default:
          return !1;
      }
    }
    function bq(e) {
      return !!e.getStringIndexType() || !!e.getNumberIndexType();
    }
    function Sq(e, t) {
      return t.getTypeAtLocation(e.parent.parent.expression);
    }
    var Tq = "anonymous function";
    function Qw(e, t, n, i) {
      const a = n.getTypeChecker();
      let o = !0;
      const c = () => o = !1, _ = a.typeToTypeNode(e, t, 1, 8, {
        trackSymbol: (u, d, g) => (o = o && a.isSymbolAccessible(u, d, g, !1).accessibility === 0, !o),
        reportInaccessibleThisError: c,
        reportPrivateInBaseOfClassExpression: c,
        reportInaccessibleUniqueSymbolError: c,
        moduleResolverHost: aq(n, i)
      });
      return o ? _ : void 0;
    }
    function Lse(e) {
      return e === 180 || e === 181 || e === 182 || e === 172 || e === 174;
    }
    function x2e(e) {
      return e === 263 || e === 177 || e === 175 || e === 178 || e === 179;
    }
    function k2e(e) {
      return e === 268;
    }
    function Mse(e) {
      return e === 244 || e === 245 || e === 247 || e === 252 || e === 253 || e === 254 || e === 258 || e === 260 || e === 173 || e === 266 || e === 273 || e === 272 || e === 279 || e === 271 || e === 278;
    }
    var wJe = _f(Lse, x2e, k2e, Mse);
    function PJe(e, t) {
      const n = e.getLastToken(t);
      if (n && n.kind === 27) return !1;
      if (Lse(e.kind)) {
        if (n && n.kind === 28) return !1;
      } else if (k2e(e.kind)) {
        const a = ws(e.getChildren(t));
        if (a && Vd(a)) return !1;
      } else if (x2e(e.kind)) {
        const a = ws(e.getChildren(t));
        if (a && Ib(a)) return !1;
      } else if (!Mse(e.kind)) return !1;
      if (e.kind === 247) return !0;
      const i = c2(e, cr(e, (a) => !a.parent), t);
      return !i || i.kind === 20 ? !0 : t.getLineAndCharacterOfPosition(e.getEnd()).line !== t.getLineAndCharacterOfPosition(i.getStart(t)).line;
    }
    function uL(e, t, n) {
      const i = cr(t, (a) => a.end !== e ? "quit" : wJe(a.kind));
      return !!i && PJe(i, n);
    }
    function SI(e) {
      let t = 0, n = 0;
      const i = 5;
      return Fa(e, function a(o) {
        if (Mse(o.kind)) {
          const c = o.getLastToken(e);
          c?.kind === 27 ? t++ : n++;
        } else if (Lse(o.kind)) {
          const c = o.getLastToken(e);
          c?.kind === 27 ? t++ : c && c.kind !== 28 && Za(e, c.getStart(e)).line !== Za(e, _g(e, c.end).start).line && n++;
        }
        return t + n >= i ? !0 : Fa(o, a);
      }), t === 0 && n <= 1 ? !0 : t / n > 1 / i;
    }
    function _L(e, t) {
      return Rse(e, e.getDirectories, t) || [];
    }
    function xq(e, t, n, i, a) {
      return Rse(e, e.readDirectory, t, n, i, a) || Te;
    }
    function Yw(e, t) {
      return Rse(e, e.fileExists, t);
    }
    function fL(e, t) {
      return pL(() => zd(t, e)) || !1;
    }
    function pL(e) {
      try {
        return e();
      } catch {
        return;
      }
    }
    function Rse(e, t, ...n) {
      return pL(() => t && t.apply(e, n));
    }
    function kq(e, t) {
      const n = [];
      return hg(t, e, (i) => {
        const a = jn(i, "package.json");
        Yw(t, a) && n.push(a);
      }), n;
    }
    function jse(e, t) {
      let n;
      return hg(t, e, (i) => {
        if (i === "node_modules" || (n = kU(i, (a) => Yw(t, a), "package.json"), n)) return !0;
      }), n;
    }
    function AJe(e, t) {
      if (!t.fileExists) return [];
      const n = [];
      return hg(t, Xn(e), (i) => {
        const a = jn(i, "package.json");
        if (t.fileExists(a)) {
          const o = Cq(a, t);
          o && n.push(o);
        }
      }), n;
    }
    function Cq(e, t) {
      if (!t.readFile) return;
      const n = [
        "dependencies",
        "devDependencies",
        "optionalDependencies",
        "peerDependencies"
      ], i = NA(t.readFile(e) || ""), a = {};
      if (i) for (const _ of n) {
        const u = i[_];
        if (!u) continue;
        const d = /* @__PURE__ */ new Map();
        for (const g in u) d.set(g, u[g]);
        a[_] = d;
      }
      const o = [
        [1, a.dependencies],
        [2, a.devDependencies],
        [8, a.optionalDependencies],
        [4, a.peerDependencies]
      ];
      return {
        ...a,
        parseable: !!i,
        fileName: e,
        get: c,
        has(_, u) {
          return !!c(_, u);
        }
      };
      function c(_, u = 15) {
        for (const [d, g] of o) if (g && u & d) {
          const h = g.get(_);
          if (h !== void 0) return h;
        }
      }
    }
    function mE(e, t, n) {
      const i = (n.getPackageJsonsVisibleToFile && n.getPackageJsonsVisibleToFile(e.fileName) || AJe(e.fileName, n)).filter((k) => k.parseable);
      let a, o, c;
      return {
        allowsImportingAmbientModule: u,
        getSourceFileInfo: d,
        allowsImportingSpecifier: g
      };
      function _(k) {
        const D = T(k);
        for (const P of i) if (P.has(D) || P.has(zF(D))) return !0;
        return !1;
      }
      function u(k, D) {
        if (!i.length || !k.valueDeclaration) return !0;
        if (!o) o = /* @__PURE__ */ new Map();
        else {
          const R = o.get(k);
          if (R !== void 0) return R;
        }
        const P = Qp(k.getName());
        if (h(P))
          return o.set(k, !0), !0;
        const N = S(k.valueDeclaration.getSourceFile().fileName, D);
        if (typeof N > "u")
          return o.set(k, !0), !0;
        const M = _(N) || _(P);
        return o.set(k, M), M;
      }
      function d(k, D) {
        if (!i.length) return {
          importable: !0,
          packageName: void 0
        };
        if (!c) c = /* @__PURE__ */ new Map();
        else {
          const M = c.get(k);
          if (M !== void 0) return M;
        }
        const P = S(k.fileName, D);
        if (!P) {
          const M = {
            importable: !0,
            packageName: P
          };
          return c.set(k, M), M;
        }
        const N = {
          importable: _(P),
          packageName: P
        };
        return c.set(k, N), N;
      }
      function g(k) {
        return !i.length || h(k) || Bf(k) || pf(k) ? !0 : _(k);
      }
      function h(k) {
        return !!(Hg(e) && T_(e) && nk.has(k) && (a === void 0 && (a = dL(e)), a));
      }
      function S(k, D) {
        if (!k.includes("node_modules")) return;
        const P = $h.getNodeModulesPackageName(n.getCompilationSettings(), e, k, D, t);
        if (P && !Bf(P) && !pf(P))
          return T(P);
      }
      function T(k) {
        const D = wu(vw(k)).slice(1);
        return ta(D[0], "@") ? `${D[0]}/${D[1]}` : D[0];
      }
    }
    function dL(e) {
      return _t(e.imports, ({ text: t }) => nk.has(t));
    }
    function TI(e) {
      return Gi(wu(e), "node_modules");
    }
    function C2e(e) {
      return e.file !== void 0 && e.start !== void 0 && e.length !== void 0;
    }
    function Bse(e, t) {
      const n = ux(t, P_(e), mo, S7);
      if (n >= 0) {
        const i = t[n];
        return E.assertEqual(i.file, e.getSourceFile(), "Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"), ns(i, C2e);
      }
    }
    function Jse(e, t) {
      var n;
      let i = ux(t, e.start, (c) => c.start, Fo);
      for (i < 0 && (i = ~i); ((n = t[i - 1]) == null ? void 0 : n.start) === e.start; ) i--;
      const a = [], o = dc(e);
      for (; ; ) {
        const c = qn(t[i], C2e);
        if (!c || c.start > o) break;
        tZ(e, c) && a.push(c), i++;
      }
      return a;
    }
    function Lk({ startPosition: e, endPosition: t }) {
      return Vc(e, t === void 0 ? e : t);
    }
    function Eq(e, t) {
      return cr(xi(e, t.start), (n) => n.getStart(e) < t.start || n.getEnd() > dc(t) ? "quit" : dt(n) && fE(t, P_(n, e)));
    }
    function Dq(e, t, n = mo) {
      return e ? da(e) ? n(or(e, t)) : t(e, 0) : void 0;
    }
    function wq(e) {
      return da(e) ? js(e) : e;
    }
    function mL(e, t, n) {
      return e.escapedName === "export=" || e.escapedName === "default" ? Pq(e) || xI(NJe(e), t, !!n) : e.name;
    }
    function Pq(e) {
      return Hn(e.declarations, (t) => {
        var n, i, a;
        if (Xo(t)) return (n = qn(Ic(t.expression), Fe)) == null ? void 0 : n.text;
        if ($u(t) && t.symbol.flags === 2097152) return (i = qn(t.propertyName, Fe)) == null ? void 0 : i.text;
        const o = (a = qn(va(t), Fe)) == null ? void 0 : a.text;
        if (o) return o;
        if (e.parent && !Dx(e.parent)) return e.parent.getName();
      });
    }
    function NJe(e) {
      var t;
      return E.checkDefined(e.parent, `Symbol parent was undefined. Flags: ${E.formatSymbolFlags(e.flags)}. Declarations: ${(t = e.declarations) == null ? void 0 : t.map((n) => {
        const i = E.formatSyntaxKind(n.kind), a = rn(n), { expression: o } = n;
        return (a ? "[JS]" : "") + i + (o ? ` (expression: ${E.formatSyntaxKind(o.kind)})` : "");
      }).join(", ")}.`);
    }
    function xI(e, t, n) {
      return kI(__(Qp(e.name)), t, n);
    }
    function kI(e, t, n) {
      const i = nl(zC(__(e), "/index"));
      let a = "", o = !0;
      const c = i.charCodeAt(0);
      sg(c, t) ? (a += String.fromCharCode(c), n && (a = a.toUpperCase())) : o = !1;
      for (let _ = 1; _ < i.length; _++) {
        const u = i.charCodeAt(_), d = jh(u, t);
        if (d) {
          let g = String.fromCharCode(u);
          o || (g = g.toUpperCase()), a += g;
        }
        o = d;
      }
      return Jx(a) ? `_${a}` : a || "_";
    }
    function zse(e, t, n) {
      const i = t.length;
      if (i + n > e.length) return !1;
      for (let a = 0; a < i; a++) if (t.charCodeAt(a) !== e.charCodeAt(a + n)) return !1;
      return !0;
    }
    function Aq(e) {
      return e.charCodeAt(0) === 95;
    }
    function gL(e) {
      return !!(qj(e) & 65536);
    }
    function hL(e, t) {
      let n;
      for (const i of e.imports) if (nk.has(i.text) && !jO.has(i.text)) {
        if (ta(i.text, "node:")) return !0;
        n = !1;
      }
      return n ?? t.usesUriStyleNodeCoreModules;
    }
    function CI(e) {
      return e === `
` ? 1 : 0;
    }
    function l2(e) {
      return da(e) ? Yg(Oa(e[0]), e.slice(1)) : Oa(e);
    }
    function yL({ options: e }, t) {
      const n = !e.semicolons || e.semicolons === "ignore", i = e.semicolons === "remove" || n && !SI(t);
      return {
        ...e,
        semicolons: i ? "remove" : "ignore"
      };
    }
    function Nq(e) {
      return e === 2 || e === 3;
    }
    function gE(e, t) {
      return e.isSourceFileFromExternalLibrary(t) || e.isSourceFileDefaultLibrary(t);
    }
    function vL(e, t) {
      const n = /* @__PURE__ */ new Set(), i = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Set();
      for (const _ of t) if (!L6(_)) {
        const u = Gs(_.expression);
        if (_S(u)) switch (u.kind) {
          case 15:
          case 11:
            n.add(u.text);
            break;
          case 9:
            i.add(parseInt(u.text));
            break;
          case 10:
            const d = Qee(Uo(u.text, "n") ? u.text.slice(0, -1) : u.text);
            d && a.add(Ub(d));
            break;
        }
        else {
          const d = e.getSymbolAtLocation(_.expression);
          if (d && d.valueDeclaration && Gh(d.valueDeclaration)) {
            const g = e.getConstantValue(d.valueDeclaration);
            g !== void 0 && o(g);
          }
        }
      }
      return {
        addValue: o,
        hasValue: c
      };
      function o(_) {
        switch (typeof _) {
          case "string":
            n.add(_);
            break;
          case "number":
            i.add(_);
        }
      }
      function c(_) {
        switch (typeof _) {
          case "string":
            return n.has(_);
          case "number":
            return i.has(_);
          case "object":
            return a.has(Ub(_));
        }
      }
    }
    function Iq(e, t, n, i) {
      var a;
      if (!Zg(typeof e == "string" ? e : e.fileName)) return !1;
      const o = typeof e == "string" ? t.getCompilerOptions() : t.getCompilerOptionsForFile(e), c = u_(o), _ = QS(typeof e == "string" ? {
        fileName: e,
        impliedNodeFormat: XN(Eo(e, n.getCurrentDirectory(), Wh(n)), (a = t.getPackageJsonInfoCache) == null ? void 0 : a.call(t), n, o)
      } : e, o);
      if (_ === 99) return !1;
      if (_ === 1 || o.verbatimModuleSyntax && c === 1) return !0;
      if (o.verbatimModuleSyntax && BA(c)) return !1;
      if (typeof e == "object") {
        if (e.commonJsModuleIndicator) return !0;
        if (e.externalModuleIndicator) return !1;
      }
      return i;
    }
    function Mk(e) {
      switch (e.kind) {
        case 242:
        case 308:
        case 269:
        case 297:
          return !0;
        default:
          return !1;
      }
    }
    function bL(e, t, n, i) {
      var a;
      const o = f9(e, (a = n.getPackageJsonInfoCache) == null ? void 0 : a.call(n), i, n.getCompilerOptions());
      let c, _;
      return typeof o == "object" && (c = o.impliedNodeFormat, _ = o.packageJsonScope), {
        path: Eo(e, n.getCurrentDirectory(), n.getCanonicalFileName),
        fileName: e,
        externalModuleIndicator: t === 99 ? !0 : void 0,
        commonJsModuleIndicator: t === 1 ? !0 : void 0,
        impliedNodeFormat: c,
        packageJsonScope: _,
        statements: Te,
        imports: Te
      };
    }
    var Wse = /* @__PURE__ */ ((e) => (e[e.Named = 0] = "Named", e[e.Default = 1] = "Default", e[e.Namespace = 2] = "Namespace", e[e.CommonJS = 3] = "CommonJS", e))(Wse || {}), Use = /* @__PURE__ */ ((e) => (e[e.Named = 0] = "Named", e[e.Default = 1] = "Default", e[e.ExportEquals = 2] = "ExportEquals", e[e.UMD = 3] = "UMD", e[e.Module = 4] = "Module", e))(Use || {});
    function Oq(e) {
      let t = 1;
      const n = Up(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map();
      let o;
      const c = {
        isUsableByFile: (T) => T === o,
        isEmpty: () => !n.size,
        clear: () => {
          n.clear(), i.clear(), o = void 0;
        },
        add: (T, k, D, P, N, M, R, G) => {
          T !== o && (c.clear(), o = T);
          let L;
          if (N) {
            const fe = IO(N.fileName);
            if (fe) {
              const { topLevelNodeModulesIndex: de, topLevelPackageNameIndex: $, packageRootIndex: Se } = fe;
              if (L = IN(vw(N.fileName.substring($ + 1, Se))), ta(T, N.path.substring(0, de))) {
                const Be = a.get(L), ce = N.fileName.substring(0, $ + 1);
                Be ? de > Be.indexOf(ah) && a.set(L, ce) : a.set(L, ce);
              }
            }
          }
          const z = M === 1 && ED(k) || k, H = M === 0 || Dx(z) ? Ti(D) : OJe(z, G, void 0), U = typeof H == "string" ? H : H[0], pe = typeof H == "string" ? void 0 : H[1], ie = Qp(P.name), W = t++, Q = mu(k, G), se = k.flags & 33554432 ? void 0 : k, he = P.flags & 33554432 ? void 0 : P;
          (!se || !he) && i.set(W, [k, P]), n.add(u(U, k, jl(ie) ? void 0 : ie, G), {
            id: W,
            symbolTableKey: D,
            symbolName: U,
            capitalizedSymbolName: pe,
            moduleName: ie,
            moduleFile: N,
            moduleFileName: N?.fileName,
            packageName: L,
            exportKind: M,
            targetFlags: Q.flags,
            isFromPackageJson: R,
            symbol: se,
            moduleSymbol: he
          });
        },
        get: (T, k) => {
          if (T !== o) return;
          const D = n.get(k);
          return D?.map(_);
        },
        search: (T, k, D, P) => {
          if (T === o)
            return Dl(n, (N, M) => {
              const { symbolName: R, ambientModuleName: G } = d(M), L = k && N[0].capitalizedSymbolName || R;
              if (D(L, N[0].targetFlags)) {
                const z = N.map(_).filter((H, U) => S(H, N[U].packageName));
                if (z.length) {
                  const H = P(z, L, !!G, M);
                  if (H !== void 0) return H;
                }
              }
            });
        },
        releaseSymbols: () => {
          i.clear();
        },
        onFileChanged: (T, k, D) => g(T) && g(k) ? !1 : o && o !== k.path || D && dL(T) !== dL(k) || !jf(T.moduleAugmentations, k.moduleAugmentations) || !h(T, k) ? (c.clear(), !0) : (o = k.path, !1)
      };
      return E.isDebugging && Object.defineProperty(c, "__cache", { value: n }), c;
      function _(T) {
        if (T.symbol && T.moduleSymbol) return T;
        const { id: k, exportKind: D, targetFlags: P, isFromPackageJson: N, moduleFileName: M } = T, [R, G] = i.get(k) || Te;
        if (R && G) return {
          symbol: R,
          moduleSymbol: G,
          moduleFileName: M,
          exportKind: D,
          targetFlags: P,
          isFromPackageJson: N
        };
        const L = (N ? e.getPackageJsonAutoImportProvider() : e.getCurrentProgram()).getTypeChecker(), z = T.moduleSymbol || G || E.checkDefined(T.moduleFile ? L.getMergedSymbol(T.moduleFile.symbol) : L.tryFindAmbientModule(T.moduleName)), H = T.symbol || R || E.checkDefined(D === 2 ? L.resolveExternalModuleSymbol(z) : L.tryGetMemberInModuleExportsAndProperties(Ti(T.symbolTableKey), z), `Could not find symbol '${T.symbolName}' by key '${T.symbolTableKey}' in module ${z.name}`);
        return i.set(k, [H, z]), {
          symbol: H,
          moduleSymbol: z,
          moduleFileName: M,
          exportKind: D,
          targetFlags: P,
          isFromPackageJson: N
        };
      }
      function u(T, k, D, P) {
        const N = D || "";
        return `${T.length} ${ss(mu(k, P))} ${T} ${N}`;
      }
      function d(T) {
        const k = T.indexOf(" "), D = T.indexOf(" ", k + 1), P = parseInt(T.substring(0, k), 10), N = T.substring(D + 1), M = N.substring(0, P), R = N.substring(P + 1);
        return {
          symbolName: M,
          ambientModuleName: R === "" ? void 0 : R
        };
      }
      function g(T) {
        return !T.commonJsModuleIndicator && !T.externalModuleIndicator && !T.moduleAugmentations && !T.ambientModuleNames;
      }
      function h(T, k) {
        if (!jf(T.ambientModuleNames, k.ambientModuleNames)) return !1;
        let D = -1, P = -1;
        for (const N of k.ambientModuleNames) {
          const M = (R) => EB(R) && R.name.text === N;
          if (D = qs(T.statements, M, D + 1), P = qs(k.statements, M, P + 1), T.statements[D] !== k.statements[P]) return !1;
        }
        return !0;
      }
      function S(T, k) {
        if (!k || !T.moduleFileName) return !0;
        const D = e.getGlobalTypingsCacheLocation();
        if (D && ta(T.moduleFileName, D)) return !0;
        const P = a.get(k);
        return !P || ta(T.moduleFileName, P);
      }
    }
    function Fq(e, t, n, i, a, o, c, _) {
      var u;
      if (!n) {
        let T;
        const k = Qp(i.name);
        return nk.has(k) && (T = hL(t, e)) !== void 0 ? T === ta(k, "node:") : !o || o.allowsImportingAmbientModule(i, c) || Vse(t, k);
      }
      if (E.assertIsDefined(n), t === n) return !1;
      const d = _?.get(t.path, n.path, a, {});
      if (d?.isBlockedByPackageJsonDependencies !== void 0) return !d.isBlockedByPackageJsonDependencies || !!d.packageName && Vse(t, d.packageName);
      const g = Wh(c), h = (u = c.getGlobalTypingsCacheLocation) == null ? void 0 : u.call(c), S = !!$h.forEachFileNameOfModule(t.fileName, n.fileName, c, !1, (T) => {
        const k = e.getSourceFile(T);
        return (k === n || !k) && IJe(t.fileName, T, g, h, c);
      });
      if (o) {
        const T = S ? o.getSourceFileInfo(n, c) : void 0;
        return _?.setBlockedByPackageJsonDependencies(t.path, n.path, a, {}, T?.packageName, !T?.importable), !!T?.importable || S && !!T?.packageName && Vse(t, T.packageName);
      }
      return S;
    }
    function Vse(e, t) {
      return e.imports && e.imports.some((n) => n.text === t || n.text.startsWith(t + "/"));
    }
    function IJe(e, t, n, i, a) {
      const o = hg(a, t, (_) => nl(_) === "node_modules" ? _ : void 0), c = o && Xn(n(o));
      return c === void 0 || ta(n(e), c) || !!i && ta(n(i), c);
    }
    function Lq(e, t, n, i, a) {
      var o, c;
      const _ = CS(t), u = n.autoImportFileExcludePatterns && E2e(n, _);
      D2e(e.getTypeChecker(), e.getSourceFiles(), u, t, (g, h) => a(g, h, e, !1));
      const d = i && ((o = t.getPackageJsonAutoImportProvider) == null ? void 0 : o.call(t));
      if (d) {
        const g = ko(), h = e.getTypeChecker();
        D2e(d.getTypeChecker(), d.getSourceFiles(), u, t, (S, T) => {
          (T && !e.getSourceFile(T.fileName) || !T && !h.resolveName(S.name, void 0, 1536, !1)) && a(S, T, d, !0);
        }), (c = t.log) == null || c.call(t, `forEachExternalModuleToImportFrom autoImportProvider: ${ko() - g}`);
      }
    }
    function E2e(e, t) {
      return Rn(e.autoImportFileExcludePatterns, (n) => {
        const i = bO(n, "", "exclude");
        return i ? O0(i, t) : void 0;
      });
    }
    function D2e(e, t, n, i, a) {
      var o;
      const c = n && w2e(n, i);
      for (const _ of e.getAmbientModules()) !_.name.includes("*") && !(n && ((o = _.declarations) != null && o.every((u) => c(u.getSourceFile())))) && a(_, void 0);
      for (const _ of t) gf(_) && !c?.(_) && a(e.getMergedSymbol(_.symbol), _);
    }
    function w2e(e, t) {
      var n;
      const i = (n = t.getSymlinkCache) == null ? void 0 : n.call(t).getSymlinkedDirectoriesByRealpath();
      return (({ fileName: a, path: o }) => {
        if (e.some((c) => c.test(a))) return !0;
        if (i?.size && p1(a)) {
          let c = Xn(a);
          return hg(t, Xn(o), (_) => {
            const u = i.get(El(_));
            if (u) return u.some((d) => e.some((g) => g.test(a.replace(c, d))));
            c = Xn(c);
          }) ?? !1;
        }
        return !1;
      });
    }
    function qse(e, t) {
      return t.autoImportFileExcludePatterns ? w2e(E2e(t, CS(e)), e) : () => !1;
    }
    function EI(e, t, n, i, a) {
      var o, c, _, u, d;
      const g = ko();
      (o = t.getPackageJsonAutoImportProvider) == null || o.call(t);
      const h = ((c = t.getCachedExportInfoMap) == null ? void 0 : c.call(t)) || Oq({
        getCurrentProgram: () => n,
        getPackageJsonAutoImportProvider: () => {
          var T;
          return (T = t.getPackageJsonAutoImportProvider) == null ? void 0 : T.call(t);
        },
        getGlobalTypingsCacheLocation: () => {
          var T;
          return (T = t.getGlobalTypingsCacheLocation) == null ? void 0 : T.call(t);
        }
      });
      if (h.isUsableByFile(e.path))
        return (_ = t.log) == null || _.call(t, "getExportInfoMap: cache hit"), h;
      (u = t.log) == null || u.call(t, "getExportInfoMap: cache miss or empty; calculating new results");
      let S = 0;
      try {
        Lq(n, t, i, !0, (T, k, D, P) => {
          ++S % 100 === 0 && a?.throwIfCancellationRequested();
          const N = /* @__PURE__ */ new Set(), M = D.getTypeChecker(), R = SL(T, M);
          R && P2e(R.symbol, M) && h.add(e.path, R.symbol, R.exportKind === 1 ? "default" : "export=", T, k, R.exportKind, P, M), M.forEachExportAndPropertyOfModule(T, (G, L) => {
            G !== R?.symbol && P2e(G, M) && Yp(N, L) && h.add(e.path, G, L, T, k, 0, P, M);
          });
        });
      } catch (T) {
        throw h.clear(), T;
      }
      return (d = t.log) == null || d.call(t, `getExportInfoMap: done in ${ko() - g} ms`), h;
    }
    function SL(e, t) {
      const n = t.resolveExternalModuleSymbol(e);
      if (n !== e) {
        const a = t.tryGetMemberInModuleExports("default", n);
        return a ? {
          symbol: a,
          exportKind: 1
        } : {
          symbol: n,
          exportKind: 2
        };
      }
      const i = t.tryGetMemberInModuleExports("default", e);
      if (i) return {
        symbol: i,
        exportKind: 1
      };
    }
    function P2e(e, t) {
      return !t.isUndefinedSymbol(e) && !t.isUnknownSymbol(e) && !vD(e) && !nJ(e);
    }
    function OJe(e, t, n) {
      let i;
      return TL(e, t, n, (a, o) => (i = o ? [a, o] : a, !0)), E.checkDefined(i);
    }
    function TL(e, t, n, i) {
      let a, o = e;
      const c = /* @__PURE__ */ new Set();
      for (; o; ) {
        const _ = Pq(o);
        if (_) {
          const u = i(_);
          if (u) return u;
        }
        if (o.escapedName !== "default" && o.escapedName !== "export=") {
          const u = i(o.name);
          if (u) return u;
        }
        if (a = kr(a, o), !Yp(c, o)) break;
        o = o.flags & 2097152 ? t.getImmediateAliasedSymbol(o) : void 0;
      }
      for (const _ of a ?? Te) if (_.parent && Dx(_.parent)) {
        const u = i(xI(_.parent, n, !1), xI(_.parent, n, !0));
        if (u) return u;
      }
    }
    function A2e() {
      const e = Bg(99, !1);
      function t(i, a, o) {
        return RJe(n(i, a, o), i);
      }
      function n(i, a, o) {
        let c = 0, _ = 0;
        const u = [], { prefix: d, pushTemplate: g } = JJe(a);
        i = d + i;
        const h = d.length;
        g && u.push(16), e.setText(i);
        let S = 0;
        const T = [];
        let k = 0;
        do {
          c = e.scan(), p6(c) || (D(), _ = c);
          const P = e.getTokenEnd();
          if (MJe(e.getTokenStart(), P, h, UJe(c), T), P >= i.length) {
            const N = LJe(e, c, Wo(u));
            N !== void 0 && (S = N);
          }
        } while (c !== 1);
        function D() {
          switch (c) {
            case 44:
            case 69:
              !FJe[_] && e.reScanSlashToken() === 14 && (c = 14);
              break;
            case 30:
              _ === 80 && k++;
              break;
            case 32:
              k > 0 && k--;
              break;
            case 133:
            case 154:
            case 150:
            case 136:
            case 155:
              k > 0 && !o && (c = 80);
              break;
            case 16:
              u.push(c);
              break;
            case 19:
              u.length > 0 && u.push(c);
              break;
            case 20:
              if (u.length > 0) {
                const P = Wo(u);
                P === 16 ? (c = e.reScanTemplateToken(!1), c === 18 ? u.pop() : E.assertEqual(c, 17, "Should have been a template middle.")) : (E.assertEqual(P, 19, "Should have been an open brace"), u.pop());
              }
              break;
            default:
              if (!z_(c)) break;
              (_ === 25 || z_(_) && z_(c) && !BJe(_, c)) && (c = 80);
          }
        }
        return {
          endOfLineState: S,
          spans: T
        };
      }
      return {
        getClassificationsForLine: t,
        getEncodedLexicalClassifications: n
      };
    }
    var FJe = mQ([
      80,
      11,
      9,
      10,
      14,
      110,
      46,
      47,
      22,
      24,
      20,
      112,
      97
    ], (e) => e, () => !0);
    function LJe(e, t, n) {
      switch (t) {
        case 11: {
          if (!e.isUnterminated()) return;
          const i = e.getTokenText(), a = i.length - 1;
          let o = 0;
          for (; i.charCodeAt(a - o) === 92; ) o++;
          return (o & 1) === 0 ? void 0 : i.charCodeAt(0) === 34 ? 3 : 2;
        }
        case 3:
          return e.isUnterminated() ? 1 : void 0;
        default:
          if (jy(t)) {
            if (!e.isUnterminated()) return;
            switch (t) {
              case 18:
                return 5;
              case 15:
                return 4;
              default:
                return E.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #" + t);
            }
          }
          return n === 16 ? 6 : void 0;
      }
    }
    function MJe(e, t, n, i, a) {
      if (i === 8) return;
      e === 0 && n > 0 && (e += n);
      const o = t - e;
      o > 0 && a.push(e - n, o, i);
    }
    function RJe(e, t) {
      const n = [], i = e.spans;
      let a = 0;
      for (let c = 0; c < i.length; c += 3) {
        const _ = i[c], u = i[c + 1], d = i[c + 2];
        if (a >= 0) {
          const g = _ - a;
          g > 0 && n.push({
            length: g,
            classification: 4
          });
        }
        n.push({
          length: u,
          classification: jJe(d)
        }), a = _ + u;
      }
      const o = t.length - a;
      return o > 0 && n.push({
        length: o,
        classification: 4
      }), {
        entries: n,
        finalLexState: e.endOfLineState
      };
    }
    function jJe(e) {
      switch (e) {
        case 1:
          return 3;
        case 3:
          return 1;
        case 4:
          return 6;
        case 25:
          return 7;
        case 5:
          return 2;
        case 6:
          return 8;
        case 8:
          return 4;
        case 10:
          return 0;
        case 2:
        case 11:
        case 12:
        case 13:
        case 14:
        case 15:
        case 16:
        case 9:
        case 17:
          return 5;
        default:
          return;
      }
    }
    function BJe(e, t) {
      if (!YV(e)) return !0;
      switch (t) {
        case 139:
        case 153:
        case 137:
        case 126:
        case 129:
          return !0;
        default:
          return !1;
      }
    }
    function JJe(e) {
      switch (e) {
        case 3:
          return { prefix: `"\\
` };
        case 2:
          return { prefix: `'\\
` };
        case 1:
          return { prefix: `/*
` };
        case 4:
          return { prefix: "`\n" };
        case 5:
          return {
            prefix: `}
`,
            pushTemplate: !0
          };
        case 6:
          return {
            prefix: "",
            pushTemplate: !0
          };
        case 0:
          return { prefix: "" };
        default:
          return E.assertNever(e);
      }
    }
    function zJe(e) {
      switch (e) {
        case 42:
        case 44:
        case 45:
        case 40:
        case 41:
        case 48:
        case 49:
        case 50:
        case 30:
        case 32:
        case 33:
        case 34:
        case 104:
        case 103:
        case 130:
        case 152:
        case 35:
        case 36:
        case 37:
        case 38:
        case 51:
        case 53:
        case 52:
        case 56:
        case 57:
        case 75:
        case 74:
        case 79:
        case 71:
        case 72:
        case 73:
        case 65:
        case 66:
        case 67:
        case 69:
        case 70:
        case 64:
        case 28:
        case 61:
        case 76:
        case 77:
        case 78:
          return !0;
        default:
          return !1;
      }
    }
    function WJe(e) {
      switch (e) {
        case 40:
        case 41:
        case 55:
        case 54:
        case 46:
        case 47:
          return !0;
        default:
          return !1;
      }
    }
    function UJe(e) {
      if (z_(e)) return 3;
      if (zJe(e) || WJe(e)) return 5;
      if (e >= 19 && e <= 79) return 10;
      switch (e) {
        case 9:
          return 4;
        case 10:
          return 25;
        case 11:
          return 6;
        case 14:
          return 7;
        case 7:
        case 3:
        case 2:
          return 1;
        case 5:
        case 4:
          return 8;
        default:
          return jy(e) ? 6 : 2;
      }
    }
    function Gse(e, t, n, i, a) {
      return O2e(Mq(e, t, n, i, a));
    }
    function N2e(e, t) {
      switch (t) {
        case 268:
        case 264:
        case 265:
        case 263:
        case 232:
        case 219:
        case 220:
          e.throwIfCancellationRequested();
      }
    }
    function Mq(e, t, n, i, a) {
      const o = [];
      return n.forEachChild(function _(u) {
        if (!(!u || !x3(a, u.pos, u.getFullWidth()))) {
          if (N2e(t, u.kind), Fe(u) && !Nc(u) && i.has(u.escapedText)) {
            const d = e.getSymbolAtLocation(u), g = d && I2e(d, YS(u), e);
            g && c(u.getStart(n), u.getEnd(), g);
          }
          u.forEachChild(_);
        }
      }), {
        spans: o,
        endOfLineState: 0
      };
      function c(_, u, d) {
        const g = u - _;
        E.assert(g > 0, `Classification had non-positive length of ${g}`), o.push(_), o.push(g), o.push(d);
      }
    }
    function I2e(e, t, n) {
      const i = e.getFlags();
      if ((i & 2885600) !== 0)
        return i & 32 ? 11 : i & 384 ? 12 : i & 524288 ? 16 : i & 1536 ? t & 4 || t & 1 && VJe(e) ? 14 : void 0 : i & 2097152 ? I2e(n.getAliasedSymbol(e), t, n) : t & 2 ? i & 64 ? 13 : i & 262144 ? 15 : void 0 : void 0;
    }
    function VJe(e) {
      return _t(e.declarations, (t) => Qc(t) && m1(t) === 1);
    }
    function qJe(e) {
      switch (e) {
        case 1:
          return "comment";
        case 2:
          return "identifier";
        case 3:
          return "keyword";
        case 4:
          return "number";
        case 25:
          return "bigint";
        case 5:
          return "operator";
        case 6:
          return "string";
        case 8:
          return "whitespace";
        case 9:
          return "text";
        case 10:
          return "punctuation";
        case 11:
          return "class name";
        case 12:
          return "enum name";
        case 13:
          return "interface name";
        case 14:
          return "module name";
        case 15:
          return "type parameter name";
        case 16:
          return "type alias name";
        case 17:
          return "parameter name";
        case 18:
          return "doc comment tag name";
        case 19:
          return "jsx open tag name";
        case 20:
          return "jsx close tag name";
        case 21:
          return "jsx self closing tag name";
        case 22:
          return "jsx attribute";
        case 23:
          return "jsx text";
        case 24:
          return "jsx attribute string literal value";
        default:
          return;
      }
    }
    function O2e(e) {
      E.assert(e.spans.length % 3 === 0);
      const t = e.spans, n = [];
      for (let i = 0; i < t.length; i += 3) n.push({
        textSpan: du(t[i], t[i + 1]),
        classificationType: qJe(t[i + 2])
      });
      return n;
    }
    function Hse(e, t, n) {
      return O2e(Rq(e, t, n));
    }
    function Rq(e, t, n) {
      const i = n.start, a = n.length, o = Bg(99, !1, t.languageVariant, t.text), c = Bg(99, !1, t.languageVariant, t.text), _ = [];
      return G(t), {
        spans: _,
        endOfLineState: 0
      };
      function u(L, z, H) {
        _.push(L), _.push(z), _.push(H);
      }
      function d(L) {
        for (o.resetTokenState(L.pos); ; ) {
          const z = o.getTokenEnd();
          if (!XY(t.text, z)) return z;
          const H = o.scan(), U = o.getTokenEnd(), pe = U - z;
          if (!p6(H)) return z;
          switch (H) {
            case 4:
            case 5:
              continue;
            case 2:
            case 3:
              g(L, H, z, pe), o.resetTokenState(U);
              continue;
            case 7:
              const ie = t.text, W = ie.charCodeAt(z);
              if (W === 60 || W === 62) {
                u(z, pe, 1);
                continue;
              }
              E.assert(W === 124 || W === 61), D(ie, z, U);
              break;
            case 6:
              break;
            default:
              E.assertNever(H);
          }
        }
      }
      function g(L, z, H, U) {
        if (z === 3) {
          const pe = Are(t.text, H, U);
          if (pe && pe.jsDoc) {
            eo(pe.jsDoc, L), S(pe.jsDoc);
            return;
          }
        } else if (z === 2 && T(H, U))
          return;
        h(H, U);
      }
      function h(L, z) {
        u(L, z, 1);
      }
      function S(L) {
        var z, H, U, pe, ie, W, Q, se;
        let he = L.pos;
        if (L.tags) for (const de of L.tags) {
          de.pos !== he && h(he, de.pos - he), u(de.pos, 1, 10), u(de.tagName.pos, de.tagName.end - de.tagName.pos, 18), he = de.tagName.end;
          let $ = de.tagName.end;
          switch (de.kind) {
            case 342:
              const Se = de;
              fe(Se), $ = Se.isNameFirst && ((z = Se.typeExpression) == null ? void 0 : z.end) || Se.name.end;
              break;
            case 349:
              const Be = de;
              $ = Be.isNameFirst && ((H = Be.typeExpression) == null ? void 0 : H.end) || Be.name.end;
              break;
            case 346:
              k(de), he = de.end, $ = de.typeParameters.end;
              break;
            case 347:
              const ce = de;
              $ = ((U = ce.typeExpression) == null ? void 0 : U.kind) === 310 && ((pe = ce.fullName) == null ? void 0 : pe.end) || ((ie = ce.typeExpression) == null ? void 0 : ie.end) || $;
              break;
            case 339:
              $ = de.typeExpression.end;
              break;
            case 345:
              G(de.typeExpression), he = de.end, $ = de.typeExpression.end;
              break;
            case 344:
            case 341:
              $ = de.typeExpression.end;
              break;
            case 343:
              G(de.typeExpression), he = de.end, $ = ((W = de.typeExpression) == null ? void 0 : W.end) || $;
              break;
            case 348:
              $ = ((Q = de.name) == null ? void 0 : Q.end) || $;
              break;
            case 329:
            case 330:
              $ = de.class.end;
              break;
            case 350:
              G(de.typeExpression), he = de.end, $ = ((se = de.typeExpression) == null ? void 0 : se.end) || $;
              break;
          }
          typeof de.comment == "object" ? h(de.comment.pos, de.comment.end - de.comment.pos) : typeof de.comment == "string" && h($, de.end - $);
        }
        he !== L.end && h(he, L.end - he);
        return;
        function fe(de) {
          de.isNameFirst && (h(he, de.name.pos - he), u(de.name.pos, de.name.end - de.name.pos, 17), he = de.name.end), de.typeExpression && (h(he, de.typeExpression.pos - he), G(de.typeExpression), he = de.typeExpression.end), de.isNameFirst || (h(he, de.name.pos - he), u(de.name.pos, de.name.end - de.name.pos, 17), he = de.name.end);
        }
      }
      function T(L, z) {
        const H = /^(\/\/\/\s*)(<)(?:(\S+)((?:[^/]|\/[^>])*)(\/>)?)?/m, U = /(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/g, pe = t.text.substr(L, z), ie = H.exec(pe);
        if (!ie || !ie[3] || !(ie[3] in P7)) return !1;
        let W = L;
        h(W, ie[1].length), W += ie[1].length, u(W, ie[2].length, 10), W += ie[2].length, u(W, ie[3].length, 21), W += ie[3].length;
        const Q = ie[4];
        let se = W;
        for (; ; ) {
          const fe = U.exec(Q);
          if (!fe) break;
          const de = W + fe.index + fe[1].length;
          de > se && (h(se, de - se), se = de), u(se, fe[2].length, 22), se += fe[2].length, fe[3].length && (h(se, fe[3].length), se += fe[3].length), u(se, fe[4].length, 5), se += fe[4].length, fe[5].length && (h(se, fe[5].length), se += fe[5].length), u(se, fe[6].length, 24), se += fe[6].length;
        }
        W += ie[4].length, W > se && h(se, W - se), ie[5] && (u(W, ie[5].length, 10), W += ie[5].length);
        const he = L + z;
        return W < he && h(W, he - W), !0;
      }
      function k(L) {
        for (const z of L.getChildren()) G(z);
      }
      function D(L, z, H) {
        let U;
        for (U = z; U < H && !Uu(L.charCodeAt(U)); U++) ;
        for (u(z, U - z, 1), c.resetTokenState(U); c.getTokenEnd() < H; ) P();
      }
      function P() {
        const L = c.getTokenEnd(), z = c.scan(), H = c.getTokenEnd(), U = R(z);
        U && u(L, H - L, U);
      }
      function N(L) {
        if (Hd(L) || Nc(L)) return !0;
        const z = M(L);
        if (!Tx(L) && L.kind !== 12 && z === void 0) return !1;
        const H = L.kind === 12 ? L.pos : d(L), U = L.end - H;
        if (E.assert(U >= 0), U > 0) {
          const pe = z || R(L.kind, L);
          pe && u(H, U, pe);
        }
        return !0;
      }
      function M(L) {
        switch (L.parent && L.parent.kind) {
          case 287:
            if (L.parent.tagName === L) return 19;
            break;
          case 288:
            if (L.parent.tagName === L) return 20;
            break;
          case 286:
            if (L.parent.tagName === L) return 21;
            break;
          case 292:
            if (L.parent.name === L) return 22;
            break;
        }
      }
      function R(L, z) {
        if (z_(L)) return 3;
        if ((L === 30 || L === 32) && z && mse(z.parent))
          return 10;
        if (eJ(L)) {
          if (z) {
            const H = z.parent;
            if (L === 64 && (H.kind === 261 || H.kind === 173 || H.kind === 170 || H.kind === 292) || H.kind === 227 || H.kind === 225 || H.kind === 226 || H.kind === 228) return 5;
          }
          return 10;
        } else {
          if (L === 9) return 4;
          if (L === 10) return 25;
          if (L === 11) return z && z.parent.kind === 292 ? 24 : 6;
          if (L === 14) return 6;
          if (jy(L)) return 6;
          if (L === 12) return 23;
          if (L === 80) {
            if (z) {
              switch (z.parent.kind) {
                case 264:
                  return z.parent.name === z ? 11 : void 0;
                case 169:
                  return z.parent.name === z ? 15 : void 0;
                case 265:
                  return z.parent.name === z ? 13 : void 0;
                case 267:
                  return z.parent.name === z ? 12 : void 0;
                case 268:
                  return z.parent.name === z ? 14 : void 0;
                case 170:
                  return z.parent.name === z ? Zy(z) ? 3 : 17 : void 0;
              }
              if (_d(z.parent)) return 3;
            }
            return 2;
          }
        }
      }
      function G(L) {
        if (L && k3(i, a, L.pos, L.getFullWidth())) {
          N2e(e, L.kind);
          for (const z of L.getChildren(t)) N(z) || G(z);
        }
      }
    }
    var xL;
    ((e) => {
      function t(W, Q, se, he, fe) {
        const de = G_(se, he);
        if (de.parent && (qd(de.parent) && de.parent.tagName === de || Qb(de.parent))) {
          const { openingElement: $, closingElement: Se } = de.parent.parent, Be = [$, Se].map(({ tagName: ce }) => n(ce, se));
          return [{
            fileName: se.fileName,
            highlightSpans: Be
          }];
        }
        return i(he, de, W, Q, fe) || a(de, se);
      }
      e.getDocumentHighlights = t;
      function n(W, Q) {
        return {
          fileName: Q.fileName,
          textSpan: P_(W, Q),
          kind: "none"
        };
      }
      function i(W, Q, se, he, fe) {
        const de = new Set(fe.map((ce) => ce.fileName)), $ = Jo.getReferenceEntriesForNode(W, Q, se, fe, he, void 0, de);
        if (!$) return;
        const Se = o3($.map(Jo.toHighlightSpan), (ce) => ce.fileName, (ce) => ce.span), Be = pu(se.useCaseSensitiveFileNames());
        return ma(Go(Se.entries(), ([ce, oe]) => {
          if (!de.has(ce)) {
            if (!se.redirectTargetsMap.has(Eo(ce, se.getCurrentDirectory(), Be))) return;
            const ge = se.getSourceFile(ce);
            ce = xr(fe, (Ae) => !!Ae.redirectInfo && Ae.redirectInfo.redirectTarget === ge).fileName, E.assert(de.has(ce));
          }
          return {
            fileName: ce,
            highlightSpans: oe
          };
        }));
      }
      function a(W, Q) {
        const se = o(W, Q);
        return se && [{
          fileName: Q.fileName,
          highlightSpans: se
        }];
      }
      function o(W, Q) {
        switch (W.kind) {
          case 101:
          case 93:
            return Cv(W.parent) ? U(W.parent, Q) : void 0;
          case 107:
            return he(W.parent, zf, G);
          case 111:
            return he(W.parent, Mz, R);
          case 113:
          case 85:
          case 98:
            return he(W.kind === 85 ? W.parent.parent : W.parent, jS, M);
          case 109:
            return he(W.parent, iw, N);
          case 84:
          case 90:
            return L6(W.parent) || F6(W.parent) ? he(W.parent.parent.parent, iw, N) : void 0;
          case 83:
          case 88:
            return he(W.parent, q4, P);
          case 99:
          case 117:
          case 92:
            return he(W.parent, (de) => Uy(de, !0), D);
          case 137:
            return se(yc, [137]);
          case 139:
          case 153:
            return se(zy, [139, 153]);
          case 135:
            return he(W.parent, o1, L);
          case 134:
            return fe(L(W));
          case 127:
            return fe(z(W));
          case 103:
          case 147:
            return;
          default:
            return Jy(W.kind) && (Jl(W.parent) || $c(W.parent)) ? fe(S(W.kind, W.parent)) : void 0;
        }
        function se(de, $) {
          return he(W.parent, de, (Se) => {
            var Be;
            return Rn((Be = qn(Se, jd)) == null ? void 0 : Be.symbol.declarations, (ce) => de(ce) ? xr(ce.getChildren(Q), (oe) => Gi($, oe.kind)) : void 0);
          });
        }
        function he(de, $, Se) {
          return $(de) ? fe(Se(de, Q)) : void 0;
        }
        function fe(de) {
          return de && de.map(($) => n($, Q));
        }
      }
      function c(W) {
        return Mz(W) ? [W] : jS(W) ? zi(W.catchClause ? c(W.catchClause) : W.tryBlock && c(W.tryBlock), W.finallyBlock && c(W.finallyBlock)) : Ra(W) ? void 0 : d(W, c);
      }
      function _(W) {
        let Q = W;
        for (; Q.parent; ) {
          const se = Q.parent;
          if (Ib(se) || se.kind === 308) return se;
          if (jS(se) && se.tryBlock === Q && se.catchClause) return Q;
          Q = se;
        }
      }
      function u(W) {
        return q4(W) ? [W] : Ra(W) ? void 0 : d(W, u);
      }
      function d(W, Q) {
        const se = [];
        return W.forEachChild((he) => {
          const fe = Q(he);
          fe !== void 0 && se.push(...fx(fe));
        }), se;
      }
      function g(W, Q) {
        const se = h(Q);
        return !!se && se === W;
      }
      function h(W) {
        return cr(W, (Q) => {
          switch (Q.kind) {
            case 256:
              if (W.kind === 252) return !1;
            case 249:
            case 250:
            case 251:
            case 248:
            case 247:
              return !W.label || ie(Q, W.label.escapedText);
            default:
              return Ra(Q) && "quit";
          }
        });
      }
      function S(W, Q) {
        return Rn(T(Q, Ux(W)), (se) => _E(se, W));
      }
      function T(W, Q) {
        const se = W.parent;
        switch (se.kind) {
          case 269:
          case 308:
          case 242:
          case 297:
          case 298:
            return Q & 64 && sl(W) ? [...W.members, W] : se.statements;
          case 177:
          case 175:
          case 263:
            return [...se.parameters, ...Zn(se.parent) ? se.parent.members : []];
          case 264:
          case 232:
          case 265:
          case 188:
            const he = se.members;
            if (Q & 15) {
              const fe = xr(se.members, yc);
              if (fe) return [...he, ...fe.parameters];
            } else if (Q & 64) return [...he, se];
            return he;
          default:
            return;
        }
      }
      function k(W, Q, ...se) {
        return Q && Gi(se, Q.kind) ? (W.push(Q), !0) : !1;
      }
      function D(W) {
        const Q = [];
        if (k(Q, W.getFirstToken(), 99, 117, 92) && W.kind === 247) {
          const se = W.getChildren();
          for (let he = se.length - 1; he >= 0 && !k(Q, se[he], 117); he--) ;
        }
        return bt(u(W.statement), (se) => {
          g(W, se) && k(Q, se.getFirstToken(), 83, 88);
        }), Q;
      }
      function P(W) {
        const Q = h(W);
        if (Q) switch (Q.kind) {
          case 249:
          case 250:
          case 251:
          case 247:
          case 248:
            return D(Q);
          case 256:
            return N(Q);
        }
      }
      function N(W) {
        const Q = [];
        return k(Q, W.getFirstToken(), 109), bt(W.caseBlock.clauses, (se) => {
          k(Q, se.getFirstToken(), 84, 90), bt(u(se), (he) => {
            g(W, he) && k(Q, he.getFirstToken(), 83);
          });
        }), Q;
      }
      function M(W, Q) {
        const se = [];
        return k(se, W.getFirstToken(), 113), W.catchClause && k(se, W.catchClause.getFirstToken(), 85), W.finallyBlock && k(se, uo(W, 98, Q), 98), se;
      }
      function R(W, Q) {
        const se = _(W);
        if (!se) return;
        const he = [];
        return bt(c(se), (fe) => {
          he.push(uo(fe, 111, Q));
        }), Ib(se) && Hy(se, (fe) => {
          he.push(uo(fe, 107, Q));
        }), he;
      }
      function G(W, Q) {
        const se = Kf(W);
        if (!se) return;
        const he = [];
        return Hy(ns(se.body, Wa), (fe) => {
          he.push(uo(fe, 107, Q));
        }), bt(c(se.body), (fe) => {
          he.push(uo(fe, 111, Q));
        }), he;
      }
      function L(W) {
        const Q = Kf(W);
        if (!Q) return;
        const se = [];
        return Q.modifiers && Q.modifiers.forEach((he) => {
          k(se, he, 134);
        }), Fa(Q, (he) => {
          H(he, (fe) => {
            o1(fe) && k(se, fe.getFirstToken(), 135);
          });
        }), se;
      }
      function z(W) {
        const Q = Kf(W);
        if (!Q) return;
        const se = [];
        return Fa(Q, (he) => {
          H(he, (fe) => {
            sN(fe) && k(se, fe.getFirstToken(), 127);
          });
        }), se;
      }
      function H(W, Q) {
        Q(W), !Ra(W) && !Zn(W) && !au(W) && !Qc(W) && !Kp(W) && !ui(W) && Fa(W, (se) => H(se, Q));
      }
      function U(W, Q) {
        const se = pe(W, Q), he = [];
        for (let fe = 0; fe < se.length; fe++) {
          if (se[fe].kind === 93 && fe < se.length - 1) {
            const de = se[fe], $ = se[fe + 1];
            let Se = !0;
            for (let Be = $.getStart(Q) - 1; Be >= de.end; Be--) if (!hm(Q.text.charCodeAt(Be))) {
              Se = !1;
              break;
            }
            if (Se) {
              he.push({
                fileName: Q.fileName,
                textSpan: Vc(de.getStart(), $.end),
                kind: "reference"
              }), fe++;
              continue;
            }
          }
          he.push(n(se[fe], Q));
        }
        return he;
      }
      function pe(W, Q) {
        const se = [];
        for (; Cv(W.parent) && W.parent.elseStatement === W; ) W = W.parent;
        for (; ; ) {
          const he = W.getChildren(Q);
          k(se, he[0], 101);
          for (let fe = he.length - 1; fe >= 0 && !k(se, he[fe], 93); fe--) ;
          if (!W.elseStatement || !Cv(W.elseStatement)) break;
          W = W.elseStatement;
        }
        return se;
      }
      function ie(W, Q) {
        return !!cr(W.parent, (se) => c1(se) ? se.label.escapedText === Q : "quit");
      }
    })(xL || (xL = {}));
    function DI(e) {
      return !!e.sourceFile;
    }
    function $se(e, t, n) {
      return jq(e, t, n);
    }
    function jq(e, t = "", n, i) {
      const a = /* @__PURE__ */ new Map(), o = pu(!!e);
      function c() {
        const P = ma(a.keys()).filter((N) => N && N.charAt(0) === "_").map((N) => {
          const M = a.get(N), R = [];
          return M.forEach((G, L) => {
            DI(G) ? R.push({
              name: L,
              scriptKind: G.sourceFile.scriptKind,
              refCount: G.languageServiceRefCount
            }) : G.forEach((z, H) => R.push({
              name: L,
              scriptKind: H,
              refCount: z.languageServiceRefCount
            }));
          }), R.sort((G, L) => L.refCount - G.refCount), {
            bucket: N,
            sourceFiles: R
          };
        });
        return JSON.stringify(P, void 0, 2);
      }
      function _(P) {
        return typeof P.getCompilationSettings == "function" ? P.getCompilationSettings() : P;
      }
      function u(P, N, M, R, G, L) {
        return d(P, Eo(P, t, o), N, Bq(_(N)), M, R, G, L);
      }
      function d(P, N, M, R, G, L, z, H) {
        return T(P, N, M, R, G, L, !0, z, H);
      }
      function g(P, N, M, R, G, L) {
        return h(P, Eo(P, t, o), N, Bq(_(N)), M, R, G, L);
      }
      function h(P, N, M, R, G, L, z, H) {
        return T(P, N, _(M), R, G, L, !1, z, H);
      }
      function S(P, N) {
        const M = DI(P) ? P : P.get(E.checkDefined(N, "If there are more than one scriptKind's for same document the scriptKind should be provided"));
        return E.assert(N === void 0 || !M || M.sourceFile.scriptKind === N, `Script kind should match provided ScriptKind:${N} and sourceFile.scriptKind: ${M?.sourceFile.scriptKind}, !entry: ${!M}`), M;
      }
      function T(P, N, M, R, G, L, z, H, U) {
        var pe, ie, W, Q;
        H = TO(P, H);
        const se = _(M), he = M === se ? void 0 : M, fe = H === 6 ? 100 : Ps(se), de = typeof U == "object" ? U : {
          languageVersion: fe,
          impliedNodeFormat: he && XN(N, (Q = (W = (ie = (pe = he.getCompilerHost) == null ? void 0 : pe.call(he)) == null ? void 0 : ie.getModuleResolutionCache) == null ? void 0 : W.call(ie)) == null ? void 0 : Q.getPackageJsonInfoCache(), he, se),
          setExternalModuleIndicator: LA(se),
          jsDocParsingMode: n
        };
        de.languageVersion = fe, E.assertEqual(n, de.jsDocParsingMode);
        const $ = a.size, Se = Xse(R, de.impliedNodeFormat), Be = v_(a, Se, () => /* @__PURE__ */ new Map());
        if (sn) {
          a.size > $ && sn.instant(sn.Phase.Session, "createdDocumentRegistryBucket", {
            configFilePath: se.configFilePath,
            key: Se
          });
          const Ae = !$l(N) && Dl(a, (Ne, ot) => ot !== Se && Ne.has(N) && ot);
          Ae && sn.instant(sn.Phase.Session, "documentRegistryBucketOverlap", {
            path: N,
            key1: Ae,
            key2: Se
          });
        }
        const ce = Be.get(N);
        let oe = ce && S(ce, H);
        if (!oe && i) {
          const Ae = i.getDocument(Se, N);
          Ae && Ae.scriptKind === H && Ae.text === Fk(G) && (E.assert(z), oe = {
            sourceFile: Ae,
            languageServiceRefCount: 0
          }, ge());
        }
        if (oe)
          oe.sourceFile.version !== L && (oe.sourceFile = vG(oe.sourceFile, G, L, G.getChangeRange(oe.sourceFile.scriptSnapshot)), i && i.setDocument(Se, N, oe.sourceFile)), z && oe.languageServiceRefCount++;
        else {
          const Ae = jL(P, G, de, L, !1, H);
          i && i.setDocument(Se, N, Ae), oe = {
            sourceFile: Ae,
            languageServiceRefCount: 1
          }, ge();
        }
        return E.assert(oe.languageServiceRefCount !== 0), oe.sourceFile;
        function ge() {
          if (!ce) Be.set(N, oe);
          else if (DI(ce)) {
            const Ae = /* @__PURE__ */ new Map();
            Ae.set(ce.sourceFile.scriptKind, ce), Ae.set(H, oe), Be.set(N, Ae);
          } else ce.set(H, oe);
        }
      }
      function k(P, N, M, R) {
        return D(Eo(P, t, o), Bq(N), M, R);
      }
      function D(P, N, M, R) {
        const G = E.checkDefined(a.get(Xse(N, R))), L = G.get(P), z = S(L, M);
        z.languageServiceRefCount--, E.assert(z.languageServiceRefCount >= 0), z.languageServiceRefCount === 0 && (DI(L) ? G.delete(P) : (L.delete(M), L.size === 1 && G.set(P, rs(L.values(), mo))));
      }
      return {
        acquireDocument: u,
        acquireDocumentWithKey: d,
        updateDocument: g,
        updateDocumentWithKey: h,
        releaseDocument: k,
        releaseDocumentWithKey: D,
        getKeyForCompilationSettings: Bq,
        getDocumentRegistryBucketKeyWithMode: Xse,
        reportStats: c,
        getBuckets: () => a
      };
    }
    function Bq(e) {
      return PW(e, fW);
    }
    function Xse(e, t) {
      return t ? `${e}|${t}` : e;
    }
    function Qse(e, t, n, i, a, o, c) {
      const _ = CS(i), u = pu(_), d = Jq(t, n, u, c), g = Jq(n, t, u, c);
      return on.ChangeTracker.with({
        host: i,
        formatContext: a,
        preferences: o
      }, (h) => {
        HJe(e, h, d, t, n, i.getCurrentDirectory(), _), $Je(e, h, d, g, i, u);
      });
    }
    function Jq(e, t, n, i) {
      const a = n(e);
      return (c) => {
        const _ = i && i.tryGetSourcePosition({
          fileName: c,
          pos: 0
        }), u = o(_ ? _.fileName : c);
        return _ ? u === void 0 ? void 0 : GJe(_.fileName, u, c, n) : u;
      };
      function o(c) {
        if (n(c) === a) return t;
        const _ = qJ(c, a, n);
        return _ === void 0 ? void 0 : t + "/" + _;
      }
    }
    function GJe(e, t, n, i) {
      const a = vx(e, t, i);
      return Yse(Xn(n), a);
    }
    function HJe(e, t, n, i, a, o, c) {
      const { configFile: _ } = e.getCompilerOptions();
      if (!_) return;
      const u = Xn(_.fileName), d = iD(_);
      if (!d) return;
      Zse(d, (T, k) => {
        switch (k) {
          case "files":
          case "include":
          case "exclude": {
            if (g(T) || k !== "include" || !hu(T.initializer)) return;
            const D = Rn(T.initializer.elements, (N) => Ts(N) ? N.text : void 0);
            if (D.length === 0) return;
            const P = SO(u, [], D, c, o);
            O0(E.checkDefined(P.includeFilePattern), c).test(i) && !O0(E.checkDefined(P.includeFilePattern), c).test(a) && t.insertNodeAfter(_, ws(T.initializer.elements), A.createStringLiteral(S(a)));
            return;
          }
          case "compilerOptions":
            Zse(T.initializer, (D, P) => {
              const N = mW(P);
              E.assert(N?.type !== "listOrElement"), N && (N.isFilePath || N.type === "list" && N.element.isFilePath) ? g(D) : P === "paths" && Zse(D.initializer, (M) => {
                if (hu(M.initializer))
                  for (const R of M.initializer.elements) h(R);
              });
            });
            return;
        }
      });
      function g(T) {
        const k = hu(T.initializer) ? T.initializer.elements : [T.initializer];
        let D = !1;
        for (const P of k) D = h(P) || D;
        return D;
      }
      function h(T) {
        if (!Ts(T)) return !1;
        const k = n(Yse(u, T.text));
        return k !== void 0 ? (t.replaceRangeWithText(_, L2e(T, _), S(k)), !0) : !1;
      }
      function S(T) {
        return Zf(u, T, !c);
      }
    }
    function $Je(e, t, n, i, a, o) {
      const c = e.getSourceFiles();
      for (const _ of c) {
        const u = n(_.fileName), d = u ?? _.fileName, g = Xn(d), h = i(_.fileName), S = h || _.fileName, T = Xn(S), k = u !== void 0 || h !== void 0;
        YJe(_, t, (D) => {
          if (!Bf(D)) return;
          const P = n(Yse(T, D));
          return P === void 0 ? void 0 : sS(Zf(g, P, o));
        }, (D) => {
          const P = e.getTypeChecker().getSymbolAtLocation(D);
          if (P?.declarations && P.declarations.some((M) => o_(M))) return;
          const N = h !== void 0 ? F2e(D, qS(D.text, S, e.getCompilerOptions(), a), n, c) : QJe(P, D, _, e, a, n);
          return N !== void 0 && (N.updated || k && Bf(D.text)) ? $h.updateModuleSpecifier(e.getCompilerOptions(), _, d, N.newFileName, Bv(e, a), D.text) : void 0;
        });
      }
    }
    function XJe(e, t) {
      return us(jn(e, t));
    }
    function Yse(e, t) {
      return sS(XJe(e, t));
    }
    function QJe(e, t, n, i, a, o) {
      if (e) {
        const c = xr(e.declarations, Pi).fileName, _ = o(c);
        return _ === void 0 ? {
          newFileName: c,
          updated: !1
        } : {
          newFileName: _,
          updated: !0
        };
      } else {
        const c = i.getModeForUsageLocation(n, t);
        return F2e(t, a.resolveModuleNameLiterals || !a.resolveModuleNames ? i.getResolvedModuleFromModuleSpecifier(t, n) : a.getResolvedModuleWithFailedLookupLocationsFromCache && a.getResolvedModuleWithFailedLookupLocationsFromCache(t.text, n.fileName, c), o, i.getSourceFiles());
      }
    }
    function F2e(e, t, n, i) {
      if (!t) return;
      if (t.resolvedModule) {
        const u = _(t.resolvedModule.resolvedFileName);
        if (u) return u;
      }
      const a = bt(t.failedLookupLocations, o) || Bf(e.text) && bt(t.failedLookupLocations, c);
      if (a) return a;
      return t.resolvedModule && {
        newFileName: t.resolvedModule.resolvedFileName,
        updated: !1
      };
      function o(u) {
        const d = n(u);
        return d && xr(i, (g) => g.fileName === d) ? c(u) : void 0;
      }
      function c(u) {
        return Uo(u, "/package.json") ? void 0 : _(u);
      }
      function _(u) {
        const d = n(u);
        return d && {
          newFileName: d,
          updated: !0
        };
      }
    }
    function YJe(e, t, n, i) {
      for (const a of e.referencedFiles || Te) {
        const o = n(a.fileName);
        o !== void 0 && o !== e.text.slice(a.pos, a.end) && t.replaceRangeWithText(e, a, o);
      }
      for (const a of e.imports) {
        const o = i(a);
        o !== void 0 && o !== a.text && t.replaceRangeWithText(e, L2e(a, e), o);
      }
    }
    function L2e(e, t) {
      return bf(e.getStart(t) + 1, e.end - 1);
    }
    function Zse(e, t) {
      if (bs(e))
        for (const n of e.properties) ol(n) && Ts(n.name) && t(n, n.name.text);
    }
    var zq = /* @__PURE__ */ ((e) => (e[e.exact = 0] = "exact", e[e.prefix = 1] = "prefix", e[e.substring = 2] = "substring", e[e.camelCase = 3] = "camelCase", e))(zq || {});
    function Zw(e, t) {
      return {
        kind: e,
        isCaseSensitive: t
      };
    }
    function Kse(e) {
      const t = /* @__PURE__ */ new Map(), n = e.trim().split(".").map((i) => tze(i.trim()));
      if (n.length === 1 && n[0].totalTextChunk.text === "") return {
        getMatchForLastSegmentOfPattern: () => Zw(2, !0),
        getFullMatch: () => Zw(2, !0),
        patternContainsDots: !1
      };
      if (!n.some((i) => !i.subWordTextChunks.length))
        return {
          getFullMatch: (i, a) => ZJe(i, a, n, t),
          getMatchForLastSegmentOfPattern: (i) => eoe(i, ws(n), t),
          patternContainsDots: n.length > 1
        };
    }
    function ZJe(e, t, n, i) {
      if (!eoe(t, ws(n), i) || n.length - 1 > e.length) return;
      let a;
      for (let o = n.length - 2, c = e.length - 1; o >= 0; o -= 1, c -= 1) a = j2e(a, eoe(e[c], n[o], i));
      return a;
    }
    function M2e(e, t) {
      let n = t.get(e);
      return n || t.set(e, n = soe(e)), n;
    }
    function R2e(e, t, n) {
      const i = rze(e, t.textLowerCase);
      if (i === 0) return Zw(t.text.length === e.length ? 0 : 1, ta(e, t.text));
      if (t.isLowerCase) {
        if (i === -1) return;
        const a = M2e(e, n);
        for (const o of a) if (toe(e, o, t.text, !0)) return Zw(2, toe(e, o, t.text, !1));
        if (t.text.length < e.length && hE(e.charCodeAt(i))) return Zw(2, !1);
      } else {
        if (e.indexOf(t.text) > 0) return Zw(2, !0);
        if (t.characterSpans.length > 0) {
          const a = M2e(e, n), o = B2e(e, a, t, !1) ? !0 : B2e(e, a, t, !0) ? !1 : void 0;
          if (o !== void 0) return Zw(3, o);
        }
      }
    }
    function eoe(e, t, n) {
      if (Wq(t.totalTextChunk.text, (o) => o !== 32 && o !== 42)) {
        const o = R2e(e, t.totalTextChunk, n);
        if (o) return o;
      }
      const i = t.subWordTextChunks;
      let a;
      for (const o of i) a = j2e(a, R2e(e, o, n));
      return a;
    }
    function j2e(e, t) {
      return tj([e, t], KJe);
    }
    function KJe(e, t) {
      return e === void 0 ? 1 : t === void 0 ? -1 : Fo(e.kind, t.kind) || tv(!e.isCaseSensitive, !t.isCaseSensitive);
    }
    function toe(e, t, n, i, a = {
      start: 0,
      length: n.length
    }) {
      return a.length <= t.length && U2e(0, a.length, (o) => eze(n.charCodeAt(a.start + o), e.charCodeAt(t.start + o), i));
    }
    function eze(e, t, n) {
      return n ? roe(e) === roe(t) : e === t;
    }
    function B2e(e, t, n, i) {
      const a = n.characterSpans;
      let o = 0, c = 0, _, u;
      for (; ; ) {
        if (c === a.length) return !0;
        if (o === t.length) return !1;
        let d = t[o], g = !1;
        for (; c < a.length; c++) {
          const h = a[c];
          if (g && (!hE(n.text.charCodeAt(a[c - 1].start)) || !hE(n.text.charCodeAt(a[c].start))) || !toe(e, d, n.text, i, h)) break;
          g = !0, _ = _ === void 0 ? o : _, u = u === void 0 ? !0 : u, d = du(d.start + h.length, d.length - h.length);
        }
        !g && u !== void 0 && (u = !1), o++;
      }
    }
    function tze(e) {
      return {
        totalTextChunk: ioe(e),
        subWordTextChunks: ize(e)
      };
    }
    function hE(e) {
      if (e >= 65 && e <= 90) return !0;
      if (e < 127 || !j7(e, 99)) return !1;
      const t = String.fromCharCode(e);
      return t === t.toUpperCase();
    }
    function J2e(e) {
      if (e >= 97 && e <= 122) return !0;
      if (e < 127 || !j7(e, 99)) return !1;
      const t = String.fromCharCode(e);
      return t === t.toLowerCase();
    }
    function rze(e, t) {
      const n = e.length - t.length;
      for (let i = 0; i <= n; i++) if (Wq(t, (a, o) => roe(e.charCodeAt(o + i)) === a)) return i;
      return -1;
    }
    function roe(e) {
      return e >= 65 && e <= 90 ? 97 + (e - 65) : e < 127 ? e : String.fromCharCode(e).toLowerCase().charCodeAt(0);
    }
    function noe(e) {
      return e >= 48 && e <= 57;
    }
    function nze(e) {
      return hE(e) || J2e(e) || noe(e) || e === 95 || e === 36;
    }
    function ize(e) {
      const t = [];
      let n = 0, i = 0;
      for (let a = 0; a < e.length; a++) nze(e.charCodeAt(a)) ? (i === 0 && (n = a), i++) : i > 0 && (t.push(ioe(e.substr(n, i))), i = 0);
      return i > 0 && t.push(ioe(e.substr(n, i))), t;
    }
    function ioe(e) {
      const t = e.toLowerCase();
      return {
        text: e,
        textLowerCase: t,
        isLowerCase: e === t,
        characterSpans: aoe(e)
      };
    }
    function aoe(e) {
      return z2e(e, !1);
    }
    function soe(e) {
      return z2e(e, !0);
    }
    function z2e(e, t) {
      const n = [];
      let i = 0;
      for (let a = 1; a < e.length; a++) {
        const o = noe(e.charCodeAt(a - 1)), c = noe(e.charCodeAt(a)), _ = sze(e, t, a), u = t && aze(e, a, i);
        (ooe(e.charCodeAt(a - 1)) || ooe(e.charCodeAt(a)) || o !== c || _ || u) && (W2e(e, i, a) || n.push(du(i, a - i)), i = a);
      }
      return W2e(e, i, e.length) || n.push(du(i, e.length - i)), n;
    }
    function ooe(e) {
      switch (e) {
        case 33:
        case 34:
        case 35:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 44:
        case 45:
        case 46:
        case 47:
        case 58:
        case 59:
        case 63:
        case 64:
        case 91:
        case 92:
        case 93:
        case 95:
        case 123:
        case 125:
          return !0;
      }
      return !1;
    }
    function W2e(e, t, n) {
      return Wq(e, (i) => ooe(i) && i !== 95, t, n);
    }
    function aze(e, t, n) {
      return t !== n && t + 1 < e.length && hE(e.charCodeAt(t)) && J2e(e.charCodeAt(t + 1)) && Wq(e, hE, n, t);
    }
    function sze(e, t, n) {
      const i = hE(e.charCodeAt(n - 1));
      return hE(e.charCodeAt(n)) && (!t || !i);
    }
    function U2e(e, t, n) {
      for (let i = e; i < t; i++) if (!n(i)) return !1;
      return !0;
    }
    function Wq(e, t, n = 0, i = e.length) {
      return U2e(n, i, (a) => t(e.charCodeAt(a), a));
    }
    function V2e(e, t = !0, n = !1) {
      const i = {
        languageVersion: 12,
        pragmas: void 0,
        checkJsDirective: void 0,
        referencedFiles: [],
        typeReferenceDirectives: [],
        libReferenceDirectives: [],
        amdDependencies: [],
        moduleName: void 0
      }, a = [];
      let o, c, _, u = 0, d = !1;
      function g() {
        return c = _, _ = su.scan(), _ === 19 ? u++ : _ === 20 && u--, _;
      }
      function h() {
        const L = su.getTokenValue(), z = su.getTokenStart();
        return {
          fileName: L,
          pos: z,
          end: z + L.length
        };
      }
      function S() {
        o || (o = []), o.push({
          ref: h(),
          depth: u
        });
      }
      function T() {
        a.push(h()), k();
      }
      function k() {
        u === 0 && (d = !0);
      }
      function D() {
        let L = su.getToken();
        return L === 138 ? (L = g(), L === 144 && (L = g(), L === 11 && S()), !0) : !1;
      }
      function P() {
        if (c === 25) return !1;
        let L = su.getToken();
        if (L === 102) {
          if (L = g(), L === 21) {
            if (L = g(), L === 11 || L === 15)
              return T(), !0;
          } else {
            if (L === 11)
              return T(), !0;
            if (L === 156 && su.lookAhead(() => {
              const z = su.scan();
              return z !== 161 && (z === 42 || z === 19 || z === 80 || z_(z));
            }) && (L = g()), L === 80 || z_(L))
              if (L = g(), L === 161) {
                if (L = g(), L === 11)
                  return T(), !0;
              } else if (L === 64) {
                if (M(!0)) return !0;
              } else if (L === 28) L = g();
              else return !0;
            if (L === 19) {
              for (L = g(); L !== 20 && L !== 1; ) L = g();
              L === 20 && (L = g(), L === 161 && (L = g(), L === 11 && T()));
            } else L === 42 && (L = g(), L === 130 && (L = g(), (L === 80 || z_(L)) && (L = g(), L === 161 && (L = g(), L === 11 && T()))));
          }
          return !0;
        }
        return !1;
      }
      function N() {
        let L = su.getToken();
        if (L === 95) {
          if (k(), L = g(), L === 156 && su.lookAhead(() => {
            const z = su.scan();
            return z === 42 || z === 19;
          }) && (L = g()), L === 19) {
            for (L = g(); L !== 20 && L !== 1; ) L = g();
            L === 20 && (L = g(), L === 161 && (L = g(), L === 11 && T()));
          } else if (L === 42)
            L = g(), L === 161 && (L = g(), L === 11 && T());
          else if (L === 102 && (L = g(), L === 156 && su.lookAhead(() => {
            const z = su.scan();
            return z === 80 || z_(z);
          }) && (L = g()), (L === 80 || z_(L)) && (L = g(), L === 64 && M(!0))))
            return !0;
          return !0;
        }
        return !1;
      }
      function M(L, z = !1) {
        let H = L ? g() : su.getToken();
        return H === 149 ? (H = g(), H === 21 && (H = g(), (H === 11 || z && H === 15) && T()), !0) : !1;
      }
      function R() {
        let L = su.getToken();
        if (L === 80 && su.getTokenValue() === "define") {
          if (L = g(), L !== 21) return !0;
          if (L = g(), L === 11 || L === 15)
            if (L = g(), L === 28) L = g();
            else return !0;
          if (L !== 23) return !0;
          for (L = g(); L !== 24 && L !== 1; )
            (L === 11 || L === 15) && T(), L = g();
          return !0;
        }
        return !1;
      }
      function G() {
        for (su.setText(e), g(); su.getToken() !== 1; ) {
          if (su.getToken() === 16) {
            const L = [su.getToken()];
            e: for (; It(L); ) {
              const z = su.scan();
              switch (z) {
                case 1:
                  break e;
                case 102:
                  P();
                  break;
                case 16:
                  L.push(z);
                  break;
                case 19:
                  It(L) && L.push(z);
                  break;
                case 20:
                  It(L) && (Wo(L) === 16 ? su.reScanTemplateToken(!1) === 18 && L.pop() : L.pop());
                  break;
              }
            }
            g();
          }
          D() || P() || N() || n && (M(!1, !0) || R()) || g();
        }
        su.setText(void 0);
      }
      if (t && G(), cW(i, e), lW(i, so), d) {
        if (o) for (const L of o) a.push(L.ref);
        return {
          referencedFiles: i.referencedFiles,
          typeReferenceDirectives: i.typeReferenceDirectives,
          libReferenceDirectives: i.libReferenceDirectives,
          importedFiles: a,
          isLibFile: !1,
          ambientExternalModules: void 0
        };
      } else {
        let L;
        if (o) for (const z of o) z.depth === 0 ? (L || (L = []), L.push(z.ref.fileName)) : a.push(z.ref);
        return {
          referencedFiles: i.referencedFiles,
          typeReferenceDirectives: i.typeReferenceDirectives,
          libReferenceDirectives: i.libReferenceDirectives,
          importedFiles: a,
          isLibFile: !1,
          ambientExternalModules: L
        };
      }
    }
    var oze = /^data:(?:application\/json;charset=[uU][tT][fF]-8;base64,([A-Za-z0-9+/=]+)$)?/;
    function coe(e) {
      const t = pu(e.useCaseSensitiveFileNames()), n = e.getCurrentDirectory(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map();
      return {
        tryGetSourcePosition: _,
        tryGetGeneratedPosition: u,
        toLineColumnOffset: S,
        clearCache: T,
        documentPositionMappers: a
      };
      function o(k) {
        return Eo(k, n, t);
      }
      function c(k, D) {
        const P = o(k), N = a.get(P);
        if (N) return N;
        let M;
        if (e.getDocumentPositionMapper) M = e.getDocumentPositionMapper(k, D);
        else if (e.readFile) {
          const R = h(k);
          M = R && Uq({
            getSourceFileLike: h,
            getCanonicalFileName: t,
            log: (G) => e.log(G)
          }, k, KW(R.text, Mg(R)), (G) => !e.fileExists || e.fileExists(G) ? e.readFile(G) : void 0);
        }
        return a.set(P, M || tU), M || tU;
      }
      function _(k) {
        if (!$l(k.fileName) || !d(k.fileName)) return;
        const D = c(k.fileName).getSourcePosition(k);
        return !D || D === k ? void 0 : _(D) || D;
      }
      function u(k) {
        if ($l(k.fileName)) return;
        const D = d(k.fileName);
        if (!D) return;
        const P = e.getProgram();
        if (P.isSourceOfProjectReferenceRedirect(D.fileName)) return;
        const N = P.getCompilerOptions().outFile, M = N ? __(N) + ".d.ts" : H5(k.fileName, P.getCompilerOptions(), P);
        if (M === void 0) return;
        const R = c(M, k.fileName).getGeneratedPosition(k);
        return R === k ? void 0 : R;
      }
      function d(k) {
        const D = e.getProgram();
        if (!D) return;
        const P = o(k), N = D.getSourceFileByPath(P);
        return N && N.resolvedPath === P ? N : void 0;
      }
      function g(k) {
        const D = o(k), P = i.get(D);
        if (P !== void 0) return P || void 0;
        if (!e.readFile || e.fileExists && !e.fileExists(k)) {
          i.set(D, !1);
          return;
        }
        const N = e.readFile(k), M = N ? cze(N) : !1;
        return i.set(D, M), M || void 0;
      }
      function h(k) {
        return e.getSourceFileLike ? e.getSourceFileLike(k) : d(k) || g(k);
      }
      function S(k, D) {
        return h(k).getLineAndCharacterOfPosition(D);
      }
      function T() {
        i.clear(), a.clear();
      }
    }
    function Uq(e, t, n, i) {
      let a = Mne(n);
      if (a) {
        const _ = oze.exec(a);
        if (_) {
          if (_[1]) {
            const u = _[1];
            return q2e(e, hee(Cl, u), t);
          }
          a = void 0;
        }
      }
      const o = [];
      a && o.push(a), o.push(t + ".map");
      const c = a && ca(a, Xn(t));
      for (const _ of o) {
        const u = ca(_, Xn(t)), d = i(u, c);
        if (Ta(d)) return q2e(e, d, u);
        if (d !== void 0) return d || void 0;
      }
    }
    function q2e(e, t, n) {
      const i = Rne(t);
      if (!(!i || !i.sources || !i.file || !i.mappings) && !(i.sourcesContent && i.sourcesContent.some(Ta)))
        return Bne(e, i, n);
    }
    function cze(e, t) {
      return {
        text: e,
        lineMap: t,
        getLineAndCharacterOfPosition(n) {
          return VC(Mg(this), n);
        }
      };
    }
    var loe = /* @__PURE__ */ new Map();
    function Vq(e, t, n) {
      var i;
      t.getSemanticDiagnostics(e, n);
      const a = [], o = t.getTypeChecker();
      !(t.getImpliedNodeFormatForEmit(e) === 1 || jc(e.fileName, [".cts", ".cjs"])) && e.commonJsModuleIndicator && (bse(t) || iq(t.getCompilerOptions())) && lze(e) && a.push(Kr(pze(e.commonJsModuleIndicator), p.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));
      const c = T_(e);
      if (loe.clear(), _(e), Yx(t.getCompilerOptions())) for (const u of e.imports) {
        const d = fD(u);
        if (bl(d) && Qn(d, 32)) continue;
        const g = uze(d);
        if (!g) continue;
        const h = (i = t.getResolvedModuleFromModuleSpecifier(u, e)) == null ? void 0 : i.resolvedModule, S = h && t.getSourceFile(h.resolvedFileName);
        S && S.externalModuleIndicator && S.externalModuleIndicator !== !0 && Xo(S.externalModuleIndicator) && S.externalModuleIndicator.isExportEquals && a.push(Kr(g, p.Import_may_be_converted_to_a_default_import));
      }
      return Mn(a, e.bindSuggestionDiagnostics), Mn(a, t.getSuggestionDiagnostics(e, n)), a.sort((u, d) => u.start - d.start), a;
      function _(u) {
        if (c)
          mze(u, o) && a.push(Kr(ci(u.parent) ? u.parent.name : u, p.This_constructor_function_may_be_converted_to_a_class_declaration));
        else {
          if ($c(u) && u.parent === e && u.declarationList.flags & 2 && u.declarationList.declarations.length === 1) {
            const g = u.declarationList.declarations[0].initializer;
            g && J_(g, !0) && a.push(Kr(g, p.require_call_may_be_converted_to_an_import));
          }
          const d = Zu.getJSDocTypedefNodes(u);
          for (const g of d) a.push(Kr(g, p.JSDoc_typedef_may_be_converted_to_TypeScript_type));
          Zu.parameterShouldGetTypeFromJSDoc(u) && a.push(Kr(u.name || u, p.JSDoc_types_may_be_moved_to_TypeScript_types));
        }
        Hq(u) && _ze(u, o, a), u.forEachChild(_);
      }
    }
    function lze(e) {
      return e.statements.some((t) => {
        switch (t.kind) {
          case 244:
            return t.declarationList.declarations.some((n) => !!n.initializer && J_(G2e(n.initializer), !0));
          case 245: {
            const { expression: n } = t;
            if (!un(n)) return J_(n, !0);
            const i = qc(n);
            return i === 1 || i === 2;
          }
          default:
            return !1;
        }
      });
    }
    function G2e(e) {
      return Ln(e) ? G2e(e.expression) : e;
    }
    function uze(e) {
      switch (e.kind) {
        case 273:
          const { importClause: t, moduleSpecifier: n } = e;
          return t && !t.name && t.namedBindings && t.namedBindings.kind === 275 && Ts(n) ? t.namedBindings.name : void 0;
        case 272:
          return e.name;
        default:
          return;
      }
    }
    function _ze(e, t, n) {
      fze(e, t) && !loe.has(Q2e(e)) && n.push(Kr(!e.name && ci(e.parent) && Fe(e.parent.name) ? e.parent.name : e, p.This_may_be_converted_to_an_async_function));
    }
    function fze(e, t) {
      return !hD(e) && e.body && Wa(e.body) && dze(e.body, t) && qq(e, t);
    }
    function qq(e, t) {
      const n = t.getSignatureFromDeclaration(e), i = n ? t.getReturnTypeOfSignature(n) : void 0;
      return !!i && !!t.getPromisedTypeOfPromise(i);
    }
    function pze(e) {
      return un(e) ? e.left : e;
    }
    function dze(e, t) {
      return !!Hy(e, (n) => kL(n, t));
    }
    function kL(e, t) {
      return zf(e) && !!e.expression && Gq(e.expression, t);
    }
    function Gq(e, t) {
      if (!H2e(e) || !$2e(e) || !e.arguments.every((i) => X2e(i, t))) return !1;
      let n = e.expression.expression;
      for (; H2e(n) || Ln(n); ) if (za(n)) {
        if (!$2e(n) || !n.arguments.every((i) => X2e(i, t))) return !1;
        n = n.expression.expression;
      } else n = n.expression;
      return !0;
    }
    function H2e(e) {
      return za(e) && (oI(e, "then") || oI(e, "catch") || oI(e, "finally"));
    }
    function $2e(e) {
      const t = e.expression.name.text, n = t === "then" ? 2 : t === "catch" || t === "finally" ? 1 : 0;
      return e.arguments.length > n ? !1 : e.arguments.length < n ? !0 : n === 1 || _t(e.arguments, (i) => i.kind === 106 || Fe(i) && i.text === "undefined");
    }
    function X2e(e, t) {
      switch (e.kind) {
        case 263:
        case 219:
          if (Gc(e) & 1) return !1;
        case 220:
          loe.set(Q2e(e), !0);
        case 106:
          return !0;
        case 80:
        case 212: {
          const n = t.getSymbolAtLocation(e);
          return n ? t.isUndefinedSymbol(n) || _t(mu(n, t).declarations, (i) => Ra(i) || E0(i) && !!i.initializer && Ra(i.initializer)) : !1;
        }
        default:
          return !1;
      }
    }
    function Q2e(e) {
      return `${e.pos.toString()}:${e.end.toString()}`;
    }
    function mze(e, t) {
      var n, i, a, o;
      if (Lo(e)) {
        if (ci(e.parent) && ((n = e.symbol.members) != null && n.size)) return !0;
        const c = t.getSymbolOfExpando(e, !1);
        return !!(c && ((i = c.exports) != null && i.size || (a = c.members) != null && a.size));
      }
      return Xc(e) ? !!((o = e.symbol.members) != null && o.size) : !1;
    }
    function Hq(e) {
      switch (e.kind) {
        case 263:
        case 175:
        case 219:
        case 220:
          return !0;
        default:
          return !1;
      }
    }
    var gze = /* @__PURE__ */ new Set(["isolatedModules"]);
    function uoe(e, t) {
      return Z2e(e, t, !1);
    }
    function Y2e(e, t) {
      return Z2e(e, t, !0);
    }
    var hze = `interface Boolean {}
interface Function {}
interface CallableFunction {}
interface NewableFunction {}
interface IArguments {}
interface Number {}
interface Object {}
interface RegExp {}
interface String {}
interface Array<T> { length: number; [n: number]: T; }
interface SymbolConstructor {
    (desc?: string | number): symbol;
    for(name: string): symbol;
    readonly toStringTag: symbol;
}
declare var Symbol: SymbolConstructor;
interface Symbol {
    readonly [Symbol.toStringTag]: string;
}`, $q = "lib.d.ts", _oe;
    function Z2e(e, t, n) {
      _oe ?? (_oe = Sk($q, hze, { languageVersion: 99 }));
      const i = [], a = t.compilerOptions ? Xq(t.compilerOptions, i) : {}, o = RL();
      for (const T in o) po(o, T) && a[T] === void 0 && (a[T] = o[T]);
      for (const T of Bre)
        a.verbatimModuleSyntax && gze.has(T.name) || (a[T.name] = T.transpileOptionValue);
      a.suppressOutputPathCheck = !0, a.allowNonTsExtensions = !0, n ? (a.declaration = !0, a.emitDeclarationOnly = !0, a.isolatedDeclarations = !0) : (a.declaration = !1, a.declarationMap = !1), a.noLib = !n;
      const c = N0(a), _ = {
        getSourceFile: (T) => T === us(u) ? d : T === us($q) ? _oe : void 0,
        writeFile: (T, k) => {
          lc(T, ".map") ? (E.assertEqual(h, void 0, "Unexpected multiple source map outputs, file:", T), h = k) : (E.assertEqual(g, void 0, "Unexpected multiple outputs, file:", T), g = k);
        },
        getDefaultLibFileName: () => $q,
        useCaseSensitiveFileNames: () => !1,
        getCanonicalFileName: (T) => T,
        getCurrentDirectory: () => "",
        getNewLine: () => c,
        fileExists: (T) => T === u || !!n && T === $q,
        readFile: () => "",
        directoryExists: () => !0,
        getDirectories: () => []
      }, u = t.fileName || (t.compilerOptions && t.compilerOptions.jsx ? "module.tsx" : "module.ts"), d = Sk(u, e, {
        languageVersion: Ps(a),
        impliedNodeFormat: XN(Eo(u, "", _.getCanonicalFileName), void 0, _, a),
        setExternalModuleIndicator: LA(a),
        jsDocParsingMode: t.jsDocParsingMode ?? 0
      });
      t.moduleName && (d.moduleName = t.moduleName), t.renamedDependencies && (d.renamedDependencies = new Map(Object.entries(t.renamedDependencies)));
      let g, h;
      const S = QN([u], a, _);
      return t.reportDiagnostics && (Mn(i, S.getSyntacticDiagnostics(d)), Mn(i, S.getOptionsDiagnostics())), Mn(i, S.emit(void 0, void 0, void 0, n, t.transformers, n).diagnostics), g === void 0 ? E.fail("Output generation failed") : {
        outputText: g,
        diagnostics: i,
        sourceMapText: h
      };
    }
    function K2e(e, t, n, i, a) {
      const o = uoe(e, {
        compilerOptions: t,
        fileName: n,
        reportDiagnostics: !!i,
        moduleName: a
      });
      return Mn(i, o.diagnostics), o.outputText;
    }
    var foe;
    function Xq(e, t) {
      foe = foe || dn($d, (n) => typeof n.type == "object" && !Dl(n.type, (i) => typeof i != "number")), e = ZV(e);
      for (const n of foe) {
        if (!po(e, n.name)) continue;
        const i = e[n.name];
        Ta(i) ? e[n.name] = TF(n, i, t) : Dl(n.type, (a) => a === i) || t.push(zre(n));
      }
      return e;
    }
    var poe = {};
    gi(poe, { getNavigateToItems: () => eSe });
    function eSe(e, t, n, i, a, o, c, _) {
      const u = Kse(i);
      if (!u) return Te;
      const d = [], g = e.length === 1 ? e[0] : void 0;
      for (const h of e)
        n.throwIfCancellationRequested(), !(o && h.isDeclarationFile) && (tSe(h, !!c, g, _) || h.getNamedDeclarations().forEach((S, T) => {
          yze(u, T, S, t, h.fileName, !!c, g, d, _);
        }));
      return d.sort(Tze), (a === void 0 ? d : d.slice(0, a)).map(xze);
    }
    function tSe(e, t, n, i) {
      return e !== n && t && (TI(e.path) || i.isSourceFileDefaultLibrary(e));
    }
    function yze(e, t, n, i, a, o, c, _, u) {
      const d = e.getMatchForLastSegmentOfPattern(t);
      if (d) {
        for (const g of n)
          if (vze(g, i, o, c, u))
            if (e.patternContainsDots) {
              const h = e.getFullMatch(Sze(g), t);
              h && _.push({
                name: t,
                fileName: a,
                matchKind: h.kind,
                isCaseSensitive: h.isCaseSensitive,
                declaration: g
              });
            } else _.push({
              name: t,
              fileName: a,
              matchKind: d.kind,
              isCaseSensitive: d.isCaseSensitive,
              declaration: g
            });
      }
    }
    function vze(e, t, n, i, a) {
      var o;
      switch (e.kind) {
        case 274:
        case 277:
        case 272:
          const c = t.getSymbolAtLocation(e.name), _ = t.getAliasedSymbol(c);
          return c.escapedName !== _.escapedName && !((o = _.declarations) != null && o.every((u) => tSe(u.getSourceFile(), n, i, a)));
        default:
          return !0;
      }
    }
    function bze(e, t) {
      const n = va(e);
      return !!n && (rSe(n, t) || n.kind === 168 && doe(n.expression, t));
    }
    function doe(e, t) {
      return rSe(e, t) || Ln(e) && (t.push(e.name.text), !0) && doe(e.expression, t);
    }
    function rSe(e, t) {
      return Tm(e) && (t.push(Xp(e)), !0);
    }
    function Sze(e) {
      const t = [], n = va(e);
      if (n && n.kind === 168 && !doe(n.expression, t)) return Te;
      t.shift();
      let i = ZS(e);
      for (; i; ) {
        if (!bze(i, t)) return Te;
        i = ZS(i);
      }
      return t.reverse(), t;
    }
    function Tze(e, t) {
      return Fo(e.matchKind, t.matchKind) || u3(e.name, t.name);
    }
    function xze(e) {
      const t = e.declaration, n = ZS(t), i = n && va(n);
      return {
        name: e.name,
        kind: o2(t),
        kindModifiers: Ww(t),
        matchKind: zq[e.matchKind],
        isCaseSensitive: e.isCaseSensitive,
        fileName: e.fileName,
        textSpan: P_(t),
        containerName: i ? i.text : "",
        containerKind: i ? o2(n) : ""
      };
    }
    var moe = {};
    gi(moe, {
      getNavigationBarItems: () => iSe,
      getNavigationTree: () => aSe
    });
    var kze = /\s+/g, goe = 150, Qq, wI, CL = [], q0, nSe = [], yE, hoe = [];
    function iSe(e, t) {
      Qq = t, wI = e;
      try {
        return or(Pze(cSe(e)), Aze);
      } finally {
        sSe();
      }
    }
    function aSe(e, t) {
      Qq = t, wI = e;
      try {
        return hSe(cSe(e));
      } finally {
        sSe();
      }
    }
    function sSe() {
      wI = void 0, Qq = void 0, CL = [], q0 = void 0, hoe = [];
    }
    function EL(e) {
      return Kw(e.getText(wI));
    }
    function Yq(e) {
      return e.node.kind;
    }
    function oSe(e, t) {
      e.children ? e.children.push(t) : e.children = [t];
    }
    function cSe(e) {
      E.assert(!CL.length);
      const t = {
        node: e,
        name: void 0,
        additionalNodes: void 0,
        parent: void 0,
        children: void 0,
        indent: 0
      };
      q0 = t;
      for (const n of e.statements) Rk(n);
      return Jv(), E.assert(!q0 && !CL.length), t;
    }
    function u2(e, t) {
      oSe(q0, yoe(e, t));
    }
    function yoe(e, t) {
      return {
        node: e,
        name: t || (Jl(e) || dt(e) ? va(e) : void 0),
        additionalNodes: void 0,
        parent: q0,
        children: void 0,
        indent: q0.indent + 1
      };
    }
    function lSe(e) {
      yE || (yE = /* @__PURE__ */ new Map()), yE.set(e, !0);
    }
    function uSe(e) {
      for (let t = 0; t < e; t++) Jv();
    }
    function _Se(e, t) {
      const n = [];
      for (; !Tm(t); ) {
        const i = cA(t), a = Jh(t);
        t = t.expression, !(a === "prototype" || Oi(i)) && n.push(i);
      }
      n.push(t);
      for (let i = n.length - 1; i > 0; i--) {
        const a = n[i];
        _2(e, a);
      }
      return [n.length - 1, n[0]];
    }
    function _2(e, t) {
      const n = yoe(e, t);
      oSe(q0, n), CL.push(q0), nSe.push(yE), yE = void 0, q0 = n;
    }
    function Jv() {
      q0.children && (Zq(q0.children, q0), Soe(q0.children)), q0 = CL.pop(), yE = nSe.pop();
    }
    function zv(e, t, n) {
      _2(e, n), Rk(t), Jv();
    }
    function fSe(e) {
      e.initializer && Ize(e.initializer) ? (_2(e), Fa(e.initializer, Rk), Jv()) : zv(e, e.initializer);
    }
    function voe(e) {
      const t = va(e);
      if (t === void 0) return !1;
      if (_s(t)) {
        const n = t.expression;
        return go(n) || V_(n) || ep(n);
      }
      return !!t;
    }
    function Rk(e) {
      if (Qq.throwIfCancellationRequested(), !(!e || Tx(e)))
        switch (e.kind) {
          case 177:
            const t = e;
            zv(t, t.body);
            for (const c of t.parameters) df(c, t) && u2(c);
            break;
          case 175:
          case 178:
          case 179:
          case 174:
            voe(e) && zv(e, e.body);
            break;
          case 173:
            voe(e) && fSe(e);
            break;
          case 172:
            voe(e) && u2(e);
            break;
          case 274:
            const n = e;
            n.name && u2(n.name);
            const { namedBindings: i } = n;
            if (i) if (i.kind === 275) u2(i);
            else for (const c of i.elements) u2(c);
            break;
          case 305:
            zv(e, e.name);
            break;
          case 306:
            const { expression: a } = e;
            Fe(a) ? u2(e, a) : u2(e);
            break;
          case 209:
          case 304:
          case 261: {
            const c = e;
            Ja(c.name) ? Rk(c.name) : fSe(c);
            break;
          }
          case 263:
            const o = e.name;
            o && Fe(o) && lSe(o.text), zv(e, e.body);
            break;
          case 220:
          case 219:
            zv(e, e.body);
            break;
          case 267:
            _2(e);
            for (const c of e.members) Nze(c) || u2(c);
            Jv();
            break;
          case 264:
          case 232:
          case 265:
            _2(e);
            for (const c of e.members) Rk(c);
            Jv();
            break;
          case 268:
            zv(e, vSe(e).body);
            break;
          case 278: {
            const c = Ic(e.expression), _ = bs(c) || za(c) || Hc(c) ? c : Bo(c) || Lo(c) ? c.body : void 0;
            _ ? (_2(e), Rk(_), Jv()) : u2(e);
            break;
          }
          case 282:
          case 272:
          case 182:
          case 180:
          case 181:
          case 266:
            u2(e);
            break;
          case 214:
          case 227: {
            const c = qc(e);
            switch (c) {
              case 1:
              case 2:
                zv(e, e.right);
                return;
              case 6:
              case 3: {
                const _ = e, u = _.left, d = c === 3 ? u.expression : u;
                let g = 0, h;
                Fe(d.expression) ? (lSe(d.expression.text), h = d.expression) : [g, h] = _Se(_, d.expression), c === 6 ? bs(_.right) && _.right.properties.length > 0 && (_2(_, h), Fa(_.right, Rk), Jv()) : Lo(_.right) || Bo(_.right) ? zv(e, _.right, h) : (_2(_, h), zv(e, _.right, u.name), Jv()), uSe(g);
                return;
              }
              case 7:
              case 9: {
                const _ = e, u = c === 7 ? _.arguments[0] : _.arguments[0].expression, d = _.arguments[1], [g, h] = _Se(e, u);
                _2(e, h), _2(e, pt(A.createIdentifier(d.text), d)), Rk(e.arguments[2]), Jv(), Jv(), uSe(g);
                return;
              }
              case 5: {
                const _ = e, u = _.left, d = u.expression;
                if (Fe(d) && Jh(u) !== "prototype" && yE && yE.has(d.text)) {
                  Lo(_.right) || Bo(_.right) ? zv(e, _.right, d) : Ob(u) && (_2(_, d), zv(_.left, _.right, cA(u)), Jv());
                  return;
                }
                break;
              }
              case 4:
              case 0:
              case 8:
                break;
              default:
                E.assertNever(c);
            }
          }
          default:
            Jf(e) && bt(e.jsDoc, (c) => {
              bt(c.tags, (_) => {
                $p(_) && u2(_);
              });
            }), Fa(e, Rk);
        }
    }
    function Zq(e, t) {
      const n = /* @__PURE__ */ new Map();
      T4(e, (i, a) => {
        const o = i.name || va(i.node), c = o && EL(o);
        if (!c) return !0;
        const _ = n.get(c);
        if (!_)
          return n.set(c, i), !0;
        if (_ instanceof Array) {
          for (const u of _) if (pSe(u, i, a, t)) return !1;
          return _.push(i), !0;
        } else {
          const u = _;
          return pSe(u, i, a, t) ? !1 : (n.set(c, [u, i]), !0);
        }
      });
    }
    var PI = {
      5: !0,
      3: !0,
      7: !0,
      9: !0,
      0: !1,
      1: !1,
      2: !1,
      8: !1,
      6: !0,
      4: !1
    };
    function Cze(e, t, n, i) {
      function a(_) {
        return Lo(_) || Xc(_) || ci(_);
      }
      const o = un(t.node) || za(t.node) ? qc(t.node) : 0, c = un(e.node) || za(e.node) ? qc(e.node) : 0;
      if (PI[o] && PI[c] || a(e.node) && PI[o] || a(t.node) && PI[c] || sl(e.node) && boe(e.node) && PI[o] || sl(t.node) && PI[c] || sl(e.node) && boe(e.node) && a(t.node) || sl(t.node) && a(e.node) && boe(e.node)) {
        let _ = e.additionalNodes && Wo(e.additionalNodes) || e.node;
        if (!sl(e.node) && !sl(t.node) || a(e.node) || a(t.node)) {
          const d = a(e.node) ? e.node : a(t.node) ? t.node : void 0;
          if (d !== void 0) {
            const g = yoe(pt(A.createConstructorDeclaration(void 0, [], void 0), d));
            g.indent = e.indent + 1, g.children = e.node === d ? e.children : t.children, e.children = e.node === d ? zi([g], t.children || [t]) : zi(e.children || [{ ...e }], [g]);
          } else (e.children || t.children) && (e.children = zi(e.children || [{ ...e }], t.children || [t]), e.children && (Zq(e.children, e), Soe(e.children)));
          _ = e.node = pt(A.createClassDeclaration(void 0, e.name || A.createIdentifier("__class__"), void 0, void 0, []), e.node);
        } else
          e.children = zi(e.children, t.children), e.children && Zq(e.children, e);
        const u = t.node;
        return i.children[n - 1].node.end === _.end ? pt(_, {
          pos: _.pos,
          end: u.end
        }) : (e.additionalNodes || (e.additionalNodes = []), e.additionalNodes.push(pt(A.createClassDeclaration(void 0, e.name || A.createIdentifier("__class__"), void 0, void 0, []), t.node))), !0;
      }
      return o !== 0;
    }
    function pSe(e, t, n, i) {
      return Cze(e, t, n, i) ? !0 : Eze(e.node, t.node, i) ? (Dze(e, t), !0) : !1;
    }
    function Eze(e, t, n) {
      if (e.kind !== t.kind || e.parent !== t.parent && !(dSe(e, n) && dSe(t, n))) return !1;
      switch (e.kind) {
        case 173:
        case 175:
        case 178:
        case 179:
          return es(e) === es(t);
        case 268:
          return mSe(e, t) && koe(e) === koe(t);
        default:
          return !0;
      }
    }
    function boe(e) {
      return !!(e.flags & 16);
    }
    function dSe(e, t) {
      if (e.parent === void 0) return !1;
      const n = Vd(e.parent) ? e.parent.parent : e.parent;
      return n === t.node || Gi(t.additionalNodes, n);
    }
    function mSe(e, t) {
      return !e.body || !t.body ? e.body === t.body : e.body.kind === t.body.kind && (e.body.kind !== 268 || mSe(e.body, t.body));
    }
    function Dze(e, t) {
      e.additionalNodes = e.additionalNodes || [], e.additionalNodes.push(t.node), t.additionalNodes && e.additionalNodes.push(...t.additionalNodes), e.children = zi(e.children, t.children), e.children && (Zq(e.children, e), Soe(e.children));
    }
    function Soe(e) {
      e.sort(wze);
    }
    function wze(e, t) {
      return u3(gSe(e.node), gSe(t.node)) || Fo(Yq(e), Yq(t));
    }
    function gSe(e) {
      if (e.kind === 268) return ySe(e);
      const t = va(e);
      if (t && il(t)) {
        const n = kS(t);
        return n && Ti(n);
      }
      switch (e.kind) {
        case 219:
        case 220:
        case 232:
          return SSe(e);
        default:
          return;
      }
    }
    function Toe(e, t) {
      if (e.kind === 268) return Kw(ySe(e));
      if (t) {
        const n = Fe(t) ? t.text : Po(t) ? `[${EL(t.argumentExpression)}]` : EL(t);
        if (n.length > 0) return Kw(n);
      }
      switch (e.kind) {
        case 308:
          const n = e;
          return Sl(n) ? `"${dg(nl(__(us(n.fileName))))}"` : "<global>";
        case 278:
          return Xo(e) && e.isExportEquals ? "export=" : "default";
        case 220:
        case 263:
        case 219:
        case 264:
        case 232:
          return P0(e) & 2048 ? "default" : SSe(e);
        case 177:
          return "constructor";
        case 181:
          return "new()";
        case 180:
          return "()";
        case 182:
          return "[]";
        default:
          return "<unknown>";
      }
    }
    function Pze(e) {
      const t = [];
      function n(a) {
        if (i(a) && (t.push(a), a.children))
          for (const o of a.children) n(o);
      }
      return n(e), t;
      function i(a) {
        if (a.children) return !0;
        switch (Yq(a)) {
          case 264:
          case 232:
          case 267:
          case 265:
          case 268:
          case 308:
          case 266:
          case 347:
          case 339:
            return !0;
          case 220:
          case 263:
          case 219:
            return o(a);
          default:
            return !1;
        }
        function o(c) {
          if (!c.node.body) return !1;
          switch (Yq(c.parent)) {
            case 269:
            case 308:
            case 175:
            case 177:
              return !0;
            default:
              return !1;
          }
        }
      }
    }
    function hSe(e) {
      return {
        text: Toe(e.node, e.name),
        kind: o2(e.node),
        kindModifiers: bSe(e.node),
        spans: xoe(e),
        nameSpan: e.name && Coe(e.name),
        childItems: or(e.children, hSe)
      };
    }
    function Aze(e) {
      return {
        text: Toe(e.node, e.name),
        kind: o2(e.node),
        kindModifiers: bSe(e.node),
        spans: xoe(e),
        childItems: or(e.children, t) || hoe,
        indent: e.indent,
        bolded: !1,
        grayed: !1
      };
      function t(n) {
        return {
          text: Toe(n.node, n.name),
          kind: o2(n.node),
          kindModifiers: Ww(n.node),
          spans: xoe(n),
          childItems: hoe,
          indent: 0,
          bolded: !1,
          grayed: !1
        };
      }
    }
    function xoe(e) {
      const t = [Coe(e.node)];
      if (e.additionalNodes) for (const n of e.additionalNodes) t.push(Coe(n));
      return t;
    }
    function ySe(e) {
      return o_(e) ? uc(e.name) : koe(e);
    }
    function koe(e) {
      const t = [Xp(e.name)];
      for (; e.body && e.body.kind === 268; )
        e = e.body, t.push(Xp(e.name));
      return t.join(".");
    }
    function vSe(e) {
      return e.body && Qc(e.body) ? vSe(e.body) : e;
    }
    function Nze(e) {
      return !e.name || e.name.kind === 168;
    }
    function Coe(e) {
      return e.kind === 308 ? V0(e) : P_(e, wI);
    }
    function bSe(e) {
      return e.parent && e.parent.kind === 261 && (e = e.parent), Ww(e);
    }
    function SSe(e) {
      const { parent: t } = e;
      if (e.name && J3(e.name) > 0) return Kw(Do(e.name));
      if (ci(t)) return Kw(Do(t.name));
      if (un(t) && t.operatorToken.kind === 64) return EL(t.left).replace(kze, "");
      if (ol(t)) return EL(t.name);
      if (P0(e) & 2048) return "default";
      if (Zn(e)) return "<class>";
      if (za(t)) {
        let n = TSe(t.expression);
        if (n !== void 0) {
          if (n = Kw(n), n.length > goe) return `${n} callback`;
          const i = Kw(Rn(t.arguments, (a) => Xs(a) || Cx(a) ? a.getText(wI) : void 0).join(", "));
          return `${n}(${i}) callback`;
        }
      }
      return "<function>";
    }
    function TSe(e) {
      if (Fe(e)) return e.text;
      if (Ln(e)) {
        const t = TSe(e.expression), n = e.name.text;
        return t === void 0 ? n : `${t}.${n}`;
      } else return;
    }
    function Ize(e) {
      switch (e.kind) {
        case 220:
        case 219:
        case 232:
          return !0;
        default:
          return !1;
      }
    }
    function Kw(e) {
      return e = e.length > goe ? e.substring(0, goe) + "..." : e, e.replace(/\\?(?:\r?\n|[\r\u2028\u2029])/g, "");
    }
    var jk = {};
    gi(jk, {
      addExportsInOldFile: () => Moe,
      addImportsForMovedSymbols: () => Roe,
      addNewFileToTsconfig: () => Loe,
      addOrRemoveBracesToArrowFunction: () => DWe,
      addTargetFileImports: () => Goe,
      containsJsx: () => Joe,
      convertArrowFunctionOrFunctionExpression: () => IWe,
      convertParamsToDestructuredObject: () => UWe,
      convertStringOrTemplateLiteral: () => oUe,
      convertToOptionalChainExpression: () => hUe,
      createNewFileName: () => Boe,
      doChangeNamedToNamespaceOrDefault: () => wSe,
      extractSymbol: () => bTe,
      generateGetAccessorAndSetAccessor: () => eVe,
      getApplicableRefactors: () => Oze,
      getEditsForRefactor: () => Fze,
      getExistingLocals: () => Voe,
      getIdentifierForNode: () => qoe,
      getNewStatementsAndRemoveFromOldFile: () => Foe,
      getStatementsToMove: () => AI,
      getUsageInfo: () => DL,
      inferFunctionReturnType: () => tVe,
      isInImport: () => oG,
      isRefactorErrorInfo: () => Qh,
      refactorKindBeginsWith: () => Wv,
      registerRefactor: () => ch
    });
    var Eoe = /* @__PURE__ */ new Map();
    function ch(e, t) {
      Eoe.set(e, t);
    }
    function Oze(e, t) {
      return ma(pa(Eoe.values(), (n) => {
        var i;
        return e.cancellationToken && e.cancellationToken.isCancellationRequested() || !((i = n.kinds) != null && i.some((a) => Wv(a, e.kind))) ? void 0 : n.getAvailableActions(e, t);
      }));
    }
    function Fze(e, t, n, i) {
      const a = Eoe.get(t);
      return a && a.getEditsForAction(e, n, i);
    }
    var Doe = "Convert export", Kq = {
      name: "Convert default export to named export",
      description: Oa(p.Convert_default_export_to_named_export),
      kind: "refactor.rewrite.export.named"
    }, eG = {
      name: "Convert named export to default export",
      description: Oa(p.Convert_named_export_to_default_export),
      kind: "refactor.rewrite.export.default"
    };
    ch(Doe, {
      kinds: [Kq.kind, eG.kind],
      getAvailableActions: function(t) {
        const n = xSe(t, t.triggerReason === "invoked");
        if (!n) return Te;
        if (!Qh(n)) {
          const i = n.wasDefault ? Kq : eG;
          return [{
            name: Doe,
            description: i.description,
            actions: [i]
          }];
        }
        return t.preferences.provideRefactorNotApplicableReason ? [{
          name: Doe,
          description: Oa(p.Convert_default_export_to_named_export),
          actions: [{
            ...Kq,
            notApplicableReason: n.error
          }, {
            ...eG,
            notApplicableReason: n.error
          }]
        }] : Te;
      },
      getEditsForAction: function(t, n) {
        E.assert(n === Kq.name || n === eG.name, "Unexpected action name");
        const i = xSe(t);
        return E.assert(i && !Qh(i), "Expected applicable refactor info"), {
          edits: on.ChangeTracker.with(t, (a) => Lze(t.file, t.program, i, a, t.cancellationToken)),
          renameFilename: void 0,
          renameLocation: void 0
        };
      }
    });
    function xSe(e, t = !0) {
      const { file: n, program: i } = e, a = Lk(e), o = xi(n, a.start), c = o.parent && P0(o.parent) & 32 && t ? o.parent : hI(o, n, a);
      if (!c || !Pi(c.parent) && !(Vd(c.parent) && o_(c.parent.parent))) return { error: Oa(p.Could_not_find_export_statement) };
      const _ = i.getTypeChecker(), u = Jze(c.parent, _), d = P0(c) || (Xo(c) && !c.isExportEquals ? 2080 : 0), g = !!(d & 2048);
      if (!(d & 32) || !g && u.exports.has("default")) return { error: Oa(p.This_file_already_has_a_default_export) };
      const h = (S) => Fe(S) && _.getSymbolAtLocation(S) ? void 0 : { error: Oa(p.Can_only_convert_named_export) };
      switch (c.kind) {
        case 263:
        case 264:
        case 265:
        case 267:
        case 266:
        case 268: {
          const S = c;
          return S.name ? h(S.name) || {
            exportNode: S,
            exportName: S.name,
            wasDefault: g,
            exportingModuleSymbol: u
          } : void 0;
        }
        case 244: {
          const S = c;
          if (!(S.declarationList.flags & 2) || S.declarationList.declarations.length !== 1) return;
          const T = js(S.declarationList.declarations);
          return T.initializer ? (E.assert(!g, "Can't have a default flag here"), h(T.name) || {
            exportNode: S,
            exportName: T.name,
            wasDefault: g,
            exportingModuleSymbol: u
          }) : void 0;
        }
        case 278: {
          const S = c;
          return S.isExportEquals ? void 0 : h(S.expression) || {
            exportNode: S,
            exportName: S.expression,
            wasDefault: g,
            exportingModuleSymbol: u
          };
        }
        default:
          return;
      }
    }
    function Lze(e, t, n, i, a) {
      Mze(e, n, i, t.getTypeChecker()), Rze(t, n, i, a);
    }
    function Mze(e, { wasDefault: t, exportNode: n, exportName: i }, a, o) {
      if (t) if (Xo(n) && !n.isExportEquals) {
        const c = n.expression, _ = kSe(c.text, c.text);
        a.replaceNode(e, n, A.createExportDeclaration(void 0, !1, A.createNamedExports([_])));
      } else a.delete(e, E.checkDefined(_E(n, 90), "Should find a default keyword in modifier list"));
      else {
        const c = E.checkDefined(_E(n, 95), "Should find an export keyword in modifier list");
        switch (n.kind) {
          case 263:
          case 264:
          case 265:
            a.insertNodeAfter(e, c, A.createToken(90));
            break;
          case 244:
            const _ = js(n.declarationList.declarations);
            if (!Jo.Core.isSymbolReferencedInFile(i, o, e) && !_.type) {
              a.replaceNode(e, n, A.createExportDefault(E.checkDefined(_.initializer, "Initializer was previously known to be present")));
              break;
            }
          case 267:
          case 266:
          case 268:
            a.deleteModifier(e, c), a.insertNodeAfter(e, n, A.createExportDefault(A.createIdentifier(i.text)));
            break;
          default:
            E.fail(`Unexpected exportNode kind ${n.kind}`);
        }
      }
    }
    function Rze(e, { wasDefault: t, exportName: n, exportingModuleSymbol: i }, a, o) {
      const c = e.getTypeChecker(), _ = E.checkDefined(c.getSymbolAtLocation(n), "Export name should resolve to a symbol");
      Jo.Core.eachExportReference(e.getSourceFiles(), c, o, _, i, n.text, t, (u) => {
        if (n === u) return;
        const d = u.getSourceFile();
        t ? jze(d, u, a, n.text) : Bze(d, u, a);
      });
    }
    function jze(e, t, n, i) {
      const { parent: a } = t;
      switch (a.kind) {
        case 212:
          n.replaceNode(e, t, A.createIdentifier(i));
          break;
        case 277:
        case 282: {
          const c = a;
          n.replaceNode(e, c, woe(i, c.name.text));
          break;
        }
        case 274: {
          const c = a;
          E.assert(c.name === t, "Import clause name should match provided ref");
          const _ = woe(i, t.text), { namedBindings: u } = c;
          if (!u) n.replaceNode(e, t, A.createNamedImports([_]));
          else if (u.kind === 275) {
            n.deleteRange(e, {
              pos: t.getStart(e),
              end: u.getStart(e)
            });
            const d = Ts(c.parent.moduleSpecifier) ? sq(c.parent.moduleSpecifier, e) : 1, g = y1(void 0, [woe(i, t.text)], c.parent.moduleSpecifier, d);
            n.insertNodeAfter(e, c.parent, g);
          } else
            n.delete(e, t), n.insertNodeAtEndOfList(e, u.elements, _);
          break;
        }
        case 206:
          const o = a;
          n.replaceNode(e, a, A.createImportTypeNode(o.argument, o.attributes, A.createIdentifier(i), o.typeArguments, o.isTypeOf));
          break;
        default:
          E.failBadSyntaxKind(a);
      }
    }
    function Bze(e, t, n) {
      const i = t.parent;
      switch (i.kind) {
        case 212:
          n.replaceNode(e, t, A.createIdentifier("default"));
          break;
        case 277: {
          const a = A.createIdentifier(i.name.text);
          i.parent.elements.length === 1 ? n.replaceNode(e, i.parent, a) : (n.delete(e, i), n.insertNodeBefore(e, i.parent, a));
          break;
        }
        case 282:
          n.replaceNode(e, i, kSe("default", i.name.text));
          break;
        default:
          E.assertNever(i, `Unexpected parent kind ${i.kind}`);
      }
    }
    function woe(e, t) {
      return A.createImportSpecifier(!1, e === t ? void 0 : A.createIdentifier(e), A.createIdentifier(t));
    }
    function kSe(e, t) {
      return A.createExportSpecifier(!1, e === t ? void 0 : A.createIdentifier(e), A.createIdentifier(t));
    }
    function Jze(e, t) {
      if (Pi(e)) return e.symbol;
      const n = e.parent.symbol;
      return n.valueDeclaration && Nb(n.valueDeclaration) ? t.getMergedSymbol(n) : n;
    }
    var Poe = "Convert import", tG = {
      0: {
        name: "Convert namespace import to named imports",
        description: Oa(p.Convert_namespace_import_to_named_imports),
        kind: "refactor.rewrite.import.named"
      },
      2: {
        name: "Convert named imports to namespace import",
        description: Oa(p.Convert_named_imports_to_namespace_import),
        kind: "refactor.rewrite.import.namespace"
      },
      1: {
        name: "Convert named imports to default import",
        description: Oa(p.Convert_named_imports_to_default_import),
        kind: "refactor.rewrite.import.default"
      }
    };
    ch(Poe, {
      kinds: _x(tG).map((e) => e.kind),
      getAvailableActions: function(t) {
        const n = CSe(t, t.triggerReason === "invoked");
        if (!n) return Te;
        if (!Qh(n)) {
          const i = tG[n.convertTo];
          return [{
            name: Poe,
            description: i.description,
            actions: [i]
          }];
        }
        return t.preferences.provideRefactorNotApplicableReason ? _x(tG).map((i) => ({
          name: Poe,
          description: i.description,
          actions: [{
            ...i,
            notApplicableReason: n.error
          }]
        })) : Te;
      },
      getEditsForAction: function(t, n) {
        E.assert(_t(_x(tG), (a) => a.name === n), "Unexpected action name");
        const i = CSe(t);
        return E.assert(i && !Qh(i), "Expected applicable refactor info"), {
          edits: on.ChangeTracker.with(t, (a) => zze(t.file, t.program, a, i)),
          renameFilename: void 0,
          renameLocation: void 0
        };
      }
    });
    function CSe(e, t = !0) {
      const { file: n } = e, i = Lk(e), a = xi(n, i.start), o = t ? cr(a, _f(ic, Fm)) : hI(a, n, i);
      if (o === void 0 || !(ic(o) || Fm(o))) return { error: "Selection is not an import declaration." };
      const c = i.start + i.length, _ = c2(o, o.parent, n);
      if (_ && c > _.getStart()) return;
      const { importClause: u } = o;
      return u ? u.namedBindings ? u.namedBindings.kind === 275 ? {
        convertTo: 0,
        import: u.namedBindings
      } : ESe(e.program, u) ? {
        convertTo: 1,
        import: u.namedBindings
      } : {
        convertTo: 2,
        import: u.namedBindings
      } : { error: Oa(p.Could_not_find_namespace_import_or_named_imports) } : { error: Oa(p.Could_not_find_import_clause) };
    }
    function ESe(e, t) {
      return Yx(e.getCompilerOptions()) && Vze(t.parent.moduleSpecifier, e.getTypeChecker());
    }
    function zze(e, t, n, i) {
      const a = t.getTypeChecker();
      i.convertTo === 0 ? Wze(e, a, n, i.import, Yx(t.getCompilerOptions())) : wSe(e, t, n, i.import, i.convertTo === 1);
    }
    function Wze(e, t, n, i, a) {
      let o = !1;
      const c = [], _ = /* @__PURE__ */ new Map();
      Jo.Core.eachSymbolReferenceInFile(i.name, t, e, (h) => {
        if (!L3(h.parent)) o = !0;
        else {
          const S = DSe(h.parent).text;
          t.resolveName(S, h, -1, !0) && _.set(S, !0), E.assert(Uze(h.parent) === h, "Parent expression should match id"), c.push(h.parent);
        }
      });
      const u = /* @__PURE__ */ new Map();
      for (const h of c) {
        const S = DSe(h).text;
        let T = u.get(S);
        T === void 0 && u.set(S, T = _.has(S) ? eT(S, e) : S), n.replaceNode(e, h, A.createIdentifier(T));
      }
      const d = [];
      u.forEach((h, S) => {
        d.push(A.createImportSpecifier(!1, h === S ? void 0 : A.createIdentifier(S), A.createIdentifier(h)));
      });
      const g = i.parent.parent;
      if (o && !a && ic(g)) n.insertNodeAfter(e, g, PSe(g, void 0, d));
      else {
        const h = o ? A.createIdentifier(i.name.text) : void 0;
        n.replaceNode(e, i.parent, ASe(h, d));
      }
    }
    function DSe(e) {
      return Ln(e) ? e.name : e.right;
    }
    function Uze(e) {
      return Ln(e) ? e.expression : e.left;
    }
    function wSe(e, t, n, i, a = ESe(t, i.parent)) {
      const o = t.getTypeChecker(), c = i.parent.parent, { moduleSpecifier: _ } = c, u = /* @__PURE__ */ new Set();
      i.elements.forEach((T) => {
        const k = o.getSymbolAtLocation(T.name);
        k && u.add(k);
      });
      const d = _ && Ts(_) ? kI(_.text, 99) : "module";
      function g(T) {
        return !!Jo.Core.eachSymbolReferenceInFile(T.name, o, e, (k) => {
          const D = o.resolveName(d, k, -1, !0);
          return D ? u.has(D) ? $u(k.parent) : !0 : !1;
        });
      }
      const h = i.elements.some(g) ? eT(d, e) : d, S = /* @__PURE__ */ new Set();
      for (const T of i.elements) {
        const k = T.propertyName || T.name;
        Jo.Core.eachSymbolReferenceInFile(T.name, o, e, (D) => {
          const P = k.kind === 11 ? A.createElementAccessExpression(A.createIdentifier(h), A.cloneNode(k)) : A.createPropertyAccessExpression(A.createIdentifier(h), A.cloneNode(k));
          Nu(D.parent) ? n.replaceNode(e, D.parent, A.createPropertyAssignment(D.text, P)) : $u(D.parent) ? S.add(T) : n.replaceNode(e, D, P);
        });
      }
      if (n.replaceNode(e, i, a ? A.createIdentifier(h) : A.createNamespaceImport(A.createIdentifier(h))), S.size && ic(c)) {
        const T = ma(S.values(), (k) => A.createImportSpecifier(k.isTypeOnly, k.propertyName && A.cloneNode(k.propertyName), A.cloneNode(k.name)));
        n.insertNodeAfter(e, i.parent.parent, PSe(c, void 0, T));
      }
    }
    function Vze(e, t) {
      const n = t.resolveExternalModuleName(e);
      return n ? n !== t.resolveExternalModuleSymbol(n) : !1;
    }
    function PSe(e, t, n) {
      return A.createImportDeclaration(void 0, ASe(t, n), e.moduleSpecifier, void 0);
    }
    function ASe(e, t) {
      return A.createImportClause(void 0, e, t && t.length ? A.createNamedImports(t) : void 0);
    }
    var Aoe = "Extract type", rG = {
      name: "Extract to type alias",
      description: Oa(p.Extract_to_type_alias),
      kind: "refactor.extract.type"
    }, nG = {
      name: "Extract to interface",
      description: Oa(p.Extract_to_interface),
      kind: "refactor.extract.interface"
    }, iG = {
      name: "Extract to typedef",
      description: Oa(p.Extract_to_typedef),
      kind: "refactor.extract.typedef"
    };
    ch(Aoe, {
      kinds: [
        rG.kind,
        nG.kind,
        iG.kind
      ],
      getAvailableActions: function(t) {
        const { info: n, affectedTextRange: i } = NSe(t, t.triggerReason === "invoked");
        return n ? Qh(n) ? t.preferences.provideRefactorNotApplicableReason ? [{
          name: Aoe,
          description: Oa(p.Extract_type),
          actions: [
            {
              ...iG,
              notApplicableReason: n.error
            },
            {
              ...rG,
              notApplicableReason: n.error
            },
            {
              ...nG,
              notApplicableReason: n.error
            }
          ]
        }] : Te : [{
          name: Aoe,
          description: Oa(p.Extract_type),
          actions: n.isJS ? [iG] : kr([rG], n.typeElements && nG)
        }].map((a) => ({
          ...a,
          actions: a.actions.map((o) => ({
            ...o,
            range: i ? {
              start: {
                line: Za(t.file, i.pos).line,
                offset: Za(t.file, i.pos).character
              },
              end: {
                line: Za(t.file, i.end).line,
                offset: Za(t.file, i.end).character
              }
            } : void 0
          }))
        })) : Te;
      },
      getEditsForAction: function(t, n) {
        const { file: i } = t, { info: a } = NSe(t);
        E.assert(a && !Qh(a), "Expected to find a range to extract");
        const o = eT("NewType", i), c = on.ChangeTracker.with(t, (u) => {
          switch (n) {
            case rG.name:
              return E.assert(!a.isJS, "Invalid actionName/JS combo"), Hze(u, i, o, a);
            case iG.name:
              return E.assert(a.isJS, "Invalid actionName/JS combo"), Xze(u, t, i, o, a);
            case nG.name:
              return E.assert(!a.isJS && !!a.typeElements, "Invalid actionName/JS combo"), $ze(u, i, o, a);
            default:
              E.fail("Unexpected action name");
          }
        }), _ = i.fileName;
        return {
          edits: c,
          renameFilename: _,
          renameLocation: vI(c, _, o, !1)
        };
      }
    });
    function NSe(e, t = !0) {
      const { file: n, startPosition: i } = e, a = T_(n), o = Z9(Lk(e)), c = qze(n, i, o, o.pos === o.end && t);
      if (!c || !ui(c)) return {
        info: { error: Oa(p.Selection_is_not_a_valid_type_node) },
        affectedTextRange: void 0
      };
      const _ = e.program.getTypeChecker(), u = Qze(c, a);
      if (u === void 0) return {
        info: { error: Oa(p.No_type_could_be_extracted_from_this_type_node) },
        affectedTextRange: void 0
      };
      const d = Yze(c, u);
      if (!ui(d)) return {
        info: { error: Oa(p.Selection_is_not_a_valid_type_node) },
        affectedTextRange: void 0
      };
      const g = [];
      (j0(d.parent) || pk(d.parent)) && o.end > c.end && Mn(g, d.parent.types.filter((k) => U9(k, n, o.pos, o.end)));
      const h = g.length > 1 ? g : d, { typeParameters: S, affectedTextRange: T } = Gze(_, h, u, n);
      return S ? {
        info: {
          isJS: a,
          selection: h,
          enclosingNode: u,
          typeParameters: S,
          typeElements: aG(_, h)
        },
        affectedTextRange: T
      } : {
        info: { error: Oa(p.No_type_could_be_extracted_from_this_type_node) },
        affectedTextRange: void 0
      };
    }
    function qze(e, t, n, i) {
      const a = [() => xi(e, t), () => lE(e, t, () => !0)];
      for (const o of a) {
        const c = o(), _ = U9(c, e, n.pos, n.end), u = cr(c, (d) => d.parent && ui(d) && !f2(n, d.parent, e) && (i || _));
        if (u) return u;
      }
    }
    function aG(e, t) {
      if (t) {
        if (da(t)) {
          const n = [];
          for (const i of t) {
            const a = aG(e, i);
            if (!a) return;
            Mn(n, a);
          }
          return n;
        }
        if (pk(t)) {
          const n = [], i = /* @__PURE__ */ new Set();
          for (const a of t.types) {
            const o = aG(e, a);
            if (!o || !o.every((c) => c.name && Yp(i, mI(c.name)))) return;
            Mn(n, o);
          }
          return n;
        } else {
          if (FS(t)) return aG(e, t.type);
          if (C_(t)) return t.members;
        }
      }
    }
    function f2(e, t, n) {
      return uI(e, gs(n.text, t.pos), t.end);
    }
    function Gze(e, t, n, i) {
      const a = [], o = fx(t), c = {
        pos: o[0].getStart(i),
        end: o[o.length - 1].end
      };
      for (const u of o) if (_(u)) return {
        typeParameters: void 0,
        affectedTextRange: void 0
      };
      return {
        typeParameters: a,
        affectedTextRange: c
      };
      function _(u) {
        if (xf(u)) {
          if (Fe(u.typeName)) {
            const d = u.typeName, g = e.resolveName(d.text, d, 262144, !0);
            for (const h of g?.declarations || Te) if ($o(h) && h.getSourceFile() === i) {
              if (h.name.escapedText === d.escapedText && f2(h, c, i)) return !0;
              if (f2(n, h, i) && !f2(c, h, i)) {
                hp(a, h);
                break;
              }
            }
          }
        } else if (OS(u)) {
          const d = cr(u, (g) => Hb(g) && f2(g.extendsType, u, i));
          if (!d || !f2(c, d, i)) return !0;
        } else if (_k(u) || rw(u)) {
          const d = cr(u.parent, Ra);
          if (d && d.type && f2(d.type, u, i) && !f2(c, d, i)) return !0;
        } else if (Gb(u)) {
          if (Fe(u.exprName)) {
            const d = e.resolveName(u.exprName.text, u.exprName, 111551, !1);
            if (d?.valueDeclaration && f2(n, d.valueDeclaration, i) && !f2(c, d.valueDeclaration, i)) return !0;
          } else if (Zy(u.exprName.left) && !f2(c, u.parent, i)) return !0;
        }
        return i && fk(u) && Za(i, u.pos).line === Za(i, u.end).line && ln(u, 1), Fa(u, _);
      }
    }
    function Hze(e, t, n, i) {
      const { enclosingNode: a, typeParameters: o } = i, { firstTypeNode: c, lastTypeNode: _, newTypeNode: u } = Noe(i), d = A.createTypeAliasDeclaration(void 0, n, o.map((g) => A.updateTypeParameterDeclaration(g, g.modifiers, g.name, g.constraint, void 0)), u);
      e.insertNodeBefore(t, a, Cz(d), !0), e.replaceNodeRange(t, c, _, A.createTypeReferenceNode(n, o.map((g) => A.createTypeReferenceNode(g.name, void 0))), {
        leadingTriviaOption: on.LeadingTriviaOption.Exclude,
        trailingTriviaOption: on.TrailingTriviaOption.ExcludeWhitespace
      });
    }
    function $ze(e, t, n, i) {
      var a;
      const { enclosingNode: o, typeParameters: c, typeElements: _ } = i, u = A.createInterfaceDeclaration(void 0, n, c, void 0, _);
      pt(u, (a = _[0]) == null ? void 0 : a.parent), e.insertNodeBefore(t, o, Cz(u), !0);
      const { firstTypeNode: d, lastTypeNode: g } = Noe(i);
      e.replaceNodeRange(t, d, g, A.createTypeReferenceNode(n, c.map((h) => A.createTypeReferenceNode(h.name, void 0))), {
        leadingTriviaOption: on.LeadingTriviaOption.Exclude,
        trailingTriviaOption: on.TrailingTriviaOption.ExcludeWhitespace
      });
    }
    function Xze(e, t, n, i, a) {
      var o;
      fx(a.selection).forEach((k) => {
        ln(k, 7168);
      });
      const { enclosingNode: c, typeParameters: _ } = a, { firstTypeNode: u, lastTypeNode: d, newTypeNode: g } = Noe(a), h = A.createJSDocTypedefTag(A.createIdentifier("typedef"), A.createJSDocTypeExpression(g), A.createIdentifier(i)), S = [];
      bt(_, (k) => {
        const D = $C(k), P = A.createTypeParameterDeclaration(void 0, k.name), N = A.createJSDocTemplateTag(A.createIdentifier("template"), D && ns(D, wv), [P]);
        S.push(N);
      });
      const T = A.createJSDocComment(void 0, A.createNodeArray(zi(S, [h])));
      if (Hd(c)) {
        const k = c.getStart(n), D = Xh(t.host, (o = t.formatContext) == null ? void 0 : o.options);
        e.insertNodeAt(n, c.getStart(n), T, { suffix: D + D + n.text.slice(sL(n.text, k - 1), k) });
      } else e.insertNodeBefore(n, c, T, !0);
      e.replaceNodeRange(n, u, d, A.createTypeReferenceNode(i, _.map((k) => A.createTypeReferenceNode(k.name, void 0))));
    }
    function Noe(e) {
      return da(e.selection) ? {
        firstTypeNode: e.selection[0],
        lastTypeNode: e.selection[e.selection.length - 1],
        newTypeNode: j0(e.selection[0].parent) ? A.createUnionTypeNode(e.selection) : A.createIntersectionTypeNode(e.selection)
      } : {
        firstTypeNode: e.selection,
        lastTypeNode: e.selection,
        newTypeNode: e.selection
      };
    }
    function Qze(e, t) {
      return cr(e, Ei) || (t ? cr(e, Hd) : void 0);
    }
    function Yze(e, t) {
      return cr(e, (n) => n === t ? "quit" : !!(j0(n.parent) || pk(n.parent))) ?? e;
    }
    var sG = "Move to file", Ioe = Oa(p.Move_to_file), Ooe = {
      name: "Move to file",
      description: Ioe,
      kind: "refactor.move.file"
    };
    ch(sG, {
      kinds: [Ooe.kind],
      getAvailableActions: function(t, n) {
        const i = t.file, a = AI(t);
        if (!n) return Te;
        if (t.triggerReason === "implicit" && t.endPosition !== void 0) {
          const o = cr(xi(i, t.startPosition), Mk), c = cr(xi(i, t.endPosition), Mk);
          if (o && !Pi(o) && c && !Pi(c)) return Te;
        }
        if (t.preferences.allowTextChangesInNewFiles && a) {
          const o = {
            start: {
              line: Za(i, a.all[0].getStart(i)).line,
              offset: Za(i, a.all[0].getStart(i)).character
            },
            end: {
              line: Za(i, ws(a.all).end).line,
              offset: Za(i, ws(a.all).end).character
            }
          };
          return [{
            name: sG,
            description: Ioe,
            actions: [{
              ...Ooe,
              range: o
            }]
          }];
        }
        return t.preferences.provideRefactorNotApplicableReason ? [{
          name: sG,
          description: Ioe,
          actions: [{
            ...Ooe,
            notApplicableReason: Oa(p.Selection_is_not_a_valid_statement_or_statements)
          }]
        }] : Te;
      },
      getEditsForAction: function(t, n, i) {
        E.assert(n === sG, "Wrong refactor invoked");
        const a = E.checkDefined(AI(t)), { host: o, program: c } = t;
        E.assert(i, "No interactive refactor arguments available");
        const _ = i.targetFile;
        return Zg(_) || wS(_) ? o.fileExists(_) && c.getSourceFile(_) === void 0 ? ISe(Oa(p.Cannot_move_statements_to_the_selected_file)) : {
          edits: on.ChangeTracker.with(t, (u) => Zze(t, t.file, i.targetFile, t.program, a, u, t.host, t.preferences)),
          renameFilename: void 0,
          renameLocation: void 0
        } : ISe(Oa(p.Cannot_move_to_file_selected_file_is_invalid));
      }
    });
    function ISe(e) {
      return {
        edits: [],
        renameFilename: void 0,
        renameLocation: void 0,
        notApplicableReason: e
      };
    }
    function Zze(e, t, n, i, a, o, c, _) {
      const u = i.getTypeChecker(), d = !c.fileExists(n), g = d ? bL(n, t.externalModuleIndicator ? 99 : t.commonJsModuleIndicator ? 1 : void 0, i, c) : E.checkDefined(i.getSourceFile(n)), h = Zu.createImportAdder(t, e.program, e.preferences, e.host), S = Zu.createImportAdder(g, e.program, e.preferences, e.host);
      Foe(t, g, DL(t, a.all, u, d ? void 0 : Voe(g, a.all, u)), o, a, i, c, _, S, h), d && Loe(i, o, t.fileName, n, Wh(c));
    }
    function Foe(e, t, n, i, a, o, c, _, u, d) {
      const g = o.getTypeChecker(), h = oj(e.statements, bm), S = !Iq(t.fileName, o, c, !!e.commonJsModuleIndicator), T = Df(e, _);
      Roe(n.oldFileImportsFromTargetFile, t.fileName, d, o), eWe(e, a.all, n.unusedImportsFromOldFile, d), d.writeFixes(i, T), Kze(e, a.ranges, i), tWe(i, o, c, e, n.movedSymbols, t.fileName, T), Moe(e, n.targetFileImportsFromOldFile, i, S), Goe(e, n.oldImportsNeededByTargetFile, n.targetFileImportsFromOldFile, g, o, u), !Hg(t) && h.length && i.insertStatementsInNewFile(t.fileName, h, e), u.writeFixes(i, T);
      const k = oWe(e, a.all, ma(n.oldFileImportsFromTargetFile.keys()), S);
      Hg(t) && t.statements.length > 0 ? xWe(i, o, k, t, a) : Hg(t) ? i.insertNodesAtEndOfFile(t, k, !1) : i.insertStatementsInNewFile(t.fileName, u.hasFixes() ? [4, ...k] : k, e);
    }
    function Loe(e, t, n, i, a) {
      const o = e.getCompilerOptions().configFile;
      if (!o) return;
      const c = us(jn(n, "..", i)), _ = vx(o.fileName, c, a), u = o.statements[0] && qn(o.statements[0].expression, bs), d = u && xr(u.properties, (g) => ol(g) && Ts(g.name) && g.name.text === "files");
      d && hu(d.initializer) && t.insertNodeInListAfter(o, ws(d.initializer.elements), A.createStringLiteral(_), d.initializer.elements);
    }
    function Kze(e, t, n) {
      for (const { first: i, afterLast: a } of t) n.deleteNodeRangeExcludingEnd(e, i, a);
    }
    function eWe(e, t, n, i) {
      for (const a of e.statements)
        Gi(t, a) || FSe(a, (o) => {
          LSe(o, (c) => {
            n.has(c.symbol) && i.removeExistingImport(c);
          });
        });
    }
    function Moe(e, t, n, i) {
      const a = uE();
      t.forEach((o, c) => {
        if (c.declarations)
          for (const _ of c.declarations) {
            if (!Uoe(_)) continue;
            const u = mWe(_);
            if (!u) continue;
            const d = BSe(_);
            a(d) && gWe(e, d, u, n, i);
          }
      });
    }
    function tWe(e, t, n, i, a, o, c) {
      const _ = t.getTypeChecker();
      for (const u of t.getSourceFiles())
        if (u !== i)
          for (const d of u.statements) FSe(d, (g) => {
            if (_.getSymbolAtLocation(aWe(g)) !== i.symbol) return;
            const h = (P) => {
              const N = Ns(P.parent) ? iL(_, P.parent) : mu(_.getSymbolAtLocation(P), _);
              return !!N && a.has(N);
            };
            cWe(u, g, e, h);
            const S = Fy(Xn(ca(i.fileName, t.getCurrentDirectory())), o);
            if (JC(!t.useCaseSensitiveFileNames())(S, u.fileName) === 0) return;
            const T = $h.getModuleSpecifier(t.getCompilerOptions(), u, u.fileName, S, Bv(t, n)), k = fWe(g, Vw(T, c), h);
            k && e.insertNodeAfter(u, d, k);
            const D = rWe(g);
            D && nWe(e, u, _, a, T, D, g, c);
          });
    }
    function rWe(e) {
      switch (e.kind) {
        case 273:
          return e.importClause && e.importClause.namedBindings && e.importClause.namedBindings.kind === 275 ? e.importClause.namedBindings.name : void 0;
        case 272:
          return e.name;
        case 261:
          return qn(e.name, Fe);
        default:
          return E.assertNever(e, `Unexpected node kind ${e.kind}`);
      }
    }
    function nWe(e, t, n, i, a, o, c, _) {
      const u = kI(a, 99);
      let d = !1;
      const g = [];
      if (Jo.Core.eachSymbolReferenceInFile(o, n, t, (h) => {
        Ln(h.parent) && (d = d || !!n.resolveName(u, h, -1, !0), i.has(n.getSymbolAtLocation(h.parent.name)) && g.push(h));
      }), g.length) {
        const h = d ? eT(u, t) : u;
        for (const S of g) e.replaceNode(t, S, A.createIdentifier(h));
        e.insertNodeAfter(t, c, iWe(c, u, a, _));
      }
    }
    function iWe(e, t, n, i) {
      const a = A.createIdentifier(t), o = Vw(n, i);
      switch (e.kind) {
        case 273:
          return A.createImportDeclaration(void 0, A.createImportClause(void 0, void 0, A.createNamespaceImport(a)), o, void 0);
        case 272:
          return A.createImportEqualsDeclaration(void 0, !1, a, A.createExternalModuleReference(o));
        case 261:
          return A.createVariableDeclaration(a, void 0, void 0, OSe(o));
        default:
          return E.assertNever(e, `Unexpected node kind ${e.kind}`);
      }
    }
    function OSe(e) {
      return A.createCallExpression(A.createIdentifier("require"), void 0, [e]);
    }
    function aWe(e) {
      return e.kind === 273 ? e.moduleSpecifier : e.kind === 272 ? e.moduleReference.expression : e.initializer.arguments[0];
    }
    function FSe(e, t) {
      if (ic(e))
        Ts(e.moduleSpecifier) && t(e);
      else if (bl(e))
        qh(e.moduleReference) && Xs(e.moduleReference.expression) && t(e);
      else if ($c(e))
        for (const n of e.declarationList.declarations) n.initializer && J_(n.initializer, !0) && t(n);
    }
    function LSe(e, t) {
      var n, i, a, o, c;
      if (e.kind === 273) {
        if ((n = e.importClause) != null && n.name && t(e.importClause), ((a = (i = e.importClause) == null ? void 0 : i.namedBindings) == null ? void 0 : a.kind) === 275 && t(e.importClause.namedBindings), ((c = (o = e.importClause) == null ? void 0 : o.namedBindings) == null ? void 0 : c.kind) === 276) for (const _ of e.importClause.namedBindings.elements) t(_);
      } else if (e.kind === 272) t(e);
      else if (e.kind === 261) {
        if (e.name.kind === 80) t(e);
        else if (e.name.kind === 207)
          for (const _ of e.name.elements) Fe(_.name) && t(_);
      }
    }
    function Roe(e, t, n, i) {
      for (const [a, o] of e) {
        const c = mL(a, Ps(i.getCompilerOptions())), _ = a.name === "default" && a.parent ? 1 : 0;
        n.addImportForNonExistentExport(c, t, _, a.flags, o);
      }
    }
    function sWe(e, t, n, i = 2) {
      return A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(e, void 0, t, n)], i));
    }
    function oWe(e, t, n, i) {
      return ks(t, (a) => {
        if (RSe(a) && !MSe(e, a, i) && Woe(a, (o) => {
          var c;
          return n.includes(E.checkDefined((c = qn(o, jd)) == null ? void 0 : c.symbol));
        })) {
          const o = lWe(no(a), i);
          if (o) return o;
        }
        return no(a);
      });
    }
    function MSe(e, t, n, i) {
      var a;
      return n ? !zl(t) && Qn(t, 32) || !!(i && e.symbol && ((a = e.symbol.exports) != null && a.has(i.escapedText))) : !!e.symbol && !!e.symbol.exports && joe(t).some((o) => e.symbol.exports.has(mc(o)));
    }
    function cWe(e, t, n, i) {
      if (t.kind === 273 && t.importClause) {
        const { name: a, namedBindings: o } = t.importClause;
        if ((!a || i(a)) && (!o || o.kind === 276 && o.elements.length !== 0 && o.elements.every((c) => i(c.name)))) return n.delete(e, t);
      }
      LSe(t, (a) => {
        a.name && Fe(a.name) && i(a.name) && n.delete(e, a);
      });
    }
    function RSe(e) {
      return E.assert(Pi(e.parent), "Node parent should be a SourceFile"), WSe(e) || $c(e);
    }
    function lWe(e, t) {
      return t ? [uWe(e)] : _We(e);
    }
    function uWe(e) {
      const t = vd(e) ? zi([A.createModifier(95)], kb(e)) : void 0;
      switch (e.kind) {
        case 263:
          return A.updateFunctionDeclaration(e, t, e.asteriskToken, e.name, e.typeParameters, e.parameters, e.type, e.body);
        case 264:
          const n = e2(e) ? My(e) : void 0;
          return A.updateClassDeclaration(e, zi(n, t), e.name, e.typeParameters, e.heritageClauses, e.members);
        case 244:
          return A.updateVariableStatement(e, t, e.declarationList);
        case 268:
          return A.updateModuleDeclaration(e, t, e.name, e.body);
        case 267:
          return A.updateEnumDeclaration(e, t, e.name, e.members);
        case 266:
          return A.updateTypeAliasDeclaration(e, t, e.name, e.typeParameters, e.type);
        case 265:
          return A.updateInterfaceDeclaration(e, t, e.name, e.typeParameters, e.heritageClauses, e.members);
        case 272:
          return A.updateImportEqualsDeclaration(e, t, e.isTypeOnly, e.name, e.moduleReference);
        case 245:
          return E.fail();
        default:
          return E.assertNever(e, `Unexpected declaration kind ${e.kind}`);
      }
    }
    function _We(e) {
      return [e, ...joe(e).map(jSe)];
    }
    function jSe(e) {
      return A.createExpressionStatement(A.createBinaryExpression(A.createPropertyAccessExpression(A.createIdentifier("exports"), A.createIdentifier(e)), 64, A.createIdentifier(e)));
    }
    function joe(e) {
      switch (e.kind) {
        case 263:
        case 264:
          return [e.name.text];
        case 244:
          return Rn(e.declarationList.declarations, (t) => Fe(t.name) ? t.name.text : void 0);
        case 268:
        case 267:
        case 266:
        case 265:
        case 272:
          return Te;
        case 245:
          return E.fail("Can't export an ExpressionStatement");
        default:
          return E.assertNever(e, `Unexpected decl kind ${e.kind}`);
      }
    }
    function fWe(e, t, n) {
      switch (e.kind) {
        case 273: {
          const i = e.importClause;
          if (!i) return;
          const a = i.name && n(i.name) ? i.name : void 0, o = i.namedBindings && pWe(i.namedBindings, n);
          return a || o ? A.createImportDeclaration(void 0, A.createImportClause(i.phaseModifier, a, o), no(t), void 0) : void 0;
        }
        case 272:
          return n(e.name) ? e : void 0;
        case 261: {
          const i = dWe(e.name, n);
          return i ? sWe(i, e.type, OSe(t), e.parent.flags) : void 0;
        }
        default:
          return E.assertNever(e, `Unexpected import kind ${e.kind}`);
      }
    }
    function pWe(e, t) {
      if (e.kind === 275) return t(e.name) ? e : void 0;
      {
        const n = e.elements.filter((i) => t(i.name));
        return n.length ? A.createNamedImports(n) : void 0;
      }
    }
    function dWe(e, t) {
      switch (e.kind) {
        case 80:
          return t(e) ? e : void 0;
        case 208:
          return e;
        case 207: {
          const n = e.elements.filter((i) => i.propertyName || !Fe(i.name) || t(i.name));
          return n.length ? A.createObjectBindingPattern(n) : void 0;
        }
      }
    }
    function mWe(e) {
      return zl(e) ? qn(e.expression.left.name, Fe) : qn(e.name, Fe);
    }
    function BSe(e) {
      switch (e.kind) {
        case 261:
          return e.parent.parent;
        case 209:
          return BSe(ns(e.parent.parent, (t) => ci(t) || Ns(t)));
        default:
          return e;
      }
    }
    function gWe(e, t, n, i, a) {
      if (!MSe(e, t, a, n))
        if (a)
          zl(t) || i.insertExportModifier(e, t);
        else {
          const o = joe(t);
          o.length !== 0 && i.insertNodesAfter(e, t, o.map(jSe));
        }
    }
    function Boe(e, t, n, i) {
      const a = t.getTypeChecker();
      if (i) {
        const o = DL(e, i.all, a), c = Xn(e.fileName), _ = RD(e.fileName);
        return jn(c, bWe(SWe(o.oldFileImportsFromTargetFile, o.movedSymbols), _, c, n)) + _;
      }
      return "";
    }
    function hWe(e) {
      const { file: t } = e, n = Z9(Lk(e)), { statements: i } = t;
      let a = qs(i, (d) => d.end > n.pos);
      if (a === -1) return;
      const o = i[a], c = USe(t, o);
      c && (a = c.start);
      let _ = qs(i, (d) => d.end >= n.end, a);
      _ !== -1 && n.end <= i[_].getStart() && _--;
      const u = USe(t, i[_]);
      return u && (_ = u.end), {
        toMove: i.slice(a, _ === -1 ? i.length : _ + 1),
        afterLast: _ === -1 ? void 0 : i[_ + 1]
      };
    }
    function AI(e) {
      const t = hWe(e);
      if (t === void 0) return;
      const n = [], i = [], { toMove: a, afterLast: o } = t;
      return uQ(a, yWe, (c, _) => {
        for (let u = c; u < _; u++) n.push(a[u]);
        i.push({
          first: a[c],
          afterLast: o
        });
      }), n.length === 0 ? void 0 : {
        all: n,
        ranges: i
      };
    }
    function Joe(e) {
      return xr(e, (t) => !!(t.transformFlags & 2));
    }
    function yWe(e) {
      return !vWe(e) && !bm(e);
    }
    function vWe(e) {
      switch (e.kind) {
        case 273:
          return !0;
        case 272:
          return !Qn(e, 32);
        case 244:
          return e.declarationList.declarations.every((t) => !!t.initializer && J_(t.initializer, !0));
        default:
          return !1;
      }
    }
    function DL(e, t, n, i = /* @__PURE__ */ new Set(), a) {
      var o;
      const c = /* @__PURE__ */ new Set(), _ = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Map(), d = S(Joe(t));
      d && _.set(d, [!1, qn((o = d.declarations) == null ? void 0 : o[0], (T) => p_(T) || hd(T) || nh(T) || bl(T) || Ns(T) || ci(T))]);
      for (const T of t) Woe(T, (k) => {
        c.add(E.checkDefined(zl(k) ? n.getSymbolAtLocation(k.expression.left) : k.symbol, "Need a symbol here"));
      });
      const g = /* @__PURE__ */ new Set();
      for (const T of t) zoe(T, n, a, (k, D) => {
        if (!_t(k.declarations)) return;
        if (i.has(mu(k, n))) {
          g.add(k);
          return;
        }
        const P = xr(k.declarations, oG);
        if (P) {
          const N = _.get(k);
          _.set(k, [(N === void 0 || N) && D, qn(P, (M) => p_(M) || hd(M) || nh(M) || bl(M) || Ns(M) || ci(M))]);
        } else !c.has(k) && hr(k.declarations, (N) => Uoe(N) && TWe(N) === e) && u.set(k, D);
      });
      for (const T of _.keys()) g.add(T);
      const h = /* @__PURE__ */ new Map();
      for (const T of e.statements)
        Gi(t, T) || (d && T.transformFlags & 2 && g.delete(d), zoe(T, n, a, (k, D) => {
          c.has(k) && h.set(k, D), g.delete(k);
        }));
      return {
        movedSymbols: c,
        targetFileImportsFromOldFile: u,
        oldFileImportsFromTargetFile: h,
        oldImportsNeededByTargetFile: _,
        unusedImportsFromOldFile: g
      };
      function S(T) {
        if (T === void 0) return;
        const k = n.getJsxNamespace(T), D = n.resolveName(k, T, 1920, !0);
        return D && _t(D.declarations, oG) ? D : void 0;
      }
    }
    function bWe(e, t, n, i) {
      let a = e;
      for (let o = 1; ; o++) {
        const c = jn(n, a + t);
        if (!i.fileExists(c)) return a;
        a = `${e}.${o}`;
      }
    }
    function SWe(e, t) {
      return Vg(e, cq) || Vg(t, cq) || "newFile";
    }
    function zoe(e, t, n, i) {
      e.forEachChild(function a(o) {
        if (Fe(o) && !pg(o)) {
          if (n && !W_(n, o)) return;
          const c = t.getSymbolAtLocation(o);
          c && i(c, vv(o));
        } else o.forEachChild(a);
      });
    }
    function Woe(e, t) {
      switch (e.kind) {
        case 263:
        case 264:
        case 268:
        case 267:
        case 266:
        case 265:
        case 272:
          return t(e);
        case 244:
          return Hn(e.declarationList.declarations, (n) => zSe(n.name, t));
        case 245: {
          const { expression: n } = e;
          return un(n) && qc(n) === 1 ? t(e) : void 0;
        }
      }
    }
    function oG(e) {
      switch (e.kind) {
        case 272:
        case 277:
        case 274:
        case 275:
          return !0;
        case 261:
          return JSe(e);
        case 209:
          return ci(e.parent.parent) && JSe(e.parent.parent);
        default:
          return !1;
      }
    }
    function JSe(e) {
      return Pi(e.parent.parent.parent) && !!e.initializer && J_(e.initializer, !0);
    }
    function Uoe(e) {
      return WSe(e) && Pi(e.parent) || ci(e) && Pi(e.parent.parent.parent);
    }
    function TWe(e) {
      return ci(e) ? e.parent.parent.parent : e.parent;
    }
    function zSe(e, t) {
      switch (e.kind) {
        case 80:
          return t(ns(e.parent, (n) => ci(n) || Ns(n)));
        case 208:
        case 207:
          return Hn(e.elements, (n) => Al(n) ? void 0 : zSe(n.name, t));
        default:
          return E.assertNever(e, `Unexpected name kind ${e.kind}`);
      }
    }
    function WSe(e) {
      switch (e.kind) {
        case 263:
        case 264:
        case 268:
        case 267:
        case 266:
        case 265:
        case 272:
          return !0;
        default:
          return !1;
      }
    }
    function xWe(e, t, n, i, a) {
      var o;
      const c = /* @__PURE__ */ new Set(), _ = (o = i.symbol) == null ? void 0 : o.exports;
      if (_) {
        const d = t.getTypeChecker(), g = /* @__PURE__ */ new Map();
        for (const h of a.all) RSe(h) && Qn(h, 32) && Woe(h, (S) => {
          var T;
          const k = Hn(jd(S) ? (T = _.get(S.symbol.escapedName)) == null ? void 0 : T.declarations : void 0, (D) => tl(D) ? D : $u(D) ? qn(D.parent.parent, tl) : void 0);
          k && k.moduleSpecifier && g.set(k, (g.get(k) || /* @__PURE__ */ new Set()).add(S));
        });
        for (const [h, S] of ma(g)) if (h.exportClause && Pp(h.exportClause) && It(h.exportClause.elements)) {
          const T = h.exportClause.elements, k = dn(T, (D) => xr(mu(D.symbol, d).declarations, (P) => Uoe(P) && S.has(P)) === void 0);
          if (It(k) === 0) {
            e.deleteNode(i, h), c.add(h);
            continue;
          }
          It(k) < It(T) && e.replaceNode(i, h, A.updateExportDeclaration(h, h.modifiers, h.isTypeOnly, A.updateNamedExports(h.exportClause, A.createNodeArray(k, T.hasTrailingComma)), h.moduleSpecifier, h.attributes));
        }
      }
      const u = Ya(i.statements, (d) => tl(d) && !!d.moduleSpecifier && !c.has(d));
      u ? e.insertNodesBefore(i, u, n, !0) : e.insertNodesAfter(i, i.statements[i.statements.length - 1], n);
    }
    function USe(e, t) {
      if (So(t)) {
        const n = t.symbol.declarations;
        if (n === void 0 || It(n) <= 1 || !Gi(n, t)) return;
        const i = n[0], a = n[It(n) - 1], o = Rn(n, (_) => Sr(_) === e && Ei(_) ? _ : void 0), c = qs(e.statements, (_) => _.end >= a.end);
        return {
          toMove: o,
          start: qs(e.statements, (_) => _.end >= i.end),
          end: c
        };
      }
    }
    function Voe(e, t, n) {
      const i = /* @__PURE__ */ new Set();
      for (const a of e.imports) {
        const o = fD(a);
        if (ic(o) && o.importClause && o.importClause.namedBindings && Nm(o.importClause.namedBindings)) for (const c of o.importClause.namedBindings.elements) {
          const _ = n.getSymbolAtLocation(c.propertyName || c.name);
          _ && i.add(mu(_, n));
        }
        if (cD(o.parent) && rp(o.parent.name)) for (const c of o.parent.name.elements) {
          const _ = n.getSymbolAtLocation(c.propertyName || c.name);
          _ && i.add(mu(_, n));
        }
      }
      for (const a of t) zoe(a, n, void 0, (o) => {
        const c = mu(o, n);
        c.valueDeclaration && Sr(c.valueDeclaration).path === e.path && i.add(c);
      });
      return i;
    }
    function Qh(e) {
      return e.error !== void 0;
    }
    function Wv(e, t) {
      return t ? e.substr(0, t.length) === t : !0;
    }
    function qoe(e, t, n, i) {
      return Ln(e) && !Zn(t) && !n.resolveName(e.name.text, e, 111551, !1) && !Oi(e.name) && !lS(e.name) ? e.name.text : eT(Zn(t) ? "newProperty" : "newLocal", i);
    }
    function Goe(e, t, n, i, a, o) {
      t.forEach(([c, _], u) => {
        var d;
        const g = mu(u, i);
        i.isUnknownSymbol(g) ? o.addVerbatimImport(E.checkDefined(_ ?? cr((d = u.declarations) == null ? void 0 : d[0], uK))) : g.parent === void 0 ? (E.assert(_ !== void 0, "expected module symbol to have a declaration"), o.addImportForModuleSymbol(u, c, _)) : o.addImportFromExportedSymbol(g, c, _);
      }), Roe(n, e.fileName, o, a);
    }
    var wL = "Inline variable", Hoe = Oa(p.Inline_variable), $oe = {
      name: wL,
      description: Hoe,
      kind: "refactor.inline.variable"
    };
    ch(wL, {
      kinds: [$oe.kind],
      getAvailableActions(e) {
        const { file: t, program: n, preferences: i, startPosition: a, triggerReason: o } = e, c = VSe(t, a, o === "invoked", n);
        return c ? jk.isRefactorErrorInfo(c) ? i.provideRefactorNotApplicableReason ? [{
          name: wL,
          description: Hoe,
          actions: [{
            ...$oe,
            notApplicableReason: c.error
          }]
        }] : Te : [{
          name: wL,
          description: Hoe,
          actions: [$oe]
        }] : Te;
      },
      getEditsForAction(e, t) {
        E.assert(t === wL, "Unexpected refactor invoked");
        const { file: n, program: i, startPosition: a } = e, o = VSe(n, a, !0, i);
        if (!o || jk.isRefactorErrorInfo(o)) return;
        const { references: c, declaration: _, replacement: u } = o;
        return { edits: on.ChangeTracker.with(e, (d) => {
          for (const g of c) {
            const h = Ts(u) && Fe(g) && dd(g.parent);
            h && I6(h) && !xv(h.parent.parent) ? CWe(d, n, h, u) : d.replaceNode(n, g, kWe(g, u));
          }
          d.delete(n, _);
        }) };
      }
    });
    function VSe(e, t, n, i) {
      var a, o;
      const c = i.getTypeChecker(), _ = G_(e, t), u = _.parent;
      if (Fe(_)) {
        if (OA(u) && nD(u) && Fe(u.name)) {
          if (((a = c.getMergedSymbol(u.symbol).declarations) == null ? void 0 : a.length) !== 1) return { error: Oa(p.Variables_with_multiple_declarations_cannot_be_inlined) };
          if (qSe(u)) return;
          const d = GSe(u, c, e);
          return d && {
            references: d,
            declaration: u,
            replacement: u.initializer
          };
        }
        if (n) {
          let d = c.resolveName(_.text, _, 111551, !1);
          if (d = d && c.getMergedSymbol(d), ((o = d?.declarations) == null ? void 0 : o.length) !== 1) return { error: Oa(p.Variables_with_multiple_declarations_cannot_be_inlined) };
          const g = d.declarations[0];
          if (!OA(g) || !nD(g) || !Fe(g.name) || qSe(g)) return;
          const h = GSe(g, c, e);
          return h && {
            references: h,
            declaration: g,
            replacement: g.initializer
          };
        }
        return { error: Oa(p.Could_not_find_variable_to_inline) };
      }
    }
    function qSe(e) {
      return _t(ns(e.parent.parent, $c).modifiers, ck);
    }
    function GSe(e, t, n) {
      const i = [], a = Jo.Core.eachSymbolReferenceInFile(e.name, t, n, (o) => {
        if (Jo.isWriteAccessForReference(o) && !Nu(o.parent) || $u(o.parent) || Xo(o.parent) || Gb(o.parent) || T3(e, o.pos)) return !0;
        i.push(o);
      });
      return i.length === 0 || a ? void 0 : i;
    }
    function kWe(e, t) {
      t = no(t);
      const { parent: n } = e;
      return dt(n) && (bD(t) < bD(n) || oL(n)) || Ra(t) && (Wy(n) || Ln(n)) || Ln(n) && (V_(t) || bs(t)) ? A.createParenthesizedExpression(t) : Fe(e) && Nu(n) ? A.createPropertyAssignment(e, t) : t;
    }
    function CWe(e, t, n, i) {
      const a = n.parent, o = a.templateSpans.indexOf(n), c = o === 0 ? a.head : a.templateSpans[o - 1];
      e.replaceRangeWithText(t, {
        pos: c.getEnd() - 2,
        end: n.literal.getStart() + 1
      }, i.text.replace(/\\/g, "\\\\").replace(/`/g, "\\`"));
    }
    var PL = "Move to a new file", Xoe = Oa(p.Move_to_a_new_file), Qoe = {
      name: PL,
      description: Xoe,
      kind: "refactor.move.newFile"
    };
    ch(PL, {
      kinds: [Qoe.kind],
      getAvailableActions: function(t) {
        const n = AI(t), i = t.file;
        if (t.triggerReason === "implicit" && t.endPosition !== void 0) {
          const a = cr(xi(i, t.startPosition), Mk), o = cr(xi(i, t.endPosition), Mk);
          if (a && !Pi(a) && o && !Pi(o)) return Te;
        }
        if (t.preferences.allowTextChangesInNewFiles && n) {
          const a = t.file, o = {
            start: {
              line: Za(a, n.all[0].getStart(a)).line,
              offset: Za(a, n.all[0].getStart(a)).character
            },
            end: {
              line: Za(a, ws(n.all).end).line,
              offset: Za(a, ws(n.all).end).character
            }
          };
          return [{
            name: PL,
            description: Xoe,
            actions: [{
              ...Qoe,
              range: o
            }]
          }];
        }
        return t.preferences.provideRefactorNotApplicableReason ? [{
          name: PL,
          description: Xoe,
          actions: [{
            ...Qoe,
            notApplicableReason: Oa(p.Selection_is_not_a_valid_statement_or_statements)
          }]
        }] : Te;
      },
      getEditsForAction: function(t, n) {
        E.assert(n === PL, "Wrong refactor invoked");
        const i = E.checkDefined(AI(t));
        return {
          edits: on.ChangeTracker.with(t, (a) => EWe(t.file, t.program, i, a, t.host, t, t.preferences)),
          renameFilename: void 0,
          renameLocation: void 0
        };
      }
    });
    function EWe(e, t, n, i, a, o, c) {
      const _ = t.getTypeChecker(), u = DL(e, n.all, _), d = Boe(e, t, a, n), g = bL(d, e.externalModuleIndicator ? 99 : e.commonJsModuleIndicator ? 1 : void 0, t, a), h = Zu.createImportAdder(e, o.program, o.preferences, o.host);
      Foe(e, g, u, i, n, t, a, c, Zu.createImportAdder(g, o.program, o.preferences, o.host), h), Loe(t, i, e.fileName, d, Wh(a));
    }
    var DWe = {}, Yoe = "Convert overload list to single signature", HSe = Oa(p.Convert_overload_list_to_single_signature), $Se = {
      name: Yoe,
      description: HSe,
      kind: "refactor.rewrite.function.overloadList"
    };
    ch(Yoe, {
      kinds: [$Se.kind],
      getEditsForAction: PWe,
      getAvailableActions: wWe
    });
    function wWe(e) {
      const { file: t, startPosition: n, program: i } = e;
      return QSe(t, n, i) ? [{
        name: Yoe,
        description: HSe,
        actions: [$Se]
      }] : Te;
    }
    function PWe(e) {
      const { file: t, startPosition: n, program: i } = e, a = QSe(t, n, i);
      if (!a) return;
      const o = i.getTypeChecker(), c = a[a.length - 1];
      let _ = c;
      switch (c.kind) {
        case 174:
          _ = A.updateMethodSignature(c, c.modifiers, c.name, c.questionToken, c.typeParameters, u(a), c.type);
          break;
        case 175:
          _ = A.updateMethodDeclaration(c, c.modifiers, c.asteriskToken, c.name, c.questionToken, c.typeParameters, u(a), c.type, c.body);
          break;
        case 180:
          _ = A.updateCallSignature(c, c.typeParameters, u(a), c.type);
          break;
        case 177:
          _ = A.updateConstructorDeclaration(c, c.modifiers, u(a), c.body);
          break;
        case 181:
          _ = A.updateConstructSignature(c, c.typeParameters, u(a), c.type);
          break;
        case 263:
          _ = A.updateFunctionDeclaration(c, c.modifiers, c.asteriskToken, c.name, c.typeParameters, u(a), c.type, c.body);
          break;
        default:
          return E.failBadSyntaxKind(c, "Unhandled signature kind in overload list conversion refactoring");
      }
      if (_ === c) return;
      return {
        renameFilename: void 0,
        renameLocation: void 0,
        edits: on.ChangeTracker.with(e, (h) => {
          h.replaceNodeRange(t, a[0], a[a.length - 1], _);
        })
      };
      function u(h) {
        const S = h[h.length - 1];
        return So(S) && S.body && (h = h.slice(0, h.length - 1)), A.createNodeArray([A.createParameterDeclaration(void 0, A.createToken(26), "args", void 0, A.createUnionTypeNode(or(h, d)))]);
      }
      function d(h) {
        const S = or(h.parameters, g);
        return ln(A.createTupleTypeNode(S), _t(S, (T) => !!It(C6(T))) ? 0 : 1);
      }
      function g(h) {
        E.assert(Fe(h.name));
        const S = pt(A.createNamedTupleMember(h.dotDotDotToken, h.name, h.questionToken, h.type || A.createKeywordTypeNode(133)), h), T = h.symbol && h.symbol.getDocumentationComment(o);
        if (T) {
          const k = OI(T);
          k.length && Sv(S, [{
            text: `*
${k.split(`
`).map((D) => ` * ${D}`).join(`
`)}
 `,
            kind: 3,
            pos: -1,
            end: -1,
            hasTrailingNewLine: !0,
            hasLeadingNewline: !0
          }]);
        }
        return S;
      }
    }
    function XSe(e) {
      switch (e.kind) {
        case 174:
        case 175:
        case 180:
        case 177:
        case 181:
        case 263:
          return !0;
      }
      return !1;
    }
    function QSe(e, t, n) {
      const i = cr(xi(e, t), XSe);
      if (!i || So(i) && i.body && cE(i.body, t)) return;
      const a = n.getTypeChecker(), o = i.symbol;
      if (!o) return;
      const c = o.declarations;
      if (It(c) <= 1 || !hr(c, (h) => Sr(h) === e) || !XSe(c[0])) return;
      const _ = c[0].kind;
      if (!hr(c, (h) => h.kind === _)) return;
      const u = c;
      if (_t(u, (h) => !!h.typeParameters || _t(h.parameters, (S) => !!S.modifiers || !Fe(S.name)))) return;
      const d = Rn(u, (h) => a.getSignatureFromDeclaration(h));
      if (It(d) !== It(c)) return;
      const g = a.getReturnTypeOfSignature(d[0]);
      if (hr(d, (h) => a.getReturnTypeOfSignature(h) === g))
        return u;
    }
    var Zoe = "Add or remove braces in an arrow function", YSe = Oa(p.Add_or_remove_braces_in_an_arrow_function), cG = {
      name: "Add braces to arrow function",
      description: Oa(p.Add_braces_to_arrow_function),
      kind: "refactor.rewrite.arrow.braces.add"
    }, AL = {
      name: "Remove braces from arrow function",
      description: Oa(p.Remove_braces_from_arrow_function),
      kind: "refactor.rewrite.arrow.braces.remove"
    };
    ch(Zoe, {
      kinds: [AL.kind],
      getEditsForAction: NWe,
      getAvailableActions: AWe
    });
    function AWe(e) {
      const { file: t, startPosition: n, triggerReason: i } = e, a = ZSe(t, n, i === "invoked");
      return a ? Qh(a) ? e.preferences.provideRefactorNotApplicableReason ? [{
        name: Zoe,
        description: YSe,
        actions: [{
          ...cG,
          notApplicableReason: a.error
        }, {
          ...AL,
          notApplicableReason: a.error
        }]
      }] : Te : [{
        name: Zoe,
        description: YSe,
        actions: [a.addBraces ? cG : AL]
      }] : Te;
    }
    function NWe(e, t) {
      const { file: n, startPosition: i } = e, a = ZSe(n, i);
      E.assert(a && !Qh(a), "Expected applicable refactor info");
      const { expression: o, returnStatement: c, func: _ } = a;
      let u;
      if (t === cG.name) {
        const d = A.createReturnStatement(o);
        u = A.createBlock([d], !0), dE(o, d, n, 3, !0);
      } else if (t === AL.name && c) {
        const d = o || A.createVoidZero();
        u = oL(d) ? A.createParenthesizedExpression(d) : d, bI(c, u, n, 3, !1), dE(c, u, n, 3, !1), $w(c, u, n, 3, !1);
      } else E.fail("invalid action");
      return {
        renameFilename: void 0,
        renameLocation: void 0,
        edits: on.ChangeTracker.with(e, (d) => {
          d.replaceNode(n, _.body, u);
        })
      };
    }
    function ZSe(e, t, n = !0, i) {
      const a = xi(e, t), o = Kf(a);
      if (!o) return { error: Oa(p.Could_not_find_a_containing_arrow_function) };
      if (!Bo(o)) return { error: Oa(p.Containing_function_is_not_an_arrow_function) };
      if (!(!W_(o, a) || W_(o.body, a) && !n)) {
        if (Wv(cG.kind, i) && dt(o.body)) return {
          func: o,
          addBraces: !0,
          expression: o.body
        };
        if (Wv(AL.kind, i) && Wa(o.body) && o.body.statements.length === 1) {
          const c = js(o.body.statements);
          if (zf(c)) return {
            func: o,
            addBraces: !1,
            expression: c.expression && bs(b6(c.expression, !1)) ? A.createParenthesizedExpression(c.expression) : c.expression,
            returnStatement: c
          };
        }
      }
    }
    var IWe = {}, KSe = "Convert arrow function or function expression", OWe = Oa(p.Convert_arrow_function_or_function_expression), NL = {
      name: "Convert to anonymous function",
      description: Oa(p.Convert_to_anonymous_function),
      kind: "refactor.rewrite.function.anonymous"
    }, IL = {
      name: "Convert to named function",
      description: Oa(p.Convert_to_named_function),
      kind: "refactor.rewrite.function.named"
    }, OL = {
      name: "Convert to arrow function",
      description: Oa(p.Convert_to_arrow_function),
      kind: "refactor.rewrite.function.arrow"
    };
    ch(KSe, {
      kinds: [
        NL.kind,
        IL.kind,
        OL.kind
      ],
      getEditsForAction: LWe,
      getAvailableActions: FWe
    });
    function FWe(e) {
      const { file: t, startPosition: n, program: i, kind: a } = e, o = tTe(t, n, i);
      if (!o) return Te;
      const { selectedVariableDeclaration: c, func: _ } = o, u = [], d = [];
      if (Wv(IL.kind, a)) {
        const g = c || Bo(_) && ci(_.parent) ? void 0 : Oa(p.Could_not_convert_to_named_function);
        g ? d.push({
          ...IL,
          notApplicableReason: g
        }) : u.push(IL);
      }
      if (Wv(NL.kind, a)) {
        const g = !c && Bo(_) ? void 0 : Oa(p.Could_not_convert_to_anonymous_function);
        g ? d.push({
          ...NL,
          notApplicableReason: g
        }) : u.push(NL);
      }
      if (Wv(OL.kind, a)) {
        const g = Lo(_) ? void 0 : Oa(p.Could_not_convert_to_arrow_function);
        g ? d.push({
          ...OL,
          notApplicableReason: g
        }) : u.push(OL);
      }
      return [{
        name: KSe,
        description: OWe,
        actions: u.length === 0 && e.preferences.provideRefactorNotApplicableReason ? d : u
      }];
    }
    function LWe(e, t) {
      const { file: n, startPosition: i, program: a } = e, o = tTe(n, i, a);
      if (!o) return;
      const { func: c } = o, _ = [];
      switch (t) {
        case NL.name:
          _.push(...BWe(e, c));
          break;
        case IL.name:
          const u = jWe(c);
          if (!u) return;
          _.push(...JWe(e, c, u));
          break;
        case OL.name:
          if (!Lo(c)) return;
          _.push(...zWe(e, c));
          break;
        default:
          return E.fail("invalid action");
      }
      return {
        renameFilename: void 0,
        renameLocation: void 0,
        edits: _
      };
    }
    function eTe(e) {
      let t = !1;
      return e.forEachChild(function n(i) {
        if (oE(i)) {
          t = !0;
          return;
        }
        !Zn(i) && !Xc(i) && !Lo(i) && Fa(i, n);
      }), t;
    }
    function tTe(e, t, n) {
      const i = xi(e, t), a = n.getTypeChecker(), o = RWe(e, a, i.parent);
      if (o && !eTe(o.body) && !a.containsArgumentsReference(o)) return {
        selectedVariableDeclaration: !0,
        func: o
      };
      const c = Kf(i);
      if (c && (Lo(c) || Bo(c)) && !W_(c.body, i) && !eTe(c.body) && !a.containsArgumentsReference(c))
        return Lo(c) && nTe(e, a, c) ? void 0 : {
          selectedVariableDeclaration: !1,
          func: c
        };
    }
    function MWe(e) {
      return ci(e) || iu(e) && e.declarations.length === 1;
    }
    function RWe(e, t, n) {
      if (!MWe(n)) return;
      const i = (ci(n) ? n : js(n.declarations)).initializer;
      if (i && (Bo(i) || Lo(i) && !nTe(e, t, i))) return i;
    }
    function rTe(e) {
      if (dt(e)) {
        const t = A.createReturnStatement(e), n = e.getSourceFile();
        return pt(t, e), Tf(t), bI(e, t, n, void 0, !0), A.createBlock([t], !0);
      } else return e;
    }
    function jWe(e) {
      const t = e.parent;
      if (!ci(t) || !nD(t)) return;
      const n = t.parent, i = n.parent;
      if (!(!iu(n) || !$c(i) || !Fe(t.name)))
        return {
          variableDeclaration: t,
          variableDeclarationList: n,
          statement: i,
          name: t.name
        };
    }
    function BWe(e, t) {
      const { file: n } = e, i = rTe(t.body), a = A.createFunctionExpression(t.modifiers, t.asteriskToken, void 0, t.typeParameters, t.parameters, t.type, i);
      return on.ChangeTracker.with(e, (o) => o.replaceNode(n, t, a));
    }
    function JWe(e, t, n) {
      const { file: i } = e, a = rTe(t.body), { variableDeclaration: o, variableDeclarationList: c, statement: _, name: u } = n;
      yz(_);
      const d = nv(o) & 32 | Pu(t), g = A.createModifiersFromModifierFlags(d), h = A.createFunctionDeclaration(It(g) ? g : void 0, t.asteriskToken, u, t.typeParameters, t.parameters, t.type, a);
      return c.declarations.length === 1 ? on.ChangeTracker.with(e, (S) => S.replaceNode(i, _, h)) : on.ChangeTracker.with(e, (S) => {
        S.delete(i, o), S.insertNodeAfter(i, _, h);
      });
    }
    function zWe(e, t) {
      const { file: n } = e, i = t.body.statements[0];
      let a;
      WWe(t.body, i) ? (a = i.expression, Tf(a), KS(i, a)) : a = t.body;
      const o = A.createArrowFunction(t.modifiers, t.typeParameters, t.parameters, t.type, A.createToken(39), a);
      return on.ChangeTracker.with(e, (c) => c.replaceNode(n, t, o));
    }
    function WWe(e, t) {
      return e.statements.length === 1 && zf(t) && !!t.expression;
    }
    function nTe(e, t, n) {
      return !!n.name && Jo.Core.isSymbolReferencedInFile(n.name, t, e);
    }
    var UWe = {}, lG = "Convert parameters to destructured object", VWe = 1, iTe = Oa(p.Convert_parameters_to_destructured_object), aTe = {
      name: lG,
      description: iTe,
      kind: "refactor.rewrite.parameters.toDestructured"
    };
    ch(lG, {
      kinds: [aTe.kind],
      getEditsForAction: GWe,
      getAvailableActions: qWe
    });
    function qWe(e) {
      const { file: t, startPosition: n } = e;
      return T_(t) || !cTe(t, n, e.program.getTypeChecker()) ? Te : [{
        name: lG,
        description: iTe,
        actions: [aTe]
      }];
    }
    function GWe(e, t) {
      E.assert(t === lG, "Unexpected action name");
      const { file: n, startPosition: i, program: a, cancellationToken: o, host: c } = e, _ = cTe(n, i, a.getTypeChecker());
      if (!_ || !o) return;
      const u = $We(_, a, o);
      return u.valid ? {
        renameFilename: void 0,
        renameLocation: void 0,
        edits: on.ChangeTracker.with(e, (d) => HWe(n, a, c, d, _, u))
      } : { edits: [] };
    }
    function HWe(e, t, n, i, a, o) {
      const c = o.signature, _ = or(fTe(a, t, n), (g) => no(g));
      c && d(c, or(fTe(c, t, n), (g) => no(g))), d(a, _);
      const u = x4(o.functionCalls, (g, h) => Fo(g.pos, h.pos));
      for (const g of u) if (g.arguments && g.arguments.length) {
        const h = no(iUe(a, g.arguments), !0);
        i.replaceNodeRange(Sr(g), js(g.arguments), ws(g.arguments), h, {
          leadingTriviaOption: on.LeadingTriviaOption.IncludeAll,
          trailingTriviaOption: on.TrailingTriviaOption.Include
        });
      }
      function d(g, h) {
        i.replaceNodeRangeWithNodes(e, js(g.parameters), ws(g.parameters), h, {
          joiner: ", ",
          indentation: 0,
          leadingTriviaOption: on.LeadingTriviaOption.IncludeAll,
          trailingTriviaOption: on.TrailingTriviaOption.Include
        });
      }
    }
    function $We(e, t, n) {
      const i = sUe(e), a = yc(e) ? aUe(e) : [], o = Z1([...i, ...a], S0), c = t.getTypeChecker(), _ = u(ks(o, (g) => Jo.getReferenceEntriesForNode(-1, g, t, t.getSourceFiles(), n)));
      return hr(_.declarations, (g) => Gi(o, g)) || (_.valid = !1), _;
      function u(g) {
        const h = {
          accessExpressions: [],
          typeUsages: []
        }, S = {
          functionCalls: [],
          declarations: [],
          classReferences: h,
          valid: !0
        }, T = or(i, d), k = or(a, d), D = yc(e), P = or(i, (N) => Koe(N, c));
        for (const N of g) {
          if (N.kind === Jo.EntryKind.Span) {
            S.valid = !1;
            continue;
          }
          if (Gi(P, d(N.node))) {
            if (ZWe(N.node.parent)) {
              S.signature = N.node.parent;
              continue;
            }
            const R = oTe(N);
            if (R) {
              S.functionCalls.push(R);
              continue;
            }
          }
          const M = Koe(N.node, c);
          if (M && Gi(P, M)) {
            const R = ece(N);
            if (R) {
              S.declarations.push(R);
              continue;
            }
          }
          if (Gi(T, d(N.node)) || Bw(N.node)) {
            if (sTe(N)) continue;
            const R = ece(N);
            if (R) {
              S.declarations.push(R);
              continue;
            }
            const G = oTe(N);
            if (G) {
              S.functionCalls.push(G);
              continue;
            }
          }
          if (D && Gi(k, d(N.node))) {
            if (sTe(N)) continue;
            const R = ece(N);
            if (R) {
              S.declarations.push(R);
              continue;
            }
            const G = XWe(N);
            if (G) {
              h.accessExpressions.push(G);
              continue;
            }
            if (sl(e.parent)) {
              const L = QWe(N);
              if (L) {
                h.typeUsages.push(L);
                continue;
              }
            }
          }
          S.valid = !1;
        }
        return S;
      }
      function d(g) {
        const h = c.getSymbolAtLocation(g);
        return h && vq(h, c);
      }
    }
    function Koe(e, t) {
      const n = FI(e);
      if (n) {
        const i = t.getContextualTypeForObjectLiteralElement(n), a = i?.getSymbol();
        if (a && !(gc(a) & 6)) return a;
      }
    }
    function sTe(e) {
      const t = e.node;
      if (p_(t.parent) || hd(t.parent) || bl(t.parent) || nh(t.parent) || $u(t.parent) || Xo(t.parent)) return t;
    }
    function ece(e) {
      if (Jl(e.node.parent)) return e.node;
    }
    function oTe(e) {
      if (e.node.parent) {
        const t = e.node, n = t.parent;
        switch (n.kind) {
          case 214:
          case 215:
            const i = qn(n, ym);
            if (i && i.expression === t) return i;
            break;
          case 212:
            const a = qn(n, Ln);
            if (a && a.parent && a.name === t) {
              const c = qn(a.parent, ym);
              if (c && c.expression === a) return c;
            }
            break;
          case 213:
            const o = qn(n, Po);
            if (o && o.parent && o.argumentExpression === t) {
              const c = qn(o.parent, ym);
              if (c && c.expression === o) return c;
            }
            break;
        }
      }
    }
    function XWe(e) {
      if (e.node.parent) {
        const t = e.node, n = t.parent;
        switch (n.kind) {
          case 212:
            const i = qn(n, Ln);
            if (i && i.expression === t) return i;
            break;
          case 213:
            const a = qn(n, Po);
            if (a && a.expression === t) return a;
            break;
        }
      }
    }
    function QWe(e) {
      const t = e.node;
      if (YS(t) === 2 || rO(t.parent)) return t;
    }
    function cTe(e, t, n) {
      const i = lE(e, t), a = EK(i);
      if (!YWe(i) && a && KWe(a, n) && W_(a, i) && !(a.body && W_(a.body, i)))
        return a;
    }
    function YWe(e) {
      const t = cr(e, ZC);
      if (t) {
        const n = cr(t, (i) => !ZC(i));
        return !!n && So(n);
      }
      return !1;
    }
    function ZWe(e) {
      return gd(e) && (au(e.parent) || C_(e.parent));
    }
    function KWe(e, t) {
      var n;
      if (!eUe(e.parameters, t)) return !1;
      switch (e.kind) {
        case 263:
          return lTe(e) && FL(e, t);
        case 175:
          if (bs(e.parent)) {
            const i = Koe(e.name, t);
            return ((n = i?.declarations) == null ? void 0 : n.length) === 1 && FL(e, t);
          }
          return FL(e, t);
        case 177:
          return sl(e.parent) ? lTe(e.parent) && FL(e, t) : uTe(e.parent.parent) && FL(e, t);
        case 219:
        case 220:
          return uTe(e.parent);
      }
      return !1;
    }
    function FL(e, t) {
      return !!e.body && !t.isImplementationOfOverload(e);
    }
    function lTe(e) {
      return e.name ? !0 : !!_E(e, 90);
    }
    function eUe(e, t) {
      return rUe(e) >= VWe && hr(e, (n) => tUe(n, t));
    }
    function tUe(e, t) {
      if (cg(e)) {
        const n = t.getTypeAtLocation(e);
        if (!t.isArrayType(n) && !t.isTupleType(n)) return !1;
      }
      return !e.modifiers && Fe(e.name);
    }
    function uTe(e) {
      return ci(e) && i6(e) && Fe(e.name) && !e.type;
    }
    function tce(e) {
      return e.length > 0 && oE(e[0].name);
    }
    function rUe(e) {
      return tce(e) ? e.length - 1 : e.length;
    }
    function _Te(e) {
      return tce(e) && (e = A.createNodeArray(e.slice(1), e.hasTrailingComma)), e;
    }
    function nUe(e, t) {
      return Fe(t) && Xp(t) === e ? A.createShorthandPropertyAssignment(e) : A.createPropertyAssignment(e, t);
    }
    function iUe(e, t) {
      const n = _Te(e.parameters), i = cg(ws(n)), a = or(i ? t.slice(0, n.length - 1) : t, (o, c) => {
        const _ = nUe(uG(n[c]), o);
        return Tf(_.name), ol(_) && Tf(_.initializer), KS(o, _), _;
      });
      if (i && t.length >= n.length) {
        const o = t.slice(n.length - 1), c = A.createPropertyAssignment(uG(ws(n)), A.createArrayLiteralExpression(o));
        a.push(c);
      }
      return A.createObjectLiteralExpression(a, !1);
    }
    function fTe(e, t, n) {
      const i = t.getTypeChecker(), a = _Te(e.parameters), o = or(a, g), c = A.createObjectBindingPattern(o), _ = h(a);
      let u;
      hr(a, k) && (u = A.createObjectLiteralExpression());
      const d = A.createParameterDeclaration(void 0, void 0, c, void 0, _, u);
      if (tce(e.parameters)) {
        const D = e.parameters[0], P = A.createParameterDeclaration(void 0, void 0, D.name, void 0, D.type);
        return Tf(P.name), KS(D.name, P.name), D.type && (Tf(P.type), KS(D.type, P.type)), A.createNodeArray([P, d]);
      }
      return A.createNodeArray([d]);
      function g(D) {
        const P = A.createBindingElement(void 0, void 0, uG(D), cg(D) && k(D) ? A.createArrayLiteralExpression() : D.initializer);
        return Tf(P), D.initializer && P.initializer && KS(D.initializer, P.initializer), P;
      }
      function h(D) {
        const P = or(D, S);
        return wm(A.createTypeLiteralNode(P), 1);
      }
      function S(D) {
        let P = D.type;
        !P && (D.initializer || cg(D)) && (P = T(D));
        const N = A.createPropertySignature(void 0, uG(D), k(D) ? A.createToken(58) : D.questionToken, P);
        return Tf(N), KS(D.name, N.name), D.type && N.type && KS(D.type, N.type), N;
      }
      function T(D) {
        return Qw(i.getTypeAtLocation(D), D, t, n);
      }
      function k(D) {
        if (cg(D)) {
          const P = i.getTypeAtLocation(D);
          return !i.isTupleType(P);
        }
        return i.isOptionalParameter(D);
      }
    }
    function uG(e) {
      return Xp(e.name);
    }
    function aUe(e) {
      switch (e.parent.kind) {
        case 264:
          const t = e.parent;
          return t.name ? [t.name] : [E.checkDefined(_E(t, 90), "Nameless class declaration should be a default export")];
        case 232:
          const n = e.parent, i = e.parent.parent, a = n.name;
          return a ? [a, i.name] : [i.name];
      }
    }
    function sUe(e) {
      switch (e.kind) {
        case 263:
          return e.name ? [e.name] : [E.checkDefined(_E(e, 90), "Nameless function declaration should be a default export")];
        case 175:
          return [e.name];
        case 177:
          const t = E.checkDefined(uo(e, 137, e.getSourceFile()), "Constructor declaration should have constructor keyword");
          return e.parent.kind === 232 ? [e.parent.parent.name, t] : [t];
        case 220:
          return [e.parent.name];
        case 219:
          return e.name ? [e.name, e.parent.name] : [e.parent.name];
        default:
          return E.assertNever(e, `Unexpected function declaration kind ${e.kind}`);
      }
    }
    var oUe = {}, rce = "Convert to template string", nce = Oa(p.Convert_to_template_string), ice = {
      name: rce,
      description: nce,
      kind: "refactor.rewrite.string"
    };
    ch(rce, {
      kinds: [ice.kind],
      getEditsForAction: lUe,
      getAvailableActions: cUe
    });
    function cUe(e) {
      const { file: t, startPosition: n } = e, i = ace(pTe(t, n)), a = Ts(i), o = {
        name: rce,
        description: nce,
        actions: []
      };
      return a && e.triggerReason !== "invoked" ? Te : fg(i) && (a || un(i) && sce(i).isValidConcatenation) ? (o.actions.push(ice), [o]) : e.preferences.provideRefactorNotApplicableReason ? (o.actions.push({
        ...ice,
        notApplicableReason: Oa(p.Can_only_convert_string_concatenations_and_string_literals)
      }), [o]) : Te;
    }
    function pTe(e, t) {
      const n = xi(e, t), i = ace(n);
      return !sce(i).isValidConcatenation && E_(i.parent) && un(i.parent.parent) ? i.parent.parent : n;
    }
    function lUe(e, t) {
      const { file: n, startPosition: i } = e, a = pTe(n, i);
      return t === nce ? { edits: uUe(e, a) } : E.fail("invalid action");
    }
    function uUe(e, t) {
      const n = ace(t), i = e.file, a = mUe(sce(n), i), o = Ly(i.text, n.end);
      if (o) {
        const c = o[o.length - 1], _ = {
          pos: o[0].pos,
          end: c.end
        };
        return on.ChangeTracker.with(e, (u) => {
          u.deleteRange(i, _), u.replaceNode(i, n, a);
        });
      } else return on.ChangeTracker.with(e, (c) => c.replaceNode(i, n, a));
    }
    function _Ue(e) {
      return !(e.operatorToken.kind === 64 || e.operatorToken.kind === 65);
    }
    function ace(e) {
      return cr(e.parent, (t) => {
        switch (t.kind) {
          case 212:
          case 213:
            return !1;
          case 229:
          case 227:
            return !(un(t.parent) && _Ue(t.parent));
          default:
            return "quit";
        }
      }) || e;
    }
    function sce(e) {
      const t = (c) => {
        if (!un(c)) return {
          nodes: [c],
          operators: [],
          validOperators: !0,
          hasString: Ts(c) || IS(c)
        };
        const { nodes: _, operators: u, hasString: d, validOperators: g } = t(c.left);
        if (!(d || Ts(c.right) || KO(c.right))) return {
          nodes: [c],
          operators: [],
          hasString: !1,
          validOperators: !0
        };
        const h = c.operatorToken.kind === 40, S = g && h;
        return _.push(c.right), u.push(c.operatorToken), {
          nodes: _,
          operators: u,
          hasString: !0,
          validOperators: S
        };
      }, { nodes: n, operators: i, validOperators: a, hasString: o } = t(e);
      return {
        nodes: n,
        operators: i,
        isValidConcatenation: a && o
      };
    }
    var fUe = (e, t) => (n, i) => {
      n < e.length && $w(e[n], i, t, 3, !1);
    }, pUe = (e, t, n) => (i, a) => {
      for (; i.length > 0; ) {
        const o = i.shift();
        $w(e[o], a, t, 3, !1), n(o, a);
      }
    };
    function dUe(e) {
      return e.replace(/\\.|[$`]/g, (t) => t[0] === "\\" ? t : "\\" + t);
    }
    function dTe(e) {
      const t = ok(e) || Dz(e) ? -2 : -1;
      return uc(e).slice(1, t);
    }
    function mTe(e, t) {
      const n = [];
      let i = "", a = "";
      for (; e < t.length; ) {
        const o = t[e];
        if (Xs(o))
          i += o.text, a += dUe(uc(o).slice(1, -1)), n.push(e), e++;
        else if (KO(o)) {
          i += o.head.text, a += dTe(o.head);
          break;
        } else break;
      }
      return [
        e,
        i,
        a,
        n
      ];
    }
    function mUe({ nodes: e, operators: t }, n) {
      const i = fUe(t, n), a = pUe(e, n, i), [o, c, _, u] = mTe(0, e);
      if (o === e.length) {
        const h = A.createNoSubstitutionTemplateLiteral(c, _);
        return a(u, h), h;
      }
      const d = [], g = A.createTemplateHead(c, _);
      a(u, g);
      for (let h = o; h < e.length; h++) {
        const S = gUe(e[h]);
        i(h, S);
        const [T, k, D, P] = mTe(h + 1, e);
        h = T - 1;
        const N = h === e.length - 1;
        if (KO(S)) {
          const M = or(S.templateSpans, (R, G) => {
            gTe(R);
            const L = G === S.templateSpans.length - 1, z = R.literal.text + (L ? k : ""), H = dTe(R.literal) + (L ? D : "");
            return A.createTemplateSpan(R.expression, N && L ? A.createTemplateTail(z, H) : A.createTemplateMiddle(z, H));
          });
          d.push(...M);
        } else {
          const M = N ? A.createTemplateTail(k, D) : A.createTemplateMiddle(k, D);
          a(P, M), d.push(A.createTemplateSpan(S, M));
        }
      }
      return A.createTemplateExpression(g, d);
    }
    function gTe(e) {
      const t = e.getSourceFile();
      $w(e, e.expression, t, 3, !1), bI(e.expression, e.expression, t, 3, !1);
    }
    function gUe(e) {
      return E_(e) && (gTe(e), e = e.expression), e;
    }
    var hUe = {}, _G = "Convert to optional chain expression", oce = Oa(p.Convert_to_optional_chain_expression), cce = {
      name: _G,
      description: oce,
      kind: "refactor.rewrite.expression.optionalChain"
    };
    ch(_G, {
      kinds: [cce.kind],
      getEditsForAction: vUe,
      getAvailableActions: yUe
    });
    function yUe(e) {
      const t = hTe(e, e.triggerReason === "invoked");
      return t ? Qh(t) ? e.preferences.provideRefactorNotApplicableReason ? [{
        name: _G,
        description: oce,
        actions: [{
          ...cce,
          notApplicableReason: t.error
        }]
      }] : Te : [{
        name: _G,
        description: oce,
        actions: [cce]
      }] : Te;
    }
    function vUe(e, t) {
      const n = hTe(e);
      return E.assert(n && !Qh(n), "Expected applicable refactor info"), {
        edits: on.ChangeTracker.with(e, (i) => DUe(e.file, e.program.getTypeChecker(), i, n, t)),
        renameFilename: void 0,
        renameLocation: void 0
      };
    }
    function fG(e) {
      return un(e) || MS(e);
    }
    function bUe(e) {
      return zl(e) || zf(e) || $c(e);
    }
    function pG(e) {
      return fG(e) || bUe(e);
    }
    function hTe(e, t = !0) {
      const { file: n, program: i } = e, a = Lk(e), o = a.length === 0;
      if (o && !t) return;
      const c = xi(n, a.start), _ = zw(n, a.start + a.length), u = Vc(c.pos, _ && _.end >= c.pos ? _.getEnd() : c.getEnd()), d = o ? CUe(c) : kUe(c, u), g = d && pG(d) ? EUe(d) : void 0;
      if (!g) return { error: Oa(p.Could_not_find_convertible_access_expression) };
      const h = i.getTypeChecker();
      return MS(g) ? SUe(g, h) : TUe(g);
    }
    function SUe(e, t) {
      const n = e.condition, i = uce(e.whenTrue);
      if (!i || t.isNullableType(t.getTypeAtLocation(i))) return { error: Oa(p.Could_not_find_convertible_access_expression) };
      if ((Ln(n) || Fe(n)) && lce(n, i.expression)) return {
        finalExpression: i,
        occurrences: [n],
        expression: e
      };
      if (un(n)) {
        const a = yTe(i.expression, n);
        return a ? {
          finalExpression: i,
          occurrences: a,
          expression: e
        } : { error: Oa(p.Could_not_find_matching_access_expressions) };
      }
    }
    function TUe(e) {
      if (e.operatorToken.kind !== 56) return { error: Oa(p.Can_only_convert_logical_AND_access_chains) };
      const t = uce(e.right);
      if (!t) return { error: Oa(p.Could_not_find_convertible_access_expression) };
      const n = yTe(t.expression, e.left);
      return n ? {
        finalExpression: t,
        occurrences: n,
        expression: e
      } : { error: Oa(p.Could_not_find_matching_access_expressions) };
    }
    function yTe(e, t) {
      const n = [];
      for (; un(t) && t.operatorToken.kind === 56; ) {
        const a = lce(Gs(e), Gs(t.right));
        if (!a) break;
        n.push(a), e = a, t = t.left;
      }
      const i = lce(e, t);
      return i && n.push(i), n.length > 0 ? n : void 0;
    }
    function lce(e, t) {
      if (!(!Fe(t) && !Ln(t) && !Po(t)))
        return xUe(e, t) ? t : void 0;
    }
    function xUe(e, t) {
      for (; (za(e) || Ln(e) || Po(e)) && NI(e) !== NI(t); )
        e = e.expression;
      for (; Ln(e) && Ln(t) || Po(e) && Po(t); ) {
        if (NI(e) !== NI(t)) return !1;
        e = e.expression, t = t.expression;
      }
      return Fe(e) && Fe(t) && e.getText() === t.getText();
    }
    function NI(e) {
      if (Fe(e) || ep(e)) return e.getText();
      if (Ln(e)) return NI(e.name);
      if (Po(e)) return NI(e.argumentExpression);
    }
    function kUe(e, t) {
      for (; e.parent; ) {
        if (pG(e) && t.length !== 0 && e.end >= t.start + t.length) return e;
        e = e.parent;
      }
    }
    function CUe(e) {
      for (; e.parent; ) {
        if (pG(e) && !pG(e.parent)) return e;
        e = e.parent;
      }
    }
    function EUe(e) {
      if (fG(e)) return e;
      if ($c(e)) {
        const t = jx(e), n = t?.initializer;
        return n && fG(n) ? n : void 0;
      }
      return e.expression && fG(e.expression) ? e.expression : void 0;
    }
    function uce(e) {
      if (e = Gs(e), un(e)) return uce(e.left);
      if ((Ln(e) || Po(e) || za(e)) && !Vu(e)) return e;
    }
    function vTe(e, t, n) {
      if (Ln(t) || Po(t) || za(t)) {
        const i = vTe(e, t.expression, n), a = n.length > 0 ? n[n.length - 1] : void 0, o = a?.getText() === t.expression.getText();
        if (o && n.pop(), za(t)) return o ? A.createCallChain(i, A.createToken(29), t.typeArguments, t.arguments) : A.createCallChain(i, t.questionDotToken, t.typeArguments, t.arguments);
        if (Ln(t)) return o ? A.createPropertyAccessChain(i, A.createToken(29), t.name) : A.createPropertyAccessChain(i, t.questionDotToken, t.name);
        if (Po(t)) return o ? A.createElementAccessChain(i, A.createToken(29), t.argumentExpression) : A.createElementAccessChain(i, t.questionDotToken, t.argumentExpression);
      }
      return t;
    }
    function DUe(e, t, n, i, a) {
      const { finalExpression: o, occurrences: c, expression: _ } = i, u = c[c.length - 1], d = vTe(t, o, c);
      d && (Ln(d) || Po(d) || za(d)) && (un(_) ? n.replaceNodeRange(e, u, o, d) : MS(_) && n.replaceNode(e, _, A.createBinaryExpression(d, A.createToken(61), _.whenFalse)));
    }
    var bTe = {};
    gi(bTe, {
      Messages: () => vu,
      RangeFacts: () => xTe,
      getRangeToExtract: () => _ce,
      getRefactorActionsToExtractSymbol: () => STe,
      getRefactorEditsToExtractSymbol: () => TTe
    });
    var eP = "Extract Symbol", tP = {
      name: "Extract Constant",
      description: Oa(p.Extract_constant),
      kind: "refactor.extract.constant"
    }, rP = {
      name: "Extract Function",
      description: Oa(p.Extract_function),
      kind: "refactor.extract.function"
    };
    ch(eP, {
      kinds: [tP.kind, rP.kind],
      getEditsForAction: TTe,
      getAvailableActions: STe
    });
    function STe(e) {
      const t = e.kind, n = _ce(e.file, Lk(e), e.triggerReason === "invoked"), i = n.targetRange;
      if (i === void 0) {
        if (!n.errors || n.errors.length === 0 || !e.preferences.provideRefactorNotApplicableReason) return Te;
        const D = [];
        return Wv(rP.kind, t) && D.push({
          name: eP,
          description: rP.description,
          actions: [{
            ...rP,
            notApplicableReason: k(n.errors)
          }]
        }), Wv(tP.kind, t) && D.push({
          name: eP,
          description: tP.description,
          actions: [{
            ...tP,
            notApplicableReason: k(n.errors)
          }]
        }), D;
      }
      const { affectedTextRange: a, extractions: o } = OUe(i, e);
      if (o === void 0) return Te;
      const c = [], _ = /* @__PURE__ */ new Map();
      let u;
      const d = [], g = /* @__PURE__ */ new Map();
      let h, S = 0;
      for (const { functionExtraction: D, constantExtraction: P } of o) {
        if (Wv(rP.kind, t)) {
          const N = D.description;
          D.errors.length === 0 ? _.has(N) || (_.set(N, !0), c.push({
            description: N,
            name: `function_scope_${S}`,
            kind: rP.kind,
            range: {
              start: {
                line: Za(e.file, a.pos).line,
                offset: Za(e.file, a.pos).character
              },
              end: {
                line: Za(e.file, a.end).line,
                offset: Za(e.file, a.end).character
              }
            }
          })) : u || (u = {
            description: N,
            name: `function_scope_${S}`,
            notApplicableReason: k(D.errors),
            kind: rP.kind
          });
        }
        if (Wv(tP.kind, t)) {
          const N = P.description;
          P.errors.length === 0 ? g.has(N) || (g.set(N, !0), d.push({
            description: N,
            name: `constant_scope_${S}`,
            kind: tP.kind,
            range: {
              start: {
                line: Za(e.file, a.pos).line,
                offset: Za(e.file, a.pos).character
              },
              end: {
                line: Za(e.file, a.end).line,
                offset: Za(e.file, a.end).character
              }
            }
          })) : h || (h = {
            description: N,
            name: `constant_scope_${S}`,
            notApplicableReason: k(P.errors),
            kind: tP.kind
          });
        }
        S++;
      }
      const T = [];
      return c.length ? T.push({
        name: eP,
        description: Oa(p.Extract_function),
        actions: c
      }) : e.preferences.provideRefactorNotApplicableReason && u && T.push({
        name: eP,
        description: Oa(p.Extract_function),
        actions: [u]
      }), d.length ? T.push({
        name: eP,
        description: Oa(p.Extract_constant),
        actions: d
      }) : e.preferences.provideRefactorNotApplicableReason && h && T.push({
        name: eP,
        description: Oa(p.Extract_constant),
        actions: [h]
      }), T.length ? T : Te;
      function k(D) {
        let P = D[0].messageText;
        return typeof P != "string" && (P = P.messageText), P;
      }
    }
    function TTe(e, t) {
      const n = _ce(e.file, Lk(e)).targetRange, i = /^function_scope_(\d+)$/.exec(t);
      if (i) {
        const o = +i[1];
        return E.assert(isFinite(o), "Expected to parse a finite number from the function scope index"), NUe(n, e, o);
      }
      const a = /^constant_scope_(\d+)$/.exec(t);
      if (a) {
        const o = +a[1];
        return E.assert(isFinite(o), "Expected to parse a finite number from the constant scope index"), IUe(n, e, o);
      }
      E.fail("Unrecognized action name");
    }
    var vu;
    ((e) => {
      function t(n) {
        return {
          message: n,
          code: 0,
          category: 3,
          key: n
        };
      }
      e.cannotExtractRange = t("Cannot extract range."), e.cannotExtractImport = t("Cannot extract import statement."), e.cannotExtractSuper = t("Cannot extract super call."), e.cannotExtractJSDoc = t("Cannot extract JSDoc."), e.cannotExtractEmpty = t("Cannot extract empty range."), e.expressionExpected = t("expression expected."), e.uselessConstantType = t("No reason to extract constant of type."), e.statementOrExpressionExpected = t("Statement or expression expected."), e.cannotExtractRangeContainingConditionalBreakOrContinueStatements = t("Cannot extract range containing conditional break or continue statements."), e.cannotExtractRangeContainingConditionalReturnStatement = t("Cannot extract range containing conditional return statement."), e.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange = t("Cannot extract range containing labeled break or continue with target outside of the range."), e.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators = t("Cannot extract range containing writes to references located outside of the target range in generators."), e.typeWillNotBeVisibleInTheNewScope = t("Type will not visible in the new scope."), e.functionWillNotBeVisibleInTheNewScope = t("Function will not visible in the new scope."), e.cannotExtractIdentifier = t("Select more than a single identifier."), e.cannotExtractExportedEntity = t("Cannot extract exported declaration"), e.cannotWriteInExpression = t("Cannot write back side-effects when extracting an expression"), e.cannotExtractReadonlyPropertyInitializerOutsideConstructor = t("Cannot move initialization of read-only class property outside of the constructor"), e.cannotExtractAmbientBlock = t("Cannot extract code from ambient contexts"), e.cannotAccessVariablesFromNestedScopes = t("Cannot access variables from nested scopes"), e.cannotExtractToJSClass = t("Cannot extract constant to a class scope in JS"), e.cannotExtractToExpressionArrowFunction = t("Cannot extract constant to an arrow function without a block"), e.cannotExtractFunctionsContainingThisToMethod = t("Cannot extract functions containing this to method");
    })(vu || (vu = {}));
    var xTe = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.HasReturn = 1] = "HasReturn", e[e.IsGenerator = 2] = "IsGenerator", e[e.IsAsyncFunction = 4] = "IsAsyncFunction", e[e.UsesThis = 8] = "UsesThis", e[e.UsesThisInFunction = 16] = "UsesThisInFunction", e[e.InStaticRegion = 32] = "InStaticRegion", e))(xTe || {});
    function _ce(e, t, n = !0) {
      const { length: i } = t;
      if (i === 0 && !n) return { errors: [wl(e, t.start, i, vu.cannotExtractEmpty)] };
      const a = i === 0 && n, o = cse(e, t.start), c = zw(e, dc(t)), _ = o && c && n ? wUe(o, c, e) : t, u = a ? KUe(o) : hI(o, e, _), d = a ? u : hI(c, e, _);
      let g = 0, h;
      if (!u || !d) return { errors: [wl(e, t.start, i, vu.cannotExtractRange)] };
      if (u.flags & 16777216) return { errors: [wl(e, t.start, i, vu.cannotExtractJSDoc)] };
      if (u.parent !== d.parent) return { errors: [wl(e, t.start, i, vu.cannotExtractRange)] };
      if (u !== d) {
        if (!Mk(u.parent)) return { errors: [wl(e, t.start, i, vu.cannotExtractRange)] };
        const M = [];
        for (const R of u.parent.statements) {
          if (R === u || M.length) {
            const G = N(R);
            if (G) return { errors: G };
            M.push(R);
          }
          if (R === d) break;
        }
        return M.length ? { targetRange: {
          range: M,
          facts: g,
          thisNode: h
        } } : { errors: [wl(e, t.start, i, vu.cannotExtractRange)] };
      }
      if (zf(u) && !u.expression) return { errors: [wl(e, t.start, i, vu.cannotExtractRange)] };
      const S = k(u), T = D(S) || N(S);
      if (T) return { errors: T };
      return { targetRange: {
        range: PUe(S),
        facts: g,
        thisNode: h
      } };
      function k(M) {
        if (zf(M)) {
          if (M.expression) return M.expression;
        } else if ($c(M) || iu(M)) {
          const R = $c(M) ? M.declarationList.declarations : M.declarations;
          let G = 0, L;
          for (const z of R) z.initializer && (G++, L = z.initializer);
          if (G === 1) return L;
        } else if (ci(M) && M.initializer)
          return M.initializer;
        return M;
      }
      function D(M) {
        if (Fe(zl(M) ? M.expression : M)) return [Kr(M, vu.cannotExtractIdentifier)];
      }
      function P(M, R) {
        let G = M;
        for (; G !== R; ) {
          if (G.kind === 173) {
            es(G) && (g |= 32);
            break;
          } else if (G.kind === 170) {
            Kf(G).kind === 177 && (g |= 32);
            break;
          } else G.kind === 175 && es(G) && (g |= 32);
          G = G.parent;
        }
      }
      function N(M) {
        let R;
        if (((pe) => {
          pe[pe.None = 0] = "None", pe[pe.Break = 1] = "Break", pe[pe.Continue = 2] = "Continue", pe[pe.Return = 4] = "Return";
        })(R || (R = {})), E.assert(M.pos <= M.end, "This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"), E.assert(!Wd(M.pos), "This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"), !Ei(M) && !(fg(M) && kTe(M)) && !gce(M)) return [Kr(M, vu.statementOrExpressionExpected)];
        if (M.flags & 33554432) return [Kr(M, vu.cannotExtractAmbientBlock)];
        const G = nu(M);
        G && P(M, G);
        let L, z = 4, H;
        if (U(M), g & 8) {
          const pe = c_(M, !1, !1);
          (pe.kind === 263 || pe.kind === 175 && pe.parent.kind === 211 || pe.kind === 219) && (g |= 16);
        }
        return L;
        function U(pe) {
          if (L) return !0;
          if (Jl(pe) && Qn(pe.kind === 261 ? pe.parent.parent : pe, 32))
            return (L || (L = [])).push(Kr(pe, vu.cannotExtractExportedEntity)), !0;
          switch (pe.kind) {
            case 273:
              return (L || (L = [])).push(Kr(pe, vu.cannotExtractImport)), !0;
            case 278:
              return (L || (L = [])).push(Kr(pe, vu.cannotExtractExportedEntity)), !0;
            case 108:
              if (pe.parent.kind === 214) {
                const W = nu(pe);
                if (W === void 0 || W.pos < t.start || W.end >= t.start + t.length)
                  return (L || (L = [])).push(Kr(pe, vu.cannotExtractSuper)), !0;
              } else
                g |= 8, h = pe;
              break;
            case 220:
              Fa(pe, function W(Q) {
                if (oE(Q))
                  g |= 8, h = pe;
                else {
                  if (Zn(Q) || Ra(Q) && !Bo(Q)) return !1;
                  Fa(Q, W);
                }
              });
            case 264:
            case 263:
              Pi(pe.parent) && pe.parent.externalModuleIndicator === void 0 && (L || (L = [])).push(Kr(pe, vu.functionWillNotBeVisibleInTheNewScope));
            case 232:
            case 219:
            case 175:
            case 177:
            case 178:
            case 179:
              return !1;
          }
          const ie = z;
          switch (pe.kind) {
            case 246:
              z &= -5;
              break;
            case 259:
              z = 0;
              break;
            case 242:
              pe.parent && pe.parent.kind === 259 && pe.parent.finallyBlock === pe && (z = 4);
              break;
            case 298:
            case 297:
              z |= 1;
              break;
            default:
              Uy(pe, !1) && (z |= 3);
              break;
          }
          switch (pe.kind) {
            case 198:
            case 110:
              g |= 8, h = pe;
              break;
            case 257: {
              const W = pe.label;
              (H || (H = [])).push(W.escapedText), Fa(pe, U), H.pop();
              break;
            }
            case 253:
            case 252: {
              const W = pe.label;
              W ? Gi(H, W.escapedText) || (L || (L = [])).push(Kr(pe, vu.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)) : z & (pe.kind === 253 ? 1 : 2) || (L || (L = [])).push(Kr(pe, vu.cannotExtractRangeContainingConditionalBreakOrContinueStatements));
              break;
            }
            case 224:
              g |= 4;
              break;
            case 230:
              g |= 2;
              break;
            case 254:
              z & 4 ? g |= 1 : (L || (L = [])).push(Kr(pe, vu.cannotExtractRangeContainingConditionalReturnStatement));
              break;
            default:
              Fa(pe, U);
              break;
          }
          z = ie;
        }
      }
    }
    function wUe(e, t, n) {
      const i = e.getStart(n);
      let a = t.getEnd();
      return n.text.charCodeAt(a) === 59 && a++, {
        start: i,
        length: a - i
      };
    }
    function PUe(e) {
      if (Ei(e)) return [e];
      if (fg(e)) return zl(e.parent) ? [e.parent] : e;
      if (gce(e)) return e;
    }
    function fce(e) {
      return Bo(e) ? uB(e.body) : So(e) || Pi(e) || Vd(e) || Zn(e);
    }
    function AUe(e) {
      let t = G0(e.range) ? js(e.range) : e.range;
      if (e.facts & 8 && !(e.facts & 16)) {
        const i = nu(t);
        if (i) {
          const a = cr(t, So);
          return a ? [a, i] : [i];
        }
      }
      const n = [];
      for (; ; )
        if (t = t.parent, t.kind === 170 && (t = cr(t, (i) => So(i)).parent), fce(t) && (n.push(t), t.kind === 308))
          return n;
    }
    function NUe(e, t, n) {
      const { scopes: i, readsAndWrites: { target: a, usagesPerScope: o, functionErrorsPerScope: c, exposedVariableDeclarations: _ } } = pce(e, t);
      return E.assert(!c[n].length, "The extraction went missing? How?"), t.cancellationToken.throwIfCancellationRequested(), BUe(a, i[n], o[n], _, e, t);
    }
    function IUe(e, t, n) {
      const { scopes: i, readsAndWrites: { target: a, usagesPerScope: o, constantErrorsPerScope: c, exposedVariableDeclarations: _ } } = pce(e, t);
      return E.assert(!c[n].length, "The extraction went missing? How?"), E.assert(_.length === 0, "Extract constant accepted a range containing a variable declaration?"), t.cancellationToken.throwIfCancellationRequested(), JUe(dt(a) ? a : a.statements[0].expression, i[n], o[n], e.facts, t);
    }
    function OUe(e, t) {
      const { scopes: n, affectedTextRange: i, readsAndWrites: { functionErrorsPerScope: a, constantErrorsPerScope: o } } = pce(e, t);
      return {
        affectedTextRange: i,
        extractions: n.map((c, _) => {
          const u = FUe(c), d = LUe(c), g = So(c) ? MUe(c) : Zn(c) ? RUe(c) : jUe(c);
          let h, S;
          return g === 1 ? (h = Yg(Oa(p.Extract_to_0_in_1_scope), [u, "global"]), S = Yg(Oa(p.Extract_to_0_in_1_scope), [d, "global"])) : g === 0 ? (h = Yg(Oa(p.Extract_to_0_in_1_scope), [u, "module"]), S = Yg(Oa(p.Extract_to_0_in_1_scope), [d, "module"])) : (h = Yg(Oa(p.Extract_to_0_in_1), [u, g]), S = Yg(Oa(p.Extract_to_0_in_1), [d, g])), _ === 0 && !Zn(c) && (S = Yg(Oa(p.Extract_to_0_in_enclosing_scope), [d])), {
            functionExtraction: {
              description: h,
              errors: a[_]
            },
            constantExtraction: {
              description: S,
              errors: o[_]
            }
          };
        })
      };
    }
    function pce(e, t) {
      const { file: n } = t, i = AUe(e), a = YUe(e, n);
      return {
        scopes: i,
        affectedTextRange: a,
        readsAndWrites: ZUe(e, i, a, n, t.program.getTypeChecker(), t.cancellationToken)
      };
    }
    function FUe(e) {
      return So(e) ? "inner function" : Zn(e) ? "method" : "function";
    }
    function LUe(e) {
      return Zn(e) ? "readonly field" : "constant";
    }
    function MUe(e) {
      switch (e.kind) {
        case 177:
          return "constructor";
        case 219:
        case 263:
          return e.name ? `function '${e.name.text}'` : Tq;
        case 220:
          return "arrow function";
        case 175:
          return `method '${e.name.getText()}'`;
        case 178:
          return `'get ${e.name.getText()}'`;
        case 179:
          return `'set ${e.name.getText()}'`;
        default:
          E.assertNever(e, `Unexpected scope kind ${e.kind}`);
      }
    }
    function RUe(e) {
      return e.kind === 264 ? e.name ? `class '${e.name.text}'` : "anonymous class declaration" : e.name ? `class expression '${e.name.text}'` : "anonymous class expression";
    }
    function jUe(e) {
      return e.kind === 269 ? `namespace '${e.parent.name.getText()}'` : e.externalModuleIndicator ? 0 : 1;
    }
    function BUe(e, t, { usages: n, typeParameterUsages: i, substitutions: a }, o, c, _) {
      const u = _.program.getTypeChecker(), d = Ps(_.program.getCompilerOptions()), g = Zu.createImportAdder(_.file, _.program, _.preferences, _.host), h = t.getSourceFile(), S = eT(Zn(t) ? "newMethod" : "newFunction", h), T = rn(t), k = A.createIdentifier(S);
      let D;
      const P = [], N = [];
      let M;
      n.forEach((Be, ce) => {
        let oe;
        if (!T) {
          let Ae = u.getTypeOfSymbolAtLocation(Be.symbol, Be.node);
          Ae = u.getBaseTypeOfLiteralType(Ae), oe = Zu.typeToAutoImportableTypeNode(u, g, Ae, t, d, 1, 8);
        }
        const ge = A.createParameterDeclaration(void 0, void 0, ce, void 0, oe);
        P.push(ge), Be.usage === 2 && (M || (M = [])).push(Be), N.push(A.createIdentifier(ce));
      });
      const R = ma(i.values(), (Be) => ({
        type: Be,
        declaration: WUe(Be, _.startPosition)
      }));
      R.sort(UUe);
      const G = R.length === 0 ? void 0 : Rn(R, ({ declaration: Be }) => Be), L = G !== void 0 ? G.map((Be) => A.createTypeReferenceNode(Be.name, void 0)) : void 0;
      if (dt(e) && !T) {
        const Be = u.getContextualType(e);
        D = u.typeToTypeNode(Be, t, 1, 8);
      }
      const { body: z, returnValueProperty: H } = qUe(e, o, M, a, !!(c.facts & 1));
      Tf(z);
      let U;
      const pe = !!(c.facts & 16);
      if (Zn(t)) {
        const Be = T ? [] : [A.createModifier(123)];
        c.facts & 32 && Be.push(A.createModifier(126)), c.facts & 4 && Be.push(A.createModifier(134)), U = A.createMethodDeclaration(Be.length ? Be : void 0, c.facts & 2 ? A.createToken(42) : void 0, k, void 0, G, P, D, z);
      } else
        pe && P.unshift(A.createParameterDeclaration(void 0, void 0, "this", void 0, u.typeToTypeNode(u.getTypeAtLocation(c.thisNode), t, 1, 8), void 0)), U = A.createFunctionDeclaration(c.facts & 4 ? [A.createToken(134)] : void 0, c.facts & 2 ? A.createToken(42) : void 0, k, G, P, D, z);
      const ie = on.ChangeTracker.fromContext(_), W = (G0(c.range) ? ws(c.range) : c.range).end, Q = $Ue(W, t);
      Q ? ie.insertNodeBefore(_.file, Q, U, !0) : ie.insertNodeAtEndOfScope(_.file, t, U), g.writeFixes(ie);
      const se = [], he = VUe(t, c, S);
      pe && N.unshift(A.createIdentifier("this"));
      let fe = A.createCallExpression(pe ? A.createPropertyAccessExpression(he, "call") : he, L, N);
      if (c.facts & 2 && (fe = A.createYieldExpression(A.createToken(42), fe)), c.facts & 4 && (fe = A.createAwaitExpression(fe)), mce(e) && (fe = A.createJsxExpression(void 0, fe)), o.length && !M)
        if (E.assert(!H, "Expected no returnValueProperty"), E.assert(!(c.facts & 1), "Expected RangeFacts.HasReturn flag to be unset"), o.length === 1) {
          const Be = o[0];
          se.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(no(Be.name), void 0, no(Be.type), fe)], Be.parent.flags)));
        } else {
          const Be = [], ce = [];
          let oe = o[0].parent.flags, ge = !1;
          for (const Ne of o) {
            Be.push(A.createBindingElement(void 0, void 0, no(Ne.name)));
            const ot = u.typeToTypeNode(u.getBaseTypeOfLiteralType(u.getTypeAtLocation(Ne)), t, 1, 8);
            ce.push(A.createPropertySignature(void 0, Ne.symbol.name, void 0, ot)), ge = ge || Ne.type !== void 0, oe = oe & Ne.parent.flags;
          }
          const Ae = ge ? A.createTypeLiteralNode(ce) : void 0;
          Ae && ln(Ae, 1), se.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(A.createObjectBindingPattern(Be), void 0, Ae, fe)], oe)));
        }
      else if (o.length || M) {
        if (o.length) for (const ce of o) {
          let oe = ce.parent.flags;
          oe & 2 && (oe = oe & -3 | 1), se.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(ce.symbol.name, void 0, Se(ce.type))], oe)));
        }
        H && se.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(H, void 0, Se(D))], 1)));
        const Be = dce(o, M);
        H && Be.unshift(A.createShorthandPropertyAssignment(H)), Be.length === 1 ? (E.assert(!H, "Shouldn't have returnValueProperty here"), se.push(A.createExpressionStatement(A.createAssignment(Be[0].name, fe))), c.facts & 1 && se.push(A.createReturnStatement())) : (se.push(A.createExpressionStatement(A.createAssignment(A.createObjectLiteralExpression(Be), fe))), H && se.push(A.createReturnStatement(A.createIdentifier(H))));
      } else c.facts & 1 ? se.push(A.createReturnStatement(fe)) : G0(c.range) ? se.push(A.createExpressionStatement(fe)) : se.push(fe);
      G0(c.range) ? ie.replaceNodeRangeWithNodes(_.file, js(c.range), ws(c.range), se) : ie.replaceNodeWithNodes(_.file, c.range, se);
      const de = ie.getChanges(), $ = (G0(c.range) ? js(c.range) : c.range).getSourceFile().fileName;
      return {
        renameFilename: $,
        renameLocation: vI(de, $, S, !1),
        edits: de
      };
      function Se(Be) {
        if (Be === void 0) return;
        const ce = no(Be);
        let oe = ce;
        for (; FS(oe); ) oe = oe.type;
        return j0(oe) && xr(oe.types, (ge) => ge.kind === 157) ? ce : A.createUnionTypeNode([ce, A.createKeywordTypeNode(157)]);
      }
    }
    function JUe(e, t, { substitutions: n }, i, a) {
      const o = a.program.getTypeChecker(), c = qoe(e, t, o, t.getSourceFile()), _ = rn(t);
      let u = _ || !o.isContextSensitive(e) ? void 0 : o.typeToTypeNode(o.getContextualType(e), t, 1, 8), d = GUe(Gs(e), n);
      ({ variableType: u, initializer: d } = T(u, d)), Tf(d);
      const g = on.ChangeTracker.fromContext(a);
      if (Zn(t)) {
        E.assert(!_, "Cannot extract to a JS class");
        const k = [];
        k.push(A.createModifier(123)), i & 32 && k.push(A.createModifier(126)), k.push(A.createModifier(148));
        const D = A.createPropertyDeclaration(k, c, void 0, u, d);
        let P = A.createPropertyAccessExpression(i & 32 ? A.createIdentifier(t.name.getText()) : A.createThis(), A.createIdentifier(c));
        mce(e) && (P = A.createJsxExpression(void 0, P));
        const N = e.pos, M = XUe(N, t);
        g.insertNodeBefore(a.file, M, D, !0), g.replaceNode(a.file, e, P);
      } else {
        const k = A.createVariableDeclaration(c, void 0, u, d), D = zUe(e, t);
        if (D) {
          g.insertNodeBefore(a.file, D, k);
          const P = A.createIdentifier(c);
          g.replaceNode(a.file, e, P);
        } else if (e.parent.kind === 245 && t === cr(e, fce)) {
          const P = A.createVariableStatement(void 0, A.createVariableDeclarationList([k], 2));
          g.replaceNode(a.file, e.parent, P);
        } else {
          const P = A.createVariableStatement(void 0, A.createVariableDeclarationList([k], 2)), N = QUe(e, t);
          if (N.pos === 0 ? g.insertNodeAtTopOfFile(a.file, P, !1) : g.insertNodeBefore(a.file, N, P, !1), e.parent.kind === 245) g.delete(a.file, e.parent);
          else {
            let M = A.createIdentifier(c);
            mce(e) && (M = A.createJsxExpression(void 0, M)), g.replaceNode(a.file, e, M);
          }
        }
      }
      const h = g.getChanges(), S = e.getSourceFile().fileName;
      return {
        renameFilename: S,
        renameLocation: vI(h, S, c, !0),
        edits: h
      };
      function T(k, D) {
        if (k === void 0) return {
          variableType: k,
          initializer: D
        };
        if (!Lo(D) && !Bo(D) || D.typeParameters) return {
          variableType: k,
          initializer: D
        };
        const P = o.getTypeAtLocation(e), N = Fg(o.getSignaturesOfType(P, 0));
        if (!N) return {
          variableType: k,
          initializer: D
        };
        if (N.getTypeParameters()) return {
          variableType: k,
          initializer: D
        };
        const M = [];
        let R = !1;
        for (const G of D.parameters) if (G.type) M.push(G);
        else {
          const L = o.getTypeAtLocation(G);
          L === o.getAnyType() && (R = !0), M.push(A.updateParameterDeclaration(G, G.modifiers, G.dotDotDotToken, G.name, G.questionToken, G.type || o.typeToTypeNode(L, t, 1, 8), G.initializer));
        }
        if (R) return {
          variableType: k,
          initializer: D
        };
        if (k = void 0, Bo(D)) D = A.updateArrowFunction(D, vd(e) ? kb(e) : void 0, D.typeParameters, M, D.type || o.typeToTypeNode(N.getReturnType(), t, 1, 8), D.equalsGreaterThanToken, D.body);
        else {
          if (N && N.thisParameter) {
            const G = ul(M);
            if (!G || Fe(G.name) && G.name.escapedText !== "this") {
              const L = o.getTypeOfSymbolAtLocation(N.thisParameter, e);
              M.splice(0, 0, A.createParameterDeclaration(void 0, void 0, "this", void 0, o.typeToTypeNode(L, t, 1, 8)));
            }
          }
          D = A.updateFunctionExpression(D, vd(e) ? kb(e) : void 0, D.asteriskToken, D.name, D.typeParameters, M, D.type || o.typeToTypeNode(N.getReturnType(), t, 1), D.body);
        }
        return {
          variableType: k,
          initializer: D
        };
      }
    }
    function zUe(e, t) {
      let n;
      for (; e !== void 0 && e !== t; ) {
        if (ci(e) && e.initializer === n && iu(e.parent) && e.parent.declarations.length > 1) return e;
        n = e, e = e.parent;
      }
    }
    function WUe(e, t) {
      let n;
      const i = e.symbol;
      if (i && i.declarations)
        for (const a of i.declarations) (n === void 0 || a.pos < n.pos) && a.pos < t && (n = a);
      return n;
    }
    function UUe({ type: e, declaration: t }, { type: n, declaration: i }) {
      return SQ(t, i, "pos", Fo) || Du(e.symbol ? e.symbol.getName() : "", n.symbol ? n.symbol.getName() : "") || Fo(e.id, n.id);
    }
    function VUe(e, t, n) {
      const i = A.createIdentifier(n);
      if (Zn(e)) {
        const a = t.facts & 32 ? A.createIdentifier(e.name.text) : A.createThis();
        return A.createPropertyAccessExpression(a, i);
      } else return i;
    }
    function qUe(e, t, n, i, a) {
      const o = n !== void 0 || t.length > 0;
      if (Wa(e) && !o && i.size === 0) return {
        body: A.createBlock(e.statements, !0),
        returnValueProperty: void 0
      };
      let c, _ = !1;
      const u = A.createNodeArray(Wa(e) ? e.statements.slice(0) : [Ei(e) ? e : A.createReturnStatement(Gs(e))]);
      if (o || i.size) {
        const g = Fr(u, d, Ei).slice();
        if (o && !a && Ei(e)) {
          const h = dce(t, n);
          h.length === 1 ? g.push(A.createReturnStatement(h[0].name)) : g.push(A.createReturnStatement(A.createObjectLiteralExpression(h)));
        }
        return {
          body: A.createBlock(g, !0),
          returnValueProperty: c
        };
      } else return {
        body: A.createBlock(u, !0),
        returnValueProperty: void 0
      };
      function d(g) {
        if (!_ && zf(g) && o) {
          const h = dce(t, n);
          return g.expression && (c || (c = "__return"), h.unshift(A.createPropertyAssignment(c, Ze(g.expression, d, dt)))), h.length === 1 ? A.createReturnStatement(h[0].name) : A.createReturnStatement(A.createObjectLiteralExpression(h));
        } else {
          const h = _;
          _ = _ || So(g) || Zn(g);
          const S = i.get(Hs(g).toString()), T = S ? no(S) : Tr(g, d, void 0);
          return _ = h, T;
        }
      }
    }
    function GUe(e, t) {
      return t.size ? n(e) : e;
      function n(i) {
        const a = t.get(Hs(i).toString());
        return a ? no(a) : Tr(i, n, void 0);
      }
    }
    function HUe(e) {
      if (So(e)) {
        const t = e.body;
        if (Wa(t)) return t.statements;
      } else {
        if (Vd(e) || Pi(e)) return e.statements;
        if (Zn(e)) return e.members;
      }
      return Te;
    }
    function $Ue(e, t) {
      return xr(HUe(t), (n) => n.pos >= e && So(n) && !yc(n));
    }
    function XUe(e, t) {
      const n = t.members;
      E.assert(n.length > 0, "Found no members");
      let i, a = !0;
      for (const o of n) {
        if (o.pos > e) return i || n[0];
        if (a && !ga(o)) {
          if (i !== void 0) return o;
          a = !1;
        }
        i = o;
      }
      return i === void 0 ? E.fail() : i;
    }
    function QUe(e, t) {
      E.assert(!Zn(t));
      let n;
      for (let i = e; i !== t; i = i.parent) fce(i) && (n = i);
      for (let i = (n || e).parent; ; i = i.parent) {
        if (Mk(i)) {
          let a;
          for (const o of i.statements) {
            if (o.pos > e.pos) break;
            a = o;
          }
          return !a && F6(i) ? (E.assert(iw(i.parent.parent), "Grandparent isn't a switch statement"), i.parent.parent) : E.checkDefined(a, "prevStatement failed to get set");
        }
        E.assert(i !== t, "Didn't encounter a block-like before encountering scope");
      }
    }
    function dce(e, t) {
      const n = or(e, (a) => A.createShorthandPropertyAssignment(a.symbol.name)), i = or(t, (a) => A.createShorthandPropertyAssignment(a.symbol.name));
      return n === void 0 ? i : i === void 0 ? n : n.concat(i);
    }
    function G0(e) {
      return da(e);
    }
    function YUe(e, t) {
      return G0(e.range) ? {
        pos: js(e.range).getStart(t),
        end: ws(e.range).getEnd()
      } : e.range;
    }
    function ZUe(e, t, n, i, a, o) {
      const c = /* @__PURE__ */ new Map(), _ = [], u = [], d = [], g = [], h = [], S = /* @__PURE__ */ new Map(), T = [];
      let k;
      const D = G0(e.range) ? e.range.length === 1 && zl(e.range[0]) ? e.range[0].expression : void 0 : e.range;
      let P;
      if (D === void 0) {
        const se = e.range, he = js(se).getStart(), fe = ws(se).end;
        P = wl(i, he, fe - he, vu.expressionExpected);
      } else a.getTypeAtLocation(D).flags & 262160 && (P = Kr(D, vu.uselessConstantType));
      for (const se of t) {
        _.push({
          usages: /* @__PURE__ */ new Map(),
          typeParameterUsages: /* @__PURE__ */ new Map(),
          substitutions: /* @__PURE__ */ new Map()
        }), u.push(/* @__PURE__ */ new Map()), d.push([]);
        const he = [];
        P && he.push(P), Zn(se) && rn(se) && he.push(Kr(se, vu.cannotExtractToJSClass)), Bo(se) && !Wa(se.body) && he.push(Kr(se, vu.cannotExtractToExpressionArrowFunction)), g.push(he);
      }
      const N = /* @__PURE__ */ new Map(), M = G0(e.range) ? A.createBlock(e.range) : e.range, R = G0(e.range) ? js(e.range) : e.range, G = L(R);
      if (H(M), G && !G0(e.range) && !Om(e.range) && z(a.getContextualType(e.range)), c.size > 0) {
        const se = /* @__PURE__ */ new Map();
        let he = 0;
        for (let fe = R; fe !== void 0 && he < t.length; fe = fe.parent)
          if (fe === t[he] && (se.forEach((de, $) => {
            _[he].typeParameterUsages.set($, de);
          }), he++), IB(fe)) for (const de of Ry(fe)) {
            const $ = a.getTypeAtLocation(de);
            c.has($.id.toString()) && se.set($.id.toString(), $);
          }
        E.assert(he === t.length, "Should have iterated all scopes");
      }
      h.length && Fa(NB(t[0], t[0].parent) ? t[0] : Bd(t[0]), ie);
      for (let se = 0; se < t.length; se++) {
        const he = _[se];
        if (se > 0 && (he.usages.size > 0 || he.typeParameterUsages.size > 0)) {
          const $ = G0(e.range) ? e.range[0] : e.range;
          g[se].push(Kr($, vu.cannotAccessVariablesFromNestedScopes));
        }
        e.facts & 16 && Zn(t[se]) && d[se].push(Kr(e.thisNode, vu.cannotExtractFunctionsContainingThisToMethod));
        let fe = !1, de;
        if (_[se].usages.forEach(($) => {
          $.usage === 2 && (fe = !0, $.symbol.flags & 106500 && $.symbol.valueDeclaration && vf($.symbol.valueDeclaration, 8) && (de = $.symbol.valueDeclaration));
        }), E.assert(G0(e.range) || T.length === 0, "No variable declarations expected if something was extracted"), fe && !G0(e.range)) {
          const $ = Kr(e.range, vu.cannotWriteInExpression);
          d[se].push($), g[se].push($);
        } else if (de && se > 0) {
          const $ = Kr(de, vu.cannotExtractReadonlyPropertyInitializerOutsideConstructor);
          d[se].push($), g[se].push($);
        } else if (k) {
          const $ = Kr(k, vu.cannotExtractExportedEntity);
          d[se].push($), g[se].push($);
        }
      }
      return {
        target: M,
        usagesPerScope: _,
        functionErrorsPerScope: d,
        constantErrorsPerScope: g,
        exposedVariableDeclarations: T
      };
      function L(se) {
        return !!cr(se, (he) => IB(he) && Ry(he).length !== 0);
      }
      function z(se) {
        const { visitedTypes: he } = a.getSymbolWalker(() => (o.throwIfCancellationRequested(), !0)).walkType(se);
        for (const fe of he) fe.isTypeParameter() && c.set(fe.id.toString(), fe);
      }
      function H(se, he = 1) {
        if (G && z(a.getTypeAtLocation(se)), Jl(se) && se.symbol && h.push(se), Hl(se))
          H(se.left, 2), H(se.right);
        else if (MZ(se)) H(se.operand, 2);
        else if (Ln(se) || Po(se)) Fa(se, H);
        else if (Fe(se)) {
          if (!se.parent || k_(se.parent) && se !== se.parent.left || Ln(se.parent) && se !== se.parent.expression) return;
          U(se, he, Sm(se));
        } else Fa(se, H);
      }
      function U(se, he, fe) {
        const de = pe(se, he, fe);
        if (de) for (let $ = 0; $ < t.length; $++) {
          const Se = u[$].get(de);
          Se && _[$].substitutions.set(Hs(se).toString(), Se);
        }
      }
      function pe(se, he, fe) {
        const de = W(se);
        if (!de) return;
        const $ = ss(de).toString(), Se = N.get($);
        if (Se && Se >= he) return $;
        if (N.set($, he), Se) {
          for (const oe of _) oe.usages.get(se.text) && oe.usages.set(se.text, {
            usage: he,
            symbol: de,
            node: se
          });
          return $;
        }
        const Be = de.getDeclarations(), ce = Be && xr(Be, (oe) => oe.getSourceFile() === i);
        if (ce && !uI(n, ce.getStart(), ce.end)) {
          if (e.facts & 2 && he === 2) {
            const oe = Kr(se, vu.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);
            for (const ge of d) ge.push(oe);
            for (const ge of g) ge.push(oe);
          }
          for (let oe = 0; oe < t.length; oe++) {
            const ge = t[oe];
            if (a.resolveName(de.name, ge, de.flags, !1) !== de && !u[oe].has($)) {
              const Ae = Q(de.exportSymbol || de, ge, fe);
              if (Ae) u[oe].set($, Ae);
              else if (fe) {
                if (!(de.flags & 262144)) {
                  const Ne = Kr(se, vu.typeWillNotBeVisibleInTheNewScope);
                  d[oe].push(Ne), g[oe].push(Ne);
                }
              } else _[oe].usages.set(se.text, {
                usage: he,
                symbol: de,
                node: se
              });
            }
          }
          return $;
        }
      }
      function ie(se) {
        if (se === e.range || G0(e.range) && e.range.includes(se)) return;
        const he = Fe(se) ? W(se) : a.getSymbolAtLocation(se);
        if (he) {
          const fe = xr(h, (de) => de.symbol === he);
          if (fe) if (ci(fe)) {
            const de = fe.symbol.id.toString();
            S.has(de) || (T.push(fe), S.set(de, !0));
          } else k = k || fe;
        }
        Fa(se, ie);
      }
      function W(se) {
        return se.parent && Nu(se.parent) && se.parent.name === se ? a.getShorthandAssignmentValueSymbol(se.parent) : a.getSymbolAtLocation(se);
      }
      function Q(se, he, fe) {
        if (!se) return;
        const de = se.getDeclarations();
        if (de && de.some((Se) => Se.parent === he)) return A.createIdentifier(se.name);
        const $ = Q(se.parent, he, fe);
        if ($ !== void 0)
          return fe ? A.createQualifiedName($, A.createIdentifier(se.name)) : A.createPropertyAccessExpression($, se.name);
      }
    }
    function KUe(e) {
      return cr(e, (t) => t.parent && kTe(t) && !un(t.parent));
    }
    function kTe(e) {
      const { parent: t } = e;
      if (t.kind === 307)
        return !1;
      switch (e.kind) {
        case 11:
          return t.kind !== 273 && t.kind !== 277;
        case 231:
        case 207:
        case 209:
          return !1;
        case 80:
          return t.kind !== 209 && t.kind !== 277 && t.kind !== 282;
      }
      return !0;
    }
    function mce(e) {
      return gce(e) || (Im(e) || JS(e) || Dv(e)) && (Im(e.parent) || Dv(e.parent));
    }
    function gce(e) {
      return Ts(e) && e.parent && Om(e.parent);
    }
    var eVe = {}, dG = "Generate 'get' and 'set' accessors", hce = Oa(p.Generate_get_and_set_accessors), yce = {
      name: dG,
      description: hce,
      kind: "refactor.rewrite.property.generateAccessors"
    };
    ch(dG, {
      kinds: [yce.kind],
      getEditsForAction: function(t, n) {
        if (!t.endPosition) return;
        const i = Zu.getAccessorConvertiblePropertyAtPosition(t.file, t.program, t.startPosition, t.endPosition);
        E.assert(i && !Qh(i), "Expected applicable refactor info");
        const a = Zu.generateAccessorFromProperty(t.file, t.program, t.startPosition, t.endPosition, t, n);
        if (!a) return;
        const o = t.file.fileName, c = i.renameAccessor ? i.accessorName : i.fieldName;
        return {
          renameFilename: o,
          renameLocation: (Fe(c) ? 0 : -1) + vI(a, o, c.text, Fi(i.declaration)),
          edits: a
        };
      },
      getAvailableActions(e) {
        if (!e.endPosition) return Te;
        const t = Zu.getAccessorConvertiblePropertyAtPosition(e.file, e.program, e.startPosition, e.endPosition, e.triggerReason === "invoked");
        return t ? Qh(t) ? e.preferences.provideRefactorNotApplicableReason ? [{
          name: dG,
          description: hce,
          actions: [{
            ...yce,
            notApplicableReason: t.error
          }]
        }] : Te : [{
          name: dG,
          description: hce,
          actions: [yce]
        }] : Te;
      }
    });
    var tVe = {}, mG = "Infer function return type", vce = Oa(p.Infer_function_return_type), gG = {
      name: mG,
      description: vce,
      kind: "refactor.rewrite.function.returnType"
    };
    ch(mG, {
      kinds: [gG.kind],
      getEditsForAction: rVe,
      getAvailableActions: nVe
    });
    function rVe(e) {
      const t = CTe(e);
      if (t && !Qh(t)) return {
        renameFilename: void 0,
        renameLocation: void 0,
        edits: on.ChangeTracker.with(e, (n) => iVe(e.file, n, t.declaration, t.returnTypeNode))
      };
    }
    function nVe(e) {
      const t = CTe(e);
      return t ? Qh(t) ? e.preferences.provideRefactorNotApplicableReason ? [{
        name: mG,
        description: vce,
        actions: [{
          ...gG,
          notApplicableReason: t.error
        }]
      }] : Te : [{
        name: mG,
        description: vce,
        actions: [gG]
      }] : Te;
    }
    function iVe(e, t, n, i) {
      const a = uo(n, 22, e), o = Bo(n) && a === void 0, c = o ? js(n.parameters) : a;
      c && (o && (t.insertNodeBefore(e, c, A.createToken(21)), t.insertNodeAfter(e, c, A.createToken(22))), t.insertNodeAt(e, c.end, i, { prefix: ": " }));
    }
    function CTe(e) {
      if (rn(e.file) || !Wv(gG.kind, e.kind)) return;
      const t = cr(G_(e.file, e.startPosition), (o) => Wa(o) || o.parent && Bo(o.parent) && (o.kind === 39 || o.parent.body === o) ? "quit" : aVe(o));
      if (!t || !t.body || t.type) return { error: Oa(p.Return_type_must_be_inferred_from_a_function) };
      const n = e.program.getTypeChecker();
      let i;
      if (n.isImplementationOfOverload(t)) {
        const o = n.getTypeAtLocation(t).getCallSignatures();
        o.length > 1 && (i = n.getUnionType(Rn(o, (c) => c.getReturnType())));
      }
      if (!i) {
        const o = n.getSignatureFromDeclaration(t);
        if (o) {
          const c = n.getTypePredicateOfSignature(o);
          if (c && c.type) {
            const _ = n.typePredicateToTypePredicateNode(c, t, 1, 8);
            if (_) return {
              declaration: t,
              returnTypeNode: _
            };
          } else i = n.getReturnTypeOfSignature(o);
        }
      }
      if (!i) return { error: Oa(p.Could_not_determine_function_return_type) };
      const a = n.typeToTypeNode(i, t, 1, 8);
      if (a) return {
        declaration: t,
        returnTypeNode: a
      };
    }
    function aVe(e) {
      switch (e.kind) {
        case 263:
        case 219:
        case 220:
        case 175:
          return !0;
        default:
          return !1;
      }
    }
    var ETe = /* @__PURE__ */ ((e) => (e[e.typeOffset = 8] = "typeOffset", e[e.modifierMask = 255] = "modifierMask", e))(ETe || {}), DTe = /* @__PURE__ */ ((e) => (e[e.class = 0] = "class", e[e.enum = 1] = "enum", e[e.interface = 2] = "interface", e[e.namespace = 3] = "namespace", e[e.typeParameter = 4] = "typeParameter", e[e.type = 5] = "type", e[e.parameter = 6] = "parameter", e[e.variable = 7] = "variable", e[e.enumMember = 8] = "enumMember", e[e.property = 9] = "property", e[e.function = 10] = "function", e[e.member = 11] = "member", e))(DTe || {}), wTe = /* @__PURE__ */ ((e) => (e[e.declaration = 0] = "declaration", e[e.static = 1] = "static", e[e.async = 2] = "async", e[e.readonly = 3] = "readonly", e[e.defaultLibrary = 4] = "defaultLibrary", e[e.local = 5] = "local", e))(wTe || {});
    function PTe(e, t, n, i) {
      const a = bce(e, t, n, i);
      E.assert(a.spans.length % 3 === 0);
      const o = a.spans, c = [];
      for (let _ = 0; _ < o.length; _ += 3) c.push({
        textSpan: du(o[_], o[_ + 1]),
        classificationType: o[_ + 2]
      });
      return c;
    }
    function bce(e, t, n, i) {
      return {
        spans: sVe(e, n, i, t),
        endOfLineState: 0
      };
    }
    function sVe(e, t, n, i) {
      const a = [];
      return e && t && oVe(e, t, n, (c, _, u) => {
        a.push(c.getStart(t), c.getWidth(t), (_ + 1 << 8) + u);
      }, i), a;
    }
    function oVe(e, t, n, i, a) {
      const o = e.getTypeChecker();
      let c = !1;
      function _(u) {
        switch (u.kind) {
          case 268:
          case 264:
          case 265:
          case 263:
          case 232:
          case 219:
          case 220:
            a.throwIfCancellationRequested();
        }
        if (!u || !x3(n, u.pos, u.getFullWidth()) || u.getFullWidth() === 0) return;
        const d = c;
        if ((Im(u) || JS(u)) && (c = !0), O6(u) && (c = !1), Fe(u) && !c && !_Ve(u) && !UD(u.escapedText)) {
          let g = o.getSymbolAtLocation(u);
          if (g) {
            g.flags & 2097152 && (g = o.getAliasedSymbol(g));
            let h = cVe(g, YS(u));
            if (h !== void 0) {
              let S = 0;
              u.parent && (Ns(u.parent) || ITe.get(u.parent.kind) === h) && u.parent.name === u && (S = 1), h === 6 && NTe(u) && (h = 9), h = lVe(o, u, h);
              const T = g.valueDeclaration;
              if (T) {
                const k = nv(T), D = x0(T);
                k & 256 && (S |= 2), k & 1024 && (S |= 4), h !== 0 && h !== 2 && (k & 8 || D & 2 || g.getFlags() & 8) && (S |= 8), (h === 7 || h === 10) && uVe(T, t) && (S |= 32), e.isSourceFileDefaultLibrary(T.getSourceFile()) && (S |= 16);
              } else g.declarations && g.declarations.some((k) => e.isSourceFileDefaultLibrary(k.getSourceFile())) && (S |= 16);
              i(u, h, S);
            }
          }
        }
        Fa(u, _), c = d;
      }
      _(t);
    }
    function cVe(e, t) {
      const n = e.getFlags();
      if (n & 32) return 0;
      if (n & 384) return 1;
      if (n & 524288) return 5;
      if (n & 64) {
        if (t & 2) return 2;
      } else if (n & 262144) return 4;
      let i = e.valueDeclaration || e.declarations && e.declarations[0];
      return i && Ns(i) && (i = ATe(i)), i && ITe.get(i.kind);
    }
    function lVe(e, t, n) {
      if (n === 7 || n === 9 || n === 6) {
        const i = e.getTypeAtLocation(t);
        if (i) {
          const a = (o) => o(i) || i.isUnion() && i.types.some(o);
          if (n !== 6 && a((o) => o.getConstructSignatures().length > 0)) return 0;
          if (a((o) => o.getCallSignatures().length > 0) && !a((o) => o.getProperties().length > 0) || fVe(t)) return n === 9 ? 11 : 10;
        }
      }
      return n;
    }
    function uVe(e, t) {
      return Ns(e) && (e = ATe(e)), ci(e) ? (!Pi(e.parent.parent.parent) || Zb(e.parent)) && e.getSourceFile() === t : Xc(e) ? !Pi(e.parent) && e.getSourceFile() === t : !1;
    }
    function ATe(e) {
      for (; ; ) if (Ns(e.parent.parent)) e = e.parent.parent;
      else return e.parent.parent;
    }
    function _Ve(e) {
      const t = e.parent;
      return t && (hd(t) || p_(t) || nh(t));
    }
    function fVe(e) {
      for (; NTe(e); ) e = e.parent;
      return za(e.parent) && e.parent.expression === e;
    }
    function NTe(e) {
      return k_(e.parent) && e.parent.right === e || Ln(e.parent) && e.parent.name === e;
    }
    var ITe = /* @__PURE__ */ new Map([
      [261, 7],
      [170, 6],
      [173, 9],
      [268, 3],
      [267, 1],
      [307, 8],
      [264, 0],
      [175, 11],
      [263, 10],
      [219, 10],
      [174, 11],
      [178, 9],
      [179, 9],
      [172, 9],
      [265, 2],
      [266, 5],
      [169, 4],
      [304, 9],
      [305, 9]
    ]), OTe = "0.8";
    function FTe(e, t, n, i) {
      const a = Q7(e) ? new Sce(e, t, n) : e === 80 ? new MTe(80, t, n) : e === 81 ? new RTe(81, t, n) : new LTe(e, t, n);
      return a.parent = i, a.flags = i.flags & 101441536, a;
    }
    var Sce = class {
      constructor(e, t, n) {
        this.pos = t, this.end = n, this.kind = e, this.id = 0, this.flags = 0, this.modifierFlagsCache = 0, this.transformFlags = 0, this.parent = void 0, this.original = void 0, this.emitNode = void 0;
      }
      assertHasRealPosition(e) {
        E.assert(!Wd(this.pos) && !Wd(this.end), e || "Node must have a real position for this operation");
      }
      getSourceFile() {
        return Sr(this);
      }
      getStart(e, t) {
        return this.assertHasRealPosition(), ov(this, e, t);
      }
      getFullStart() {
        return this.assertHasRealPosition(), this.pos;
      }
      getEnd() {
        return this.assertHasRealPosition(), this.end;
      }
      getWidth(e) {
        return this.assertHasRealPosition(), this.getEnd() - this.getStart(e);
      }
      getFullWidth() {
        return this.assertHasRealPosition(), this.end - this.pos;
      }
      getLeadingTriviaWidth(e) {
        return this.assertHasRealPosition(), this.getStart(e) - this.pos;
      }
      getFullText(e) {
        return this.assertHasRealPosition(), (e || this.getSourceFile()).text.substring(this.pos, this.end);
      }
      getText(e) {
        return this.assertHasRealPosition(), e || (e = this.getSourceFile()), e.text.substring(this.getStart(e), this.getEnd());
      }
      getChildCount(e) {
        return this.getChildren(e).length;
      }
      getChildAt(e, t) {
        return this.getChildren(t)[e];
      }
      getChildren(e = Sr(this)) {
        return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"), qz(this, e) ?? sre(this, e, pVe(this, e));
      }
      getFirstToken(e) {
        this.assertHasRealPosition();
        const t = this.getChildren(e);
        if (!t.length) return;
        const n = xr(t, (i) => i.kind < 310 || i.kind > 352);
        return n.kind < 167 ? n : n.getFirstToken(e);
      }
      getLastToken(e) {
        this.assertHasRealPosition();
        const t = Wo(this.getChildren(e));
        if (t)
          return t.kind < 167 ? t : t.getLastToken(e);
      }
      forEachChild(e, t) {
        return Fa(this, e, t);
      }
    };
    function pVe(e, t) {
      const n = [];
      if (i5(e))
        return e.forEachChild((c) => {
          n.push(c);
        }), n;
      su.setText((t || e.getSourceFile()).text);
      let i = e.pos;
      const a = (c) => {
        LL(n, i, c.pos, e), n.push(c), i = c.end;
      }, o = (c) => {
        LL(n, i, c.pos, e), n.push(dVe(c, e)), i = c.end;
      };
      return bt(e.jsDoc, a), i = e.pos, e.forEachChild(a, o), LL(n, i, e.end, e), su.setText(void 0), n;
    }
    function LL(e, t, n, i) {
      for (su.resetTokenState(t); t < n; ) {
        const a = su.scan(), o = su.getTokenEnd();
        if (o <= n) {
          if (a === 80) {
            if (nte(i)) continue;
            E.fail(`Did not expect ${E.formatSyntaxKind(i.kind)} to have an Identifier in its trivia`);
          }
          e.push(FTe(a, t, o, i));
        }
        if (t = o, a === 1) break;
      }
    }
    function dVe(e, t) {
      const n = FTe(353, e.pos, e.end, t), i = [];
      let a = e.pos;
      for (const o of e)
        LL(i, a, o.pos, t), i.push(o), a = o.end;
      return LL(i, a, e.end, t), n._children = i, n;
    }
    var Tce = class {
      constructor(e, t, n) {
        this.pos = t, this.end = n, this.kind = e, this.id = 0, this.flags = 0, this.transformFlags = 0, this.parent = void 0, this.emitNode = void 0;
      }
      getSourceFile() {
        return Sr(this);
      }
      getStart(e, t) {
        return ov(this, e, t);
      }
      getFullStart() {
        return this.pos;
      }
      getEnd() {
        return this.end;
      }
      getWidth(e) {
        return this.getEnd() - this.getStart(e);
      }
      getFullWidth() {
        return this.end - this.pos;
      }
      getLeadingTriviaWidth(e) {
        return this.getStart(e) - this.pos;
      }
      getFullText(e) {
        return (e || this.getSourceFile()).text.substring(this.pos, this.end);
      }
      getText(e) {
        return e || (e = this.getSourceFile()), e.text.substring(this.getStart(e), this.getEnd());
      }
      getChildCount() {
        return this.getChildren().length;
      }
      getChildAt(e) {
        return this.getChildren()[e];
      }
      getChildren() {
        return this.kind === 1 && this.jsDoc || Te;
      }
      getFirstToken() {
      }
      getLastToken() {
      }
      forEachChild() {
      }
    }, mVe = class {
      constructor(e, t) {
        this.flags = e, this.escapedName = t, this.declarations = void 0, this.valueDeclaration = void 0, this.id = 0, this.mergeId = 0, this.parent = void 0, this.members = void 0, this.exports = void 0, this.exportSymbol = void 0, this.constEnumOnlyModule = void 0, this.isReferenced = void 0, this.lastAssignmentPos = void 0, this.links = void 0;
      }
      getFlags() {
        return this.flags;
      }
      get name() {
        return kc(this);
      }
      getEscapedName() {
        return this.escapedName;
      }
      getName() {
        return this.name;
      }
      getDeclarations() {
        return this.declarations;
      }
      getDocumentationComment(e) {
        if (!this.documentationComment)
          if (this.documentationComment = Te, !this.declarations && Ug(this) && this.links.target && Ug(this.links.target) && this.links.target.links.tupleLabelDeclaration) {
            const t = this.links.target.links.tupleLabelDeclaration;
            this.documentationComment = ML([t], e);
          } else this.documentationComment = ML(this.declarations, e);
        return this.documentationComment;
      }
      getContextualDocumentationComment(e, t) {
        if (e) {
          if (Wg(e) && (this.contextualGetAccessorDocumentationComment || (this.contextualGetAccessorDocumentationComment = Te, this.contextualGetAccessorDocumentationComment = ML(dn(this.declarations, Wg), t)), It(this.contextualGetAccessorDocumentationComment)))
            return this.contextualGetAccessorDocumentationComment;
          if (vm(e) && (this.contextualSetAccessorDocumentationComment || (this.contextualSetAccessorDocumentationComment = Te, this.contextualSetAccessorDocumentationComment = ML(dn(this.declarations, vm), t)), It(this.contextualSetAccessorDocumentationComment)))
            return this.contextualSetAccessorDocumentationComment;
        }
        return this.getDocumentationComment(t);
      }
      getJsDocTags(e) {
        return this.tags === void 0 && (this.tags = Te, this.tags = hG(this.declarations, e)), this.tags;
      }
      getContextualJsDocTags(e, t) {
        if (e) {
          if (Wg(e) && (this.contextualGetAccessorTags || (this.contextualGetAccessorTags = Te, this.contextualGetAccessorTags = hG(dn(this.declarations, Wg), t)), It(this.contextualGetAccessorTags)))
            return this.contextualGetAccessorTags;
          if (vm(e) && (this.contextualSetAccessorTags || (this.contextualSetAccessorTags = Te, this.contextualSetAccessorTags = hG(dn(this.declarations, vm), t)), It(this.contextualSetAccessorTags)))
            return this.contextualSetAccessorTags;
        }
        return this.getJsDocTags(t);
      }
    }, LTe = class extends Tce {
      constructor(e, t, n) {
        super(e, t, n);
      }
    }, MTe = class extends Tce {
      constructor(e, t, n) {
        super(e, t, n);
      }
      get text() {
        return On(this);
      }
    }, RTe = class extends Tce {
      constructor(e, t, n) {
        super(e, t, n);
      }
      get text() {
        return On(this);
      }
    }, gVe = class {
      constructor(e, t) {
        this.flags = t, this.checker = e;
      }
      getFlags() {
        return this.flags;
      }
      getSymbol() {
        return this.symbol;
      }
      getProperties() {
        return this.checker.getPropertiesOfType(this);
      }
      getProperty(e) {
        return this.checker.getPropertyOfType(this, e);
      }
      getApparentProperties() {
        return this.checker.getAugmentedPropertiesOfType(this);
      }
      getCallSignatures() {
        return this.checker.getSignaturesOfType(this, 0);
      }
      getConstructSignatures() {
        return this.checker.getSignaturesOfType(this, 1);
      }
      getStringIndexType() {
        return this.checker.getIndexTypeOfType(this, 0);
      }
      getNumberIndexType() {
        return this.checker.getIndexTypeOfType(this, 1);
      }
      getBaseTypes() {
        return this.isClassOrInterface() ? this.checker.getBaseTypes(this) : void 0;
      }
      isNullableType() {
        return this.checker.isNullableType(this);
      }
      getNonNullableType() {
        return this.checker.getNonNullableType(this);
      }
      getNonOptionalType() {
        return this.checker.getNonOptionalType(this);
      }
      getConstraint() {
        return this.checker.getBaseConstraintOfType(this);
      }
      getDefault() {
        return this.checker.getDefaultFromTypeParameter(this);
      }
      isUnion() {
        return !!(this.flags & 134217728);
      }
      isIntersection() {
        return !!(this.flags & 268435456);
      }
      isUnionOrIntersection() {
        return !!(this.flags & 402653184);
      }
      isLiteral() {
        return !!(this.flags & 7168);
      }
      isStringLiteral() {
        return !!(this.flags & 1024);
      }
      isNumberLiteral() {
        return !!(this.flags & 2048);
      }
      isTypeParameter() {
        return !!(this.flags & 524288);
      }
      isClassOrInterface() {
        return !!(yn(this) & 3);
      }
      isClass() {
        return !!(yn(this) & 1);
      }
      isIndexType() {
        return !!(this.flags & 2097152);
      }
      get typeArguments() {
        if (yn(this) & 4) return this.checker.getTypeArguments(this);
      }
    }, hVe = class {
      constructor(e, t) {
        this.flags = t, this.checker = e;
      }
      getDeclaration() {
        return this.declaration;
      }
      getTypeParameters() {
        return this.typeParameters;
      }
      getParameters() {
        return this.parameters;
      }
      getReturnType() {
        return this.checker.getReturnTypeOfSignature(this);
      }
      getTypeParameterAtPosition(e) {
        const t = this.checker.getParameterType(this, e);
        if (t.isIndexType() && VD(t.type)) {
          const n = t.type.getConstraint();
          if (n) return this.checker.getIndexType(n);
        }
        return t;
      }
      getDocumentationComment() {
        return this.documentationComment || (this.documentationComment = ML(dx(this.declaration), this.checker));
      }
      getJsDocTags() {
        return this.jsDocTags || (this.jsDocTags = hG(dx(this.declaration), this.checker));
      }
    };
    function jTe(e) {
      return av(e).some((t) => t.tagName.text === "inheritDoc" || t.tagName.text === "inheritdoc");
    }
    function hG(e, t) {
      if (!e) return Te;
      let n = qv.getJsDocTagsFromDeclarations(e, t);
      if (t && (n.length === 0 || e.some(jTe))) {
        const i = /* @__PURE__ */ new Set();
        for (const a of e) {
          const o = BTe(t, a, (c) => {
            var _;
            if (!i.has(c))
              return i.add(c), a.kind === 178 || a.kind === 179 ? c.getContextualJsDocTags(a, t) : ((_ = c.declarations) == null ? void 0 : _.length) === 1 ? c.getJsDocTags(t) : void 0;
          });
          o && (n = [...o, ...n]);
        }
      }
      return n;
    }
    function ML(e, t) {
      if (!e) return Te;
      let n = qv.getJsDocCommentsFromDeclarations(e, t);
      if (t && (n.length === 0 || e.some(jTe))) {
        const i = /* @__PURE__ */ new Set();
        for (const a of e) {
          const o = BTe(t, a, (c) => {
            if (!i.has(c))
              return i.add(c), a.kind === 178 || a.kind === 179 ? c.getContextualDocumentationComment(a, t) : c.getDocumentationComment(t);
          });
          o && (n = n.length === 0 ? o.slice() : o.concat(pE(), n));
        }
      }
      return n;
    }
    function BTe(e, t, n) {
      var i;
      const a = ((i = t.parent) == null ? void 0 : i.kind) === 177 ? t.parent.parent : t.parent;
      if (!a) return;
      const o = vl(t);
      return Hn(mD(a), (c) => {
        const _ = e.getTypeAtLocation(c), u = o && _.symbol ? e.getTypeOfSymbol(_.symbol) : _, d = e.getPropertyOfType(u, t.symbol.name);
        return d ? n(d) : void 0;
      });
    }
    var yVe = class extends Sce {
      constructor(e, t, n) {
        super(e, t, n);
      }
      update(e, t) {
        return sW(this, e, t);
      }
      getLineAndCharacterOfPosition(e) {
        return Za(this, e);
      }
      getLineStarts() {
        return Mg(this);
      }
      getPositionOfLineAndCharacter(e, t, n) {
        return B7(Mg(this), e, t, this.text, n);
      }
      getLineEndOfPosition(e) {
        const { line: t } = this.getLineAndCharacterOfPosition(e), n = this.getLineStarts();
        let i;
        t + 1 >= n.length && (i = this.getEnd()), i || (i = n[t + 1] - 1);
        const a = this.getFullText();
        return a[i] === `
` && a[i - 1] === "\r" ? i - 1 : i;
      }
      getNamedDeclarations() {
        return this.namedDeclarations || (this.namedDeclarations = this.computeNamedDeclarations()), this.namedDeclarations;
      }
      computeNamedDeclarations() {
        const e = Up();
        return this.forEachChild(a), e;
        function t(o) {
          const c = i(o);
          c && e.add(c, o);
        }
        function n(o) {
          let c = e.get(o);
          return c || e.set(o, c = []), c;
        }
        function i(o) {
          const c = W7(o);
          return c && (_s(c) && Ln(c.expression) ? c.expression.name.text : il(c) ? mI(c) : void 0);
        }
        function a(o) {
          switch (o.kind) {
            case 263:
            case 219:
            case 175:
            case 174:
              const c = o, _ = i(c);
              if (_) {
                const g = n(_), h = Wo(g);
                h && c.parent === h.parent && c.symbol === h.symbol ? c.body && !h.body && (g[g.length - 1] = c) : g.push(c);
              }
              Fa(o, a);
              break;
            case 264:
            case 232:
            case 265:
            case 266:
            case 267:
            case 268:
            case 272:
            case 282:
            case 277:
            case 274:
            case 275:
            case 178:
            case 179:
            case 188:
              t(o), Fa(o, a);
              break;
            case 170:
              if (!Qn(o, 31)) break;
            case 261:
            case 209: {
              const g = o;
              if (Ja(g.name)) {
                Fa(g.name, a);
                break;
              }
              g.initializer && a(g.initializer);
            }
            case 307:
            case 173:
            case 172:
              t(o);
              break;
            case 279:
              const u = o;
              u.exportClause && (Pp(u.exportClause) ? bt(u.exportClause.elements, a) : a(u.exportClause.name));
              break;
            case 273:
              const d = o.importClause;
              d && (d.name && t(d.name), d.namedBindings && (d.namedBindings.kind === 275 ? t(d.namedBindings) : bt(d.namedBindings.elements, a)));
              break;
            case 227:
              qc(o) !== 0 && t(o);
            default:
              Fa(o, a);
          }
        }
      }
    }, vVe = class {
      constructor(e, t, n) {
        this.fileName = e, this.text = t, this.skipTrivia = n || ((i) => i);
      }
      getLineAndCharacterOfPosition(e) {
        return Za(this, e);
      }
    };
    function bVe() {
      return {
        getNodeConstructor: () => Sce,
        getTokenConstructor: () => LTe,
        getIdentifierConstructor: () => MTe,
        getPrivateIdentifierConstructor: () => RTe,
        getSourceFileConstructor: () => yVe,
        getSymbolConstructor: () => mVe,
        getTypeConstructor: () => gVe,
        getSignatureConstructor: () => hVe,
        getSourceMapSourceConstructor: () => vVe
      };
    }
    function II(e) {
      let t = !0;
      for (const i in e) if (po(e, i) && !JTe(i)) {
        t = !1;
        break;
      }
      if (t) return e;
      const n = {};
      for (const i in e) if (po(e, i)) {
        const a = JTe(i) ? i : i.charAt(0).toLowerCase() + i.substr(1);
        n[a] = e[i];
      }
      return n;
    }
    function JTe(e) {
      return !e.length || e.charAt(0) === e.charAt(0).toLowerCase();
    }
    function OI(e) {
      return e ? or(e, (t) => t.text).join("") : "";
    }
    function RL() {
      return {
        target: 12,
        jsx: 1
      };
    }
    function yG() {
      return Zu.getSupportedErrorCodes();
    }
    var SVe = class {
      constructor(e) {
        this.host = e;
      }
      getCurrentSourceFile(e) {
        var t, n, i, a, o, c, _, u;
        const d = this.host.getScriptSnapshot(e);
        if (!d) throw new Error("Could not find file: '" + e + "'.");
        const g = yq(e, this.host), h = this.host.getScriptVersion(e);
        let S;
        if (this.currentFileName !== e) S = jL(e, d, {
          languageVersion: 99,
          impliedNodeFormat: XN(Eo(e, this.host.getCurrentDirectory(), ((i = (n = (t = this.host).getCompilerHost) == null ? void 0 : n.call(t)) == null ? void 0 : i.getCanonicalFileName) || Wh(this.host)), (u = (_ = (c = (o = (a = this.host).getCompilerHost) == null ? void 0 : o.call(a)) == null ? void 0 : c.getModuleResolutionCache) == null ? void 0 : _.call(c)) == null ? void 0 : u.getPackageJsonInfoCache(), this.host, this.host.getCompilationSettings()),
          setExternalModuleIndicator: LA(this.host.getCompilationSettings()),
          jsDocParsingMode: 0
        }, h, !0, g);
        else if (this.currentFileVersion !== h) {
          const T = d.getChangeRange(this.currentFileScriptSnapshot);
          S = vG(this.currentSourceFile, d, h, T);
        }
        return S && (this.currentFileVersion = h, this.currentFileName = e, this.currentFileScriptSnapshot = d, this.currentSourceFile = S), this.currentSourceFile;
      }
    };
    function zTe(e, t, n) {
      e.version = n, e.scriptSnapshot = t;
    }
    function jL(e, t, n, i, a, o) {
      const c = Sk(e, Fk(t), n, a, o);
      return zTe(c, t, i), c;
    }
    function vG(e, t, n, i, a) {
      if (i && n !== e.version) {
        let c;
        const _ = i.span.start !== 0 ? e.text.substr(0, i.span.start) : "", u = dc(i.span) !== e.text.length ? e.text.substr(dc(i.span)) : "";
        if (i.newLength === 0) c = _ && u ? _ + u : _ || u;
        else {
          const g = t.getText(i.span.start, i.span.start + i.newLength);
          c = _ && u ? _ + g + u : _ ? _ + g : g + u;
        }
        const d = sW(e, c, i, a);
        return zTe(d, t, n), d.nameTable = void 0, e !== d && e.scriptSnapshot && (e.scriptSnapshot.dispose && e.scriptSnapshot.dispose(), e.scriptSnapshot = void 0), d;
      }
      const o = {
        languageVersion: e.languageVersion,
        impliedNodeFormat: e.impliedNodeFormat,
        setExternalModuleIndicator: e.setExternalModuleIndicator,
        jsDocParsingMode: e.jsDocParsingMode
      };
      return jL(e.fileName, t, o, n, !0, e.scriptKind);
    }
    var TVe = {
      isCancellationRequested: Mh,
      throwIfCancellationRequested: so
    }, xVe = class {
      constructor(e) {
        this.cancellationToken = e;
      }
      isCancellationRequested() {
        return this.cancellationToken.isCancellationRequested();
      }
      throwIfCancellationRequested() {
        var e;
        if (this.isCancellationRequested())
          throw (e = sn) == null || e.instant(sn.Phase.Session, "cancellationThrown", { kind: "CancellationTokenObject" }), new N4();
      }
    }, xce = class {
      constructor(e, t = 20) {
        this.hostCancellationToken = e, this.throttleWaitMilliseconds = t, this.lastCancellationCheckTime = 0;
      }
      isCancellationRequested() {
        const e = ko();
        return Math.abs(e - this.lastCancellationCheckTime) >= this.throttleWaitMilliseconds ? (this.lastCancellationCheckTime = e, this.hostCancellationToken.isCancellationRequested()) : !1;
      }
      throwIfCancellationRequested() {
        var e;
        if (this.isCancellationRequested())
          throw (e = sn) == null || e.instant(sn.Phase.Session, "cancellationThrown", { kind: "ThrottledCancellationToken" }), new N4();
      }
    }, WTe = [
      "getSemanticDiagnostics",
      "getSuggestionDiagnostics",
      "getCompilerOptionsDiagnostics",
      "getSemanticClassifications",
      "getEncodedSemanticClassifications",
      "getCodeFixesAtPosition",
      "getCombinedCodeFix",
      "applyCodeActionCommand",
      "organizeImports",
      "getEditsForFileRename",
      "getEmitOutput",
      "getApplicableRefactors",
      "getEditsForRefactor",
      "prepareCallHierarchy",
      "provideCallHierarchyIncomingCalls",
      "provideCallHierarchyOutgoingCalls",
      "provideInlayHints",
      "getSupportedCodeFixes",
      "getPasteEdits"
    ], kVe = [
      ...WTe,
      "getCompletionsAtPosition",
      "getCompletionEntryDetails",
      "getCompletionEntrySymbol",
      "getSignatureHelpItems",
      "getQuickInfoAtPosition",
      "getDefinitionAtPosition",
      "getDefinitionAndBoundSpan",
      "getImplementationAtPosition",
      "getTypeDefinitionAtPosition",
      "getReferencesAtPosition",
      "findReferences",
      "getDocumentHighlights",
      "getNavigateToItems",
      "getRenameInfo",
      "findRenameLocations",
      "getApplicableRefactors",
      "preparePasteEditsForFile"
    ];
    function kce(e, t = $se(e.useCaseSensitiveFileNames && e.useCaseSensitiveFileNames(), e.getCurrentDirectory(), e.jsDocParsingMode), n) {
      var i;
      let a;
      n === void 0 ? a = 0 : typeof n == "boolean" ? a = n ? 2 : 0 : a = n;
      const o = new SVe(e);
      let c, _, u = 0;
      const d = e.getCancellationToken ? new xVe(e.getCancellationToken()) : TVe, g = e.getCurrentDirectory();
      Pee((i = e.getLocalizedDiagnosticMessages) == null ? void 0 : i.bind(e));
      function h(et) {
        e.log && e.log(et);
      }
      const S = CS(e), T = pu(S), k = coe({
        useCaseSensitiveFileNames: () => S,
        getCurrentDirectory: () => g,
        getProgram: M,
        fileExists: Ua(e, e.fileExists),
        readFile: Ua(e, e.readFile),
        getDocumentPositionMapper: Ua(e, e.getDocumentPositionMapper),
        getSourceFileLike: Ua(e, e.getSourceFileLike),
        log: h
      });
      function D(et) {
        const kt = c.getSourceFile(et);
        if (!kt) {
          const wt = /* @__PURE__ */ new Error(`Could not find source file: '${et}'.`);
          throw wt.ProgramFiles = c.getSourceFiles().map((qt) => qt.fileName), wt;
        }
        return kt;
      }
      function P() {
        e.updateFromProject && !e.updateFromProjectInProgress ? e.updateFromProject() : N();
      }
      function N() {
        var et, kt, wt;
        if (E.assert(a !== 2), e.getProjectVersion) {
          const fa = e.getProjectVersion();
          if (fa) {
            if (_ === fa && !((et = e.hasChangedAutomaticTypeDirectiveNames) != null && et.call(e))) return;
            _ = fa;
          }
        }
        const qt = e.getTypeRootsVersion ? e.getTypeRootsVersion() : 0;
        u !== qt && (h("TypeRoots version has changed; provide new program"), c = void 0, u = qt);
        const Ir = e.getScriptFileNames().slice(), Yt = e.getCompilationSettings() || RL(), Jt = e.hasInvalidatedResolutions || Mh, $t = Ua(e, e.hasInvalidatedLibResolutions) || Mh, Qt = Ua(e, e.hasChangedAutomaticTypeDirectiveNames), ct = (kt = e.getProjectReferences) == null ? void 0 : kt.call(e);
        let wn, Mi = {
          getSourceFile: _c,
          getSourceFileByPath: xl,
          getCancellationToken: () => d,
          getCanonicalFileName: T,
          useCaseSensitiveFileNames: () => S,
          getNewLine: () => N0(Yt),
          getDefaultLibFileName: (fa) => e.getDefaultLibFileName(fa),
          writeFile: so,
          getCurrentDirectory: () => g,
          fileExists: (fa) => e.fileExists(fa),
          readFile: (fa) => e.readFile && e.readFile(fa),
          getSymlinkCache: Ua(e, e.getSymlinkCache),
          realpath: Ua(e, e.realpath),
          directoryExists: (fa) => zd(fa, e),
          getDirectories: (fa) => e.getDirectories ? e.getDirectories(fa) : [],
          readDirectory: (fa, $a, Yi, Is, Zt) => (E.checkDefined(e.readDirectory, "'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"), e.readDirectory(fa, $a, Yi, Is, Zt)),
          onReleaseOldSourceFile: Ou,
          onReleaseParsedCommandLine: _o,
          hasInvalidatedResolutions: Jt,
          hasInvalidatedLibResolutions: $t,
          hasChangedAutomaticTypeDirectiveNames: Qt,
          trace: Ua(e, e.trace),
          resolveModuleNames: Ua(e, e.resolveModuleNames),
          getModuleResolutionCache: Ua(e, e.getModuleResolutionCache),
          createHash: Ua(e, e.createHash),
          resolveTypeReferenceDirectives: Ua(e, e.resolveTypeReferenceDirectives),
          resolveModuleNameLiterals: Ua(e, e.resolveModuleNameLiterals),
          resolveTypeReferenceDirectiveReferences: Ua(e, e.resolveTypeReferenceDirectiveReferences),
          resolveLibrary: Ua(e, e.resolveLibrary),
          useSourceOfProjectReferenceRedirect: Ua(e, e.useSourceOfProjectReferenceRedirect),
          getParsedCommandLine: ia,
          jsDocParsingMode: e.jsDocParsingMode,
          getGlobalTypingsCacheLocation: Ua(e, e.getGlobalTypingsCacheLocation)
        };
        const os = Mi.getSourceFile, { getSourceFileWithCache: cs } = Nw(Mi, (fa) => Eo(fa, g, T), (...fa) => os.call(Mi, ...fa));
        Mi.getSourceFile = cs, (wt = e.setCompilerHost) == null || wt.call(e, Mi);
        const xa = {
          useCaseSensitiveFileNames: S,
          fileExists: (fa) => Mi.fileExists(fa),
          readFile: (fa) => Mi.readFile(fa),
          directoryExists: (fa) => Mi.directoryExists(fa),
          getDirectories: (fa) => Mi.getDirectories(fa),
          realpath: Mi.realpath,
          readDirectory: (...fa) => Mi.readDirectory(...fa),
          trace: Mi.trace,
          getCurrentDirectory: Mi.getCurrentDirectory,
          onUnRecoverableConfigFileDiagnostic: so
        }, oo = t.getKeyForCompilationSettings(Yt);
        let To = /* @__PURE__ */ new Set();
        if (LU(c, Ir, Yt, (fa, $a) => e.getScriptVersion($a), (fa) => Mi.fileExists(fa), Jt, $t, Qt, ia, ct)) {
          Mi = void 0, wn = void 0, To = void 0;
          return;
        }
        c = QN({
          rootNames: Ir,
          options: Yt,
          host: Mi,
          oldProgram: c,
          projectReferences: ct
        }), Mi = void 0, wn = void 0, To = void 0, k.clearCache(), c.getTypeChecker();
        return;
        function ia(fa) {
          const $a = Eo(fa, g, T), Yi = wn?.get($a);
          if (Yi !== void 0) return Yi || void 0;
          const Is = e.getParsedCommandLine ? e.getParsedCommandLine(fa) : ja(fa);
          return (wn || (wn = /* @__PURE__ */ new Map())).set($a, Is || !1), Is;
        }
        function ja(fa) {
          const $a = _c(fa, 100);
          if ($a)
            return $a.path = Eo(fa, g, T), $a.resolvedPath = $a.path, $a.originalFileName = $a.fileName, EN($a, xa, ca(Xn(fa), g), void 0, ca(fa, g));
        }
        function _o(fa, $a, Yi) {
          var Is;
          e.getParsedCommandLine ? (Is = e.onReleaseParsedCommandLine) == null || Is.call(e, fa, $a, Yi) : $a && Yc($a.sourceFile, Yi);
        }
        function Yc(fa, $a) {
          const Yi = t.getKeyForCompilationSettings($a);
          t.releaseDocumentWithKey(fa.resolvedPath, Yi, fa.scriptKind, fa.impliedNodeFormat);
        }
        function Ou(fa, $a, Yi, Is) {
          var Zt;
          Yc(fa, $a), (Zt = e.onReleaseOldSourceFile) == null || Zt.call(e, fa, $a, Yi, Is);
        }
        function _c(fa, $a, Yi, Is) {
          return xl(fa, Eo(fa, g, T), $a, Yi, Is);
        }
        function xl(fa, $a, Yi, Is, Zt) {
          E.assert(Mi, "getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");
          const Mo = e.getScriptSnapshot(fa);
          if (!Mo) return;
          const ou = yq(fa, e), Wl = e.getScriptVersion(fa);
          if (!Zt) {
            const bu = c && c.getSourceFileByPath($a);
            if (bu) {
              if (ou === bu.scriptKind || To.has(bu.resolvedPath)) return t.updateDocumentWithKey(fa, $a, e, oo, Mo, Wl, ou, Yi);
              t.releaseDocumentWithKey(bu.resolvedPath, t.getKeyForCompilationSettings(c.getCompilerOptions()), bu.scriptKind, bu.impliedNodeFormat), To.add(bu.resolvedPath);
            }
          }
          return t.acquireDocumentWithKey(fa, $a, e, oo, Mo, Wl, ou, Yi);
        }
      }
      function M() {
        if (a === 2) {
          E.assert(c === void 0);
          return;
        }
        return P(), c;
      }
      function R() {
        var et;
        return (et = e.getPackageJsonAutoImportProvider) == null ? void 0 : et.call(e);
      }
      function G(et, kt) {
        const wt = c.getTypeChecker(), qt = Ir();
        if (!qt) return !1;
        for (const Jt of et) for (const $t of Jt.references) {
          const Qt = Yt($t);
          if (E.assertIsDefined(Qt), kt.has($t) || Jo.isDeclarationOfSymbol(Qt, qt)) {
            kt.add($t), $t.isDefinition = !0;
            const ct = aL($t, k, Ua(e, e.fileExists));
            ct && kt.add(ct);
          } else $t.isDefinition = !1;
        }
        return !0;
        function Ir() {
          for (const Jt of et) for (const $t of Jt.references) {
            if (kt.has($t)) {
              const ct = Yt($t);
              return E.assertIsDefined(ct), wt.getSymbolAtLocation(ct);
            }
            const Qt = aL($t, k, Ua(e, e.fileExists));
            if (Qt && kt.has(Qt)) {
              const ct = Yt(Qt);
              if (ct) return wt.getSymbolAtLocation(ct);
            }
          }
        }
        function Yt(Jt) {
          const $t = c.getSourceFile(Jt.fileName);
          if (!$t) return;
          const Qt = G_($t, Jt.textSpan.start);
          return Jo.Core.getAdjustedNode(Qt, { use: Jo.FindReferencesUse.References });
        }
      }
      function L() {
        if (c) {
          const et = t.getKeyForCompilationSettings(c.getCompilerOptions());
          bt(c.getSourceFiles(), (kt) => t.releaseDocumentWithKey(kt.resolvedPath, et, kt.scriptKind, kt.impliedNodeFormat)), c = void 0;
        }
      }
      function z() {
        L(), e = void 0;
      }
      function H(et) {
        return P(), c.getSyntacticDiagnostics(D(et), d).slice();
      }
      function U(et) {
        P();
        const kt = D(et), wt = c.getSemanticDiagnostics(kt, d);
        if (!U_(c.getCompilerOptions())) return wt.slice();
        const qt = c.getDeclarationDiagnostics(kt, d);
        return [...wt, ...qt];
      }
      function pe(et, kt) {
        P();
        const wt = D(et), qt = c.getCompilerOptions();
        if (x6(wt, qt, c) || !BD(wt, qt) || c.getCachedSemanticDiagnostics(wt)) return;
        const Ir = ie(wt, kt);
        if (!Ir) return;
        const Yt = Vj(Ir.map((Jt) => Vc(Jt.getFullStart(), Jt.getEnd())));
        return {
          diagnostics: c.getSemanticDiagnostics(wt, d, Ir).slice(),
          spans: Yt
        };
      }
      function ie(et, kt) {
        const wt = [], qt = Vj(kt.map((Ir) => V0(Ir)));
        for (const Ir of qt) {
          const Yt = W(et, Ir);
          if (!Yt) return;
          wt.push(...Yt);
        }
        if (wt.length)
          return wt;
      }
      function W(et, kt) {
        if (Uj(kt, et)) return;
        const wt = cr(zw(et, dc(kt)) || et, (Ir) => rZ(Ir, kt)), qt = [];
        if (Q(kt, wt, qt), et.end === kt.start + kt.length && qt.push(et.endOfFileToken), !_t(qt, Pi))
          return qt;
      }
      function Q(et, kt, wt) {
        return se(kt, et) ? Uj(et, kt) ? (he(kt, wt), !0) : Mk(kt) ? fe(et, kt, wt) : Zn(kt) ? de(et, kt, wt) : (he(kt, wt), !0) : !1;
      }
      function se(et, kt) {
        const wt = kt.start + kt.length;
        return et.pos < wt && et.end > kt.start;
      }
      function he(et, kt) {
        for (; et.parent && !ote(et); ) et = et.parent;
        kt.push(et);
      }
      function fe(et, kt, wt) {
        const qt = [];
        return kt.statements.filter((Ir) => Q(et, Ir, qt)).length === kt.statements.length ? (he(kt, wt), !0) : (wt.push(...qt), !1);
      }
      function de(et, kt, wt) {
        var qt, Ir, Yt;
        const Jt = (Qt) => sZ(Qt, et);
        if ((qt = kt.modifiers) != null && qt.some(Jt) || kt.name && Jt(kt.name) || (Ir = kt.typeParameters) != null && Ir.some(Jt) || (Yt = kt.heritageClauses) != null && Yt.some(Jt))
          return he(kt, wt), !0;
        const $t = [];
        return kt.members.filter((Qt) => Q(et, Qt, $t)).length === kt.members.length ? (he(kt, wt), !0) : (wt.push(...$t), !1);
      }
      function $(et) {
        return P(), Vq(D(et), c, d);
      }
      function Se() {
        return P(), [...c.getOptionsDiagnostics(d), ...c.getGlobalDiagnostics(d)];
      }
      function Be(et, kt, wt = td, qt) {
        const Ir = {
          ...wt,
          includeCompletionsForModuleExports: wt.includeCompletionsForModuleExports || wt.includeExternalModuleExports,
          includeCompletionsWithInsertText: wt.includeCompletionsWithInsertText || wt.includeInsertTextCompletions
        };
        return P(), Vk.getCompletionsAtPosition(e, c, h, D(et), kt, Ir, wt.triggerCharacter, wt.triggerKind, d, qt && dl.getFormatContext(qt, e), wt.includeSymbol);
      }
      function ce(et, kt, wt, qt, Ir, Yt = td, Jt) {
        return P(), Vk.getCompletionEntryDetails(c, h, D(et), kt, {
          name: wt,
          source: Ir,
          data: Jt
        }, e, qt && dl.getFormatContext(qt, e), Yt, d);
      }
      function oe(et, kt, wt, qt, Ir = td) {
        return P(), Vk.getCompletionEntrySymbol(c, h, D(et), kt, {
          name: wt,
          source: qt
        }, e, Ir);
      }
      function ge(et, kt, wt, qt) {
        P();
        const Ir = D(et), Yt = G_(Ir, kt);
        if (Yt === Ir) return;
        const Jt = c.getTypeChecker(), $t = ot(Yt), Qt = wVe($t, Jt);
        if (!Qt || Jt.isUnknownSymbol(Qt)) {
          const xa = K(Ir, $t, kt) ? Jt.getTypeAtLocation($t) : void 0;
          return xa && {
            kind: "",
            kindModifiers: "",
            textSpan: P_($t, Ir),
            displayParts: Jt.runWithCancellationToken(d, (oo) => yI(oo, xa, ZS($t), void 0, qt)),
            documentation: xa.symbol ? xa.symbol.getDocumentationComment(Jt) : void 0,
            tags: xa.symbol ? xa.symbol.getJsDocTags(Jt) : void 0
          };
        }
        const { symbolKind: ct, displayParts: wn, documentation: Mi, tags: os, canIncreaseVerbosityLevel: cs } = Jt.runWithCancellationToken(d, (xa) => H0.getSymbolDisplayPartsDocumentationAndSymbolKind(xa, Qt, Ir, ZS($t), $t, void 0, void 0, wt ?? XZ, qt));
        return {
          kind: ct,
          kindModifiers: H0.getSymbolModifiers(Jt, Qt),
          textSpan: P_($t, Ir),
          displayParts: wn,
          documentation: Mi,
          tags: os,
          canIncreaseVerbosityLevel: cs
        };
      }
      function Ae(et, kt) {
        return P(), PH.preparePasteEdits(D(et), kt, c.getTypeChecker());
      }
      function Ne(et, kt) {
        return P(), AH.pasteEditsProvider(D(et.targetFile), et.pastedText, et.pasteLocations, et.copiedFrom ? {
          file: D(et.copiedFrom.file),
          range: et.copiedFrom.range
        } : void 0, e, et.preferences, dl.getFormatContext(kt, e), d);
      }
      function ot(et) {
        return Xb(et.parent) && et.pos === et.parent.pos ? et.parent.expression : w6(et.parent) && et.pos === et.parent.pos || a6(et.parent) && et.parent.name === et || Gd(et.parent) ? et.parent : et;
      }
      function K(et, kt, wt) {
        switch (kt.kind) {
          case 80:
            return kt.flags & 16777216 && !rn(kt) && (kt.parent.kind === 172 && kt.parent.name === kt || cr(kt, (qt) => qt.kind === 170)) ? !1 : !jV(kt) && !BV(kt) && !_d(kt.parent);
          case 212:
          case 167:
            return !W0(et, wt);
          case 110:
          case 198:
          case 108:
          case 203:
            return !0;
          case 237:
            return a6(kt);
          default:
            return !1;
        }
      }
      function ke(et, kt, wt, qt) {
        return P(), TE.getDefinitionAtPosition(c, D(et), kt, wt, qt);
      }
      function ae(et, kt) {
        return P(), TE.getDefinitionAndBoundSpan(c, D(et), kt);
      }
      function Ce(et, kt) {
        return P(), TE.getTypeDefinitionAtPosition(c.getTypeChecker(), D(et), kt);
      }
      function ue(et, kt) {
        return P(), Jo.getImplementationsAtPosition(c, d, c.getSourceFiles(), D(et), kt);
      }
      function Ie(et, kt, wt) {
        const qt = us(et);
        E.assert(wt.some((Jt) => us(Jt) === qt)), P();
        const Ir = Rn(wt, (Jt) => c.getSourceFile(Jt)), Yt = D(et);
        return xL.getDocumentHighlights(c, d, Yt, kt, Ir);
      }
      function Xe(et, kt, wt, qt, Ir) {
        P();
        const Yt = D(et), Jt = H9(G_(Yt, kt));
        if (aM.nodeIsEligibleForRename(Jt))
          if (Fe(Jt) && (qd(Jt.parent) || Qb(Jt.parent)) && m6(Jt.escapedText)) {
            const { openingElement: $t, closingElement: Qt } = Jt.parent.parent;
            return [$t, Qt].map((ct) => {
              const wn = P_(ct.tagName, Yt);
              return {
                fileName: Yt.fileName,
                textSpan: wn,
                ...Jo.toContextSpan(wn, Yt, ct.parent)
              };
            });
          } else {
            const $t = Df(Yt, Ir ?? td), Qt = typeof Ir == "boolean" ? Ir : Ir?.providePrefixAndSuffixTextForRename;
            return Ut(Jt, kt, {
              findInStrings: wt,
              findInComments: qt,
              providePrefixAndSuffixTextForRename: Qt,
              use: Jo.FindReferencesUse.Rename
            }, (ct, wn, Mi) => Jo.toRenameLocation(ct, wn, Mi, Qt || !1, $t));
          }
      }
      function Ft(et, kt) {
        return P(), Ut(G_(D(et), kt), kt, { use: Jo.FindReferencesUse.References }, Jo.toReferenceEntry);
      }
      function Ut(et, kt, wt, qt) {
        P();
        const Ir = wt && wt.use === Jo.FindReferencesUse.Rename ? c.getSourceFiles().filter((Yt) => !c.isSourceFileDefaultLibrary(Yt)) : c.getSourceFiles();
        return Jo.findReferenceOrRenameEntries(c, d, Ir, et, kt, wt, qt);
      }
      function Xt(et, kt) {
        return P(), Jo.findReferencedSymbols(c, d, c.getSourceFiles(), D(et), kt);
      }
      function Ar(et) {
        return P(), Jo.Core.getReferencesForFileName(et, c, c.getSourceFiles()).map(Jo.toReferenceEntry);
      }
      function Ct(et, kt, wt, qt = !1, Ir = !1) {
        return P(), eSe(wt ? [D(wt)] : c.getSourceFiles(), c.getTypeChecker(), d, et, kt, qt, Ir, c);
      }
      function Kt(et, kt, wt) {
        P();
        const qt = D(et), Ir = e.getCustomTransformers && e.getCustomTransformers();
        return zie(c, qt, !!kt, d, Ir, wt);
      }
      function zr(et, kt, { triggerReason: wt } = td) {
        P();
        const qt = D(et);
        return QI.getSignatureHelpItems(c, qt, kt, wt, d);
      }
      function _i(et) {
        return o.getCurrentSourceFile(et);
      }
      function Gr(et, kt, wt) {
        const qt = o.getCurrentSourceFile(et), Ir = G_(qt, kt);
        if (Ir === qt) return;
        switch (Ir.kind) {
          case 212:
          case 167:
          case 11:
          case 97:
          case 112:
          case 106:
          case 108:
          case 110:
          case 198:
          case 80:
            break;
          default:
            return;
        }
        let Yt = Ir;
        for (; ; ) if (sE(Yt) || ise(Yt)) Yt = Yt.parent;
        else if (zV(Yt)) if (Yt.parent.parent.kind === 268 && Yt.parent.parent.body === Yt.parent) Yt = Yt.parent.parent.name;
        else break;
        else break;
        return Vc(Yt.getStart(), Ir.getEnd());
      }
      function Nt(et, kt) {
        const wt = o.getCurrentSourceFile(et);
        return SG.spanInSourceFileAtLocation(wt, kt);
      }
      function Li(et) {
        return iSe(o.getCurrentSourceFile(et), d);
      }
      function ri(et) {
        return aSe(o.getCurrentSourceFile(et), d);
      }
      function Zr(et, kt, wt) {
        return P(), (wt || "original") === "2020" ? PTe(c, d, D(et), kt) : Gse(c.getTypeChecker(), d, D(et), c.getClassifiableNames(), kt);
      }
      function ni(et, kt, wt) {
        return P(), (wt || "original") === "original" ? Mq(c.getTypeChecker(), d, D(et), c.getClassifiableNames(), kt) : bce(c, d, D(et), kt);
      }
      function ra(et, kt) {
        return Hse(d, o.getCurrentSourceFile(et), kt);
      }
      function Me(et, kt) {
        return Rq(d, o.getCurrentSourceFile(et), kt);
      }
      function vt(et) {
        const kt = o.getCurrentSourceFile(et);
        return dH.collectElements(kt, d);
      }
      const tr = new Map(Object.entries({
        19: 20,
        21: 22,
        23: 24,
        32: 30
      }));
      tr.forEach((et, kt) => tr.set(et.toString(), Number(kt)));
      function Ur(et, kt) {
        const wt = o.getCurrentSourceFile(et), qt = lE(wt, kt), Ir = qt.getStart(wt) === kt ? tr.get(qt.kind.toString()) : void 0, Yt = Ir && uo(qt.parent, Ir, wt);
        return Yt ? [P_(qt, wt), P_(Yt, wt)].sort((Jt, $t) => Jt.start - $t.start) : Te;
      }
      function $n(et, kt, wt) {
        let qt = ko();
        const Ir = II(wt), Yt = o.getCurrentSourceFile(et);
        h("getIndentationAtPosition: getCurrentSourceFile: " + (ko() - qt)), qt = ko();
        const Jt = dl.SmartIndenter.getIndentation(kt, Yt, Ir);
        return h("getIndentationAtPosition: computeIndentation  : " + (ko() - qt)), Jt;
      }
      function zn(et, kt, wt, qt) {
        const Ir = o.getCurrentSourceFile(et);
        return dl.formatSelection(kt, wt, Ir, dl.getFormatContext(II(qt), e));
      }
      function na(et, kt) {
        return dl.formatDocument(o.getCurrentSourceFile(et), dl.getFormatContext(II(kt), e));
      }
      function Ea(et, kt, wt, qt) {
        const Ir = o.getCurrentSourceFile(et), Yt = dl.getFormatContext(II(qt), e);
        if (!W0(Ir, kt)) switch (wt) {
          case "{":
            return dl.formatOnOpeningCurly(kt, Ir, Yt);
          case "}":
            return dl.formatOnClosingCurly(kt, Ir, Yt);
          case ";":
            return dl.formatOnSemicolon(kt, Ir, Yt);
          case `
`:
            return dl.formatOnEnter(kt, Ir, Yt);
        }
        return [];
      }
      function Da(et, kt, wt, qt, Ir, Yt = td) {
        P();
        const Jt = D(et), $t = Vc(kt, wt), Qt = dl.getFormatContext(Ir, e);
        return ks(Z1(qt, S0, Fo), (ct) => (d.throwIfCancellationRequested(), Zu.getFixes({
          errorCode: ct,
          sourceFile: Jt,
          span: $t,
          program: c,
          host: e,
          cancellationToken: d,
          formatContext: Qt,
          preferences: Yt
        })));
      }
      function Lr(et, kt, wt, qt = td) {
        P(), E.assert(et.type === "file");
        const Ir = D(et.fileName), Yt = dl.getFormatContext(wt, e);
        return Zu.getAllFixes({
          fixId: kt,
          sourceFile: Ir,
          program: c,
          host: e,
          cancellationToken: d,
          formatContext: Yt,
          preferences: qt
        });
      }
      function ha(et, kt, wt = td) {
        P(), E.assert(et.type === "file");
        const qt = D(et.fileName);
        if (Ax(qt)) return Te;
        const Ir = dl.getFormatContext(kt, e), Yt = et.mode ?? (et.skipDestructiveCodeActions ? "SortAndCombine" : "All");
        return Gv.organizeImports(qt, Ir, e, c, wt, Yt);
      }
      function Ye(et, kt, wt, qt = td) {
        return Qse(M(), et, kt, e, dl.getFormatContext(wt, e), qt, k);
      }
      function Pt(et, kt) {
        const wt = typeof et == "string" ? kt : et;
        return da(wt) ? Promise.all(wt.map((qt) => ne(qt))) : ne(wt);
      }
      function ne(et) {
        const kt = (wt) => Eo(wt, g, T);
        return E.assertEqual(et.type, "install package"), e.installPackage ? e.installPackage({
          fileName: kt(et.file),
          packageName: et.packageName
        }) : Promise.reject("Host does not implement `installPackage`");
      }
      function tt(et, kt, wt, qt) {
        const Ir = qt ? dl.getFormatContext(qt, e).options : void 0;
        return qv.getDocCommentTemplateAtPosition(Xh(e, Ir), o.getCurrentSourceFile(et), kt, wt);
      }
      function re(et, kt, wt) {
        if (wt === 60) return !1;
        const qt = o.getCurrentSourceFile(et);
        if (Ok(qt, kt)) return !1;
        if (_se(qt, kt)) return wt === 123;
        if (HV(qt, kt)) return !1;
        switch (wt) {
          case 39:
          case 34:
          case 96:
            return !W0(qt, kt);
        }
        return !0;
      }
      function we(et, kt) {
        const wt = o.getCurrentSourceFile(et), qt = Tl(kt, wt);
        if (!qt) return;
        const Ir = qt.kind === 32 && qd(qt.parent) ? qt.parent.parent : sk(qt) && Im(qt.parent) ? qt.parent : void 0;
        if (Ir && Dt(Ir)) return { newText: `</${Ir.openingElement.tagName.getText(wt)}>` };
        const Yt = qt.kind === 32 && yd(qt.parent) ? qt.parent.parent : sk(qt) && Dv(qt.parent) ? qt.parent : void 0;
        if (Yt && Ve(Yt)) return { newText: "</>" };
      }
      function Ge(et, kt) {
        const wt = o.getCurrentSourceFile(et), qt = Tl(kt, wt);
        if (!qt || qt.parent.kind === 308) return;
        const Ir = "[a-zA-Z0-9:\\-\\._$]*";
        if (Dv(qt.parent.parent)) {
          const Yt = qt.parent.parent.openingFragment, Jt = qt.parent.parent.closingFragment;
          if (Ax(Yt) || Ax(Jt)) return;
          const $t = Yt.getStart(wt) + 1, Qt = Jt.getStart(wt) + 2;
          return kt !== $t && kt !== Qt ? void 0 : {
            ranges: [{
              start: $t,
              length: 0
            }, {
              start: Qt,
              length: 0
            }],
            wordPattern: Ir
          };
        } else {
          const Yt = cr(qt.parent, (os) => !!(qd(os) || Qb(os)));
          if (!Yt) return;
          E.assert(qd(Yt) || Qb(Yt), "tag should be opening or closing element");
          const Jt = Yt.parent.openingElement, $t = Yt.parent.closingElement, Qt = Jt.tagName.getStart(wt), ct = Jt.tagName.end, wn = $t.tagName.getStart(wt), Mi = $t.tagName.end;
          return Qt === Jt.getStart(wt) || wn === $t.getStart(wt) || ct === Jt.getEnd() || Mi === $t.getEnd() || !(Qt <= kt && kt <= ct || wn <= kt && kt <= Mi) || Jt.tagName.getText(wt) !== $t.tagName.getText(wt) ? void 0 : {
            ranges: [{
              start: Qt,
              length: ct - Qt
            }, {
              start: wn,
              length: Mi - wn
            }],
            wordPattern: Ir
          };
        }
      }
      function nt(et, kt) {
        return {
          lineStarts: et.getLineStarts(),
          firstLine: et.getLineAndCharacterOfPosition(kt.pos).line,
          lastLine: et.getLineAndCharacterOfPosition(kt.end).line
        };
      }
      function it(et, kt, wt) {
        const qt = o.getCurrentSourceFile(et), Ir = [], { lineStarts: Yt, firstLine: Jt, lastLine: $t } = nt(qt, kt);
        let Qt = wt || !1, ct = Number.MAX_VALUE;
        const wn = /* @__PURE__ */ new Map(), Mi = /* @__PURE__ */ new RegExp(/\S/), os = X9(qt, Yt[Jt]), cs = os ? "{/*" : "//";
        for (let xa = Jt; xa <= $t; xa++) {
          const oo = qt.text.substring(Yt[xa], qt.getLineEndOfPosition(Yt[xa])), To = Mi.exec(oo);
          To && (ct = Math.min(ct, To.index), wn.set(xa.toString(), To.index), oo.substr(To.index, cs.length) !== cs && (Qt = wt === void 0 || wt));
        }
        for (let xa = Jt; xa <= $t; xa++) {
          if (Jt !== $t && Yt[xa] === kt.end) continue;
          const oo = wn.get(xa.toString());
          oo !== void 0 && (os ? Ir.push(...ut(et, {
            pos: Yt[xa] + ct,
            end: qt.getLineEndOfPosition(Yt[xa])
          }, Qt, os)) : Qt ? Ir.push({
            newText: cs,
            span: {
              length: 0,
              start: Yt[xa] + ct
            }
          }) : qt.text.substr(Yt[xa] + oo, cs.length) === cs && Ir.push({
            newText: "",
            span: {
              length: cs.length,
              start: Yt[xa] + oo
            }
          }));
        }
        return Ir;
      }
      function ut(et, kt, wt, qt) {
        var Ir;
        const Yt = o.getCurrentSourceFile(et), Jt = [], { text: $t } = Yt;
        let Qt = !1, ct = wt || !1;
        const wn = [];
        let { pos: Mi } = kt;
        const os = qt !== void 0 ? qt : X9(Yt, Mi), cs = os ? "{/*" : "/*", xa = os ? "*/}" : "*/", oo = os ? "\\{\\/\\*" : "\\/\\*", To = os ? "\\*\\/\\}" : "\\*\\/";
        for (; Mi <= kt.end; ) {
          const ia = $t.substr(Mi, cs.length) === cs ? cs.length : 0, ja = W0(Yt, Mi + ia);
          if (ja)
            os && (ja.pos--, ja.end++), wn.push(ja.pos), ja.kind === 3 && wn.push(ja.end), Qt = !0, Mi = ja.end + 1;
          else {
            const _o = $t.substring(Mi, kt.end).search(`(${oo})|(${To})`);
            ct = wt !== void 0 ? wt : ct || !Tse($t, Mi, _o === -1 ? kt.end : Mi + _o), Mi = _o === -1 ? kt.end + 1 : Mi + _o + xa.length;
          }
        }
        if (ct || !Qt) {
          ((Ir = W0(Yt, kt.pos)) == null ? void 0 : Ir.kind) !== 2 && wy(wn, kt.pos, Fo), wy(wn, kt.end, Fo);
          const ia = wn[0];
          $t.substr(ia, cs.length) !== cs && Jt.push({
            newText: cs,
            span: {
              length: 0,
              start: ia
            }
          });
          for (let ja = 1; ja < wn.length - 1; ja++)
            $t.substr(wn[ja] - xa.length, xa.length) !== xa && Jt.push({
              newText: xa,
              span: {
                length: 0,
                start: wn[ja]
              }
            }), $t.substr(wn[ja], cs.length) !== cs && Jt.push({
              newText: cs,
              span: {
                length: 0,
                start: wn[ja]
              }
            });
          Jt.length % 2 !== 0 && Jt.push({
            newText: xa,
            span: {
              length: 0,
              start: wn[wn.length - 1]
            }
          });
        } else for (const ia of wn) {
          const ja = ia - xa.length > 0 ? ia - xa.length : 0, _o = $t.substr(ja, xa.length) === xa ? xa.length : 0;
          Jt.push({
            newText: "",
            span: {
              length: cs.length,
              start: ia - _o
            }
          });
        }
        return Jt;
      }
      function Qe(et, kt) {
        const { firstLine: wt, lastLine: qt } = nt(o.getCurrentSourceFile(et), kt);
        return wt === qt && kt.pos !== kt.end ? ut(et, kt, !0) : it(et, kt, !0);
      }
      function xt(et, kt) {
        const wt = o.getCurrentSourceFile(et), qt = [], { pos: Ir } = kt;
        let { end: Yt } = kt;
        Ir === Yt && (Yt += X9(wt, Ir) ? 2 : 1);
        for (let Jt = Ir; Jt <= Yt; Jt++) {
          const $t = W0(wt, Jt);
          if ($t) {
            switch ($t.kind) {
              case 2:
                qt.push(...it(et, {
                  end: $t.end,
                  pos: $t.pos + 1
                }, !1));
                break;
              case 3:
                qt.push(...ut(et, {
                  end: $t.end,
                  pos: $t.pos + 1
                }, !1));
            }
            Jt = $t.end + 1;
          }
        }
        return qt;
      }
      function Dt({ openingElement: et, closingElement: kt, parent: wt }) {
        return !Ov(et.tagName, kt.tagName) || Im(wt) && Ov(et.tagName, wt.openingElement.tagName) && Dt(wt);
      }
      function Ve({ closingFragment: et, parent: kt }) {
        return !!(et.flags & 262144) || Dv(kt) && Ve(kt);
      }
      function fr(et, kt, wt) {
        const qt = o.getCurrentSourceFile(et), Ir = dl.getRangeOfEnclosingComment(qt, kt);
        return Ir && (!wt || Ir.kind === 3) ? V0(Ir) : void 0;
      }
      function rr(et, kt) {
        P();
        const wt = D(et);
        d.throwIfCancellationRequested();
        const qt = wt.text, Ir = [];
        if (kt.length > 0 && !Qt(wt.fileName)) {
          const ct = Jt();
          let wn;
          for (; wn = ct.exec(qt); ) {
            d.throwIfCancellationRequested();
            const Mi = 3;
            E.assert(wn.length === kt.length + Mi);
            const os = wn[1], cs = wn.index + os.length;
            if (!W0(wt, cs)) continue;
            let xa;
            for (let To = 0; To < kt.length; To++) wn[To + Mi] && (xa = kt[To]);
            if (xa === void 0) return E.fail();
            if ($t(qt.charCodeAt(cs + xa.text.length))) continue;
            const oo = wn[2];
            Ir.push({
              descriptor: xa,
              message: oo,
              position: cs
            });
          }
        }
        return Ir;
        function Yt(ct) {
          return ct.replace(/[-[\]/{}()*+?.\\^$|]/g, "\\$&");
        }
        function Jt() {
          const ct = /(?:\/{2,}\s*)/.source, wn = /(?:\/\*+\s*)/.source, Mi = "(" + /(?:^(?:\s|\*)*)/.source + "|" + ct + "|" + wn + ")", os = "(?:" + or(kt, (To) => "(" + Yt(To.text) + ")").join("|") + ")", cs = /(?:$|\*\/)/.source, xa = /(?:.*?)/.source, oo = Mi + ("(" + os + xa + ")") + cs;
          return new RegExp(oo, "gim");
        }
        function $t(ct) {
          return ct >= 97 && ct <= 122 || ct >= 65 && ct <= 90 || ct >= 48 && ct <= 57;
        }
        function Qt(ct) {
          return ct.includes("/node_modules/");
        }
      }
      function Oe(et, kt, wt) {
        return P(), aM.getRenameInfo(c, D(et), kt, wt || {});
      }
      function rt(et, kt, wt, qt, Ir, Yt) {
        const [Jt, $t] = typeof kt == "number" ? [kt, void 0] : [kt.pos, kt.end];
        return {
          file: et,
          startPosition: Jt,
          endPosition: $t,
          program: M(),
          host: e,
          formatContext: dl.getFormatContext(qt, e),
          cancellationToken: d,
          preferences: wt,
          triggerReason: Ir,
          kind: Yt
        };
      }
      function ee(et, kt, wt) {
        return {
          file: et,
          program: M(),
          host: e,
          span: kt,
          preferences: wt,
          cancellationToken: d
        };
      }
      function q(et, kt) {
        return hH.getSmartSelectionRange(kt, o.getCurrentSourceFile(et));
      }
      function j(et, kt, wt = td, qt, Ir, Yt) {
        P();
        const Jt = D(et);
        return jk.getApplicableRefactors(rt(Jt, kt, wt, td, qt, Ir), Yt);
      }
      function Re(et, kt, wt = td) {
        P();
        const qt = D(et), Ir = E.checkDefined(c.getSourceFiles()), Yt = RD(et), Jt = AI(rt(qt, kt, wt, td)), $t = Joe(Jt?.all), Qt = Rn(Ir, (ct) => {
          const wn = RD(ct.fileName);
          return !c?.isSourceFileFromExternalLibrary(qt) && !(qt === D(ct.fileName) || Yt === ".ts" && wn === ".d.ts" || Yt === ".d.ts" && ta(nl(ct.fileName), "lib.") && wn === ".d.ts") && (Yt === wn || (Yt === ".tsx" && wn === ".ts" || Yt === ".jsx" && wn === ".js") && !$t) ? ct.fileName : void 0;
        });
        return {
          newFileName: Boe(qt, c, e, Jt),
          files: Qt
        };
      }
      function $e(et, kt, wt, qt, Ir, Yt = td, Jt) {
        P();
        const $t = D(et);
        return jk.getEditsForRefactor(rt($t, wt, Yt, kt), qt, Ir, Jt);
      }
      function ye(et, kt) {
        return kt === 0 ? {
          line: 0,
          character: 0
        } : k.toLineColumnOffset(et, kt);
      }
      function Ke(et, kt) {
        P();
        const wt = Bk.resolveCallHierarchyDeclaration(c, G_(D(et), kt));
        return wt && Dq(wt, (qt) => Bk.createCallHierarchyItem(c, qt));
      }
      function pr(et, kt) {
        P();
        const wt = D(et), qt = wq(Bk.resolveCallHierarchyDeclaration(c, kt === 0 ? wt : G_(wt, kt)));
        return qt ? Bk.getIncomingCalls(c, qt, d) : [];
      }
      function Pr(et, kt) {
        P();
        const wt = D(et), qt = wq(Bk.resolveCallHierarchyDeclaration(c, kt === 0 ? wt : G_(wt, kt)));
        return qt ? Bk.getOutgoingCalls(c, qt) : [];
      }
      function vr(et, kt, wt = td) {
        P();
        const qt = D(et);
        return _H.provideInlayHints(ee(qt, kt, wt));
      }
      function fn(et, kt, wt, qt, Ir) {
        return fH.mapCode(o.getCurrentSourceFile(et), kt, wt, e, dl.getFormatContext(qt, e), Ir);
      }
      const Cr = {
        dispose: z,
        cleanupSemanticCache: L,
        getSyntacticDiagnostics: H,
        getSemanticDiagnostics: U,
        getRegionSemanticDiagnostics: pe,
        getSuggestionDiagnostics: $,
        getCompilerOptionsDiagnostics: Se,
        getSyntacticClassifications: ra,
        getSemanticClassifications: Zr,
        getEncodedSyntacticClassifications: Me,
        getEncodedSemanticClassifications: ni,
        getCompletionsAtPosition: Be,
        getCompletionEntryDetails: ce,
        getCompletionEntrySymbol: oe,
        getSignatureHelpItems: zr,
        getQuickInfoAtPosition: ge,
        getDefinitionAtPosition: ke,
        getDefinitionAndBoundSpan: ae,
        getImplementationAtPosition: ue,
        getTypeDefinitionAtPosition: Ce,
        getReferencesAtPosition: Ft,
        findReferences: Xt,
        getFileReferences: Ar,
        getDocumentHighlights: Ie,
        getNameOrDottedNameSpan: Gr,
        getBreakpointStatementAtPosition: Nt,
        getNavigateToItems: Ct,
        getRenameInfo: Oe,
        getSmartSelectionRange: q,
        findRenameLocations: Xe,
        getNavigationBarItems: Li,
        getNavigationTree: ri,
        getOutliningSpans: vt,
        getTodoComments: rr,
        getBraceMatchingAtPosition: Ur,
        getIndentationAtPosition: $n,
        getFormattingEditsForRange: zn,
        getFormattingEditsForDocument: na,
        getFormattingEditsAfterKeystroke: Ea,
        getDocCommentTemplateAtPosition: tt,
        isValidBraceCompletionAtPosition: re,
        getJsxClosingTagAtPosition: we,
        getLinkedEditingRangeAtPosition: Ge,
        getSpanOfEnclosingComment: fr,
        getCodeFixesAtPosition: Da,
        getCombinedCodeFix: Lr,
        applyCodeActionCommand: Pt,
        organizeImports: ha,
        getEditsForFileRename: Ye,
        getEmitOutput: Kt,
        getNonBoundSourceFile: _i,
        getProgram: M,
        getCurrentProgram: () => c,
        getAutoImportProvider: R,
        updateIsDefinitionOfReferencedSymbols: G,
        getApplicableRefactors: j,
        getEditsForRefactor: $e,
        getMoveToRefactoringFileSuggestions: Re,
        toLineColumnOffset: ye,
        getSourceMapper: () => k,
        clearSourceMapperCache: () => k.clearCache(),
        prepareCallHierarchy: Ke,
        provideCallHierarchyIncomingCalls: pr,
        provideCallHierarchyOutgoingCalls: Pr,
        toggleLineComment: it,
        toggleMultilineComment: ut,
        commentSelection: Qe,
        uncommentSelection: xt,
        provideInlayHints: vr,
        getSupportedCodeFixes: yG,
        preparePasteEditsForFile: Ae,
        getPasteEdits: Ne,
        mapCode: fn
      };
      switch (a) {
        case 0:
          break;
        case 1:
          WTe.forEach((et) => Cr[et] = () => {
            throw new Error(`LanguageService Operation: ${et} not allowed in LanguageServiceMode.PartialSemantic`);
          });
          break;
        case 2:
          kVe.forEach((et) => Cr[et] = () => {
            throw new Error(`LanguageService Operation: ${et} not allowed in LanguageServiceMode.Syntactic`);
          });
          break;
        default:
          E.assertNever(a);
      }
      return Cr;
    }
    function bG(e) {
      return e.nameTable || CVe(e), e.nameTable;
    }
    function CVe(e) {
      const t = e.nameTable = /* @__PURE__ */ new Map();
      e.forEachChild(function n(i) {
        if (Fe(i) && !BV(i) && i.escapedText || ep(i) && EVe(i)) {
          const a = yD(i);
          t.set(a, t.get(a) === void 0 ? i.pos : -1);
        } else if (Oi(i)) {
          const a = i.escapedText;
          t.set(a, t.get(a) === void 0 ? i.pos : -1);
        }
        if (Fa(i, n), Jf(i)) for (const a of i.jsDoc) Fa(a, n);
      });
    }
    function EVe(e) {
      return pg(e) || e.parent.kind === 284 || PVe(e) || hA(e);
    }
    function FI(e) {
      const t = DVe(e);
      return t && (bs(t.parent) || Yb(t.parent)) ? t : void 0;
    }
    function DVe(e) {
      switch (e.kind) {
        case 11:
        case 15:
        case 9:
          if (e.parent.kind === 168) return fB(e.parent.parent) ? e.parent.parent : void 0;
        case 80:
        case 296:
          return fB(e.parent) && (e.parent.parent.kind === 211 || e.parent.parent.kind === 293) && e.parent.name === e ? e.parent : void 0;
      }
    }
    function wVe(e, t) {
      const n = FI(e);
      if (n) {
        const i = t.getContextualType(n.parent), a = i && LI(n, t, i, !1);
        if (a && a.length === 1) return js(a);
      }
      return t.getSymbolAtLocation(e);
    }
    function LI(e, t, n, i) {
      n = n.getNonNullableType();
      const a = mI(e.name);
      if (!a) return Te;
      if (!n.isUnion()) {
        const _ = n.getProperty(a);
        return _ ? [_] : Te;
      }
      const o = bs(e.parent) || Yb(e.parent) ? dn(n.types, (_) => !t.isTypeInvalidDueToUnionDiscriminant(_, e.parent)) : n.types, c = Rn(o, (_) => _.getProperty(a));
      if (i && (c.length === 0 || c.length === n.types.length)) {
        const _ = n.getProperty(a);
        if (_) return [_];
      }
      return !o.length && !c.length ? Rn(n.types, (_) => _.getProperty(a)) : Z1(c, S0);
    }
    function PVe(e) {
      return e && e.parent && e.parent.kind === 213 && e.parent.argumentExpression === e;
    }
    function Cce(e) {
      if (Cl) return jn(Xn(us(Cl.getExecutingFilePath())), S3(e));
      throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ");
    }
    Dee(bVe());
    function UTe(e, t, n) {
      const i = [];
      n = Xq(n, i);
      const a = da(e) ? e : [e], o = WN(void 0, void 0, A, n, a, t, !0);
      return o.diagnostics = zi(o.diagnostics, i), o;
    }
    var SG = {};
    gi(SG, { spanInSourceFileAtLocation: () => AVe });
    function AVe(e, t) {
      if (e.isDeclarationFile) return;
      let n = xi(e, t);
      const i = e.getLineAndCharacterOfPosition(t).line;
      if (e.getLineAndCharacterOfPosition(n.getStart(e)).line > i) {
        const h = Tl(n.pos, e);
        if (!h || e.getLineAndCharacterOfPosition(h.getEnd()).line !== i) return;
        n = h;
      }
      if (n.flags & 33554432) return;
      return g(n);
      function a(h, S) {
        const T = e2(h) ? Ya(h.modifiers, pl) : void 0;
        return Vc(T ? gs(e.text, T.end) : h.getStart(e), (S || h).getEnd());
      }
      function o(h, S) {
        return a(h, c2(S, S.parent, e));
      }
      function c(h, S) {
        return h && i === e.getLineAndCharacterOfPosition(h.getStart(e)).line ? g(h) : g(S);
      }
      function _(h, S, T) {
        if (h) {
          const k = h.indexOf(S);
          if (k >= 0) {
            let D = k, P = k + 1;
            for (; D > 0 && T(h[D - 1]); ) D--;
            for (; P < h.length && T(h[P]); ) P++;
            return Vc(gs(e.text, h[D].pos), h[P - 1].end);
          }
        }
        return a(S);
      }
      function u(h) {
        return g(Tl(h.pos, e));
      }
      function d(h) {
        return g(c2(h, h.parent, e));
      }
      function g(h) {
        if (h) {
          const { parent: $ } = h;
          switch (h.kind) {
            case 244:
              return T(h.declarationList.declarations[0]);
            case 261:
            case 173:
            case 172:
              return T(h);
            case 170:
              return D(h);
            case 263:
            case 175:
            case 174:
            case 178:
            case 179:
            case 177:
            case 219:
            case 220:
              return N(h);
            case 242:
              if (Ib(h)) return M(h);
            case 269:
              return R(h);
            case 300:
              return R(h.block);
            case 245:
              return a(h.expression);
            case 254:
              return a(h.getChildAt(0), h.expression);
            case 248:
              return o(h, h.expression);
            case 247:
              return g(h.statement);
            case 260:
              return a(h.getChildAt(0));
            case 246:
              return o(h, h.expression);
            case 257:
              return g(h.statement);
            case 253:
            case 252:
              return a(h.getChildAt(0), h.label);
            case 249:
              return L(h);
            case 250:
              return o(h, h.expression);
            case 251:
              return G(h);
            case 256:
              return o(h, h.expression);
            case 297:
            case 298:
              return g(h.statements[0]);
            case 259:
              return R(h.tryBlock);
            case 258:
              return a(h, h.expression);
            case 278:
              return a(h, h.expression);
            case 272:
              return a(h, h.moduleReference);
            case 273:
              return a(h, h.moduleSpecifier);
            case 279:
              return a(h, h.moduleSpecifier);
            case 268:
              if (m1(h) !== 1) return;
            case 264:
            case 267:
            case 307:
            case 209:
              return a(h);
            case 255:
              return g(h.statement);
            case 171:
              return _($.modifiers, h, pl);
            case 207:
            case 208:
              return z(h);
            case 265:
            case 266:
              return;
            case 27:
            case 1:
              return c(Tl(h.pos, e));
            case 28:
              return u(h);
            case 19:
              return U(h);
            case 20:
              return pe(h);
            case 24:
              return ie(h);
            case 21:
              return W(h);
            case 22:
              return Q(h);
            case 59:
              return se(h);
            case 32:
            case 30:
              return he(h);
            case 117:
              return fe(h);
            case 93:
            case 85:
            case 98:
              return d(h);
            case 165:
              return de(h);
            default:
              if (U0(h)) return H(h);
              if ((h.kind === 80 || h.kind === 231 || h.kind === 304 || h.kind === 305) && U0($)) return a(h);
              if (h.kind === 227) {
                const { left: Se, operatorToken: Be } = h;
                if (U0(Se)) return H(Se);
                if (Be.kind === 64 && U0(h.parent)) return a(h);
                if (Be.kind === 28) return g(Se);
              }
              if (fg(h)) switch ($.kind) {
                case 247:
                  return u(h);
                case 171:
                  return g(h.parent);
                case 249:
                case 251:
                  return a(h);
                case 227:
                  if (h.parent.operatorToken.kind === 28) return a(h);
                  break;
                case 220:
                  if (h.parent.body === h) return a(h);
                  break;
              }
              switch (h.parent.kind) {
                case 304:
                  if (h.parent.name === h && !U0(h.parent.parent)) return g(h.parent.initializer);
                  break;
                case 217:
                  if (h.parent.type === h) return d(h.parent.type);
                  break;
                case 261:
                case 170: {
                  const { initializer: Se, type: Be } = h.parent;
                  if (Se === h || Be === h || Uh(h.kind)) return u(h);
                  break;
                }
                case 227: {
                  const { left: Se } = h.parent;
                  if (U0(Se) && h !== Se) return u(h);
                  break;
                }
                default:
                  if (Ra(h.parent) && h.parent.type === h) return u(h);
              }
              return g(h.parent);
          }
        }
        function S($) {
          return iu($.parent) && $.parent.declarations[0] === $ ? a(Tl($.pos, e, $.parent), $) : a($);
        }
        function T($) {
          if ($.parent.parent.kind === 250) return g($.parent.parent);
          const Se = $.parent;
          if (Ja($.name)) return z($.name);
          if (dS($) && $.initializer || Qn($, 32) || Se.parent.kind === 251) return S($);
          if (iu($.parent) && $.parent.declarations[0] !== $) return g(Tl($.pos, e, $.parent));
        }
        function k($) {
          return !!$.initializer || $.dotDotDotToken !== void 0 || Qn($, 3);
        }
        function D($) {
          if (Ja($.name)) return z($.name);
          if (k($)) return a($);
          {
            const Se = $.parent, Be = Se.parameters.indexOf($);
            return E.assert(Be !== -1), Be !== 0 ? D(Se.parameters[Be - 1]) : g(Se.body);
          }
        }
        function P($) {
          return Qn($, 32) || $.parent.kind === 264 && $.kind !== 177;
        }
        function N($) {
          if ($.body)
            return P($) ? a($) : g($.body);
        }
        function M($) {
          const Se = $.statements.length ? $.statements[0] : $.getLastToken();
          return P($.parent) ? c($.parent, Se) : g(Se);
        }
        function R($) {
          switch ($.parent.kind) {
            case 268:
              if (m1($.parent) !== 1) return;
            case 248:
            case 246:
            case 250:
              return c($.parent, $.statements[0]);
            case 249:
            case 251:
              return c(Tl($.pos, e, $.parent), $.statements[0]);
          }
          return g($.statements[0]);
        }
        function G($) {
          if ($.initializer.kind === 262) {
            const Se = $.initializer;
            if (Se.declarations.length > 0) return g(Se.declarations[0]);
          } else return g($.initializer);
        }
        function L($) {
          if ($.initializer) return G($);
          if ($.condition) return a($.condition);
          if ($.incrementor) return a($.incrementor);
        }
        function z($) {
          const Se = bt($.elements, (Be) => Be.kind !== 233 ? Be : void 0);
          return Se ? g(Se) : $.parent.kind === 209 ? a($.parent) : S($.parent);
        }
        function H($) {
          E.assert($.kind !== 208 && $.kind !== 207);
          const Se = bt($.kind === 210 ? $.elements : $.properties, (Be) => Be.kind !== 233 ? Be : void 0);
          return Se ? g(Se) : a($.parent.kind === 227 ? $.parent : $);
        }
        function U($) {
          switch ($.parent.kind) {
            case 267:
              const Se = $.parent;
              return c(Tl($.pos, e, $.parent), Se.members.length ? Se.members[0] : Se.getLastToken(e));
            case 264:
              const Be = $.parent;
              return c(Tl($.pos, e, $.parent), Be.members.length ? Be.members[0] : Be.getLastToken(e));
            case 270:
              return c($.parent.parent, $.parent.clauses[0]);
          }
          return g($.parent);
        }
        function pe($) {
          switch ($.parent.kind) {
            case 269:
              if (m1($.parent.parent) !== 1) return;
            case 267:
            case 264:
              return a($);
            case 242:
              if (Ib($.parent)) return a($);
            case 300:
              return g(Wo($.parent.statements));
            case 270:
              const Se = $.parent, Be = Wo(Se.clauses);
              return Be ? g(Wo(Be.statements)) : void 0;
            case 207:
              const ce = $.parent;
              return g(Wo(ce.elements) || ce);
            default:
              if (U0($.parent)) {
                const oe = $.parent;
                return a(Wo(oe.properties) || oe);
              }
              return g($.parent);
          }
        }
        function ie($) {
          switch ($.parent.kind) {
            case 208:
              const Se = $.parent;
              return a(Wo(Se.elements) || Se);
            default:
              if (U0($.parent)) {
                const Be = $.parent;
                return a(Wo(Be.elements) || Be);
              }
              return g($.parent);
          }
        }
        function W($) {
          return $.parent.kind === 247 || $.parent.kind === 214 || $.parent.kind === 215 ? u($) : $.parent.kind === 218 ? d($) : g($.parent);
        }
        function Q($) {
          switch ($.parent.kind) {
            case 219:
            case 263:
            case 220:
            case 175:
            case 174:
            case 178:
            case 179:
            case 177:
            case 248:
            case 247:
            case 249:
            case 251:
            case 214:
            case 215:
            case 218:
              return u($);
            default:
              return g($.parent);
          }
        }
        function se($) {
          return Ra($.parent) || $.parent.kind === 304 || $.parent.kind === 170 ? u($) : g($.parent);
        }
        function he($) {
          return $.parent.kind === 217 ? d($) : g($.parent);
        }
        function fe($) {
          return $.parent.kind === 247 ? o($, $.parent.expression) : g($.parent);
        }
        function de($) {
          return $.parent.kind === 251 ? d($) : g($.parent);
        }
      }
    }
    var Bk = {};
    gi(Bk, {
      createCallHierarchyItem: () => Ece,
      getIncomingCalls: () => jVe,
      getOutgoingCalls: () => $Ve,
      resolveCallHierarchyDeclaration: () => YTe
    });
    function NVe(e) {
      return (Lo(e) || Hc(e)) && Bl(e);
    }
    function VTe(e) {
      return ga(e) || ci(e);
    }
    function MI(e) {
      return (Lo(e) || Bo(e) || Hc(e)) && VTe(e.parent) && e === e.parent.initializer && Fe(e.parent.name) && (!!(x0(e.parent) & 2) || ga(e.parent));
    }
    function qTe(e) {
      return Pi(e) || Qc(e) || Xc(e) || Lo(e) || sl(e) || Hc(e) || Bc(e) || hc(e) || gd(e) || Dp(e) || ef(e);
    }
    function vE(e) {
      return Pi(e) || Qc(e) && Fe(e.name) || Xc(e) || sl(e) || Bc(e) || hc(e) || gd(e) || Dp(e) || ef(e) || NVe(e) || MI(e);
    }
    function GTe(e) {
      return Pi(e) ? e : Bl(e) ? e.name : MI(e) ? e.parent.name : E.checkDefined(e.modifiers && xr(e.modifiers, HTe));
    }
    function HTe(e) {
      return e.kind === 90;
    }
    function $Te(e, t) {
      const n = GTe(t);
      return n && e.getSymbolAtLocation(n);
    }
    function IVe(e, t) {
      if (Pi(t)) return {
        text: t.fileName,
        pos: 0,
        end: 0
      };
      if ((Xc(t) || sl(t)) && !Bl(t)) {
        const a = t.modifiers && xr(t.modifiers, HTe);
        if (a) return {
          text: "default",
          pos: a.getStart(),
          end: a.getEnd()
        };
      }
      if (Bc(t)) {
        const a = gs(t.getSourceFile().text, Em(t).pos), o = a + 6, c = e.getTypeChecker(), _ = c.getSymbolAtLocation(t.parent);
        return {
          text: `${_ ? `${c.symbolToString(_, t.parent)} ` : ""}static {}`,
          pos: a,
          end: o
        };
      }
      const n = MI(t) ? t.parent.name : E.checkDefined(va(t), "Expected call hierarchy item to have a name");
      let i = Fe(n) ? On(n) : ep(n) ? n.text : _s(n) && ep(n.expression) ? n.expression.text : void 0;
      if (i === void 0) {
        const a = e.getTypeChecker(), o = a.getSymbolAtLocation(n);
        o && (i = a.symbolToString(o, t));
      }
      if (i === void 0) {
        const a = bU();
        i = e6((o) => a.writeNode(4, t, t.getSourceFile(), o));
      }
      return {
        text: i,
        pos: n.getStart(),
        end: n.getEnd()
      };
    }
    function OVe(e) {
      var t, n, i, a;
      if (MI(e))
        return ga(e.parent) && Zn(e.parent.parent) ? Hc(e.parent.parent) ? (t = U7(e.parent.parent)) == null ? void 0 : t.getText() : (n = e.parent.parent.name) == null ? void 0 : n.getText() : Vd(e.parent.parent.parent.parent) && Fe(e.parent.parent.parent.parent.parent.name) ? e.parent.parent.parent.parent.parent.name.getText() : void 0;
      switch (e.kind) {
        case 178:
        case 179:
        case 175:
          return e.parent.kind === 211 ? (i = U7(e.parent)) == null ? void 0 : i.getText() : (a = va(e.parent)) == null ? void 0 : a.getText();
        case 263:
        case 264:
        case 268:
          if (Vd(e.parent) && Fe(e.parent.parent.name)) return e.parent.parent.name.getText();
      }
    }
    function XTe(e, t) {
      if (t.body) return t;
      if (yc(t)) return Xg(t.parent);
      if (Xc(t) || hc(t)) {
        const n = $Te(e, t);
        return n && n.valueDeclaration && So(n.valueDeclaration) && n.valueDeclaration.body ? n.valueDeclaration : void 0;
      }
      return t;
    }
    function QTe(e, t) {
      const n = $Te(e, t);
      let i;
      if (n && n.declarations) {
        const a = v7(n.declarations), o = or(n.declarations, (u) => ({
          file: u.getSourceFile().fileName,
          pos: u.pos
        }));
        a.sort((u, d) => Du(o[u].file, o[d].file) || o[u].pos - o[d].pos);
        const c = or(a, (u) => n.declarations[u]);
        let _;
        for (const u of c) vE(u) && ((!_ || _.parent !== u.parent || _.end !== u.pos) && (i = kr(i, u)), _ = u);
      }
      return i;
    }
    function TG(e, t) {
      return Bc(t) ? t : So(t) ? XTe(e, t) ?? QTe(e, t) ?? t : QTe(e, t) ?? t;
    }
    function YTe(e, t) {
      const n = e.getTypeChecker();
      let i = !1;
      for (; ; ) {
        if (vE(t)) return TG(n, t);
        if (qTe(t)) {
          const a = cr(t, vE);
          return a && TG(n, a);
        }
        if (pg(t)) {
          if (vE(t.parent)) return TG(n, t.parent);
          if (qTe(t.parent)) {
            const a = cr(t.parent, vE);
            return a && TG(n, a);
          }
          return VTe(t.parent) && t.parent.initializer && MI(t.parent.initializer) ? t.parent.initializer : void 0;
        }
        if (yc(t))
          return vE(t.parent) ? t.parent : void 0;
        if (t.kind === 126 && Bc(t.parent)) {
          t = t.parent;
          continue;
        }
        if (ci(t) && t.initializer && MI(t.initializer)) return t.initializer;
        if (!i) {
          let a = n.getSymbolAtLocation(t);
          if (a && (a.flags & 2097152 && (a = n.getAliasedSymbol(a)), a.valueDeclaration)) {
            i = !0, t = a.valueDeclaration;
            continue;
          }
        }
        return;
      }
    }
    function Ece(e, t) {
      const n = t.getSourceFile(), i = IVe(e, t), a = OVe(t), o = o2(t), c = Ww(t), _ = Vc(gs(n.text, t.getFullStart(), !1, !0), t.getEnd()), u = Vc(i.pos, i.end);
      return {
        file: n.fileName,
        kind: o,
        kindModifiers: c,
        name: i.text,
        containerName: a,
        span: _,
        selectionSpan: u
      };
    }
    function FVe(e) {
      return e !== void 0;
    }
    function LVe(e) {
      if (e.kind === Jo.EntryKind.Node) {
        const { node: t } = e;
        if (LV(t, !0, !0) || tse(t, !0, !0) || rse(t, !0, !0) || nse(t, !0, !0) || sE(t) || JV(t)) {
          const n = t.getSourceFile();
          return {
            declaration: cr(t, vE) || n,
            range: tq(t, n)
          };
        }
      }
    }
    function ZTe(e) {
      return Hs(e.declaration);
    }
    function MVe(e, t) {
      return {
        from: e,
        fromSpans: t
      };
    }
    function RVe(e, t) {
      return MVe(Ece(e, t[0].declaration), or(t, (n) => V0(n.range)));
    }
    function jVe(e, t, n) {
      if (Pi(t) || Qc(t) || Bc(t)) return [];
      const i = GTe(t), a = dn(Jo.findReferenceOrRenameEntries(e, n, e.getSourceFiles(), i, 0, { use: Jo.FindReferencesUse.References }, LVe), FVe);
      return a ? BC(a, ZTe, (o) => RVe(e, o)) : [];
    }
    function BVe(e, t) {
      function n(a) {
        const o = xv(a) ? a.tag : Gu(a) ? a.tagName : jo(a) || Bc(a) ? a : a.expression, c = YTe(e, o);
        if (c) {
          const _ = tq(o, a.getSourceFile());
          if (da(c)) for (const u of c) t.push({
            declaration: u,
            range: _
          });
          else t.push({
            declaration: c,
            range: _
          });
        }
      }
      function i(a) {
        if (a && !(a.flags & 33554432)) {
          if (vE(a)) {
            if (Zn(a))
              for (const o of a.members) o.name && _s(o.name) && i(o.name.expression);
            return;
          }
          switch (a.kind) {
            case 80:
            case 272:
            case 273:
            case 279:
            case 265:
            case 266:
              return;
            case 176:
              n(a);
              return;
            case 217:
            case 235:
              i(a.expression);
              return;
            case 261:
            case 170:
              i(a.name), i(a.initializer);
              return;
            case 214:
              n(a), i(a.expression), bt(a.arguments, i);
              return;
            case 215:
              n(a), i(a.expression), bt(a.arguments, i);
              return;
            case 216:
              n(a), i(a.tag), i(a.template);
              return;
            case 287:
            case 286:
              n(a), i(a.tagName), i(a.attributes);
              return;
            case 171:
              n(a), i(a.expression);
              return;
            case 212:
            case 213:
              n(a), Fa(a, i);
              break;
            case 239:
              i(a.expression);
              return;
          }
          Sm(a) || Fa(a, i);
        }
      }
      return i;
    }
    function JVe(e, t) {
      bt(e.statements, t);
    }
    function zVe(e, t) {
      !Qn(e, 128) && e.body && Vd(e.body) && bt(e.body.statements, t);
    }
    function WVe(e, t, n) {
      const i = XTe(e, t);
      i && (bt(i.parameters, n), n(i.body));
    }
    function UVe(e, t) {
      t(e.body);
    }
    function VVe(e, t) {
      bt(e.modifiers, t);
      const n = Mb(e);
      n && t(n.expression);
      for (const i of e.members)
        vd(i) && bt(i.modifiers, t), ga(i) ? t(i.initializer) : yc(i) && i.body ? (bt(i.parameters, t), t(i.body)) : Bc(i) && t(i);
    }
    function qVe(e, t) {
      const n = [], i = BVe(e, n);
      switch (t.kind) {
        case 308:
          JVe(t, i);
          break;
        case 268:
          zVe(t, i);
          break;
        case 263:
        case 219:
        case 220:
        case 175:
        case 178:
        case 179:
          WVe(e.getTypeChecker(), t, i);
          break;
        case 264:
        case 232:
          VVe(t, i);
          break;
        case 176:
          UVe(t, i);
          break;
        default:
          E.assertNever(t);
      }
      return n;
    }
    function GVe(e, t) {
      return {
        to: e,
        fromSpans: t
      };
    }
    function HVe(e, t) {
      return GVe(Ece(e, t[0].declaration), or(t, (n) => V0(n.range)));
    }
    function $Ve(e, t) {
      return t.flags & 33554432 || gd(t) ? [] : BC(qVe(e, t), ZTe, (n) => HVe(e, n));
    }
    var Dce = {};
    gi(Dce, { v2020: () => KTe });
    var KTe = {};
    gi(KTe, {
      TokenEncodingConsts: () => ETe,
      TokenModifier: () => wTe,
      TokenType: () => DTe,
      getEncodedSemanticClassifications: () => bce,
      getSemanticClassifications: () => PTe
    });
    var Zu = {};
    gi(Zu, {
      PreserveOptionalFlags: () => pEe,
      addNewNodeForMemberSymbol: () => dEe,
      codeFixAll: () => lo,
      createCodeFixAction: () => Va,
      createCodeFixActionMaybeFixAll: () => Ace,
      createCodeFixActionWithoutFixAll: () => Zd,
      createCombinedCodeActions: () => Jk,
      createFileTextChanges: () => exe,
      createImportAdder: () => d2,
      createImportSpecifierResolver: () => rGe,
      createMissingMemberNodes: () => Yle,
      createSignatureDeclarationFromCallExpression: () => Zle,
      createSignatureDeclarationFromSignature: () => $G,
      createStubbedBody: () => qL,
      eachDiagnostic: () => zk,
      findAncestorMatchingSpan: () => aue,
      generateAccessorFromProperty: () => TEe,
      getAccessorConvertiblePropertyAtPosition: () => CEe,
      getAllFixes: () => ZVe,
      getFixes: () => YVe,
      getImportCompletionAction: () => nGe,
      getImportKind: () => OG,
      getJSDocTypedefNodes: () => eGe,
      getNoopSymbolTrackerWithResolver: () => SE,
      getPromoteTypeOnlyCompletionAction: () => iGe,
      getSupportedErrorCodes: () => XVe,
      importFixName: () => Tke,
      importSymbols: () => tT,
      parameterShouldGetTypeFromJSDoc: () => Nxe,
      registerCodeFix: () => ps,
      setJsonCompilerOptionValue: () => nue,
      setJsonCompilerOptionValues: () => rue,
      tryGetAutoImportableReferenceFromTypeNode: () => m2,
      typeNodeToAutoImportableTypeNode: () => Kle,
      typePredicateToAutoImportableTypeNode: () => hEe,
      typeToAutoImportableTypeNode: () => XG,
      typeToMinimizedReferenceType: () => gEe
    });
    var wce = Up(), Pce = /* @__PURE__ */ new Map();
    function Zd(e, t, n) {
      return Nce(e, l2(n), t, void 0, void 0);
    }
    function Va(e, t, n, i, a, o) {
      return Nce(e, l2(n), t, i, l2(a), o);
    }
    function Ace(e, t, n, i, a, o) {
      return Nce(e, l2(n), t, i, a && l2(a), o);
    }
    function Nce(e, t, n, i, a, o) {
      return {
        fixName: e,
        description: t,
        changes: n,
        fixId: i,
        fixAllDescription: a,
        commands: o ? [o] : void 0
      };
    }
    function ps(e) {
      for (const t of e.errorCodes)
        Ice = void 0, wce.add(String(t), e);
      if (e.fixIds) for (const t of e.fixIds)
        E.assert(!Pce.has(t)), Pce.set(t, e);
    }
    var Ice;
    function XVe() {
      return Ice ?? (Ice = ma(wce.keys()));
    }
    function QVe(e, t) {
      const { errorCodes: n } = e;
      let i = 0;
      for (const o of t)
        if (Gi(n, o.code) && i++, i > 1) break;
      const a = i < 2;
      return ({ fixId: o, fixAllDescription: c, ..._ }) => a ? _ : {
        ..._,
        fixId: o,
        fixAllDescription: c
      };
    }
    function YVe(e) {
      const t = txe(e);
      return ks(wce.get(String(e.errorCode)), (n) => or(n.getCodeActions(e), QVe(n, t)));
    }
    function ZVe(e) {
      return Pce.get(ns(e.fixId, Ta)).getAllCodeActions(e);
    }
    function Jk(e, t) {
      return {
        changes: e,
        commands: t
      };
    }
    function exe(e, t) {
      return {
        fileName: e,
        textChanges: t
      };
    }
    function lo(e, t, n) {
      const i = [];
      return Jk(on.ChangeTracker.with(e, (a) => zk(e, t, (o) => n(a, o, i))), i.length === 0 ? void 0 : i);
    }
    function zk(e, t, n) {
      for (const i of txe(e)) Gi(t, i.code) && n(i);
    }
    function txe({ program: e, sourceFile: t, cancellationToken: n }) {
      const i = [
        ...e.getSemanticDiagnostics(t, n),
        ...e.getSyntacticDiagnostics(t, n),
        ...Vq(t, e, n)
      ];
      return U_(e.getCompilerOptions()) && i.push(...e.getDeclarationDiagnostics(t, n)), i;
    }
    var Oce = "addConvertToUnknownForNonOverlappingTypes", rxe = [p.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];
    ps({
      errorCodes: rxe,
      getCodeActions: function(t) {
        const n = ixe(t.sourceFile, t.span.start);
        if (n !== void 0)
          return [Va(Oce, on.ChangeTracker.with(t, (i) => nxe(i, t.sourceFile, n)), p.Add_unknown_conversion_for_non_overlapping_types, Oce, p.Add_unknown_to_all_conversions_of_non_overlapping_types)];
      },
      fixIds: [Oce],
      getAllCodeActions: (e) => lo(e, rxe, (t, n) => {
        const i = ixe(n.file, n.start);
        i && nxe(t, n.file, i);
      })
    });
    function nxe(e, t, n) {
      const i = A6(n) ? A.createAsExpression(n.expression, A.createKeywordTypeNode(159)) : A.createTypeAssertion(A.createKeywordTypeNode(159), n.expression);
      e.replaceNode(t, n.expression, i);
    }
    function ixe(e, t) {
      if (!rn(e))
        return cr(xi(e, t), (n) => A6(n) || ZO(n));
    }
    ps({
      errorCodes: [
        p.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,
        p.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,
        p.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code
      ],
      getCodeActions: function(t) {
        const { sourceFile: n } = t;
        return [Zd("addEmptyExportDeclaration", on.ChangeTracker.with(t, (i) => {
          const a = A.createExportDeclaration(void 0, !1, A.createNamedExports([]), void 0);
          i.insertNodeAtEndOfScope(n, n, a);
        }), p.Add_export_to_make_this_file_into_a_module)];
      }
    });
    var Fce = "addMissingAsync", axe = [
      p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,
      p.Type_0_is_not_assignable_to_type_1.code,
      p.Type_0_is_not_comparable_to_type_1.code
    ];
    ps({
      fixIds: [Fce],
      errorCodes: axe,
      getCodeActions: function(t) {
        const { sourceFile: n, errorCode: i, cancellationToken: a, program: o, span: c } = t, _ = xr(o.getTypeChecker().getDiagnostics(n, a), eqe(c, i)), u = oxe(n, _ && _.relatedInformation && xr(_.relatedInformation, (g) => g.code === p.Did_you_mean_to_mark_this_function_as_async.code));
        return u ? [sxe(t, u, (g) => on.ChangeTracker.with(t, g))] : void 0;
      },
      getAllCodeActions: (e) => {
        const { sourceFile: t } = e, n = /* @__PURE__ */ new Set();
        return lo(e, axe, (i, a) => {
          const o = oxe(t, a.relatedInformation && xr(a.relatedInformation, (_) => _.code === p.Did_you_mean_to_mark_this_function_as_async.code));
          return o ? sxe(e, o, (_) => (_(i), []), n) : void 0;
        });
      }
    });
    function sxe(e, t, n, i) {
      return Va(Fce, n((a) => KVe(a, e.sourceFile, t, i)), p.Add_async_modifier_to_containing_function, Fce, p.Add_all_missing_async_modifiers);
    }
    function KVe(e, t, n, i) {
      if (i && i.has(Hs(n)))
        return;
      i?.add(Hs(n));
      const a = A.replaceModifiers(no(n, !0), A.createNodeArray(A.createModifiersFromModifierFlags(P0(n) | 1024)));
      e.replaceNode(t, n, a);
    }
    function oxe(e, t) {
      if (t)
        return cr(xi(e, t.start), (n) => n.getStart(e) < t.start || n.getEnd() > dc(t) ? "quit" : (Bo(n) || hc(n) || Lo(n) || Xc(n)) && fE(t, P_(n, e)));
    }
    function eqe(e, t) {
      return ({ start: n, length: i, relatedInformation: a, code: o }) => Ay(n) && Ay(i) && fE({
        start: n,
        length: i
      }, e) && o === t && !!a && _t(a, (c) => c.code === p.Did_you_mean_to_mark_this_function_as_async.code);
    }
    var Lce = "addMissingAwait", cxe = p.Property_0_does_not_exist_on_type_1.code, lxe = [p.This_expression_is_not_callable.code, p.This_expression_is_not_constructable.code], Mce = [
      p.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,
      p.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,
      p.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,
      p.Operator_0_cannot_be_applied_to_type_1.code,
      p.Operator_0_cannot_be_applied_to_types_1_and_2.code,
      p.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,
      p.This_condition_will_always_return_true_since_this_0_is_always_defined.code,
      p.Type_0_is_not_an_array_type.code,
      p.Type_0_is_not_an_array_type_or_a_string_type.code,
      p.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,
      p.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,
      p.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,
      p.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,
      p.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,
      p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,
      cxe,
      ...lxe
    ];
    ps({
      fixIds: [Lce],
      errorCodes: Mce,
      getCodeActions: function(t) {
        const { sourceFile: n, errorCode: i, span: a, cancellationToken: o, program: c } = t, _ = uxe(n, i, a, o, c);
        if (!_) return;
        const u = t.program.getTypeChecker(), d = (g) => on.ChangeTracker.with(t, g);
        return a3([_xe(t, _, i, u, d), fxe(t, _, i, u, d)]);
      },
      getAllCodeActions: (e) => {
        const { sourceFile: t, program: n, cancellationToken: i } = e, a = e.program.getTypeChecker(), o = /* @__PURE__ */ new Set();
        return lo(e, Mce, (c, _) => {
          const u = uxe(t, _.code, _, i, n);
          if (!u) return;
          const d = (g) => (g(c), []);
          return _xe(e, u, _.code, a, d, o) || fxe(e, u, _.code, a, d, o);
        });
      }
    });
    function uxe(e, t, n, i, a) {
      const o = Eq(e, n);
      return o && tqe(e, t, n, i, a) && pxe(o) ? o : void 0;
    }
    function _xe(e, t, n, i, a, o) {
      const { sourceFile: c, program: _, cancellationToken: u } = e, d = rqe(t, c, u, _, i);
      if (d) return Zd("addMissingAwaitToInitializer", a((g) => {
        bt(d.initializers, ({ expression: h }) => Rce(g, n, c, i, h, o)), o && d.needsSecondPassForFixAll && Rce(g, n, c, i, t, o);
      }), d.initializers.length === 1 ? [p.Add_await_to_initializer_for_0, d.initializers[0].declarationSymbol.name] : p.Add_await_to_initializers);
    }
    function fxe(e, t, n, i, a, o) {
      return Va(Lce, a((c) => Rce(c, n, e.sourceFile, i, t, o)), p.Add_await, Lce, p.Fix_all_expressions_possibly_missing_await);
    }
    function tqe(e, t, n, i, a) {
      return _t(a.getTypeChecker().getDiagnostics(e, i), ({ start: o, length: c, relatedInformation: _, code: u }) => Ay(o) && Ay(c) && fE({
        start: o,
        length: c
      }, n) && u === t && !!_ && _t(_, (d) => d.code === p.Did_you_forget_to_use_await.code));
    }
    function rqe(e, t, n, i, a) {
      const o = nqe(e, a);
      if (!o) return;
      let c = o.isCompleteFix, _;
      for (const u of o.identifiers) {
        const d = a.getSymbolAtLocation(u);
        if (!d) continue;
        const g = qn(d.valueDeclaration, ci), h = g && qn(g.name, Fe), S = dv(g, 244);
        if (!g || !S || g.type || !g.initializer || S.getSourceFile() !== t || Qn(S, 32) || !h || !pxe(g.initializer)) {
          c = !1;
          continue;
        }
        const T = i.getSemanticDiagnostics(t, n);
        if (Jo.Core.eachSymbolReferenceInFile(h, a, t, (k) => u !== k && !iqe(k, T, t, a))) {
          c = !1;
          continue;
        }
        (_ || (_ = [])).push({
          expression: g.initializer,
          declarationSymbol: d
        });
      }
      return _ && {
        initializers: _,
        needsSecondPassForFixAll: !c
      };
    }
    function nqe(e, t) {
      if (Ln(e.parent) && Fe(e.parent.expression)) return {
        identifiers: [e.parent.expression],
        isCompleteFix: !0
      };
      if (Fe(e)) return {
        identifiers: [e],
        isCompleteFix: !0
      };
      if (un(e)) {
        let n, i = !0;
        for (const a of [e.left, e.right]) {
          const o = t.getTypeAtLocation(a);
          if (t.getPromisedTypeOfPromise(o)) {
            if (!Fe(a)) {
              i = !1;
              continue;
            }
            (n || (n = [])).push(a);
          }
        }
        return n && {
          identifiers: n,
          isCompleteFix: i
        };
      }
    }
    function iqe(e, t, n, i) {
      const a = Ln(e.parent) ? e.parent.name : un(e.parent) ? e.parent : e, o = xr(t, (c) => c.start === a.getStart(n) && c.start + c.length === a.getEnd());
      return o && Gi(Mce, o.code) || i.getTypeAtLocation(a).flags & 1;
    }
    function pxe(e) {
      return e.flags & 65536 || !!cr(e, (t) => t.parent && Bo(t.parent) && t.parent.body === t || Wa(t) && (t.parent.kind === 263 || t.parent.kind === 219 || t.parent.kind === 220 || t.parent.kind === 175));
    }
    function Rce(e, t, n, i, a, o) {
      if (oN(a.parent) && !a.parent.awaitModifier) {
        const c = i.getTypeAtLocation(a), _ = i.getAnyAsyncIterableType();
        if (_ && i.isTypeAssignableTo(c, _)) {
          const u = a.parent;
          e.replaceNode(n, u, A.updateForOfStatement(u, A.createToken(135), u.initializer, u.expression, u.statement));
          return;
        }
      }
      if (un(a)) for (const c of [a.left, a.right]) {
        if (o && Fe(c)) {
          const d = i.getSymbolAtLocation(c);
          if (d && o.has(ss(d))) continue;
        }
        const _ = i.getTypeAtLocation(c), u = i.getPromisedTypeOfPromise(_) ? A.createAwaitExpression(c) : c;
        e.replaceNode(n, c, u);
      }
      else if (t === cxe && Ln(a.parent)) {
        if (o && Fe(a.parent.expression)) {
          const c = i.getSymbolAtLocation(a.parent.expression);
          if (c && o.has(ss(c))) return;
        }
        e.replaceNode(n, a.parent.expression, A.createParenthesizedExpression(A.createAwaitExpression(a.parent.expression))), dxe(e, a.parent.expression, n);
      } else if (Gi(lxe, t) && ym(a.parent)) {
        if (o && Fe(a)) {
          const c = i.getSymbolAtLocation(a);
          if (c && o.has(ss(c))) return;
        }
        e.replaceNode(n, a, A.createParenthesizedExpression(A.createAwaitExpression(a))), dxe(e, a, n);
      } else {
        if (o && ci(a.parent) && Fe(a.parent.name)) {
          const c = i.getSymbolAtLocation(a.parent.name);
          if (c && !b_(o, ss(c))) return;
        }
        e.replaceNode(n, a, A.createAwaitExpression(a));
      }
    }
    function dxe(e, t, n) {
      const i = Tl(t.pos, n);
      i && uL(i.end, i.parent, n) && e.insertText(n, t.getStart(n), ";");
    }
    var jce = "addMissingConst", mxe = [p.Cannot_find_name_0.code, p.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];
    ps({
      errorCodes: mxe,
      getCodeActions: function(t) {
        const n = on.ChangeTracker.with(t, (i) => gxe(i, t.sourceFile, t.span.start, t.program));
        if (n.length > 0) return [Va(jce, n, p.Add_const_to_unresolved_variable, jce, p.Add_const_to_all_unresolved_variables)];
      },
      fixIds: [jce],
      getAllCodeActions: (e) => {
        const t = /* @__PURE__ */ new Set();
        return lo(e, mxe, (n, i) => gxe(n, i.file, i.start, e.program, t));
      }
    });
    function gxe(e, t, n, i, a) {
      const o = xi(t, n), c = cr(o, (d) => wb(d.parent) ? d.parent.initializer === d : aqe(d) ? !1 : "quit");
      if (c) return xG(e, c, t, a);
      const _ = o.parent;
      if (un(_) && _.operatorToken.kind === 64 && zl(_.parent)) return xG(e, o, t, a);
      if (hu(_)) {
        const d = i.getTypeChecker();
        return hr(_.elements, (g) => sqe(g, d)) ? xG(e, _, t, a) : void 0;
      }
      const u = cr(o, (d) => zl(d.parent) ? !0 : oqe(d) ? !1 : "quit");
      if (u)
        return hxe(u, i.getTypeChecker()) ? xG(e, u, t, a) : void 0;
    }
    function xG(e, t, n, i) {
      (!i || b_(i, t)) && e.insertModifierBefore(n, 87, t);
    }
    function aqe(e) {
      switch (e.kind) {
        case 80:
        case 210:
        case 211:
        case 304:
        case 305:
          return !0;
        default:
          return !1;
      }
    }
    function sqe(e, t) {
      const n = Fe(e) ? e : Hl(e, !0) && Fe(e.left) ? e.left : void 0;
      return !!n && !t.getSymbolAtLocation(n);
    }
    function oqe(e) {
      switch (e.kind) {
        case 80:
        case 227:
        case 28:
          return !0;
        default:
          return !1;
      }
    }
    function hxe(e, t) {
      return un(e) ? e.operatorToken.kind === 28 ? hr([e.left, e.right], (n) => hxe(n, t)) : e.operatorToken.kind === 64 && Fe(e.left) && !t.getSymbolAtLocation(e.left) : !1;
    }
    var Bce = "addMissingDeclareProperty", yxe = [p.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];
    ps({
      errorCodes: yxe,
      getCodeActions: function(t) {
        const n = on.ChangeTracker.with(t, (i) => vxe(i, t.sourceFile, t.span.start));
        if (n.length > 0) return [Va(Bce, n, p.Prefix_with_declare, Bce, p.Prefix_all_incorrect_property_declarations_with_declare)];
      },
      fixIds: [Bce],
      getAllCodeActions: (e) => {
        const t = /* @__PURE__ */ new Set();
        return lo(e, yxe, (n, i) => vxe(n, i.file, i.start, t));
      }
    });
    function vxe(e, t, n, i) {
      const a = xi(t, n);
      if (!Fe(a)) return;
      const o = a.parent;
      o.kind === 173 && (!i || b_(i, o)) && e.insertModifierBefore(t, 138, o);
    }
    var Jce = "addMissingInvocationForDecorator", bxe = [p._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];
    ps({
      errorCodes: bxe,
      getCodeActions: function(t) {
        return [Va(Jce, on.ChangeTracker.with(t, (n) => Sxe(n, t.sourceFile, t.span.start)), p.Call_decorator_expression, Jce, p.Add_to_all_uncalled_decorators)];
      },
      fixIds: [Jce],
      getAllCodeActions: (e) => lo(e, bxe, (t, n) => Sxe(t, n.file, n.start))
    });
    function Sxe(e, t, n) {
      const i = cr(xi(t, n), pl);
      E.assert(!!i, "Expected position to be owned by a decorator.");
      const a = A.createCallExpression(i.expression, void 0, void 0);
      e.replaceNode(t, i.expression, a);
    }
    var zce = "addMissingResolutionModeImportAttribute", Txe = [p.Type_only_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code, p.Type_import_of_an_ECMAScript_module_from_a_CommonJS_module_must_have_a_resolution_mode_attribute.code];
    ps({
      errorCodes: Txe,
      getCodeActions: function(t) {
        return [Va(zce, on.ChangeTracker.with(t, (n) => xxe(n, t.sourceFile, t.span.start, t.program, t.host, t.preferences)), p.Add_resolution_mode_import_attribute, zce, p.Add_resolution_mode_import_attribute_to_all_type_only_imports_that_need_it)];
      },
      fixIds: [zce],
      getAllCodeActions: (e) => lo(e, Txe, (t, n) => xxe(t, n.file, n.start, e.program, e.host, e.preferences))
    });
    function xxe(e, t, n, i, a, o) {
      var c, _, u;
      const d = cr(xi(t, n), _f(ic, Am));
      E.assert(!!d, "Expected position to be owned by an ImportDeclaration or ImportType.");
      const g = Df(t, o) === 0, h = Fx(d), S = !h || ((c = qS(h.text, t.fileName, i.getCompilerOptions(), a, i.getModuleResolutionCache(), void 0, 99).resolvedModule) == null ? void 0 : c.resolvedFileName) === ((u = (_ = i.getResolvedModuleFromModuleSpecifier(h, t)) == null ? void 0 : _.resolvedModule) == null ? void 0 : u.resolvedFileName), T = d.attributes ? A.updateImportAttributes(d.attributes, A.createNodeArray([...d.attributes.elements, A.createImportAttribute(A.createStringLiteral("resolution-mode", g), A.createStringLiteral(S ? "import" : "require", g))], d.attributes.elements.hasTrailingComma), d.attributes.multiLine) : A.createImportAttributes(A.createNodeArray([A.createImportAttribute(A.createStringLiteral("resolution-mode", g), A.createStringLiteral(S ? "import" : "require", g))]));
      d.kind === 273 ? e.replaceNode(t, d, A.updateImportDeclaration(d, d.modifiers, d.importClause, d.moduleSpecifier, T)) : e.replaceNode(t, d, A.updateImportTypeNode(d, d.argument, T, d.qualifier, d.typeArguments));
    }
    var Wce = "addNameToNamelessParameter", kxe = [p.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];
    ps({
      errorCodes: kxe,
      getCodeActions: function(t) {
        return [Va(Wce, on.ChangeTracker.with(t, (n) => Cxe(n, t.sourceFile, t.span.start)), p.Add_parameter_name, Wce, p.Add_names_to_all_parameters_without_names)];
      },
      fixIds: [Wce],
      getAllCodeActions: (e) => lo(e, kxe, (t, n) => Cxe(t, n.file, n.start))
    });
    function Cxe(e, t, n) {
      const i = xi(t, n), a = i.parent;
      if (!Fi(a)) return E.fail("Tried to add a parameter name to a non-parameter: " + E.formatSyntaxKind(i.kind));
      const o = a.parent.parameters.indexOf(a);
      E.assert(!a.type, "Tried to add a parameter name to a parameter that already had one."), E.assert(o > -1, "Parameter not found in parent parameter list.");
      let c = a.name.getEnd(), _ = A.createTypeReferenceNode(a.name, void 0), u = Exe(t, a);
      for (; u; )
        _ = A.createArrayTypeNode(_), c = u.getEnd(), u = Exe(t, u);
      const d = A.createParameterDeclaration(a.modifiers, a.dotDotDotToken, "arg" + o, a.questionToken, a.dotDotDotToken && !aN(_) ? A.createArrayTypeNode(_) : _, a.initializer);
      e.replaceRange(t, bf(a.getStart(t), c), d);
    }
    function Exe(e, t) {
      const n = c2(t.name, t.parent, e);
      if (n && n.kind === 23 && J0(n.parent) && Fi(n.parent.parent)) return n.parent.parent;
    }
    var Dxe = "addOptionalPropertyUndefined";
    ps({
      errorCodes: [
        p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,
        p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,
        p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code
      ],
      getCodeActions(e) {
        const t = e.program.getTypeChecker(), n = cqe(e.sourceFile, e.span, t);
        if (n.length)
          return [Zd(Dxe, on.ChangeTracker.with(e, (i) => uqe(i, n)), p.Add_undefined_to_optional_property_type)];
      },
      fixIds: [Dxe]
    });
    function cqe(e, t, n) {
      var i, a;
      const o = wxe(Eq(e, t), n);
      if (!o) return Te;
      const { source: c, target: _ } = o, u = lqe(c, _, n) ? n.getTypeAtLocation(_.expression) : n.getTypeAtLocation(_);
      return (a = (i = u.symbol) == null ? void 0 : i.declarations) != null && a.some((d) => Sr(d).fileName.match(/\.d\.ts$/)) ? Te : n.getExactOptionalProperties(u);
    }
    function lqe(e, t, n) {
      return Ln(t) && !!n.getExactOptionalProperties(n.getTypeAtLocation(t.expression)).length && n.getTypeAtLocation(e) === n.getUndefinedType();
    }
    function wxe(e, t) {
      var n;
      if (e) {
        if (un(e.parent) && e.parent.operatorToken.kind === 64) return {
          source: e.parent.right,
          target: e.parent.left
        };
        if (ci(e.parent) && e.parent.initializer) return {
          source: e.parent.initializer,
          target: e.parent.name
        };
        if (za(e.parent)) {
          const i = t.getSymbolAtLocation(e.parent.expression);
          if (!i?.valueDeclaration || !xx(i.valueDeclaration.kind) || !dt(e)) return;
          const a = e.parent.arguments.indexOf(e);
          if (a === -1) return;
          const o = i.valueDeclaration.parameters[a].name;
          if (Fe(o)) return {
            source: e,
            target: o
          };
        } else if (ol(e.parent) && Fe(e.parent.name) || Nu(e.parent)) {
          const i = wxe(e.parent.parent, t);
          if (!i) return;
          const a = t.getPropertyOfType(t.getTypeAtLocation(i.target), e.parent.name.text), o = (n = a?.declarations) == null ? void 0 : n[0];
          return o ? {
            source: ol(e.parent) ? e.parent.initializer : e.parent.name,
            target: o
          } : void 0;
        }
      } else return;
    }
    function uqe(e, t) {
      for (const n of t) {
        const i = n.valueDeclaration;
        if (i && (f_(i) || ga(i)) && i.type) {
          const a = A.createUnionTypeNode([...i.type.kind === 193 ? i.type.types : [i.type], A.createTypeReferenceNode("undefined")]);
          e.replaceNode(i.getSourceFile(), i.type, a);
        }
      }
    }
    var Uce = "annotateWithTypeFromJSDoc", Pxe = [p.JSDoc_types_may_be_moved_to_TypeScript_types.code];
    ps({
      errorCodes: Pxe,
      getCodeActions(e) {
        const t = Axe(e.sourceFile, e.span.start);
        if (t)
          return [Va(Uce, on.ChangeTracker.with(e, (n) => Oxe(n, e.sourceFile, t)), p.Annotate_with_type_from_JSDoc, Uce, p.Annotate_everything_with_types_from_JSDoc)];
      },
      fixIds: [Uce],
      getAllCodeActions: (e) => lo(e, Pxe, (t, n) => {
        const i = Axe(n.file, n.start);
        i && Oxe(t, n.file, i);
      })
    });
    function Axe(e, t) {
      const n = xi(e, t);
      return qn(Fi(n.parent) ? n.parent.parent : n.parent, Nxe);
    }
    function Nxe(e) {
      return _qe(e) && Ixe(e);
    }
    function Ixe(e) {
      return So(e) ? e.parameters.some(Ixe) || !e.type && !!D3(e) : !e.type && !!k0(e);
    }
    function Oxe(e, t, n) {
      if (So(n) && (D3(n) || n.parameters.some((i) => !!k0(i)))) {
        if (!n.typeParameters) {
          const a = K5(n);
          a.length && e.insertTypeParameters(t, n, a);
        }
        const i = Bo(n) && !uo(n, 21, t);
        i && e.insertNodeBefore(t, js(n.parameters), A.createToken(21));
        for (const a of n.parameters) if (!a.type) {
          const o = k0(a);
          o && e.tryInsertTypeAnnotation(t, a, Ze(o, p2, ui));
        }
        if (i && e.insertNodeAfter(t, ws(n.parameters), A.createToken(22)), !n.type) {
          const a = D3(n);
          a && e.tryInsertTypeAnnotation(t, n, Ze(a, p2, ui));
        }
      } else {
        const i = E.checkDefined(k0(n), "A JSDocType for this declaration should exist");
        E.assert(!n.type, "The JSDocType decl should have a type"), e.tryInsertTypeAnnotation(t, n, Ze(i, p2, ui));
      }
    }
    function _qe(e) {
      return So(e) || e.kind === 261 || e.kind === 172 || e.kind === 173;
    }
    function p2(e) {
      switch (e.kind) {
        case 313:
        case 314:
          return A.createTypeReferenceNode("any", Te);
        case 317:
          return pqe(e);
        case 316:
          return p2(e.type);
        case 315:
          return dqe(e);
        case 319:
          return mqe(e);
        case 318:
          return gqe(e);
        case 184:
          return yqe(e);
        case 323:
          return fqe(e);
        default:
          const t = Tr(e, p2, void 0);
          return ln(t, 1), t;
      }
    }
    function fqe(e) {
      const t = A.createTypeLiteralNode(or(e.jsDocPropertyTags, (n) => A.createPropertySignature(void 0, Fe(n.name) ? n.name : n.name.right, HA(n) ? A.createToken(58) : void 0, n.typeExpression && Ze(n.typeExpression.type, p2, ui) || A.createKeywordTypeNode(133))));
      return ln(t, 1), t;
    }
    function pqe(e) {
      return A.createUnionTypeNode([Ze(e.type, p2, ui), A.createTypeReferenceNode("undefined", Te)]);
    }
    function dqe(e) {
      return A.createUnionTypeNode([Ze(e.type, p2, ui), A.createTypeReferenceNode("null", Te)]);
    }
    function mqe(e) {
      return A.createArrayTypeNode(Ze(e.type, p2, ui));
    }
    function gqe(e) {
      return A.createFunctionTypeNode(Te, e.parameters.map(hqe), e.type ?? A.createKeywordTypeNode(133));
    }
    function hqe(e) {
      const t = e.parent.parameters.indexOf(e), n = e.type.kind === 319 && t === e.parent.parameters.length - 1, i = e.name || (n ? "rest" : "arg" + t), a = n ? A.createToken(26) : e.dotDotDotToken;
      return A.createParameterDeclaration(e.modifiers, a, i, e.questionToken, Ze(e.type, p2, ui), e.initializer);
    }
    function yqe(e) {
      let t = e.typeName, n = e.typeArguments;
      if (Fe(e.typeName)) {
        if (F5(e)) return vqe(e);
        let i = e.typeName.text;
        switch (e.typeName.text) {
          case "String":
          case "Boolean":
          case "Object":
          case "Number":
            i = i.toLowerCase();
            break;
          case "array":
          case "date":
          case "promise":
            i = i[0].toUpperCase() + i.slice(1);
            break;
        }
        t = A.createIdentifier(i), (i === "Array" || i === "Promise") && !e.typeArguments ? n = A.createNodeArray([A.createTypeReferenceNode("any", Te)]) : n = Fr(e.typeArguments, p2, ui);
      }
      return A.createTypeReferenceNode(t, n);
    }
    function vqe(e) {
      const t = A.createParameterDeclaration(void 0, void 0, e.typeArguments[0].kind === 150 ? "n" : "s", void 0, A.createTypeReferenceNode(e.typeArguments[0].kind === 150 ? "number" : "string", []), void 0), n = A.createTypeLiteralNode([A.createIndexSignature(void 0, [t], e.typeArguments[1])]);
      return ln(n, 1), n;
    }
    var Vce = "convertFunctionToEs6Class", Fxe = [p.This_constructor_function_may_be_converted_to_a_class_declaration.code];
    ps({
      errorCodes: Fxe,
      getCodeActions(e) {
        return [Va(Vce, on.ChangeTracker.with(e, (t) => Lxe(t, e.sourceFile, e.span.start, e.program.getTypeChecker(), e.preferences, e.program.getCompilerOptions())), p.Convert_function_to_an_ES2015_class, Vce, p.Convert_all_constructor_functions_to_classes)];
      },
      fixIds: [Vce],
      getAllCodeActions: (e) => lo(e, Fxe, (t, n) => Lxe(t, n.file, n.start, e.program.getTypeChecker(), e.preferences, e.program.getCompilerOptions()))
    });
    function Lxe(e, t, n, i, a, o) {
      const c = i.getSymbolAtLocation(xi(t, n));
      if (!c || !c.valueDeclaration || !(c.flags & 19)) return;
      const _ = c.valueDeclaration;
      if (Xc(_) || Lo(_)) e.replaceNode(t, _, g(_));
      else if (ci(_)) {
        const h = d(_);
        if (!h) return;
        const S = _.parent.parent;
        iu(_.parent) && _.parent.declarations.length > 1 ? (e.delete(t, _), e.insertNodeAfter(t, S, h)) : e.replaceNode(t, S, h);
      }
      function u(h) {
        const S = [];
        return h.exports && h.exports.forEach((D) => {
          if (D.name === "prototype" && D.declarations) {
            const P = D.declarations[0];
            if (D.declarations.length === 1 && Ln(P) && un(P.parent) && P.parent.operatorToken.kind === 64 && bs(P.parent.right)) {
              const N = P.parent.right;
              k(N.symbol, void 0, S);
            }
          } else k(D, [A.createToken(126)], S);
        }), h.members && h.members.forEach((D, P) => {
          var N, M, R, G;
          if (P === "constructor" && D.valueDeclaration) {
            const L = (G = (R = (M = (N = h.exports) == null ? void 0 : N.get("prototype")) == null ? void 0 : M.declarations) == null ? void 0 : R[0]) == null ? void 0 : G.parent;
            L && un(L) && bs(L.right) && _t(L.right.properties, CG) || e.delete(t, D.valueDeclaration.parent);
            return;
          }
          k(D, void 0, S);
        }), S;
        function T(D, P) {
          return jo(D) ? Ln(D) && CG(D) ? !0 : Ra(P) : hr(D.properties, (N) => !!(hc(N) || P3(N) || ol(N) && Lo(N.initializer) && N.name || CG(N)));
        }
        function k(D, P, N) {
          if (!(D.flags & 8192) && !(D.flags & 4096)) return;
          const M = D.valueDeclaration, R = M.parent, G = R.right;
          if (!T(M, G) || _t(N, (pe) => {
            const ie = va(pe);
            return !!(ie && Fe(ie) && On(ie) === kc(D));
          })) return;
          const L = R.parent && R.parent.kind === 245 ? R.parent : R;
          if (e.delete(t, L), !G) {
            N.push(A.createPropertyDeclaration(P, D.name, void 0, void 0, void 0));
            return;
          }
          if (jo(M) && (Lo(G) || Bo(G))) {
            const pe = bqe(M, o, Df(t, a));
            pe && z(N, G, pe);
            return;
          } else if (bs(G)) {
            bt(G.properties, (pe) => {
              (hc(pe) || P3(pe)) && N.push(pe), ol(pe) && Lo(pe.initializer) && z(N, pe.initializer, pe.name), CG(pe);
            });
            return;
          } else {
            if (T_(t) || !Ln(M)) return;
            const pe = A.createPropertyDeclaration(P, M.name, void 0, void 0, G);
            dE(R.parent, pe, t), N.push(pe);
            return;
          }
          function z(pe, ie, W) {
            return Lo(ie) ? H(pe, ie, W) : U(pe, ie, W);
          }
          function H(pe, ie, W) {
            const Q = zi(P, kG(ie, 134)), se = A.createMethodDeclaration(Q, void 0, W, void 0, void 0, ie.parameters, void 0, ie.body);
            dE(R, se, t), pe.push(se);
          }
          function U(pe, ie, W) {
            const Q = ie.body;
            let se;
            Q.kind === 242 ? se = Q : se = A.createBlock([A.createReturnStatement(Q)]);
            const he = zi(P, kG(ie, 134)), fe = A.createMethodDeclaration(he, void 0, W, void 0, void 0, ie.parameters, void 0, se);
            dE(R, fe, t), pe.push(fe);
          }
        }
      }
      function d(h) {
        const S = h.initializer;
        if (!S || !Lo(S) || !Fe(h.name)) return;
        const T = u(h.symbol);
        S.body && T.unshift(A.createConstructorDeclaration(void 0, S.parameters, S.body));
        const k = kG(h.parent.parent, 95);
        return A.createClassDeclaration(k, h.name, void 0, void 0, T);
      }
      function g(h) {
        const S = u(c);
        h.body && S.unshift(A.createConstructorDeclaration(void 0, h.parameters, h.body));
        const T = kG(h, 95);
        return A.createClassDeclaration(T, h.name, void 0, void 0, S);
      }
    }
    function kG(e, t) {
      return vd(e) ? dn(e.modifiers, (n) => n.kind === t) : void 0;
    }
    function CG(e) {
      return e.name ? !!(Fe(e.name) && e.name.text === "constructor") : !1;
    }
    function bqe(e, t, n) {
      if (Ln(e)) return e.name;
      const i = e.argumentExpression;
      if (V_(i)) return i;
      if (Xs(i)) return Y_(i.text, Ps(t)) ? A.createIdentifier(i.text) : IS(i) ? A.createStringLiteral(i.text, n === 0) : i;
    }
    var qce = "convertToAsyncFunction", Mxe = [p.This_may_be_converted_to_an_async_function.code], EG = !0;
    ps({
      errorCodes: Mxe,
      getCodeActions(e) {
        EG = !0;
        const t = on.ChangeTracker.with(e, (n) => Rxe(n, e.sourceFile, e.span.start, e.program.getTypeChecker()));
        return EG ? [Va(qce, t, p.Convert_to_async_function, qce, p.Convert_all_to_async_functions)] : [];
      },
      fixIds: [qce],
      getAllCodeActions: (e) => lo(e, Mxe, (t, n) => Rxe(t, n.file, n.start, e.program.getTypeChecker()))
    });
    function Rxe(e, t, n, i) {
      const a = xi(t, n);
      let o;
      if (Fe(a) && ci(a.parent) && a.parent.initializer && So(a.parent.initializer) ? o = a.parent.initializer : o = qn(Kf(xi(t, n)), Hq), !o) return;
      const c = /* @__PURE__ */ new Map(), _ = rn(o), u = Tqe(o, i), d = xqe(o, i, c);
      if (!qq(d, i)) return;
      const g = d.body && Wa(d.body) ? Sqe(d.body, i) : Te, h = {
        checker: i,
        synthNamesMap: c,
        setOfExpressionsToReturn: u,
        isInJSFile: _
      };
      if (!g.length) return;
      const S = gs(t.text, Em(o).pos);
      e.insertModifierAt(t, S, 134, { suffix: " " });
      for (const T of g)
        if (Fa(T, function k(D) {
          if (za(D)) {
            const P = bE(D, D, h, !1);
            if (Wk()) return !0;
            e.replaceNodeWithNodes(t, T, P);
          } else if (!Ra(D) && (Fa(D, k), Wk()))
            return !0;
        }), Wk()) return;
    }
    function Sqe(e, t) {
      const n = [];
      return Hy(e, (i) => {
        kL(i, t) && n.push(i);
      }), n;
    }
    function Tqe(e, t) {
      if (!e.body) return /* @__PURE__ */ new Set();
      const n = /* @__PURE__ */ new Set();
      return Fa(e.body, function i(a) {
        RI(a, t, "then") ? (n.add(Hs(a)), bt(a.arguments, i)) : RI(a, t, "catch") || RI(a, t, "finally") ? (n.add(Hs(a)), Fa(a, i)) : Bxe(a, t) ? n.add(Hs(a)) : Fa(a, i);
      }), n;
    }
    function RI(e, t, n) {
      if (!za(e)) return !1;
      const i = oI(e, n) && t.getTypeAtLocation(e);
      return !!(i && t.getPromisedTypeOfPromise(i));
    }
    function jxe(e, t) {
      return (yn(e) & 4) !== 0 && e.target === t;
    }
    function DG(e, t, n) {
      if (e.expression.name.escapedText === "finally") return;
      const i = n.getTypeAtLocation(e.expression.expression);
      if (jxe(i, n.getPromiseType()) || jxe(i, n.getPromiseLikeType())) if (e.expression.name.escapedText === "then") {
        if (t === Py(e.arguments, 0)) return Py(e.typeArguments, 0);
        if (t === Py(e.arguments, 1)) return Py(e.typeArguments, 1);
      } else return Py(e.typeArguments, 0);
    }
    function Bxe(e, t) {
      return dt(e) ? !!t.getPromisedTypeOfPromise(t.getTypeAtLocation(e)) : !1;
    }
    function xqe(e, t, n) {
      const i = /* @__PURE__ */ new Map(), a = Up();
      return Fa(e, function o(c) {
        if (!Fe(c)) {
          Fa(c, o);
          return;
        }
        const _ = t.getSymbolAtLocation(c);
        if (_) {
          const u = qxe(t.getTypeAtLocation(c), t), d = ss(_).toString();
          if (u && !Fi(c.parent) && !So(c.parent) && !n.has(d)) {
            const g = ul(u.parameters), h = g?.valueDeclaration && Fi(g.valueDeclaration) && qn(g.valueDeclaration.name, Fe) || A.createUniqueName("result", 16), S = Jxe(h, a);
            n.set(d, S), a.add(h.text, _);
          } else if (c.parent && (Fi(c.parent) || ci(c.parent) || Ns(c.parent))) {
            const g = c.text, h = a.get(g);
            if (h && h.some((S) => S !== _)) {
              const S = Jxe(c, a);
              i.set(d, S.identifier), n.set(d, S), a.add(g, _);
            } else {
              const S = no(c);
              n.set(d, nP(S)), a.add(g, _);
            }
          }
        }
      }), QA(e, !0, (o) => {
        if (Ns(o) && Fe(o.name) && rp(o.parent)) {
          const c = t.getSymbolAtLocation(o.name), _ = c && i.get(String(ss(c)));
          if (_ && _.text !== (o.name || o.propertyName).getText()) return A.createBindingElement(o.dotDotDotToken, o.propertyName || o.name, _, o.initializer);
        } else if (Fe(o)) {
          const c = t.getSymbolAtLocation(o), _ = c && i.get(String(ss(c)));
          if (_) return A.createIdentifier(_.text);
        }
      });
    }
    function Jxe(e, t) {
      const n = (t.get(e.text) || Te).length;
      return nP(n === 0 ? e : A.createIdentifier(e.text + "_" + n));
    }
    function Wk() {
      return !EG;
    }
    function Uv() {
      return EG = !1, Te;
    }
    function bE(e, t, n, i, a) {
      if (RI(t, n.checker, "then")) return Eqe(t, Py(t.arguments, 0), Py(t.arguments, 1), n, i, a);
      if (RI(t, n.checker, "catch")) return Uxe(t, Py(t.arguments, 0), n, i, a);
      if (RI(t, n.checker, "finally")) return Cqe(t, Py(t.arguments, 0), n, i, a);
      if (Ln(t)) return bE(e, t.expression, n, i, a);
      const o = n.checker.getTypeAtLocation(t);
      return o && n.checker.getPromisedTypeOfPromise(o) ? (E.assertNode(rc(t).parent, Ln), Dqe(e, t, n, i, a)) : Uv();
    }
    function wG({ checker: e }, t) {
      if (t.kind === 106) return !0;
      if (Fe(t) && !Ko(t) && On(t) === "undefined") {
        const n = e.getSymbolAtLocation(t);
        return !n || e.isUndefinedSymbol(n);
      }
      return !1;
    }
    function kqe(e) {
      return nP(A.createUniqueName(e.identifier.text, 16));
    }
    function zxe(e, t, n) {
      let i;
      return n && !BI(e, t) && (jI(n) ? (i = n, t.synthNamesMap.forEach((a, o) => {
        if (a.identifier.text === n.identifier.text) {
          const c = kqe(n);
          t.synthNamesMap.set(o, c);
        }
      })) : i = nP(A.createUniqueName("result", 16), n.types), Xce(i)), i;
    }
    function Wxe(e, t, n, i, a) {
      const o = [];
      let c;
      if (i && !BI(e, t)) {
        c = no(Xce(i));
        const _ = i.types, u = t.checker.getUnionType(_, 2), d = t.isInJSFile ? void 0 : t.checker.typeToTypeNode(u, void 0, void 0), g = [A.createVariableDeclaration(c, void 0, d)], h = A.createVariableStatement(void 0, A.createVariableDeclarationList(g, 1));
        o.push(h);
      }
      return o.push(n), a && c && Aqe(a) && o.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(no(Xxe(a)), void 0, void 0, c)], 2))), o;
    }
    function Cqe(e, t, n, i, a) {
      if (!t || wG(n, t)) return bE(e, e.expression.expression, n, i, a);
      const o = zxe(e, n, a), c = bE(e, e.expression.expression, n, !0, o);
      if (Wk()) return Uv();
      const _ = Hce(t, i, void 0, void 0, e, n);
      if (Wk()) return Uv();
      const u = A.createBlock(c), d = A.createBlock(_);
      return Wxe(e, n, A.createTryStatement(u, void 0, d), o, a);
    }
    function Uxe(e, t, n, i, a) {
      if (!t || wG(n, t)) return bE(e, e.expression.expression, n, i, a);
      const o = Hxe(t, n), c = zxe(e, n, a), _ = bE(e, e.expression.expression, n, !0, c);
      if (Wk()) return Uv();
      const u = Hce(t, i, c, o, e, n);
      if (Wk()) return Uv();
      const d = A.createBlock(_), g = A.createCatchClause(o && no(BL(o)), A.createBlock(u));
      return Wxe(e, n, A.createTryStatement(d, g, void 0), c, a);
    }
    function Eqe(e, t, n, i, a, o) {
      if (!t || wG(i, t)) return Uxe(e, n, i, a, o);
      if (n && !wG(i, n)) return Uv();
      const c = Hxe(t, i), _ = bE(e.expression.expression, e.expression.expression, i, !0, c);
      if (Wk()) return Uv();
      const u = Hce(t, a, o, c, e, i);
      return Wk() ? Uv() : zi(_, u);
    }
    function Dqe(e, t, n, i, a) {
      if (BI(e, n)) {
        let o = no(t);
        return i && (o = A.createAwaitExpression(o)), [A.createReturnStatement(o)];
      }
      return PG(a, A.createAwaitExpression(t), void 0);
    }
    function PG(e, t, n) {
      return !e || $xe(e) ? [A.createExpressionStatement(t)] : jI(e) && e.hasBeenDeclared ? [A.createExpressionStatement(A.createAssignment(no($ce(e)), t))] : [A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(no(BL(e)), void 0, n, t)], 2))];
    }
    function Gce(e, t) {
      if (t && e) {
        const n = A.createUniqueName("result", 16);
        return [...PG(nP(n), e, t), A.createReturnStatement(n)];
      }
      return [A.createReturnStatement(e)];
    }
    function Hce(e, t, n, i, a, o) {
      var c;
      switch (e.kind) {
        case 106:
          break;
        case 212:
        case 80:
          if (!i) break;
          const _ = A.createCallExpression(no(e), void 0, jI(i) ? [$ce(i)] : []);
          if (BI(a, o)) return Gce(_, DG(a, e, o.checker));
          const u = o.checker.getTypeAtLocation(e), d = o.checker.getSignaturesOfType(u, 0);
          if (!d.length) return Uv();
          const g = d[0].getReturnType(), h = PG(n, A.createAwaitExpression(_), DG(a, e, o.checker));
          return n && n.types.push(o.checker.getAwaitedType(g) || g), h;
        case 219:
        case 220: {
          const S = e.body, T = (c = qxe(o.checker.getTypeAtLocation(e), o.checker)) == null ? void 0 : c.getReturnType();
          if (Wa(S)) {
            let k = [], D = !1;
            for (const P of S.statements) if (zf(P))
              if (D = !0, kL(P, o.checker)) k = k.concat(Gxe(o, P, t, n));
              else {
                const N = T && P.expression ? Vxe(o.checker, T, P.expression) : P.expression;
                k.push(...Gce(N, DG(a, e, o.checker)));
              }
            else {
              if (t && Hy(P, Sb)) return Uv();
              k.push(P);
            }
            return BI(a, o) ? k.map((P) => no(P)) : wqe(k, n, o, D);
          } else {
            const k = Gq(S, o.checker) ? Gxe(o, A.createReturnStatement(S), t, n) : Te;
            if (k.length > 0) return k;
            if (T) {
              const D = Vxe(o.checker, T, S);
              if (BI(a, o))
                return Gce(D, DG(a, e, o.checker));
              {
                const P = PG(n, D, void 0);
                return n && n.types.push(o.checker.getAwaitedType(T) || T), P;
              }
            } else return Uv();
          }
        }
        default:
          return Uv();
      }
      return Te;
    }
    function Vxe(e, t, n) {
      const i = no(n);
      return e.getPromisedTypeOfPromise(t) ? A.createAwaitExpression(i) : i;
    }
    function qxe(e, t) {
      return Wo(t.getSignaturesOfType(e, 0));
    }
    function wqe(e, t, n, i) {
      const a = [];
      for (const o of e) if (zf(o)) {
        if (o.expression) {
          const c = Bxe(o.expression, n.checker) ? A.createAwaitExpression(o.expression) : o.expression;
          t === void 0 ? a.push(A.createExpressionStatement(c)) : jI(t) && t.hasBeenDeclared ? a.push(A.createExpressionStatement(A.createAssignment($ce(t), c))) : a.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(BL(t), void 0, void 0, c)], 2)));
        }
      } else a.push(no(o));
      return !i && t !== void 0 && a.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(BL(t), void 0, void 0, A.createIdentifier("undefined"))], 2))), a;
    }
    function Gxe(e, t, n, i) {
      let a = [];
      return Fa(t, function o(c) {
        if (za(c)) {
          const _ = bE(c, c, e, n, i);
          if (a = a.concat(_), a.length > 0) return;
        } else Ra(c) || Fa(c, o);
      }), a;
    }
    function Hxe(e, t) {
      const n = [];
      let i;
      if (So(e)) {
        if (e.parameters.length > 0) {
          const u = e.parameters[0].name;
          i = a(u);
        }
      } else Fe(e) ? i = o(e) : Ln(e) && Fe(e.name) && (i = o(e.name));
      if (!i || "identifier" in i && i.identifier.text === "undefined") return;
      return i;
      function a(u) {
        return Fe(u) ? o(u) : Pqe(u, ks(u.elements, (d) => Al(d) ? [] : [a(d.name)]));
      }
      function o(u) {
        const d = c(_(u));
        return d && t.synthNamesMap.get(ss(d).toString()) || nP(u, n);
      }
      function c(u) {
        var d;
        return ((d = qn(u, jd)) == null ? void 0 : d.symbol) ?? t.checker.getSymbolAtLocation(u);
      }
      function _(u) {
        return u.original ? u.original : u;
      }
    }
    function $xe(e) {
      return e ? jI(e) ? !e.identifier.text : hr(e.elements, $xe) : !0;
    }
    function nP(e, t = []) {
      return {
        kind: 0,
        identifier: e,
        types: t,
        hasBeenDeclared: !1,
        hasBeenReferenced: !1
      };
    }
    function Pqe(e, t = Te, n = []) {
      return {
        kind: 1,
        bindingPattern: e,
        elements: t,
        types: n
      };
    }
    function $ce(e) {
      return e.hasBeenReferenced = !0, e.identifier;
    }
    function BL(e) {
      return jI(e) ? Xce(e) : Xxe(e);
    }
    function Xxe(e) {
      for (const t of e.elements) BL(t);
      return e.bindingPattern;
    }
    function Xce(e) {
      return e.hasBeenDeclared = !0, e.identifier;
    }
    function jI(e) {
      return e.kind === 0;
    }
    function Aqe(e) {
      return e.kind === 1;
    }
    function BI(e, t) {
      return !!e.original && t.setOfExpressionsToReturn.has(Hs(e.original));
    }
    ps({
      errorCodes: [p.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],
      getCodeActions(e) {
        const { sourceFile: t, program: n, preferences: i } = e;
        return [Zd("convertToEsModule", on.ChangeTracker.with(e, (a) => {
          if (Iqe(t, n.getTypeChecker(), a, Ps(n.getCompilerOptions()), Df(t, i))) for (const o of n.getSourceFiles()) Nqe(o, t, n, a, Df(o, i));
        }), p.Convert_to_ES_module)];
      }
    });
    function Nqe(e, t, n, i, a) {
      var o;
      for (const c of e.imports) {
        const _ = (o = n.getResolvedModuleFromModuleSpecifier(c, e)) == null ? void 0 : o.resolvedModule;
        if (!_ || _.resolvedFileName !== t.fileName) continue;
        const u = fD(c);
        switch (u.kind) {
          case 272:
            i.replaceNode(e, u, y1(u.name, void 0, c, a));
            break;
          case 214:
            J_(u, !1) && i.replaceNode(e, u, A.createPropertyAccessExpression(no(u), "default"));
            break;
        }
      }
    }
    function Iqe(e, t, n, i, a) {
      const o = {
        original: qqe(e),
        additional: /* @__PURE__ */ new Set()
      }, c = Oqe(e, t, o);
      Fqe(e, c, n);
      let _ = !1, u;
      for (const d of dn(e.statements, $c)) {
        const g = Yxe(e, d, n, t, o, i, a);
        g && c5(g, u ?? (u = /* @__PURE__ */ new Map()));
      }
      for (const d of dn(e.statements, (g) => !$c(g))) {
        const g = Lqe(e, d, t, n, o, i, c, u, a);
        _ = _ || g;
      }
      return u?.forEach((d, g) => {
        n.replaceNode(e, g, d);
      }), _;
    }
    function Oqe(e, t, n) {
      const i = /* @__PURE__ */ new Map();
      return Qxe(e, (a) => {
        const { text: o } = a.name;
        !i.has(o) && (rJ(a.name) || t.resolveName(o, a, 111551, !0)) && i.set(o, AG(`_${o}`, n));
      }), i;
    }
    function Fqe(e, t, n) {
      Qxe(e, (i, a) => {
        if (a) return;
        const { text: o } = i.name;
        n.replaceNode(e, i, A.createIdentifier(t.get(o) || o));
      });
    }
    function Qxe(e, t) {
      e.forEachChild(function n(i) {
        if (Ln(i) && t2(e, i.expression) && Fe(i.name)) {
          const { parent: a } = i;
          t(i, un(a) && a.left === i && a.operatorToken.kind === 64);
        }
        i.forEachChild(n);
      });
    }
    function Lqe(e, t, n, i, a, o, c, _, u) {
      switch (t.kind) {
        case 244:
          return Yxe(e, t, i, n, a, o, u), !1;
        case 245: {
          const { expression: d } = t;
          switch (d.kind) {
            case 214:
              return J_(d, !0) && i.replaceNode(e, t, y1(void 0, void 0, d.arguments[0], u)), !1;
            case 227: {
              const { operatorToken: g } = d;
              return g.kind === 64 && Rqe(e, n, d, i, c, _);
            }
          }
        }
        default:
          return !1;
      }
    }
    function Yxe(e, t, n, i, a, o, c) {
      const { declarationList: _ } = t;
      let u = !1;
      const d = or(_.declarations, (g) => {
        const { name: h, initializer: S } = g;
        if (S) {
          if (t2(e, S))
            return u = !0, iP([]);
          if (J_(S, !0))
            return u = !0, Uqe(h, S.arguments[0], i, a, o, c);
          if (Ln(S) && J_(S.expression, !0))
            return u = !0, Mqe(h, S.name.text, S.expression.arguments[0], a, c);
        }
        return iP([A.createVariableStatement(void 0, A.createVariableDeclarationList([g], _.flags))]);
      });
      if (u) {
        n.replaceNodeWithNodes(e, t, ks(d, (h) => h.newImports));
        let g;
        return bt(d, (h) => {
          h.useSitesToUnqualify && c5(h.useSitesToUnqualify, g ?? (g = /* @__PURE__ */ new Map()));
        }), g;
      }
    }
    function Mqe(e, t, n, i, a) {
      switch (e.kind) {
        case 207:
        case 208: {
          const o = AG(t, i);
          return iP([tke(o, t, n, a), NG(void 0, e, A.createIdentifier(o))]);
        }
        case 80:
          return iP([tke(e.text, t, n, a)]);
        default:
          return E.assertNever(e, `Convert to ES module got invalid syntax form ${e.kind}`);
      }
    }
    function Rqe(e, t, n, i, a, o) {
      const { left: c, right: _ } = n;
      if (!Ln(c)) return !1;
      if (t2(e, c)) if (t2(e, _)) i.delete(e, n.parent);
      else {
        const u = bs(_) ? jqe(_, o) : J_(_, !0) ? Jqe(_.arguments[0], t) : void 0;
        return u ? (i.replaceNodeWithNodes(e, n.parent, u[0]), u[1]) : (i.replaceRangeWithText(e, bf(c.getStart(e), _.pos), "export default"), !0);
      }
      else t2(e, c.expression) && Bqe(e, n, i, a);
      return !1;
    }
    function jqe(e, t) {
      const n = kl(e.properties, (i) => {
        switch (i.kind) {
          case 178:
          case 179:
          case 305:
          case 306:
            return;
          case 304:
            return Fe(i.name) ? Wqe(i.name.text, i.initializer, t) : void 0;
          case 175:
            return Fe(i.name) ? eke(i.name.text, [A.createToken(95)], i, t) : void 0;
          default:
            E.assertNever(i, `Convert to ES6 got invalid prop kind ${i.kind}`);
        }
      });
      return n && [n, !1];
    }
    function Bqe(e, t, n, i) {
      const { text: a } = t.left.name, o = i.get(a);
      if (o !== void 0) {
        const c = [NG(void 0, o, t.right), Zce([A.createExportSpecifier(!1, o, a)])];
        n.replaceNodeWithNodes(e, t.parent, c);
      } else zqe(t, e, n);
    }
    function Jqe(e, t) {
      const n = e.text, i = t.getSymbolAtLocation(e), a = i ? i.exports : mi;
      return a.has("export=") ? [[Qce(n)], !0] : a.has("default") ? a.size > 1 ? [[Zxe(n), Qce(n)], !0] : [[Qce(n)], !0] : [[Zxe(n)], !1];
    }
    function Zxe(e) {
      return Zce(void 0, e);
    }
    function Qce(e) {
      return Zce([A.createExportSpecifier(!1, void 0, "default")], e);
    }
    function zqe({ left: e, right: t, parent: n }, i, a) {
      const o = e.name.text;
      if ((Lo(t) || Bo(t) || Hc(t)) && (!t.name || t.name.text === o)) {
        a.replaceRange(i, {
          pos: e.getStart(i),
          end: t.getStart(i)
        }, A.createToken(95), { suffix: " " }), t.name || a.insertName(i, t, o);
        const c = uo(n, 27, i);
        c && a.delete(i, c);
      } else a.replaceNodeRangeWithNodes(i, e.expression, uo(e, 25, i), [A.createToken(95), A.createToken(87)], {
        joiner: " ",
        suffix: " "
      });
    }
    function Wqe(e, t, n) {
      const i = [A.createToken(95)];
      switch (t.kind) {
        case 219: {
          const { name: o } = t;
          if (o && o.text !== e) return a();
        }
        case 220:
          return eke(e, i, t, n);
        case 232:
          return Hqe(e, i, t, n);
        default:
          return a();
      }
      function a() {
        return NG(i, A.createIdentifier(e), Yce(t, n));
      }
    }
    function Yce(e, t) {
      if (!t || !_t(ma(t.keys()), (i) => W_(e, i))) return e;
      return da(e) ? hz(e, !0, n) : QA(e, !0, n);
      function n(i) {
        if (i.kind === 212) {
          const a = t.get(i);
          return t.delete(i), a;
        }
      }
    }
    function Uqe(e, t, n, i, a, o) {
      switch (e.kind) {
        case 207: {
          const c = kl(e.elements, (_) => _.dotDotDotToken || _.initializer || _.propertyName && !Fe(_.propertyName) || !Fe(_.name) ? void 0 : rke(_.propertyName && _.propertyName.text, _.name.text));
          if (c) return iP([y1(void 0, c, t, o)]);
        }
        case 208: {
          const c = AG(kI(t.text, a), i);
          return iP([y1(A.createIdentifier(c), void 0, t, o), NG(void 0, no(e), A.createIdentifier(c))]);
        }
        case 80:
          return Vqe(e, t, n, i, o);
        default:
          return E.assertNever(e, `Convert to ES module got invalid name kind ${e.kind}`);
      }
    }
    function Vqe(e, t, n, i, a) {
      const o = n.getSymbolAtLocation(e), c = /* @__PURE__ */ new Map();
      let _ = !1, u;
      for (const g of i.original.get(e.text)) {
        if (n.getSymbolAtLocation(g) !== o || g === e) continue;
        const { parent: h } = g;
        if (Ln(h)) {
          const { name: { text: S } } = h;
          if (S === "default") {
            _ = !0;
            const T = g.getText();
            (u ?? (u = /* @__PURE__ */ new Map())).set(h, A.createIdentifier(T));
          } else {
            E.assert(h.expression === g, "Didn't expect expression === use");
            let T = c.get(S);
            T === void 0 && (T = AG(S, i), c.set(S, T)), (u ?? (u = /* @__PURE__ */ new Map())).set(h, A.createIdentifier(T));
          }
        } else _ = !0;
      }
      const d = c.size === 0 ? void 0 : ma(cx(c.entries(), ([g, h]) => A.createImportSpecifier(!1, g === h ? void 0 : A.createIdentifier(g), A.createIdentifier(h))));
      return d || (_ = !0), iP([y1(_ ? no(e) : void 0, d, t, a)], u);
    }
    function AG(e, t) {
      for (; t.original.has(e) || t.additional.has(e); ) e = `_${e}`;
      return t.additional.add(e), e;
    }
    function qqe(e) {
      const t = Up();
      return Kxe(e, (n) => t.add(n.text, n)), t;
    }
    function Kxe(e, t) {
      Fe(e) && Gqe(e) && t(e), e.forEachChild((n) => Kxe(n, t));
    }
    function Gqe(e) {
      const { parent: t } = e;
      switch (t.kind) {
        case 212:
          return t.name !== e;
        case 209:
          return t.propertyName !== e;
        case 277:
          return t.propertyName !== e;
        default:
          return !0;
      }
    }
    function eke(e, t, n, i) {
      return A.createFunctionDeclaration(zi(t, qb(n.modifiers)), no(n.asteriskToken), e, qb(n.typeParameters), qb(n.parameters), no(n.type), A.converters.convertToFunctionBlock(Yce(n.body, i)));
    }
    function Hqe(e, t, n, i) {
      return A.createClassDeclaration(zi(t, qb(n.modifiers)), e, qb(n.typeParameters), qb(n.heritageClauses), Yce(n.members, i));
    }
    function tke(e, t, n, i) {
      return t === "default" ? y1(A.createIdentifier(e), void 0, n, i) : y1(void 0, [rke(t, e)], n, i);
    }
    function rke(e, t) {
      return A.createImportSpecifier(!1, e !== void 0 && e !== t ? A.createIdentifier(e) : void 0, A.createIdentifier(t));
    }
    function NG(e, t, n) {
      return A.createVariableStatement(e, A.createVariableDeclarationList([A.createVariableDeclaration(t, void 0, void 0, n)], 2));
    }
    function Zce(e, t) {
      return A.createExportDeclaration(void 0, !1, e && A.createNamedExports(e), t === void 0 ? void 0 : A.createStringLiteral(t));
    }
    function iP(e, t) {
      return {
        newImports: e,
        useSitesToUnqualify: t
      };
    }
    var Kce = "correctQualifiedNameToIndexedAccessType", nke = [p.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];
    ps({
      errorCodes: nke,
      getCodeActions(e) {
        const t = ike(e.sourceFile, e.span.start);
        if (!t) return;
        const n = on.ChangeTracker.with(e, (a) => ake(a, e.sourceFile, t)), i = `${t.left.text}["${t.right.text}"]`;
        return [Va(Kce, n, [p.Rewrite_as_the_indexed_access_type_0, i], Kce, p.Rewrite_all_as_indexed_access_types)];
      },
      fixIds: [Kce],
      getAllCodeActions: (e) => lo(e, nke, (t, n) => {
        const i = ike(n.file, n.start);
        i && ake(t, n.file, i);
      })
    });
    function ike(e, t) {
      const n = cr(xi(e, t), k_);
      return E.assert(!!n, "Expected position to be owned by a qualified name."), Fe(n.left) ? n : void 0;
    }
    function ake(e, t, n) {
      const i = n.right.text, a = A.createIndexedAccessTypeNode(A.createTypeReferenceNode(n.left, void 0), A.createLiteralTypeNode(A.createStringLiteral(i)));
      e.replaceNode(t, n, a);
    }
    var ele = [p.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code], tle = "convertToTypeOnlyExport";
    ps({
      errorCodes: ele,
      getCodeActions: function(t) {
        const n = on.ChangeTracker.with(t, (i) => oke(i, ske(t.span, t.sourceFile), t));
        if (n.length) return [Va(tle, n, p.Convert_to_type_only_export, tle, p.Convert_all_re_exported_types_to_type_only_exports)];
      },
      fixIds: [tle],
      getAllCodeActions: function(t) {
        const n = /* @__PURE__ */ new Set();
        return lo(t, ele, (i, a) => {
          const o = ske(a, t.sourceFile);
          o && Yp(n, Hs(o.parent.parent)) && oke(i, o, t);
        });
      }
    });
    function ske(e, t) {
      return qn(xi(t, e.start).parent, $u);
    }
    function oke(e, t, n) {
      if (!t) return;
      const i = t.parent, a = i.parent, o = $qe(t, n);
      if (o.length === i.elements.length) e.insertModifierBefore(n.sourceFile, 156, i);
      else {
        const c = A.updateExportDeclaration(a, a.modifiers, !1, A.updateNamedExports(i, dn(i.elements, (u) => !Gi(o, u))), a.moduleSpecifier, void 0), _ = A.createExportDeclaration(void 0, !0, A.createNamedExports(o), a.moduleSpecifier, void 0);
        e.replaceNode(n.sourceFile, a, c, {
          leadingTriviaOption: on.LeadingTriviaOption.IncludeAll,
          trailingTriviaOption: on.TrailingTriviaOption.Exclude
        }), e.insertNodeAfter(n.sourceFile, a, _);
      }
    }
    function $qe(e, t) {
      const n = e.parent;
      if (n.elements.length === 1) return n.elements;
      const i = Jse(P_(n), t.program.getSemanticDiagnostics(t.sourceFile, t.cancellationToken));
      return dn(n.elements, (a) => {
        var o;
        return a === e || ((o = Bse(a, i)) == null ? void 0 : o.code) === ele[0];
      });
    }
    var cke = [p._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code, p._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code], IG = "convertToTypeOnlyImport";
    ps({
      errorCodes: cke,
      getCodeActions: function(t) {
        var n;
        const i = lke(t.sourceFile, t.span.start);
        if (i) {
          const a = on.ChangeTracker.with(t, (_) => JL(_, t.sourceFile, i)), o = i.kind === 277 && ic(i.parent.parent.parent) && uke(i, t.sourceFile, t.program) ? on.ChangeTracker.with(t, (_) => JL(_, t.sourceFile, i.parent.parent.parent)) : void 0, c = Va(IG, a, i.kind === 277 ? [p.Use_type_0, ((n = i.propertyName) == null ? void 0 : n.text) ?? i.name.text] : p.Use_import_type, IG, p.Fix_all_with_type_only_imports);
          return _t(o) ? [Zd(IG, o, p.Use_import_type), c] : [c];
        }
      },
      fixIds: [IG],
      getAllCodeActions: function(t) {
        const n = /* @__PURE__ */ new Set();
        return lo(t, cke, (i, a) => {
          const o = lke(a.file, a.start);
          o?.kind === 273 && !n.has(o) ? (JL(i, a.file, o), n.add(o)) : o?.kind === 277 && ic(o.parent.parent.parent) && !n.has(o.parent.parent.parent) && uke(o, a.file, t.program) ? (JL(i, a.file, o.parent.parent.parent), n.add(o.parent.parent.parent)) : o?.kind === 277 && JL(i, a.file, o);
        });
      }
    });
    function lke(e, t) {
      const { parent: n } = xi(e, t);
      return p_(n) || ic(n) && n.importClause ? n : void 0;
    }
    function uke(e, t, n) {
      if (e.parent.parent.name) return !1;
      const i = e.parent.elements.filter((o) => !o.isTypeOnly);
      if (i.length === 1) return !0;
      const a = n.getTypeChecker();
      for (const o of i) if (Jo.Core.eachSymbolReferenceInFile(o.name, a, t, (c) => {
        const _ = a.getSymbolAtLocation(c);
        return !!_ && a.symbolIsValue(_) || !vv(c);
      })) return !1;
      return !0;
    }
    function JL(e, t, n) {
      var i;
      if (p_(n)) e.replaceNode(t, n, A.updateImportSpecifier(n, !0, n.propertyName, n.name));
      else {
        const a = n.importClause;
        if (a.name && a.namedBindings) e.replaceNodeWithNodes(t, n, [A.createImportDeclaration(qb(n.modifiers, !0), A.createImportClause(156, no(a.name, !0), void 0), no(n.moduleSpecifier, !0), no(n.attributes, !0)), A.createImportDeclaration(qb(n.modifiers, !0), A.createImportClause(156, void 0, no(a.namedBindings, !0)), no(n.moduleSpecifier, !0), no(n.attributes, !0))]);
        else {
          const o = ((i = a.namedBindings) == null ? void 0 : i.kind) === 276 ? A.updateNamedImports(a.namedBindings, el(a.namedBindings.elements, (_) => A.updateImportSpecifier(_, !1, _.propertyName, _.name))) : a.namedBindings, c = A.updateImportDeclaration(n, n.modifiers, A.updateImportClause(a, 156, a.name, o), n.moduleSpecifier, n.attributes);
          e.replaceNode(t, n, c);
        }
      }
    }
    var rle = "convertTypedefToType", _ke = [p.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];
    ps({
      fixIds: [rle],
      errorCodes: _ke,
      getCodeActions(e) {
        const t = Xh(e.host, e.formatContext.options), n = xi(e.sourceFile, e.span.start);
        if (!n) return;
        const i = on.ChangeTracker.with(e, (a) => fke(a, n, e.sourceFile, t));
        if (i.length > 0) return [Va(rle, i, p.Convert_typedef_to_TypeScript_type, rle, p.Convert_all_typedef_to_TypeScript_types)];
      },
      getAllCodeActions: (e) => lo(e, _ke, (t, n) => {
        const i = Xh(e.host, e.formatContext.options), a = xi(n.file, n.start);
        a && fke(t, a, n.file, i, !0);
      })
    });
    function fke(e, t, n, i, a = !1) {
      if (!WS(t)) return;
      const o = Qqe(t);
      if (!o) return;
      const c = t.parent, { leftSibling: _, rightSibling: u } = Xqe(t);
      let d = c.getStart(), g = "";
      !_ && c.comment && (d = pke(c, c.getStart(), t.getStart()), g = `${i} */${i}`), _ && (a && WS(_) ? (d = t.getStart(), g = "") : (d = pke(c, _.getStart(), t.getStart()), g = `${i} */${i}`));
      let h = c.getEnd(), S = "";
      u && (a && WS(u) ? (h = u.getStart(), S = `${i}${i}`) : (h = u.getStart(), S = `${i}/**${i} * `)), e.replaceRange(n, {
        pos: d,
        end: h
      }, o, {
        prefix: g,
        suffix: S
      });
    }
    function Xqe(e) {
      const t = e.parent, n = t.getChildCount() - 1, i = t.getChildren().findIndex((a) => a.getStart() === e.getStart() && a.getEnd() === e.getEnd());
      return {
        leftSibling: i > 0 ? t.getChildAt(i - 1) : void 0,
        rightSibling: i < n ? t.getChildAt(i + 1) : void 0
      };
    }
    function pke(e, t, n) {
      const i = e.getText().substring(t - e.getStart(), n - e.getStart());
      for (let a = i.length; a > 0; a--) if (!/[*/\s]/.test(i.substring(a - 1, a))) return t + a;
      return n;
    }
    function Qqe(e) {
      var t;
      const { typeExpression: n } = e;
      if (!n) return;
      const i = (t = e.name) == null ? void 0 : t.getText();
      if (i) {
        if (n.kind === 323) return Yqe(i, n);
        if (n.kind === 310) return Zqe(i, n);
      }
    }
    function Yqe(e, t) {
      const n = dke(t);
      if (_t(n))
        return A.createInterfaceDeclaration(void 0, e, void 0, void 0, n);
    }
    function Zqe(e, t) {
      const n = no(t.type);
      if (n)
        return A.createTypeAliasDeclaration(void 0, A.createIdentifier(e), void 0, n);
    }
    function dke(e) {
      const t = e.jsDocPropertyTags;
      return _t(t) ? Rn(t, (i) => {
        var a;
        const o = Kqe(i), c = (a = i.typeExpression) == null ? void 0 : a.type, _ = i.isBracketed;
        let u;
        if (c && zS(c)) {
          const d = dke(c);
          u = A.createTypeLiteralNode(d);
        } else c && (u = no(c));
        if (u && o) {
          const d = _ ? A.createToken(58) : void 0;
          return A.createPropertySignature(void 0, o, d, u);
        }
      }) : void 0;
    }
    function Kqe(e) {
      return e.name.kind === 80 ? e.name.text : e.name.right.text;
    }
    function eGe(e) {
      return Jf(e) ? ks(e.jsDoc, (t) => {
        var n;
        return (n = t.tags) == null ? void 0 : n.filter((i) => WS(i));
      }) : [];
    }
    var nle = "convertLiteralTypeToMappedType", mke = [p._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];
    ps({
      errorCodes: mke,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = gke(n, i.start);
        if (!a) return;
        const { name: o, constraint: c } = a;
        return [Va(nle, on.ChangeTracker.with(t, (_) => hke(_, n, a)), [
          p.Convert_0_to_1_in_0,
          c,
          o
        ], nle, p.Convert_all_type_literals_to_mapped_type)];
      },
      fixIds: [nle],
      getAllCodeActions: (e) => lo(e, mke, (t, n) => {
        const i = gke(n.file, n.start);
        i && hke(t, n.file, i);
      })
    });
    function gke(e, t) {
      const n = xi(e, t);
      if (Fe(n)) {
        const i = ns(n.parent.parent, f_), a = n.getText(e);
        return {
          container: ns(i.parent, C_),
          typeNode: i.type,
          constraint: a,
          name: a === "K" ? "P" : "K"
        };
      }
    }
    function hke(e, t, { container: n, typeNode: i, constraint: a, name: o }) {
      e.replaceNode(t, n, A.createMappedTypeNode(void 0, A.createTypeParameterDeclaration(void 0, o, A.createTypeReferenceNode(a)), void 0, void 0, i, void 0));
    }
    var yke = [p.Class_0_incorrectly_implements_interface_1.code, p.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code], ile = "fixClassIncorrectlyImplementsInterface";
    ps({
      errorCodes: yke,
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e, i = vke(t, n.start);
        return Rn(f6(i), (a) => {
          const o = on.ChangeTracker.with(e, (c) => Ske(e, a, t, i, c, e.preferences));
          return o.length === 0 ? void 0 : Va(ile, o, [p.Implement_interface_0, a.getText(t)], ile, p.Implement_all_unimplemented_interfaces);
        });
      },
      fixIds: [ile],
      getAllCodeActions(e) {
        const t = /* @__PURE__ */ new Set();
        return lo(e, yke, (n, i) => {
          const a = vke(i.file, i.start);
          if (Yp(t, Hs(a))) for (const o of f6(a)) Ske(e, o, i.file, a, n, e.preferences);
        });
      }
    });
    function vke(e, t) {
      return E.checkDefined(nu(xi(e, t)), "There should be a containing class");
    }
    function bke(e) {
      return !e.valueDeclaration || !(Pu(e.valueDeclaration) & 2);
    }
    function Ske(e, t, n, i, a, o) {
      const c = e.program.getTypeChecker(), _ = tGe(i, c), u = c.getTypeAtLocation(t), d = c.getPropertiesOfType(u).filter(x7(bke, (D) => !_.has(D.escapedName))), g = c.getTypeAtLocation(i), h = xr(i.members, (D) => yc(D));
      g.getNumberIndexType() || T(u, 1), g.getStringIndexType() || T(u, 0);
      const S = d2(n, e.program, o, e.host);
      Yle(i, d, n, e, o, S, (D) => k(n, i, D)), S.writeFixes(a);
      function T(D, P) {
        const N = c.getIndexInfoOfType(D, P);
        N && k(n, i, c.indexInfoToIndexSignatureDeclaration(N, i, void 0, void 0, SE(e)));
      }
      function k(D, P, N) {
        h ? a.insertNodeAfter(D, h, N) : a.insertMemberAtStart(D, P, N);
      }
    }
    function tGe(e, t) {
      const n = Jd(e);
      if (!n) return Ka();
      const i = t.getTypeAtLocation(n);
      return Ka(t.getPropertiesOfType(i).filter(bke));
    }
    var Tke = "import", xke = "fixMissingImport", kke = [
      p.Cannot_find_name_0.code,
      p.Cannot_find_name_0_Did_you_mean_1.code,
      p.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,
      p.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,
      p.Cannot_find_namespace_0.code,
      p._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,
      p._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,
      p.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,
      p._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,
      p.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,
      p.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig.code,
      p.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,
      p.Cannot_find_namespace_0_Did_you_mean_1.code,
      p.Cannot_extend_an_interface_0_Did_you_mean_implements.code,
      p.This_JSX_tag_requires_0_to_be_in_scope_but_it_could_not_be_found.code
    ];
    ps({
      errorCodes: kke,
      getCodeActions(e) {
        const { errorCode: t, preferences: n, sourceFile: i, span: a, program: o } = e, c = Ake(e, t, a.start, !0);
        if (c)
          return c.map(({ fix: _, symbolName: u, errorIdentifierText: d }) => ole(e, i, u, _, u !== d, o, n));
      },
      fixIds: [xke],
      getAllCodeActions: (e) => {
        const { sourceFile: t, program: n, preferences: i, host: a, cancellationToken: o } = e, c = Cke(t, n, !0, i, a, o);
        return zk(e, kke, (_) => c.addImportFromDiagnostic(_, e)), Jk(on.ChangeTracker.with(e, c.writeFixes));
      }
    });
    function d2(e, t, n, i, a) {
      return Cke(e, t, !1, n, i, a);
    }
    function Cke(e, t, n, i, a, o) {
      const c = t.getCompilerOptions(), _ = [], u = [], d = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set(), S = /* @__PURE__ */ new Map();
      return {
        addImportFromDiagnostic: D,
        addImportFromExportedSymbol: P,
        addImportForModuleSymbol: N,
        writeFixes: L,
        hasFixes: H,
        addImportForUnresolvedIdentifier: k,
        addImportForNonExistentExport: M,
        removeExistingImport: R,
        addVerbatimImport: T
      };
      function T(U) {
        h.add(U);
      }
      function k(U, pe, ie) {
        const W = fGe(U, pe, ie);
        !W || !W.length || G(js(W));
      }
      function D(U, pe) {
        const ie = Ake(pe, U.code, U.start, n);
        !ie || !ie.length || G(js(ie));
      }
      function P(U, pe, ie) {
        var W, Q;
        const se = E.checkDefined(U.parent, "Expected exported symbol to have module symbol as parent"), he = mL(U, Ps(c)), fe = t.getTypeChecker(), de = Dke(e, fe.getMergedSymbol(mu(U, fe)), he, se, !1, t, a, i, o);
        if (!de) {
          E.assert((W = i.autoImportFileExcludePatterns) == null ? void 0 : W.length);
          return;
        }
        const $ = JI(e, t);
        let Se = ale(e, de, t, void 0, !!pe, $, a, i);
        if (Se) {
          const Be = ((Q = qn(ie?.name, Fe)) == null ? void 0 : Q.text) ?? he;
          let ce, oe;
          ie && XC(ie) && (Se.kind === 3 || Se.kind === 2) && Se.addAsTypeOnly === 1 && (ce = 2), U.name !== Be && (oe = U.name), Se = {
            ...Se,
            ...ce === void 0 ? {} : { addAsTypeOnly: ce },
            ...oe === void 0 ? {} : { propertyName: oe }
          }, G({
            fix: Se,
            symbolName: Be ?? he,
            errorIdentifierText: void 0
          });
        }
      }
      function N(U, pe, ie) {
        var W, Q, se;
        const he = t.getTypeChecker(), fe = he.getAliasedSymbol(U);
        E.assert(fe.flags & 1536, "Expected symbol to be a module");
        const de = Bv(t, a), $ = $h.getModuleSpecifiersWithCacheInfo(fe, he, c, e, de, i, void 0, !0), Se = JI(e, t);
        let Be = WL(pe, !0, void 0, U.flags, t.getTypeChecker(), c);
        Be = Be === 1 && XC(ie) ? 2 : 1;
        const ce = ic(ie) ? TS(ie) ? 1 : 2 : p_(ie) ? 0 : hd(ie) && ie.name ? 1 : 2, oe = ale(e, [{
          symbol: U,
          moduleSymbol: fe,
          moduleFileName: (se = (Q = (W = fe.declarations) == null ? void 0 : W[0]) == null ? void 0 : Q.getSourceFile()) == null ? void 0 : se.fileName,
          exportKind: 4,
          targetFlags: U.flags,
          isFromPackageJson: !1
        }], t, void 0, !!pe, Se, a, i);
        let ge;
        oe && ce !== 2 && oe.kind !== 0 && oe.kind !== 1 ? ge = {
          ...oe,
          addAsTypeOnly: Be,
          importKind: ce
        } : ge = {
          kind: 3,
          moduleSpecifierKind: oe !== void 0 ? oe.moduleSpecifierKind : $.kind,
          moduleSpecifier: oe !== void 0 ? oe.moduleSpecifier : js($.moduleSpecifiers),
          importKind: ce,
          addAsTypeOnly: Be,
          useRequire: Se
        }, G({
          fix: ge,
          symbolName: U.name,
          errorIdentifierText: void 0
        });
      }
      function M(U, pe, ie, W, Q) {
        const se = t.getSourceFile(pe), he = JI(e, t);
        if (se && se.symbol) {
          const { fixes: fe } = zL([{
            exportKind: ie,
            isFromPackageJson: !1,
            moduleFileName: pe,
            moduleSymbol: se.symbol,
            targetFlags: W
          }], void 0, Q, he, t, e, a, i);
          fe.length && G({
            fix: fe[0],
            symbolName: U,
            errorIdentifierText: U
          });
        } else {
          const fe = bL(pe, 99, t, a);
          G({
            fix: {
              kind: 3,
              moduleSpecifierKind: "relative",
              moduleSpecifier: $h.getLocalModuleSpecifierBetweenFileNames(e, pe, c, Bv(t, a), i),
              importKind: OG(fe, ie, t),
              addAsTypeOnly: WL(Q, !0, void 0, W, t.getTypeChecker(), c),
              useRequire: he
            },
            symbolName: U,
            errorIdentifierText: U
          });
        }
      }
      function R(U) {
        U.kind === 274 && E.assertIsDefined(U.name, "ImportClause should have a name if it's being removed"), g.add(U);
      }
      function G(U) {
        var pe, ie, W;
        const { fix: Q, symbolName: se } = U;
        switch (Q.kind) {
          case 0:
            _.push(Q);
            break;
          case 1:
            u.push(Q);
            break;
          case 2: {
            const { importClauseOrBindingPattern: $, importKind: Se, addAsTypeOnly: Be, propertyName: ce } = Q;
            let oe = d.get($);
            if (oe || d.set($, oe = {
              importClauseOrBindingPattern: $,
              defaultImport: void 0,
              namedImports: /* @__PURE__ */ new Map()
            }), Se === 0) {
              const ge = (pe = oe?.namedImports.get(se)) == null ? void 0 : pe.addAsTypeOnly;
              oe.namedImports.set(se, {
                addAsTypeOnly: he(ge, Be),
                propertyName: ce
              });
            } else
              E.assert(oe.defaultImport === void 0 || oe.defaultImport.name === se, "(Add to Existing) Default import should be missing or match symbolName"), oe.defaultImport = {
                name: se,
                addAsTypeOnly: he((ie = oe.defaultImport) == null ? void 0 : ie.addAsTypeOnly, Be)
              };
            break;
          }
          case 3: {
            const { moduleSpecifier: $, importKind: Se, useRequire: Be, addAsTypeOnly: ce, propertyName: oe } = Q, ge = fe($, Se, Be, ce);
            switch (E.assert(ge.useRequire === Be, "(Add new) Tried to add an `import` and a `require` for the same module"), Se) {
              case 1:
                E.assert(ge.defaultImport === void 0 || ge.defaultImport.name === se, "(Add new) Default import should be missing or match symbolName"), ge.defaultImport = {
                  name: se,
                  addAsTypeOnly: he((W = ge.defaultImport) == null ? void 0 : W.addAsTypeOnly, ce)
                };
                break;
              case 0:
                const Ae = (ge.namedImports || (ge.namedImports = /* @__PURE__ */ new Map())).get(se);
                ge.namedImports.set(se, [he(Ae, ce), oe]);
                break;
              case 3:
                if (c.verbatimModuleSyntax) {
                  const Ne = (ge.namedImports || (ge.namedImports = /* @__PURE__ */ new Map())).get(se);
                  ge.namedImports.set(se, [he(Ne, ce), oe]);
                } else
                  E.assert(ge.namespaceLikeImport === void 0 || ge.namespaceLikeImport.name === se, "Namespacelike import shoudl be missing or match symbolName"), ge.namespaceLikeImport = {
                    importKind: Se,
                    name: se,
                    addAsTypeOnly: ce
                  };
                break;
              case 2:
                E.assert(ge.namespaceLikeImport === void 0 || ge.namespaceLikeImport.name === se, "Namespacelike import shoudl be missing or match symbolName"), ge.namespaceLikeImport = {
                  importKind: Se,
                  name: se,
                  addAsTypeOnly: ce
                };
                break;
            }
            break;
          }
          case 4:
            break;
          default:
            E.assertNever(Q, `fix wasn't never - got kind ${Q.kind}`);
        }
        function he($, Se) {
          return Math.max($ ?? 0, Se);
        }
        function fe($, Se, Be, ce) {
          const oe = de($, !0), ge = de($, !1), Ae = S.get(oe), Ne = S.get(ge), ot = {
            defaultImport: void 0,
            namedImports: void 0,
            namespaceLikeImport: void 0,
            useRequire: Be
          };
          return Se === 1 && ce === 2 ? Ae || (S.set(oe, ot), ot) : ce === 1 && (Ae || Ne) ? Ae || Ne : Ne || (S.set(ge, ot), ot);
        }
        function de($, Se) {
          return `${Se ? 1 : 0}|${$}`;
        }
      }
      function L(U, pe) {
        var ie, W;
        let Q;
        e.imports !== void 0 && e.imports.length === 0 && pe !== void 0 ? Q = pe : Q = Df(e, i);
        for (const fe of _) cle(U, e, fe);
        for (const fe of u) Bke(U, e, fe, Q);
        let se;
        if (g.size) {
          E.assert(Hg(e), "Cannot remove imports from a future source file");
          const fe = new Set(Rn([...g], (ce) => cr(ce, ic))), de = new Set(Rn([...g], (ce) => cr(ce, cD))), $ = [...fe].filter((ce) => {
            var oe, ge, Ae;
            return !d.has(ce.importClause) && (!((oe = ce.importClause) != null && oe.name) || g.has(ce.importClause)) && (!qn((ge = ce.importClause) == null ? void 0 : ge.namedBindings, nh) || g.has(ce.importClause.namedBindings)) && (!qn((Ae = ce.importClause) == null ? void 0 : Ae.namedBindings, Nm) || hr(ce.importClause.namedBindings.elements, (Ne) => g.has(Ne)));
          }), Se = [...de].filter((ce) => (ce.name.kind !== 207 || !d.has(ce.name)) && (ce.name.kind !== 207 || hr(ce.name.elements, (oe) => g.has(oe)))), Be = [...fe].filter((ce) => {
            var oe, ge;
            return ((oe = ce.importClause) == null ? void 0 : oe.namedBindings) && $.indexOf(ce) === -1 && !((ge = d.get(ce.importClause)) != null && ge.namedImports) && (ce.importClause.namedBindings.kind === 275 || hr(ce.importClause.namedBindings.elements, (Ae) => g.has(Ae)));
          });
          for (const ce of [...$, ...Se]) U.delete(e, ce);
          for (const ce of Be) U.replaceNode(e, ce.importClause, A.updateImportClause(ce.importClause, ce.importClause.phaseModifier, ce.importClause.name, void 0));
          for (const ce of g) {
            const oe = cr(ce, ic);
            oe && $.indexOf(oe) === -1 && Be.indexOf(oe) === -1 ? ce.kind === 274 ? U.delete(e, ce.name) : (E.assert(ce.kind === 277, "NamespaceImport should have been handled earlier"), (ie = d.get(oe.importClause)) != null && ie.namedImports ? (se ?? (se = /* @__PURE__ */ new Set())).add(ce) : U.delete(e, ce)) : ce.kind === 209 ? (W = d.get(ce.parent)) != null && W.namedImports ? (se ?? (se = /* @__PURE__ */ new Set())).add(ce) : U.delete(e, ce) : ce.kind === 272 && U.delete(e, ce);
          }
        }
        d.forEach(({ importClauseOrBindingPattern: fe, defaultImport: de, namedImports: $ }) => {
          jke(U, e, fe, de, ma($.entries(), ([Se, { addAsTypeOnly: Be, propertyName: ce }]) => ({
            addAsTypeOnly: Be,
            propertyName: ce,
            name: Se
          })), se, i);
        });
        let he;
        S.forEach(({ useRequire: fe, defaultImport: de, namedImports: $, namespaceLikeImport: Se }, Be) => {
          const ce = Be.slice(2), oe = (fe ? Wke : zke)(ce, Q, de, $ && ma($.entries(), ([ge, [Ae, Ne]]) => ({
            addAsTypeOnly: Ae,
            propertyName: Ne,
            name: ge
          })), Se, c, i);
          he = lx(he, oe);
        }), he = lx(he, z()), he && lq(U, e, he, !0, i);
      }
      function z() {
        if (!h.size) return;
        const U = new Set(Rn([...h], (ie) => cr(ie, ic))), pe = new Set(Rn([...h], (ie) => cr(ie, iA)));
        return [
          ...Rn([...h], (ie) => ie.kind === 272 ? no(ie, !0) : void 0),
          ...[...U].map((ie) => {
            var W;
            return h.has(ie) ? no(ie, !0) : no(A.updateImportDeclaration(ie, ie.modifiers, ie.importClause && A.updateImportClause(ie.importClause, ie.importClause.phaseModifier, h.has(ie.importClause) ? ie.importClause.name : void 0, h.has(ie.importClause.namedBindings) ? ie.importClause.namedBindings : (W = qn(ie.importClause.namedBindings, Nm)) != null && W.elements.some((Q) => h.has(Q)) ? A.updateNamedImports(ie.importClause.namedBindings, ie.importClause.namedBindings.elements.filter((Q) => h.has(Q))) : void 0), ie.moduleSpecifier, ie.attributes), !0);
          }),
          ...[...pe].map((ie) => h.has(ie) ? no(ie, !0) : no(A.updateVariableStatement(ie, ie.modifiers, A.updateVariableDeclarationList(ie.declarationList, Rn(ie.declarationList.declarations, (W) => h.has(W) ? W : A.updateVariableDeclaration(W, W.name.kind === 207 ? A.updateObjectBindingPattern(W.name, W.name.elements.filter((Q) => h.has(Q))) : W.name, W.exclamationToken, W.type, W.initializer)))), !0))
        ];
      }
      function H() {
        return _.length > 0 || u.length > 0 || d.size > 0 || S.size > 0 || h.size > 0 || g.size > 0;
      }
    }
    function rGe(e, t, n, i) {
      const a = mE(e, i, n), o = wke(e, t);
      return { getModuleSpecifierForBestExportInfo: c };
      function c(_, u, d, g) {
        const { fixes: h, computedWithoutCacheCount: S } = zL(_, u, d, !1, t, e, n, i, o, g), T = Ike(h, e, t, a, n, i);
        return T && {
          ...T,
          computedWithoutCacheCount: S
        };
      }
    }
    function nGe(e, t, n, i, a, o, c, _, u, d, g, h) {
      let S;
      n ? (S = EI(i, c, _, g, h).get(i.path, n), E.assertIsDefined(S, "Some exportInfo should match the specified exportMapKey")) : (S = Fj(Qp(t.name)) ? [aGe(e, a, t, _, c)] : Dke(i, e, a, t, o, _, c, g, h), E.assertIsDefined(S, "Some exportInfo should match the specified symbol / moduleSymbol"));
      const T = JI(i, _), k = vv(xi(i, d)), D = E.checkDefined(ale(i, S, _, d, k, T, c, g));
      return {
        moduleSpecifier: D.moduleSpecifier,
        codeAction: Eke(ole({
          host: c,
          formatContext: u,
          preferences: g
        }, i, a, D, !1, _, g))
      };
    }
    function iGe(e, t, n, i, a, o) {
      const c = n.getCompilerOptions(), _ = $R(sle(e, n.getTypeChecker(), t, c)), u = Mke(e, t, _, n), d = _ !== t.text;
      return u && Eke(ole({
        host: i,
        formatContext: a,
        preferences: o
      }, e, _, u, d, n, o));
    }
    function ale(e, t, n, i, a, o, c, _) {
      const u = mE(e, _, c);
      return Ike(zL(t, i, a, o, n, e, c, _).fixes, e, n, u, c, _);
    }
    function Eke({ description: e, changes: t, commands: n }) {
      return {
        description: e,
        changes: t,
        commands: n
      };
    }
    function Dke(e, t, n, i, a, o, c, _, u) {
      const d = Pke(o, c), g = _.autoImportFileExcludePatterns && qse(c, _), h = o.getTypeChecker().getMergedSymbol(i), S = g && h.declarations && Ho(h, 308), T = S && g(S);
      return EI(e, c, o, _, u).search(e.path, a, (k) => k === n, (k) => {
        const D = d(k[0].isFromPackageJson);
        if (D.getMergedSymbol(mu(k[0].symbol, D)) === t && (T || k.some((P) => D.getMergedSymbol(P.moduleSymbol) === i || P.symbol.parent === i))) return k;
      });
    }
    function aGe(e, t, n, i, a) {
      var o, c;
      const _ = d(i.getTypeChecker(), !1);
      if (_) return _;
      const u = (c = (o = a.getPackageJsonAutoImportProvider) == null ? void 0 : o.call(a)) == null ? void 0 : c.getTypeChecker();
      return E.checkDefined(u && d(u, !0), "Could not find symbol in specified module for code actions");
      function d(g, h) {
        const S = SL(n, g);
        if (S && mu(S.symbol, g) === e) return {
          symbol: S.symbol,
          moduleSymbol: n,
          moduleFileName: void 0,
          exportKind: S.exportKind,
          targetFlags: mu(e, g).flags,
          isFromPackageJson: h
        };
        const T = g.tryGetMemberInModuleExportsAndProperties(t, n);
        if (T && mu(T, g) === e) return {
          symbol: T,
          moduleSymbol: n,
          moduleFileName: void 0,
          exportKind: 0,
          targetFlags: mu(e, g).flags,
          isFromPackageJson: h
        };
      }
    }
    function zL(e, t, n, i, a, o, c, _, u = Hg(o) ? wke(o, a) : void 0, d) {
      const g = a.getTypeChecker(), h = u ? ks(e, u.getImportsForExportInfo) : Te, S = t !== void 0 && sGe(h, t), T = cGe(h, n, g, a.getCompilerOptions());
      if (T) return {
        computedWithoutCacheCount: 0,
        fixes: [...S ? [S] : Te, T]
      };
      const { fixes: k, computedWithoutCacheCount: D = 0 } = uGe(e, h, a, o, t, n, i, c, _, d);
      return {
        computedWithoutCacheCount: D,
        fixes: [...S ? [S] : Te, ...k]
      };
    }
    function sGe(e, t) {
      return Hn(e, ({ declaration: n, importKind: i }) => {
        var a;
        if (i !== 0) return;
        const o = oGe(n), c = o && ((a = Fx(n)) == null ? void 0 : a.text);
        if (c) return {
          kind: 0,
          namespacePrefix: o,
          usagePosition: t,
          moduleSpecifierKind: void 0,
          moduleSpecifier: c
        };
      });
    }
    function oGe(e) {
      var t, n, i;
      switch (e.kind) {
        case 261:
          return (t = qn(e.name, Fe)) == null ? void 0 : t.text;
        case 272:
          return e.name.text;
        case 352:
        case 273:
          return (i = qn((n = e.importClause) == null ? void 0 : n.namedBindings, nh)) == null ? void 0 : i.name.text;
        default:
          return E.assertNever(e);
      }
    }
    function WL(e, t, n, i, a, o) {
      return e ? n && o.verbatimModuleSyntax && (!(i & 111551) || a.getTypeOnlyAliasDeclaration(n)) ? 2 : 1 : 4;
    }
    function cGe(e, t, n, i) {
      let a;
      for (const c of e) {
        const _ = o(c);
        if (!_) continue;
        const u = XC(_.importClauseOrBindingPattern);
        if (_.addAsTypeOnly !== 4 && u || _.addAsTypeOnly === 4 && !u) return _;
        a ?? (a = _);
      }
      return a;
      function o({ declaration: c, importKind: _, symbol: u, targetFlags: d }) {
        if (_ === 3 || _ === 2 || c.kind === 272) return;
        if (c.kind === 261) return (_ === 0 || _ === 1) && c.name.kind === 207 ? {
          kind: 2,
          importClauseOrBindingPattern: c.name,
          importKind: _,
          moduleSpecifierKind: void 0,
          moduleSpecifier: c.initializer.arguments[0].text,
          addAsTypeOnly: 4
        } : void 0;
        const { importClause: g } = c;
        if (!g || !Xs(c.moduleSpecifier)) return;
        const { name: h, namedBindings: S } = g;
        if (g.isTypeOnly && !(_ === 0 && S)) return;
        const T = WL(t, !1, u, d, n, i);
        if (!(_ === 1 && (h || T === 2 && S)) && !(_ === 0 && S?.kind === 275))
          return {
            kind: 2,
            importClauseOrBindingPattern: g,
            importKind: _,
            moduleSpecifierKind: void 0,
            moduleSpecifier: c.moduleSpecifier.text,
            addAsTypeOnly: T
          };
      }
    }
    function wke(e, t) {
      const n = t.getTypeChecker();
      let i;
      for (const a of e.imports) {
        const o = fD(a);
        if (cD(o.parent)) {
          const c = n.resolveExternalModuleName(a);
          c && (i || (i = Up())).add(ss(c), o.parent);
        } else if (o.kind === 273 || o.kind === 272 || o.kind === 352) {
          const c = n.getSymbolAtLocation(a);
          c && (i || (i = Up())).add(ss(c), o);
        }
      }
      return { getImportsForExportInfo: ({ moduleSymbol: a, exportKind: o, targetFlags: c, symbol: _ }) => {
        const u = i?.get(ss(a));
        if (!u || T_(e) && !(c & 111551) && !hr(u, Fm)) return Te;
        const d = OG(e, o, t);
        return u.map((g) => ({
          declaration: g,
          importKind: d,
          symbol: _,
          targetFlags: c
        }));
      } };
    }
    function JI(e, t) {
      if (!Zg(e.fileName)) return !1;
      if (e.commonJsModuleIndicator && !e.externalModuleIndicator) return !0;
      if (e.externalModuleIndicator && !e.commonJsModuleIndicator) return !1;
      const n = t.getCompilerOptions();
      if (n.configFile) return u_(n) < 5;
      if (ule(e, t) === 1) return !0;
      if (ule(e, t) === 99) return !1;
      for (const i of t.getSourceFiles())
        if (!(i === e || !T_(i) || t.isSourceFileFromExternalLibrary(i))) {
          if (i.commonJsModuleIndicator && !i.externalModuleIndicator) return !0;
          if (i.externalModuleIndicator && !i.commonJsModuleIndicator) return !1;
        }
      return !0;
    }
    function Pke(e, t) {
      return gm((n) => n ? t.getPackageJsonAutoImportProvider().getTypeChecker() : e.getTypeChecker());
    }
    function lGe(e, t, n, i, a, o, c, _, u) {
      const d = Zg(t.fileName), g = e.getCompilerOptions(), h = Bv(e, c), S = Pke(e, c), T = tL(Hu(g)), k = u ? (N) => $h.tryGetModuleSpecifiersFromCache(N.moduleSymbol, t, h, _) : (N, M) => $h.getModuleSpecifiersWithCacheInfo(N.moduleSymbol, M, g, t, h, _, void 0, !0);
      let D = 0;
      const P = ks(o, (N, M) => {
        const R = S(N.isFromPackageJson), { computedWithoutCache: G, moduleSpecifiers: L, kind: z } = k(N, R) ?? {}, H = !!(N.targetFlags & 111551), U = WL(i, !0, N.symbol, N.targetFlags, R, g);
        return D += G ? 1 : 0, Rn(L, (pe) => {
          if (T && p1(pe)) return;
          if (!H && d && n !== void 0) return {
            kind: 1,
            moduleSpecifierKind: z,
            moduleSpecifier: pe,
            usagePosition: n,
            exportInfo: N,
            isReExport: M > 0
          };
          const ie = OG(t, N.exportKind, e);
          let W;
          if (n !== void 0 && ie === 3 && N.exportKind === 0) {
            const Q = R.resolveExternalModuleSymbol(N.moduleSymbol);
            let se;
            Q !== N.moduleSymbol && (se = TL(Q, R, Ps(g), mo)), se || (se = xI(N.moduleSymbol, Ps(g), !1)), W = {
              namespacePrefix: se,
              usagePosition: n
            };
          }
          return {
            kind: 3,
            moduleSpecifierKind: z,
            moduleSpecifier: pe,
            importKind: ie,
            useRequire: a,
            addAsTypeOnly: U,
            exportInfo: N,
            isReExport: M > 0,
            qualification: W
          };
        });
      });
      return {
        computedWithoutCacheCount: D,
        fixes: P
      };
    }
    function uGe(e, t, n, i, a, o, c, _, u, d) {
      const g = Hn(t, (h) => _Ge(h, o, c, n.getTypeChecker(), n.getCompilerOptions()));
      return g ? { fixes: [g] } : lGe(n, i, a, o, c, e, _, u, d);
    }
    function _Ge({ declaration: e, importKind: t, symbol: n, targetFlags: i }, a, o, c, _) {
      var u;
      const d = (u = Fx(e)) == null ? void 0 : u.text;
      if (d) return {
        kind: 3,
        moduleSpecifierKind: void 0,
        moduleSpecifier: d,
        importKind: t,
        addAsTypeOnly: o ? 4 : WL(a, !0, n, i, c, _),
        useRequire: o
      };
    }
    function Ake(e, t, n, i) {
      const a = xi(e.sourceFile, n);
      let o;
      if (t === p._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code) o = gGe(e, a);
      else if (Fe(a)) if (t === p._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code) {
        const _ = $R(sle(e.sourceFile, e.program.getTypeChecker(), a, e.program.getCompilerOptions())), u = Mke(e.sourceFile, a, _, e.program);
        return u && [{
          fix: u,
          symbolName: _,
          errorIdentifierText: a.text
        }];
      } else o = Lke(e, a, i);
      else return;
      const c = mE(e.sourceFile, e.preferences, e.host);
      return o && Nke(o, e.sourceFile, e.program, c, e.host, e.preferences);
    }
    function Nke(e, t, n, i, a, o) {
      const c = (_) => Eo(_, a.getCurrentDirectory(), Wh(a));
      return uf(e, (_, u) => tv(!!_.isJsxNamespaceFix, !!u.isJsxNamespaceFix) || Fo(_.fix.kind, u.fix.kind) || Oke(_.fix, u.fix, t, n, o, i.allowsImportingSpecifier, c));
    }
    function fGe(e, t, n) {
      const i = Lke(e, t, n), a = mE(e.sourceFile, e.preferences, e.host);
      return i && Nke(i, e.sourceFile, e.program, a, e.host, e.preferences);
    }
    function Ike(e, t, n, i, a, o) {
      if (_t(e))
        return e[0].kind === 0 || e[0].kind === 2 ? e[0] : e.reduce((c, _) => Oke(_, c, t, n, o, i.allowsImportingSpecifier, (u) => Eo(u, a.getCurrentDirectory(), Wh(a))) === -1 ? _ : c);
    }
    function Oke(e, t, n, i, a, o, c) {
      return e.kind !== 0 && t.kind !== 0 ? tv(t.moduleSpecifierKind !== "node_modules" || o(t.moduleSpecifier), e.moduleSpecifierKind !== "node_modules" || o(e.moduleSpecifier)) || pGe(e, t, a) || mGe(e.moduleSpecifier, t.moduleSpecifier, n, i) || tv(Fke(e, n.path, c), Fke(t, n.path, c)) || UA(e.moduleSpecifier, t.moduleSpecifier) : 0;
    }
    function pGe(e, t, n) {
      return n.importModuleSpecifierPreference === "non-relative" || n.importModuleSpecifierPreference === "project-relative" ? tv(e.moduleSpecifierKind === "relative", t.moduleSpecifierKind === "relative") : 0;
    }
    function Fke(e, t, n) {
      var i;
      return e.isReExport && ((i = e.exportInfo) != null && i.moduleFileName) && dGe(e.exportInfo.moduleFileName) ? ta(t, n(Xn(e.exportInfo.moduleFileName))) : !1;
    }
    function dGe(e) {
      return nl(e, [
        ".js",
        ".jsx",
        ".d.ts",
        ".ts",
        ".tsx"
      ], !0) === "index";
    }
    function mGe(e, t, n, i) {
      return ta(e, "node:") && !ta(t, "node:") ? hL(n, i) ? -1 : 1 : ta(t, "node:") && !ta(e, "node:") ? hL(n, i) ? 1 : -1 : 0;
    }
    function gGe({ sourceFile: e, program: t, host: n, preferences: i }, a) {
      const o = t.getTypeChecker(), c = hGe(a, o);
      if (!c) return;
      const _ = o.getAliasedSymbol(c), u = c.name;
      return zL([{
        symbol: c,
        moduleSymbol: _,
        moduleFileName: void 0,
        exportKind: 3,
        targetFlags: _.flags,
        isFromPackageJson: !1
      }], void 0, !1, JI(e, t), t, e, n, i).fixes.map((d) => {
        var g;
        return {
          fix: d,
          symbolName: u,
          errorIdentifierText: (g = qn(a, Fe)) == null ? void 0 : g.text
        };
      });
    }
    function hGe(e, t) {
      const n = Fe(e) ? t.getSymbolAtLocation(e) : void 0;
      if (cO(n)) return n;
      const { parent: i } = e;
      if (Gu(i) && i.tagName === e || yd(i)) {
        const a = t.resolveName(t.getJsxNamespace(i), Gu(i) ? e : i, 111551, !1);
        if (cO(a)) return a;
      }
    }
    function OG(e, t, n, i) {
      if (n.getCompilerOptions().verbatimModuleSyntax && kGe(e, n) === 1) return 3;
      switch (t) {
        case 0:
          return 0;
        case 1:
          return 1;
        case 2:
          return SGe(e, n.getCompilerOptions(), !!i);
        case 3:
          return yGe(e, n, !!i);
        case 4:
          return 2;
        default:
          return E.assertNever(t);
      }
    }
    function yGe(e, t, n) {
      if (Yx(t.getCompilerOptions())) return 1;
      const i = u_(t.getCompilerOptions());
      switch (i) {
        case 2:
        case 1:
        case 3:
          return Zg(e.fileName) && (e.externalModuleIndicator || n) ? 2 : 3;
        case 4:
        case 5:
        case 6:
        case 7:
        case 99:
        case 0:
        case 200:
          return 2;
        case 100:
        case 101:
        case 102:
        case 199:
          return ule(e, t) === 99 ? 2 : 3;
        default:
          return E.assertNever(i, `Unexpected moduleKind ${i}`);
      }
    }
    function Lke({ sourceFile: e, program: t, cancellationToken: n, host: i, preferences: a }, o, c) {
      return ks(sle(e, t.getTypeChecker(), o, t.getCompilerOptions()), (_) => {
        if (_ === "default") return;
        const u = vv(o), d = JI(e, t);
        return ma(pa(bGe(_, c6(o), YS(o), n, e, t, c, i, a).values(), (g) => zL(g, o.getStart(e), u, d, t, e, i, a).fixes), (g) => ({
          fix: g,
          symbolName: _,
          errorIdentifierText: o.text,
          isJsxNamespaceFix: _ !== o.text
        }));
      });
    }
    function Mke(e, t, n, i) {
      const a = i.getTypeChecker(), o = a.resolveName(n, t, 111551, !0);
      if (!o) return;
      const c = a.getTypeOnlyAliasDeclaration(o);
      if (!(!c || Sr(c) !== e))
        return {
          kind: 4,
          typeOnlyAliasDeclaration: c
        };
    }
    function sle(e, t, n, i) {
      const a = n.parent;
      if ((Gu(a) || Qb(a)) && a.tagName === n && Nq(i.jsx)) {
        const o = t.getJsxNamespace(e);
        if (vGe(o, n, t)) return !m6(n.text) && !t.resolveName(n.text, n, 111551, !1) ? [n.text, o] : [o];
      }
      return [n.text];
    }
    function vGe(e, t, n) {
      if (m6(t.text)) return !0;
      const i = n.resolveName(e, t, 111551, !0);
      return !i || _t(i.declarations, C0) && !(i.flags & 111551);
    }
    function bGe(e, t, n, i, a, o, c, _, u) {
      var d;
      const g = Up(), h = mE(a, u, _), S = (d = _.getModuleSpecifierCache) == null ? void 0 : d.call(_), T = gm((D) => Bv(D ? _.getPackageJsonAutoImportProvider() : o, _));
      function k(D, P, N, M, R, G) {
        if (Fq(R, a, P, D, u, h, T(G), S)) {
          const L = R.getTypeChecker();
          g.add(Nse(N, L).toString(), {
            symbol: N,
            moduleSymbol: D,
            moduleFileName: P?.fileName,
            exportKind: M,
            targetFlags: mu(N, L).flags,
            isFromPackageJson: G
          });
        }
      }
      return Lq(o, _, u, c, (D, P, N, M) => {
        const R = N.getTypeChecker();
        i.throwIfCancellationRequested();
        const G = N.getCompilerOptions(), L = SL(D, R);
        L && Vke(R.getSymbolFlags(L.symbol), n) && TL(L.symbol, R, Ps(G), (H, U) => (t ? U ?? H : H) === e) && k(D, P, L.symbol, L.exportKind, N, M);
        const z = R.tryGetMemberInModuleExportsAndProperties(e, D);
        z && Vke(R.getSymbolFlags(z), n) && k(D, P, z, 0, N, M);
      }), g;
    }
    function SGe(e, t, n) {
      const i = Yx(t), a = Zg(e.fileName);
      if (!a && u_(t) >= 5) return i ? 1 : 2;
      if (a) return e.externalModuleIndicator || n ? i ? 1 : 2 : 3;
      for (const o of e.statements ?? Te) if (bl(o) && !Nc(o.moduleReference)) return 3;
      return i ? 1 : 3;
    }
    function ole(e, t, n, i, a, o, c) {
      let _;
      return Va(Tke, on.ChangeTracker.with(e, (u) => {
        _ = TGe(u, t, n, i, a, o, c);
      }), _, xke, p.Add_all_missing_imports);
    }
    function TGe(e, t, n, i, a, o, c) {
      const _ = Df(t, c);
      switch (i.kind) {
        case 0:
          return cle(e, t, i), [
            p.Change_0_to_1,
            n,
            `${i.namespacePrefix}.${n}`
          ];
        case 1:
          return Bke(e, t, i, _), [
            p.Change_0_to_1,
            n,
            Jke(i.moduleSpecifier, _) + n
          ];
        case 2: {
          const { importClauseOrBindingPattern: u, importKind: d, addAsTypeOnly: g, moduleSpecifier: h } = i;
          jke(e, t, u, d === 1 ? {
            name: n,
            addAsTypeOnly: g
          } : void 0, d === 0 ? [{
            name: n,
            addAsTypeOnly: g
          }] : Te, void 0, c);
          const S = Qp(h);
          return a ? [
            p.Import_0_from_1,
            n,
            S
          ] : [p.Update_import_from_0, S];
        }
        case 3: {
          const { importKind: u, moduleSpecifier: d, addAsTypeOnly: g, useRequire: h, qualification: S } = i;
          return lq(e, t, (h ? Wke : zke)(d, _, u === 1 ? {
            name: n,
            addAsTypeOnly: g
          } : void 0, u === 0 ? [{
            name: n,
            addAsTypeOnly: g
          }] : void 0, u === 2 || u === 3 ? {
            importKind: u,
            name: S?.namespacePrefix || n,
            addAsTypeOnly: g
          } : void 0, o.getCompilerOptions(), c), !0, c), S && cle(e, t, S), a ? [
            p.Import_0_from_1,
            n,
            d
          ] : [p.Add_import_from_0, d];
        }
        case 4: {
          const { typeOnlyAliasDeclaration: u } = i, d = xGe(e, u, o, t, c);
          return d.kind === 277 ? [
            p.Remove_type_from_import_of_0_from_1,
            n,
            Rke(d.parent.parent)
          ] : [p.Remove_type_from_import_declaration_from_0, Rke(d)];
        }
        default:
          return E.assertNever(i, `Unexpected fix kind ${i.kind}`);
      }
    }
    function Rke(e) {
      var t, n;
      return e.kind === 272 ? ((n = qn((t = qn(e.moduleReference, qh)) == null ? void 0 : t.expression, Xs)) == null ? void 0 : n.text) || e.moduleReference.getText() : ns(e.parent.moduleSpecifier, Ts).text;
    }
    function xGe(e, t, n, i, a) {
      const o = n.getCompilerOptions(), c = o.verbatimModuleSyntax;
      switch (t.kind) {
        case 277:
          if (t.isTypeOnly) {
            if (t.parent.elements.length > 1) {
              const u = A.updateImportSpecifier(t, !1, t.propertyName, t.name), { specifierComparer: d } = Gv.getNamedImportSpecifierComparerWithDetection(t.parent.parent.parent, a, i), g = Gv.getImportSpecifierInsertionIndex(t.parent.elements, u, d);
              if (g !== t.parent.elements.indexOf(t))
                return e.delete(i, t), e.insertImportSpecifierAtIndex(i, u, t.parent, g), t;
            }
            return e.deleteRange(i, {
              pos: ov(t.getFirstToken()),
              end: ov(t.propertyName ?? t.name)
            }), t;
          } else
            return E.assert(t.parent.parent.isTypeOnly), _(t.parent.parent), t.parent.parent;
        case 274:
          return _(t), t;
        case 275:
          return _(t.parent), t.parent;
        case 272:
          return e.deleteRange(i, t.getChildAt(1)), t;
        default:
          E.failBadSyntaxKind(t);
      }
      function _(u) {
        var d;
        if (e.delete(i, uq(u, i)), !o.allowImportingTsExtensions) {
          const g = Fx(u.parent), h = g && ((d = n.getResolvedModuleFromModuleSpecifier(g, i)) == null ? void 0 : d.resolvedModule);
          if (h?.resolvedUsingTsExtension) {
            const S = m3(g.text, VN(g.text, o));
            e.replaceNode(i, g, A.createStringLiteral(S));
          }
        }
        if (c) {
          const g = qn(u.namedBindings, Nm);
          if (g && g.elements.length > 1) {
            Gv.getNamedImportSpecifierComparerWithDetection(u.parent, a, i).isSorted !== !1 && t.kind === 277 && g.elements.indexOf(t) !== 0 && (e.delete(i, t), e.insertImportSpecifierAtIndex(i, t, g, 0));
            for (const h of g.elements) h !== t && !h.isTypeOnly && e.insertModifierBefore(i, 156, h);
          }
        }
      }
    }
    function jke(e, t, n, i, a, o, c) {
      var _;
      if (n.kind === 207) {
        if (o && n.elements.some((h) => o.has(h))) {
          e.replaceNode(t, n, A.createObjectBindingPattern([
            ...n.elements.filter((h) => !o.has(h)),
            ...i ? [A.createBindingElement(void 0, "default", i.name)] : Te,
            ...a.map((h) => A.createBindingElement(void 0, h.propertyName, h.name))
          ]));
          return;
        }
        i && g(n, i.name, "default");
        for (const h of a) g(n, h.name, h.propertyName);
        return;
      }
      const u = n.isTypeOnly && _t([i, ...a], (h) => h?.addAsTypeOnly === 4), d = n.namedBindings && ((_ = qn(n.namedBindings, Nm)) == null ? void 0 : _.elements);
      if (i && (E.assert(!n.name, "Cannot add a default import to an import clause that already has one"), e.insertNodeAt(t, n.getStart(t), A.createIdentifier(i.name), { suffix: ", " })), a.length) {
        const { specifierComparer: h, isSorted: S } = Gv.getNamedImportSpecifierComparerWithDetection(n.parent, c, t), T = uf(a.map((k) => A.createImportSpecifier((!n.isTypeOnly || u) && FG(k, c), k.propertyName === void 0 ? void 0 : A.createIdentifier(k.propertyName), A.createIdentifier(k.name))), h);
        if (o) e.replaceNode(t, n.namedBindings, A.updateNamedImports(n.namedBindings, uf([...d.filter((k) => !o.has(k)), ...T], h)));
        else if (d?.length && S !== !1) {
          const k = u && d ? A.updateNamedImports(n.namedBindings, el(d, (D) => A.updateImportSpecifier(D, !0, D.propertyName, D.name))).elements : d;
          for (const D of T) {
            const P = Gv.getImportSpecifierInsertionIndex(k, D, h);
            e.insertImportSpecifierAtIndex(t, D, n.namedBindings, P);
          }
        } else if (d?.length) for (const k of T) e.insertNodeInListAfter(t, ws(d), k, d);
        else if (T.length) {
          const k = A.createNamedImports(T);
          n.namedBindings ? e.replaceNode(t, n.namedBindings, k) : e.insertNodeAfter(t, E.checkDefined(n.name, "Import clause must have either named imports or a default import"), k);
        }
      }
      if (u && (e.delete(t, uq(n, t)), d))
        for (const h of d) e.insertModifierBefore(t, 156, h);
      function g(h, S, T) {
        const k = A.createBindingElement(void 0, T, S);
        h.elements.length ? e.insertNodeInListAfter(t, ws(h.elements), k) : e.replaceNode(t, h, A.createObjectBindingPattern([k]));
      }
    }
    function cle(e, t, { namespacePrefix: n, usagePosition: i }) {
      e.insertText(t, i, n + ".");
    }
    function Bke(e, t, { moduleSpecifier: n, usagePosition: i }, a) {
      e.insertText(t, i, Jke(n, a));
    }
    function Jke(e, t) {
      const n = oq(t);
      return `import(${n}${e}${n}).`;
    }
    function lle({ addAsTypeOnly: e }) {
      return e === 2;
    }
    function FG(e, t) {
      return lle(e) || !!t.preferTypeOnlyAutoImports && e.addAsTypeOnly !== 4;
    }
    function zke(e, t, n, i, a, o, c) {
      const _ = Vw(e, t);
      let u;
      if (n !== void 0 || i?.length) {
        const d = (!n || lle(n)) && hr(i, lle) || (o.verbatimModuleSyntax || c.preferTypeOnlyAutoImports) && n?.addAsTypeOnly !== 4 && !_t(i, (g) => g.addAsTypeOnly === 4);
        u = lx(u, y1(n && A.createIdentifier(n.name), i?.map((g) => A.createImportSpecifier(!d && FG(g, c), g.propertyName === void 0 ? void 0 : A.createIdentifier(g.propertyName), A.createIdentifier(g.name))), e, t, d));
      }
      if (a) {
        const d = a.importKind === 3 ? A.createImportEqualsDeclaration(void 0, FG(a, c), A.createIdentifier(a.name), A.createExternalModuleReference(_)) : A.createImportDeclaration(void 0, A.createImportClause(FG(a, c) ? 156 : void 0, void 0, A.createNamespaceImport(A.createIdentifier(a.name))), _, void 0);
        u = lx(u, d);
      }
      return E.checkDefined(u);
    }
    function Wke(e, t, n, i, a) {
      const o = Vw(e, t);
      let c;
      if (n || i?.length) {
        const _ = i?.map(({ name: d, propertyName: g }) => A.createBindingElement(void 0, g, d)) || [];
        n && _.unshift(A.createBindingElement(void 0, "default", n.name));
        const u = Uke(A.createObjectBindingPattern(_), o);
        c = lx(c, u);
      }
      if (a) {
        const _ = Uke(a.name, o);
        c = lx(c, _);
      }
      return E.checkDefined(c);
    }
    function Uke(e, t) {
      return A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(typeof e == "string" ? A.createIdentifier(e) : e, void 0, void 0, A.createCallExpression(A.createIdentifier("require"), void 0, [t]))], 2));
    }
    function Vke(e, t) {
      return t === 7 ? !0 : t & 1 ? !!(e & 111551) : t & 2 ? !!(e & 788968) : t & 4 ? !!(e & 1920) : !1;
    }
    function ule(e, t) {
      return Hg(e) ? t.getImpliedNodeFormatForEmit(e) : QS(e, t.getCompilerOptions());
    }
    function kGe(e, t) {
      return Hg(e) ? t.getEmitModuleFormatOfFile(e) : Fw(e, t.getCompilerOptions());
    }
    var _le = "addMissingConstraint", qke = [
      p.Type_0_is_not_comparable_to_type_1.code,
      p.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,
      p.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,
      p.Type_0_is_not_assignable_to_type_1.code,
      p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,
      p.Property_0_is_incompatible_with_index_signature.code,
      p.Property_0_in_type_1_is_not_assignable_to_type_2.code,
      p.Type_0_does_not_satisfy_the_constraint_1.code
    ];
    ps({
      errorCodes: qke,
      getCodeActions(e) {
        const { sourceFile: t, span: n, program: i, preferences: a, host: o } = e, c = Gke(i, t, n);
        if (c !== void 0)
          return [Va(_le, on.ChangeTracker.with(e, (_) => Hke(_, i, a, o, t, c)), p.Add_extends_constraint, _le, p.Add_extends_constraint_to_all_type_parameters)];
      },
      fixIds: [_le],
      getAllCodeActions: (e) => {
        const { program: t, preferences: n, host: i } = e, a = /* @__PURE__ */ new Set();
        return Jk(on.ChangeTracker.with(e, (o) => {
          zk(e, qke, (c) => {
            const _ = Gke(t, c.file, du(c.start, c.length));
            if (_ && Yp(a, Hs(_.declaration)))
              return Hke(o, t, n, i, c.file, _);
          });
        }));
      }
    });
    function Gke(e, t, n) {
      const i = xr(e.getSemanticDiagnostics(t), (c) => c.start === n.start && c.length === n.length);
      if (i === void 0 || i.relatedInformation === void 0) return;
      const a = xr(i.relatedInformation, (c) => c.code === p.This_type_parameter_might_need_an_extends_0_constraint.code);
      if (a === void 0 || a.file === void 0 || a.start === void 0 || a.length === void 0) return;
      let o = aue(a.file, du(a.start, a.length));
      if (o !== void 0 && (Fe(o) && $o(o.parent) && (o = o.parent), $o(o))) {
        if (LS(o.parent)) return;
        const c = xi(t, n.start);
        return {
          constraint: EGe(e.getTypeChecker(), c) || CGe(a.messageText),
          declaration: o,
          token: c
        };
      }
    }
    function Hke(e, t, n, i, a, o) {
      const { declaration: c, constraint: _ } = o, u = t.getTypeChecker();
      if (Ta(_)) e.insertText(a, c.name.end, ` extends ${_}`);
      else {
        const d = Ps(t.getCompilerOptions()), g = SE({
          program: t,
          host: i
        }), h = d2(a, t, n, i), S = XG(u, h, _, void 0, d, void 0, void 0, g);
        S && (e.replaceNode(a, c, A.updateTypeParameterDeclaration(c, void 0, c.name, S, c.default)), h.writeFixes(e));
      }
    }
    function CGe(e) {
      const [, t] = Mm(e, `
`, 0).match(/`extends (.*)`/) || [];
      return t;
    }
    function EGe(e, t) {
      return ui(t.parent) ? e.getTypeArgumentConstraint(t.parent) : (dt(t) ? e.getContextualType(t) : void 0) || e.getTypeAtLocation(t);
    }
    var $ke = "fixOverrideModifier", zI = "fixAddOverrideModifier", UL = "fixRemoveOverrideModifier", Xke = [
      p.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,
      p.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,
      p.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,
      p.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,
      p.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,
      p.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,
      p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,
      p.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,
      p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code
    ], Qke = {
      [p.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]: {
        descriptions: p.Add_override_modifier,
        fixId: zI,
        fixAllDescriptions: p.Add_all_missing_override_modifiers
      },
      [p.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]: {
        descriptions: p.Add_override_modifier,
        fixId: zI,
        fixAllDescriptions: p.Add_all_missing_override_modifiers
      },
      [p.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]: {
        descriptions: p.Remove_override_modifier,
        fixId: UL,
        fixAllDescriptions: p.Remove_all_unnecessary_override_modifiers
      },
      [p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]: {
        descriptions: p.Remove_override_modifier,
        fixId: UL,
        fixAllDescriptions: p.Remove_override_modifier
      },
      [p.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]: {
        descriptions: p.Add_override_modifier,
        fixId: zI,
        fixAllDescriptions: p.Add_all_missing_override_modifiers
      },
      [p.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]: {
        descriptions: p.Add_override_modifier,
        fixId: zI,
        fixAllDescriptions: p.Add_all_missing_override_modifiers
      },
      [p.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]: {
        descriptions: p.Add_override_modifier,
        fixId: zI,
        fixAllDescriptions: p.Remove_all_unnecessary_override_modifiers
      },
      [p.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]: {
        descriptions: p.Remove_override_modifier,
        fixId: UL,
        fixAllDescriptions: p.Remove_all_unnecessary_override_modifiers
      },
      [p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]: {
        descriptions: p.Remove_override_modifier,
        fixId: UL,
        fixAllDescriptions: p.Remove_all_unnecessary_override_modifiers
      }
    };
    ps({
      errorCodes: Xke,
      getCodeActions: function(t) {
        const { errorCode: n, span: i } = t, a = Qke[n];
        if (!a) return Te;
        const { descriptions: o, fixId: c, fixAllDescriptions: _ } = a;
        return [Ace($ke, on.ChangeTracker.with(t, (u) => Yke(u, t, n, i.start)), o, c, _)];
      },
      fixIds: [
        $ke,
        zI,
        UL
      ],
      getAllCodeActions: (e) => lo(e, Xke, (t, n) => {
        const { code: i, start: a } = n, o = Qke[i];
        !o || o.fixId !== e.fixId || Yke(t, e, i, a);
      })
    });
    function Yke(e, t, n, i) {
      switch (n) {
        case p.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:
        case p.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:
        case p.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:
        case p.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:
        case p.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:
          return DGe(e, t.sourceFile, i);
        case p.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:
        case p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:
        case p.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:
        case p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:
          return wGe(e, t.sourceFile, i);
        default:
          E.fail("Unexpected error code: " + n);
      }
    }
    function DGe(e, t, n) {
      const i = Kke(t, n);
      if (T_(t)) {
        e.addJSDocTags(t, i, [A.createJSDocOverrideTag(A.createIdentifier("override"))]);
        return;
      }
      const a = i.modifiers || Te, o = xr(a, lk), c = xr(a, zte), _ = xr(a, (h) => YV(h.kind)), u = Ya(a, pl), d = c ? c.end : o ? o.end : _ ? _.end : u ? gs(t.text, u.end) : i.getStart(t), g = _ || o || c ? { prefix: " " } : { suffix: " " };
      e.insertModifierAt(t, d, 164, g);
    }
    function wGe(e, t, n) {
      const i = Kke(t, n);
      if (T_(t)) {
        e.filterJSDocTags(t, i, k7(iF));
        return;
      }
      const a = xr(i.modifiers, Wte);
      E.assertIsDefined(a), e.deleteModifier(t, a);
    }
    function Zke(e) {
      switch (e.kind) {
        case 177:
        case 173:
        case 175:
        case 178:
        case 179:
          return !0;
        case 170:
          return df(e, e.parent);
        default:
          return !1;
      }
    }
    function Kke(e, t) {
      const n = cr(xi(e, t), (i) => Zn(i) ? "quit" : Zke(i));
      return E.assert(n && Zke(n)), n;
    }
    var fle = "fixNoPropertyAccessFromIndexSignature", eCe = [p.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];
    ps({
      errorCodes: eCe,
      fixIds: [fle],
      getCodeActions(e) {
        const { sourceFile: t, span: n, preferences: i } = e, a = rCe(t, n.start);
        return [Va(fle, on.ChangeTracker.with(e, (o) => tCe(o, e.sourceFile, a, i)), [p.Use_element_access_for_0, a.name.text], fle, p.Use_element_access_for_all_undeclared_properties)];
      },
      getAllCodeActions: (e) => lo(e, eCe, (t, n) => tCe(t, n.file, rCe(n.file, n.start), e.preferences))
    });
    function tCe(e, t, n, i) {
      const a = Df(t, i), o = A.createStringLiteral(n.name.text, a === 0);
      e.replaceNode(t, n, H7(n) ? A.createElementAccessChain(n.expression, n.questionDotToken, o) : A.createElementAccessExpression(n.expression, o));
    }
    function rCe(e, t) {
      return ns(xi(e, t).parent, Ln);
    }
    var ple = "fixImplicitThis", nCe = [p.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];
    ps({
      errorCodes: nCe,
      getCodeActions: function(t) {
        const { sourceFile: n, program: i, span: a } = t;
        let o;
        const c = on.ChangeTracker.with(t, (_) => {
          o = iCe(_, n, a.start, i.getTypeChecker());
        });
        return o ? [Va(ple, c, o, ple, p.Fix_all_implicit_this_errors)] : Te;
      },
      fixIds: [ple],
      getAllCodeActions: (e) => lo(e, nCe, (t, n) => {
        iCe(t, n.file, n.start, e.program.getTypeChecker());
      })
    });
    function iCe(e, t, n, i) {
      const a = xi(t, n);
      if (!oE(a)) return;
      const o = c_(a, !1, !1);
      if (!(!Xc(o) && !Lo(o)) && !Pi(c_(o, !1, !1))) {
        const c = E.checkDefined(uo(o, 100, t)), { name: _ } = o, u = E.checkDefined(o.body);
        return Lo(o) ? _ && Jo.Core.isSymbolReferencedInFile(_, i, t, u) ? void 0 : (e.delete(t, c), _ && e.delete(t, _), e.insertText(t, u.pos, " =>"), [p.Convert_function_expression_0_to_arrow_function, _ ? _.text : Tq]) : (e.replaceNode(t, c, A.createToken(87)), e.insertText(t, _.end, " = "), e.insertText(t, u.pos, " =>"), [p.Convert_function_declaration_0_to_arrow_function, _.text]);
      }
    }
    var dle = "fixImportNonExportedMember", aCe = [p.Module_0_declares_1_locally_but_it_is_not_exported.code];
    ps({
      errorCodes: aCe,
      fixIds: [dle],
      getCodeActions(e) {
        const { sourceFile: t, span: n, program: i } = e, a = sCe(t, n.start, i);
        if (a !== void 0)
          return [Va(dle, on.ChangeTracker.with(e, (o) => PGe(o, i, a)), [
            p.Export_0_from_module_1,
            a.exportName.node.text,
            a.moduleSpecifier
          ], dle, p.Export_all_referenced_locals)];
      },
      getAllCodeActions(e) {
        const { program: t } = e;
        return Jk(on.ChangeTracker.with(e, (n) => {
          const i = /* @__PURE__ */ new Map();
          zk(e, aCe, (a) => {
            const o = sCe(a.file, a.start, t);
            if (o === void 0) return;
            const { exportName: c, node: _, moduleSourceFile: u } = o;
            if (LG(u, c.isTypeOnly) === void 0 && GA(_)) n.insertExportModifier(u, _);
            else {
              const d = i.get(u) || {
                typeOnlyExports: [],
                exports: []
              };
              c.isTypeOnly ? d.typeOnlyExports.push(c) : d.exports.push(c), i.set(u, d);
            }
          }), i.forEach((a, o) => {
            const c = LG(o, !0);
            c && c.isTypeOnly ? (mle(n, t, o, a.typeOnlyExports, c), mle(n, t, o, a.exports, LG(o, !1))) : mle(n, t, o, [...a.exports, ...a.typeOnlyExports], c);
          });
        }));
      }
    });
    function sCe(e, t, n) {
      var i, a;
      const o = xi(e, t);
      if (Fe(o)) {
        const c = cr(o, ic);
        if (c === void 0) return;
        const _ = Ts(c.moduleSpecifier) ? c.moduleSpecifier : void 0;
        if (_ === void 0) return;
        const u = (i = n.getResolvedModuleFromModuleSpecifier(_, e)) == null ? void 0 : i.resolvedModule;
        if (u === void 0) return;
        const d = n.getSourceFile(u.resolvedFileName);
        if (d === void 0 || gE(n, d)) return;
        const g = d.symbol, h = (a = qn(g.valueDeclaration, og)) == null ? void 0 : a.locals;
        if (h === void 0) return;
        const S = h.get(o.escapedText);
        if (S === void 0) return;
        const T = AGe(S);
        return T === void 0 ? void 0 : {
          exportName: {
            node: o,
            isTypeOnly: Kx(T)
          },
          node: T,
          moduleSourceFile: d,
          moduleSpecifier: _.text
        };
      }
    }
    function PGe(e, t, { exportName: n, node: i, moduleSourceFile: a }) {
      const o = LG(a, n.isTypeOnly);
      o ? oCe(e, t, a, o, [n]) : GA(i) ? e.insertExportModifier(a, i) : cCe(e, t, a, [n]);
    }
    function mle(e, t, n, i, a) {
      It(i) && (a ? oCe(e, t, n, a, i) : cCe(e, t, n, i));
    }
    function LG(e, t) {
      const n = (i) => tl(i) && (t && i.isTypeOnly || !i.isTypeOnly);
      return Ya(e.statements, n);
    }
    function oCe(e, t, n, i, a) {
      const o = i.exportClause && Pp(i.exportClause) ? i.exportClause.elements : A.createNodeArray([]), c = !i.isTypeOnly && !!(Zp(t.getCompilerOptions()) || xr(o, (_) => _.isTypeOnly));
      e.replaceNode(n, i, A.updateExportDeclaration(i, i.modifiers, i.isTypeOnly, A.createNamedExports(A.createNodeArray([...o, ...lCe(a, c)], o.hasTrailingComma)), i.moduleSpecifier, i.attributes));
    }
    function cCe(e, t, n, i) {
      e.insertNodeAtEndOfScope(n, n, A.createExportDeclaration(void 0, !1, A.createNamedExports(lCe(i, Zp(t.getCompilerOptions()))), void 0, void 0));
    }
    function lCe(e, t) {
      return A.createNodeArray(or(e, (n) => A.createExportSpecifier(t && n.isTypeOnly, void 0, n.node)));
    }
    function AGe(e) {
      if (e.valueDeclaration === void 0) return ul(e.declarations);
      const t = e.valueDeclaration, n = ci(t) ? qn(t.parent.parent, $c) : void 0;
      return n && It(n.declarationList.declarations) === 1 ? n : t;
    }
    var gle = "fixIncorrectNamedTupleSyntax";
    ps({
      errorCodes: [p.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code, p.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code],
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = NGe(n, i.start);
        return [Va(gle, on.ChangeTracker.with(t, (o) => IGe(o, n, a)), p.Move_labeled_tuple_element_modifiers_to_labels, gle, p.Move_labeled_tuple_element_modifiers_to_labels)];
      },
      fixIds: [gle]
    });
    function NGe(e, t) {
      return cr(xi(e, t), (n) => n.kind === 203);
    }
    function IGe(e, t, n) {
      if (!n) return;
      let i = n.type, a = !1, o = !1;
      for (; i.kind === 191 || i.kind === 192 || i.kind === 197; )
        i.kind === 191 ? a = !0 : i.kind === 192 && (o = !0), i = i.type;
      const c = A.updateNamedTupleMember(n, n.dotDotDotToken || (o ? A.createToken(26) : void 0), n.name, n.questionToken || (a ? A.createToken(58) : void 0), i);
      c !== n && e.replaceNode(t, n, c);
    }
    var uCe = "fixSpelling", _Ce = [
      p.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,
      p.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,
      p.Cannot_find_name_0_Did_you_mean_1.code,
      p.Could_not_find_name_0_Did_you_mean_1.code,
      p.Cannot_find_namespace_0_Did_you_mean_1.code,
      p.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,
      p.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,
      p._0_has_no_exported_member_named_1_Did_you_mean_2.code,
      p.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,
      p.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,
      p.No_overload_matches_this_call.code,
      p.Type_0_is_not_assignable_to_type_1.code
    ];
    ps({
      errorCodes: _Ce,
      getCodeActions(e) {
        const { sourceFile: t, errorCode: n } = e, i = fCe(t, e.span.start, e, n);
        if (!i) return;
        const { node: a, suggestedSymbol: o } = i, c = Ps(e.host.getCompilationSettings());
        return [Va("spelling", on.ChangeTracker.with(e, (_) => pCe(_, t, a, o, c)), [p.Change_spelling_to_0, kc(o)], uCe, p.Fix_all_detected_spelling_errors)];
      },
      fixIds: [uCe],
      getAllCodeActions: (e) => lo(e, _Ce, (t, n) => {
        const i = fCe(n.file, n.start, e, n.code), a = Ps(e.host.getCompilationSettings());
        i && pCe(t, e.sourceFile, i.node, i.suggestedSymbol, a);
      })
    });
    function fCe(e, t, n, i) {
      const a = xi(e, t), o = a.parent;
      if ((i === p.No_overload_matches_this_call.code || i === p.Type_0_is_not_assignable_to_type_1.code) && !Om(o)) return;
      const c = n.program.getTypeChecker();
      let _;
      if (Ln(o) && o.name === a) {
        E.assert(Jg(a), "Expected an identifier for spelling (property access)");
        let u = c.getTypeAtLocation(o.expression);
        o.flags & 64 && (u = c.getNonNullableType(u)), _ = c.getSuggestedSymbolForNonexistentProperty(a, u);
      } else if (un(o) && o.operatorToken.kind === 103 && o.left === a && Oi(a)) {
        const u = c.getTypeAtLocation(o.right);
        _ = c.getSuggestedSymbolForNonexistentProperty(a, u);
      } else if (k_(o) && o.right === a) {
        const u = c.getSymbolAtLocation(o.left);
        u && u.flags & 1536 && (_ = c.getSuggestedSymbolForNonexistentModule(o.right, u));
      } else if (p_(o) && o.name === a) {
        E.assertNode(a, Fe, "Expected an identifier for spelling (import)");
        const u = FGe(n, cr(a, ic), e);
        u && u.symbol && (_ = c.getSuggestedSymbolForNonexistentModule(a, u.symbol));
      } else if (Om(o) && o.name === a) {
        E.assertNode(a, Fe, "Expected an identifier for JSX attribute");
        const u = cr(a, Gu), d = c.getContextualTypeForArgumentAtIndex(u, 0);
        _ = c.getSuggestedSymbolForNonexistentJSXAttribute(a, d);
      } else if (eO(o) && al(o) && o.name === a) {
        const u = cr(a, Zn), d = u ? Jd(u) : void 0, g = d ? c.getTypeAtLocation(d) : void 0;
        g && (_ = c.getSuggestedSymbolForNonexistentClassMember(uc(a), g));
      } else {
        const u = YS(a), d = uc(a);
        E.assert(d !== void 0, "name should be defined"), _ = c.getSuggestedSymbolForNonexistentSymbol(a, d, OGe(u));
      }
      return _ === void 0 ? void 0 : {
        node: a,
        suggestedSymbol: _
      };
    }
    function pCe(e, t, n, i, a) {
      const o = kc(i);
      if (!Y_(o, a) && Ln(n.parent)) {
        const c = i.valueDeclaration;
        c && Bl(c) && Oi(c.name) ? e.replaceNode(t, n, A.createIdentifier(o)) : e.replaceNode(t, n.parent, A.createElementAccessExpression(n.parent.expression, A.createStringLiteral(o)));
      } else e.replaceNode(t, n, A.createIdentifier(o));
    }
    function OGe(e) {
      let t = 0;
      return e & 4 && (t |= 1920), e & 2 && (t |= 788968), e & 1 && (t |= 111551), t;
    }
    function FGe(e, t, n) {
      var i;
      if (!t || !Xs(t.moduleSpecifier)) return;
      const a = (i = e.program.getResolvedModuleFromModuleSpecifier(t.moduleSpecifier, n)) == null ? void 0 : i.resolvedModule;
      if (a)
        return e.program.getSourceFile(a.resolvedFileName);
    }
    var hle = "returnValueCorrect", yle = "fixAddReturnStatement", vle = "fixRemoveBracesFromArrowFunctionBody", ble = "fixWrapTheBlockWithParen", dCe = [
      p.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,
      p.Type_0_is_not_assignable_to_type_1.code,
      p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code
    ];
    ps({
      errorCodes: dCe,
      fixIds: [
        yle,
        vle,
        ble
      ],
      getCodeActions: function(t) {
        const { program: n, sourceFile: i, span: { start: a }, errorCode: o } = t, c = gCe(n.getTypeChecker(), i, a, o);
        if (c)
          return c.kind === 0 ? kr([MGe(t, c.expression, c.statement)], Bo(c.declaration) ? RGe(t, c.declaration, c.expression, c.commentSource) : void 0) : [jGe(t, c.declaration, c.expression)];
      },
      getAllCodeActions: (e) => lo(e, dCe, (t, n) => {
        const i = gCe(e.program.getTypeChecker(), n.file, n.start, n.code);
        if (i)
          switch (e.fixId) {
            case yle:
              hCe(t, n.file, i.expression, i.statement);
              break;
            case vle:
              if (!Bo(i.declaration)) return;
              yCe(t, n.file, i.declaration, i.expression, i.commentSource, !1);
              break;
            case ble:
              if (!Bo(i.declaration)) return;
              vCe(t, n.file, i.declaration, i.expression);
              break;
            default:
              E.fail(JSON.stringify(e.fixId));
          }
      })
    });
    function mCe(e, t, n) {
      const i = e.createSymbol(4, t.escapedText);
      i.links.type = e.getTypeAtLocation(n);
      const a = Ka([i]);
      return e.createAnonymousType(void 0, a, [], [], []);
    }
    function Sle(e, t, n, i) {
      if (!t.body || !Wa(t.body) || It(t.body.statements) !== 1) return;
      const a = js(t.body.statements);
      if (zl(a) && Tle(e, t, e.getTypeAtLocation(a.expression), n, i)) return {
        declaration: t,
        kind: 0,
        expression: a.expression,
        statement: a,
        commentSource: a.expression
      };
      if (c1(a) && zl(a.statement)) {
        const o = A.createObjectLiteralExpression([A.createPropertyAssignment(a.label, a.statement.expression)]);
        if (Tle(e, t, mCe(e, a.label, a.statement.expression), n, i)) return Bo(t) ? {
          declaration: t,
          kind: 1,
          expression: o,
          statement: a,
          commentSource: a.statement.expression
        } : {
          declaration: t,
          kind: 0,
          expression: o,
          statement: a,
          commentSource: a.statement.expression
        };
      } else if (Wa(a) && It(a.statements) === 1) {
        const o = js(a.statements);
        if (c1(o) && zl(o.statement)) {
          const c = A.createObjectLiteralExpression([A.createPropertyAssignment(o.label, o.statement.expression)]);
          if (Tle(e, t, mCe(e, o.label, o.statement.expression), n, i)) return {
            declaration: t,
            kind: 0,
            expression: c,
            statement: a,
            commentSource: o
          };
        }
      }
    }
    function Tle(e, t, n, i, a) {
      if (a) {
        const o = e.getSignatureFromDeclaration(t);
        if (o) {
          Qn(t, 1024) && (n = e.createPromiseType(n));
          const c = e.createSignature(t, o.typeParameters, o.thisParameter, o.parameters, n, void 0, o.minArgumentCount, o.flags);
          n = e.createAnonymousType(void 0, Ka(), [c], [], []);
        } else n = e.getAnyType();
      }
      return e.isTypeAssignableTo(n, i);
    }
    function gCe(e, t, n, i) {
      const a = xi(t, n);
      if (!a.parent) return;
      const o = cr(a.parent, So);
      switch (i) {
        case p.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:
          return !o || !o.body || !o.type || !W_(o.type, a) ? void 0 : Sle(e, o, e.getTypeFromTypeNode(o.type), !1);
        case p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:
          if (!o || !za(o.parent) || !o.body) return;
          const c = o.parent.arguments.indexOf(o);
          if (c === -1) return;
          const _ = e.getContextualTypeForArgumentAtIndex(o.parent, c);
          return _ ? Sle(e, o, _, !0) : void 0;
        case p.Type_0_is_not_assignable_to_type_1.code:
          if (!pg(a) || !rD(a.parent) && !Om(a.parent)) return;
          const u = LGe(a.parent);
          return !u || !So(u) || !u.body ? void 0 : Sle(e, u, e.getTypeAtLocation(a.parent), !0);
      }
    }
    function LGe(e) {
      switch (e.kind) {
        case 261:
        case 170:
        case 209:
        case 173:
        case 304:
          return e.initializer;
        case 292:
          return e.initializer && (O6(e.initializer) ? e.initializer.expression : void 0);
        case 305:
        case 172:
        case 307:
        case 349:
        case 342:
          return;
      }
    }
    function hCe(e, t, n, i) {
      Tf(n);
      const a = SI(t);
      e.replaceNode(t, i, A.createReturnStatement(n), {
        leadingTriviaOption: on.LeadingTriviaOption.Exclude,
        trailingTriviaOption: on.TrailingTriviaOption.Exclude,
        suffix: a ? ";" : void 0
      });
    }
    function yCe(e, t, n, i, a, o) {
      const c = o || oL(i) ? A.createParenthesizedExpression(i) : i;
      Tf(a), KS(a, c), e.replaceNode(t, n.body, c);
    }
    function vCe(e, t, n, i) {
      e.replaceNode(t, n.body, A.createParenthesizedExpression(i));
    }
    function MGe(e, t, n) {
      return Va(hle, on.ChangeTracker.with(e, (i) => hCe(i, e.sourceFile, t, n)), p.Add_a_return_statement, yle, p.Add_all_missing_return_statement);
    }
    function RGe(e, t, n, i) {
      return Va(hle, on.ChangeTracker.with(e, (a) => yCe(a, e.sourceFile, t, n, i, !1)), p.Remove_braces_from_arrow_function_body, vle, p.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues);
    }
    function jGe(e, t, n) {
      return Va(hle, on.ChangeTracker.with(e, (i) => vCe(i, e.sourceFile, t, n)), p.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal, ble, p.Wrap_all_object_literal_with_parentheses);
    }
    var Vv = "fixMissingMember", MG = "fixMissingProperties", RG = "fixMissingAttributes", jG = "fixMissingFunctionDeclaration", bCe = [
      p.Property_0_does_not_exist_on_type_1.code,
      p.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,
      p.Property_0_is_missing_in_type_1_but_required_in_type_2.code,
      p.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,
      p.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,
      p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,
      p.Cannot_find_name_0.code,
      p.Type_0_does_not_satisfy_the_expected_type_1.code
    ];
    ps({
      errorCodes: bCe,
      getCodeActions(e) {
        const t = e.program.getTypeChecker(), n = SCe(e.sourceFile, e.span.start, e.errorCode, t, e.program);
        if (n)
          return n.kind === 3 ? [Va(MG, on.ChangeTracker.with(e, (i) => NCe(i, e, n)), p.Add_missing_properties, MG, p.Add_all_missing_properties)] : n.kind === 4 ? [Va(RG, on.ChangeTracker.with(e, (i) => ACe(i, e, n)), p.Add_missing_attributes, RG, p.Add_all_missing_attributes)] : n.kind === 2 || n.kind === 5 ? [Va(jG, on.ChangeTracker.with(e, (i) => PCe(i, e, n)), [p.Add_missing_function_declaration_0, n.token.text], jG, p.Add_all_missing_function_declarations)] : n.kind === 1 ? [Va(Vv, on.ChangeTracker.with(e, (i) => wCe(i, e.program.getTypeChecker(), n)), [p.Add_missing_enum_member_0, n.token.text], Vv, p.Add_all_missing_members)] : zi(UGe(e, n), BGe(e, n));
      },
      fixIds: [
        Vv,
        jG,
        MG,
        RG
      ],
      getAllCodeActions: (e) => {
        const { program: t, fixId: n } = e, i = t.getTypeChecker(), a = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Map();
        return Jk(on.ChangeTracker.with(e, (c) => {
          zk(e, bCe, (_) => {
            const u = SCe(_.file, _.start, _.code, i, e.program);
            if (u !== void 0 && Yp(a, Hs(u.parentDeclaration) + "#" + (u.kind === 3 ? u.identifier || Hs(u.token) : u.token.text))) {
              if (n === jG && (u.kind === 2 || u.kind === 5)) PCe(c, e, u);
              else if (n === MG && u.kind === 3) NCe(c, e, u);
              else if (n === RG && u.kind === 4) ACe(c, e, u);
              else if (u.kind === 1 && wCe(c, i, u), u.kind === 0) {
                const { parentDeclaration: d, token: g } = u, h = v_(o, d, () => []);
                h.some((S) => S.token.text === g.text) || h.push(u);
              }
            }
          }), o.forEach((_, u) => {
            const d = C_(u) ? void 0 : $Ge(u, i);
            for (const g of _) {
              if (d?.some((N) => {
                const M = o.get(N);
                return !!M && M.some(({ token: R }) => R.text === g.token.text);
              })) continue;
              const { parentDeclaration: h, declSourceFile: S, modifierFlags: T, token: k, call: D, isJSFile: P } = g;
              if (D && !Oi(k)) DCe(e, c, D, k, T & 256, h, S);
              else if (P && !au(h) && !C_(h)) TCe(c, S, h, k, !!(T & 256));
              else {
                const N = kCe(i, h, k);
                CCe(c, S, h, k.text, N, T & 256);
              }
            }
          });
        }));
      }
    });
    function SCe(e, t, n, i, a) {
      var o, c;
      const _ = xi(e, t), u = _.parent;
      if (n === p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code) {
        if (!(_.kind === 19 && bs(u) && za(u.parent))) return;
        const k = qs(u.parent.arguments, (M) => M === u);
        if (k < 0) return;
        const D = i.getResolvedSignature(u.parent);
        if (!(D && D.declaration && D.parameters[k])) return;
        const P = D.parameters[k].valueDeclaration;
        if (!(P && Fi(P) && Fe(P.name))) return;
        const N = ma(i.getUnmatchedProperties(i.getTypeAtLocation(u), i.getParameterType(D, k).getNonNullableType(), !1, !1));
        return It(N) ? {
          kind: 3,
          token: P.name,
          identifier: P.name.text,
          properties: N,
          parentDeclaration: u
        } : void 0;
      }
      if (_.kind === 19 || N6(u) || zf(u)) {
        const k = (N6(u) || zf(u)) && u.expression ? u.expression : u;
        if (bs(k)) {
          const D = N6(u) ? i.getTypeFromTypeNode(u.type) : i.getContextualType(k) || i.getTypeAtLocation(k), P = ma(i.getUnmatchedProperties(i.getTypeAtLocation(u), D.getNonNullableType(), !1, !1));
          return It(P) ? {
            kind: 3,
            token: u,
            identifier: void 0,
            properties: P,
            parentDeclaration: k,
            indentation: zf(k.parent) || sN(k.parent) ? 0 : void 0
          } : void 0;
        }
      }
      if (!Jg(_)) return;
      if (Fe(_) && E0(u) && u.initializer && bs(u.initializer)) {
        const k = (o = i.getContextualType(_) || i.getTypeAtLocation(_)) == null ? void 0 : o.getNonNullableType(), D = ma(i.getUnmatchedProperties(i.getTypeAtLocation(u.initializer), k, !1, !1));
        return It(D) ? {
          kind: 3,
          token: _,
          identifier: _.text,
          properties: D,
          parentDeclaration: u.initializer
        } : void 0;
      }
      if (Fe(_) && Gu(_.parent)) {
        const k = qGe(i, Ps(a.getCompilerOptions()), _.parent);
        return It(k) ? {
          kind: 4,
          token: _,
          attributes: k,
          parentDeclaration: _.parent
        } : void 0;
      }
      if (Fe(_)) {
        const k = (c = i.getContextualType(_)) == null ? void 0 : c.getNonNullableType();
        if (k && yn(k) & 16) {
          const D = ul(i.getSignaturesOfType(k, 0));
          return D === void 0 ? void 0 : {
            kind: 5,
            token: _,
            signature: D,
            sourceFile: e,
            parentDeclaration: ICe(_)
          };
        }
        if (za(u) && u.expression === _) return {
          kind: 2,
          token: _,
          call: u,
          sourceFile: e,
          modifierFlags: 0,
          parentDeclaration: ICe(_)
        };
      }
      if (!Ln(u)) return;
      const d = nq(i.getTypeAtLocation(u.expression)), g = d.symbol;
      if (!g || !g.declarations) return;
      if (Fe(_) && za(u.parent)) {
        const k = xr(g.declarations, Qc), D = k?.getSourceFile();
        if (k && D && !gE(a, D)) return {
          kind: 2,
          token: _,
          call: u.parent,
          sourceFile: D,
          modifierFlags: 32,
          parentDeclaration: k
        };
        const P = xr(g.declarations, Pi);
        if (e.commonJsModuleIndicator) return;
        if (P && !gE(a, P)) return {
          kind: 2,
          token: _,
          call: u.parent,
          sourceFile: P,
          modifierFlags: 32,
          parentDeclaration: P
        };
      }
      const h = xr(g.declarations, Zn);
      if (!h && Oi(_)) return;
      const S = h || xr(g.declarations, (k) => au(k) || C_(k));
      if (S && !gE(a, S.getSourceFile())) {
        const k = !C_(S) && (d.target || d) !== i.getDeclaredTypeOfSymbol(g);
        if (k && (Oi(_) || au(S))) return;
        const D = S.getSourceFile(), P = C_(S) ? 0 : (k ? 256 : 0) | (Aq(_.text) ? 2 : 0), N = T_(D);
        return {
          kind: 0,
          token: _,
          call: qn(u.parent, za),
          modifierFlags: P,
          parentDeclaration: S,
          declSourceFile: D,
          isJSFile: N
        };
      }
      const T = xr(g.declarations, l1);
      if (T && !(d.flags & 98304) && !Oi(_) && !gE(a, T.getSourceFile())) return {
        kind: 1,
        token: _,
        parentDeclaration: T
      };
    }
    function BGe(e, t) {
      return t.isJSFile ? dx(JGe(e, t)) : zGe(e, t);
    }
    function JGe(e, { parentDeclaration: t, declSourceFile: n, modifierFlags: i, token: a }) {
      if (au(t) || C_(t)) return;
      const o = on.ChangeTracker.with(e, (c) => TCe(c, n, t, a, !!(i & 256)));
      if (o.length !== 0)
        return Va(Vv, o, [i & 256 ? p.Initialize_static_property_0 : Oi(a) ? p.Declare_a_private_field_named_0 : p.Initialize_property_0_in_the_constructor, a.text], Vv, p.Add_all_missing_members);
    }
    function TCe(e, t, n, i, a) {
      const o = i.text;
      if (a) {
        if (n.kind === 232) return;
        const c = n.name.getText(), _ = xCe(A.createIdentifier(c), o);
        e.insertNodeAfter(t, n, _);
      } else if (Oi(i)) {
        const c = A.createPropertyDeclaration(void 0, o, void 0, void 0, void 0), _ = ECe(n);
        _ ? e.insertNodeAfter(t, _, c) : e.insertMemberAtStart(t, n, c);
      } else {
        const c = Xg(n);
        if (!c) return;
        const _ = xCe(A.createThis(), o);
        e.insertNodeAtConstructorEnd(t, c, _);
      }
    }
    function xCe(e, t) {
      return A.createExpressionStatement(A.createAssignment(A.createPropertyAccessExpression(e, t), Uk()));
    }
    function zGe(e, { parentDeclaration: t, declSourceFile: n, modifierFlags: i, token: a }) {
      const o = a.text, c = i & 256, _ = kCe(e.program.getTypeChecker(), t, a), u = (g) => on.ChangeTracker.with(e, (h) => CCe(h, n, t, o, _, g)), d = [Va(Vv, u(i & 256), [c ? p.Declare_static_property_0 : p.Declare_property_0, o], Vv, p.Add_all_missing_members)];
      return c || Oi(a) || (i & 2 && d.unshift(Zd(Vv, u(2), [p.Declare_private_property_0, o])), d.push(WGe(e, n, t, a.text, _))), d;
    }
    function kCe(e, t, n) {
      let i;
      if (n.parent.parent.kind === 227) {
        const a = n.parent.parent, o = n.parent === a.left ? a.right : a.left, c = e.getWidenedType(e.getBaseTypeOfLiteralType(e.getTypeAtLocation(o)));
        i = e.typeToTypeNode(c, t, 1, 8);
      } else {
        const a = e.getContextualType(n.parent);
        i = a ? e.typeToTypeNode(a, void 0, 1, 8) : void 0;
      }
      return i || A.createKeywordTypeNode(133);
    }
    function CCe(e, t, n, i, a, o) {
      const c = o ? A.createNodeArray(A.createModifiersFromModifierFlags(o)) : void 0, _ = Zn(n) ? A.createPropertyDeclaration(c, i, void 0, a, void 0) : A.createPropertySignature(void 0, i, void 0, a), u = ECe(n);
      u ? e.insertNodeAfter(t, u, _) : e.insertMemberAtStart(t, n, _);
    }
    function ECe(e) {
      let t;
      for (const n of e.members) {
        if (!ga(n)) break;
        t = n;
      }
      return t;
    }
    function WGe(e, t, n, i, a) {
      const o = A.createKeywordTypeNode(154), c = A.createParameterDeclaration(void 0, void 0, "x", void 0, o, void 0), _ = A.createIndexSignature(void 0, [c], a);
      return Zd(Vv, on.ChangeTracker.with(e, (u) => u.insertMemberAtStart(t, n, _)), [p.Add_index_signature_for_property_0, i]);
    }
    function UGe(e, t) {
      const { parentDeclaration: n, declSourceFile: i, modifierFlags: a, token: o, call: c } = t;
      if (c === void 0) return;
      const _ = o.text, u = (g) => on.ChangeTracker.with(e, (h) => DCe(e, h, c, o, g, n, i)), d = [Va(Vv, u(a & 256), [a & 256 ? p.Declare_static_method_0 : p.Declare_method_0, _], Vv, p.Add_all_missing_members)];
      return a & 2 && d.unshift(Zd(Vv, u(2), [p.Declare_private_method_0, _])), d;
    }
    function DCe(e, t, n, i, a, o, c) {
      const _ = d2(c, e.program, e.preferences, e.host), u = Zle(Zn(o) ? 175 : 174, e, _, n, i, a, o), d = GGe(o, n);
      d ? t.insertNodeAfter(c, d, u) : t.insertMemberAtStart(c, o, u), _.writeFixes(t);
    }
    function wCe(e, t, { token: n, parentDeclaration: i }) {
      const a = _t(i.members, (u) => {
        const d = t.getTypeAtLocation(u);
        return !!(d && d.flags & 12583968);
      }), o = i.getSourceFile(), c = A.createEnumMember(n, a ? A.createStringLiteral(n.text) : void 0), _ = Wo(i.members);
      _ ? e.insertNodeInListAfter(o, _, c, i.members) : e.insertMemberAtStart(o, i, c);
    }
    function PCe(e, t, n) {
      const i = Df(t.sourceFile, t.preferences), a = d2(t.sourceFile, t.program, t.preferences, t.host), o = n.kind === 2 ? Zle(263, t, a, n.call, On(n.token), n.modifierFlags, n.parentDeclaration) : $G(263, t, i, n.signature, qL(p.Function_not_implemented.message, i), n.token, void 0, void 0, void 0, a);
      o === void 0 && E.fail("fixMissingFunctionDeclaration codefix got unexpected error."), zf(n.parentDeclaration) ? e.insertNodeBefore(n.sourceFile, n.parentDeclaration, o, !0) : e.insertNodeAtEndOfScope(n.sourceFile, n.parentDeclaration, o), a.writeFixes(e);
    }
    function ACe(e, t, n) {
      const i = d2(t.sourceFile, t.program, t.preferences, t.host), a = Df(t.sourceFile, t.preferences), o = t.program.getTypeChecker(), c = n.parentDeclaration.attributes, _ = _t(c.properties, hk), u = or(n.attributes, (h) => {
        const S = BG(t, o, i, a, o.getTypeOfSymbol(h), n.parentDeclaration), T = A.createIdentifier(h.name), k = A.createJsxAttribute(T, A.createJsxExpression(void 0, S));
        return eo(T, k), k;
      }), d = A.createJsxAttributes(_ ? [...u, ...c.properties] : [...c.properties, ...u]), g = { prefix: c.pos === c.end ? " " : void 0 };
      e.replaceNode(t.sourceFile, c, d, g), i.writeFixes(e);
    }
    function NCe(e, t, n) {
      const i = d2(t.sourceFile, t.program, t.preferences, t.host), a = Df(t.sourceFile, t.preferences), o = Ps(t.program.getCompilerOptions()), c = t.program.getTypeChecker(), _ = or(n.properties, (d) => {
        const g = BG(t, c, i, a, c.getTypeOfSymbol(d), n.parentDeclaration);
        return A.createPropertyAssignment(HGe(d, o, a, c), g);
      }), u = {
        leadingTriviaOption: on.LeadingTriviaOption.Exclude,
        trailingTriviaOption: on.TrailingTriviaOption.Exclude,
        indentation: n.indentation
      };
      e.replaceNode(t.sourceFile, n.parentDeclaration, A.createObjectLiteralExpression([...n.parentDeclaration.properties, ..._], !0), u), i.writeFixes(e);
    }
    function BG(e, t, n, i, a, o) {
      if (a.flags & 3) return Uk();
      if (a.flags & 4194336) return A.createStringLiteral("", i === 0);
      if (a.flags & 64) return A.createNumericLiteral(0);
      if (a.flags & 128) return A.createBigIntLiteral("0n");
      if (a.flags & 256) return A.createFalse();
      if (a.flags & 98304) {
        const c = a.symbol.exports ? b7(a.symbol.exports.values()) : a.symbol, _ = a.symbol.parent && a.symbol.parent.flags & 256 ? a.symbol.parent : a.symbol, u = t.symbolToExpression(_, 111551, void 0, 64);
        return c === void 0 || u === void 0 ? A.createNumericLiteral(0) : A.createPropertyAccessExpression(u, t.symbolToString(c));
      }
      if (a.flags & 2048) return A.createNumericLiteral(a.value);
      if (a.flags & 4096) return A.createBigIntLiteral(a.value);
      if (a.flags & 1024) return A.createStringLiteral(a.value, i === 0);
      if (a.flags & 8192) return a === t.getFalseType() || a === t.getFalseType(!0) ? A.createFalse() : A.createTrue();
      if (a.flags & 8) return A.createNull();
      if (a.flags & 134217728) return Hn(a.types, (c) => BG(e, t, n, i, c, o)) ?? Uk();
      if (t.isArrayLikeType(a)) return A.createArrayLiteralExpression();
      if (VGe(a)) {
        const c = or(t.getPropertiesOfType(a), (_) => {
          const u = BG(e, t, n, i, t.getTypeOfSymbol(_), o);
          return A.createPropertyAssignment(_.name, u);
        });
        return A.createObjectLiteralExpression(c, !0);
      }
      if (yn(a) & 16) {
        if (xr(a.symbol.declarations || Te, _f(mg, gd, hc)) === void 0) return Uk();
        const c = t.getSignaturesOfType(a, 0);
        return c === void 0 ? Uk() : $G(219, e, i, c[0], qL(p.Function_not_implemented.message, i), void 0, void 0, void 0, o, n) ?? Uk();
      }
      if (yn(a) & 1) {
        const c = I0(a.symbol);
        if (c === void 0 || Jb(c)) return Uk();
        const _ = Xg(c);
        return _ && It(_.parameters) ? Uk() : A.createNewExpression(A.createIdentifier(a.symbol.name), void 0, void 0);
      }
      return Uk();
    }
    function Uk() {
      return A.createIdentifier("undefined");
    }
    function VGe(e) {
      return e.flags & 1048576 && (yn(e) & 128 || e.symbol && qn(Fg(e.symbol.declarations), C_));
    }
    function qGe(e, t, n) {
      const i = e.getContextualType(n.attributes);
      if (i === void 0) return Te;
      const a = i.getProperties();
      if (!It(a)) return Te;
      const o = /* @__PURE__ */ new Set();
      for (const c of n.attributes.properties)
        if (Om(c) && o.add(qD(c.name)), hk(c)) {
          const _ = e.getTypeAtLocation(c.expression);
          for (const u of _.getProperties()) o.add(u.escapedName);
        }
      return dn(a, (c) => Y_(c.name, t, 1) && !(c.flags & 16777216 || gc(c) & 48 || o.has(c.escapedName)));
    }
    function GGe(e, t) {
      if (C_(e)) return;
      const n = cr(t, (i) => hc(i) || yc(i));
      return n && n.parent === e ? n : void 0;
    }
    function HGe(e, t, n, i) {
      if (Ug(e)) {
        const a = i.symbolToNode(e, 111551, void 0, void 0, 1);
        if (a && _s(a)) return a;
      }
      return NO(e.name, t, n === 0, !1, !1);
    }
    function ICe(e) {
      if (cr(e, O6)) {
        const t = cr(e.parent, zf);
        if (t) return t;
      }
      return Sr(e);
    }
    function $Ge(e, t) {
      const n = [];
      for (; e; ) {
        const i = Mb(e), a = i && t.getSymbolAtLocation(i.expression);
        if (!a) break;
        const o = a.flags & 2097152 ? t.getAliasedSymbol(a) : a, c = o.declarations && xr(o.declarations, Zn);
        if (!c) break;
        n.push(c), e = c;
      }
      return n;
    }
    var xle = "addMissingNewOperator", OCe = [p.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];
    ps({
      errorCodes: OCe,
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e;
        return [Va(xle, on.ChangeTracker.with(e, (i) => FCe(i, t, n)), p.Add_missing_new_operator_to_call, xle, p.Add_missing_new_operator_to_all_calls)];
      },
      fixIds: [xle],
      getAllCodeActions: (e) => lo(e, OCe, (t, n) => FCe(t, e.sourceFile, n))
    });
    function FCe(e, t, n) {
      const i = ns(XGe(t, n), za), a = A.createNewExpression(i.expression, i.typeArguments, i.arguments);
      e.replaceNode(t, i, a);
    }
    function XGe(e, t) {
      let n = xi(e, t.start);
      const i = dc(t);
      for (; n.end < i; ) n = n.parent;
      return n;
    }
    var JG = "addMissingParam", zG = "addOptionalParam", LCe = [p.Expected_0_arguments_but_got_1.code];
    ps({
      errorCodes: LCe,
      fixIds: [JG, zG],
      getCodeActions(e) {
        const t = MCe(e.sourceFile, e.program, e.span.start);
        if (t === void 0) return;
        const { name: n, declarations: i, newParameters: a, newOptionalParameters: o } = t, c = [];
        return It(a) && kr(c, Va(JG, on.ChangeTracker.with(e, (_) => WG(_, e.program, e.preferences, e.host, i, a)), [It(a) > 1 ? p.Add_missing_parameters_to_0 : p.Add_missing_parameter_to_0, n], JG, p.Add_all_missing_parameters)), It(o) && kr(c, Va(zG, on.ChangeTracker.with(e, (_) => WG(_, e.program, e.preferences, e.host, i, o)), [It(o) > 1 ? p.Add_optional_parameters_to_0 : p.Add_optional_parameter_to_0, n], zG, p.Add_all_optional_parameters)), c;
      },
      getAllCodeActions: (e) => lo(e, LCe, (t, n) => {
        const i = MCe(e.sourceFile, e.program, n.start);
        if (i) {
          const { declarations: a, newParameters: o, newOptionalParameters: c } = i;
          e.fixId === JG && WG(t, e.program, e.preferences, e.host, a, o), e.fixId === zG && WG(t, e.program, e.preferences, e.host, a, c);
        }
      })
    });
    function MCe(e, t, n) {
      const i = cr(xi(e, n), za);
      if (i === void 0 || It(i.arguments) === 0) return;
      const a = t.getTypeChecker(), o = dn(a.getTypeAtLocation(i.expression).symbol.declarations, RCe);
      if (o === void 0) return;
      const c = Wo(o);
      if (c === void 0 || c.body === void 0 || gE(t, c.getSourceFile())) return;
      const _ = QGe(c);
      if (_ === void 0) return;
      const u = [], d = [], g = It(c.parameters), h = It(i.arguments);
      if (g > h) return;
      const S = [c, ...ZGe(c, o)];
      for (let T = 0, k = 0, D = 0; T < h; T++) {
        const P = i.arguments[T], N = jo(P) ? RJ(P) : P, M = a.getWidenedType(a.getBaseTypeOfLiteralType(a.getTypeAtLocation(P))), R = k < g ? c.parameters[k] : void 0;
        if (R && a.isTypeAssignableTo(M, a.getTypeAtLocation(R))) {
          k++;
          continue;
        }
        const G = N && Fe(N) ? N.text : `p${D++}`, L = YGe(a, M, c);
        kr(u, {
          pos: T,
          declaration: BCe(G, L, void 0)
        }), !eHe(S, k) && kr(d, {
          pos: T,
          declaration: BCe(G, L, A.createToken(58))
        });
      }
      return {
        newParameters: u,
        newOptionalParameters: d,
        name: Do(_),
        declarations: S
      };
    }
    function QGe(e) {
      const t = va(e);
      if (t) return t;
      if (ci(e.parent) && Fe(e.parent.name) || ga(e.parent) || Fi(e.parent)) return e.parent.name;
    }
    function YGe(e, t, n) {
      return e.typeToTypeNode(e.getWidenedType(t), n, 1, 8) ?? A.createKeywordTypeNode(159);
    }
    function WG(e, t, n, i, a, o) {
      const c = Ps(t.getCompilerOptions());
      bt(a, (_) => {
        const u = Sr(_), d = d2(u, t, n, i);
        It(_.parameters) ? e.replaceNodeRangeWithNodes(u, js(_.parameters), ws(_.parameters), jCe(d, c, _, o), {
          joiner: ", ",
          indentation: 0,
          leadingTriviaOption: on.LeadingTriviaOption.IncludeAll,
          trailingTriviaOption: on.TrailingTriviaOption.Include
        }) : bt(jCe(d, c, _, o), (g, h) => {
          It(_.parameters) === 0 && h === 0 ? e.insertNodeAt(u, _.parameters.end, g) : e.insertNodeAtEndOfList(u, _.parameters, g);
        }), d.writeFixes(e);
      });
    }
    function RCe(e) {
      switch (e.kind) {
        case 263:
        case 219:
        case 175:
        case 220:
          return !0;
        default:
          return !1;
      }
    }
    function jCe(e, t, n, i) {
      const a = or(n.parameters, (o) => A.createParameterDeclaration(o.modifiers, o.dotDotDotToken, o.name, o.questionToken, o.type, o.initializer));
      for (const { pos: o, declaration: c } of i) {
        const _ = o > 0 ? a[o - 1] : void 0;
        a.splice(o, 0, A.updateParameterDeclaration(c, c.modifiers, c.dotDotDotToken, c.name, _ && _.questionToken ? A.createToken(58) : c.questionToken, tHe(e, c.type, t), c.initializer));
      }
      return a;
    }
    function ZGe(e, t) {
      const n = [];
      for (const i of t) if (KGe(i)) {
        if (It(i.parameters) === It(e.parameters)) {
          n.push(i);
          continue;
        }
        if (It(i.parameters) > It(e.parameters)) return [];
      }
      return n;
    }
    function KGe(e) {
      return RCe(e) && e.body === void 0;
    }
    function BCe(e, t, n) {
      return A.createParameterDeclaration(void 0, void 0, e, n, t, void 0);
    }
    function eHe(e, t) {
      return It(e) && _t(e, (n) => t < It(n.parameters) && !!n.parameters[t] && n.parameters[t].questionToken === void 0);
    }
    function tHe(e, t, n) {
      const i = m2(t, n);
      return i ? (tT(e, i.symbols), i.typeNode) : t;
    }
    var rHe = "fixCannotFindModule", kle = "installTypesPackage", JCe = p.Cannot_find_module_0_or_its_corresponding_type_declarations.code, zCe = p.This_JSX_tag_requires_the_module_path_0_to_exist_but_none_could_be_found_Make_sure_you_have_types_for_the_appropriate_package_installed.code, WCe = [
      JCe,
      p.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,
      p.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,
      zCe
    ];
    ps({
      errorCodes: WCe,
      getCodeActions: function(t) {
        const { host: n, sourceFile: i, span: { start: a }, errorCode: o } = t, c = o === zCe ? JA(t.program.getCompilerOptions(), i) : VCe(i, a);
        if (c === void 0) return;
        const _ = qCe(c, n, o);
        return _ === void 0 ? [] : [Va(rHe, [], [p.Install_0, _], kle, p.Install_all_missing_types_packages, UCe(i.fileName, _))];
      },
      fixIds: [kle],
      getAllCodeActions: (e) => lo(e, WCe, (t, n, i) => {
        const a = VCe(n.file, n.start);
        if (a !== void 0)
          if (e.fixId === kle) {
            const o = qCe(a, e.host, n.code);
            o && i.push(UCe(n.file.fileName, o));
          } else
            E.fail(`Bad fixId: ${e.fixId}`);
      })
    });
    function UCe(e, t) {
      return {
        type: "install package",
        file: e,
        packageName: t
      };
    }
    function VCe(e, t) {
      const n = qn(xi(e, t), Ts);
      if (!n) return;
      const i = n.text, { packageName: a } = BF(i);
      return jl(a) ? void 0 : a;
    }
    function qCe(e, t, n) {
      var i;
      if (nk.has(e)) return "@types/node";
      if (n !== JCe) return (i = t.isKnownTypesPackageName) != null && i.call(t, e) ? zF(e) : void 0;
    }
    var GCe = [
      p.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,
      p.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,
      p.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,
      p.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,
      p.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,
      p.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code
    ], Cle = "fixClassDoesntImplementInheritedAbstractMember";
    ps({
      errorCodes: GCe,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = on.ChangeTracker.with(t, (o) => $Ce(HCe(n, i.start), n, t, o, t.preferences));
        return a.length === 0 ? void 0 : [Va(Cle, a, p.Implement_inherited_abstract_class, Cle, p.Implement_all_inherited_abstract_classes)];
      },
      fixIds: [Cle],
      getAllCodeActions: function(t) {
        const n = /* @__PURE__ */ new Set();
        return lo(t, GCe, (i, a) => {
          const o = HCe(a.file, a.start);
          Yp(n, Hs(o)) && $Ce(o, t.sourceFile, t, i, t.preferences);
        });
      }
    });
    function HCe(e, t) {
      return ns(xi(e, t).parent, Zn);
    }
    function $Ce(e, t, n, i, a) {
      const o = Jd(e), c = n.program.getTypeChecker(), _ = c.getTypeAtLocation(o), u = c.getPropertiesOfType(_).filter(nHe), d = d2(t, n.program, a, n.host);
      Yle(e, u, t, n, a, d, (g) => i.insertMemberAtStart(t, e, g)), d.writeFixes(i);
    }
    function nHe(e) {
      const t = P0(js(e.getDeclarations()));
      return !(t & 2) && !!(t & 64);
    }
    var Ele = "classSuperMustPrecedeThisAccess", XCe = [p.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];
    ps({
      errorCodes: XCe,
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e, i = YCe(t, n.start);
        if (!i) return;
        const { constructor: a, superCall: o } = i;
        return [Va(Ele, on.ChangeTracker.with(e, (c) => QCe(c, t, a, o)), p.Make_super_call_the_first_statement_in_the_constructor, Ele, p.Make_all_super_calls_the_first_statement_in_their_constructor)];
      },
      fixIds: [Ele],
      getAllCodeActions(e) {
        const { sourceFile: t } = e, n = /* @__PURE__ */ new Set();
        return lo(e, XCe, (i, a) => {
          const o = YCe(a.file, a.start);
          if (!o) return;
          const { constructor: c, superCall: _ } = o;
          Yp(n, Hs(c.parent)) && QCe(i, t, c, _);
        });
      }
    });
    function QCe(e, t, n, i) {
      e.insertNodeAtConstructorStart(t, n, i), e.delete(t, i);
    }
    function YCe(e, t) {
      const n = xi(e, t);
      if (n.kind !== 110) return;
      const i = Kf(n), a = ZCe(i.body);
      return a && !a.expression.arguments.some((o) => Ln(o) && o.expression === n) ? {
        constructor: i,
        superCall: a
      } : void 0;
    }
    function ZCe(e) {
      return zl(e) && hS(e.expression) ? e : Ra(e) ? void 0 : Fa(e, ZCe);
    }
    var Dle = "constructorForDerivedNeedSuperCall", KCe = [p.Constructors_for_derived_classes_must_contain_a_super_call.code];
    ps({
      errorCodes: KCe,
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e, i = e6e(t, n.start);
        return [Va(Dle, on.ChangeTracker.with(e, (a) => t6e(a, t, i)), p.Add_missing_super_call, Dle, p.Add_all_missing_super_calls)];
      },
      fixIds: [Dle],
      getAllCodeActions: (e) => lo(e, KCe, (t, n) => t6e(t, e.sourceFile, e6e(n.file, n.start)))
    });
    function e6e(e, t) {
      const n = xi(e, t);
      return E.assert(yc(n.parent), "token should be at the constructor declaration"), n.parent;
    }
    function t6e(e, t, n) {
      const i = A.createExpressionStatement(A.createCallExpression(A.createSuper(), void 0, Te));
      e.insertNodeAtConstructorStart(t, n, i);
    }
    var r6e = "fixEnableJsxFlag", n6e = [p.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];
    ps({
      errorCodes: n6e,
      getCodeActions: function(t) {
        const { configFile: n } = t.program.getCompilerOptions();
        if (n !== void 0)
          return [Zd(r6e, on.ChangeTracker.with(t, (i) => i6e(i, n)), p.Enable_the_jsx_flag_in_your_configuration_file)];
      },
      fixIds: [r6e],
      getAllCodeActions: (e) => lo(e, n6e, (t) => {
        const { configFile: n } = e.program.getCompilerOptions();
        n !== void 0 && i6e(t, n);
      })
    });
    function i6e(e, t) {
      nue(e, t, "jsx", A.createStringLiteral("react"));
    }
    var wle = "fixNaNEquality", a6e = [p.This_condition_will_always_return_0.code];
    ps({
      errorCodes: a6e,
      getCodeActions(e) {
        const { sourceFile: t, span: n, program: i } = e, a = s6e(i, t, n);
        if (a === void 0) return;
        const { suggestion: o, expression: c, arg: _ } = a;
        return [Va(wle, on.ChangeTracker.with(e, (u) => o6e(u, t, _, c)), [p.Use_0, o], wle, p.Use_Number_isNaN_in_all_conditions)];
      },
      fixIds: [wle],
      getAllCodeActions: (e) => lo(e, a6e, (t, n) => {
        const i = s6e(e.program, n.file, du(n.start, n.length));
        i && o6e(t, n.file, i.arg, i.expression);
      })
    });
    function s6e(e, t, n) {
      const i = xr(e.getSemanticDiagnostics(t), (c) => c.start === n.start && c.length === n.length);
      if (i === void 0 || i.relatedInformation === void 0) return;
      const a = xr(i.relatedInformation, (c) => c.code === p.Did_you_mean_0.code);
      if (a === void 0 || a.file === void 0 || a.start === void 0 || a.length === void 0) return;
      const o = aue(a.file, du(a.start, a.length));
      if (o !== void 0 && dt(o) && un(o.parent))
        return {
          suggestion: iHe(a.messageText),
          expression: o.parent,
          arg: o
        };
    }
    function o6e(e, t, n, i) {
      const a = A.createCallExpression(A.createPropertyAccessExpression(A.createIdentifier("Number"), A.createIdentifier("isNaN")), void 0, [n]), o = i.operatorToken.kind;
      e.replaceNode(t, i, o === 38 || o === 36 ? A.createPrefixUnaryExpression(54, a) : a);
    }
    function iHe(e) {
      const [, t] = Mm(e, `
`, 0).match(/'(.*)'/) || [];
      return t;
    }
    ps({
      errorCodes: [
        p.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,
        p.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,
        p.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_node18_node20_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code
      ],
      getCodeActions: function(t) {
        const n = t.program.getCompilerOptions(), { configFile: i } = n;
        if (i === void 0) return;
        const a = [], o = u_(n);
        if (o >= 5 && o < 99) {
          const _ = on.ChangeTracker.with(t, (u) => {
            nue(u, i, "module", A.createStringLiteral("esnext"));
          });
          a.push(Zd("fixModuleOption", _, [p.Set_the_module_option_in_your_configuration_file_to_0, "esnext"]));
        }
        const c = Ps(n);
        if (c < 4 || c > 99) {
          const _ = on.ChangeTracker.with(t, (u) => {
            if (!iD(i)) return;
            const d = [["target", A.createStringLiteral("es2017")]];
            o === 1 && d.push(["module", A.createStringLiteral("commonjs")]), rue(u, i, d);
          });
          a.push(Zd("fixTargetOption", _, [p.Set_the_target_option_in_your_configuration_file_to_0, "es2017"]));
        }
        return a.length ? a : void 0;
      }
    });
    var Ple = "fixPropertyAssignment", c6e = [p.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];
    ps({
      errorCodes: c6e,
      fixIds: [Ple],
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e, i = u6e(t, n.start);
        return [Va(Ple, on.ChangeTracker.with(e, (a) => l6e(a, e.sourceFile, i)), [
          p.Change_0_to_1,
          "=",
          ":"
        ], Ple, [
          p.Switch_each_misused_0_to_1,
          "=",
          ":"
        ])];
      },
      getAllCodeActions: (e) => lo(e, c6e, (t, n) => l6e(t, n.file, u6e(n.file, n.start)))
    });
    function l6e(e, t, n) {
      e.replaceNode(t, n, A.createPropertyAssignment(n.name, n.objectAssignmentInitializer));
    }
    function u6e(e, t) {
      return ns(xi(e, t).parent, Nu);
    }
    var Ale = "extendsInterfaceBecomesImplements", _6e = [p.Cannot_extend_an_interface_0_Did_you_mean_implements.code];
    ps({
      errorCodes: _6e,
      getCodeActions(e) {
        const { sourceFile: t } = e, n = f6e(t, e.span.start);
        if (!n) return;
        const { extendsToken: i, heritageClauses: a } = n;
        return [Va(Ale, on.ChangeTracker.with(e, (o) => p6e(o, t, i, a)), p.Change_extends_to_implements, Ale, p.Change_all_extended_interfaces_to_implements)];
      },
      fixIds: [Ale],
      getAllCodeActions: (e) => lo(e, _6e, (t, n) => {
        const i = f6e(n.file, n.start);
        i && p6e(t, n.file, i.extendsToken, i.heritageClauses);
      })
    });
    function f6e(e, t) {
      const n = nu(xi(e, t)).heritageClauses, i = n[0].getFirstToken();
      return i.kind === 96 ? {
        extendsToken: i,
        heritageClauses: n
      } : void 0;
    }
    function p6e(e, t, n, i) {
      if (e.replaceNode(t, n, A.createToken(119)), i.length === 2 && i[0].token === 96 && i[1].token === 119) {
        const a = i[1].getFirstToken(), o = a.getFullStart();
        e.replaceRange(t, {
          pos: o,
          end: o
        }, A.createToken(28));
        const c = t.text;
        let _ = a.end;
        for (; _ < c.length && hm(c.charCodeAt(_)); ) _++;
        e.deleteRange(t, {
          pos: a.getStart(),
          end: _
        });
      }
    }
    var Nle = "forgottenThisPropertyAccess", d6e = p.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code, m6e = [
      p.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,
      p.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,
      d6e
    ];
    ps({
      errorCodes: m6e,
      getCodeActions(e) {
        const { sourceFile: t } = e, n = g6e(t, e.span.start, e.errorCode);
        if (n)
          return [Va(Nle, on.ChangeTracker.with(e, (i) => h6e(i, t, n)), [p.Add_0_to_unresolved_variable, n.className || "this"], Nle, p.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)];
      },
      fixIds: [Nle],
      getAllCodeActions: (e) => lo(e, m6e, (t, n) => {
        const i = g6e(n.file, n.start, n.code);
        i && h6e(t, e.sourceFile, i);
      })
    });
    function g6e(e, t, n) {
      const i = xi(e, t);
      if (Fe(i) || Oi(i)) return {
        node: i,
        className: n === d6e ? nu(i).name.text : void 0
      };
    }
    function h6e(e, t, { node: n, className: i }) {
      Tf(n), e.replaceNode(t, n, A.createPropertyAccessExpression(i ? A.createIdentifier(i) : A.createThis(), n));
    }
    var Ile = "fixInvalidJsxCharacters_expression", UG = "fixInvalidJsxCharacters_htmlEntity", y6e = [p.Unexpected_token_Did_you_mean_or_gt.code, p.Unexpected_token_Did_you_mean_or_rbrace.code];
    ps({
      errorCodes: y6e,
      fixIds: [Ile, UG],
      getCodeActions(e) {
        const { sourceFile: t, preferences: n, span: i } = e, a = on.ChangeTracker.with(e, (c) => Ole(c, n, t, i.start, !1)), o = on.ChangeTracker.with(e, (c) => Ole(c, n, t, i.start, !0));
        return [Va(Ile, a, p.Wrap_invalid_character_in_an_expression_container, Ile, p.Wrap_all_invalid_characters_in_an_expression_container), Va(UG, o, p.Convert_invalid_character_to_its_html_entity_code, UG, p.Convert_all_invalid_characters_to_HTML_entity_code)];
      },
      getAllCodeActions(e) {
        return lo(e, y6e, (t, n) => Ole(t, e.preferences, n.file, n.start, e.fixId === UG));
      }
    });
    var v6e = {
      ">": "&gt;",
      "}": "&rbrace;"
    };
    function aHe(e) {
      return po(v6e, e);
    }
    function Ole(e, t, n, i, a) {
      const o = n.getText()[i];
      if (!aHe(o)) return;
      const c = a ? v6e[o] : `{${Xw(n, t, o)}}`;
      e.replaceRangeWithText(n, {
        pos: i,
        end: i + 1
      }, c);
    }
    var VG = "deleteUnmatchedParameter", b6e = "renameUnmatchedParameter", S6e = [p.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];
    ps({
      fixIds: [VG, b6e],
      errorCodes: S6e,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = [], o = T6e(n, i.start);
        if (o)
          return kr(a, sHe(t, o)), kr(a, oHe(t, o)), a;
      },
      getAllCodeActions: function(t) {
        const n = /* @__PURE__ */ new Map();
        return Jk(on.ChangeTracker.with(t, (i) => {
          zk(t, S6e, ({ file: a, start: o }) => {
            const c = T6e(a, o);
            c && n.set(c.signature, kr(n.get(c.signature), c.jsDocParameterTag));
          }), n.forEach((a, o) => {
            if (t.fixId === VG) {
              const c = new Set(a);
              i.filterJSDocTags(o.getSourceFile(), o, (_) => !c.has(_));
            }
          });
        }));
      }
    });
    function sHe(e, { name: t, jsDocHost: n, jsDocParameterTag: i }) {
      return Va(VG, on.ChangeTracker.with(e, (a) => a.filterJSDocTags(e.sourceFile, n, (o) => o !== i)), [p.Delete_unused_param_tag_0, t.getText(e.sourceFile)], VG, p.Delete_all_unused_param_tags);
    }
    function oHe(e, { name: t, jsDocHost: n, signature: i, jsDocParameterTag: a }) {
      if (!It(i.parameters)) return;
      const o = e.sourceFile, c = av(i), _ = /* @__PURE__ */ new Set();
      for (const g of c) np(g) && Fe(g.name) && _.add(g.name.escapedText);
      const u = Hn(i.parameters, (g) => Fe(g.name) && !_.has(g.name.escapedText) ? g.name.getText(o) : void 0);
      if (u === void 0) return;
      const d = A.updateJSDocParameterTag(a, a.tagName, A.createIdentifier(u), a.isBracketed, a.typeExpression, a.isNameFirst, a.comment);
      return Zd(b6e, on.ChangeTracker.with(e, (g) => g.replaceJSDocComment(o, n, or(c, (h) => h === a ? d : h))), [
        p.Rename_param_tag_name_0_to_1,
        t.getText(o),
        u
      ]);
    }
    function T6e(e, t) {
      const n = xi(e, t);
      if (n.parent && np(n.parent) && Fe(n.parent.name)) {
        const i = n.parent, a = Fb(i), o = fv(i);
        if (a && o) return {
          jsDocHost: a,
          signature: o,
          name: n.parent.name,
          jsDocParameterTag: i
        };
      }
    }
    var Fle = "fixUnreferenceableDecoratorMetadata";
    ps({
      errorCodes: [p.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code],
      getCodeActions: (e) => {
        const t = cHe(e.sourceFile, e.program, e.span.start);
        if (!t) return;
        const n = on.ChangeTracker.with(e, (o) => t.kind === 277 && uHe(o, e.sourceFile, t, e.program)), i = on.ChangeTracker.with(e, (o) => lHe(o, e.sourceFile, t, e.program));
        let a;
        return n.length && (a = kr(a, Zd(Fle, n, p.Convert_named_imports_to_namespace_import))), i.length && (a = kr(a, Zd(Fle, i, p.Use_import_type))), a;
      },
      fixIds: [Fle]
    });
    function cHe(e, t, n) {
      const i = qn(xi(e, n), Fe);
      if (!i || i.parent.kind !== 184) return;
      const a = t.getTypeChecker().getSymbolAtLocation(i);
      return xr(a?.declarations || Te, _f(hd, p_, bl));
    }
    function lHe(e, t, n, i) {
      if (n.kind === 272) {
        e.insertModifierBefore(t, 156, n.name);
        return;
      }
      const a = n.kind === 274 ? n : n.parent.parent;
      if (a.name && a.namedBindings) return;
      const o = i.getTypeChecker();
      BK(a, (c) => {
        if (mu(c.symbol, o).flags & 111551) return !0;
      }) || e.insertModifierBefore(t, 156, a);
    }
    function uHe(e, t, n, i) {
      jk.doChangeNamedToNamespaceOrDefault(t, i, e, n.parent);
    }
    var VL = "unusedIdentifier", Lle = "unusedIdentifier_prefix", Mle = "unusedIdentifier_delete", qG = "unusedIdentifier_deleteImports", Rle = "unusedIdentifier_infer", x6e = [
      p._0_is_declared_but_its_value_is_never_read.code,
      p._0_is_declared_but_never_used.code,
      p.Property_0_is_declared_but_its_value_is_never_read.code,
      p.All_imports_in_import_declaration_are_unused.code,
      p.All_destructured_elements_are_unused.code,
      p.All_variables_are_unused.code,
      p.All_type_parameters_are_unused.code
    ];
    ps({
      errorCodes: x6e,
      getCodeActions(e) {
        const { errorCode: t, sourceFile: n, program: i, cancellationToken: a } = e, o = i.getTypeChecker(), c = i.getSourceFiles(), _ = xi(n, e.span.start);
        if (ed(_)) return [aP(on.ChangeTracker.with(e, (h) => h.delete(n, _)), p.Remove_template_tag)];
        if (_.kind === 30) return [aP(on.ChangeTracker.with(e, (h) => C6e(h, n, _)), p.Remove_type_parameters)];
        const u = E6e(_);
        if (u) return [Va(VL, on.ChangeTracker.with(e, (h) => h.delete(n, u)), [p.Remove_import_from_0, kee(u)], qG, p.Delete_all_unused_imports)];
        if (jle(_)) {
          const h = on.ChangeTracker.with(e, (S) => GG(n, _, S, o, c, i, a, !1));
          if (h.length) return [Va(VL, h, [p.Remove_unused_declaration_for_Colon_0, _.getText(n)], qG, p.Delete_all_unused_imports)];
        }
        if (rp(_.parent) || J0(_.parent)) {
          if (Fi(_.parent.parent)) {
            const h = _.parent.elements, S = [h.length > 1 ? p.Remove_unused_declarations_for_Colon_0 : p.Remove_unused_declaration_for_Colon_0, or(h, (T) => T.getText(n)).join(", ")];
            return [aP(on.ChangeTracker.with(e, (T) => _He(T, n, _.parent)), S)];
          }
          return [aP(on.ChangeTracker.with(e, (h) => fHe(e, h, n, _.parent)), p.Remove_unused_destructuring_declaration)];
        }
        if (D6e(n, _)) return [aP(on.ChangeTracker.with(e, (h) => w6e(h, n, _.parent)), p.Remove_variable_statement)];
        if (Fe(_) && Xc(_.parent)) return [aP(on.ChangeTracker.with(e, (h) => I6e(h, n, _.parent)), [p.Remove_unused_declaration_for_Colon_0, _.getText(n)])];
        const d = [];
        if (_.kind === 140) {
          const h = on.ChangeTracker.with(e, (T) => k6e(T, n, _)), S = ns(_.parent, OS).typeParameter.name.text;
          d.push(Va(VL, h, [p.Replace_infer_0_with_unknown, S], Rle, p.Replace_all_unused_infer_with_unknown));
        } else {
          const h = on.ChangeTracker.with(e, (S) => GG(n, _, S, o, c, i, a, !1));
          if (h.length) {
            const S = _s(_.parent) ? _.parent : _;
            d.push(aP(h, [p.Remove_unused_declaration_for_Colon_0, S.getText(n)]));
          }
        }
        const g = on.ChangeTracker.with(e, (h) => P6e(h, t, n, _));
        return g.length && d.push(Va(VL, g, [p.Prefix_0_with_an_underscore, _.getText(n)], Lle, p.Prefix_all_unused_declarations_with_where_possible)), d;
      },
      fixIds: [
        Lle,
        Mle,
        qG,
        Rle
      ],
      getAllCodeActions: (e) => {
        const { sourceFile: t, program: n, cancellationToken: i } = e, a = n.getTypeChecker(), o = n.getSourceFiles();
        return lo(e, x6e, (c, _) => {
          const u = xi(t, _.start);
          switch (e.fixId) {
            case Lle:
              P6e(c, _.code, t, u);
              break;
            case qG: {
              const d = E6e(u);
              d ? c.delete(t, d) : jle(u) && GG(t, u, c, a, o, n, i, !0);
              break;
            }
            case Mle:
              if (u.kind === 140 || jle(u)) break;
              if (ed(u)) c.delete(t, u);
              else if (u.kind === 30) C6e(c, t, u);
              else if (rp(u.parent)) {
                if (u.parent.parent.initializer) break;
                (!Fi(u.parent.parent) || A6e(u.parent.parent, a, o)) && c.delete(t, u.parent.parent);
              } else {
                if (J0(u.parent.parent) && u.parent.parent.parent.initializer) break;
                D6e(t, u) ? w6e(c, t, u.parent) : Fe(u) && Xc(u.parent) ? I6e(c, t, u.parent) : GG(t, u, c, a, o, n, i, !0);
              }
              break;
            case Rle:
              u.kind === 140 && k6e(c, t, u);
              break;
            default:
              E.fail(JSON.stringify(e.fixId));
          }
        });
      }
    });
    function k6e(e, t, n) {
      e.replaceNode(t, n.parent, A.createKeywordTypeNode(159));
    }
    function aP(e, t) {
      return Va(VL, e, t, Mle, p.Delete_all_unused_declarations);
    }
    function C6e(e, t, n) {
      e.delete(t, E.checkDefined(ns(n.parent, OB).typeParameters, "The type parameter to delete should exist"));
    }
    function jle(e) {
      return e.kind === 102 || e.kind === 80 && (e.parent.kind === 277 || e.parent.kind === 274);
    }
    function E6e(e) {
      return e.kind === 102 ? qn(e.parent, ic) : void 0;
    }
    function D6e(e, t) {
      return iu(t.parent) && js(t.parent.getChildren(e)) === t;
    }
    function w6e(e, t, n) {
      e.delete(t, n.parent.kind === 244 ? n.parent : n);
    }
    function _He(e, t, n) {
      bt(n.elements, (i) => e.delete(t, i));
    }
    function fHe(e, t, n, { parent: i }) {
      if (ci(i) && i.initializer && Wy(i.initializer)) if (iu(i.parent) && It(i.parent.declarations) > 1) {
        const a = i.parent.parent, o = a.getStart(n), c = a.end;
        t.delete(n, i), t.insertNodeAt(n, c, i.initializer, {
          prefix: Xh(e.host, e.formatContext.options) + n.text.slice(sL(n.text, o - 1), o),
          suffix: SI(n) ? ";" : ""
        });
      } else t.replaceNode(n, i.parent, i.initializer);
      else t.delete(n, i);
    }
    function P6e(e, t, n, i) {
      t !== p.Property_0_is_declared_but_its_value_is_never_read.code && (i.kind === 140 && (i = ns(i.parent, OS).typeParameter.name), Fe(i) && pHe(i) && (e.replaceNode(n, i, A.createIdentifier(`_${i.text}`)), Fi(i.parent) && HC(i.parent).forEach((a) => {
        Fe(a.name) && e.replaceNode(n, a.name, A.createIdentifier(`_${a.name.text}`));
      })));
    }
    function pHe(e) {
      switch (e.parent.kind) {
        case 170:
        case 169:
          return !0;
        case 261:
          switch (e.parent.parent.parent.kind) {
            case 251:
            case 250:
              return !0;
          }
      }
      return !1;
    }
    function GG(e, t, n, i, a, o, c, _) {
      dHe(t, n, e, i, a, o, c, _), Fe(t) && Jo.Core.eachSymbolReferenceInFile(t, i, e, (u) => {
        Ln(u.parent) && u.parent.name === u && (u = u.parent), !_ && yHe(u) && n.delete(e, u.parent.parent);
      });
    }
    function dHe(e, t, n, i, a, o, c, _) {
      const { parent: u } = e;
      if (Fi(u)) mHe(t, n, u, i, a, o, c, _);
      else if (!(_ && Fe(e) && Jo.Core.isSymbolReferencedInFile(e, i, n))) {
        const d = hd(u) ? e : _s(u) ? u.parent : u;
        E.assert(d !== n, "should not delete whole source file"), t.delete(n, d);
      }
    }
    function mHe(e, t, n, i, a, o, c, _ = !1) {
      if (gHe(i, t, n, a, o, c, _))
        if (n.modifiers && n.modifiers.length > 0 && (!Fe(n.name) || Jo.Core.isSymbolReferencedInFile(n.name, i, t)))
          for (const u of n.modifiers) hs(u) && e.deleteModifier(t, u);
        else !n.initializer && A6e(n, i, a) && e.delete(t, n);
    }
    function A6e(e, t, n) {
      const i = e.parent.parameters.indexOf(e);
      return !Jo.Core.someSignatureUsage(e.parent, n, t, (a, o) => !o || o.arguments.length > i);
    }
    function gHe(e, t, n, i, a, o, c) {
      const { parent: _ } = n;
      switch (_.kind) {
        case 175:
        case 177:
          const u = _.parameters.indexOf(n), d = hc(_) ? _.name : _, g = Jo.Core.getReferencedSymbolsForNode(_.pos, d, a, i, o);
          if (g) {
            for (const h of g) for (const S of h.references) if (S.kind === Jo.EntryKind.Node) {
              const T = KD(S.node) && za(S.node.parent) && S.node.parent.arguments.length > u, k = Ln(S.node.parent) && KD(S.node.parent.expression) && za(S.node.parent.parent) && S.node.parent.parent.arguments.length > u, D = (hc(S.node.parent) || gd(S.node.parent)) && S.node.parent !== n.parent && S.node.parent.parameters.length > u;
              if (T || k || D) return !1;
            }
          }
          return !0;
        case 263:
          return _.name && hHe(e, t, _.name) ? N6e(_, n, c) : !0;
        case 219:
        case 220:
          return N6e(_, n, c);
        case 179:
          return !1;
        case 178:
          return !0;
        default:
          return E.failBadSyntaxKind(_);
      }
    }
    function hHe(e, t, n) {
      return !!Jo.Core.eachSymbolReferenceInFile(n, e, t, (i) => Fe(i) && za(i.parent) && i.parent.arguments.includes(i));
    }
    function N6e(e, t, n) {
      const i = e.parameters, a = i.indexOf(t);
      return E.assert(a !== -1, "The parameter should already be in the list"), n ? i.slice(a + 1).every((o) => Fe(o.name) && !o.symbol.isReferenced) : a === i.length - 1;
    }
    function yHe(e) {
      return (un(e.parent) && e.parent.left === e || (Oz(e.parent) || kv(e.parent)) && e.parent.operand === e) && zl(e.parent.parent);
    }
    function I6e(e, t, n) {
      const i = n.symbol.declarations;
      if (i) for (const a of i) e.delete(t, a);
    }
    var Ble = "fixUnreachableCode", O6e = [p.Unreachable_code_detected.code];
    ps({
      errorCodes: O6e,
      getCodeActions(e) {
        if (!e.program.getSyntacticDiagnostics(e.sourceFile, e.cancellationToken).length)
          return [Va(Ble, on.ChangeTracker.with(e, (t) => F6e(t, e.sourceFile, e.span.start, e.span.length, e.errorCode)), p.Remove_unreachable_code, Ble, p.Remove_all_unreachable_code)];
      },
      fixIds: [Ble],
      getAllCodeActions: (e) => lo(e, O6e, (t, n) => F6e(t, n.file, n.start, n.length, n.code))
    });
    function F6e(e, t, n, i, a) {
      const o = xi(t, n), c = cr(o, Ei);
      if (c.getStart(t) !== o.getStart(t)) {
        const u = JSON.stringify({
          statementKind: E.formatSyntaxKind(c.kind),
          tokenKind: E.formatSyntaxKind(o.kind),
          errorCode: a,
          start: n,
          length: i
        });
        E.fail("Token and statement should start at the same point. " + u);
      }
      const _ = (Wa(c.parent) ? c.parent : c).parent;
      if (!Wa(c.parent) || c === js(c.parent.statements)) switch (_.kind) {
        case 246:
          if (_.elseStatement) {
            if (Wa(c.parent)) break;
            e.replaceNode(t, c, A.createBlock(Te));
            return;
          }
        case 248:
        case 249:
          e.delete(t, _);
          return;
      }
      if (Wa(c.parent)) {
        const u = n + i, d = E.checkDefined(vHe(Hee(c.parent.statements, c), (g) => g.pos < u), "Some statement should be last");
        e.deleteNodeRange(t, c, d);
      } else e.delete(t, c);
    }
    function vHe(e, t) {
      let n;
      for (const i of e) {
        if (!t(i)) break;
        n = i;
      }
      return n;
    }
    var Jle = "fixUnusedLabel", L6e = [p.Unused_label.code];
    ps({
      errorCodes: L6e,
      getCodeActions(e) {
        return [Va(Jle, on.ChangeTracker.with(e, (t) => M6e(t, e.sourceFile, e.span.start)), p.Remove_unused_label, Jle, p.Remove_all_unused_labels)];
      },
      fixIds: [Jle],
      getAllCodeActions: (e) => lo(e, L6e, (t, n) => M6e(t, n.file, n.start))
    });
    function M6e(e, t, n) {
      const i = xi(t, n), a = ns(i.parent, c1), o = i.getStart(t), c = a.statement.getStart(t), _ = xp(o, c, t) ? c : gs(t.text, uo(a, 59, t).end, !0);
      e.deleteRange(t, {
        pos: o,
        end: _
      });
    }
    var R6e = "fixJSDocTypes_plain", zle = "fixJSDocTypes_nullable", j6e = [
      p.JSDoc_types_can_only_be_used_inside_documentation_comments.code,
      p._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,
      p._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code
    ];
    ps({
      errorCodes: j6e,
      getCodeActions(e) {
        const { sourceFile: t } = e, n = e.program.getTypeChecker(), i = J6e(t, e.span.start, n);
        if (!i) return;
        const { typeNode: a, type: o } = i, c = a.getText(t), _ = [u(o, R6e, p.Change_all_jsdoc_style_types_to_TypeScript)];
        return a.kind === 315 && _.push(u(o, zle, p.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)), _;
        function u(d, g, h) {
          return Va("jdocTypes", on.ChangeTracker.with(e, (S) => B6e(S, t, a, d, n)), [
            p.Change_0_to_1,
            c,
            n.typeToString(d)
          ], g, h);
        }
      },
      fixIds: [R6e, zle],
      getAllCodeActions(e) {
        const { fixId: t, program: n, sourceFile: i } = e, a = n.getTypeChecker();
        return lo(e, j6e, (o, c) => {
          const _ = J6e(c.file, c.start, a);
          if (!_) return;
          const { typeNode: u, type: d } = _;
          B6e(o, i, u, u.kind === 315 && t === zle ? a.getNullableType(d, 4) : d, a);
        });
      }
    });
    function B6e(e, t, n, i, a) {
      e.replaceNode(t, n, a.typeToTypeNode(i, n, void 0));
    }
    function J6e(e, t, n) {
      const i = cr(xi(e, t), bHe), a = i && i.type;
      return a && {
        typeNode: a,
        type: SHe(n, a)
      };
    }
    function bHe(e) {
      switch (e.kind) {
        case 235:
        case 180:
        case 181:
        case 263:
        case 178:
        case 182:
        case 201:
        case 175:
        case 174:
        case 170:
        case 173:
        case 172:
        case 179:
        case 266:
        case 217:
        case 261:
          return !0;
        default:
          return !1;
      }
    }
    function SHe(e, t) {
      if (M6(t)) {
        const n = e.getTypeFromTypeNode(t.type);
        return n === e.getNeverType() || n === e.getVoidType() ? n : e.getUnionType(kr([n, e.getUndefinedType()], t.postfix ? void 0 : e.getNullType()));
      }
      return e.getTypeFromTypeNode(t);
    }
    var Wle = "fixMissingCallParentheses", z6e = [p.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];
    ps({
      errorCodes: z6e,
      fixIds: [Wle],
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e, i = U6e(t, n.start);
        if (i)
          return [Va(Wle, on.ChangeTracker.with(e, (a) => W6e(a, e.sourceFile, i)), p.Add_missing_call_parentheses, Wle, p.Add_all_missing_call_parentheses)];
      },
      getAllCodeActions: (e) => lo(e, z6e, (t, n) => {
        const i = U6e(n.file, n.start);
        i && W6e(t, n.file, i);
      })
    });
    function W6e(e, t, n) {
      e.replaceNodeWithText(t, n, `${n.text}()`);
    }
    function U6e(e, t) {
      const n = xi(e, t);
      if (Ln(n.parent)) {
        let i = n.parent;
        for (; Ln(i.parent); ) i = i.parent;
        return i.name;
      }
      if (Fe(n)) return n;
    }
    var V6e = "fixMissingTypeAnnotationOnExports", Ule = "add-annotation", Vle = "add-type-assertion", THe = "extract-expression", q6e = [
      p.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,
      p.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,
      p.At_least_one_accessor_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,
      p.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,
      p.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,
      p.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,
      p.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,
      p.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,
      p.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,
      p.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,
      p.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,
      p.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,
      p.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,
      p.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,
      p.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,
      p.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,
      p.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,
      p.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,
      p.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_its_type_This_is_not_supported_with_isolatedDeclarations.code,
      p.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,
      p.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code
    ], xHe = /* @__PURE__ */ new Set([
      178,
      175,
      173,
      263,
      219,
      220,
      261,
      170,
      278,
      264,
      207,
      208
    ]), G6e = 531469, H6e = 1;
    ps({
      errorCodes: q6e,
      fixIds: [V6e],
      getCodeActions(e) {
        const t = [];
        return sP(Ule, t, e, 0, (n) => n.addTypeAnnotation(e.span)), sP(Ule, t, e, 1, (n) => n.addTypeAnnotation(e.span)), sP(Ule, t, e, 2, (n) => n.addTypeAnnotation(e.span)), sP(Vle, t, e, 0, (n) => n.addInlineAssertion(e.span)), sP(Vle, t, e, 1, (n) => n.addInlineAssertion(e.span)), sP(Vle, t, e, 2, (n) => n.addInlineAssertion(e.span)), sP(THe, t, e, 0, (n) => n.extractAsVariable(e.span)), t;
      },
      getAllCodeActions: (e) => Jk($6e(e, 0, (t) => {
        zk(e, q6e, (n) => {
          t.addTypeAnnotation(n);
        });
      }).textChanges)
    });
    function sP(e, t, n, i, a) {
      const o = $6e(n, i, a);
      o.result && o.textChanges.length && t.push(Va(e, o.textChanges, o.result, V6e, p.Add_all_missing_type_annotations));
    }
    function $6e(e, t, n) {
      const i = {
        typeNode: void 0,
        mutatedTarget: !1
      }, a = on.ChangeTracker.fromContext(e), o = e.sourceFile, c = e.program, _ = c.getTypeChecker(), u = Ps(c.getCompilerOptions()), d = d2(e.sourceFile, e.program, e.preferences, e.host), g = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set(), S = g1({ preserveSourceNewlines: !1 }), T = n({
        addTypeAnnotation: k,
        addInlineAssertion: R,
        extractAsVariable: G
      });
      return d.writeFixes(a), {
        result: T,
        textChanges: a.getChanges()
      };
      function k(ke) {
        e.cancellationToken.throwIfCancellationRequested();
        const ae = xi(o, ke.start), Ce = L(ae);
        if (Ce)
          return Xc(Ce) ? D(Ce) : z(Ce);
        const ue = ot(ae);
        if (ue) return z(ue);
      }
      function D(ke) {
        var ae;
        if (h?.has(ke)) return;
        h?.add(ke);
        const Ce = _.getTypeAtLocation(ke), ue = _.getPropertiesOfType(Ce);
        if (!ke.name || ue.length === 0) return;
        const Ie = [];
        for (const Ut of ue)
          Y_(Ut.name, Ps(c.getCompilerOptions())) && (Ut.valueDeclaration && ci(Ut.valueDeclaration) || Ie.push(A.createVariableStatement([A.createModifier(95)], A.createVariableDeclarationList([A.createVariableDeclaration(Ut.name, void 0, oe(_.getTypeOfSymbol(Ut), ke), void 0)]))));
        if (Ie.length === 0) return;
        const Xe = [];
        (ae = ke.modifiers) != null && ae.some((Ut) => Ut.kind === 95) && Xe.push(A.createModifier(95)), Xe.push(A.createModifier(138));
        const Ft = A.createModuleDeclaration(Xe, ke.name, A.createModuleBlock(Ie), 101441696);
        return a.insertNodeAfter(o, ke, Ft), [p.Annotate_types_of_properties_expando_function_in_a_namespace];
      }
      function P(ke) {
        return !go(ke) && !za(ke) && !bs(ke) && !hu(ke);
      }
      function N(ke, ae) {
        return P(ke) && (ke = A.createParenthesizedExpression(ke)), A.createAsExpression(ke, ae);
      }
      function M(ke, ae) {
        return P(ke) && (ke = A.createParenthesizedExpression(ke)), A.createAsExpression(A.createSatisfiesExpression(ke, no(ae)), ae);
      }
      function R(ke) {
        e.cancellationToken.throwIfCancellationRequested();
        const ae = xi(o, ke.start);
        if (L(ae)) return;
        const Ce = K(ae, ke);
        if (!Ce || xS(Ce) || xS(Ce.parent)) return;
        const ue = dt(Ce), Ie = Nu(Ce);
        if (!Ie && Jl(Ce) || cr(Ce, Ja) || cr(Ce, Gh) || ue && (cr(Ce, kf) || cr(Ce, ui)) || wp(Ce)) return;
        const Xe = cr(Ce, ci), Ft = Xe && _.getTypeAtLocation(Xe);
        if (Ft && Ft.flags & 16384 || !(ue || Ie)) return;
        const { typeNode: Ut, mutatedTarget: Xt } = he(Ce, Ft);
        if (!(!Ut || Xt))
          return Ie ? a.insertNodeAt(o, Ce.end, N(no(Ce.name), Ut), { prefix: ": " }) : ue ? a.replaceNode(o, Ce, M(no(Ce), Ut)) : E.assertNever(Ce), [p.Add_satisfies_and_an_inline_type_assertion_with_0, Ne(Ut)];
      }
      function G(ke) {
        e.cancellationToken.throwIfCancellationRequested();
        const ae = K(xi(o, ke.start), ke);
        if (!ae || xS(ae) || xS(ae.parent) || !dt(ae)) return;
        if (hu(ae))
          return a.replaceNode(o, ae, N(ae, A.createTypeReferenceNode("const"))), [p.Mark_array_literal_as_const];
        const Ce = cr(ae, ol);
        if (Ce) {
          if (Ce === ae.parent && go(ae)) return;
          const ue = A.createUniqueName(qoe(ae, o, _, o), 16);
          let Ie = ae, Xe = ae;
          if (wp(Ie) && (Ie = dd(Ie.parent), Be(Ie.parent) ? Xe = Ie = Ie.parent : Xe = N(Ie, A.createTypeReferenceNode("const"))), go(Ie)) return;
          const Ft = A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(ue, void 0, void 0, Xe)], 2)), Ut = cr(ae, Ei);
          return a.insertNodeBefore(o, Ut, Ft), a.replaceNode(o, Ie, A.createAsExpression(A.cloneNode(ue), A.createTypeQueryNode(A.cloneNode(ue)))), [p.Extract_to_variable_and_replace_with_0_as_typeof_0, Ne(ue)];
        }
      }
      function L(ke) {
        const ae = cr(ke, (Ce) => Ei(Ce) ? "quit" : rk(Ce));
        if (ae && rk(ae)) {
          let Ce = ae;
          if (un(Ce) && (Ce = Ce.left, !rk(Ce)))
            return;
          const ue = _.getTypeAtLocation(Ce.expression);
          if (!ue) return;
          if (_t(_.getPropertiesOfType(ue), (Ie) => Ie.valueDeclaration === ae || Ie.valueDeclaration === ae.parent)) {
            const Ie = ue.symbol.valueDeclaration;
            if (Ie) {
              if (r1(Ie) && ci(Ie.parent)) return Ie.parent;
              if (Xc(Ie)) return Ie;
            }
          }
        }
      }
      function z(ke) {
        if (!g?.has(ke))
          switch (g?.add(ke), ke.kind) {
            case 170:
            case 173:
            case 261:
              return Ae(ke);
            case 220:
            case 219:
            case 263:
            case 175:
            case 178:
              return H(ke, o);
            case 278:
              return U(ke);
            case 264:
              return pe(ke);
            case 207:
            case 208:
              return ie(ke);
            default:
              throw new Error(`Cannot find a fix for the given node ${ke.kind}`);
          }
      }
      function H(ke, ae) {
        if (ke.type) return;
        const { typeNode: Ce } = he(ke);
        if (Ce)
          return a.tryInsertTypeAnnotation(ae, ke, Ce), [p.Add_return_type_0, Ne(Ce)];
      }
      function U(ke) {
        if (ke.isExportEquals) return;
        const { typeNode: ae } = he(ke.expression);
        if (!ae) return;
        const Ce = A.createUniqueName("_default");
        return a.replaceNodeWithNodes(o, ke, [A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(Ce, void 0, ae, ke.expression)], 2)), A.updateExportAssignment(ke, ke?.modifiers, Ce)]), [p.Extract_default_export_to_variable];
      }
      function pe(ke) {
        var ae, Ce;
        const ue = (ae = ke.heritageClauses) == null ? void 0 : ae.find((Ct) => Ct.token === 96), Ie = ue?.types[0];
        if (!Ie) return;
        const { typeNode: Xe } = he(Ie.expression);
        if (!Xe) return;
        const Ft = A.createUniqueName(ke.name ? ke.name.text + "Base" : "Anonymous", 16), Ut = A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(Ft, void 0, Xe, Ie.expression)], 2));
        a.insertNodeBefore(o, ke, Ut);
        const Xt = Ly(o.text, Ie.end), Ar = ((Ce = Xt?.[Xt.length - 1]) == null ? void 0 : Ce.end) ?? Ie.end;
        return a.replaceRange(o, {
          pos: Ie.getFullStart(),
          end: Ar
        }, Ft, { prefix: " " }), [p.Extract_base_class_to_variable];
      }
      function ie(ke) {
        var ae;
        const Ce = ke.parent, ue = ke.parent.parent.parent;
        if (!Ce.initializer) return;
        let Ie;
        const Xe = [];
        if (Fe(Ce.initializer))
          Ie = { expression: {
            kind: 3,
            identifier: Ce.initializer
          } };
        else {
          const Xt = A.createUniqueName("dest", 16);
          Ie = { expression: {
            kind: 3,
            identifier: Xt
          } }, Xe.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(Xt, void 0, void 0, Ce.initializer)], 2)));
        }
        const Ft = [];
        J0(ke) ? W(ke, Ft, Ie) : Q(ke, Ft, Ie);
        const Ut = /* @__PURE__ */ new Map();
        for (const Xt of Ft) {
          if (Xt.element.propertyName && _s(Xt.element.propertyName)) {
            const Ct = Xt.element.propertyName.expression, Kt = A.getGeneratedNameForNode(Ct), zr = A.createVariableDeclaration(Kt, void 0, void 0, Ct), _i = A.createVariableDeclarationList([zr], 2), Gr = A.createVariableStatement(void 0, _i);
            Xe.push(Gr), Ut.set(Ct, Kt);
          }
          const Ar = Xt.element.name;
          if (J0(Ar)) W(Ar, Ft, Xt);
          else if (rp(Ar)) Q(Ar, Ft, Xt);
          else {
            const { typeNode: Ct } = he(Ar);
            let Kt = se(Xt, Ut);
            if (Xt.element.initializer) {
              const _i = (ae = Xt.element) == null ? void 0 : ae.propertyName, Gr = A.createUniqueName(_i && Fe(_i) ? _i.text : "temp", 16);
              Xe.push(A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(Gr, void 0, void 0, Kt)], 2))), Kt = A.createConditionalExpression(A.createBinaryExpression(Gr, A.createToken(37), A.createIdentifier("undefined")), A.createToken(58), Xt.element.initializer, A.createToken(59), Kt);
            }
            const zr = Qn(ue, 32) ? [A.createToken(95)] : void 0;
            Xe.push(A.createVariableStatement(zr, A.createVariableDeclarationList([A.createVariableDeclaration(Ar, void 0, Ct, Kt)], 2)));
          }
        }
        return ue.declarationList.declarations.length > 1 && Xe.push(A.updateVariableStatement(ue, ue.modifiers, A.updateVariableDeclarationList(ue.declarationList, ue.declarationList.declarations.filter((Xt) => Xt !== ke.parent)))), a.replaceNodeWithNodes(o, ue, Xe), [p.Extract_binding_expressions_to_variable];
      }
      function W(ke, ae, Ce) {
        for (let ue = 0; ue < ke.elements.length; ++ue) {
          const Ie = ke.elements[ue];
          Al(Ie) || ae.push({
            element: Ie,
            parent: Ce,
            expression: {
              kind: 2,
              arrayIndex: ue
            }
          });
        }
      }
      function Q(ke, ae, Ce) {
        for (const ue of ke.elements) {
          let Ie;
          if (ue.propertyName) if (_s(ue.propertyName)) {
            ae.push({
              element: ue,
              parent: Ce,
              expression: {
                kind: 1,
                computed: ue.propertyName.expression
              }
            });
            continue;
          } else Ie = ue.propertyName.text;
          else Ie = ue.name.text;
          ae.push({
            element: ue,
            parent: Ce,
            expression: {
              kind: 0,
              text: Ie
            }
          });
        }
      }
      function se(ke, ae) {
        const Ce = [ke];
        for (; ke.parent; )
          ke = ke.parent, Ce.push(ke);
        let ue = Ce[Ce.length - 1].expression.identifier;
        for (let Ie = Ce.length - 2; Ie >= 0; --Ie) {
          const Xe = Ce[Ie].expression;
          Xe.kind === 0 ? ue = A.createPropertyAccessChain(ue, void 0, A.createIdentifier(Xe.text)) : Xe.kind === 1 ? ue = A.createElementAccessExpression(ue, ae.get(Xe.computed)) : Xe.kind === 2 && (ue = A.createElementAccessExpression(ue, Xe.arrayIndex));
        }
        return ue;
      }
      function he(ke, ae) {
        if (t === 1) return ce(ke);
        let Ce;
        if (xS(ke)) {
          const Xe = _.getSignatureFromDeclaration(ke);
          if (Xe) {
            const Ft = _.getTypePredicateOfSignature(Xe);
            if (Ft)
              return Ft.type ? {
                typeNode: ge(Ft, cr(ke, Jl) ?? o, Ie(Ft.type)),
                mutatedTarget: !1
              } : i;
            Ce = _.getReturnTypeOfSignature(Xe);
          }
        } else Ce = _.getTypeAtLocation(ke);
        if (!Ce) return i;
        if (t === 2) {
          ae && (Ce = ae);
          const Xe = _.getWidenedLiteralType(Ce);
          if (_.isTypeAssignableTo(Xe, Ce)) return i;
          Ce = Xe;
        }
        const ue = cr(ke, Jl) ?? o;
        return Fi(ke) && _.requiresAddingImplicitUndefined(ke, ue) && (Ce = _.getUnionType([_.getUndefinedType(), Ce], 0)), {
          typeNode: oe(Ce, ue, Ie(Ce)),
          mutatedTarget: !1
        };
        function Ie(Xe) {
          return (ci(ke) || ga(ke) && Qn(ke, 264)) && Xe.flags & 16384 ? 1048576 : 0;
        }
      }
      function fe(ke) {
        return A.createTypeQueryNode(no(ke));
      }
      function de(ke, ae = "temp") {
        const Ce = !!cr(ke, Be);
        return Ce ? Se(ke, ae, Ce, (ue) => ue.elements, wp, A.createSpreadElement, (ue) => A.createArrayLiteralExpression(ue, !0), (ue) => A.createTupleTypeNode(ue.map(A.createRestTypeNode))) : i;
      }
      function $(ke, ae = "temp") {
        return Se(ke, ae, !!cr(ke, Be), (Ce) => Ce.properties, ih, A.createSpreadAssignment, (Ce) => A.createObjectLiteralExpression(Ce, !0), A.createIntersectionTypeNode);
      }
      function Se(ke, ae, Ce, ue, Ie, Xe, Ft, Ut) {
        const Xt = [], Ar = [];
        let Ct;
        const Kt = cr(ke, Ei);
        for (const Gr of ue(ke)) Ie(Gr) ? (_i(), go(Gr.expression) ? (Xt.push(fe(Gr.expression)), Ar.push(Gr)) : zr(Gr.expression)) : (Ct ?? (Ct = [])).push(Gr);
        if (Ar.length === 0) return i;
        return _i(), a.replaceNode(o, ke, Ft(Ar)), {
          typeNode: Ut(Xt),
          mutatedTarget: !0
        };
        function zr(Gr) {
          const Nt = A.createUniqueName(ae + "_Part" + (Ar.length + 1), 16), Li = Ce ? A.createAsExpression(Gr, A.createTypeReferenceNode("const")) : Gr, ri = A.createVariableStatement(void 0, A.createVariableDeclarationList([A.createVariableDeclaration(Nt, void 0, void 0, Li)], 2));
          a.insertNodeBefore(o, Kt, ri), Xt.push(fe(Nt)), Ar.push(Xe(Nt));
        }
        function _i() {
          Ct && (zr(Ft(Ct)), Ct = void 0);
        }
      }
      function Be(ke) {
        return Db(ke) && _d(ke.type);
      }
      function ce(ke) {
        if (Fi(ke)) return i;
        if (Nu(ke)) return {
          typeNode: fe(ke.name),
          mutatedTarget: !1
        };
        if (go(ke)) return {
          typeNode: fe(ke),
          mutatedTarget: !1
        };
        if (Be(ke)) return ce(ke.expression);
        if (hu(ke)) {
          const ae = cr(ke, ci);
          return de(ke, ae && Fe(ae.name) ? ae.name.text : void 0);
        }
        if (bs(ke)) {
          const ae = cr(ke, ci);
          return $(ke, ae && Fe(ae.name) ? ae.name.text : void 0);
        }
        if (ci(ke) && ke.initializer) return ce(ke.initializer);
        if (MS(ke)) {
          const { typeNode: ae, mutatedTarget: Ce } = ce(ke.whenTrue);
          if (!ae) return i;
          const { typeNode: ue, mutatedTarget: Ie } = ce(ke.whenFalse);
          return ue ? {
            typeNode: A.createUnionTypeNode([ae, ue]),
            mutatedTarget: Ce || Ie
          } : i;
        }
        return i;
      }
      function oe(ke, ae, Ce = 0) {
        let ue = !1;
        const Ie = gEe(_, ke, ae, G6e | Ce, H6e, {
          moduleResolverHost: c,
          trackSymbol() {
            return !0;
          },
          reportTruncationError() {
            ue = !0;
          }
        });
        if (!Ie) return;
        const Xe = Kle(Ie, d, u);
        return ue ? A.createKeywordTypeNode(133) : Xe;
      }
      function ge(ke, ae, Ce = 0) {
        let ue = !1;
        const Ie = hEe(_, d, ke, ae, u, G6e | Ce, H6e, {
          moduleResolverHost: c,
          trackSymbol() {
            return !0;
          },
          reportTruncationError() {
            ue = !0;
          }
        });
        return ue ? A.createKeywordTypeNode(133) : Ie;
      }
      function Ae(ke) {
        const { typeNode: ae } = he(ke);
        if (ae)
          return ke.type ? a.replaceNode(Sr(ke), ke.type, ae) : a.tryInsertTypeAnnotation(Sr(ke), ke, ae), [p.Add_annotation_of_type_0, Ne(ae)];
      }
      function Ne(ke) {
        ln(ke, 1);
        const ae = S.printNode(4, ke, o);
        return ae.length > Z4 ? ae.substring(0, Z4 - 3) + "..." : (ln(ke, 0), ae);
      }
      function ot(ke) {
        return cr(ke, (ae) => xHe.has(ae.kind) && (!rp(ae) && !J0(ae) || ci(ae.parent)));
      }
      function K(ke, ae) {
        for (; ke && ke.end < ae.start + ae.length; ) ke = ke.parent;
        for (; ke.parent.pos === ke.pos && ke.parent.end === ke.end; ) ke = ke.parent;
        return Fe(ke) && E0(ke.parent) && ke.parent.initializer ? ke.parent.initializer : ke;
      }
    }
    var qle = "fixAwaitInSyncFunction", X6e = [
      p.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,
      p.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,
      p.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,
      p.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code
    ];
    ps({
      errorCodes: X6e,
      getCodeActions(e) {
        const { sourceFile: t, span: n } = e, i = Q6e(t, n.start);
        if (i)
          return [Va(qle, on.ChangeTracker.with(e, (a) => Y6e(a, t, i)), p.Add_async_modifier_to_containing_function, qle, p.Add_all_missing_async_modifiers)];
      },
      fixIds: [qle],
      getAllCodeActions: function(t) {
        const n = /* @__PURE__ */ new Set();
        return lo(t, X6e, (i, a) => {
          const o = Q6e(a.file, a.start);
          !o || !Yp(n, Hs(o.insertBefore)) || Y6e(i, t.sourceFile, o);
        });
      }
    });
    function kHe(e) {
      if (e.type) return e.type;
      if (ci(e.parent) && e.parent.type && mg(e.parent.type)) return e.parent.type.type;
    }
    function Q6e(e, t) {
      const n = Kf(xi(e, t));
      if (!n) return;
      let i;
      switch (n.kind) {
        case 175:
          i = n.name;
          break;
        case 263:
        case 219:
          i = uo(n, 100, e);
          break;
        case 220:
          i = uo(n, n.typeParameters ? 30 : 21, e) || js(n.parameters);
          break;
        default:
          return;
      }
      return i && {
        insertBefore: i,
        returnType: kHe(n)
      };
    }
    function Y6e(e, t, { insertBefore: n, returnType: i }) {
      if (i) {
        const a = tA(i);
        (!a || a.kind !== 80 || a.text !== "Promise") && e.replaceNode(t, i, A.createTypeReferenceNode("Promise", A.createNodeArray([i])));
      }
      e.insertModifierBefore(t, 134, n);
    }
    var Z6e = [p._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code, p._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code], Gle = "fixPropertyOverrideAccessor";
    ps({
      errorCodes: Z6e,
      getCodeActions(e) {
        const t = K6e(e.sourceFile, e.span.start, e.span.length, e.errorCode, e);
        if (t) return [Va(Gle, t, p.Generate_get_and_set_accessors, Gle, p.Generate_get_and_set_accessors_for_all_overriding_properties)];
      },
      fixIds: [Gle],
      getAllCodeActions: (e) => lo(e, Z6e, (t, n) => {
        const i = K6e(n.file, n.start, n.length, n.code, e);
        if (i) for (const a of i) t.pushRaw(e.sourceFile, a);
      })
    });
    function K6e(e, t, n, i, a) {
      let o, c;
      if (i === p._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)
        o = t, c = t + n;
      else if (i === p._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code) {
        const _ = a.program.getTypeChecker(), u = xi(e, t).parent;
        if (_s(u)) return;
        E.assert(zy(u), "error span of fixPropertyOverrideAccessor should only be on an accessor");
        const d = u.parent;
        E.assert(Zn(d), "erroneous accessors should only be inside classes");
        const g = Jd(d);
        if (!g) return;
        const h = Gs(g.expression), S = Hc(h) ? h.symbol : _.getSymbolAtLocation(h);
        if (!S) return;
        const T = _.getDeclaredTypeOfSymbol(S), k = _.getPropertyOfType(T, Ti(Ix(u.name)));
        if (!k || !k.valueDeclaration) return;
        o = k.valueDeclaration.pos, c = k.valueDeclaration.end, e = Sr(k.valueDeclaration);
      } else E.fail("fixPropertyOverrideAccessor codefix got unexpected error code " + i);
      return TEe(e, a.program, o, c, a, p.Generate_get_and_set_accessors.message);
    }
    var Hle = "inferFromUsage", eEe = [
      p.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,
      p.Variable_0_implicitly_has_an_1_type.code,
      p.Parameter_0_implicitly_has_an_1_type.code,
      p.Rest_parameter_0_implicitly_has_an_any_type.code,
      p.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,
      p._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,
      p.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,
      p.Member_0_implicitly_has_an_1_type.code,
      p.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,
      p.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,
      p.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,
      p.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,
      p.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,
      p._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,
      p.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,
      p.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,
      p.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code
    ];
    ps({
      errorCodes: eEe,
      getCodeActions(e) {
        const { sourceFile: t, program: n, span: { start: i }, errorCode: a, cancellationToken: o, host: c, preferences: _ } = e, u = xi(t, i);
        let d;
        const g = on.ChangeTracker.with(e, (S) => {
          d = tEe(S, t, u, a, n, o, Sb, c, _);
        }), h = d && va(d);
        return !h || g.length === 0 ? void 0 : [Va(Hle, g, [CHe(a, u), uc(h)], Hle, p.Infer_all_types_from_usage)];
      },
      fixIds: [Hle],
      getAllCodeActions(e) {
        const { sourceFile: t, program: n, cancellationToken: i, host: a, preferences: o } = e, c = uE();
        return lo(e, eEe, (_, u) => {
          tEe(_, t, xi(u.file, u.start), u.code, n, i, c, a, o);
        });
      }
    });
    function CHe(e, t) {
      switch (e) {
        case p.Parameter_0_implicitly_has_an_1_type.code:
        case p.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:
          return ef(Kf(t)) ? p.Infer_type_of_0_from_usage : p.Infer_parameter_types_from_usage;
        case p.Rest_parameter_0_implicitly_has_an_any_type.code:
        case p.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:
          return p.Infer_parameter_types_from_usage;
        case p.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:
          return p.Infer_this_type_of_0_from_usage;
        default:
          return p.Infer_type_of_0_from_usage;
      }
    }
    function EHe(e) {
      switch (e) {
        case p.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:
          return p.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;
        case p.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:
          return p.Variable_0_implicitly_has_an_1_type.code;
        case p.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:
          return p.Parameter_0_implicitly_has_an_1_type.code;
        case p.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:
          return p.Rest_parameter_0_implicitly_has_an_any_type.code;
        case p.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:
          return p.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;
        case p._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:
          return p._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;
        case p.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:
          return p.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;
        case p.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:
          return p.Member_0_implicitly_has_an_1_type.code;
      }
      return e;
    }
    function tEe(e, t, n, i, a, o, c, _, u) {
      if (!$4(n.kind) && n.kind !== 80 && n.kind !== 26 && n.kind !== 110) return;
      const { parent: d } = n, g = d2(t, a, u, _);
      switch (i = EHe(i), i) {
        case p.Member_0_implicitly_has_an_1_type.code:
        case p.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:
          if (ci(d) && c(d) || ga(d) || f_(d))
            return rEe(e, g, t, d, a, _, o), g.writeFixes(e), d;
          if (Ln(d)) {
            const T = Qw(WI(d.name, a, o), d, a, _);
            if (T) {
              const k = A.createJSDocTypeTag(void 0, A.createJSDocTypeExpression(T), void 0);
              e.addJSDocTags(t, ns(d.parent.parent, zl), [k]);
            }
            return g.writeFixes(e), d;
          }
          return;
        case p.Variable_0_implicitly_has_an_1_type.code: {
          const T = a.getTypeChecker().getSymbolAtLocation(n);
          return T && T.valueDeclaration && ci(T.valueDeclaration) && c(T.valueDeclaration) ? (rEe(e, g, Sr(T.valueDeclaration), T.valueDeclaration, a, _, o), g.writeFixes(e), T.valueDeclaration) : void 0;
        }
      }
      const h = Kf(n);
      if (h === void 0) return;
      let S;
      switch (i) {
        case p.Parameter_0_implicitly_has_an_1_type.code:
          if (ef(h)) {
            nEe(e, g, t, h, a, _, o), S = h;
            break;
          }
        case p.Rest_parameter_0_implicitly_has_an_any_type.code:
          if (c(h)) {
            const T = ns(d, Fi);
            DHe(e, g, t, T, h, a, _, o), S = T;
          }
          break;
        case p.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:
        case p._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:
          Dp(h) && Fe(h.name) && (HG(e, g, t, h, WI(h.name, a, o), a, _), S = h);
          break;
        case p.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:
          ef(h) && (nEe(e, g, t, h, a, _, o), S = h);
          break;
        case p.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:
          on.isThisTypeAnnotatable(h) && c(h) && (wHe(e, t, h, a, _, o), S = h);
          break;
        default:
          return E.fail(String(i));
      }
      return g.writeFixes(e), S;
    }
    function rEe(e, t, n, i, a, o, c) {
      Fe(i.name) && HG(e, t, n, i, WI(i.name, a, c), a, o);
    }
    function DHe(e, t, n, i, a, o, c, _) {
      if (!Fe(i.name)) return;
      const u = NHe(a, n, o, _);
      if (E.assert(a.parameters.length === u.length, "Parameter count and inference count should match"), rn(a)) iEe(e, n, u, o, c);
      else {
        const d = Bo(a) && !uo(a, 21, n);
        d && e.insertNodeBefore(n, js(a.parameters), A.createToken(21));
        for (const { declaration: g, type: h } of u) g && !g.type && !g.initializer && HG(e, t, n, g, h, o, c);
        d && e.insertNodeAfter(n, ws(a.parameters), A.createToken(22));
      }
    }
    function wHe(e, t, n, i, a, o) {
      const c = aEe(n, t, i, o);
      if (!c || !c.length) return;
      const _ = Qw(Xle(i, c, o).thisParameter(), n, i, a);
      _ && (rn(n) ? PHe(e, t, n, _) : e.tryInsertThisTypeAnnotation(t, n, _));
    }
    function PHe(e, t, n, i) {
      e.addJSDocTags(t, n, [A.createJSDocThisTag(void 0, A.createJSDocTypeExpression(i))]);
    }
    function nEe(e, t, n, i, a, o, c) {
      const _ = ul(i.parameters);
      if (_ && Fe(i.name) && Fe(_.name)) {
        let u = WI(i.name, a, c);
        u === a.getTypeChecker().getAnyType() && (u = WI(_.name, a, c)), rn(i) ? iEe(e, n, [{
          declaration: _,
          type: u
        }], a, o) : HG(e, t, n, _, u, a, o);
      }
    }
    function HG(e, t, n, i, a, o, c) {
      const _ = Qw(a, i, o, c);
      if (_)
        if (rn(n) && i.kind !== 172) {
          const u = ci(i) ? qn(i.parent.parent, $c) : i;
          if (!u) return;
          const d = A.createJSDocTypeExpression(_), g = Dp(i) ? A.createJSDocReturnTag(void 0, d, void 0) : A.createJSDocTypeTag(void 0, d, void 0);
          e.addJSDocTags(n, u, [g]);
        } else AHe(_, i, n, e, t, Ps(o.getCompilerOptions())) || e.tryInsertTypeAnnotation(n, i, _);
    }
    function AHe(e, t, n, i, a, o) {
      const c = m2(e, o);
      return c && i.tryInsertTypeAnnotation(n, t, c.typeNode) ? (bt(c.symbols, (_) => a.addImportFromExportedSymbol(_, !0)), !0) : !1;
    }
    function iEe(e, t, n, i, a) {
      const o = n.length && n[0].declaration.parent;
      if (!o) return;
      const c = Rn(n, (_) => {
        const u = _.declaration;
        if (u.initializer || k0(u) || !Fe(u.name)) return;
        const d = _.type && Qw(_.type, u, i, a);
        if (d)
          return ln(A.cloneNode(u.name), 7168), {
            name: A.cloneNode(u.name),
            param: u,
            isOptional: !!_.isOptional,
            typeNode: d
          };
      });
      if (c.length)
        if (Bo(o) || Lo(o)) {
          const _ = Bo(o) && !uo(o, 21, t);
          _ && e.insertNodeBefore(t, js(o.parameters), A.createToken(21)), bt(c, ({ typeNode: u, param: d }) => {
            const g = A.createJSDocTypeTag(void 0, A.createJSDocTypeExpression(u)), h = A.createJSDocComment(void 0, [g]);
            e.insertNodeAt(t, d.getStart(t), h, { suffix: " " });
          }), _ && e.insertNodeAfter(t, ws(o.parameters), A.createToken(22));
        } else {
          const _ = or(c, ({ name: u, typeNode: d, isOptional: g }) => A.createJSDocParameterTag(void 0, u, !!g, A.createJSDocTypeExpression(d), !1, void 0));
          e.addJSDocTags(t, o, _);
        }
    }
    function $le(e, t, n) {
      return Rn(Jo.getReferenceEntriesForNode(-1, e, t, t.getSourceFiles(), n), (i) => i.kind !== Jo.EntryKind.Span ? qn(i.node, Fe) : void 0);
    }
    function WI(e, t, n) {
      return Xle(t, $le(e, t, n), n).single();
    }
    function NHe(e, t, n, i) {
      const a = aEe(e, t, n, i);
      return a && Xle(n, a, i).parameters(e) || e.parameters.map((o) => ({
        declaration: o,
        type: Fe(o.name) ? WI(o.name, n, i) : n.getTypeChecker().getAnyType()
      }));
    }
    function aEe(e, t, n, i) {
      let a;
      switch (e.kind) {
        case 177:
          a = uo(e, 137, t);
          break;
        case 220:
        case 219:
          const o = e.parent;
          a = (ci(o) || ga(o)) && Fe(o.name) ? o.name : e.name;
          break;
        case 263:
        case 175:
        case 174:
          a = e.name;
          break;
      }
      if (a)
        return $le(a, n, i);
    }
    function Xle(e, t, n) {
      const i = e.getTypeChecker(), a = {
        string: () => i.getStringType(),
        number: () => i.getNumberType(),
        Array: (ge) => i.createArrayType(ge),
        Promise: (ge) => i.createPromiseType(ge)
      }, o = [
        i.getStringType(),
        i.getNumberType(),
        i.createArrayType(i.getAnyType()),
        i.createPromiseType(i.getAnyType())
      ];
      return {
        single: u,
        parameters: d,
        thisParameter: g
      };
      function c() {
        return {
          isNumber: void 0,
          isString: void 0,
          isNumberOrString: void 0,
          candidateTypes: void 0,
          properties: void 0,
          calls: void 0,
          constructs: void 0,
          numberIndex: void 0,
          stringIndex: void 0,
          candidateThisTypes: void 0,
          inferredTypes: void 0
        };
      }
      function _(ge) {
        const Ae = /* @__PURE__ */ new Map();
        for (const ot of ge) ot.properties && ot.properties.forEach((K, ke) => {
          Ae.has(ke) || Ae.set(ke, []), Ae.get(ke).push(K);
        });
        const Ne = /* @__PURE__ */ new Map();
        return Ae.forEach((ot, K) => {
          Ne.set(K, _(ot));
        }), {
          isNumber: ge.some((ot) => ot.isNumber),
          isString: ge.some((ot) => ot.isString),
          isNumberOrString: ge.some((ot) => ot.isNumberOrString),
          candidateTypes: ks(ge, (ot) => ot.candidateTypes),
          properties: Ne,
          calls: ks(ge, (ot) => ot.calls),
          constructs: ks(ge, (ot) => ot.constructs),
          numberIndex: bt(ge, (ot) => ot.numberIndex),
          stringIndex: bt(ge, (ot) => ot.stringIndex),
          candidateThisTypes: ks(ge, (ot) => ot.candidateThisTypes),
          inferredTypes: void 0
        };
      }
      function u() {
        return pe(h(t));
      }
      function d(ge) {
        if (t.length === 0 || !ge.parameters) return;
        const Ae = c();
        for (const ot of t)
          n.throwIfCancellationRequested(), S(ot, Ae);
        const Ne = [...Ae.constructs || [], ...Ae.calls || []];
        return ge.parameters.map((ot, K) => {
          const ke = [], ae = cg(ot);
          let Ce = !1;
          for (const Ie of Ne) if (Ie.argumentTypes.length <= K)
            Ce = rn(ge), ke.push(i.getUndefinedType());
          else if (ae) for (let Xe = K; Xe < Ie.argumentTypes.length; Xe++) ke.push(i.getBaseTypeOfLiteralType(Ie.argumentTypes[Xe]));
          else ke.push(i.getBaseTypeOfLiteralType(Ie.argumentTypes[K]));
          if (Fe(ot.name)) {
            const Ie = h($le(ot.name, e, n));
            ke.push(...ae ? Rn(Ie, i.getElementTypeOfArrayType) : Ie);
          }
          const ue = pe(ke);
          return {
            type: ae ? i.createArrayType(ue) : ue,
            isOptional: Ce && !ae,
            declaration: ot
          };
        });
      }
      function g() {
        const ge = c();
        for (const Ae of t)
          n.throwIfCancellationRequested(), S(Ae, ge);
        return pe(ge.candidateThisTypes || Te);
      }
      function h(ge) {
        const Ae = c();
        for (const Ne of ge)
          n.throwIfCancellationRequested(), S(Ne, Ae);
        return W(Ae);
      }
      function S(ge, Ae) {
        for (; CD(ge); ) ge = ge.parent;
        switch (ge.parent.kind) {
          case 245:
            k(ge, Ae);
            break;
          case 226:
            Ae.isNumber = !0;
            break;
          case 225:
            D(ge.parent, Ae);
            break;
          case 227:
            P(ge, ge.parent, Ae);
            break;
          case 297:
          case 298:
            N(ge.parent, Ae);
            break;
          case 214:
          case 215:
            ge.parent.expression === ge ? M(ge.parent, Ae) : T(ge, Ae);
            break;
          case 212:
            R(ge.parent, Ae);
            break;
          case 213:
            G(ge.parent, ge, Ae);
            break;
          case 304:
          case 305:
            L(ge.parent, Ae);
            break;
          case 173:
            z(ge.parent, Ae);
            break;
          case 261: {
            const { name: Ne, initializer: ot } = ge.parent;
            if (ge === Ne) {
              ot && ce(Ae, i.getTypeAtLocation(ot));
              break;
            }
          }
          default:
            return T(ge, Ae);
        }
      }
      function T(ge, Ae) {
        fg(ge) && ce(Ae, i.getContextualType(ge));
      }
      function k(ge, Ae) {
        ce(Ae, za(ge) ? i.getVoidType() : i.getAnyType());
      }
      function D(ge, Ae) {
        switch (ge.operator) {
          case 46:
          case 47:
          case 41:
          case 55:
            Ae.isNumber = !0;
            break;
          case 40:
            Ae.isNumberOrString = !0;
            break;
        }
      }
      function P(ge, Ae, Ne) {
        switch (Ae.operatorToken.kind) {
          case 43:
          case 42:
          case 44:
          case 45:
          case 48:
          case 49:
          case 50:
          case 51:
          case 52:
          case 53:
          case 66:
          case 68:
          case 67:
          case 69:
          case 70:
          case 74:
          case 75:
          case 79:
          case 71:
          case 73:
          case 72:
          case 41:
          case 30:
          case 33:
          case 32:
          case 34:
            const ot = i.getTypeAtLocation(Ae.left === ge ? Ae.right : Ae.left);
            ot.flags & 98304 ? ce(Ne, ot) : Ne.isNumber = !0;
            break;
          case 65:
          case 40:
            const K = i.getTypeAtLocation(Ae.left === ge ? Ae.right : Ae.left);
            K.flags & 98304 ? ce(Ne, K) : K.flags & 67648 ? Ne.isNumber = !0 : K.flags & 12583968 ? Ne.isString = !0 : K.flags & 1 || (Ne.isNumberOrString = !0);
            break;
          case 64:
          case 35:
          case 37:
          case 38:
          case 36:
          case 77:
          case 78:
          case 76:
            ce(Ne, i.getTypeAtLocation(Ae.left === ge ? Ae.right : Ae.left));
            break;
          case 103:
            ge === Ae.left && (Ne.isString = !0);
            break;
          case 57:
          case 61:
            ge === Ae.left && (ge.parent.parent.kind === 261 || Hl(ge.parent.parent, !0)) && ce(Ne, i.getTypeAtLocation(Ae.right));
            break;
          case 56:
          case 28:
          case 104:
            break;
        }
      }
      function N(ge, Ae) {
        ce(Ae, i.getTypeAtLocation(ge.parent.parent.expression));
      }
      function M(ge, Ae) {
        const Ne = {
          argumentTypes: [],
          return_: c()
        };
        if (ge.arguments) for (const ot of ge.arguments) Ne.argumentTypes.push(i.getTypeAtLocation(ot));
        S(ge, Ne.return_), ge.kind === 214 ? (Ae.calls || (Ae.calls = [])).push(Ne) : (Ae.constructs || (Ae.constructs = [])).push(Ne);
      }
      function R(ge, Ae) {
        const Ne = mc(ge.name.text);
        Ae.properties || (Ae.properties = /* @__PURE__ */ new Map());
        const ot = Ae.properties.get(Ne) || c();
        S(ge, ot), Ae.properties.set(Ne, ot);
      }
      function G(ge, Ae, Ne) {
        if (Ae === ge.argumentExpression) {
          Ne.isNumberOrString = !0;
          return;
        } else {
          const ot = i.getTypeAtLocation(ge.argumentExpression), K = c();
          S(ge, K), ot.flags & 67648 ? Ne.numberIndex = K : Ne.stringIndex = K;
        }
      }
      function L(ge, Ae) {
        const Ne = ci(ge.parent.parent) ? ge.parent.parent : ge.parent;
        oe(Ae, i.getTypeAtLocation(Ne));
      }
      function z(ge, Ae) {
        oe(Ae, i.getTypeAtLocation(ge.parent));
      }
      function H(ge, Ae) {
        const Ne = [];
        for (const ot of ge) for (const { high: K, low: ke } of Ae) K(ot) && (E.assert(!ke(ot), "Priority can't have both low and high"), Ne.push(ke));
        return ge.filter((ot) => Ne.every((K) => !K(ot)));
      }
      function U(ge) {
        return pe(W(ge));
      }
      function pe(ge) {
        if (!ge.length) return i.getAnyType();
        const Ae = i.getUnionType([i.getStringType(), i.getNumberType()]);
        let Ne = H(ge, [
          {
            high: (K) => K === i.getStringType() || K === i.getNumberType(),
            low: (K) => K === Ae
          },
          {
            high: (K) => !(K.flags & 17),
            low: (K) => !!(K.flags & 17)
          },
          {
            high: (K) => !(K.flags & 29) && !(yn(K) & 16),
            low: (K) => !!(yn(K) & 16)
          }
        ]);
        const ot = Ne.filter((K) => yn(K) & 16);
        return ot.length && (Ne = Ne.filter((K) => !(yn(K) & 16)), Ne.push(ie(ot))), i.getWidenedType(i.getUnionType(Ne.map(i.getBaseTypeOfLiteralType), 2));
      }
      function ie(ge) {
        if (ge.length === 1) return ge[0];
        const Ae = [], Ne = [], ot = [], K = [];
        let ke = !1, ae = !1;
        const Ce = Up();
        for (const Xe of ge) {
          for (const Xt of i.getPropertiesOfType(Xe)) Ce.add(Xt.escapedName, Xt.valueDeclaration ? i.getTypeOfSymbolAtLocation(Xt, Xt.valueDeclaration) : i.getAnyType());
          Ae.push(...i.getSignaturesOfType(Xe, 0)), Ne.push(...i.getSignaturesOfType(Xe, 1));
          const Ft = i.getIndexInfoOfType(Xe, 0);
          Ft && (ot.push(Ft.type), ke = ke || Ft.isReadonly);
          const Ut = i.getIndexInfoOfType(Xe, 1);
          Ut && (K.push(Ut.type), ae = ae || Ut.isReadonly);
        }
        const ue = lQ(Ce, (Xe, Ft) => {
          const Ut = Ft.length < ge.length ? 16777216 : 0, Xt = i.createSymbol(4 | Ut, Xe);
          return Xt.links.type = i.getUnionType(Ft), [Xe, Xt];
        }), Ie = [];
        return ot.length && Ie.push(i.createIndexInfo(i.getStringType(), i.getUnionType(ot), ke)), K.length && Ie.push(i.createIndexInfo(i.getNumberType(), i.getUnionType(K), ae)), i.createAnonymousType(ge[0].symbol, ue, Ae, Ne, Ie);
      }
      function W(ge) {
        var Ae, Ne, ot;
        const K = [];
        ge.isNumber && K.push(i.getNumberType()), ge.isString && K.push(i.getStringType()), ge.isNumberOrString && K.push(i.getUnionType([i.getStringType(), i.getNumberType()])), ge.numberIndex && K.push(i.createArrayType(U(ge.numberIndex))), ((Ae = ge.properties) != null && Ae.size || (Ne = ge.constructs) != null && Ne.length || ge.stringIndex) && K.push(Q(ge));
        const ke = (ge.candidateTypes || []).map((Ce) => i.getBaseTypeOfLiteralType(Ce)), ae = (ot = ge.calls) != null && ot.length ? Q(ge) : void 0;
        return ae && ke ? K.push(i.getUnionType([ae, ...ke], 2)) : (ae && K.push(ae), It(ke) && K.push(...ke)), K.push(...se(ge)), K;
      }
      function Q(ge) {
        const Ae = /* @__PURE__ */ new Map();
        ge.properties && ge.properties.forEach((ke, ae) => {
          const Ce = i.createSymbol(4, ae);
          Ce.links.type = U(ke), Ae.set(ae, Ce);
        });
        const Ne = ge.calls ? [Be(ge.calls)] : [], ot = ge.constructs ? [Be(ge.constructs)] : [], K = ge.stringIndex ? [i.createIndexInfo(i.getStringType(), U(ge.stringIndex), !1)] : [];
        return i.createAnonymousType(void 0, Ae, Ne, ot, K);
      }
      function se(ge) {
        if (!ge.properties || !ge.properties.size) return [];
        const Ae = o.filter((Ne) => he(Ne, ge));
        return 0 < Ae.length && Ae.length < 3 ? Ae.map((Ne) => fe(Ne, ge)) : [];
      }
      function he(ge, Ae) {
        return Ae.properties ? !Dl(Ae.properties, (Ne, ot) => {
          const K = i.getTypeOfPropertyOfType(ge, ot);
          return K ? Ne.calls ? !i.getSignaturesOfType(K, 0).length || !i.isTypeAssignableTo(K, Se(Ne.calls)) : !i.isTypeAssignableTo(K, U(Ne)) : !0;
        }) : !1;
      }
      function fe(ge, Ae) {
        if (!(yn(ge) & 4) || !Ae.properties) return ge;
        const Ne = ge.target, ot = Fg(Ne.typeParameters);
        if (!ot) return ge;
        const K = [];
        return Ae.properties.forEach((ke, ae) => {
          const Ce = i.getTypeOfPropertyOfType(Ne, ae);
          E.assert(!!Ce, "generic should have all the properties of its reference."), K.push(...de(Ce, U(ke), ot));
        }), a[ge.symbol.escapedName](pe(K));
      }
      function de(ge, Ae, Ne) {
        if (ge === Ne) return [Ae];
        if (ge.flags & 402653184) return ks(ge.types, (ke) => de(ke, Ae, Ne));
        if (yn(ge) & 4 && yn(Ae) & 4) {
          const ke = i.getTypeArguments(ge), ae = i.getTypeArguments(Ae), Ce = [];
          if (ke && ae)
            for (let ue = 0; ue < ke.length; ue++) ae[ue] && Ce.push(...de(ke[ue], ae[ue], Ne));
          return Ce;
        }
        const ot = i.getSignaturesOfType(ge, 0), K = i.getSignaturesOfType(Ae, 0);
        return ot.length === 1 && K.length === 1 ? $(ot[0], K[0], Ne) : [];
      }
      function $(ge, Ae, Ne) {
        var ot;
        const K = [];
        for (let Ce = 0; Ce < ge.parameters.length; Ce++) {
          const ue = ge.parameters[Ce], Ie = Ae.parameters[Ce], Xe = ge.declaration && cg(ge.declaration.parameters[Ce]);
          if (!Ie) break;
          let Ft = ue.valueDeclaration ? i.getTypeOfSymbolAtLocation(ue, ue.valueDeclaration) : i.getAnyType();
          const Ut = Xe && i.getElementTypeOfArrayType(Ft);
          Ut && (Ft = Ut);
          const Xt = ((ot = qn(Ie, Ug)) == null ? void 0 : ot.links.type) || (Ie.valueDeclaration ? i.getTypeOfSymbolAtLocation(Ie, Ie.valueDeclaration) : i.getAnyType());
          K.push(...de(Ft, Xt, Ne));
        }
        const ke = i.getReturnTypeOfSignature(ge), ae = i.getReturnTypeOfSignature(Ae);
        return K.push(...de(ke, ae, Ne)), K;
      }
      function Se(ge) {
        return i.createAnonymousType(void 0, Ka(), [Be(ge)], Te, Te);
      }
      function Be(ge) {
        const Ae = [], Ne = Math.max(...ge.map((K) => K.argumentTypes.length));
        for (let K = 0; K < Ne; K++) {
          const ke = i.createSymbol(1, mc(`arg${K}`));
          ke.links.type = pe(ge.map((ae) => ae.argumentTypes[K] || i.getUndefinedType())), ge.some((ae) => ae.argumentTypes[K] === void 0) && (ke.flags |= 16777216), Ae.push(ke);
        }
        const ot = U(_(ge.map((K) => K.return_)));
        return i.createSignature(void 0, void 0, void 0, Ae, ot, void 0, Ne, 0);
      }
      function ce(ge, Ae) {
        Ae && !(Ae.flags & 1) && !(Ae.flags & 262144) && (ge.candidateTypes || (ge.candidateTypes = [])).push(Ae);
      }
      function oe(ge, Ae) {
        Ae && !(Ae.flags & 1) && !(Ae.flags & 262144) && (ge.candidateThisTypes || (ge.candidateThisTypes = [])).push(Ae);
      }
    }
    var Qle = "fixReturnTypeInAsyncFunction", sEe = [p.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];
    ps({
      errorCodes: sEe,
      fixIds: [Qle],
      getCodeActions: function(t) {
        const { sourceFile: n, program: i, span: a } = t, o = i.getTypeChecker(), c = oEe(n, i.getTypeChecker(), a.start);
        if (!c) return;
        const { returnTypeNode: _, returnType: u, promisedTypeNode: d, promisedType: g } = c;
        return [Va(Qle, on.ChangeTracker.with(t, (h) => cEe(h, n, _, d)), [
          p.Replace_0_with_Promise_1,
          o.typeToString(u),
          o.typeToString(g)
        ], Qle, p.Fix_all_incorrect_return_type_of_an_async_functions)];
      },
      getAllCodeActions: (e) => lo(e, sEe, (t, n) => {
        const i = oEe(n.file, e.program.getTypeChecker(), n.start);
        i && cEe(t, n.file, i.returnTypeNode, i.promisedTypeNode);
      })
    });
    function oEe(e, t, n) {
      if (rn(e)) return;
      const i = cr(xi(e, n), So), a = i?.type;
      if (!a) return;
      const o = t.getTypeFromTypeNode(a), c = t.getAwaitedType(o) || t.getVoidType(), _ = t.typeToTypeNode(c, a, void 0);
      if (_) return {
        returnTypeNode: a,
        returnType: o,
        promisedTypeNode: _,
        promisedType: c
      };
    }
    function cEe(e, t, n, i) {
      e.replaceNode(t, n, A.createTypeReferenceNode("Promise", [i]));
    }
    var lEe = "disableJsDiagnostics", uEe = "disableJsDiagnostics", _Ee = Rn(Object.keys(p), (e) => {
      const t = p[e];
      return t.category === 1 ? t.code : void 0;
    });
    ps({
      errorCodes: _Ee,
      getCodeActions: function(t) {
        const { sourceFile: n, program: i, span: a, host: o, formatContext: c } = t;
        if (!rn(n) || !jD(n, i.getCompilerOptions())) return;
        const _ = n.checkJsDirective ? "" : Xh(o, c.options), u = [Zd(lEe, [exe(n.fileName, [pI(n.checkJsDirective ? Vc(n.checkJsDirective.pos, n.checkJsDirective.end) : du(0, 0), `// @ts-nocheck${_}`)])], p.Disable_checking_for_this_file)];
        return on.isValidLocationToAddComment(n, a.start) && u.unshift(Va(lEe, on.ChangeTracker.with(t, (d) => fEe(d, n, a.start)), p.Ignore_this_error_message, uEe, p.Add_ts_ignore_to_all_error_messages)), u;
      },
      fixIds: [uEe],
      getAllCodeActions: (e) => {
        const t = /* @__PURE__ */ new Set();
        return lo(e, _Ee, (n, i) => {
          on.isValidLocationToAddComment(i.file, i.start) && fEe(n, i.file, i.start, t);
        });
      }
    });
    function fEe(e, t, n, i) {
      const { line: a } = Za(t, n);
      (!i || b_(i, a)) && e.insertCommentBeforeLine(t, a, n, " @ts-ignore");
    }
    function Yle(e, t, n, i, a, o, c) {
      const _ = e.symbol.members;
      for (const u of t) _.has(u.escapedName) || dEe(u, e, n, i, a, o, c, void 0);
    }
    function SE(e) {
      return {
        trackSymbol: () => !1,
        moduleResolverHost: aq(e.program, e.host)
      };
    }
    var pEe = /* @__PURE__ */ ((e) => (e[e.Method = 1] = "Method", e[e.Property = 2] = "Property", e[e.All = 3] = "All", e))(pEe || {});
    function dEe(e, t, n, i, a, o, c, _, u = 3, d = !1) {
      const g = e.getDeclarations(), h = ul(g), S = i.program.getTypeChecker(), T = Ps(i.program.getCompilerOptions()), k = h?.kind ?? 172, D = he(e, h), P = h ? Pu(h) : 0;
      let N = P & 256;
      N |= P & 1 ? 1 : P & 4 ? 4 : 0, h && R_(h) && (N |= 512);
      const M = pe(), R = S.getWidenedType(S.getTypeOfSymbolAtLocation(e, t)), G = !!(e.flags & 16777216), L = !!(t.flags & 33554432) || d, z = Df(n, a), H = 1 | (z === 0 ? 268435456 : 0);
      switch (k) {
        case 172:
        case 173:
          let fe = S.typeToTypeNode(R, t, H, 8, SE(i));
          if (o) {
            const $ = m2(fe, T);
            $ && (fe = $.typeNode, tT(o, $.symbols));
          }
          c(A.createPropertyDeclaration(M, h ? W(D) : e.getName(), G && u & 2 ? A.createToken(58) : void 0, fe, void 0));
          break;
        case 178:
        case 179: {
          E.assertIsDefined(g);
          let $ = S.typeToTypeNode(R, t, H, void 0, SE(i));
          const Se = Bb(g, h), Be = Se.secondAccessor ? [Se.firstAccessor, Se.secondAccessor] : [Se.firstAccessor];
          if (o) {
            const ce = m2($, T);
            ce && ($ = ce.typeNode, tT(o, ce.symbols));
          }
          for (const ce of Be) if (Dp(ce)) c(A.createGetAccessorDeclaration(M, W(D), Te, se($), Q(_, z, L)));
          else {
            E.assertNode(ce, ef, "The counterpart to a getter should be a setter");
            const oe = xD(ce), ge = oe && Fe(oe.name) ? On(oe.name) : void 0;
            c(A.createSetAccessorDeclaration(M, W(D), eue(1, [ge], [se($)], 1, !1), Q(_, z, L)));
          }
          break;
        }
        case 174:
        case 175:
          E.assertIsDefined(g);
          const de = R.isUnion() ? ks(R.types, ($) => $.getCallSignatures()) : R.getCallSignatures();
          if (!_t(de)) break;
          if (g.length === 1) {
            E.assert(de.length === 1, "One declaration implies one signature");
            const $ = de[0];
            U(z, $, M, W(D), Q(_, z, L));
            break;
          }
          for (const $ of de)
            $.declaration && $.declaration.flags & 33554432 || U(z, $, M, W(D));
          L || (g.length > de.length ? U(z, S.getSignatureFromDeclaration(g[g.length - 1]), M, W(D), Q(_, z)) : (E.assert(g.length === de.length, "Declarations and signatures should match count"), c(MHe(S, i, t, de, W(D), G && !!(u & 1), M, z, _))));
          break;
      }
      function U(fe, de, $, Se, Be) {
        const ce = $G(175, i, fe, de, Be, Se, $, G && !!(u & 1), t, o);
        ce && c(ce);
      }
      function pe() {
        let fe;
        return N && (fe = lx(fe, A.createModifiersFromModifierFlags(N))), ie() && (fe = kr(fe, A.createToken(164))), fe && A.createNodeArray(fe);
      }
      function ie() {
        return !!(i.program.getCompilerOptions().noImplicitOverride && h && Jb(h));
      }
      function W(fe) {
        return Fe(fe) && fe.escapedText === "constructor" ? A.createComputedPropertyName(A.createStringLiteral(On(fe), z === 0)) : no(fe, !1);
      }
      function Q(fe, de, $) {
        return $ ? void 0 : no(fe, !1) || tue(de);
      }
      function se(fe) {
        return no(fe, !1);
      }
      function he(fe, de) {
        if (gc(fe) & 262144) {
          const $ = fe.links.nameType;
          if ($ && Cp($)) return A.createIdentifier(Ti(Ep($)));
        }
        return no(va(de), !1);
      }
    }
    function $G(e, t, n, i, a, o, c, _, u, d) {
      const g = t.program, h = g.getTypeChecker(), S = Ps(g.getCompilerOptions()), T = rn(u), k = 524545 | (n === 0 ? 268435456 : 0), D = h.signatureToSignatureDeclaration(i, e, u, k, 8, SE(t));
      if (!D) return;
      let P = T ? void 0 : D.typeParameters, N = D.parameters, M = T ? void 0 : no(D.type);
      if (d) {
        if (P) {
          const z = el(P, (H) => {
            let U = H.constraint, pe = H.default;
            if (U) {
              const ie = m2(U, S);
              ie && (U = ie.typeNode, tT(d, ie.symbols));
            }
            if (pe) {
              const ie = m2(pe, S);
              ie && (pe = ie.typeNode, tT(d, ie.symbols));
            }
            return A.updateTypeParameterDeclaration(H, H.modifiers, H.name, U, pe);
          });
          P !== z && (P = pt(A.createNodeArray(z, P.hasTrailingComma), P));
        }
        const L = el(N, (z) => {
          let H = T ? void 0 : z.type;
          if (H) {
            const U = m2(H, S);
            U && (H = U.typeNode, tT(d, U.symbols));
          }
          return A.updateParameterDeclaration(z, z.modifiers, z.dotDotDotToken, z.name, T ? void 0 : z.questionToken, H, z.initializer);
        });
        if (N !== L && (N = pt(A.createNodeArray(L, N.hasTrailingComma), N)), M) {
          const z = m2(M, S);
          z && (M = z.typeNode, tT(d, z.symbols));
        }
      }
      const R = _ ? A.createToken(58) : void 0, G = D.asteriskToken;
      if (Lo(D)) return A.updateFunctionExpression(D, c, D.asteriskToken, qn(o, Fe), P, N, M, a ?? D.body);
      if (Bo(D)) return A.updateArrowFunction(D, c, P, N, M, D.equalsGreaterThanToken, a ?? D.body);
      if (hc(D)) return A.updateMethodDeclaration(D, c, G, o ?? A.createIdentifier(""), R, P, N, M, a);
      if (Xc(D)) return A.updateFunctionDeclaration(D, c, D.asteriskToken, qn(o, Fe), P, N, M, a ?? D.body);
    }
    function Zle(e, t, n, i, a, o, c) {
      const _ = Df(t.sourceFile, t.preferences), u = Ps(t.program.getCompilerOptions()), d = SE(t), g = t.program.getTypeChecker(), h = rn(c), { typeArguments: S, arguments: T, parent: k } = i, D = h ? void 0 : g.getContextualType(i), P = or(T, (U) => Fe(U) ? U.text : Ln(U) && Fe(U.name) ? U.name.text : void 0), { argumentTypeNodes: N, argumentTypeParameters: M } = FHe(g, n, h ? [] : or(T, (U) => g.getTypeAtLocation(U)), c, u, 1, 8, d), R = o ? A.createNodeArray(A.createModifiersFromModifierFlags(o)) : void 0, G = sN(k) ? A.createToken(42) : void 0, L = h ? void 0 : IHe(g, M, S), z = eue(T.length, P, N, void 0, h), H = h || D === void 0 ? void 0 : g.typeToTypeNode(D, c, void 0, void 0, d);
      switch (e) {
        case 175:
          return A.createMethodDeclaration(R, G, a, void 0, L, z, H, tue(_));
        case 174:
          return A.createMethodSignature(R, a, void 0, L, z, H === void 0 ? A.createKeywordTypeNode(159) : H);
        case 263:
          return E.assert(typeof a == "string" || Fe(a), "Unexpected name"), A.createFunctionDeclaration(R, G, a, L, z, H, qL(p.Function_not_implemented.message, _));
        default:
          E.fail("Unexpected kind");
      }
    }
    function IHe(e, t, n) {
      const i = new Set(t.map((o) => o[0])), a = new Map(t);
      if (n) {
        const o = n.filter((_) => !t.some((u) => {
          var d;
          return e.getTypeAtLocation(_) === ((d = u[1]) == null ? void 0 : d.argumentType);
        })), c = i.size + o.length;
        for (let _ = 0; i.size < c; _ += 1) i.add(mEe(_));
      }
      return ma(i.values(), (o) => {
        var c;
        return A.createTypeParameterDeclaration(void 0, o, (c = a.get(o)) == null ? void 0 : c.constraint);
      });
    }
    function mEe(e) {
      return 84 + e <= 90 ? String.fromCharCode(84 + e) : `T${e}`;
    }
    function XG(e, t, n, i, a, o, c, _) {
      const u = e.typeToTypeNode(n, i, o, c, _);
      if (u)
        return Kle(u, t, a);
    }
    function Kle(e, t, n) {
      const i = m2(e, n);
      return i && (tT(t, i.symbols), e = i.typeNode), no(e);
    }
    function OHe(e, t) {
      var n;
      E.assert(t.typeArguments);
      const i = t.typeArguments, a = t.target;
      for (let o = 0; o < i.length; o++) {
        if (((n = a.localTypeParameters) == null ? void 0 : n[o].constraint) === void 0) continue;
        const c = i.slice(0, o);
        if (e.fillMissingTypeArguments(c, a.typeParameters, o, !1).every((_, u) => _ === i[u])) return o;
      }
      return i.length;
    }
    function gEe(e, t, n, i, a, o) {
      let c = e.typeToTypeNode(t, n, i, a, o);
      if (c) {
        if (xf(c)) {
          const _ = t;
          if (_.typeArguments && c.typeArguments) {
            const u = OHe(e, _);
            if (u < c.typeArguments.length) {
              const d = A.createNodeArray(c.typeArguments.slice(0, u));
              c = A.updateTypeReferenceNode(c, c.typeName, d);
            }
          }
        }
        return c;
      }
    }
    function hEe(e, t, n, i, a, o, c, _) {
      let u = e.typePredicateToTypePredicateNode(n, i, o, c, _);
      if (u?.type && Am(u.type)) {
        const d = m2(u.type, a);
        d && (tT(t, d.symbols), u = A.updateTypePredicateNode(u, u.assertsModifier, u.parameterName, d.typeNode));
      }
      return no(u);
    }
    function yEe(e) {
      return e.isUnionOrIntersection() ? e.types.some(yEe) : e.flags & 524288;
    }
    function FHe(e, t, n, i, a, o, c, _) {
      const u = [], d = /* @__PURE__ */ new Map();
      for (let g = 0; g < n.length; g += 1) {
        const h = n[g];
        if (h.isUnionOrIntersection() && h.types.some(yEe)) {
          const D = mEe(g);
          u.push(A.createTypeReferenceNode(D)), d.set(D, void 0);
          continue;
        }
        const S = XG(e, t, e.getBaseTypeOfLiteralType(h), i, a, o, c, _);
        if (!S) continue;
        u.push(S);
        const T = vEe(h), k = h.isTypeParameter() && h.constraint && !LHe(h.constraint) ? XG(e, t, h.constraint, i, a, o, c, _) : void 0;
        T && d.set(T, {
          argumentType: h,
          constraint: k
        });
      }
      return {
        argumentTypeNodes: u,
        argumentTypeParameters: ma(d.entries())
      };
    }
    function LHe(e) {
      return e.flags & 1048576 && e.objectFlags === 16;
    }
    function vEe(e) {
      var t;
      if (e.flags & 402653184) for (const n of e.types) {
        const i = vEe(n);
        if (i) return i;
      }
      return e.flags & 524288 ? (t = e.getSymbol()) == null ? void 0 : t.getName() : void 0;
    }
    function eue(e, t, n, i, a) {
      const o = [], c = /* @__PURE__ */ new Map();
      for (let _ = 0; _ < e; _++) {
        const u = t?.[_] || `arg${_}`, d = c.get(u);
        c.set(u, (d || 0) + 1);
        const g = A.createParameterDeclaration(void 0, void 0, u + (d || ""), i !== void 0 && _ >= i ? A.createToken(58) : void 0, a ? void 0 : n?.[_] || A.createKeywordTypeNode(159), void 0);
        o.push(g);
      }
      return o;
    }
    function MHe(e, t, n, i, a, o, c, _, u) {
      let d = i[0], g = i[0].minArgumentCount, h = !1;
      for (const D of i)
        g = Math.min(D.minArgumentCount, g), Qu(D) && (h = !0), D.parameters.length >= d.parameters.length && (!Qu(D) || Qu(d)) && (d = D);
      const S = d.parameters.length - (Qu(d) ? 1 : 0), T = d.parameters.map((D) => D.name), k = eue(S, T, void 0, g, !1);
      if (h) {
        const D = A.createParameterDeclaration(void 0, A.createToken(26), T[S] || "rest", S >= g ? A.createToken(58) : void 0, A.createArrayTypeNode(A.createKeywordTypeNode(159)), void 0);
        k.push(D);
      }
      return jHe(c, a, o, void 0, k, RHe(i, e, t, n), _, u);
    }
    function RHe(e, t, n, i) {
      if (It(e)) {
        const a = t.getUnionType(or(e, t.getReturnTypeOfSignature));
        return t.typeToTypeNode(a, i, 1, 8, SE(n));
      }
    }
    function jHe(e, t, n, i, a, o, c, _) {
      return A.createMethodDeclaration(e, void 0, t, n ? A.createToken(58) : void 0, i, a, o, _ || tue(c));
    }
    function tue(e) {
      return qL(p.Method_not_implemented.message, e);
    }
    function qL(e, t) {
      return A.createBlock([A.createThrowStatement(A.createNewExpression(A.createIdentifier("Error"), void 0, [A.createStringLiteral(e, t === 0)]))], !0);
    }
    function rue(e, t, n) {
      const i = iD(t);
      if (!i) return;
      const a = bEe(i, "compilerOptions");
      if (a === void 0) {
        e.insertNodeAtObjectStart(t, i, iue("compilerOptions", A.createObjectLiteralExpression(n.map(([c, _]) => iue(c, _)), !0)));
        return;
      }
      const o = a.initializer;
      if (bs(o))
        for (const [c, _] of n) {
          const u = bEe(o, c);
          u === void 0 ? e.insertNodeAtObjectStart(t, o, iue(c, _)) : e.replaceNode(t, u.initializer, _);
        }
    }
    function nue(e, t, n, i) {
      rue(e, t, [[n, i]]);
    }
    function iue(e, t) {
      return A.createPropertyAssignment(A.createStringLiteral(e), t);
    }
    function bEe(e, t) {
      return xr(e.properties, (n) => ol(n) && !!n.name && Ts(n.name) && n.name.text === t);
    }
    function m2(e, t) {
      let n;
      const i = Ze(e, a, ui);
      if (n && i) return {
        typeNode: i,
        symbols: n
      };
      function a(o) {
        if (Bh(o) && o.qualifier) {
          const c = x_(o.qualifier);
          if (!c.symbol) return Tr(o, a, void 0);
          const _ = mL(c.symbol, t), u = _ !== c.text ? SEe(o.qualifier, A.createIdentifier(_)) : o.qualifier;
          n = kr(n, c.symbol);
          const d = Fr(o.typeArguments, a, ui);
          return A.createTypeReferenceNode(u, d);
        }
        return Tr(o, a, void 0);
      }
    }
    function SEe(e, t) {
      return e.kind === 80 ? t : A.createQualifiedName(SEe(e.left, t), e.right);
    }
    function tT(e, t) {
      t.forEach((n) => e.addImportFromExportedSymbol(n, !0));
    }
    function aue(e, t) {
      const n = dc(t);
      let i = xi(e, t.start);
      for (; i.end < n; ) i = i.parent;
      return i;
    }
    function TEe(e, t, n, i, a, o) {
      const c = CEe(e, t, n, i);
      if (!c || jk.isRefactorErrorInfo(c)) return;
      const _ = on.ChangeTracker.fromContext(a), { isStatic: u, isReadonly: d, fieldName: g, accessorName: h, originalName: S, type: T, container: k, declaration: D } = c;
      Tf(g), Tf(h), Tf(D), Tf(k);
      let P, N;
      if (Zn(k)) {
        const R = Pu(D);
        if (T_(e)) {
          const G = A.createModifiersFromModifierFlags(R);
          P = G, N = G;
        } else
          P = A.createModifiersFromModifierFlags(zHe(R)), N = A.createModifiersFromModifierFlags(WHe(R));
        e2(D) && (N = zi(My(D), N));
      }
      HHe(_, e, D, T, g, N);
      const M = UHe(g, h, T, P, u, k);
      if (Tf(M), EEe(_, e, M, D, k), d) {
        const R = Xg(k);
        R && $He(_, e, R, g.text, S);
      } else {
        const R = VHe(g, h, T, P, u, k);
        Tf(R), EEe(_, e, R, D, k);
      }
      return _.getChanges();
    }
    function BHe(e) {
      return Fe(e) || Ts(e);
    }
    function JHe(e) {
      return df(e, e.parent) || ga(e) || ol(e);
    }
    function xEe(e, t) {
      return Fe(t) ? A.createIdentifier(e) : A.createStringLiteral(e);
    }
    function kEe(e, t, n) {
      const i = t ? n.name : A.createThis();
      return Fe(e) ? A.createPropertyAccessExpression(i, e) : A.createElementAccessExpression(i, A.createStringLiteralFromNode(e));
    }
    function zHe(e) {
      return e &= -9, e &= -3, e & 4 || (e |= 1), e;
    }
    function WHe(e) {
      return e &= -2, e &= -5, e |= 2, e;
    }
    function CEe(e, t, n, i, a = !0) {
      const o = xi(e, n), c = n === i && a, _ = cr(o.parent, JHe), u = 271;
      if (!_ || !(U9(_.name, e, n, i) || c)) return { error: Oa(p.Could_not_find_property_for_which_to_generate_accessor) };
      if (!BHe(_.name)) return { error: Oa(p.Name_is_not_valid) };
      if ((Pu(_) & 98303 | u) !== u) return { error: Oa(p.Can_only_convert_property_with_modifier) };
      const d = _.name.text, g = Aq(d), h = xEe(g ? d : eT(`_${d}`, e), _.name), S = xEe(g ? eT(d.substring(1), e) : d, _.name);
      return {
        isStatic: vl(_),
        isReadonly: ES(_),
        type: XHe(_, t),
        container: _.kind === 170 ? _.parent.parent : _.parent,
        originalName: _.name.text,
        declaration: _,
        fieldName: h,
        accessorName: S,
        renameAccessor: g
      };
    }
    function UHe(e, t, n, i, a, o) {
      return A.createGetAccessorDeclaration(i, t, [], n, A.createBlock([A.createReturnStatement(kEe(e, a, o))], !0));
    }
    function VHe(e, t, n, i, a, o) {
      return A.createSetAccessorDeclaration(i, t, [A.createParameterDeclaration(void 0, void 0, A.createIdentifier("value"), void 0, n)], A.createBlock([A.createExpressionStatement(A.createAssignment(kEe(e, a, o), A.createIdentifier("value")))], !0));
    }
    function qHe(e, t, n, i, a, o) {
      const c = A.updatePropertyDeclaration(n, o, a, n.questionToken || n.exclamationToken, i, n.initializer);
      e.replaceNode(t, n, c);
    }
    function GHe(e, t, n, i) {
      let a = A.updatePropertyAssignment(n, i, n.initializer);
      (a.modifiers || a.questionToken || a.exclamationToken) && (a === n && (a = A.cloneNode(a)), a.modifiers = void 0, a.questionToken = void 0, a.exclamationToken = void 0), e.replacePropertyAssignment(t, n, a);
    }
    function HHe(e, t, n, i, a, o) {
      ga(n) ? qHe(e, t, n, i, a, o) : ol(n) ? GHe(e, t, n, a) : e.replaceNode(t, n, A.updateParameterDeclaration(n, o, n.dotDotDotToken, ns(a, Fe), n.questionToken, n.type, n.initializer));
    }
    function EEe(e, t, n, i, a) {
      df(i, i.parent) ? e.insertMemberAtStart(t, a, n) : ol(i) ? e.insertNodeAfterComma(t, i, n) : e.insertNodeAfter(t, i, n);
    }
    function $He(e, t, n, i, a) {
      n.body && n.body.forEachChild(function o(c) {
        Po(c) && c.expression.kind === 110 && Ts(c.argumentExpression) && c.argumentExpression.text === a && qx(c) && e.replaceNode(t, c.argumentExpression, A.createStringLiteral(i)), Ln(c) && c.expression.kind === 110 && c.name.text === a && qx(c) && e.replaceNode(t, c.name, A.createIdentifier(i)), !Ra(c) && !Zn(c) && c.forEachChild(o);
      });
    }
    function XHe(e, t) {
      const n = nee(e);
      if (ga(e) && n && e.questionToken) {
        const i = t.getTypeChecker(), a = i.getTypeFromTypeNode(n);
        if (!i.isTypeAssignableTo(i.getUndefinedType(), a)) {
          const o = j0(n) ? n.types : [n];
          return A.createUnionTypeNode([...o, A.createKeywordTypeNode(157)]);
        }
      }
      return n;
    }
    var DEe = "invalidImportSyntax";
    function QHe(e, t) {
      const n = Sr(t), i = u6(t), a = e.program.getCompilerOptions(), o = [];
      return o.push(wEe(e, n, t, y1(i.name, void 0, t.moduleSpecifier, Df(n, e.preferences)))), u_(a) === 1 && o.push(wEe(e, n, t, A.createImportEqualsDeclaration(void 0, !1, i.name, A.createExternalModuleReference(t.moduleSpecifier)))), o;
    }
    function wEe(e, t, n, i) {
      const a = on.ChangeTracker.with(e, (o) => o.replaceNode(t, n, i));
      return Zd(DEe, a, [p.Replace_import_with_0, a[0].textChanges[0].newText]);
    }
    ps({
      errorCodes: [p.This_expression_is_not_callable.code, p.This_expression_is_not_constructable.code],
      getCodeActions: YHe
    });
    function YHe(e) {
      const t = e.sourceFile, n = p.This_expression_is_not_callable.code === e.errorCode ? 214 : 215, i = cr(xi(t, e.span.start), (o) => o.kind === n);
      if (!i) return [];
      const a = i.expression;
      return PEe(e, a);
    }
    ps({
      errorCodes: [
        p.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,
        p.Type_0_does_not_satisfy_the_constraint_1.code,
        p.Type_0_is_not_assignable_to_type_1.code,
        p.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,
        p.Type_predicate_0_is_not_assignable_to_1.code,
        p.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,
        p._0_index_type_1_is_not_assignable_to_2_index_type_3.code,
        p.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,
        p.Property_0_in_type_1_is_not_assignable_to_type_2.code,
        p.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,
        p.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code
      ],
      getCodeActions: ZHe
    });
    function ZHe(e) {
      const t = e.sourceFile, n = cr(xi(t, e.span.start), (i) => i.getStart() === e.span.start && i.getEnd() === e.span.start + e.span.length);
      return n ? PEe(e, n) : [];
    }
    function PEe(e, t) {
      const n = e.program.getTypeChecker().getTypeAtLocation(t);
      if (!(n.symbol && Ug(n.symbol) && n.symbol.links.originatingImport)) return [];
      const i = [], a = n.symbol.links.originatingImport;
      if (B_(a) || Mn(i, QHe(e, a)), dt(t) && !(Bl(t.parent) && t.parent.name === t)) {
        const o = e.sourceFile, c = on.ChangeTracker.with(e, (_) => _.replaceNode(o, t, A.createPropertyAccessExpression(t, "default"), {}));
        i.push(Zd(DEe, c, p.Use_synthetic_default_member));
      }
      return i;
    }
    var sue = "strictClassInitialization", oue = "addMissingPropertyDefiniteAssignmentAssertions", cue = "addMissingPropertyUndefinedType", lue = "addMissingPropertyInitializer", AEe = [p.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];
    ps({
      errorCodes: AEe,
      getCodeActions: function(t) {
        const n = NEe(t.sourceFile, t.span.start);
        if (!n) return;
        const i = [];
        return kr(i, e$e(t, n)), kr(i, KHe(t, n)), kr(i, t$e(t, n)), i;
      },
      fixIds: [
        oue,
        cue,
        lue
      ],
      getAllCodeActions: (e) => lo(e, AEe, (t, n) => {
        const i = NEe(n.file, n.start);
        if (i)
          switch (e.fixId) {
            case oue:
              IEe(t, n.file, i.prop);
              break;
            case cue:
              OEe(t, n.file, i);
              break;
            case lue:
              const a = LEe(e.program.getTypeChecker(), i.prop);
              if (!a) return;
              FEe(t, n.file, i.prop, a);
              break;
            default:
              E.fail(JSON.stringify(e.fixId));
          }
      })
    });
    function NEe(e, t) {
      const n = xi(e, t);
      if (Fe(n) && ga(n.parent)) {
        const i = _l(n.parent);
        if (i) return {
          type: i,
          prop: n.parent,
          isJs: rn(n.parent)
        };
      }
    }
    function KHe(e, t) {
      if (!t.isJs)
        return Va(sue, on.ChangeTracker.with(e, (n) => IEe(n, e.sourceFile, t.prop)), [p.Add_definite_assignment_assertion_to_property_0, t.prop.getText()], oue, p.Add_definite_assignment_assertions_to_all_uninitialized_properties);
    }
    function IEe(e, t, n) {
      Tf(n);
      const i = A.updatePropertyDeclaration(n, n.modifiers, n.name, A.createToken(54), n.type, n.initializer);
      e.replaceNode(t, n, i);
    }
    function e$e(e, t) {
      return Va(sue, on.ChangeTracker.with(e, (n) => OEe(n, e.sourceFile, t)), [p.Add_undefined_type_to_property_0, t.prop.name.getText()], cue, p.Add_undefined_type_to_all_uninitialized_properties);
    }
    function OEe(e, t, n) {
      const i = A.createKeywordTypeNode(157), a = j0(n.type) ? n.type.types.concat(i) : [n.type, i], o = A.createUnionTypeNode(a);
      n.isJs ? e.addJSDocTags(t, n.prop, [A.createJSDocTypeTag(void 0, A.createJSDocTypeExpression(o))]) : e.replaceNode(t, n.type, o);
    }
    function t$e(e, t) {
      if (t.isJs) return;
      const n = LEe(e.program.getTypeChecker(), t.prop);
      if (n)
        return Va(sue, on.ChangeTracker.with(e, (i) => FEe(i, e.sourceFile, t.prop, n)), [p.Add_initializer_to_property_0, t.prop.name.getText()], lue, p.Add_initializers_to_all_uninitialized_properties);
    }
    function FEe(e, t, n, i) {
      Tf(n);
      const a = A.updatePropertyDeclaration(n, n.modifiers, n.name, n.questionToken, n.type, i);
      e.replaceNode(t, n, a);
    }
    function LEe(e, t) {
      return MEe(e, e.getTypeFromTypeNode(t.type));
    }
    function MEe(e, t) {
      if (t.flags & 8192) return t === e.getFalseType() || t === e.getFalseType(!0) ? A.createFalse() : A.createTrue();
      if (t.isStringLiteral()) return A.createStringLiteral(t.value);
      if (t.isNumberLiteral()) return A.createNumericLiteral(t.value);
      if (t.flags & 4096) return A.createBigIntLiteral(t.value);
      if (t.isUnion()) return Hn(t.types, (n) => MEe(e, n));
      if (t.isClass()) {
        const n = I0(t.symbol);
        if (!n || Qn(n, 64)) return;
        const i = Xg(n);
        return i && i.parameters.length ? void 0 : A.createNewExpression(A.createIdentifier(t.symbol.name), void 0, void 0);
      } else if (e.isArrayLikeType(t)) return A.createArrayLiteralExpression();
    }
    var uue = "requireInTs", REe = [p.require_call_may_be_converted_to_an_import.code];
    ps({
      errorCodes: REe,
      getCodeActions(e) {
        const t = BEe(e.sourceFile, e.program, e.span.start, e.preferences);
        if (t)
          return [Va(uue, on.ChangeTracker.with(e, (n) => jEe(n, e.sourceFile, t)), p.Convert_require_to_import, uue, p.Convert_all_require_to_import)];
      },
      fixIds: [uue],
      getAllCodeActions: (e) => lo(e, REe, (t, n) => {
        const i = BEe(n.file, e.program, n.start, e.preferences);
        i && jEe(t, e.sourceFile, i);
      })
    });
    function jEe(e, t, n) {
      const { allowSyntheticDefaults: i, defaultImportName: a, namedImports: o, statement: c, moduleSpecifier: _ } = n;
      e.replaceNode(t, c, a && !i ? A.createImportEqualsDeclaration(void 0, !1, a, A.createExternalModuleReference(_)) : A.createImportDeclaration(void 0, A.createImportClause(void 0, a, o), _, void 0));
    }
    function BEe(e, t, n, i) {
      const { parent: a } = xi(e, n);
      J_(a, !0) || E.failBadSyntaxKind(a);
      const o = ns(a.parent, ci), c = Df(e, i), _ = qn(o.name, Fe), u = rp(o.name) ? r$e(o.name) : void 0;
      if (_ || u) {
        const d = js(a.arguments);
        return {
          allowSyntheticDefaults: Yx(t.getCompilerOptions()),
          defaultImportName: _,
          namedImports: u,
          statement: ns(o.parent.parent, $c),
          moduleSpecifier: IS(d) ? A.createStringLiteral(d.text, c === 0) : d
        };
      }
    }
    function r$e(e) {
      const t = [];
      for (const n of e.elements) {
        if (!Fe(n.name) || n.initializer) return;
        t.push(A.createImportSpecifier(!1, qn(n.propertyName, Fe), n.name));
      }
      if (t.length) return A.createNamedImports(t);
    }
    var _ue = "useDefaultImport", JEe = [p.Import_may_be_converted_to_a_default_import.code];
    ps({
      errorCodes: JEe,
      getCodeActions(e) {
        const { sourceFile: t, span: { start: n } } = e, i = zEe(t, n);
        if (i)
          return [Va(_ue, on.ChangeTracker.with(e, (a) => WEe(a, t, i, e.preferences)), p.Convert_to_default_import, _ue, p.Convert_all_to_default_imports)];
      },
      fixIds: [_ue],
      getAllCodeActions: (e) => lo(e, JEe, (t, n) => {
        const i = zEe(n.file, n.start);
        i && WEe(t, n.file, i, e.preferences);
      })
    });
    function zEe(e, t) {
      const n = xi(e, t);
      if (!Fe(n)) return;
      const { parent: i } = n;
      if (bl(i) && qh(i.moduleReference)) return {
        importNode: i,
        name: n,
        moduleSpecifier: i.moduleReference.expression
      };
      if (nh(i) && ic(i.parent.parent)) {
        const a = i.parent.parent;
        return {
          importNode: a,
          name: n,
          moduleSpecifier: a.moduleSpecifier
        };
      }
    }
    function WEe(e, t, n, i) {
      e.replaceNode(t, n.importNode, y1(n.name, void 0, n.moduleSpecifier, Df(t, i)));
    }
    var fue = "useBigintLiteral", UEe = [p.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];
    ps({
      errorCodes: UEe,
      getCodeActions: function(t) {
        const n = on.ChangeTracker.with(t, (i) => VEe(i, t.sourceFile, t.span));
        if (n.length > 0) return [Va(fue, n, p.Convert_to_a_bigint_numeric_literal, fue, p.Convert_all_to_bigint_numeric_literals)];
      },
      fixIds: [fue],
      getAllCodeActions: (e) => lo(e, UEe, (t, n) => VEe(t, n.file, n))
    });
    function VEe(e, t, n) {
      const i = qn(xi(t, n.start), V_);
      if (!i) return;
      const a = i.getText(t) + "n";
      e.replaceNode(t, i, A.createBigIntLiteral(a));
    }
    var pue = "fixAddModuleReferTypeMissingTypeof", qEe = [p.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];
    ps({
      errorCodes: qEe,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = GEe(n, i.start);
        return [Va(pue, on.ChangeTracker.with(t, (o) => HEe(o, n, a)), p.Add_missing_typeof, pue, p.Add_missing_typeof)];
      },
      fixIds: [pue],
      getAllCodeActions: (e) => lo(e, qEe, (t, n) => HEe(t, e.sourceFile, GEe(n.file, n.start)))
    });
    function GEe(e, t) {
      const n = xi(e, t);
      return E.assert(n.kind === 102, "This token should be an ImportKeyword"), E.assert(n.parent.kind === 206, "Token parent should be an ImportType"), n.parent;
    }
    function HEe(e, t, n) {
      const i = A.updateImportTypeNode(n, n.argument, n.attributes, n.qualifier, n.typeArguments, !0);
      e.replaceNode(t, n, i);
    }
    var due = "wrapJsxInFragment", $Ee = [p.JSX_expressions_must_have_one_parent_element.code];
    ps({
      errorCodes: $Ee,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = XEe(n, i.start);
        if (a)
          return [Va(due, on.ChangeTracker.with(t, (o) => QEe(o, n, a)), p.Wrap_in_JSX_fragment, due, p.Wrap_all_unparented_JSX_in_JSX_fragment)];
      },
      fixIds: [due],
      getAllCodeActions: (e) => lo(e, $Ee, (t, n) => {
        const i = XEe(e.sourceFile, n.start);
        i && QEe(t, e.sourceFile, i);
      })
    });
    function XEe(e, t) {
      let n = xi(e, t).parent.parent;
      if (!(!un(n) && (n = n.parent, !un(n))) && Nc(n.operatorToken))
        return n;
    }
    function QEe(e, t, n) {
      const i = n$e(n);
      i && e.replaceNode(t, n, A.createJsxFragment(A.createJsxOpeningFragment(), i, A.createJsxJsxClosingFragment()));
    }
    function n$e(e) {
      const t = [];
      let n = e;
      for (; ; ) if (un(n) && Nc(n.operatorToken) && n.operatorToken.kind === 28) {
        if (t.push(n.left), j3(n.right))
          return t.push(n.right), t;
        if (un(n.right)) {
          n = n.right;
          continue;
        } else return;
      } else return;
    }
    var mue = "wrapDecoratorInParentheses", YEe = [p.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];
    ps({
      errorCodes: YEe,
      getCodeActions: function(t) {
        return [Va(mue, on.ChangeTracker.with(t, (n) => ZEe(n, t.sourceFile, t.span.start)), p.Wrap_in_parentheses, mue, p.Wrap_all_invalid_decorator_expressions_in_parentheses)];
      },
      fixIds: [mue],
      getAllCodeActions: (e) => lo(e, YEe, (t, n) => ZEe(t, n.file, n.start))
    });
    function ZEe(e, t, n) {
      const i = cr(xi(t, n), pl);
      E.assert(!!i, "Expected position to be owned by a decorator.");
      const a = A.createParenthesizedExpression(i.expression);
      e.replaceNode(t, i.expression, a);
    }
    var gue = "fixConvertToMappedObjectType", KEe = [p.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];
    ps({
      errorCodes: KEe,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i } = t, a = e4e(n, i.start);
        if (!a) return;
        const o = on.ChangeTracker.with(t, (_) => t4e(_, n, a)), c = On(a.container.name);
        return [Va(gue, o, [p.Convert_0_to_mapped_object_type, c], gue, [p.Convert_0_to_mapped_object_type, c])];
      },
      fixIds: [gue],
      getAllCodeActions: (e) => lo(e, KEe, (t, n) => {
        const i = e4e(n.file, n.start);
        i && t4e(t, n.file, i);
      })
    });
    function e4e(e, t) {
      const n = qn(xi(e, t).parent.parent, s1);
      if (!n) return;
      const i = au(n.parent) ? n.parent : qn(n.parent.parent, Kp);
      if (i)
        return {
          indexSignature: n,
          container: i
        };
    }
    function i$e(e, t) {
      return A.createTypeAliasDeclaration(e.modifiers, e.name, e.typeParameters, t);
    }
    function t4e(e, t, { indexSignature: n, container: i }) {
      const a = (au(i) ? i.members : i.type.members).filter((d) => !s1(d)), o = js(n.parameters), c = A.createTypeParameterDeclaration(void 0, ns(o.name, Fe), o.type), _ = A.createMappedTypeNode(ES(n) ? A.createModifier(148) : void 0, c, void 0, n.questionToken, n.type, void 0), u = A.createIntersectionTypeNode([
        ...mD(i),
        _,
        ...a.length ? [A.createTypeLiteralNode(a)] : Te
      ]);
      e.replaceNode(t, i, i$e(i, u));
    }
    var r4e = "removeAccidentalCallParentheses";
    ps({
      errorCodes: [p.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code],
      getCodeActions(e) {
        const t = cr(xi(e.sourceFile, e.span.start), za);
        if (t)
          return [Zd(r4e, on.ChangeTracker.with(e, (n) => {
            n.deleteRange(e.sourceFile, {
              pos: t.expression.end,
              end: t.end
            });
          }), p.Remove_parentheses)];
      },
      fixIds: [r4e]
    });
    var hue = "removeUnnecessaryAwait", n4e = [p.await_has_no_effect_on_the_type_of_this_expression.code];
    ps({
      errorCodes: n4e,
      getCodeActions: function(t) {
        const n = on.ChangeTracker.with(t, (i) => i4e(i, t.sourceFile, t.span));
        if (n.length > 0) return [Va(hue, n, p.Remove_unnecessary_await, hue, p.Remove_all_unnecessary_uses_of_await)];
      },
      fixIds: [hue],
      getAllCodeActions: (e) => lo(e, n4e, (t, n) => i4e(t, n.file, n))
    });
    function i4e(e, t, n) {
      const i = qn(xi(t, n.start), (c) => c.kind === 135), a = i && qn(i.parent, o1);
      if (!a) return;
      let o = a;
      if (E_(a.parent) && Fe(b6(a.expression, !1))) {
        const c = Tl(a.parent.pos, t);
        c && c.kind !== 105 && (o = a.parent);
      }
      e.replaceNode(t, o, a.expression);
    }
    var a4e = [p.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code], yue = "splitTypeOnlyImport";
    ps({
      errorCodes: a4e,
      fixIds: [yue],
      getCodeActions: function(t) {
        const n = on.ChangeTracker.with(t, (i) => o4e(i, s4e(t.sourceFile, t.span), t));
        if (n.length) return [Va(yue, n, p.Split_into_two_separate_import_declarations, yue, p.Split_all_invalid_type_only_imports)];
      },
      getAllCodeActions: (e) => lo(e, a4e, (t, n) => {
        o4e(t, s4e(e.sourceFile, n), e);
      })
    });
    function s4e(e, t) {
      return cr(xi(e, t.start), ic);
    }
    function o4e(e, t, n) {
      if (!t) return;
      const i = E.checkDefined(t.importClause);
      e.replaceNode(n.sourceFile, t, A.updateImportDeclaration(t, t.modifiers, A.updateImportClause(i, i.phaseModifier, i.name, void 0), t.moduleSpecifier, t.attributes)), e.insertNodeAfter(n.sourceFile, t, A.createImportDeclaration(void 0, A.updateImportClause(i, i.phaseModifier, void 0, i.namedBindings), t.moduleSpecifier, t.attributes));
    }
    var vue = "fixConvertConstToLet", c4e = [p.Cannot_assign_to_0_because_it_is_a_constant.code];
    ps({
      errorCodes: c4e,
      getCodeActions: function(t) {
        const { sourceFile: n, span: i, program: a } = t, o = l4e(n, i.start, a);
        if (o !== void 0)
          return [Ace(vue, on.ChangeTracker.with(t, (c) => u4e(c, n, o.token)), p.Convert_const_to_let, vue, p.Convert_all_const_to_let)];
      },
      getAllCodeActions: (e) => {
        const { program: t } = e, n = /* @__PURE__ */ new Set();
        return Jk(on.ChangeTracker.with(e, (i) => {
          zk(e, c4e, (a) => {
            const o = l4e(a.file, a.start, t);
            if (o && Yp(n, ss(o.symbol)))
              return u4e(i, a.file, o.token);
          });
        }));
      },
      fixIds: [vue]
    });
    function l4e(e, t, n) {
      var i;
      const a = n.getTypeChecker().getSymbolAtLocation(xi(e, t));
      if (a === void 0) return;
      const o = qn((i = a?.valueDeclaration) == null ? void 0 : i.parent, iu);
      if (o === void 0) return;
      const c = uo(o, 87, e);
      if (c !== void 0)
        return {
          symbol: a,
          token: c
        };
    }
    function u4e(e, t, n) {
      e.replaceNode(t, n, A.createToken(121));
    }
    var bue = "fixExpectedComma", _4e = [p._0_expected.code];
    ps({
      errorCodes: _4e,
      getCodeActions(e) {
        const { sourceFile: t } = e, n = f4e(t, e.span.start, e.errorCode);
        if (n)
          return [Va(bue, on.ChangeTracker.with(e, (i) => p4e(i, t, n)), [
            p.Change_0_to_1,
            ";",
            ","
          ], bue, [
            p.Change_0_to_1,
            ";",
            ","
          ])];
      },
      fixIds: [bue],
      getAllCodeActions: (e) => lo(e, _4e, (t, n) => {
        const i = f4e(n.file, n.start, n.code);
        i && p4e(t, e.sourceFile, i);
      })
    });
    function f4e(e, t, n) {
      const i = xi(e, t);
      return i.kind === 27 && i.parent && (bs(i.parent) || hu(i.parent)) ? { node: i } : void 0;
    }
    function p4e(e, t, { node: n }) {
      const i = A.createToken(28);
      e.replaceNode(t, n, i);
    }
    var a$e = "addVoidToPromise", d4e = "addVoidToPromise", m4e = [p.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code, p.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];
    ps({
      errorCodes: m4e,
      fixIds: [d4e],
      getCodeActions(e) {
        const t = on.ChangeTracker.with(e, (n) => g4e(n, e.sourceFile, e.span, e.program));
        if (t.length > 0) return [Va(a$e, t, p.Add_void_to_Promise_resolved_without_a_value, d4e, p.Add_void_to_all_Promises_resolved_without_a_value)];
      },
      getAllCodeActions(e) {
        return lo(e, m4e, (t, n) => g4e(t, n.file, n, e.program, /* @__PURE__ */ new Set()));
      }
    });
    function g4e(e, t, n, i, a) {
      const o = xi(t, n.start);
      if (!Fe(o) || !za(o.parent) || o.parent.expression !== o || o.parent.arguments.length !== 0) return;
      const c = i.getTypeChecker(), _ = c.getSymbolAtLocation(o), u = _?.valueDeclaration;
      if (!u || !Fi(u) || !Xb(u.parent.parent) || a?.has(u)) return;
      a?.add(u);
      const d = s$e(u.parent.parent);
      if (_t(d)) {
        const g = d[0], h = !j0(g) && !FS(g) && FS(A.createUnionTypeNode([g, A.createKeywordTypeNode(116)]).types[0]);
        h && e.insertText(t, g.pos, "("), e.insertText(t, g.end, h ? ") | void" : " | void");
      } else {
        const g = c.getResolvedSignature(o.parent), h = g?.parameters[0], S = h && c.getTypeOfSymbolAtLocation(h, u.parent.parent);
        rn(u) ? (!S || S.flags & 3) && (e.insertText(t, u.parent.parent.end, ")"), e.insertText(t, gs(t.text, u.parent.parent.pos), "/** @type {Promise<void>} */(")) : (!S || S.flags & 2) && e.insertText(t, u.parent.parent.expression.end, "<void>");
      }
    }
    function s$e(e) {
      var t;
      if (rn(e)) {
        if (E_(e.parent)) {
          const n = (t = iv(e.parent)) == null ? void 0 : t.typeExpression.type;
          if (n && xf(n) && Fe(n.typeName) && On(n.typeName) === "Promise") return n.typeArguments;
        }
      } else return e.typeArguments;
    }
    var Vk = {};
    gi(Vk, {
      CompletionKind: () => O4e,
      CompletionSource: () => y4e,
      SortText: () => Iu,
      StringCompletions: () => oH,
      SymbolOriginInfoKind: () => v4e,
      createCompletionDetails: () => $L,
      createCompletionDetailsForSymbol: () => Pue,
      getCompletionEntriesFromSymbols: () => Due,
      getCompletionEntryDetails: () => R$e,
      getCompletionEntrySymbol: () => B$e,
      getCompletionsAtPosition: () => d$e,
      getConstraintOfTypeArgumentProperty: () => QL,
      getDefaultCommitCharacters: () => rT,
      getPropertiesForObjectExpression: () => iH,
      moduleSpecifierResolutionCacheAttemptLimit: () => h4e,
      moduleSpecifierResolutionLimit: () => Sue
    });
    var Sue = 100, h4e = 1e3, Iu = {
      LocalDeclarationPriority: "10",
      LocationPriority: "11",
      OptionalMember: "12",
      MemberDeclaredBySpreadAssignment: "13",
      SuggestedClassMembers: "14",
      GlobalsOrKeywords: "15",
      AutoImportSuggestions: "16",
      ClassMemberSnippets: "17",
      JavascriptIdentifiers: "18",
      Deprecated(e) {
        return "z" + e;
      },
      ObjectLiteralProperty(e, t) {
        return `${e}\0${t}\0`;
      },
      SortBelow(e) {
        return e + "1";
      }
    }, jm = [
      ".",
      ",",
      ";"
    ], QG = [".", ";"], y4e = /* @__PURE__ */ ((e) => (e.ThisProperty = "ThisProperty/", e.ClassMemberSnippet = "ClassMemberSnippet/", e.TypeOnlyAlias = "TypeOnlyAlias/", e.ObjectLiteralMethodSnippet = "ObjectLiteralMethodSnippet/", e.SwitchCases = "SwitchCases/", e.ObjectLiteralMemberWithComma = "ObjectLiteralMemberWithComma/", e))(y4e || {}), v4e = /* @__PURE__ */ ((e) => (e[e.ThisType = 1] = "ThisType", e[e.SymbolMember = 2] = "SymbolMember", e[e.Export = 4] = "Export", e[e.Promise = 8] = "Promise", e[e.Nullable = 16] = "Nullable", e[e.ResolvedExport = 32] = "ResolvedExport", e[e.TypeOnlyAlias = 64] = "TypeOnlyAlias", e[e.ObjectLiteralMethod = 128] = "ObjectLiteralMethod", e[e.Ignore = 256] = "Ignore", e[e.ComputedPropertyName = 512] = "ComputedPropertyName", e[e.SymbolMemberNoExport = 2] = "SymbolMemberNoExport", e[e.SymbolMemberExport = 34] = "SymbolMemberExport", e))(v4e || {});
    function o$e(e) {
      return !!(e.kind & 1);
    }
    function c$e(e) {
      return !!(e.kind & 2);
    }
    function GL(e) {
      return !!(e && e.kind & 4);
    }
    function oP(e) {
      return !!(e && e.kind & 32);
    }
    function l$e(e) {
      return GL(e) || oP(e) || Tue(e);
    }
    function u$e(e) {
      return (GL(e) || oP(e)) && !!e.isFromPackageJson;
    }
    function _$e(e) {
      return !!(e.kind & 8);
    }
    function f$e(e) {
      return !!(e.kind & 16);
    }
    function b4e(e) {
      return !!(e && e.kind & 64);
    }
    function S4e(e) {
      return !!(e && e.kind & 128);
    }
    function p$e(e) {
      return !!(e && e.kind & 256);
    }
    function Tue(e) {
      return !!(e && e.kind & 512);
    }
    function T4e(e, t, n, i, a, o, c, _, u) {
      var d, g, h, S;
      const T = ko(), k = c || MA(i.getCompilerOptions()) || ((d = o.autoImportSpecifierExcludeRegexes) == null ? void 0 : d.length);
      let D = !1, P = 0, N = 0, M = 0, R = 0;
      const G = u({
        tryResolve: z,
        skippedAny: () => D,
        resolvedAny: () => N > 0,
        resolvedBeyondLimit: () => N > Sue
      }), L = R ? ` (${(M / R * 100).toFixed(1)}% hit rate)` : "";
      return (g = t.log) == null || g.call(t, `${e}: resolved ${N} module specifiers, plus ${P} ambient and ${M} from cache${L}`), (h = t.log) == null || h.call(t, `${e}: response is ${D ? "incomplete" : "complete"}`), (S = t.log) == null || S.call(t, `${e}: ${ko() - T}`), G;
      function z(H, U) {
        if (U) {
          const Q = n.getModuleSpecifierForBestExportInfo(H, a, _);
          return Q && P++, Q || "failed";
        }
        const pe = k || o.allowIncompleteCompletions && N < Sue, ie = !pe && o.allowIncompleteCompletions && R < h4e, W = pe || ie ? n.getModuleSpecifierForBestExportInfo(H, a, _, ie) : void 0;
        return (!pe && !ie || ie && !W) && (D = !0), N += W?.computedWithoutCacheCount || 0, M += H.length - (W?.computedWithoutCacheCount || 0), ie && R++, W || (k ? "failed" : "skipped");
      }
    }
    function rT(e) {
      return e ? [] : jm;
    }
    function d$e(e, t, n, i, a, o, c, _, u, d, g = !1) {
      var h;
      const { previousToken: S } = eH(a, i);
      if (c && !Ok(i, a, S) && !Q$e(i, c, S, a)) return;
      if (c === " ")
        return o.includeCompletionsForImportStatements && o.includeCompletionsWithInsertText ? {
          isGlobalCompletion: !0,
          isMemberCompletion: !1,
          isNewIdentifierLocation: !0,
          isIncomplete: !0,
          entries: [],
          defaultCommitCharacters: rT(!0)
        } : void 0;
      const T = t.getCompilerOptions(), k = t.getTypeChecker(), D = o.allowIncompleteCompletions ? (h = e.getIncompleteCompletionsCache) == null ? void 0 : h.call(e) : void 0;
      if (D && _ === 3 && S && Fe(S)) {
        const M = m$e(D, i, S, t, e, o, u, a);
        if (M) return M;
      } else D?.clear();
      const P = oH.getStringLiteralCompletions(i, a, S, T, e, t, n, o, g);
      if (P) return P;
      if (S && q4(S.parent) && (S.kind === 83 || S.kind === 88 || S.kind === 80)) return L$e(S.parent);
      const N = F4e(t, n, i, T, a, o, void 0, e, d, u);
      if (N)
        switch (N.kind) {
          case 0:
            const M = b$e(i, e, t, T, n, N, o, d, a, g);
            return M?.isIncomplete && D?.set(M), M;
          case 1:
            return xue([...qv.getJSDocTagNameCompletions(), ...k4e(i, a, k, T, o, !0)]);
          case 2:
            return xue([...qv.getJSDocTagCompletions(), ...k4e(i, a, k, T, o, !1)]);
          case 3:
            return xue(qv.getJSDocParameterNameCompletions(N.tag));
          case 4:
            return y$e(N.keywordCompletions, N.isNewIdentifierLocation);
          default:
            return E.assertNever(N);
        }
    }
    function HL(e, t) {
      var n, i;
      let a = u3(e.sortText, t.sortText);
      return a === 0 && (a = u3(e.name, t.name)), a === 0 && ((n = e.data) != null && n.moduleSpecifier) && ((i = t.data) != null && i.moduleSpecifier) && (a = UA(e.data.moduleSpecifier, t.data.moduleSpecifier)), a === 0 ? -1 : a;
    }
    function x4e(e) {
      return !!e?.moduleSpecifier;
    }
    function m$e(e, t, n, i, a, o, c, _) {
      const u = e.get();
      if (!u) return;
      const d = G_(t, _), g = n.text.toLowerCase(), h = EI(t, a, i, o, c);
      return u.entries = T4e("continuePreviousIncompleteResponse", a, Zu.createImportSpecifierResolver(t, i, a, o), i, n.getStart(), o, !1, vv(n), (S) => {
        const T = Rn(u.entries, (k) => {
          var D;
          if (!k.hasAction || !k.source || !k.data || x4e(k.data)) return k;
          if (!$4e(k.name, g)) return;
          const { origin: P } = E.checkDefined(L4e(k.name, k.data, i, a)), N = h.get(t.path, k.data.exportMapKey), M = N && S.tryResolve(N, !jl(Qp(P.moduleSymbol.name)));
          if (M === "skipped") return k;
          if (!M || M === "failed") {
            (D = a.log) == null || D.call(a, `Unexpected failure resolving auto import for '${k.name}' from '${k.source}'`);
            return;
          }
          const R = {
            ...P,
            kind: 32,
            moduleSpecifier: M.moduleSpecifier
          };
          return k.data = N4e(R), k.source = Eue(R), k.sourceDisplay = [sp(R.moduleSpecifier)], k;
        });
        return S.skippedAny() || (u.isIncomplete = void 0), T;
      }), u.flags = (u.flags || 0) | 4, u.optionalReplacementSpan = D4e(d), u;
    }
    function xue(e) {
      return {
        isGlobalCompletion: !1,
        isMemberCompletion: !1,
        isNewIdentifierLocation: !1,
        entries: e,
        defaultCommitCharacters: rT(!1)
      };
    }
    function k4e(e, t, n, i, a, o) {
      const c = xi(e, t);
      if (!KC(c) && !Hd(c)) return [];
      const _ = Hd(c) ? c : c.parent;
      if (!Hd(_)) return [];
      const u = _.parent;
      if (!Ra(u)) return [];
      const d = T_(e), g = a.includeCompletionsWithSnippetText || void 0, h = Qf(_.tags, (S) => np(S) && S.getEnd() <= t);
      return Rn(u.parameters, (S) => {
        if (!HC(S).length) {
          if (Fe(S.name)) {
            const T = { tabstop: 1 }, k = S.name.text;
            let D = UI(k, S.initializer, S.dotDotDotToken, d, !1, !1, n, i, a), P = g ? UI(k, S.initializer, S.dotDotDotToken, d, !1, !0, n, i, a, T) : void 0;
            return o && (D = D.slice(1), P && (P = P.slice(1))), {
              name: D,
              kind: "parameter",
              sortText: Iu.LocationPriority,
              insertText: g ? P : void 0,
              isSnippet: g
            };
          } else if (S.parent.parameters.indexOf(S) === h) {
            const T = `param${h}`, k = C4e(T, S.name, S.initializer, S.dotDotDotToken, d, !1, n, i, a), D = g ? C4e(T, S.name, S.initializer, S.dotDotDotToken, d, !0, n, i, a) : void 0;
            let P = k.join(N0(i) + "* "), N = D?.join(N0(i) + "* ");
            return o && (P = P.slice(1), N && (N = N.slice(1))), {
              name: P,
              kind: "parameter",
              sortText: Iu.LocationPriority,
              insertText: g ? N : void 0,
              isSnippet: g
            };
          }
        }
      });
    }
    function C4e(e, t, n, i, a, o, c, _, u) {
      if (!a) return [UI(e, n, i, a, !1, o, c, _, u, { tabstop: 1 })];
      return d(e, t, n, i, { tabstop: 1 });
      function d(h, S, T, k, D) {
        if (rp(S) && !k) {
          const P = { tabstop: D.tabstop }, N = UI(h, T, k, a, !0, o, c, _, u, P);
          let M = [];
          for (const R of S.elements) {
            const G = g(h, R, P);
            if (G)
              M.push(...G);
            else {
              M = void 0;
              break;
            }
          }
          if (M)
            return D.tabstop = P.tabstop, [N, ...M];
        }
        return [UI(h, T, k, a, !1, o, c, _, u, D)];
      }
      function g(h, S, T) {
        if (!S.propertyName && Fe(S.name) || Fe(S.name)) {
          const k = S.propertyName ? tD(S.propertyName) : S.name.text;
          return k ? [UI(`${h}.${k}`, S.initializer, S.dotDotDotToken, a, !1, o, c, _, u, T)] : void 0;
        } else if (S.propertyName) {
          const k = tD(S.propertyName);
          return k && d(`${h}.${k}`, S.name, S.initializer, S.dotDotDotToken, T);
        }
      }
    }
    function UI(e, t, n, i, a, o, c, _, u, d) {
      if (o && E.assertIsDefined(d), t && (e = g$e(e, t)), o && (e = Vb(e)), i) {
        let g = "*";
        if (a)
          E.assert(!n, "Cannot annotate a rest parameter with type 'Object'."), g = "Object";
        else {
          if (t) {
            const T = c.getTypeAtLocation(t.parent);
            if (!(T.flags & 17)) {
              const k = t.getSourceFile(), D = Df(k, u) === 0 ? 268435456 : 0, P = c.typeToTypeNode(T, cr(t, Ra), D);
              if (P) {
                const N = o ? KG({
                  removeComments: !0,
                  module: _.module,
                  moduleResolution: _.moduleResolution,
                  target: _.target
                }) : g1({
                  removeComments: !0,
                  module: _.module,
                  moduleResolution: _.moduleResolution,
                  target: _.target
                });
                ln(P, 1), g = N.printNode(4, P, k);
              }
            }
          }
          o && g === "*" && (g = `\${${d.tabstop++}:${g}}`);
        }
        const h = !a && n ? "..." : "", S = o ? `\${${d.tabstop++}}` : "";
        return `@param {${h}${g}} ${e} ${S}`;
      } else {
        const g = o ? `\${${d.tabstop++}}` : "";
        return `@param ${e} ${g}`;
      }
    }
    function g$e(e, t) {
      const n = t.getText().trim();
      return n.includes(`
`) || n.length > 80 ? `[${e}]` : `[${e}=${n}]`;
    }
    function h$e(e) {
      return {
        name: as(e),
        kind: "keyword",
        kindModifiers: "",
        sortText: Iu.GlobalsOrKeywords
      };
    }
    function y$e(e, t) {
      return {
        isGlobalCompletion: !1,
        isMemberCompletion: !1,
        isNewIdentifierLocation: t,
        entries: e.slice(),
        defaultCommitCharacters: rT(t)
      };
    }
    function E4e(e, t, n) {
      return {
        kind: 4,
        keywordCompletions: R4e(e, t),
        isNewIdentifierLocation: n
      };
    }
    function v$e(e) {
      if (e === 156)
        return 8;
      E.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters");
    }
    function D4e(e) {
      return e?.kind === 80 ? P_(e) : void 0;
    }
    function b$e(e, t, n, i, a, o, c, _, u, d) {
      const { symbols: g, contextToken: h, completionKind: S, isInSnippetScope: T, isNewIdentifierLocation: k, location: D, propertyAccessToConvert: P, keywordFilters: N, symbolToOriginInfoMap: M, recommendedCompletion: R, isJsxInitializer: G, isTypeOnlyLocation: L, isJsxIdentifierExpected: z, isRightOfOpenTag: H, isRightOfDotOrQuestionDot: U, importStatementCompletion: pe, insideJsDocTagTypeExpression: ie, symbolToSortTextMap: W, hasUnresolvedAutoImports: Q, defaultCommitCharacters: se } = o;
      let he = o.literals;
      const fe = n.getTypeChecker();
      if (FA(e.scriptKind) === 1) {
        const oe = T$e(D, e);
        if (oe) return oe;
      }
      const de = cr(h, F6);
      if (de && (Ute(h) || Lb(h, de.expression))) {
        const oe = vL(fe, de.parent.clauses);
        he = he.filter((ge) => !oe.hasValue(ge)), g.forEach((ge, Ae) => {
          if (ge.valueDeclaration && Gh(ge.valueDeclaration)) {
            const Ne = fe.getConstantValue(ge.valueDeclaration);
            Ne !== void 0 && oe.hasValue(Ne) && (M[Ae] = { kind: 256 });
          }
        });
      }
      const $ = VR(), Se = w4e(e, i);
      if (Se && !k && (!g || g.length === 0) && N === 0) return;
      const Be = Due(g, $, void 0, h, D, u, e, t, n, Ps(i), a, S, c, i, _, L, P, z, G, pe, R, M, W, z, H, d);
      if (N !== 0)
        for (const oe of R4e(N, !ie && T_(e))) (L && Uw(oS(oe.name)) || !L && aXe(oe.name) || !Be.has(oe.name)) && (Be.add(oe.name), wy($, oe, HL, void 0, !0));
      for (const oe of q$e(h, u)) Be.has(oe.name) || (Be.add(oe.name), wy($, oe, HL, void 0, !0));
      for (const oe of he) {
        const ge = k$e(e, c, oe);
        Be.add(ge.name), wy($, ge, HL, void 0, !0);
      }
      Se || x$e(e, D.pos, Be, Ps(i), $);
      let ce;
      if (c.includeCompletionsWithInsertText && h && !H && !U && (ce = cr(h, aw))) {
        const oe = P4e(ce, e, c, i, t, n, _);
        oe && $.push(oe.entry);
      }
      return {
        flags: o.flags,
        isGlobalCompletion: T,
        isIncomplete: c.allowIncompleteCompletions && Q ? !0 : void 0,
        isMemberCompletion: S$e(S),
        isNewIdentifierLocation: k,
        optionalReplacementSpan: D4e(D),
        entries: $,
        defaultCommitCharacters: se ?? rT(k)
      };
    }
    function w4e(e, t) {
      return !T_(e) || !!jD(e, t);
    }
    function P4e(e, t, n, i, a, o, c) {
      const _ = e.clauses, u = o.getTypeChecker(), d = u.getTypeAtLocation(e.parent.expression);
      if (d && d.isUnion() && hr(d.types, (g) => g.isLiteral())) {
        const g = vL(u, _), h = Ps(i), S = Df(t, n), T = Zu.createImportAdder(t, o, n, a), k = [];
        for (const G of d.types) if (G.flags & 32768) {
          E.assert(G.symbol, "An enum member type should have a symbol"), E.assert(G.symbol.parent, "An enum member type should have a parent symbol (the enum symbol)");
          const L = G.symbol.valueDeclaration && u.getConstantValue(G.symbol.valueDeclaration);
          if (L !== void 0) {
            if (g.hasValue(L)) continue;
            g.addValue(L);
          }
          const z = Zu.typeToAutoImportableTypeNode(u, T, G, e, h);
          if (!z) return;
          const H = YG(z, h, S);
          if (!H) return;
          k.push(H);
        } else if (!g.hasValue(G.value)) switch (typeof G.value) {
          case "object":
            k.push(G.value.negative ? A.createPrefixUnaryExpression(41, A.createBigIntLiteral({
              negative: !1,
              base10Value: G.value.base10Value
            })) : A.createBigIntLiteral(G.value));
            break;
          case "number":
            k.push(G.value < 0 ? A.createPrefixUnaryExpression(41, A.createNumericLiteral(-G.value)) : A.createNumericLiteral(G.value));
            break;
          case "string":
            k.push(A.createStringLiteral(G.value, S === 0));
            break;
        }
        if (k.length === 0) return;
        const D = or(k, (G) => A.createCaseClause(G, [])), P = Xh(a, c?.options), N = KG({
          removeComments: !0,
          module: i.module,
          moduleResolution: i.moduleResolution,
          target: i.target,
          newLine: CI(P)
        }), M = c ? (G) => N.printAndFormatNode(4, G, t, c) : (G) => N.printNode(4, G, t), R = or(D, (G, L) => n.includeCompletionsWithSnippetText ? `${M(G)}$${L + 1}` : `${M(G)}`).join(P);
        return {
          entry: {
            name: `${N.printNode(4, D[0], t)} ...`,
            kind: "",
            sortText: Iu.GlobalsOrKeywords,
            insertText: R,
            hasAction: T.hasFixes() || void 0,
            source: "SwitchCases/",
            isSnippet: n.includeCompletionsWithSnippetText ? !0 : void 0
          },
          importAdder: T
        };
      }
    }
    function YG(e, t, n) {
      switch (e.kind) {
        case 184:
          const i = e.typeName;
          return ZG(i, t, n);
        case 200:
          const a = YG(e.objectType, t, n), o = YG(e.indexType, t, n);
          return a && o && A.createElementAccessExpression(a, o);
        case 202:
          const c = e.literal;
          switch (c.kind) {
            case 11:
              return A.createStringLiteral(c.text, n === 0);
            case 9:
              return A.createNumericLiteral(c.text, c.numericLiteralFlags);
          }
          return;
        case 197:
          const _ = YG(e.type, t, n);
          return _ && (Fe(_) ? _ : A.createParenthesizedExpression(_));
        case 187:
          return ZG(e.exprName, t, n);
        case 206:
          E.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.");
      }
    }
    function ZG(e, t, n) {
      if (Fe(e)) return e;
      const i = Ti(e.right.escapedText);
      return az(i, t) ? A.createPropertyAccessExpression(ZG(e.left, t, n), i) : A.createElementAccessExpression(ZG(e.left, t, n), A.createStringLiteral(i, n === 0));
    }
    function S$e(e) {
      switch (e) {
        case 0:
        case 3:
        case 2:
          return !0;
        default:
          return !1;
      }
    }
    function T$e(e, t) {
      const n = cr(e, (i) => {
        switch (i.kind) {
          case 288:
            return !0;
          case 44:
          case 32:
          case 80:
          case 212:
            return !1;
          default:
            return "quit";
        }
      });
      if (n) {
        const i = !!uo(n, 32, t), a = n.parent.openingElement.tagName.getText(t) + (i ? "" : ">");
        return {
          isGlobalCompletion: !1,
          isMemberCompletion: !0,
          isNewIdentifierLocation: !1,
          optionalReplacementSpan: P_(n.tagName),
          entries: [{
            name: a,
            kind: "class",
            kindModifiers: void 0,
            sortText: Iu.LocationPriority
          }],
          defaultCommitCharacters: rT(!1)
        };
      }
    }
    function x$e(e, t, n, i, a) {
      bG(e).forEach((o, c) => {
        if (o === t) return;
        const _ = Ti(c);
        !n.has(_) && Y_(_, i) && (n.add(_), wy(a, {
          name: _,
          kind: "warning",
          kindModifiers: "",
          sortText: Iu.JavascriptIdentifiers,
          isFromUncheckedFile: !0,
          commitCharacters: []
        }, HL));
      });
    }
    function kue(e, t, n) {
      return typeof n == "object" ? Ub(n) + "n" : Ta(n) ? Xw(e, t, n) : JSON.stringify(n);
    }
    function k$e(e, t, n) {
      return {
        name: kue(e, t, n),
        kind: "string",
        kindModifiers: "",
        sortText: Iu.LocationPriority,
        commitCharacters: []
      };
    }
    function C$e(e, t, n, i, a, o, c, _, u, d, g, h, S, T, k, D, P, N, M, R, G, L, z, H) {
      var U, pe;
      let ie, W, Q = KV(n, o), se, he, fe = Eue(h), de, $, Se;
      const Be = u.getTypeChecker(), ce = h && f$e(h), oe = h && c$e(h) || g;
      if (h && o$e(h)) ie = g ? `this${ce ? "?." : ""}[${Cue(c, M, d)}]` : `this${ce ? "?." : "."}${d}`;
      else if ((oe || ce) && T) {
        ie = oe ? g ? `[${Cue(c, M, d)}]` : `[${d}]` : d, (ce || T.questionDotToken) && (ie = `?.${ie}`);
        const ot = uo(T, 25, c) || uo(T, 29, c);
        if (!ot) return;
        const K = ta(d, T.name.text) ? T.name.end : ot.end;
        Q = Vc(ot.getStart(c), K);
      }
      if (k && (ie === void 0 && (ie = d), ie = `{${ie}}`, typeof k != "boolean" && (Q = P_(k, c))), h && _$e(h) && T) {
        ie === void 0 && (ie = d);
        const ot = Tl(T.pos, c);
        let K = "";
        ot && uL(ot.end, ot.parent, c) && (K = ";"), K += `(await ${T.expression.getText()})`, ie = g ? `${K}${ie}` : `${K}${ce ? "?." : "."}${ie}`, Q = Vc((qn(T.parent, o1) ? T.parent : T.expression).getStart(c), T.end);
      }
      if (oP(h) && (de = [sp(h.moduleSpecifier)], D && ({ insertText: ie, replacementSpan: Q } = O$e(d, D, h, P, c, u, M), he = M.includeCompletionsWithSnippetText ? !0 : void 0)), h?.kind === 64 && ($ = !0), R === 0 && i && ((U = Tl(i.pos, c, i)) == null ? void 0 : U.kind) !== 28 && (hc(i.parent.parent) || Dp(i.parent.parent) || ef(i.parent.parent) || ih(i.parent) || ((pe = cr(i.parent, ol)) == null ? void 0 : pe.getLastToken(c)) === i || Nu(i.parent) && Za(c, i.getEnd()).line !== Za(c, o).line) && (fe = "ObjectLiteralMemberWithComma/", $ = !0), M.includeCompletionsWithClassMemberSnippets && M.includeCompletionsWithInsertText && R === 3 && D$e(e, a, c)) {
        let ot;
        const K = A4e(_, u, N, M, d, e, a, o, i, G);
        if (K)
          ({ insertText: ie, filterText: W, isSnippet: he, importAdder: ot } = K), (ot?.hasFixes() || K.eraseRange) && ($ = !0, fe = "ClassMemberSnippet/");
        else return;
      }
      if (h && S4e(h) && ({ insertText: ie, isSnippet: he, labelDetails: Se } = h, M.useLabelDetailsInCompletionEntries || (d = d + Se.detail, Se = void 0), fe = "ObjectLiteralMethodSnippet/", t = Iu.SortBelow(t)), L && !z && M.includeCompletionsWithSnippetText && M.jsxAttributeCompletionStyle && M.jsxAttributeCompletionStyle !== "none" && !(Om(a.parent) && a.parent.initializer)) {
        let ot = M.jsxAttributeCompletionStyle === "braces";
        const K = Be.getTypeOfSymbolAtLocation(e, a);
        M.jsxAttributeCompletionStyle === "auto" && !(K.flags & 8448) && !(K.flags & 134217728 && xr(K.types, (ke) => !!(ke.flags & 8448))) && (K.flags & 12583968 || K.flags & 134217728 && hr(K.types, (ke) => !!(ke.flags & 12583972 || gse(ke))) ? (ie = `${Vb(d)}=${Xw(c, M, "$1")}`, he = !0) : ot = !0), ot && (ie = `${Vb(d)}={$1}`, he = !0);
      }
      if (ie !== void 0 && !M.includeCompletionsWithInsertText) return;
      (GL(h) || oP(h)) && (se = N4e(h), $ = !D);
      const ge = cr(a, lO);
      if (ge) {
        const ot = Ps(_.getCompilationSettings());
        if (!Y_(d, ot))
          ie = Cue(c, M, d), ge.kind === 276 && (su.setText(c.text), su.resetTokenState(o), su.scan() === 130 && su.scan() === 80 || (ie += " as " + E$e(d, ot)));
        else if (ge.kind === 276) {
          const K = oS(d);
          K && (K === 135 || tJ(K)) && (ie = `${d} as ${d}_`);
        }
      }
      const Ae = H0.getSymbolKind(Be, e, a), Ne = Ae === "warning" || Ae === "string" ? [] : void 0;
      return {
        name: d,
        kind: Ae,
        kindModifiers: H0.getSymbolModifiers(Be, e),
        sortText: t,
        source: fe,
        hasAction: $ ? !0 : void 0,
        isRecommended: F$e(e, S, Be) || void 0,
        insertText: ie,
        filterText: W,
        replacementSpan: Q,
        sourceDisplay: de,
        labelDetails: Se,
        isSnippet: he,
        isPackageJsonImport: u$e(h) || void 0,
        isImportStatementCompletion: !!D || void 0,
        data: se,
        commitCharacters: Ne,
        ...H ? { symbol: e } : void 0
      };
    }
    function E$e(e, t) {
      let n = !1, i = "", a;
      for (let o = 0; o < e.length; o += a !== void 0 && a >= 65536 ? 2 : 1)
        a = e.codePointAt(o), a !== void 0 && (o === 0 ? sg(a, t) : jh(a, t)) ? (n && (i += "_"), i += String.fromCodePoint(a), n = !1) : n = !0;
      return n && (i += "_"), i || "_";
    }
    function D$e(e, t, n) {
      return rn(t) ? !1 : !!(e.flags & 106500) && (Zn(t) || t.parent && t.parent.parent && al(t.parent) && t === t.parent.name && t.parent.getLastToken(n) === t.parent.name && Zn(t.parent.parent) || t.parent && B6(t) && Zn(t.parent));
    }
    function A4e(e, t, n, i, a, o, c, _, u, d) {
      const g = cr(c, Zn);
      if (!g) return;
      let h, S = a;
      const T = a, k = t.getTypeChecker(), D = c.getSourceFile(), P = KG({
        removeComments: !0,
        module: n.module,
        moduleResolution: n.moduleResolution,
        target: n.target,
        omitTrailingSemicolon: !1,
        newLine: CI(Xh(e, d?.options))
      }), N = Zu.createImportAdder(D, t, i, e);
      let M;
      if (i.includeCompletionsWithSnippetText) {
        h = !0;
        const pe = A.createEmptyStatement();
        M = A.createBlock([pe], !0), kz(pe, {
          kind: 0,
          order: 0
        });
      } else M = A.createBlock([], !0);
      let R = 0;
      const { modifiers: G, range: L, decorators: z } = w$e(u, D, _), H = G & 64 && g.modifierFlagsCache & 64;
      let U = [];
      if (Zu.addNewNodeForMemberSymbol(o, g, D, {
        program: t,
        host: e
      }, i, N, (pe) => {
        let ie = 0;
        H && (ie |= 64), al(pe) && k.getMemberOverrideModifierStatus(g, pe, o) === 1 && (ie |= 16), U.length || (R = pe.modifierFlagsCache | ie), pe = A.replaceModifiers(pe, R), U.push(pe);
      }, M, Zu.PreserveOptionalFlags.Property, !!H), U.length) {
        const pe = o.flags & 8192;
        let ie = R | 17;
        pe ? ie |= 1024 : ie |= 136;
        const W = G & ie;
        if (G & ~ie) return;
        if (R & 4 && W & 1 && (R &= -5), W !== 0 && !(W & 1) && (R &= -2), R |= W, U = U.map((se) => A.replaceModifiers(se, R)), z?.length) {
          const se = U[U.length - 1];
          e2(se) && (U[U.length - 1] = A.replaceDecoratorsAndModifiers(se, z.concat(kb(se) || [])));
        }
        const Q = 131073;
        d ? S = P.printAndFormatSnippetList(Q, A.createNodeArray(U), D, d) : S = P.printSnippetList(Q, A.createNodeArray(U), D);
      }
      return {
        insertText: S,
        filterText: T,
        isSnippet: h,
        importAdder: N,
        eraseRange: L
      };
    }
    function w$e(e, t, n) {
      if (!e || Za(t, n).line > Za(t, e.getEnd()).line) return { modifiers: 0 };
      let i = 0, a, o;
      const c = {
        pos: n,
        end: n
      };
      if (ga(e.parent) && (o = P$e(e))) {
        e.parent.modifiers && (i |= Cm(e.parent.modifiers) & 98303, a = e.parent.modifiers.filter(pl) || [], c.pos = Math.min(...e.parent.modifiers.map((u) => u.getStart(t))));
        const _ = Ux(o);
        i & _ || (i |= _, c.pos = Math.min(c.pos, e.getStart(t))), e.parent.name !== e && (c.end = e.parent.name.getStart(t));
      }
      return {
        modifiers: i,
        decorators: a,
        range: c.pos < c.end ? c : void 0
      };
    }
    function P$e(e) {
      if (hs(e)) return e.kind;
      if (Fe(e)) {
        const t = lS(e);
        if (t && Jy(t)) return t;
      }
    }
    function A$e(e, t, n, i, a, o, c, _) {
      const u = c.includeCompletionsWithSnippetText || void 0;
      let d = t;
      const g = n.getSourceFile(), h = N$e(e, n, g, i, a, c);
      if (!h) return;
      const S = KG({
        removeComments: !0,
        module: o.module,
        moduleResolution: o.moduleResolution,
        target: o.target,
        omitTrailingSemicolon: !1,
        newLine: CI(Xh(a, _?.options))
      });
      _ ? d = S.printAndFormatSnippetList(80, A.createNodeArray([h], !0), g, _) : d = S.printSnippetList(80, A.createNodeArray([h], !0), g);
      const T = g1({
        removeComments: !0,
        module: o.module,
        moduleResolution: o.moduleResolution,
        target: o.target,
        omitTrailingSemicolon: !0
      }), k = A.createMethodSignature(void 0, "", h.questionToken, h.typeParameters, h.parameters, h.type), D = { detail: T.printNode(4, k, g) };
      return {
        isSnippet: u,
        insertText: d,
        labelDetails: D
      };
    }
    function N$e(e, t, n, i, a, o) {
      const c = e.getDeclarations();
      if (!(c && c.length)) return;
      const _ = i.getTypeChecker(), u = c[0], d = no(va(u), !1), g = _.getWidenedType(_.getTypeOfSymbolAtLocation(e, t)), h = 33554432 | (Df(n, o) === 0 ? 268435456 : 0);
      switch (u.kind) {
        case 172:
        case 173:
        case 174:
        case 175: {
          let S = g.flags & 134217728 && g.types.length < 10 ? _.getUnionType(g.types, 2) : g;
          if (S.flags & 134217728) {
            const P = dn(S.types, (N) => _.getSignaturesOfType(N, 0).length > 0);
            if (P.length === 1) S = P[0];
            else return;
          }
          if (_.getSignaturesOfType(S, 0).length !== 1) return;
          const T = _.typeToTypeNode(S, t, h, void 0, Zu.getNoopSymbolTrackerWithResolver({
            program: i,
            host: a
          }));
          if (!T || !mg(T)) return;
          let k;
          if (o.includeCompletionsWithSnippetText) {
            const P = A.createEmptyStatement();
            k = A.createBlock([P], !0), kz(P, {
              kind: 0,
              order: 0
            });
          } else k = A.createBlock([], !0);
          const D = T.parameters.map((P) => A.createParameterDeclaration(void 0, P.dotDotDotToken, P.name, void 0, void 0, P.initializer));
          return A.createMethodDeclaration(void 0, void 0, d, void 0, void 0, D, void 0, k);
        }
        default:
          return;
      }
    }
    function KG(e) {
      let t;
      const n = on.createWriter(N0(e)), i = g1(e, n), a = {
        ...n,
        write: (S) => o(S, () => n.write(S)),
        nonEscapingWrite: n.write,
        writeLiteral: (S) => o(S, () => n.writeLiteral(S)),
        writeStringLiteral: (S) => o(S, () => n.writeStringLiteral(S)),
        writeSymbol: (S, T) => o(S, () => n.writeSymbol(S, T)),
        writeParameter: (S) => o(S, () => n.writeParameter(S)),
        writeComment: (S) => o(S, () => n.writeComment(S)),
        writeProperty: (S) => o(S, () => n.writeProperty(S))
      };
      return {
        printSnippetList: c,
        printAndFormatSnippetList: u,
        printNode: d,
        printAndFormatNode: h
      };
      function o(S, T) {
        const k = Vb(S);
        if (k !== S) {
          const D = n.getTextPos();
          T();
          const P = n.getTextPos();
          t = kr(t || (t = []), {
            newText: k,
            span: {
              start: D,
              length: P - D
            }
          });
        } else T();
      }
      function c(S, T, k) {
        const D = _(S, T, k);
        return t ? on.applyChanges(D, t) : D;
      }
      function _(S, T, k) {
        return t = void 0, a.clear(), i.writeList(S, T, k, a), a.getText();
      }
      function u(S, T, k, D) {
        const P = {
          text: _(S, T, k),
          getLineAndCharacterOfPosition(G) {
            return Za(this, G);
          }
        }, N = yL(D, k), M = ks(T, (G) => {
          const L = on.assignPositionsToNode(G);
          return dl.formatNodeGivenIndentation(L, P, k.languageVariant, 0, 0, {
            ...D,
            options: N
          });
        }), R = t ? uf(zi(M, t), (G, L) => S7(G.span, L.span)) : M;
        return on.applyChanges(P.text, R);
      }
      function d(S, T, k) {
        const D = g(S, T, k);
        return t ? on.applyChanges(D, t) : D;
      }
      function g(S, T, k) {
        return t = void 0, a.clear(), i.writeNode(S, T, k, a), a.getText();
      }
      function h(S, T, k, D) {
        const P = {
          text: g(S, T, k),
          getLineAndCharacterOfPosition(L) {
            return Za(this, L);
          }
        }, N = yL(D, k), M = on.assignPositionsToNode(T), R = dl.formatNodeGivenIndentation(M, P, k.languageVariant, 0, 0, {
          ...D,
          options: N
        }), G = t ? uf(zi(R, t), (L, z) => S7(L.span, z.span)) : R;
        return on.applyChanges(P.text, G);
      }
    }
    function N4e(e) {
      const t = e.fileName ? void 0 : Qp(e.moduleSymbol.name), n = e.isFromPackageJson ? !0 : void 0;
      return oP(e) ? {
        exportName: e.exportName,
        exportMapKey: e.exportMapKey,
        moduleSpecifier: e.moduleSpecifier,
        ambientModuleName: t,
        fileName: e.fileName,
        isPackageJsonImport: n
      } : {
        exportName: e.exportName,
        exportMapKey: e.exportMapKey,
        fileName: e.fileName,
        ambientModuleName: e.fileName ? void 0 : Qp(e.moduleSymbol.name),
        isPackageJsonImport: e.isFromPackageJson ? !0 : void 0
      };
    }
    function I$e(e, t, n) {
      const i = e.exportName === "default", a = !!e.isPackageJsonImport;
      return x4e(e) ? {
        kind: 32,
        exportName: e.exportName,
        exportMapKey: e.exportMapKey,
        moduleSpecifier: e.moduleSpecifier,
        symbolName: t,
        fileName: e.fileName,
        moduleSymbol: n,
        isDefaultExport: i,
        isFromPackageJson: a
      } : {
        kind: 4,
        exportName: e.exportName,
        exportMapKey: e.exportMapKey,
        symbolName: t,
        fileName: e.fileName,
        moduleSymbol: n,
        isDefaultExport: i,
        isFromPackageJson: a
      };
    }
    function O$e(e, t, n, i, a, o, c) {
      const _ = t.replacementSpan, u = Vb(Xw(a, c, n.moduleSpecifier)), d = n.isDefaultExport ? 1 : n.exportName === "export=" ? 2 : 0, g = c.includeCompletionsWithSnippetText ? "$1" : "", h = Zu.getImportKind(a, d, o, !0), S = t.couldBeTypeOnlyImportSpecifier, T = t.isTopLevelTypeOnly ? ` ${as(156)} ` : " ", k = S ? `${as(156)} ` : "", D = i ? ";" : "";
      switch (h) {
        case 3:
          return {
            replacementSpan: _,
            insertText: `import${T}${Vb(e)}${g} = require(${u})${D}`
          };
        case 1:
          return {
            replacementSpan: _,
            insertText: `import${T}${Vb(e)}${g} from ${u}${D}`
          };
        case 2:
          return {
            replacementSpan: _,
            insertText: `import${T}* as ${Vb(e)} from ${u}${D}`
          };
        case 0:
          return {
            replacementSpan: _,
            insertText: `import${T}{ ${k}${Vb(e)}${g} } from ${u}${D}`
          };
      }
    }
    function Cue(e, t, n) {
      return /^\d+$/.test(n) ? n : Xw(e, t, n);
    }
    function F$e(e, t, n) {
      return e === t || !!(e.flags & 1048576) && n.getExportSymbolOfSymbol(e) === t;
    }
    function Eue(e) {
      if (oP(e)) return e.moduleSpecifier;
      if (GL(e)) return Qp(e.moduleSymbol.name);
      if (e?.kind === 1) return "ThisProperty/";
      if (e?.kind === 64) return "TypeOnlyAlias/";
    }
    function Due(e, t, n, i, a, o, c, _, u, d, g, h, S, T, k, D, P, N, M, R, G, L, z, H, U, pe = !1) {
      const ie = ko(), W = tXe(i, a), Q = SI(c), se = u.getTypeChecker(), he = /* @__PURE__ */ new Map();
      for (let $ = 0; $ < e.length; $++) {
        const Se = e[$], Be = L?.[$], ce = tH(Se, d, Be, h, !!N);
        if (!ce || he.get(ce.name) && (!Be || !S4e(Be)) || h === 1 && z && !fe(Se, z) || !D && rn(c) && de(Se)) continue;
        const { name: oe, needsConvertPropertyAccess: ge } = ce, Ae = z?.[ss(Se)] ?? Iu.LocationPriority, Ne = C$e(Se, nXe(Se, se) ? Iu.Deprecated(Ae) : Ae, n, i, a, o, c, _, u, oe, ge, Be, G, P, M, R, Q, T, S, h, k, H, U, pe);
        if (!Ne) continue;
        const ot = (!Be || b4e(Be)) && !(Se.parent === void 0 && !_t(Se.declarations, (K) => K.getSourceFile() === a.getSourceFile()));
        he.set(oe, ot), wy(t, Ne, HL, void 0, !0);
      }
      return g("getCompletionsAtPosition: getCompletionEntriesFromSymbols: " + (ko() - ie)), {
        has: ($) => he.has($),
        add: ($) => he.set($, !0)
      };
      function fe($, Se) {
        var Be;
        let ce = $.flags;
        if (a.parent && Xo(a.parent)) return !0;
        if (W && qn(W, ci) && ($.valueDeclaration === W || Ja(W.name) && W.name.elements.some((Ae) => Ae === $.valueDeclaration)))
          return !1;
        const oe = $.valueDeclaration ?? ((Be = $.declarations) == null ? void 0 : Be[0]);
        if (W && oe) {
          if (Fi(W) && Fi(oe)) {
            const Ae = W.parent.parameters;
            if (oe.pos >= W.pos && oe.pos < Ae.end) return !1;
          } else if ($o(W) && $o(oe)) {
            if (W === oe && i?.kind === 96) return !1;
            if (rXe(i) && !OS(W.parent)) {
              const Ae = W.parent.typeParameters;
              if (Ae && oe.pos >= W.pos && oe.pos < Ae.end) return !1;
            }
          }
        }
        const ge = mu($, se);
        return c.externalModuleIndicator && !T.allowUmdGlobalAccess && Se[ss($)] === Iu.GlobalsOrKeywords && (Se[ss(ge)] === Iu.AutoImportSuggestions || Se[ss(ge)] === Iu.LocationPriority) ? !1 : (ce |= v6(ge), B9(a) ? !!(ce & 1920) : D ? Iue($, se) : !!(ce & 111551));
      }
      function de($) {
        var Se;
        const Be = v6(mu($, se));
        return !(Be & 111551) && (!rn((Se = $.declarations) == null ? void 0 : Se[0]) || !!(Be & 788968));
      }
    }
    function L$e(e) {
      const t = M$e(e);
      if (t.length) return {
        isGlobalCompletion: !1,
        isMemberCompletion: !1,
        isNewIdentifierLocation: !1,
        entries: t,
        defaultCommitCharacters: rT(!1)
      };
    }
    function M$e(e) {
      const t = [], n = /* @__PURE__ */ new Map();
      let i = e;
      for (; i && !Ra(i); ) {
        if (c1(i)) {
          const a = i.label.text;
          n.has(a) || (n.set(a, !0), t.push({
            name: a,
            kindModifiers: "",
            kind: "label",
            sortText: Iu.LocationPriority
          }));
        }
        i = i.parent;
      }
      return t;
    }
    function I4e(e, t, n, i, a, o, c) {
      if (a.source === "SwitchCases/") return { type: "cases" };
      if (a.data) {
        const R = L4e(a.name, a.data, e, o);
        if (R) {
          const { contextToken: G, previousToken: L } = eH(i, n);
          return {
            type: "symbol",
            symbol: R.symbol,
            location: G_(n, i),
            previousToken: L,
            contextToken: G,
            isJsxInitializer: !1,
            isTypeOnlyLocation: !1,
            origin: R.origin
          };
        }
      }
      const _ = e.getCompilerOptions(), u = F4e(e, t, n, _, i, {
        includeCompletionsForModuleExports: !0,
        includeCompletionsWithInsertText: !0
      }, a, o, void 0);
      if (!u) return { type: "none" };
      if (u.kind !== 0) return {
        type: "request",
        request: u
      };
      const { symbols: d, literals: g, location: h, completionKind: S, symbolToOriginInfoMap: T, contextToken: k, previousToken: D, isJsxInitializer: P, isTypeOnlyLocation: N } = u, M = xr(g, (R) => kue(n, c, R) === a.name);
      return M !== void 0 ? {
        type: "literal",
        literal: M
      } : Hn(d, (R, G) => {
        const L = T[G], z = tH(R, Ps(_), L, S, u.isJsxIdentifierExpected);
        return z && z.name === a.name && (a.source === "ClassMemberSnippet/" && R.flags & 106500 || a.source === "ObjectLiteralMethodSnippet/" && R.flags & 8196 || Eue(L) === a.source || a.source === "ObjectLiteralMemberWithComma/") ? {
          type: "symbol",
          symbol: R,
          location: h,
          origin: L,
          contextToken: k,
          previousToken: D,
          isJsxInitializer: P,
          isTypeOnlyLocation: N
        } : void 0;
      }) || { type: "none" };
    }
    function R$e(e, t, n, i, a, o, c, _, u) {
      const d = e.getTypeChecker(), g = e.getCompilerOptions(), { name: h, source: S, data: T } = a, { previousToken: k, contextToken: D } = eH(i, n);
      if (Ok(n, i, k)) return oH.getStringLiteralCompletionDetails(h, n, i, k, e, o, u, _);
      const P = I4e(e, t, n, i, a, o, _);
      switch (P.type) {
        case "request": {
          const { request: N } = P;
          switch (N.kind) {
            case 1:
              return qv.getJSDocTagNameCompletionDetails(h);
            case 2:
              return qv.getJSDocTagCompletionDetails(h);
            case 3:
              return qv.getJSDocParameterNameCompletionDetails(h);
            case 4:
              return _t(N.keywordCompletions, (M) => M.name === h) ? wue(h, "keyword", 5) : void 0;
            default:
              return E.assertNever(N);
          }
        }
        case "symbol": {
          const { symbol: N, location: M, contextToken: R, origin: G, previousToken: L } = P, { codeActions: z, sourceDisplay: H } = j$e(h, M, R, G, N, e, o, g, n, i, L, c, _, T, S, u);
          return Pue(N, Tue(G) ? G.symbolName : N.name, d, n, M, u, z, H);
        }
        case "literal": {
          const { literal: N } = P;
          return wue(kue(n, _, N), "string", typeof N == "string" ? 8 : 7);
        }
        case "cases": {
          const N = P4e(D.parent, n, _, e.getCompilerOptions(), o, e, void 0);
          if (N?.importAdder.hasFixes()) {
            const { entry: M, importAdder: R } = N, G = on.ChangeTracker.with({
              host: o,
              formatContext: c,
              preferences: _
            }, R.writeFixes);
            return {
              name: M.name,
              kind: "",
              kindModifiers: "",
              displayParts: [],
              sourceDisplay: void 0,
              codeActions: [{
                changes: G,
                description: l2([p.Includes_imports_of_types_referenced_by_0, h])
              }]
            };
          }
          return {
            name: h,
            kind: "",
            kindModifiers: "",
            displayParts: [],
            sourceDisplay: void 0
          };
        }
        case "none":
          return M4e().some((N) => N.name === h) ? wue(h, "keyword", 5) : void 0;
        default:
          E.assertNever(P);
      }
    }
    function wue(e, t, n) {
      return $L(e, "", t, [tf(e, n)]);
    }
    function Pue(e, t, n, i, a, o, c, _) {
      const { displayParts: u, documentation: d, symbolKind: g, tags: h } = n.runWithCancellationToken(o, (S) => H0.getSymbolDisplayPartsDocumentationAndSymbolKind(S, e, i, a, a, 7));
      return $L(t, H0.getSymbolModifiers(n, e), g, u, d, h, c, _);
    }
    function $L(e, t, n, i, a, o, c, _) {
      return {
        name: e,
        kindModifiers: t,
        kind: n,
        displayParts: i,
        documentation: a,
        tags: o,
        codeActions: c,
        source: _,
        sourceDisplay: _
      };
    }
    function j$e(e, t, n, i, a, o, c, _, u, d, g, h, S, T, k, D) {
      if (T?.moduleSpecifier && g && U4e(n || g, u).replacementSpan)
        return {
          codeActions: void 0,
          sourceDisplay: [sp(T.moduleSpecifier)]
        };
      if (k === "ClassMemberSnippet/") {
        const { importAdder: z, eraseRange: H } = A4e(c, o, _, S, e, a, t, d, n, h);
        if (z?.hasFixes() || H) return {
          sourceDisplay: void 0,
          codeActions: [{
            changes: on.ChangeTracker.with({
              host: c,
              formatContext: h,
              preferences: S
            }, (U) => {
              z && z.writeFixes(U), H && U.deleteRange(u, H);
            }),
            description: z?.hasFixes() ? l2([p.Includes_imports_of_types_referenced_by_0, e]) : l2([p.Update_modifiers_of_0, e])
          }]
        };
      }
      if (b4e(i)) {
        const z = Zu.getPromoteTypeOnlyCompletionAction(u, i.declaration.name, o, c, h, S);
        return E.assertIsDefined(z, "Expected to have a code action for promoting type-only alias"), {
          codeActions: [z],
          sourceDisplay: void 0
        };
      }
      if (k === "ObjectLiteralMemberWithComma/" && n) {
        const z = on.ChangeTracker.with({
          host: c,
          formatContext: h,
          preferences: S
        }, (H) => H.insertText(u, n.end, ","));
        if (z) return {
          sourceDisplay: void 0,
          codeActions: [{
            changes: z,
            description: l2([p.Add_missing_comma_for_object_member_completion_0, e])
          }]
        };
      }
      if (!i || !(GL(i) || oP(i))) return {
        codeActions: void 0,
        sourceDisplay: void 0
      };
      const P = i.isFromPackageJson ? c.getPackageJsonAutoImportProvider().getTypeChecker() : o.getTypeChecker(), { moduleSymbol: N } = i, M = P.getMergedSymbol(mu(a.exportSymbol || a, P)), R = n?.kind === 30 && Gu(n.parent), { moduleSpecifier: G, codeAction: L } = Zu.getImportCompletionAction(M, N, T?.exportMapKey, u, e, R, c, o, h, g && Fe(g) ? g.getStart(u) : d, S, D);
      return E.assert(!T?.moduleSpecifier || G === T.moduleSpecifier), {
        sourceDisplay: [sp(G)],
        codeActions: [L]
      };
    }
    function B$e(e, t, n, i, a, o, c) {
      const _ = I4e(e, t, n, i, a, o, c);
      return _.type === "symbol" ? _.symbol : void 0;
    }
    var O4e = /* @__PURE__ */ ((e) => (e[e.ObjectPropertyDeclaration = 0] = "ObjectPropertyDeclaration", e[e.Global = 1] = "Global", e[e.PropertyAccess = 2] = "PropertyAccess", e[e.MemberLike = 3] = "MemberLike", e[e.String = 4] = "String", e[e.None = 5] = "None", e))(O4e || {});
    function J$e(e, t, n) {
      return Hn(t && (t.isUnion() ? t.types : [t]), (i) => {
        const a = i && i.symbol;
        return a && a.flags & 424 && !xee(a) ? Aue(a, e, n) : void 0;
      });
    }
    function z$e(e, t, n, i) {
      const { parent: a } = e;
      switch (e.kind) {
        case 80:
          return cL(e, i);
        case 64:
          switch (a.kind) {
            case 261:
              return i.getContextualType(a.initializer);
            case 227:
              return i.getTypeAtLocation(a.left);
            case 292:
              return i.getContextualTypeForJsxAttribute(a);
            default:
              return;
          }
        case 105:
          return i.getContextualType(a);
        case 84:
          const o = qn(a, F6);
          return o ? Sq(o, i) : void 0;
        case 19:
          return O6(a) && !Im(a.parent) && !Dv(a.parent) ? i.getContextualTypeForJsxAttribute(a.parent) : void 0;
        default:
          const c = QI.getArgumentInfoForCompletions(e, t, n, i);
          return c ? i.getContextualTypeForArgumentAtIndex(c.invocation, c.argumentIndex) : lL(e.kind) && un(a) && lL(a.operatorToken.kind) ? i.getTypeAtLocation(a.left) : i.getContextualType(e, 4) || i.getContextualType(e);
      }
    }
    function Aue(e, t, n) {
      const i = n.getAccessibleSymbolChain(e, t, -1, !1);
      return i ? js(i) : e.parent && (W$e(e.parent) ? e : Aue(e.parent, t, n));
    }
    function W$e(e) {
      var t;
      return !!((t = e.declarations) != null && t.some((n) => n.kind === 308));
    }
    function F4e(e, t, n, i, a, o, c, _, u, d) {
      const g = e.getTypeChecker(), h = w4e(n, i);
      let S = ko(), T = xi(n, a);
      t("getCompletionData: Get current token: " + (ko() - S)), S = ko();
      const k = W0(n, a, T);
      t("getCompletionData: Is inside comment: " + (ko() - S));
      let D = !1, P = !1, N = !1;
      if (k) {
        if (pse(n, a)) {
          if (n.text.charCodeAt(a - 1) === 64) return { kind: 1 };
          {
            const Ke = rd(a, n);
            if (!/[^*|\s(/)]/.test(n.text.substring(Ke, a))) return { kind: 2 };
          }
        }
        const ye = G$e(T, a);
        if (ye) {
          if (ye.tagName.pos <= a && a <= ye.tagName.end) return { kind: 1 };
          if (Fm(ye)) P = !0;
          else {
            const Ke = Ut(ye);
            if (Ke && (T = xi(n, a), (!T || !pg(T) && (T.parent.kind !== 349 || T.parent.name !== T)) && (D = $e(Ke))), !D && np(ye) && (Nc(ye.name) || ye.name.pos <= a && a <= ye.name.end)) return {
              kind: 3,
              tag: ye
            };
          }
        }
        if (!D && !P) {
          t("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");
          return;
        }
      }
      S = ko();
      const M = !D && !P && T_(n), R = eH(a, n), G = R.previousToken;
      let L = R.contextToken;
      t("getCompletionData: Get previous token: " + (ko() - S));
      let z = T, H, U = !1, pe = !1, ie = !1, W = !1, Q = !1, se = !1, he, fe = G_(n, a), de = 0, $ = !1, Se = 0, Be;
      if (L) {
        const ye = U4e(L, n);
        if (ye.keywordCompletion) {
          if (ye.isKeywordOnlyCompletion) return {
            kind: 4,
            keywordCompletions: [h$e(ye.keywordCompletion)],
            isNewIdentifierLocation: ye.isNewIdentifierLocation
          };
          de = v$e(ye.keywordCompletion);
        }
        if (ye.replacementSpan && o.includeCompletionsForImportStatements && o.includeCompletionsWithInsertText && (Se |= 2, he = ye, $ = ye.isNewIdentifierLocation), !ye.replacementSpan && na(L))
          return t("Returning an empty list because completion was requested in an invalid position."), de ? E4e(de, M, Da().isNewIdentifierLocation) : void 0;
        let Ke = L.parent;
        if (L.kind === 25 || L.kind === 29)
          switch (U = L.kind === 25, pe = L.kind === 29, Ke.kind) {
            case 212:
              if (H = Ke, z = H.expression, Nc(Hx(H)) || (za(z) || Ra(z)) && z.end === L.pos && z.getChildCount(n) && ws(z.getChildren(n)).kind !== 22) return;
              break;
            case 167:
              z = Ke.left;
              break;
            case 268:
              z = Ke.name;
              break;
            case 206:
              z = Ke;
              break;
            case 237:
              z = Ke.getFirstToken(n), E.assert(z.kind === 102 || z.kind === 105);
              break;
            default:
              return;
          }
        else if (!he) {
          if (Ke && Ke.kind === 212 && (L = Ke, Ke = Ke.parent), T.parent === fe) switch (T.kind) {
            case 32:
              (T.parent.kind === 285 || T.parent.kind === 287) && (fe = T);
              break;
            case 44:
              T.parent.kind === 286 && (fe = T);
              break;
          }
          switch (Ke.kind) {
            case 288:
              L.kind === 44 && (W = !0, fe = L);
              break;
            case 227:
              if (!W4e(Ke)) break;
            case 286:
            case 285:
            case 287:
              se = !0, L.kind === 30 && (ie = !0, fe = L);
              break;
            case 295:
            case 294:
              (G.kind === 20 || G.kind === 80 && G.parent.kind === 292) && (se = !0);
              break;
            case 292:
              if (Ke.initializer === G && G.end < a) {
                se = !0;
                break;
              }
              switch (G.kind) {
                case 64:
                  Q = !0;
                  break;
                case 80:
                  se = !0, Ke !== G.parent && !Ke.initializer && uo(Ke, 64, n) && (Q = G);
              }
              break;
          }
        }
      }
      const ce = ko();
      let oe = 5, ge = !1, Ae = [], Ne;
      const ot = [], K = [], ke = /* @__PURE__ */ new Set(), ae = ni(), Ce = gm((ye) => Bv(ye ? _.getPackageJsonAutoImportProvider() : e, _));
      if (U || pe) Xt();
      else if (ie)
        Ae = g.getJsxIntrinsicTagNamesAt(fe), E.assertEachIsDefined(Ae, "getJsxIntrinsicTagNames() should all be defined"), zr(), oe = 1, de = 0;
      else if (W) {
        const ye = L.parent.parent.openingElement.tagName, Ke = g.getSymbolAtLocation(ye);
        Ke && (Ae = [Ke]), oe = 1, de = 0;
      } else if (!zr()) return de ? E4e(de, M, $) : void 0;
      t("getCompletionData: Semantic work: " + (ko() - ce));
      const ue = G && (z$e(G, a, n, g) ?? QL(G, g)), Ie = !qn(G, Xs) && !se ? Rn(ue && (ue.isUnion() ? ue.types : [ue]), (ye) => ye.isLiteral() && !(ye.flags & 32768) ? ye.value : void 0) : [], Xe = G && ue && J$e(G, ue, g);
      return {
        kind: 0,
        symbols: Ae,
        completionKind: oe,
        isInSnippetScope: N,
        propertyAccessToConvert: H,
        isNewIdentifierLocation: $,
        location: fe,
        keywordFilters: de,
        literals: Ie,
        symbolToOriginInfoMap: ot,
        recommendedCompletion: Xe,
        previousToken: G,
        contextToken: L,
        isJsxInitializer: Q,
        insideJsDocTagTypeExpression: D,
        symbolToSortTextMap: K,
        isTypeOnlyLocation: ae,
        isJsxIdentifierExpected: se,
        isRightOfOpenTag: ie,
        isRightOfDotOrQuestionDot: U || pe,
        importStatementCompletion: he,
        hasUnresolvedAutoImports: ge,
        flags: Se,
        defaultCommitCharacters: Be
      };
      function Ft(ye) {
        switch (ye.kind) {
          case 342:
          case 349:
          case 343:
          case 345:
          case 347:
          case 350:
          case 351:
            return !0;
          case 346:
            return !!ye.constraint;
          default:
            return !1;
        }
      }
      function Ut(ye) {
        if (Ft(ye)) {
          const Ke = ed(ye) ? ye.constraint : ye.typeExpression;
          return Ke && Ke.kind === 310 ? Ke : void 0;
        }
        if (yk(ye) || sF(ye)) return ye.class;
      }
      function Xt() {
        oe = 2;
        const ye = Bh(z), Ke = ye && !z.isTypeOf || Sm(z.parent) || _I(L, n, g), pr = B9(z);
        if (S_(z) || ye || Ln(z)) {
          const Pr = Qc(z.parent);
          Pr && ($ = !0, Be = []);
          let vr = g.getSymbolAtLocation(z);
          if (vr && (vr = mu(vr, g), vr.flags & 1920)) {
            const fn = g.getExportsOfModule(vr);
            E.assertEachIsDefined(fn, "getExportsOfModule() should all be defined");
            const Cr = (wt) => g.isValidPropertyAccess(ye ? z : z.parent, wt.name), et = (wt) => Iue(wt, g), kt = Pr ? (wt) => {
              var qt;
              return !!(wt.flags & 1920) && !((qt = wt.declarations) != null && qt.every((Ir) => Ir.parent === z.parent));
            } : pr ? ((wt) => et(wt) || Cr(wt)) : Ke || D ? et : Cr;
            for (const wt of fn) kt(wt) && Ae.push(wt);
            if (!Ke && !D && vr.declarations && vr.declarations.some((wt) => wt.kind !== 308 && wt.kind !== 268 && wt.kind !== 267)) {
              let wt = g.getTypeOfSymbolAtLocation(vr, z).getNonOptionalType(), qt = !1;
              if (wt.isNullableType()) {
                const Ir = U && !pe && o.includeAutomaticOptionalChainCompletions !== !1;
                (Ir || pe) && (wt = wt.getNonNullableType(), Ir && (qt = !0));
              }
              Ar(wt, !!(z.flags & 65536), qt);
            }
            return;
          }
        }
        if (!Ke || zx(z)) {
          g.tryGetThisTypeAt(z, !1);
          let Pr = g.getTypeAtLocation(z).getNonOptionalType();
          if (Ke)
            Ar(Pr.getNonNullableType(), !1, !1);
          else {
            let vr = !1;
            if (Pr.isNullableType()) {
              const fn = U && !pe && o.includeAutomaticOptionalChainCompletions !== !1;
              (fn || pe) && (Pr = Pr.getNonNullableType(), fn && (vr = !0));
            }
            Ar(Pr, !!(z.flags & 65536), vr);
          }
        }
      }
      function Ar(ye, Ke, pr) {
        ye.getStringIndexType() && ($ = !0, Be = []), pe && _t(ye.getCallSignatures()) && ($ = !0, Be ?? (Be = jm));
        const Pr = z.kind === 206 ? z : z.parent;
        if (h)
          for (const vr of ye.getApparentProperties()) g.isValidPropertyAccessForCompletions(Pr, ye, vr) && Ct(vr, !1, pr);
        else Ae.push(...dn(aH(ye, g), (vr) => g.isValidPropertyAccessForCompletions(Pr, ye, vr)));
        if (Ke && o.includeCompletionsWithInsertText) {
          const vr = g.getPromisedTypeOfPromise(ye);
          if (vr)
            for (const fn of vr.getApparentProperties()) g.isValidPropertyAccessForCompletions(Pr, vr, fn) && Ct(fn, !0, pr);
        }
      }
      function Ct(ye, Ke, pr) {
        var Pr;
        const vr = Hn(ye.declarations, (kt) => qn(va(kt), _s));
        if (vr) {
          const kt = Kt(vr.expression), wt = kt && g.getSymbolAtLocation(kt), qt = wt && Aue(wt, L, g), Ir = qt && ss(qt);
          if (Ir && Yp(ke, Ir)) {
            const Yt = Ae.length;
            Ae.push(qt), K[ss(qt)] = Iu.GlobalsOrKeywords;
            const Jt = qt.parent;
            if (!Jt || !Dx(Jt) || g.tryGetMemberInModuleExportsAndProperties(qt.name, Jt) !== qt) ot[Yt] = { kind: et(2) };
            else {
              const $t = jl(Qp(Jt.name)) ? (Pr = z3(Jt)) == null ? void 0 : Pr.fileName : void 0, { moduleSpecifier: Qt } = (Ne || (Ne = Zu.createImportSpecifierResolver(n, e, _, o))).getModuleSpecifierForBestExportInfo([{
                exportKind: 0,
                moduleFileName: $t,
                isFromPackageJson: !1,
                moduleSymbol: Jt,
                symbol: qt,
                targetFlags: mu(qt, g).flags
              }], a, vv(fe)) || {};
              Qt && (ot[Yt] = {
                kind: et(34),
                moduleSymbol: Jt,
                isDefaultExport: !1,
                symbolName: qt.name,
                exportName: qt.name,
                fileName: $t,
                moduleSpecifier: Qt
              });
            }
          } else if (o.includeCompletionsWithInsertText) {
            if (Ir && ke.has(Ir)) return;
            Cr(ye), fn(ye), Ae.push(ye);
          }
        } else
          Cr(ye), fn(ye), Ae.push(ye);
        function fn(kt) {
          Z$e(kt) && (K[ss(kt)] = Iu.LocalDeclarationPriority);
        }
        function Cr(kt) {
          o.includeCompletionsWithInsertText && (Ke && Yp(ke, ss(kt)) ? ot[Ae.length] = { kind: et(8) } : pr && (ot[Ae.length] = { kind: 16 }));
        }
        function et(kt) {
          return pr ? kt | 16 : kt;
        }
      }
      function Kt(ye) {
        return Fe(ye) ? ye : Ln(ye) ? Kt(ye.expression) : void 0;
      }
      function zr() {
        return (ha() || Ye() || Nt() || Pt() || ne() || tt() || _i() || re() || Gr() || (Li(), 1)) === 1;
      }
      function _i() {
        return Ge(L) ? (oe = 5, $ = !0, de = 4, 1) : 0;
      }
      function Gr() {
        const ye = it(L), Ke = ye && g.getContextualType(ye.attributes);
        if (!Ke) return 0;
        const pr = ye && g.getContextualType(ye.attributes, 4);
        return Ae = zi(Ae, Re(iH(Ke, pr, ye.attributes, g), ye.attributes.properties)), rt(), oe = 3, $ = !1, 1;
      }
      function Nt() {
        return he ? ($ = !0, vt(), 1) : 0;
      }
      function Li() {
        de = nt(L) ? 5 : 1, oe = 1, { isNewIdentifierLocation: $, defaultCommitCharacters: Be } = Da(), G !== L && E.assert(!!G, "Expected 'contextToken' to be defined when different from 'previousToken'.");
        const ye = G !== L ? G.getStart() : a, Ke = zn(L, ye, n) || n;
        N = Zr(Ke);
        const pr = (ae ? 0 : 111551) | 2887656, Pr = G && !vv(G);
        Ae = zi(Ae, g.getSymbolsInScope(Ke, pr)), E.assertEachIsDefined(Ae, "getSymbolsInScope() should all be defined");
        for (let vr = 0; vr < Ae.length; vr++) {
          const fn = Ae[vr];
          if (!g.isArgumentsSymbol(fn) && !_t(fn.declarations, (Cr) => Cr.getSourceFile() === n) && (K[ss(fn)] = Iu.GlobalsOrKeywords), Pr && !(fn.flags & 111551)) {
            const Cr = fn.declarations && xr(fn.declarations, XC);
            Cr && (ot[vr] = {
              kind: 64,
              declaration: Cr
            });
          }
        }
        if (o.includeCompletionsWithInsertText && Ke.kind !== 308) {
          const vr = g.tryGetThisTypeAt(Ke, !1, Zn(Ke.parent) ? Ke : void 0);
          if (vr && !Y$e(vr, n, g)) for (const fn of aH(vr, g))
            ot[Ae.length] = { kind: 1 }, Ae.push(fn), K[ss(fn)] = Iu.SuggestedClassMembers;
        }
        vt(), ae && (de = L && Db(L.parent) ? 6 : 7);
      }
      function ri() {
        var ye;
        return he ? !0 : o.includeCompletionsForModuleExports ? n.externalModuleIndicator || n.commonJsModuleIndicator || iq(e.getCompilerOptions()) ? !0 : ((ye = e.getSymlinkCache) == null ? void 0 : ye.call(e).hasAnySymlinks()) || !!e.getCompilerOptions().paths || vse(e) : !1;
      }
      function Zr(ye) {
        switch (ye.kind) {
          case 308:
          case 229:
          case 295:
          case 242:
            return !0;
          default:
            return Ei(ye);
        }
      }
      function ni() {
        return D || P || !!he && C0(fe.parent) || !ra(L) && (_I(L, n, g) || Sm(fe) || Me(L));
      }
      function ra(ye) {
        return ye && (ye.kind === 114 && (ye.parent.kind === 187 || P6(ye.parent)) || ye.kind === 131 && ye.parent.kind === 183);
      }
      function Me(ye) {
        if (ye) {
          const Ke = ye.parent.kind;
          switch (ye.kind) {
            case 59:
              return Ke === 173 || Ke === 172 || Ke === 170 || Ke === 261 || xx(Ke);
            case 64:
              return Ke === 266 || Ke === 169;
            case 130:
              return Ke === 235;
            case 30:
              return Ke === 184 || Ke === 217;
            case 96:
              return Ke === 169;
            case 152:
              return Ke === 239;
          }
        }
        return !1;
      }
      function vt() {
        var ye, Ke;
        if (!ri() || (E.assert(!c?.data, "Should not run 'collectAutoImports' when faster path is available via `data`"), c && !c.source)) return;
        Se |= 1;
        const pr = G === L && he ? "" : G && Fe(G) ? G.text.toLowerCase() : "", Pr = (ye = _.getModuleSpecifierCache) == null ? void 0 : ye.call(_), vr = EI(n, _, e, o, d), fn = (Ke = _.getPackageJsonAutoImportProvider) == null ? void 0 : Ke.call(_), Cr = c ? void 0 : mE(n, o, _);
        T4e("collectAutoImports", _, Ne || (Ne = Zu.createImportSpecifierResolver(n, e, _, o)), e, a, o, !!he, vv(fe), (kt) => {
          vr.search(n.path, ie, (wt, qt) => {
            if (!Y_(wt, Ps(_.getCompilationSettings())) || !c && Jx(wt) || !ae && !he && !(qt & 111551) || ae && !(qt & 790504)) return !1;
            const Ir = wt.charCodeAt(0);
            return ie && (Ir < 65 || Ir > 90) ? !1 : c ? !0 : $4e(wt, pr);
          }, (wt, qt, Ir, Yt) => {
            if (wt = dn(wt, et), !wt.length) return;
            const Jt = kt.tryResolve(wt, Ir) || {};
            if (Jt === "failed") return;
            let $t = wt[0], Qt;
            if (Jt !== "skipped" && ({ exportInfo: $t = wt[0], moduleSpecifier: Qt } = Jt), c && c.source !== Qt && !_t(wt, (wn) => c.source === Qp(wn.moduleSymbol.name))) return;
            const ct = $t.exportKind === 1;
            tr(ct && ED(E.checkDefined($t.symbol)) || E.checkDefined($t.symbol), {
              kind: Qt ? 32 : 4,
              moduleSpecifier: Qt,
              symbolName: qt,
              exportMapKey: Yt,
              exportName: $t.exportKind === 2 ? "export=" : E.checkDefined($t.symbol).name,
              fileName: $t.moduleFileName,
              isDefaultExport: ct,
              moduleSymbol: $t.moduleSymbol,
              isFromPackageJson: $t.isFromPackageJson
            });
          }), ge = kt.skippedAny(), Se |= kt.resolvedAny() ? 8 : 0, Se |= kt.resolvedBeyondLimit() ? 16 : 0;
        });
        function et(kt) {
          return Fq(kt.isFromPackageJson ? fn : e, n, qn(kt.moduleSymbol.valueDeclaration, Pi), kt.moduleSymbol, o, Cr, Ce(kt.isFromPackageJson), Pr);
        }
      }
      function tr(ye, Ke) {
        const pr = ss(ye);
        K[pr] !== Iu.GlobalsOrKeywords && (ot[Ae.length] = Ke, K[pr] = he ? Iu.LocationPriority : Iu.AutoImportSuggestions, Ae.push(ye));
      }
      function Ur(ye, Ke) {
        rn(fe) || ye.forEach((pr) => {
          if (!$n(pr)) return;
          const Pr = tH(pr, Ps(i), void 0, 0, !1);
          if (!Pr) return;
          const { name: vr } = Pr, fn = A$e(pr, vr, Ke, e, _, i, o, u);
          if (!fn) return;
          const Cr = {
            kind: 128,
            ...fn
          };
          Se |= 32, ot[Ae.length] = Cr, Ae.push(pr);
        });
      }
      function $n(ye) {
        return !!(ye.flags & 8196);
      }
      function zn(ye, Ke, pr) {
        let Pr = ye;
        for (; Pr && !UV(Pr, Ke, pr); ) Pr = Pr.parent;
        return Pr;
      }
      function na(ye) {
        const Ke = ko(), pr = Lr(ye) || Qe(ye) || Ve(ye) || Ea(ye) || E6(ye);
        return t("getCompletionsAtPosition: isCompletionListBlocker: " + (ko() - Ke)), pr;
      }
      function Ea(ye) {
        if (ye.kind === 12) return !0;
        if (ye.kind === 32 && ye.parent) {
          if (fe === ye.parent && (fe.kind === 287 || fe.kind === 286)) return !1;
          if (ye.parent.kind === 287) return fe.parent.kind !== 287;
          if (ye.parent.kind === 288 || ye.parent.kind === 286) return !!ye.parent.parent && ye.parent.parent.kind === 285;
        }
        return !1;
      }
      function Da() {
        if (L) {
          const ye = L.parent.kind, Ke = nH(L);
          switch (Ke) {
            case 28:
              switch (ye) {
                case 214:
                case 215: {
                  const pr = L.parent.expression;
                  return Za(n, pr.end).line !== Za(n, a).line ? {
                    defaultCommitCharacters: QG,
                    isNewIdentifierLocation: !0
                  } : {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !0
                  };
                }
                case 227:
                  return {
                    defaultCommitCharacters: QG,
                    isNewIdentifierLocation: !0
                  };
                case 177:
                case 185:
                case 211:
                  return {
                    defaultCommitCharacters: [],
                    isNewIdentifierLocation: !0
                  };
                case 210:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !0
                  };
                default:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !1
                  };
              }
            case 21:
              switch (ye) {
                case 214:
                case 215: {
                  const pr = L.parent.expression;
                  return Za(n, pr.end).line !== Za(n, a).line ? {
                    defaultCommitCharacters: QG,
                    isNewIdentifierLocation: !0
                  } : {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !0
                  };
                }
                case 218:
                  return {
                    defaultCommitCharacters: QG,
                    isNewIdentifierLocation: !0
                  };
                case 177:
                case 197:
                  return {
                    defaultCommitCharacters: [],
                    isNewIdentifierLocation: !0
                  };
                default:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !1
                  };
              }
            case 23:
              switch (ye) {
                case 210:
                case 182:
                case 190:
                case 168:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !0
                  };
                default:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !1
                  };
              }
            case 144:
            case 145:
            case 102:
              return {
                defaultCommitCharacters: [],
                isNewIdentifierLocation: !0
              };
            case 25:
              return ye === 268 ? {
                defaultCommitCharacters: [],
                isNewIdentifierLocation: !0
              } : {
                defaultCommitCharacters: jm,
                isNewIdentifierLocation: !1
              };
            case 19:
              switch (ye) {
                case 264:
                case 211:
                  return {
                    defaultCommitCharacters: [],
                    isNewIdentifierLocation: !0
                  };
                default:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !1
                  };
              }
            case 64:
              switch (ye) {
                case 261:
                case 227:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !0
                  };
                default:
                  return {
                    defaultCommitCharacters: jm,
                    isNewIdentifierLocation: !1
                  };
              }
            case 16:
              return {
                defaultCommitCharacters: jm,
                isNewIdentifierLocation: ye === 229
              };
            case 17:
              return {
                defaultCommitCharacters: jm,
                isNewIdentifierLocation: ye === 240
              };
            case 134:
              return ye === 175 || ye === 305 ? {
                defaultCommitCharacters: [],
                isNewIdentifierLocation: !0
              } : {
                defaultCommitCharacters: jm,
                isNewIdentifierLocation: !1
              };
            case 42:
              return ye === 175 ? {
                defaultCommitCharacters: [],
                isNewIdentifierLocation: !0
              } : {
                defaultCommitCharacters: jm,
                isNewIdentifierLocation: !1
              };
          }
          if (XL(Ke)) return {
            defaultCommitCharacters: [],
            isNewIdentifierLocation: !0
          };
        }
        return {
          defaultCommitCharacters: jm,
          isNewIdentifierLocation: !1
        };
      }
      function Lr(ye) {
        return (Ez(ye) || nB(ye)) && (lI(ye, a) || a === ye.end && (!!ye.isUnterminated || Ez(ye)));
      }
      function ha() {
        const ye = X$e(L);
        if (!ye) return 0;
        const Ke = (pk(ye.parent) ? ye.parent : void 0) || ye, pr = QL(Ke, g);
        if (!pr) return 0;
        const Pr = g.getTypeFromTypeNode(Ke), vr = aH(pr, g), fn = aH(Pr, g), Cr = /* @__PURE__ */ new Set();
        return fn.forEach((et) => Cr.add(et.escapedName)), Ae = zi(Ae, dn(vr, (et) => !Cr.has(et.escapedName))), oe = 0, $ = !0, 1;
      }
      function Ye() {
        if (L?.kind === 26) return 0;
        const ye = Ae.length, Ke = U$e(L, a, n);
        if (!Ke) return 0;
        oe = 0;
        let pr, Pr;
        if (Ke.kind === 211) {
          const vr = K$e(Ke, g);
          if (vr === void 0)
            return Ke.flags & 67108864 ? 2 : 0;
          const fn = g.getContextualType(Ke, 4), Cr = (fn || vr).getStringIndexType(), et = (fn || vr).getNumberIndexType();
          if ($ = !!Cr || !!et, pr = iH(vr, fn, Ke, g), Pr = Ke.properties, pr.length === 0 && !et)
            return 0;
        } else {
          E.assert(Ke.kind === 207), $ = !1;
          const vr = xm(Ke.parent);
          if (!rD(vr)) return E.fail("Root declaration is not variable-like.");
          let fn = E0(vr) || !!_l(vr) || vr.parent.parent.kind === 251;
          if (!fn && vr.kind === 170 && (dt(vr.parent) ? fn = !!g.getContextualType(vr.parent) : (vr.parent.kind === 175 || vr.parent.kind === 179) && (fn = dt(vr.parent.parent) && !!g.getContextualType(vr.parent.parent))), fn) {
            const Cr = g.getTypeAtLocation(Ke);
            if (!Cr) return 2;
            pr = g.getPropertiesOfType(Cr).filter((et) => g.isPropertyAccessible(Ke, !1, !1, Cr, et)), Pr = Ke.elements;
          }
        }
        if (pr && pr.length > 0) {
          const vr = rr(pr, E.checkDefined(Pr));
          Ae = zi(Ae, vr), rt(), Ke.kind === 211 && o.includeCompletionsWithObjectLiteralMethodSnippets && o.includeCompletionsWithInsertText && (q(ye), Ur(vr, Ke));
        }
        return 1;
      }
      function Pt() {
        if (!L) return 0;
        const ye = L.kind === 19 || L.kind === 28 ? qn(L.parent, lO) : eL(L) ? qn(L.parent.parent, lO) : void 0;
        if (!ye) return 0;
        eL(L) || (de = 8);
        const { moduleSpecifier: Ke } = ye.kind === 276 ? ye.parent.parent : ye.parent;
        if (!Ke)
          return $ = !0, ye.kind === 276 ? 2 : 0;
        const pr = g.getSymbolAtLocation(Ke);
        if (!pr)
          return $ = !0, 2;
        oe = 3, $ = !1;
        const Pr = g.getExportsAndPropertiesOfModule(pr), vr = new Set(ye.elements.filter((Cr) => !$e(Cr)).map((Cr) => Ab(Cr.propertyName || Cr.name))), fn = Pr.filter((Cr) => Cr.escapedName !== "default" && !vr.has(Cr.escapedName));
        return Ae = zi(Ae, fn), fn.length || (de = 0), 1;
      }
      function ne() {
        if (L === void 0) return 0;
        const ye = L.kind === 19 || L.kind === 28 ? qn(L.parent, BS) : L.kind === 59 ? qn(L.parent.parent, BS) : void 0;
        if (ye === void 0) return 0;
        const Ke = new Set(ye.elements.map(LO));
        return Ae = dn(g.getTypeAtLocation(ye).getApparentProperties(), (pr) => !Ke.has(pr.escapedName)), 1;
      }
      function tt() {
        var ye;
        const Ke = L && (L.kind === 19 || L.kind === 28) ? qn(L.parent, Pp) : void 0;
        if (!Ke) return 0;
        const pr = cr(Ke, _f(Pi, Qc));
        return oe = 5, $ = !1, (ye = pr.locals) == null || ye.forEach((Pr, vr) => {
          var fn, Cr;
          Ae.push(Pr), (Cr = (fn = pr.symbol) == null ? void 0 : fn.exports) != null && Cr.has(vr) && (K[ss(Pr)] = Iu.OptionalMember);
        }), 1;
      }
      function re() {
        const ye = $$e(n, L, fe, a);
        if (!ye) return 0;
        if (oe = 3, $ = !0, de = L.kind === 42 ? 0 : Zn(ye) ? 2 : 3, !Zn(ye)) return 1;
        const Ke = L.kind === 27 ? L.parent.parent : L.parent;
        let pr = al(Ke) ? Pu(Ke) : 0;
        if (L.kind === 80 && !$e(L)) switch (L.getText()) {
          case "private":
            pr = pr | 2;
            break;
          case "static":
            pr = pr | 256;
            break;
          case "override":
            pr = pr | 16;
            break;
        }
        if (Bc(Ke) && (pr |= 256), !(pr & 2)) {
          const Pr = ks(Zn(ye) && pr & 16 ? dx(Jd(ye)) : mD(ye), (vr) => {
            const fn = g.getTypeAtLocation(vr);
            return pr & 256 ? fn?.symbol && g.getPropertiesOfType(g.getTypeOfSymbolAtLocation(fn.symbol, ye)) : fn && g.getPropertiesOfType(fn);
          });
          Ae = zi(Ae, j(Pr, ye.members, pr)), bt(Ae, (vr, fn) => {
            const Cr = vr?.valueDeclaration;
            Cr && al(Cr) && Cr.name && _s(Cr.name) && (ot[fn] = {
              kind: 512,
              symbolName: g.symbolToString(vr)
            });
          });
        }
        return 1;
      }
      function we(ye) {
        return !!ye.parent && Fi(ye.parent) && yc(ye.parent.parent) && ($4(ye.kind) || pg(ye));
      }
      function Ge(ye) {
        if (ye) {
          const Ke = ye.parent;
          switch (ye.kind) {
            case 21:
            case 28:
              return yc(ye.parent) ? ye.parent : void 0;
            default:
              if (we(ye)) return Ke.parent;
          }
        }
      }
      function nt(ye) {
        if (ye) {
          let Ke;
          const pr = cr(ye.parent, (Pr) => Zn(Pr) ? "quit" : So(Pr) && Ke === Pr.body ? !0 : (Ke = Pr, !1));
          return pr && pr;
        }
      }
      function it(ye) {
        if (ye) {
          const Ke = ye.parent;
          switch (ye.kind) {
            case 32:
            case 31:
            case 44:
            case 80:
            case 212:
            case 293:
            case 292:
            case 294:
              if (Ke && (Ke.kind === 286 || Ke.kind === 287)) {
                if (ye.kind === 32) {
                  const pr = Tl(ye.pos, n, void 0);
                  if (!Ke.typeArguments || pr && pr.kind === 44) break;
                }
                return Ke;
              } else if (Ke.kind === 292) return Ke.parent.parent;
              break;
            case 11:
              if (Ke && (Ke.kind === 292 || Ke.kind === 294)) return Ke.parent.parent;
              break;
            case 20:
              if (Ke && Ke.kind === 295 && Ke.parent && Ke.parent.kind === 292) return Ke.parent.parent.parent;
              if (Ke && Ke.kind === 294) return Ke.parent.parent;
              break;
          }
        }
      }
      function ut(ye, Ke) {
        return n.getLineEndOfPosition(ye.getEnd()) < Ke;
      }
      function Qe(ye) {
        const Ke = ye.parent, pr = Ke.kind;
        switch (ye.kind) {
          case 28:
            return pr === 261 || fr(ye) || pr === 244 || pr === 267 || Dt(pr) || pr === 265 || pr === 208 || pr === 266 || Zn(Ke) && !!Ke.typeParameters && Ke.typeParameters.end >= ye.pos;
          case 25:
            return pr === 208;
          case 59:
            return pr === 209;
          case 23:
            return pr === 208;
          case 21:
            return pr === 300 || Dt(pr);
          case 19:
            return pr === 267;
          case 30:
            return pr === 264 || pr === 232 || pr === 265 || pr === 266 || xx(pr);
          case 126:
            return pr === 173 && !Zn(Ke.parent);
          case 26:
            return pr === 170 || !!Ke.parent && Ke.parent.kind === 208;
          case 125:
          case 123:
          case 124:
            return pr === 170 && !yc(Ke.parent);
          case 130:
            return pr === 277 || pr === 282 || pr === 275;
          case 139:
          case 153:
            return !sH(ye);
          case 80:
            if ((pr === 277 || pr === 282) && ye === Ke.name && ye.text === "type" || cr(ye.parent, ci) && ut(ye, a)) return !1;
            break;
          case 86:
          case 94:
          case 120:
          case 100:
          case 115:
          case 102:
          case 121:
          case 87:
          case 140:
            return !0;
          case 156:
            return pr !== 277;
          case 42:
            return Ra(ye.parent) && !hc(ye.parent);
        }
        if (XL(nH(ye)) && sH(ye) || we(ye) && (!Fe(ye) || $4(nH(ye)) || $e(ye)))
          return !1;
        switch (nH(ye)) {
          case 128:
          case 86:
          case 87:
          case 138:
          case 94:
          case 100:
          case 120:
          case 121:
          case 123:
          case 124:
          case 125:
          case 126:
          case 115:
            return !0;
          case 134:
            return ga(ye.parent);
        }
        if (cr(ye.parent, Zn) && ye === G && xt(ye, a)) return !1;
        const Pr = dv(ye.parent, 173);
        if (Pr && ye !== G && Zn(G.parent.parent) && a <= G.end) {
          if (xt(ye, G.end)) return !1;
          if (ye.kind !== 64 && (MN(Pr) || a5(Pr))) return !0;
        }
        return pg(ye) && !Nu(ye.parent) && !Om(ye.parent) && !((Zn(ye.parent) || au(ye.parent) || $o(ye.parent)) && (ye !== G || a > G.end));
      }
      function xt(ye, Ke) {
        return ye.kind !== 64 && (ye.kind === 27 || !xp(ye.end, Ke, n));
      }
      function Dt(ye) {
        return xx(ye) && ye !== 177;
      }
      function Ve(ye) {
        if (ye.kind === 9) {
          const Ke = ye.getFullText();
          return Ke.charAt(Ke.length - 1) === ".";
        }
        return !1;
      }
      function fr(ye) {
        return ye.parent.kind === 262 && !_I(ye, n, g);
      }
      function rr(ye, Ke) {
        if (Ke.length === 0) return ye;
        const pr = /* @__PURE__ */ new Set(), Pr = /* @__PURE__ */ new Set();
        for (const fn of Ke) {
          if (fn.kind !== 304 && fn.kind !== 305 && fn.kind !== 209 && fn.kind !== 175 && fn.kind !== 178 && fn.kind !== 179 && fn.kind !== 306 || $e(fn)) continue;
          let Cr;
          if (ih(fn)) Oe(fn, pr);
          else if (Ns(fn) && fn.propertyName)
            fn.propertyName.kind === 80 && (Cr = fn.propertyName.escapedText);
          else {
            const et = va(fn);
            Cr = et && Tm(et) ? yD(et) : void 0;
          }
          Cr !== void 0 && Pr.add(Cr);
        }
        const vr = ye.filter((fn) => !Pr.has(fn.escapedName));
        return ee(pr, vr), vr;
      }
      function Oe(ye, Ke) {
        const pr = ye.expression, Pr = g.getSymbolAtLocation(pr), vr = Pr && g.getTypeOfSymbolAtLocation(Pr, pr), fn = vr && vr.properties;
        fn && fn.forEach((Cr) => {
          Ke.add(Cr.name);
        });
      }
      function rt() {
        Ae.forEach((ye) => {
          if (ye.flags & 16777216) {
            const Ke = ss(ye);
            K[Ke] = K[Ke] ?? Iu.OptionalMember;
          }
        });
      }
      function ee(ye, Ke) {
        if (ye.size !== 0)
          for (const pr of Ke) ye.has(pr.name) && (K[ss(pr)] = Iu.MemberDeclaredBySpreadAssignment);
      }
      function q(ye) {
        for (let Ke = ye; Ke < Ae.length; Ke++) {
          const pr = Ae[Ke], Pr = ss(pr), vr = ot?.[Ke], fn = tH(pr, Ps(i), vr, 0, !1);
          if (fn) {
            const Cr = K[Pr] ?? Iu.LocationPriority, { name: et } = fn;
            K[Pr] = Iu.ObjectLiteralProperty(Cr, et);
          }
        }
      }
      function j(ye, Ke, pr) {
        const Pr = /* @__PURE__ */ new Set();
        for (const vr of Ke) {
          if (vr.kind !== 173 && vr.kind !== 175 && vr.kind !== 178 && vr.kind !== 179 || $e(vr) || vf(vr, 2) || es(vr) !== !!(pr & 256)) continue;
          const fn = kS(vr.name);
          fn && Pr.add(fn);
        }
        return ye.filter((vr) => !Pr.has(vr.escapedName) && !!vr.declarations && !(kp(vr) & 2) && !(vr.valueDeclaration && qu(vr.valueDeclaration)));
      }
      function Re(ye, Ke) {
        const pr = /* @__PURE__ */ new Set(), Pr = /* @__PURE__ */ new Set();
        for (const fn of Ke)
          $e(fn) || (fn.kind === 292 ? pr.add(qD(fn.name)) : hk(fn) && Oe(fn, Pr));
        const vr = ye.filter((fn) => !pr.has(fn.escapedName));
        return ee(Pr, vr), vr;
      }
      function $e(ye) {
        return ye.getStart(n) <= a && a <= ye.getEnd();
      }
    }
    function U$e(e, t, n) {
      var i;
      if (e) {
        const { parent: a } = e;
        switch (e.kind) {
          case 19:
          case 28:
            if (bs(a) || rp(a)) return a;
            break;
          case 42:
            return hc(a) ? qn(a.parent, bs) : void 0;
          case 134:
            return qn(a.parent, bs);
          case 80:
            if (e.text === "async" && Nu(e.parent)) return e.parent.parent;
            {
              if (bs(e.parent.parent) && (ih(e.parent) || Nu(e.parent) && Za(n, e.getEnd()).line !== Za(n, t).line)) return e.parent.parent;
              const c = cr(a, ol);
              if (c?.getLastToken(n) === e && bs(c.parent)) return c.parent;
            }
            break;
          default:
            if ((i = a.parent) != null && i.parent && (hc(a.parent) || Dp(a.parent) || ef(a.parent)) && bs(a.parent.parent)) return a.parent.parent;
            if (ih(a) && bs(a.parent)) return a.parent;
            const o = cr(a, ol);
            if (e.kind !== 59 && o?.getLastToken(n) === e && bs(o.parent)) return o.parent;
        }
      }
    }
    function eH(e, t) {
      const n = Tl(e, t);
      return n && e <= n.end && (Jg(n) || z_(n.kind)) ? {
        contextToken: Tl(n.getFullStart(), t, void 0),
        previousToken: n
      } : {
        contextToken: n,
        previousToken: n
      };
    }
    function L4e(e, t, n, i) {
      const a = t.isPackageJsonImport ? i.getPackageJsonAutoImportProvider() : n, o = a.getTypeChecker(), c = t.ambientModuleName ? o.tryFindAmbientModule(t.ambientModuleName) : t.fileName ? o.getMergedSymbol(E.checkDefined(a.getSourceFile(t.fileName)).symbol) : void 0;
      if (!c) return;
      let _ = t.exportName === "export=" ? o.resolveExternalModuleSymbol(c) : o.tryGetMemberInModuleExportsAndProperties(t.exportName, c);
      if (_)
        return _ = t.exportName === "default" && ED(_) || _, {
          symbol: _,
          origin: I$e(t, e, c)
        };
    }
    function tH(e, t, n, i, a) {
      if (p$e(n)) return;
      const o = l$e(n) ? n.symbolName : e.name;
      if (o === void 0 || e.flags & 1536 && aA(o.charCodeAt(0)) || vD(e)) return;
      const c = {
        name: o,
        needsConvertPropertyAccess: !1
      };
      if (Y_(o, t, a ? 1 : 0) || e.valueDeclaration && qu(e.valueDeclaration)) return c;
      if (e.flags & 2097152) return {
        name: o,
        needsConvertPropertyAccess: !0
      };
      switch (i) {
        case 3:
          return Tue(n) ? {
            name: n.symbolName,
            needsConvertPropertyAccess: !1
          } : void 0;
        case 0:
          return {
            name: JSON.stringify(o),
            needsConvertPropertyAccess: !1
          };
        case 2:
        case 1:
          return o.charCodeAt(0) === 32 ? void 0 : {
            name: o,
            needsConvertPropertyAccess: !0
          };
        case 5:
        case 4:
          return c;
        default:
          E.assertNever(i);
      }
    }
    var rH = [], M4e = s_(() => {
      const e = [];
      for (let t = 83; t <= 166; t++) e.push({
        name: as(t),
        kind: "keyword",
        kindModifiers: "",
        sortText: Iu.GlobalsOrKeywords
      });
      return e;
    });
    function R4e(e, t) {
      if (!t) return j4e(e);
      const n = e + 8 + 1;
      return rH[n] || (rH[n] = j4e(e).filter((i) => !V$e(oS(i.name))));
    }
    function j4e(e) {
      return rH[e] || (rH[e] = M4e().filter((t) => {
        const n = oS(t.name);
        switch (e) {
          case 0:
            return !1;
          case 1:
            return J4e(n) || n === 138 || n === 144 || n === 156 || n === 145 || n === 128 || Uw(n) && n !== 157;
          case 5:
            return J4e(n);
          case 2:
            return XL(n);
          case 3:
            return B4e(n);
          case 4:
            return $4(n);
          case 6:
            return Uw(n) || n === 87;
          case 7:
            return Uw(n);
          case 8:
            return n === 156;
          default:
            return E.assertNever(e);
        }
      }));
    }
    function V$e(e) {
      switch (e) {
        case 128:
        case 133:
        case 163:
        case 136:
        case 138:
        case 94:
        case 162:
        case 119:
        case 140:
        case 120:
        case 142:
        case 143:
        case 144:
        case 145:
        case 146:
        case 150:
        case 151:
        case 164:
        case 123:
        case 124:
        case 125:
        case 148:
        case 154:
        case 155:
        case 156:
        case 158:
        case 159:
          return !0;
        default:
          return !1;
      }
    }
    function B4e(e) {
      return e === 148;
    }
    function XL(e) {
      switch (e) {
        case 128:
        case 129:
        case 137:
        case 139:
        case 153:
        case 134:
        case 138:
        case 164:
          return !0;
        default:
          return iB(e);
      }
    }
    function J4e(e) {
      return e === 134 || e === 135 || e === 160 || e === 130 || e === 152 || e === 156 || !z5(e) && !XL(e);
    }
    function nH(e) {
      return Fe(e) ? lS(e) ?? 0 : e.kind;
    }
    function q$e(e, t) {
      const n = [];
      if (e) {
        const i = e.getSourceFile(), a = e.parent, o = i.getLineAndCharacterOfPosition(e.end).line, c = i.getLineAndCharacterOfPosition(t).line;
        (ic(a) || tl(a) && a.moduleSpecifier) && e === a.moduleSpecifier && o === c && n.push({
          name: as(132),
          kind: "keyword",
          kindModifiers: "",
          sortText: Iu.GlobalsOrKeywords
        });
      }
      return n;
    }
    function G$e(e, t) {
      return cr(e, (n) => KC(n) && cE(n, t) ? !0 : Hd(n) ? "quit" : !1);
    }
    function iH(e, t, n, i) {
      const a = t && t !== e, o = i.getUnionType(dn(e.flags & 134217728 ? e.types : [e], (d) => !i.getPromisedTypeOfPromise(d))), c = a && !(t.flags & 3) ? i.getUnionType([o, t]) : o, _ = H$e(c, n, i);
      return c.isClass() && z4e(_) ? [] : a ? dn(_, u) : _;
      function u(d) {
        return It(d.declarations) ? _t(d.declarations, (g) => g.parent !== n) : !0;
      }
    }
    function H$e(e, t, n) {
      return e.isUnion() ? n.getAllPossiblePropertiesOfTypes(dn(e.types, (i) => !(i.flags & 12713980 || n.isArrayLikeType(i) || n.isTypeInvalidDueToUnionDiscriminant(i, t) || n.typeHasCallOrConstructSignatures(i) || i.isClass() && z4e(i.getApparentProperties())))) : e.getApparentProperties();
    }
    function z4e(e) {
      return _t(e, (t) => !!(kp(t) & 6));
    }
    function aH(e, t) {
      return e.isUnion() ? E.checkEachDefined(t.getAllPossiblePropertiesOfTypes(e.types), "getAllPossiblePropertiesOfTypes() should all be defined") : E.checkEachDefined(e.getApparentProperties(), "getApparentProperties() should all be defined");
    }
    function $$e(e, t, n, i) {
      switch (n.kind) {
        case 353:
          return qn(n.parent, Gx);
        case 1:
          const a = qn(Wo(ns(n.parent, Pi).statements), Gx);
          if (a && !uo(a, 20, e)) return a;
          break;
        case 81:
          if (qn(n.parent, ga)) return cr(n, Zn);
          break;
        case 80:
          if (lS(n) || ga(n.parent) && n.parent.initializer === n) return;
          if (sH(n)) return cr(n, Gx);
      }
      if (t) {
        if (n.kind === 137 || Fe(t) && ga(t.parent) && Zn(n)) return cr(t, Zn);
        switch (t.kind) {
          case 64:
            return;
          case 27:
          case 20:
            return sH(n) && n.parent.name === n ? n.parent.parent : qn(n, Gx);
          case 19:
          case 28:
            return qn(t.parent, Gx);
          default:
            if (Gx(n)) {
              if (Za(e, t.getEnd()).line !== Za(e, i).line) return n;
              const a = Zn(t.parent.parent) ? XL : B4e;
              return a(t.kind) || t.kind === 42 || Fe(t) && a(lS(t) ?? 0) ? t.parent.parent : void 0;
            }
            return;
        }
      }
    }
    function X$e(e) {
      if (!e) return;
      const t = e.parent;
      switch (e.kind) {
        case 19:
          if (C_(t)) return t;
          break;
        case 27:
        case 28:
        case 80:
          if (t.kind === 172 && C_(t.parent)) return t.parent;
          break;
      }
    }
    function QL(e, t) {
      if (!e) return;
      if (ui(e)) {
        const i = t.getTypeArgumentConstraint(e);
        if (i) return i;
      }
      const n = QL(e.parent, t);
      if (n)
        switch (e.kind) {
          case 172:
            return t.getTypeOfPropertyOfContextualType(n, e.symbol.escapedName);
          case 59:
            if (e.parent.kind === 172) return n;
            break;
          case 194:
          case 188:
          case 193:
            return n;
          case 23:
            return t.getElementTypeOfArrayType(n);
        }
    }
    function sH(e) {
      return e.parent && Z7(e.parent) && Gx(e.parent.parent);
    }
    function Q$e(e, t, n, i) {
      switch (t) {
        case ".":
        case "@":
          return !0;
        case '"':
        case "'":
        case "`":
          return !!n && Fse(n) && i === n.getStart(e) + 1;
        case "#":
          return !!n && Oi(n) && !!nu(n);
        case "<":
          return !!n && n.kind === 30 && (!un(n.parent) || W4e(n.parent));
        case "/":
          return !!n && (Xs(n) ? !!_A(n) : n.kind === 44 && Qb(n.parent));
        case " ":
          return !!n && ew(n) && n.parent.kind === 308;
        default:
          return E.assertNever(t);
      }
    }
    function W4e({ left: e }) {
      return Nc(e);
    }
    function Y$e(e, t, n) {
      const i = n.resolveName("self", void 0, 111551, !1);
      if (i && n.getTypeOfSymbolAtLocation(i, t) === e) return !0;
      const a = n.resolveName("global", void 0, 111551, !1);
      if (a && n.getTypeOfSymbolAtLocation(a, t) === e) return !0;
      const o = n.resolveName("globalThis", void 0, 111551, !1);
      return !!(o && n.getTypeOfSymbolAtLocation(o, t) === e);
    }
    function Z$e(e) {
      return !!(e.valueDeclaration && Pu(e.valueDeclaration) & 256 && Zn(e.valueDeclaration.parent));
    }
    function K$e(e, t) {
      const n = t.getContextualType(e);
      if (n) return n;
      const i = dd(e.parent);
      if (un(i) && i.operatorToken.kind === 64 && e === i.left) return t.getTypeAtLocation(i);
      if (dt(i)) return t.getContextualType(i);
    }
    function U4e(e, t) {
      var n, i, a;
      let o, c = !1;
      const _ = u();
      return {
        isKeywordOnlyCompletion: c,
        keywordCompletion: o,
        isNewIdentifierLocation: !!(_ || o === 156),
        isTopLevelTypeOnly: !!((i = (n = qn(_, ic)) == null ? void 0 : n.importClause) != null && i.isTypeOnly) || !!((a = qn(_, bl)) != null && a.isTypeOnly),
        couldBeTypeOnlyImportSpecifier: !!_ && q4e(_, e),
        replacementSpan: eXe(_)
      };
      function u() {
        const d = e.parent;
        if (bl(d)) {
          const g = d.getLastToken(t);
          if (Fe(e) && g !== e) {
            o = 161, c = !0;
            return;
          }
          return o = e.kind === 156 ? void 0 : 156, Nue(d.moduleReference) ? d : void 0;
        }
        if (q4e(d, e) && G4e(d.parent)) return d;
        if (Nm(d) || nh(d)) {
          if (!d.parent.isTypeOnly && (e.kind === 19 || e.kind === 102 || e.kind === 28) && (o = 156), G4e(d)) if (e.kind === 20 || e.kind === 80)
            c = !0, o = 161;
          else return d.parent.parent;
          return;
        }
        if (tl(d) && e.kind === 42 || Pp(d) && e.kind === 20) {
          c = !0, o = 161;
          return;
        }
        if (ew(e) && Pi(d))
          return o = 156, e;
        if (ew(e) && ic(d))
          return o = 156, Nue(d.moduleSpecifier) ? d : void 0;
      }
    }
    function eXe(e) {
      var t;
      if (!e) return;
      const n = cr(e, _f(ic, bl, Fm)) ?? e, i = n.getSourceFile();
      if (DS(n, i)) return P_(n, i);
      E.assert(n.kind !== 102 && n.kind !== 277);
      const a = n.kind === 273 || n.kind === 352 ? V4e((t = n.importClause) == null ? void 0 : t.namedBindings) ?? n.moduleSpecifier : n.moduleReference, o = {
        pos: n.getFirstToken().getStart(),
        end: a.pos
      };
      if (DS(o, i)) return V0(o);
    }
    function V4e(e) {
      var t;
      return xr((t = qn(e, Nm)) == null ? void 0 : t.elements, (n) => {
        var i;
        return !n.propertyName && Jx(n.name.text) && ((i = Tl(n.name.pos, e.getSourceFile(), e)) == null ? void 0 : i.kind) !== 28;
      });
    }
    function q4e(e, t) {
      return p_(e) && (e.isTypeOnly || t === e.name && eL(t));
    }
    function G4e(e) {
      if (!Nue(e.parent.parent.moduleSpecifier) || e.parent.name) return !1;
      if (Nm(e)) {
        const t = V4e(e);
        return (t ? e.elements.indexOf(t) : e.elements.length) < 2;
      }
      return !0;
    }
    function Nue(e) {
      var t;
      return Nc(e) ? !0 : !((t = qn(qh(e) ? e.expression : e, Xs)) != null && t.text);
    }
    function tXe(e, t) {
      if (!e) return;
      let n = cr(e, (i) => Ib(i) || H4e(i) || Ja(i) ? "quit" : (Fi(i) || $o(i)) && !s1(i.parent));
      return n || (n = cr(t, (i) => Ib(i) || H4e(i) || Ja(i) ? "quit" : ci(i))), n;
    }
    function rXe(e) {
      if (!e) return !1;
      let t = e, n = e.parent;
      for (; n; ) {
        if ($o(n)) return n.default === t || t.kind === 64;
        t = n, n = n.parent;
      }
      return !1;
    }
    function H4e(e) {
      return e.parent && Bo(e.parent) && (e.parent.body === e || e.kind === 39);
    }
    function Iue(e, t, n = /* @__PURE__ */ new Set()) {
      return i(e) || i(mu(e.exportSymbol || e, t));
      function i(a) {
        return !!(a.flags & 788968) || t.isUnknownSymbol(a) || !!(a.flags & 1536) && Yp(n, a) && t.getExportsOfModule(a).some((o) => Iue(o, t, n));
      }
    }
    function nXe(e, t) {
      const n = mu(e, t).declarations;
      return !!It(n) && hr(n, gL);
    }
    function $4e(e, t) {
      if (t.length === 0) return !0;
      let n = !1, i, a = 0;
      const o = e.length;
      for (let c = 0; c < o; c++) {
        const _ = e.charCodeAt(c), u = t.charCodeAt(a);
        if ((_ === u || _ === iXe(u)) && (n || (n = i === void 0 || 97 <= i && i <= 122 && 65 <= _ && _ <= 90 || i === 95 && _ !== 95), n && a++, a === t.length))
          return !0;
        i = _;
      }
      return !1;
    }
    function iXe(e) {
      return 97 <= e && e <= 122 ? e - 32 : e;
    }
    function aXe(e) {
      return e === "abstract" || e === "async" || e === "await" || e === "declare" || e === "module" || e === "namespace" || e === "type" || e === "satisfies" || e === "as";
    }
    var oH = {};
    gi(oH, {
      getStringLiteralCompletionDetails: () => cXe,
      getStringLiteralCompletions: () => sXe
    });
    var X4e = {
      directory: 0,
      script: 1,
      "external module name": 2
    };
    function Oue() {
      const e = /* @__PURE__ */ new Map();
      function t(n) {
        const i = e.get(n.name);
        (!i || X4e[i.kind] < X4e[n.kind]) && e.set(n.name, n);
      }
      return {
        add: t,
        has: e.has.bind(e),
        values: e.values.bind(e)
      };
    }
    function sXe(e, t, n, i, a, o, c, _, u) {
      if (hse(e, t)) {
        const d = TXe(e, t, o, a, Bv(o, a));
        return d && Q4e(d);
      }
      if (Ok(e, t, n))
        return !n || !Xs(n) ? void 0 : oXe(Z4e(e, n, t, o, a, _), n, e, a, o, c, i, _, t, u);
    }
    function oXe(e, t, n, i, a, o, c, _, u, d) {
      if (e === void 0) return;
      const g = eq(t, u);
      switch (e.kind) {
        case 0:
          return Q4e(e.paths);
        case 1: {
          const h = VR();
          return Due(e.symbols, h, t, t, n, u, n, i, a, 99, o, 4, _, c, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, d), {
            isGlobalCompletion: !1,
            isMemberCompletion: !0,
            isNewIdentifierLocation: e.hasIndexSignature,
            optionalReplacementSpan: g,
            entries: h,
            defaultCommitCharacters: rT(e.hasIndexSignature)
          };
        }
        case 2: {
          const h = t.kind === 15 ? 96 : ta(uc(t), "'") ? 39 : 34, S = e.types.map((T) => ({
            name: dg(T.value, h),
            kindModifiers: "",
            kind: "string",
            sortText: Iu.LocationPriority,
            replacementSpan: KV(t, u),
            commitCharacters: []
          }));
          return {
            isGlobalCompletion: !1,
            isMemberCompletion: !1,
            isNewIdentifierLocation: e.isNewIdentifier,
            optionalReplacementSpan: g,
            entries: S,
            defaultCommitCharacters: rT(e.isNewIdentifier)
          };
        }
        default:
          return E.assertNever(e);
      }
    }
    function cXe(e, t, n, i, a, o, c, _) {
      if (!i || !Xs(i)) return;
      const u = Z4e(t, i, n, a, o, _);
      return u && lXe(e, i, u, t, a.getTypeChecker(), c);
    }
    function lXe(e, t, n, i, a, o) {
      switch (n.kind) {
        case 0: {
          const c = xr(n.paths, (_) => _.name === e);
          return c && $L(e, Y4e(c.extension), c.kind, [sp(e)]);
        }
        case 1: {
          const c = xr(n.symbols, (_) => _.name === e);
          return c && Pue(c, c.name, a, i, t, o);
        }
        case 2:
          return xr(n.types, (c) => c.value === e) ? $L(e, "", "string", [sp(e)]) : void 0;
        default:
          return E.assertNever(n);
      }
    }
    function Q4e(e) {
      return {
        isGlobalCompletion: !1,
        isMemberCompletion: !1,
        isNewIdentifierLocation: !0,
        entries: e.map(({ name: i, kind: a, span: o, extension: c }) => ({
          name: i,
          kind: a,
          kindModifiers: Y4e(c),
          sortText: Iu.LocationPriority,
          replacementSpan: o
        })),
        defaultCommitCharacters: rT(!0)
      };
    }
    function Y4e(e) {
      switch (e) {
        case ".d.ts":
          return ".d.ts";
        case ".js":
          return ".js";
        case ".json":
          return ".json";
        case ".jsx":
          return ".jsx";
        case ".ts":
          return ".ts";
        case ".tsx":
          return ".tsx";
        case ".d.mts":
          return ".d.mts";
        case ".mjs":
          return ".mjs";
        case ".mts":
          return ".mts";
        case ".d.cts":
          return ".d.cts";
        case ".cjs":
          return ".cjs";
        case ".cts":
          return ".cts";
        case ".tsbuildinfo":
          return E.fail("Extension .tsbuildinfo is unsupported.");
        case void 0:
          return "";
        default:
          return E.assertNever(e);
      }
    }
    function Z4e(e, t, n, i, a, o) {
      const c = i.getTypeChecker(), _ = Fue(t.parent);
      switch (_.kind) {
        case 202: {
          const M = Fue(_.parent);
          return M.kind === 206 ? {
            kind: 0,
            paths: rDe(e, t, i, a, o)
          } : u(M);
        }
        case 304:
          if (bs(_.parent) && _.name === t) return fXe(c, _.parent);
          if (cr(_.parent, Wy)) {
            const M = /* @__PURE__ */ new Set();
            return K4e(zi(cP(c.getContextualType(t, 0), M), cP(c.getContextualType(t, 4), M)));
          }
          return d(0);
        case 213: {
          const { expression: M, argumentExpression: R } = _;
          return t === Gs(R) ? eDe(c.getTypeAtLocation(M)) : void 0;
        }
        case 214:
        case 215:
        case 292:
          if (!wXe(t) && !B_(_)) {
            const M = QI.getArgumentInfoForCompletions(_.kind === 292 ? _.parent : t, n, e, c);
            return M && _Xe(M.invocation, t, M, c) || d(0);
          }
        case 273:
        case 279:
        case 284:
        case 352:
          return {
            kind: 0,
            paths: rDe(e, t, i, a, o)
          };
        case 297:
          const g = vL(c, _.parent.clauses), h = d();
          return h ? {
            kind: 2,
            types: h.types.filter((M) => !g.hasValue(M.value)),
            isNewIdentifier: !1
          } : void 0;
        case 277:
        case 282:
          const S = _;
          if (S.propertyName && t !== S.propertyName) return;
          const T = S.parent, { moduleSpecifier: k } = T.kind === 276 ? T.parent.parent : T.parent;
          if (!k) return;
          const D = c.getSymbolAtLocation(k);
          if (!D) return;
          const P = c.getExportsAndPropertiesOfModule(D), N = new Set(T.elements.map((M) => Ab(M.propertyName || M.name)));
          return {
            kind: 1,
            symbols: P.filter((M) => M.escapedName !== "default" && !N.has(M.escapedName)),
            hasIndexSignature: !1
          };
        case 227:
          if (_.operatorToken.kind === 103) {
            const M = c.getTypeAtLocation(_.right);
            return {
              kind: 1,
              symbols: (M.isUnion() ? c.getAllPossiblePropertiesOfTypes(M.types) : M.getApparentProperties()).filter((R) => !R.valueDeclaration || !qu(R.valueDeclaration)),
              hasIndexSignature: !1
            };
          }
          return d(0);
        default:
          return d() || d(0);
      }
      function u(g) {
        switch (g.kind) {
          case 214:
          case 234:
          case 287:
          case 286:
          case 215:
          case 216:
          case 184: {
            const T = cr(_, (k) => k.parent === g);
            return T ? {
              kind: 2,
              types: cP(c.getTypeArgumentConstraint(T)),
              isNewIdentifier: !1
            } : void 0;
          }
          case 200:
            const { indexType: h, objectType: S } = g;
            return cE(h, n) ? eDe(c.getTypeFromTypeNode(S)) : void 0;
          case 172:
            return {
              kind: 2,
              types: cP(QL(g, c)),
              isNewIdentifier: !1
            };
          case 193: {
            const T = u(Fue(g.parent));
            if (!T) return;
            const k = uXe(g, _);
            return T.kind === 1 ? {
              kind: 1,
              symbols: T.symbols.filter((D) => !Gi(k, D.name)),
              hasIndexSignature: T.hasIndexSignature
            } : {
              kind: 2,
              types: T.types.filter((D) => !Gi(k, D.value)),
              isNewIdentifier: !1
            };
          }
          default:
            return;
        }
      }
      function d(g = 4) {
        return K4e(cP(cL(t, c, g)));
      }
    }
    function K4e(e) {
      return e.length ? {
        kind: 2,
        types: e,
        isNewIdentifier: !1
      } : void 0;
    }
    function Fue(e) {
      switch (e.kind) {
        case 197:
          return gA(e);
        case 218:
          return dd(e);
        default:
          return e;
      }
    }
    function uXe(e, t) {
      return Rn(e.types, (n) => n !== t && B0(n) && Ts(n.literal) ? n.literal.text : void 0);
    }
    function _Xe(e, t, n, i) {
      let a = !1;
      const o = /* @__PURE__ */ new Set(), c = Gu(e) ? E.checkDefined(cr(t.parent, Om)) : t, _ = ks(i.getCandidateSignaturesForStringLiteralCompletions(e, c), (u) => {
        if (!Qu(u) && n.argumentCount > u.parameters.length) return;
        let d = u.getTypeParameterAtPosition(n.argumentIndex);
        if (Gu(e)) {
          const g = i.getTypeOfPropertyOfType(d, $A(c.name));
          g && (d = g);
        }
        return a = a || !!(d.flags & 32), cP(d, o);
      });
      return It(_) ? {
        kind: 2,
        types: _,
        isNewIdentifier: a
      } : void 0;
    }
    function eDe(e) {
      return e && {
        kind: 1,
        symbols: dn(e.getApparentProperties(), (t) => !(t.valueDeclaration && qu(t.valueDeclaration))),
        hasIndexSignature: bq(e)
      };
    }
    function fXe(e, t) {
      const n = e.getContextualType(t);
      if (n)
        return {
          kind: 1,
          symbols: iH(n, e.getContextualType(t, 4), t, e),
          hasIndexSignature: bq(n)
        };
    }
    function cP(e, t = /* @__PURE__ */ new Set()) {
      return e ? (e = nq(e), e.isUnion() ? ks(e.types, (n) => cP(n, t)) : e.isStringLiteral() && !(e.flags & 32768) && Yp(t, e.value) ? [e] : Te) : Te;
    }
    function lP(e, t, n) {
      return {
        name: e,
        kind: t,
        extension: n
      };
    }
    function Lue(e) {
      return lP(e, "directory", void 0);
    }
    function tDe(e, t, n) {
      const i = kXe(e, t), a = e.length === 0 ? void 0 : du(t, e.length);
      return n.map(({ name: o, kind: c, extension: _ }) => o.includes(Co) || o.includes(I7) ? {
        name: o,
        kind: c,
        extension: _,
        span: a
      } : {
        name: o,
        kind: c,
        extension: _,
        span: i
      });
    }
    function rDe(e, t, n, i, a) {
      return tDe(t.text, t.getStart(e) + 1, pXe(e, t, n, i, a));
    }
    function pXe(e, t, n, i, a) {
      const o = ru(t.text), c = Xs(t) ? n.getModeForUsageLocation(e, t) : void 0, _ = e.path, u = Xn(_), d = n.getCompilerOptions(), g = n.getTypeChecker(), h = Bv(n, i), S = Mue(d, 1, e, g, a, c);
      return CXe(o) || !d.baseUrl && !d.paths && (pf(o) || UY(o)) ? dXe(o, u, n, i, h, _, S) : yXe(o, u, c, n, i, h, S);
    }
    function Mue(e, t, n, i, a, o) {
      return {
        extensionsToSearch: Rf(mXe(e, i)),
        referenceKind: t,
        importingSourceFile: n,
        endingPreference: a?.importModuleSpecifierEnding,
        resolutionMode: o
      };
    }
    function dXe(e, t, n, i, a, o, c) {
      const _ = n.getCompilerOptions();
      return _.rootDirs ? hXe(_.rootDirs, e, t, c, n, i, a, o) : ma(VI(e, t, c, n, i, a, !0, o).values());
    }
    function mXe(e, t) {
      const n = t ? Rn(t.getAmbientModules(), (a) => {
        const o = a.name.slice(1, -1);
        if (!(!o.startsWith("*.") || o.includes("/")))
          return o.slice(1);
      }) : [], i = [...LD(e), n];
      return tL(Hu(e)) ? WA(e, i) : i;
    }
    function gXe(e, t, n, i) {
      e = e.map((o) => El(us(pf(o) ? o : jn(t, o))));
      const a = Hn(e, (o) => vp(o, n, t, i) ? n.substr(o.length) : void 0);
      return Z1([...e.map((o) => jn(o, a)), n].map((o) => T0(o)), nS, Du);
    }
    function hXe(e, t, n, i, a, o, c, _) {
      return Z1(ks(gXe(e, a.getCompilerOptions().project || o.getCurrentDirectory(), n, !(o.useCaseSensitiveFileNames && o.useCaseSensitiveFileNames())), (u) => ma(VI(t, u, i, a, o, c, !0, _).values())), (u, d) => u.name === d.name && u.kind === d.kind && u.extension === d.extension);
    }
    function VI(e, t, n, i, a, o, c, _, u = Oue()) {
      var d;
      e === void 0 && (e = ""), e = ru(e), Oy(e) || (e = Xn(e)), e === "" && (e = "." + Co), e = El(e);
      const g = Fy(t, e), h = Oy(g) ? g : Xn(g);
      if (!c) {
        const D = jse(h, a);
        if (D) {
          const P = y6(D, a).typesVersions;
          if (typeof P == "object") {
            const N = (d = FF(P)) == null ? void 0 : d.paths;
            if (N) {
              const M = Xn(D);
              if (iDe(u, g.slice(El(M).length), M, n, i, a, o, N)) return u;
            }
          }
        }
      }
      const S = !(a.useCaseSensitiveFileNames && a.useCaseSensitiveFileNames());
      if (!fL(a, h)) return u;
      const T = xq(a, h, n.extensionsToSearch, void 0, ["./*"]);
      if (T) for (let D of T) {
        if (D = us(D), _ && Rh(D, _, t, S) === 0) continue;
        const { name: P, extension: N } = nDe(nl(D), i, n, !1);
        u.add(lP(P, "script", N));
      }
      const k = _L(a, h);
      if (k) for (const D of k) {
        const P = nl(us(D));
        P !== "@types" && u.add(Lue(P));
      }
      return u;
    }
    function nDe(e, t, n, i) {
      const a = $h.tryGetRealFileNameForNonJsDeclarationFileName(e);
      if (a) return {
        name: a,
        extension: Kg(a)
      };
      if (n.referenceKind === 0) return {
        name: e,
        extension: Kg(e)
      };
      let o = $h.getModuleSpecifierPreferences({ importModuleSpecifierEnding: n.endingPreference }, t, t.getCompilerOptions(), n.importingSourceFile).getAllowedEndingsInPreferredOrder(n.resolutionMode);
      if (i && (o = o.filter((_) => _ !== 0 && _ !== 1)), o[0] === 3) {
        if (jc(e, zA)) return {
          name: e,
          extension: Kg(e)
        };
        const _ = $h.tryGetJSExtensionForFile(e, t.getCompilerOptions());
        return _ ? {
          name: F0(e, _),
          extension: _
        } : {
          name: e,
          extension: Kg(e)
        };
      }
      if (!i && (o[0] === 0 || o[0] === 1) && jc(e, [
        ".js",
        ".jsx",
        ".ts",
        ".tsx",
        ".d.ts"
      ])) return {
        name: __(e),
        extension: Kg(e)
      };
      const c = $h.tryGetJSExtensionForFile(e, t.getCompilerOptions());
      return c ? {
        name: F0(e, c),
        extension: c
      } : {
        name: e,
        extension: Kg(e)
      };
    }
    function iDe(e, t, n, i, a, o, c, _) {
      const u = (g) => _[g], d = (g, h) => {
        const S = Zx(g), T = Zx(h), k = typeof S == "object" ? S.prefix.length : g.length;
        return Fo(typeof T == "object" ? T.prefix.length : h.length, k);
      };
      return aDe(e, !1, !1, t, n, i, a, o, c, mm(_), u, d);
    }
    function aDe(e, t, n, i, a, o, c, _, u, d, g, h) {
      let S = [], T;
      for (const k of d) {
        if (k === ".") continue;
        const D = k.replace(/^\.\//, "") + ((t || n) && Uo(k, "/") ? "*" : ""), P = g(k);
        if (P) {
          const N = Zx(D);
          if (!N) continue;
          const M = typeof N == "object" && T7(N, i);
          M && (T === void 0 || h(D, T) === -1) && (T = D, S = S.filter((R) => !R.matchedPattern)), (typeof N == "string" || T === void 0 || h(D, T) !== 1) && S.push({
            matchedPattern: M,
            results: vXe(D, P, i, a, o, t, n, c, _, u).map(({ name: R, kind: G, extension: L }) => lP(R, G, L))
          });
        }
      }
      return S.forEach((k) => k.results.forEach((D) => e.add(D))), T !== void 0;
    }
    function yXe(e, t, n, i, a, o, c) {
      const _ = i.getTypeChecker(), u = i.getCompilerOptions(), { baseUrl: d, paths: g } = u, h = Oue(), S = Hu(u);
      d && VI(e, us(jn(a.getCurrentDirectory(), d)), c, i, a, o, !1, void 0, h), g && iDe(h, e, X5(u, a), c, i, a, o, g);
      const T = oDe(e);
      for (const D of SXe(e, T, _)) h.add(lP(D, "external module name", void 0));
      if (uDe(i, a, o, t, T, c, h), tL(S)) {
        let D = !1;
        if (T === void 0) for (const P of xXe(a, t)) {
          const N = lP(P, "external module name", void 0);
          h.has(N.name) || (D = !0, h.add(N));
        }
        if (!D) {
          const P = MA(u), N = RA(u);
          let M = !1;
          const R = (L) => {
            if (N && !M) {
              const z = jn(L, "package.json");
              (M = Yw(a, z)) && k(y6(z, a).imports, e, L, !1, !0);
            }
          };
          let G = (L) => {
            const z = jn(L, "node_modules");
            fL(a, z) && VI(e, z, c, i, a, o, !1, void 0, h), R(L);
          };
          if (T && P) {
            const L = G;
            G = (z) => {
              const H = wu(e);
              H.shift();
              let U = H.shift();
              if (!U) return L(z);
              if (ta(U, "@")) {
                const W = H.shift();
                if (!W) return L(z);
                U = jn(U, W);
              }
              if (N && ta(U, "#")) return R(z);
              const pe = jn(z, "node_modules", U), ie = jn(pe, "package.json");
              if (Yw(a, ie)) {
                const W = y6(ie, a), Q = H.join("/") + (H.length && Oy(e) ? "/" : "");
                if (k(W.exports, Q, pe, !0, !1)) return;
              }
              return L(z);
            };
          }
          hg(a, t, G);
        }
      }
      return ma(h.values());
      function k(D, P, N, M, R) {
        if (typeof D != "object" || D === null) return D !== void 0;
        const G = mm(D), L = f1(u, n);
        return aDe(h, M, R, P, N, c, i, a, o, G, (z) => {
          const H = sDe(D[z], L);
          if (H !== void 0)
            return dx(Uo(z, "/") && Uo(H, "/") ? H + "*" : H);
        }, RW), !0;
      }
    }
    function sDe(e, t) {
      if (typeof e == "string") return e;
      if (e && typeof e == "object" && !da(e)) {
        for (const n in e) if (n === "default" || t.includes(n) || NN(t, n)) {
          const i = e[n];
          return sDe(i, t);
        }
      }
    }
    function oDe(e) {
      return Rue(e) ? Oy(e) ? e : Xn(e) : void 0;
    }
    function vXe(e, t, n, i, a, o, c, _, u, d) {
      const g = Zx(e);
      if (!g) return Te;
      if (typeof g == "string") return S(e, "script");
      const h = sj(n, g.prefix);
      if (h === void 0) return Uo(e, "/*") ? S(g.prefix, "directory") : ks(t, (T) => {
        var k;
        return (k = cDe("", i, T, a, o, c, _, u, d)) == null ? void 0 : k.map(({ name: D, ...P }) => ({
          name: g.prefix + D + g.suffix,
          ...P
        }));
      });
      return ks(t, (T) => cDe(h, i, T, a, o, c, _, u, d));
      function S(T, k) {
        return ta(T, n) ? [{
          name: T0(T),
          kind: k,
          extension: void 0
        }] : Te;
      }
    }
    function cDe(e, t, n, i, a, o, c, _, u) {
      if (!_.readDirectory) return;
      const d = Zx(n);
      if (d === void 0 || Ta(d)) return;
      const g = Fy(d.prefix), h = Oy(d.prefix) ? g : Xn(g), S = Oy(d.prefix) ? "" : nl(g), T = Rue(e), k = T ? Oy(e) ? e : Xn(e) : void 0, D = () => u.getCommonSourceDirectory(), P = !CS(u), N = c.getCompilerOptions().outDir, M = c.getCompilerOptions().declarationDir, R = us(jn(t, T ? jn(h, S + k) : h)), G = o && N && gJ(R, P, N, D), L = o && M && gJ(R, P, M, D), z = us(d.suffix), H = z && $5("_" + z), U = z ? mJ("_" + z) : void 0, pe = [
        H && F0(z, H),
        ...U ? U.map((de) => F0(z, de)) : [],
        z
      ].filter(Ta), ie = z ? pe.map((de) => "**/*" + de) : ["./*"], W = (a || o) && Uo(n, "/*");
      let Q = se(R);
      return G && (Q = zi(Q, se(G))), L && (Q = zi(Q, se(L))), z || (Q = zi(Q, he(R)), G && (Q = zi(Q, he(G))), L && (Q = zi(Q, he(L)))), Q;
      function se(de) {
        const $ = T ? de : El(de) + S;
        return Rn(xq(_, de, i.extensionsToSearch, void 0, ie), (Se) => {
          const Be = fe(Se, $);
          if (Be) {
            if (Rue(Be)) return Lue(wu(lDe(Be))[1]);
            const { name: ce, extension: oe } = nDe(Be, c, i, W);
            return lP(ce, "script", oe);
          }
        });
      }
      function he(de) {
        return Rn(_L(_, de), ($) => $ === "node_modules" ? void 0 : Lue($));
      }
      function fe(de, $) {
        return Hn(pe, (Se) => {
          const Be = bXe(us(de), $, Se);
          return Be === void 0 ? void 0 : lDe(Be);
        });
      }
    }
    function bXe(e, t, n) {
      return ta(e, t) && Uo(e, n) ? e.slice(t.length, e.length - n.length) : void 0;
    }
    function lDe(e) {
      return e[0] === Co ? e.slice(1) : e;
    }
    function SXe(e, t, n) {
      const i = n.getAmbientModules().map((a) => Qp(a.name)).filter((a) => ta(a, e) && !a.includes("*"));
      if (t !== void 0) {
        const a = El(t);
        return i.map((o) => C4(o, a));
      }
      return i;
    }
    function TXe(e, t, n, i, a) {
      const o = n.getCompilerOptions(), c = xi(e, t), _ = jg(e.text, c.pos), u = _ && xr(_, (P) => t >= P.pos && t <= P.end);
      if (!u) return;
      const d = e.text.slice(u.pos, t), g = EXe.exec(d);
      if (!g) return;
      const [, h, S, T] = g, k = Xn(e.path), D = S === "path" ? VI(T, k, Mue(o, 0, e), n, i, a, !0, e.path) : S === "types" ? uDe(n, i, a, k, oDe(T), Mue(o, 1, e)) : E.fail();
      return tDe(T, u.pos + h.length, ma(D.values()));
    }
    function uDe(e, t, n, i, a, o, c = Oue()) {
      const _ = e.getCompilerOptions(), u = /* @__PURE__ */ new Map(), d = pL(() => mw(_, t)) || Te;
      for (const h of d) g(h);
      for (const h of kq(i, t)) g(jn(Xn(h), "node_modules/@types"));
      return c;
      function g(h) {
        if (fL(t, h))
          for (const S of _L(t, h)) {
            const T = IN(S);
            if (!(_.types && !Gi(_.types, T)))
              if (a === void 0)
                u.has(T) || (c.add(lP(T, "external module name", void 0)), u.set(T, !0));
              else {
                const k = jn(h, S), D = qJ(a, T, Wh(t));
                D !== void 0 && VI(D, k, o, e, t, n, !1, void 0, c);
              }
          }
      }
    }
    function xXe(e, t) {
      if (!e.readFile || !e.fileExists) return Te;
      const n = [];
      for (const i of kq(t, e)) {
        const a = y6(i, e);
        for (const o of DXe) {
          const c = a[o];
          if (c)
            for (const _ in c) po(c, _) && !ta(_, "@types/") && n.push(_);
        }
      }
      return n;
    }
    function kXe(e, t) {
      const n = Math.max(e.lastIndexOf(Co), e.lastIndexOf(I7)), i = n !== -1 ? n + 1 : 0, a = e.length - i;
      return a === 0 || Y_(e.substr(i, a), 99) ? void 0 : du(t + i, a);
    }
    function CXe(e) {
      if (e && e.length >= 2 && e.charCodeAt(0) === 46) {
        const t = e.length >= 3 && e.charCodeAt(1) === 46 ? 2 : 1, n = e.charCodeAt(t);
        return n === 47 || n === 92;
      }
      return !1;
    }
    var EXe = /^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\x03"]*)$/, DXe = [
      "dependencies",
      "devDependencies",
      "peerDependencies",
      "optionalDependencies"
    ];
    function Rue(e) {
      return e.includes(Co);
    }
    function wXe(e) {
      return za(e.parent) && ul(e.parent.arguments) === e && Fe(e.parent.expression) && e.parent.expression.escapedText === "require";
    }
    var Jo = {};
    gi(Jo, {
      Core: () => qk,
      DefinitionKind: () => hDe,
      EntryKind: () => yDe,
      ExportKind: () => _De,
      FindReferencesUse: () => vDe,
      ImportExport: () => fDe,
      createImportTracker: () => jue,
      findModuleReferences: () => pDe,
      findReferenceOrRenameEntries: () => WXe,
      findReferencedSymbols: () => BXe,
      getContextNode: () => nT,
      getExportInfo: () => Bue,
      getImplementationsAtPosition: () => zXe,
      getImportOrExportSymbol: () => gDe,
      getReferenceEntriesForNode: () => SDe,
      isContextWithStartAndEndNode: () => zue,
      isDeclarationOfSymbol: () => EDe,
      isWriteAccessForReference: () => Uue,
      toContextSpan: () => Wue,
      toHighlightSpan: () => XXe,
      toReferenceEntry: () => kDe,
      toRenameLocation: () => VXe
    });
    function jue(e, t, n, i) {
      const a = IXe(e, n, i);
      return (o, c, _) => {
        const { directImports: u, indirectUsers: d } = PXe(e, t, a, c, n, i);
        return {
          indirectUsers: d,
          ...AXe(u, o, c.exportKind, n, _)
        };
      };
    }
    var _De = /* @__PURE__ */ ((e) => (e[e.Named = 0] = "Named", e[e.Default = 1] = "Default", e[e.ExportEquals = 2] = "ExportEquals", e))(_De || {}), fDe = /* @__PURE__ */ ((e) => (e[e.Import = 0] = "Import", e[e.Export = 1] = "Export", e))(fDe || {});
    function PXe(e, t, n, { exportingModuleSymbol: i, exportKind: a }, o, c) {
      const _ = uE(), u = uE(), d = [], g = !!i.globalExports, h = g ? void 0 : [];
      return T(i), {
        directImports: d,
        indirectUsers: S()
      };
      function S() {
        if (g) return e;
        if (i.declarations)
          for (const R of i.declarations) Nb(R) && t.has(R.getSourceFile().fileName) && N(R);
        return h.map(Sr);
      }
      function T(R) {
        const G = M(R);
        if (G) {
          for (const L of G)
            if (_(L))
              switch (c && c.throwIfCancellationRequested(), L.kind) {
                case 214:
                  if (B_(L)) {
                    k(L);
                    break;
                  }
                  if (!g) {
                    const H = L.parent;
                    if (a === 2 && H.kind === 261) {
                      const { name: U } = H;
                      if (U.kind === 80) {
                        d.push(U);
                        break;
                      }
                    }
                  }
                  break;
                case 80:
                  break;
                case 272:
                  P(L, L.name, Qn(L, 32), !1);
                  break;
                case 273:
                case 352:
                  d.push(L);
                  const z = L.importClause && L.importClause.namedBindings;
                  z && z.kind === 275 ? P(L, z.name, !1, !0) : !g && TS(L) && N(YL(L));
                  break;
                case 279:
                  L.exportClause ? L.exportClause.kind === 281 ? N(YL(L), !0) : d.push(L) : T(RXe(L, o));
                  break;
                case 206:
                  !g && L.isTypeOf && !L.qualifier && D(L) && N(L.getSourceFile(), !0), d.push(L);
                  break;
                default:
                  E.failBadSyntaxKind(L, "Unexpected import kind.");
              }
        }
      }
      function k(R) {
        N(cr(R, cH) || R.getSourceFile(), !!D(R, !0));
      }
      function D(R, G = !1) {
        return cr(R, (L) => G && cH(L) ? "quit" : vd(L) && _t(L.modifiers, ck));
      }
      function P(R, G, L, z) {
        if (a === 2)
          z || d.push(R);
        else if (!g) {
          const H = YL(R);
          E.assert(H.kind === 308 || H.kind === 268), L || NXe(H, G, o) ? N(H, !0) : N(H);
        }
      }
      function N(R, G = !1) {
        if (E.assert(!g), !u(R) || (h.push(R), !G)) return;
        const L = o.getMergedSymbol(R.symbol);
        if (!L) return;
        E.assert(!!(L.flags & 1536));
        const z = M(L);
        if (z)
          for (const H of z) Am(H) || N(YL(H), !0);
      }
      function M(R) {
        return n.get(ss(R).toString());
      }
    }
    function AXe(e, t, n, i, a) {
      const o = [], c = [];
      function _(S, T) {
        o.push([S, T]);
      }
      if (e) for (const S of e) u(S);
      return {
        importSearches: o,
        singleReferences: c
      };
      function u(S) {
        if (S.kind === 272) {
          Jue(S) && d(S.name);
          return;
        }
        if (S.kind === 80) {
          d(S);
          return;
        }
        if (S.kind === 206) {
          if (S.qualifier) {
            const D = x_(S.qualifier);
            D.escapedText === kc(t) && c.push(D);
          } else n === 2 && c.push(S.argument.literal);
          return;
        }
        if (S.moduleSpecifier.kind !== 11) return;
        if (S.kind === 279) {
          S.exportClause && Pp(S.exportClause) && g(S.exportClause);
          return;
        }
        const { name: T, namedBindings: k } = S.importClause || {
          name: void 0,
          namedBindings: void 0
        };
        if (k) switch (k.kind) {
          case 275:
            d(k.name);
            break;
          case 276:
            (n === 0 || n === 1) && g(k);
            break;
          default:
            E.assertNever(k);
        }
        T && (n === 1 || n === 2) && (!a || T.escapedText === rL(t)) && _(T, i.getSymbolAtLocation(T));
      }
      function d(S) {
        n === 2 && (!a || h(S.escapedText)) && _(S, i.getSymbolAtLocation(S));
      }
      function g(S) {
        if (S)
          for (const T of S.elements) {
            const { name: k, propertyName: D } = T;
            h(Ab(D || k)) && (D ? (c.push(D), (!a || Ab(k) === t.escapedName) && _(k, i.getSymbolAtLocation(k))) : _(k, T.kind === 282 && T.propertyName ? i.getExportSpecifierLocalTargetSymbol(T) : i.getSymbolAtLocation(k)));
          }
      }
      function h(S) {
        return S === t.escapedName || n !== 0 && S === "default";
      }
    }
    function NXe(e, t, n) {
      const i = n.getSymbolAtLocation(t);
      return !!dDe(e, (a) => {
        if (!tl(a)) return;
        const { exportClause: o, moduleSpecifier: c } = a;
        return !c && o && Pp(o) && o.elements.some((_) => n.getExportSpecifierLocalTargetSymbol(_) === i);
      });
    }
    function pDe(e, t, n) {
      var i;
      const a = [], o = e.getTypeChecker();
      for (const c of t) {
        const _ = n.valueDeclaration;
        if (_?.kind === 308) {
          for (const u of c.referencedFiles) e.getSourceFileFromReference(c, u) === _ && a.push({
            kind: "reference",
            referencingFile: c,
            ref: u
          });
          for (const u of c.typeReferenceDirectives) {
            const d = (i = e.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(u, c)) == null ? void 0 : i.resolvedTypeReferenceDirective;
            d !== void 0 && d.resolvedFileName === _.fileName && a.push({
              kind: "reference",
              referencingFile: c,
              ref: u
            });
          }
        }
        mDe(c, (u, d) => {
          o.getSymbolAtLocation(d) === n && a.push(wo(u) ? {
            kind: "implicit",
            literal: d,
            referencingFile: c
          } : {
            kind: "import",
            literal: d
          });
        });
      }
      return a;
    }
    function IXe(e, t, n) {
      const i = /* @__PURE__ */ new Map();
      for (const a of e)
        n && n.throwIfCancellationRequested(), mDe(a, (o, c) => {
          const _ = t.getSymbolAtLocation(c);
          if (_) {
            const u = ss(_).toString();
            let d = i.get(u);
            d || i.set(u, d = []), d.push(o);
          }
        });
      return i;
    }
    function dDe(e, t) {
      return bt(e.kind === 308 ? e.statements : e.body.statements, (n) => t(n) || cH(n) && bt(n.body && n.body.statements, t));
    }
    function mDe(e, t) {
      if (e.externalModuleIndicator || e.imports !== void 0) for (const n of e.imports) t(fD(n), n);
      else dDe(e, (n) => {
        switch (n.kind) {
          case 279:
          case 273: {
            const i = n;
            i.moduleSpecifier && Ts(i.moduleSpecifier) && t(i, i.moduleSpecifier);
            break;
          }
          case 272: {
            const i = n;
            Jue(i) && t(i, i.moduleReference.expression);
            break;
          }
        }
      });
    }
    function gDe(e, t, n, i) {
      return i ? a() : a() || o();
      function a() {
        var u;
        const { parent: d } = e, g = d.parent;
        if (t.exportSymbol) return d.kind === 212 ? (u = t.declarations) != null && u.some((T) => T === d) && un(g) ? S(g, !1) : void 0 : c(t.exportSymbol, _(d));
        {
          const T = FXe(d, e);
          if (T && Qn(T, 32)) return bl(T) && T.moduleReference === e ? i ? void 0 : {
            kind: 0,
            symbol: n.getSymbolAtLocation(T.name)
          } : c(t, _(T));
          if (gg(d)) return c(t, 0);
          if (Xo(d)) return h(d);
          if (Xo(g)) return h(g);
          if (un(d)) return S(d, !0);
          if (un(g)) return S(g, !0);
          if (WS(d) || jz(d)) return c(t, 0);
        }
        function h(T) {
          if (!T.symbol.parent) return;
          const k = T.isExportEquals ? 2 : 1;
          return {
            kind: 1,
            symbol: t,
            exportInfo: {
              exportingModuleSymbol: T.symbol.parent,
              exportKind: k
            }
          };
        }
        function S(T, k) {
          let D;
          switch (qc(T)) {
            case 1:
              D = 0;
              break;
            case 2:
              D = 2;
              break;
            default:
              return;
          }
          const P = k ? n.getSymbolAtLocation(RJ(ns(T.left, jo))) : t;
          return P && c(P, D);
        }
      }
      function o() {
        if (!LXe(e)) return;
        let u = n.getImmediateAliasedSymbol(t);
        if (!u || (u = MXe(u, n), u.escapedName === "export=" && (u = OXe(u, n), u === void 0)))
          return;
        const d = rL(u);
        if (d === void 0 || d === "default" || d === t.escapedName) return {
          kind: 0,
          symbol: u
        };
      }
      function c(u, d) {
        const g = Bue(u, d, n);
        return g && {
          kind: 1,
          symbol: u,
          exportInfo: g
        };
      }
      function _(u) {
        return Qn(u, 2048) ? 1 : 0;
      }
    }
    function OXe(e, t) {
      var n, i;
      if (e.flags & 2097152) return t.getImmediateAliasedSymbol(e);
      const a = E.checkDefined(e.valueDeclaration);
      if (Xo(a)) return (n = qn(a.expression, jd)) == null ? void 0 : n.symbol;
      if (un(a)) return (i = qn(a.right, jd)) == null ? void 0 : i.symbol;
      if (Pi(a)) return a.symbol;
    }
    function FXe(e, t) {
      const n = ci(e) ? e : Ns(e) ? cS(e) : void 0;
      return n ? e.name !== t || Zb(n.parent) ? void 0 : $c(n.parent.parent) ? n.parent.parent : void 0 : e;
    }
    function LXe(e) {
      const { parent: t } = e;
      switch (t.kind) {
        case 272:
          return t.name === e && Jue(t);
        case 277:
          return !t.propertyName;
        case 274:
        case 275:
          return E.assert(t.name === e), !0;
        case 209:
          return rn(e) && $y(t.parent.parent);
        default:
          return !1;
      }
    }
    function Bue(e, t, n) {
      const i = e.parent;
      if (!i) return;
      const a = n.getMergedSymbol(i);
      return Dx(a) ? {
        exportingModuleSymbol: a,
        exportKind: t
      } : void 0;
    }
    function MXe(e, t) {
      if (e.declarations)
        for (const n of e.declarations) {
          if ($u(n) && !n.propertyName && !n.parent.parent.moduleSpecifier) return t.getExportSpecifierLocalTargetSymbol(n) || e;
          if (Ln(n) && $g(n.expression) && !Oi(n.name)) return t.getSymbolAtLocation(n);
          if (Nu(n) && un(n.parent.parent) && qc(n.parent.parent) === 2) return t.getExportSpecifierLocalTargetSymbol(n.name);
        }
      return e;
    }
    function RXe(e, t) {
      return t.getMergedSymbol(YL(e).symbol);
    }
    function YL(e) {
      if (e.kind === 214 || e.kind === 352) return e.getSourceFile();
      const { parent: t } = e;
      return t.kind === 308 ? t : (E.assert(t.kind === 269), ns(t.parent, cH));
    }
    function cH(e) {
      return e.kind === 268 && e.name.kind === 11;
    }
    function Jue(e) {
      return e.moduleReference.kind === 284 && e.moduleReference.expression.kind === 11;
    }
    var hDe = /* @__PURE__ */ ((e) => (e[e.Symbol = 0] = "Symbol", e[e.Label = 1] = "Label", e[e.Keyword = 2] = "Keyword", e[e.This = 3] = "This", e[e.String = 4] = "String", e[e.TripleSlashReference = 5] = "TripleSlashReference", e))(hDe || {}), yDe = /* @__PURE__ */ ((e) => (e[e.Span = 0] = "Span", e[e.Node = 1] = "Node", e[e.StringLiteral = 2] = "StringLiteral", e[e.SearchedLocalFoundProperty = 3] = "SearchedLocalFoundProperty", e[e.SearchedPropertyFoundLocal = 4] = "SearchedPropertyFoundLocal", e))(yDe || {});
    function Yh(e, t = 1) {
      return {
        kind: t,
        node: e.name || e,
        context: jXe(e)
      };
    }
    function zue(e) {
      return e && e.kind === void 0;
    }
    function jXe(e) {
      if (Jl(e)) return nT(e);
      if (e.parent) {
        if (!Jl(e.parent) && !Xo(e.parent)) {
          if (rn(e)) {
            const n = un(e.parent) ? e.parent : jo(e.parent) && un(e.parent.parent) && e.parent.parent.left === e.parent ? e.parent.parent : void 0;
            if (n && qc(n) !== 0) return nT(n);
          }
          if (qd(e.parent) || Qb(e.parent)) return e.parent.parent;
          if (JS(e.parent) || c1(e.parent) || q4(e.parent)) return e.parent;
          if (Xs(e)) {
            const n = _A(e);
            if (n) {
              const i = cr(n, (a) => Jl(a) || Ei(a) || KC(a));
              return Jl(i) ? nT(i) : i;
            }
          }
          const t = cr(e, _s);
          return t ? nT(t.parent) : void 0;
        }
        if (e.parent.name === e || yc(e.parent) || Xo(e.parent) || (By(e.parent) || Ns(e.parent)) && e.parent.propertyName === e || e.kind === 90 && Qn(e.parent, 2080)) return nT(e.parent);
      }
    }
    function nT(e) {
      if (e)
        switch (e.kind) {
          case 261:
            return !iu(e.parent) || e.parent.declarations.length !== 1 ? e : $c(e.parent.parent) ? e.parent.parent : wb(e.parent.parent) ? nT(e.parent.parent) : e.parent;
          case 209:
            return nT(e.parent.parent);
          case 277:
            return e.parent.parent.parent;
          case 282:
          case 275:
            return e.parent.parent;
          case 274:
          case 281:
            return e.parent;
          case 227:
            return zl(e.parent) ? e.parent : e;
          case 251:
          case 250:
            return {
              start: e.initializer,
              end: e.expression
            };
          case 304:
          case 305:
            return U0(e.parent) ? nT(cr(e.parent, (t) => un(t) || wb(t))) : e;
          case 256:
            return {
              start: xr(e.getChildren(e.getSourceFile()), (t) => t.kind === 109),
              end: e.caseBlock
            };
          default:
            return e;
        }
    }
    function Wue(e, t, n) {
      if (!n) return;
      const i = zue(n) ? KL(n.start, t, n.end) : KL(n, t);
      return i.start !== e.start || i.length !== e.length ? { contextSpan: i } : void 0;
    }
    var vDe = /* @__PURE__ */ ((e) => (e[e.Other = 0] = "Other", e[e.References = 1] = "References", e[e.Rename = 2] = "Rename", e))(vDe || {});
    function BXe(e, t, n, i, a) {
      const o = G_(i, a), c = { use: 1 }, _ = qk.getReferencedSymbolsForNode(a, o, e, n, t, c), u = e.getTypeChecker(), d = qk.getAdjustedNode(o, c), g = JXe(d) ? u.getSymbolAtLocation(d) : void 0;
      return !_ || !_.length ? void 0 : Rn(_, ({ definition: h, references: S }) => h && {
        definition: u.runWithCancellationToken(t, (T) => UXe(h, T, o)),
        references: S.map((T) => qXe(T, g))
      });
    }
    function JXe(e) {
      return e.kind === 90 || !!dD(e) || hA(e) || e.kind === 137 && yc(e.parent);
    }
    function zXe(e, t, n, i, a) {
      const o = G_(i, a);
      let c;
      const _ = bDe(e, t, n, o, a);
      if (o.parent.kind === 212 || o.parent.kind === 209 || o.parent.kind === 213 || o.kind === 108) c = _ && [..._];
      else if (_) {
        const d = c3(_), g = /* @__PURE__ */ new Set();
        for (; !d.isEmpty(); ) {
          const h = d.dequeue();
          if (!Yp(g, Hs(h.node))) continue;
          c = kr(c, h);
          const S = bDe(e, t, n, h.node, h.node.pos);
          S && d.enqueue(...S);
        }
      }
      const u = e.getTypeChecker();
      return or(c, (d) => HXe(d, u));
    }
    function bDe(e, t, n, i, a) {
      if (i.kind === 308) return;
      const o = e.getTypeChecker();
      if (i.parent.kind === 305) {
        const c = [];
        return qk.getReferenceEntriesForShorthandPropertyAssignment(i, o, (_) => c.push(Yh(_))), c;
      } else if (i.kind === 108 || Z_(i.parent)) {
        const c = o.getSymbolAtLocation(i);
        return c.valueDeclaration && [Yh(c.valueDeclaration)];
      } else return SDe(a, i, e, n, t, {
        implementations: !0,
        use: 1
      });
    }
    function WXe(e, t, n, i, a, o, c) {
      return or(TDe(qk.getReferencedSymbolsForNode(a, i, e, n, t, o)), (_) => c(_, i, e.getTypeChecker()));
    }
    function SDe(e, t, n, i, a, o = {}, c = new Set(i.map((_) => _.fileName))) {
      return TDe(qk.getReferencedSymbolsForNode(e, t, n, i, a, o, c));
    }
    function TDe(e) {
      return e && ks(e, (t) => t.references);
    }
    function UXe(e, t, n) {
      const { sourceFile: i, textSpan: a, name: o, kind: c, displayParts: _, context: u } = (() => {
        switch (e.type) {
          case 0: {
            const { symbol: d } = e, { displayParts: g, kind: h } = xDe(d, t, n), S = g.map((k) => k.text).join(""), T = d.declarations && ul(d.declarations);
            return {
              ...ZL(T ? va(T) || T : n),
              name: S,
              kind: h,
              displayParts: g,
              context: nT(T)
            };
          }
          case 1: {
            const { node: d } = e;
            return {
              ...ZL(d),
              name: d.text,
              kind: "label",
              displayParts: [tf(d.text, 17)]
            };
          }
          case 2: {
            const { node: d } = e, g = as(d.kind);
            return {
              ...ZL(d),
              name: g,
              kind: "keyword",
              displayParts: [{
                text: g,
                kind: "keyword"
              }]
            };
          }
          case 3: {
            const { node: d } = e, g = t.getSymbolAtLocation(d), h = g && H0.getSymbolDisplayPartsDocumentationAndSymbolKind(t, g, d.getSourceFile(), ZS(d), d).displayParts || [sp("this")];
            return {
              ...ZL(d),
              name: "this",
              kind: "var",
              displayParts: h
            };
          }
          case 4: {
            const { node: d } = e;
            return {
              ...ZL(d),
              name: d.text,
              kind: "var",
              displayParts: [tf(uc(d), 8)]
            };
          }
          case 5:
            return {
              textSpan: V0(e.reference),
              sourceFile: e.file,
              name: e.reference.fileName,
              kind: "string",
              displayParts: [tf(`"${e.reference.fileName}"`, 8)]
            };
          default:
            return E.assertNever(e);
        }
      })();
      return {
        containerKind: "",
        containerName: "",
        fileName: i.fileName,
        kind: c,
        name: o,
        textSpan: a,
        displayParts: _,
        ...Wue(a, i, u)
      };
    }
    function ZL(e) {
      const t = e.getSourceFile();
      return {
        sourceFile: t,
        textSpan: KL(_s(e) ? e.expression : e, t)
      };
    }
    function xDe(e, t, n) {
      const i = qk.getIntersectingMeaningFromDeclarations(n, e), a = e.declarations && ul(e.declarations) || n, { displayParts: o, symbolKind: c } = H0.getSymbolDisplayPartsDocumentationAndSymbolKind(t, e, a.getSourceFile(), a, a, i);
      return {
        displayParts: o,
        kind: c
      };
    }
    function VXe(e, t, n, i, a) {
      return {
        ...lH(e),
        ...i && GXe(e, t, n, a)
      };
    }
    function qXe(e, t) {
      const n = kDe(e);
      return t ? {
        ...n,
        isDefinition: e.kind !== 0 && EDe(e.node, t)
      } : n;
    }
    function kDe(e) {
      const t = lH(e);
      if (e.kind === 0) return {
        ...t,
        isWriteAccess: !1
      };
      const { kind: n, node: i } = e;
      return {
        ...t,
        isWriteAccess: Uue(i),
        isInString: n === 2 ? !0 : void 0
      };
    }
    function lH(e) {
      if (e.kind === 0) return {
        textSpan: e.textSpan,
        fileName: e.fileName
      };
      {
        const t = e.node.getSourceFile(), n = KL(e.node, t);
        return {
          textSpan: n,
          fileName: t.fileName,
          ...Wue(n, t, e.context)
        };
      }
    }
    function GXe(e, t, n, i) {
      if (e.kind !== 0 && (Fe(t) || Xs(t))) {
        const { node: a, kind: o } = e, c = a.parent, _ = t.text, u = Nu(c);
        if (u || gI(c) && c.name === a && c.dotDotDotToken === void 0) {
          const d = { prefixText: _ + ": " }, g = { suffixText: ": " + _ };
          if (o === 3) return d;
          if (o === 4) return g;
          if (u) {
            const h = c.parent;
            return bs(h) && un(h.parent) && $g(h.parent.left) ? d : g;
          } else return d;
        } else {
          if (p_(c) && !c.propertyName) return Gi(($u(t.parent) ? n.getExportSpecifierLocalTargetSymbol(t.parent) : n.getSymbolAtLocation(t)).declarations, c) ? { prefixText: _ + " as " } : td;
          if ($u(c) && !c.propertyName) return t === e.node || n.getSymbolAtLocation(t) === n.getSymbolAtLocation(e.node) ? { prefixText: _ + " as " } : { suffixText: " as " + _ };
        }
      }
      if (e.kind !== 0 && V_(e.node) && jo(e.node.parent)) {
        const a = oq(i);
        return {
          prefixText: a,
          suffixText: a
        };
      }
      return td;
    }
    function HXe(e, t) {
      const n = lH(e);
      if (e.kind !== 0) {
        const { node: i } = e;
        return {
          ...n,
          ...$Xe(i, t)
        };
      } else return {
        ...n,
        kind: "",
        displayParts: []
      };
    }
    function $Xe(e, t) {
      const n = t.getSymbolAtLocation(Jl(e) && e.name ? e.name : e);
      return n ? xDe(n, t, e) : e.kind === 211 ? {
        kind: "interface",
        displayParts: [
          Yu(21),
          sp("object literal"),
          Yu(22)
        ]
      } : e.kind === 232 ? {
        kind: "local class",
        displayParts: [
          Yu(21),
          sp("anonymous local class"),
          Yu(22)
        ]
      } : {
        kind: o2(e),
        displayParts: []
      };
    }
    function XXe(e) {
      const t = lH(e);
      if (e.kind === 0) return {
        fileName: t.fileName,
        span: {
          textSpan: t.textSpan,
          kind: "reference"
        }
      };
      const n = Uue(e.node), i = {
        textSpan: t.textSpan,
        kind: n ? "writtenReference" : "reference",
        isInString: e.kind === 2 ? !0 : void 0,
        ...t.contextSpan && { contextSpan: t.contextSpan }
      };
      return {
        fileName: t.fileName,
        span: i
      };
    }
    function KL(e, t, n) {
      let i = e.getStart(t), a = (n || e).getEnd();
      return Xs(e) && a - i > 2 && (E.assert(n === void 0), i += 1, a -= 1), n?.kind === 270 && (a = n.getFullStart()), Vc(i, a);
    }
    function CDe(e) {
      return e.kind === 0 ? e.textSpan : KL(e.node, e.node.getSourceFile());
    }
    function Uue(e) {
      const t = dD(e);
      return !!t && QXe(t) || e.kind === 90 || qx(e);
    }
    function EDe(e, t) {
      var n;
      if (!t) return !1;
      const i = dD(e) || (e.kind === 90 ? e.parent : hA(e) || e.kind === 137 && yc(e.parent) ? e.parent.parent : void 0), a = i && un(i) ? i.left : void 0;
      return !!(i && ((n = t.declarations) != null && n.some((o) => o === i || o === a)));
    }
    function QXe(e) {
      if (e.flags & 33554432) return !0;
      switch (e.kind) {
        case 227:
        case 209:
        case 264:
        case 232:
        case 90:
        case 267:
        case 307:
        case 282:
        case 274:
        case 272:
        case 277:
        case 265:
        case 339:
        case 347:
        case 292:
        case 268:
        case 271:
        case 275:
        case 281:
        case 170:
        case 305:
        case 266:
        case 169:
          return !0;
        case 304:
          return !U0(e.parent);
        case 263:
        case 219:
        case 177:
        case 175:
        case 178:
        case 179:
          return !!e.body;
        case 261:
        case 173:
          return !!e.initializer || Zb(e.parent);
        case 174:
        case 172:
        case 349:
        case 342:
          return !1;
        default:
          return E.failBadSyntaxKind(e);
      }
    }
    var qk;
    ((e) => {
      function t(Ye, Pt, ne, tt, re, we = {}, Ge = new Set(tt.map((nt) => nt.fileName))) {
        var nt, it;
        if (Pt = n(Pt, we), Pi(Pt)) {
          const fr = TE.getReferenceAtPosition(Pt, Ye, ne);
          if (!fr?.file) return;
          const rr = ne.getTypeChecker().getMergedSymbol(fr.file.symbol);
          if (rr) return d(ne, rr, !1, tt, Ge);
          const Oe = ne.getFileIncludeReasons();
          return Oe ? [{
            definition: {
              type: 5,
              reference: fr.reference,
              file: Pt
            },
            references: a(fr.file, Oe, ne) || Te
          }] : void 0;
        }
        if (!we.implementations) {
          const fr = h(Pt, tt, re);
          if (fr) return fr;
        }
        const ut = ne.getTypeChecker(), Qe = ut.getSymbolAtLocation(yc(Pt) && Pt.parent.name || Pt);
        if (!Qe) {
          if (!we.implementations && Xs(Pt)) {
            if (nL(Pt)) {
              const fr = ne.getFileIncludeReasons(), rr = (it = (nt = ne.getResolvedModuleFromModuleSpecifier(Pt)) == null ? void 0 : nt.resolvedModule) == null ? void 0 : it.resolvedFileName, Oe = rr ? ne.getSourceFile(rr) : void 0;
              if (Oe) return [{
                definition: {
                  type: 4,
                  node: Pt
                },
                references: a(Oe, fr, ne) || Te
              }];
            }
            return Zr(Pt, tt, ut, re);
          }
          return;
        }
        if (Qe.escapedName === "export=") return d(ne, Qe.parent, !1, tt, Ge);
        const xt = c(Qe, ne, tt, re, we, Ge);
        if (xt && !(Qe.flags & 33554432)) return xt;
        const Dt = o(Pt, Qe, ut), Ve = Dt && c(Dt, ne, tt, re, we, Ge);
        return _(ne, xt, S(Qe, Pt, tt, Ge, ut, re, we), Ve);
      }
      e.getReferencedSymbolsForNode = t;
      function n(Ye, Pt) {
        return Pt.use === 1 ? Ye = GV(Ye) : Pt.use === 2 && (Ye = H9(Ye)), Ye;
      }
      e.getAdjustedNode = n;
      function i(Ye, Pt, ne, tt = new Set(ne.map((re) => re.fileName))) {
        var re, we;
        const Ge = (re = Pt.getSourceFile(Ye)) == null ? void 0 : re.symbol;
        if (Ge) return ((we = d(Pt, Ge, !1, ne, tt)[0]) == null ? void 0 : we.references) || Te;
        const nt = Pt.getFileIncludeReasons(), it = Pt.getSourceFile(Ye);
        return it && nt && a(it, nt, Pt) || Te;
      }
      e.getReferencesForFileName = i;
      function a(Ye, Pt, ne) {
        let tt;
        const re = Pt.get(Ye.path) || Te;
        for (const we of re) if (Rv(we)) {
          const Ge = ne.getSourceFileByPath(we.file), nt = Ow(ne, we);
          tE(nt) && (tt = kr(tt, {
            kind: 0,
            fileName: Ge.fileName,
            textSpan: V0(nt)
          }));
        }
        return tt;
      }
      function o(Ye, Pt, ne) {
        if (Ye.parent && cN(Ye.parent)) {
          const tt = ne.getAliasedSymbol(Pt), re = ne.getMergedSymbol(tt);
          if (tt !== re) return re;
        }
      }
      function c(Ye, Pt, ne, tt, re, we) {
        const Ge = Ye.flags & 1536 && Ye.declarations && xr(Ye.declarations, Pi);
        if (!Ge) return;
        const nt = Ye.exports.get("export="), it = d(Pt, Ye, !!nt, ne, we);
        if (!nt || !we.has(Ge.fileName)) return it;
        const ut = Pt.getTypeChecker();
        return Ye = mu(nt, ut), _(Pt, it, S(Ye, void 0, ne, we, ut, tt, re));
      }
      function _(Ye, ...Pt) {
        let ne;
        for (const tt of Pt)
          if (!(!tt || !tt.length)) {
            if (!ne) {
              ne = tt;
              continue;
            }
            for (const re of tt) {
              if (!re.definition || re.definition.type !== 0) {
                ne.push(re);
                continue;
              }
              const we = re.definition.symbol, Ge = qs(ne, (it) => !!it.definition && it.definition.type === 0 && it.definition.symbol === we);
              if (Ge === -1) {
                ne.push(re);
                continue;
              }
              const nt = ne[Ge];
              ne[Ge] = {
                definition: nt.definition,
                references: nt.references.concat(re.references).sort((it, ut) => {
                  const Qe = u(Ye, it), xt = u(Ye, ut);
                  if (Qe !== xt) return Fo(Qe, xt);
                  const Dt = CDe(it), Ve = CDe(ut);
                  return Dt.start !== Ve.start ? Fo(Dt.start, Ve.start) : Fo(Dt.length, Ve.length);
                })
              };
            }
          }
        return ne;
      }
      function u(Ye, Pt) {
        const ne = Pt.kind === 0 ? Ye.getSourceFile(Pt.fileName) : Pt.node.getSourceFile();
        return Ye.getSourceFiles().indexOf(ne);
      }
      function d(Ye, Pt, ne, tt, re) {
        E.assert(!!Pt.valueDeclaration);
        const we = Rn(pDe(Ye, tt, Pt), (nt) => {
          if (nt.kind === "import") {
            const it = nt.literal.parent;
            if (B0(it)) {
              const ut = ns(it.parent, Am);
              if (ne && !ut.qualifier) return;
            }
            return Yh(nt.literal);
          } else return nt.kind === "implicit" ? Yh(nt.literal.text !== Vy && bk(nt.referencingFile, (it) => it.transformFlags & 2 ? Im(it) || JS(it) || Dv(it) ? it : void 0 : "skip") || nt.referencingFile.statements[0] || nt.referencingFile) : {
            kind: 0,
            fileName: nt.referencingFile.fileName,
            textSpan: V0(nt.ref)
          };
        });
        if (Pt.declarations) for (const nt of Pt.declarations) switch (nt.kind) {
          case 308:
            break;
          case 268:
            re.has(nt.getSourceFile().fileName) && we.push(Yh(nt.name));
            break;
          default:
            E.assert(!!(Pt.flags & 33554432), "Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.");
        }
        const Ge = Pt.exports.get("export=");
        if (Ge?.declarations) for (const nt of Ge.declarations) {
          const it = nt.getSourceFile();
          if (re.has(it.fileName)) {
            const ut = un(nt) && Ln(nt.left) ? nt.left.expression : Xo(nt) ? E.checkDefined(uo(nt, 95, it)) : va(nt) || nt;
            we.push(Yh(ut));
          }
        }
        return we.length ? [{
          definition: {
            type: 0,
            symbol: Pt
          },
          references: we
        }] : Te;
      }
      function g(Ye) {
        return Ye.kind === 148 && Tv(Ye.parent) && Ye.parent.operator === 148;
      }
      function h(Ye, Pt, ne) {
        if (Uw(Ye.kind))
          return Ye.kind === 116 && dk(Ye.parent) || Ye.kind === 148 && !g(Ye) ? void 0 : Be(Pt, Ye.kind, ne, Ye.kind === 148 ? g : void 0);
        if (a6(Ye.parent) && Ye.parent.name === Ye) return Se(Pt, ne);
        if (lk(Ye) && Bc(Ye.parent)) return [{
          definition: {
            type: 2,
            node: Ye
          },
          references: [Yh(Ye)]
        }];
        if (cI(Ye)) {
          const tt = z9(Ye.parent, Ye.text);
          return tt && de(tt.parent, tt);
        } else if (RV(Ye)) return de(Ye.parent, Ye);
        if (oE(Ye)) return ri(Ye, Pt, ne);
        if (Ye.kind === 108) return Nt(Ye);
      }
      function S(Ye, Pt, ne, tt, re, we, Ge) {
        const nt = Pt && D(Ye, Pt, re, !ha(Ge)) || Ye, it = Pt && Ge.use !== 2 ? $n(Pt, nt) : 7, ut = [], Qe = new M(ne, tt, Pt ? k(Pt) : 0, re, we, it, Ge, ut), xt = !ha(Ge) || !nt.declarations ? void 0 : xr(nt.declarations, $u);
        return xt ? ot(xt.name, nt, xt, Qe.createSearch(Pt, Ye, void 0), Qe, !0, !0) : Pt && Pt.kind === 90 && nt.escapedName === "default" && nt.parent ? (ue(Pt, nt, Qe), R(Pt, nt, {
          exportingModuleSymbol: nt.parent,
          exportKind: 1
        }, Qe)) : T(nt, Qe, Qe.createSearch(Pt, nt, void 0, { allSearchSymbols: Pt ? ra(nt, Pt, re, Ge.use === 2, !!Ge.providePrefixAndSuffixTextForRename, !!Ge.implementations) : [nt] })), ut;
      }
      function T(Ye, Pt, ne) {
        const tt = pe(Ye);
        if (tt) oe(tt, tt.getSourceFile(), ne, Pt, !(Pi(tt) && !Gi(Pt.sourceFiles, tt)));
        else for (const re of Pt.sourceFiles)
          Pt.cancellationToken.throwIfCancellationRequested(), H(re, ne, Pt);
      }
      function k(Ye) {
        switch (Ye.kind) {
          case 177:
          case 137:
            return 1;
          case 80:
            if (Zn(Ye.parent))
              return E.assert(Ye.parent.name === Ye), 2;
          default:
            return 0;
        }
      }
      function D(Ye, Pt, ne, tt) {
        const { parent: re } = Pt;
        return $u(re) && tt ? K(Pt, Ye, re, ne) : Hn(Ye.declarations, (we) => {
          if (!we.parent) {
            if (Ye.flags & 33554432) return;
            E.fail(`Unexpected symbol at ${E.formatSyntaxKind(Pt.kind)}: ${E.formatSymbol(Ye)}`);
          }
          return C_(we.parent) && j0(we.parent.parent) ? ne.getPropertyOfType(ne.getTypeFromTypeNode(we.parent.parent), Ye.name) : void 0;
        });
      }
      let P;
      ((Ye) => {
        Ye[Ye.None = 0] = "None", Ye[Ye.Constructor = 1] = "Constructor", Ye[Ye.Class = 2] = "Class";
      })(P || (P = {}));
      function N(Ye) {
        if (!(Ye.flags & 33555968)) return;
        const Pt = Ye.declarations && xr(Ye.declarations, (ne) => !Pi(ne) && !Qc(ne));
        return Pt && Pt.symbol;
      }
      class M {
        constructor(Pt, ne, tt, re, we, Ge, nt, it) {
          this.sourceFiles = Pt, this.sourceFilesSet = ne, this.specialSearchKind = tt, this.checker = re, this.cancellationToken = we, this.searchMeaning = Ge, this.options = nt, this.result = it, this.inheritsFromCache = /* @__PURE__ */ new Map(), this.markSeenContainingTypeReference = uE(), this.markSeenReExportRHS = uE(), this.symbolIdToReferences = [], this.sourceFileToSeenSymbols = [];
        }
        includesSourceFile(Pt) {
          return this.sourceFilesSet.has(Pt.fileName);
        }
        getImportSearches(Pt, ne) {
          return this.importTracker || (this.importTracker = jue(this.sourceFiles, this.sourceFilesSet, this.checker, this.cancellationToken)), this.importTracker(Pt, ne, this.options.use === 2);
        }
        createSearch(Pt, ne, tt, re = {}) {
          const { text: we = Qp(kc(ED(ne) || N(ne) || ne)), allSearchSymbols: Ge = [ne] } = re;
          return {
            symbol: ne,
            comingFrom: tt,
            text: we,
            escapedText: mc(we),
            parents: this.options.implementations && Pt ? Lr(Pt, ne, this.checker) : void 0,
            allSearchSymbols: Ge,
            includes: (nt) => Gi(Ge, nt)
          };
        }
        referenceAdder(Pt) {
          const ne = ss(Pt);
          let tt = this.symbolIdToReferences[ne];
          return tt || (tt = this.symbolIdToReferences[ne] = [], this.result.push({
            definition: {
              type: 0,
              symbol: Pt
            },
            references: tt
          })), (re, we) => tt.push(Yh(re, we));
        }
        addStringOrCommentReference(Pt, ne) {
          this.result.push({
            definition: void 0,
            references: [{
              kind: 0,
              fileName: Pt,
              textSpan: ne
            }]
          });
        }
        markSearchedSymbols(Pt, ne) {
          const tt = Hs(Pt), re = this.sourceFileToSeenSymbols[tt] || (this.sourceFileToSeenSymbols[tt] = /* @__PURE__ */ new Set());
          let we = !1;
          for (const Ge of ne) we = b_(re, ss(Ge)) || we;
          return we;
        }
      }
      function R(Ye, Pt, ne, tt) {
        const { importSearches: re, singleReferences: we, indirectUsers: Ge } = tt.getImportSearches(Pt, ne);
        if (we.length) {
          const nt = tt.referenceAdder(Pt);
          for (const it of we) L(it, tt) && nt(it);
        }
        for (const [nt, it] of re) ce(nt.getSourceFile(), tt.createSearch(nt, it, 1), tt);
        if (Ge.length) {
          let nt;
          switch (ne.exportKind) {
            case 0:
              nt = tt.createSearch(Ye, Pt, 1);
              break;
            case 1:
              nt = tt.options.use === 2 ? void 0 : tt.createSearch(Ye, Pt, 1, { text: "default" });
              break;
            case 2:
              break;
          }
          if (nt) for (const it of Ge) H(it, nt, tt);
        }
      }
      function G(Ye, Pt, ne, tt, re, we, Ge, nt) {
        const { importSearches: it, indirectUsers: ut, singleReferences: Qe } = jue(Ye, new Set(Ye.map((xt) => xt.fileName)), Pt, ne)(tt, {
          exportKind: Ge ? 1 : 0,
          exportingModuleSymbol: re
        }, !1);
        for (const [xt] of it) nt(xt);
        for (const xt of Qe) Fe(xt) && Am(xt.parent) && nt(xt);
        for (const xt of ut) for (const Dt of he(xt, Ge ? "default" : we)) {
          const Ve = Pt.getSymbolAtLocation(Dt), fr = _t(Ve?.declarations, (rr) => !!qn(rr, Xo));
          Fe(Dt) && !By(Dt.parent) && (Ve === tt || fr) && nt(Dt);
        }
      }
      e.eachExportReference = G;
      function L(Ye, Pt) {
        return ge(Ye, Pt) ? Pt.options.use !== 2 ? !0 : !Fe(Ye) && !By(Ye.parent) ? !1 : !(By(Ye.parent) && lg(Ye)) : !1;
      }
      function z(Ye, Pt) {
        if (Ye.declarations)
          for (const ne of Ye.declarations) {
            const tt = ne.getSourceFile();
            ce(tt, Pt.createSearch(ne, Ye, 0), Pt, Pt.includesSourceFile(tt));
          }
      }
      function H(Ye, Pt, ne) {
        bG(Ye).get(Pt.escapedText) !== void 0 && ce(Ye, Pt, ne);
      }
      function U(Ye, Pt) {
        return U0(Ye.parent.parent) ? Pt.getPropertySymbolOfDestructuringAssignment(Ye) : void 0;
      }
      function pe(Ye) {
        const { declarations: Pt, flags: ne, parent: tt, valueDeclaration: re } = Ye;
        if (re && (re.kind === 219 || re.kind === 232)) return re;
        if (!Pt) return;
        if (ne & 8196) {
          const nt = xr(Pt, (it) => vf(it, 2) || qu(it));
          return nt ? dv(nt, 264) : void 0;
        }
        if (Pt.some(gI)) return;
        const we = tt && !(Ye.flags & 262144);
        if (we && !(Dx(tt) && !tt.globalExports)) return;
        let Ge;
        for (const nt of Pt) {
          const it = ZS(nt);
          if (Ge && Ge !== it || !it || it.kind === 308 && !gf(it)) return;
          if (Ge = it, Lo(Ge)) {
            let ut;
            for (; ut = $B(Ge); ) Ge = ut;
          }
        }
        return we ? Ge.getSourceFile() : Ge;
      }
      function ie(Ye, Pt, ne, tt = ne) {
        return W(Ye, Pt, ne, () => !0, tt) || !1;
      }
      e.isSymbolReferencedInFile = ie;
      function W(Ye, Pt, ne, tt, re = ne) {
        const we = df(Ye.parent, Ye.parent.parent) ? js(Pt.getSymbolsOfParameterPropertyDeclaration(Ye.parent, Ye.text)) : Pt.getSymbolAtLocation(Ye);
        if (we)
          for (const Ge of he(ne, we.name, re)) {
            if (!Fe(Ge) || Ge === Ye || Ge.escapedText !== Ye.escapedText) continue;
            const nt = Pt.getSymbolAtLocation(Ge);
            if (nt === we || Pt.getShorthandAssignmentValueSymbol(Ge.parent) === we || $u(Ge.parent) && K(Ge, nt, Ge.parent, Pt) === we) {
              const it = tt(Ge);
              if (it) return it;
            }
          }
      }
      e.eachSymbolReferenceInFile = W;
      function Q(Ye, Pt) {
        return dn(he(Pt, Ye), (tt) => !!dD(tt)).reduce((tt, re) => {
          const we = ne(re);
          return !_t(tt.declarationNames) || we === tt.depth ? (tt.declarationNames.push(re), tt.depth = we) : we < tt.depth && (tt.declarationNames = [re], tt.depth = we), tt;
        }, {
          depth: 1 / 0,
          declarationNames: []
        }).declarationNames;
        function ne(tt) {
          let re = 0;
          for (; tt; )
            tt = ZS(tt), re++;
          return re;
        }
      }
      e.getTopMostDeclarationNamesInFile = Q;
      function se(Ye, Pt, ne, tt) {
        if (!Ye.name || !Fe(Ye.name)) return !1;
        const re = E.checkDefined(ne.getSymbolAtLocation(Ye.name));
        for (const we of Pt) for (const Ge of he(we, re.name)) {
          if (!Fe(Ge) || Ge === Ye.name || Ge.escapedText !== Ye.name.escapedText) continue;
          const nt = J9(Ge), it = za(nt.parent) && nt.parent.expression === nt ? nt.parent : void 0, ut = ne.getSymbolAtLocation(Ge);
          if (ut && ne.getRootSymbols(ut).some((Qe) => Qe === re) && tt(Ge, it))
            return !0;
        }
        return !1;
      }
      e.someSignatureUsage = se;
      function he(Ye, Pt, ne = Ye) {
        return Rn(fe(Ye, Pt, ne), (tt) => {
          const re = G_(Ye, tt);
          return re === Ye ? void 0 : re;
        });
      }
      function fe(Ye, Pt, ne = Ye) {
        const tt = [];
        if (!Pt || !Pt.length) return tt;
        const re = Ye.text, we = re.length, Ge = Pt.length;
        let nt = re.indexOf(Pt, ne.pos);
        for (; nt >= 0 && !(nt > ne.end); ) {
          const it = nt + Ge;
          (nt === 0 || !jh(re.charCodeAt(nt - 1), 99)) && (it === we || !jh(re.charCodeAt(it), 99)) && tt.push(nt), nt = re.indexOf(Pt, nt + Ge + 1);
        }
        return tt;
      }
      function de(Ye, Pt) {
        const ne = Ye.getSourceFile(), tt = Pt.text, re = Rn(he(ne, tt, Ye), (we) => we === Pt || cI(we) && z9(we, tt) === Pt ? Yh(we) : void 0);
        return [{
          definition: {
            type: 1,
            node: Pt
          },
          references: re
        }];
      }
      function $(Ye, Pt) {
        switch (Ye.kind) {
          case 81:
            if (Pv(Ye.parent)) return !0;
          case 80:
            return Ye.text.length === Pt.length;
          case 15:
          case 11: {
            const ne = Ye;
            return ne.text.length === Pt.length && (W9(ne) || zV(Ye) || ase(Ye) || za(Ye.parent) && bS(Ye.parent) && Ye.parent.arguments[1] === Ye || By(Ye.parent));
          }
          case 9:
            return W9(Ye) && Ye.text.length === Pt.length;
          case 90:
            return Pt.length === 7;
          default:
            return !1;
        }
      }
      function Se(Ye, Pt) {
        const ne = ks(Ye, (tt) => (Pt.throwIfCancellationRequested(), Rn(he(tt, "meta", tt), (re) => {
          const we = re.parent;
          if (a6(we)) return Yh(we);
        })));
        return ne.length ? [{
          definition: {
            type: 2,
            node: ne[0].node
          },
          references: ne
        }] : void 0;
      }
      function Be(Ye, Pt, ne, tt) {
        const re = ks(Ye, (we) => (ne.throwIfCancellationRequested(), Rn(he(we, as(Pt), we), (Ge) => {
          if (Ge.kind === Pt && (!tt || tt(Ge))) return Yh(Ge);
        })));
        return re.length ? [{
          definition: {
            type: 2,
            node: re[0].node
          },
          references: re
        }] : void 0;
      }
      function ce(Ye, Pt, ne, tt = !0) {
        return ne.cancellationToken.throwIfCancellationRequested(), oe(Ye, Ye, Pt, ne, tt);
      }
      function oe(Ye, Pt, ne, tt, re) {
        if (tt.markSearchedSymbols(Pt, ne.allSearchSymbols))
          for (const we of fe(Pt, ne.text, Ye)) Ae(Pt, we, ne, tt, re);
      }
      function ge(Ye, Pt) {
        return !!(YS(Ye) & Pt.searchMeaning);
      }
      function Ae(Ye, Pt, ne, tt, re) {
        const we = G_(Ye, Pt);
        if (!$(we, ne.text)) {
          !tt.options.implementations && (tt.options.findInStrings && Ok(Ye, Pt) || tt.options.findInComments && yse(Ye, Pt)) && tt.addStringOrCommentReference(Ye.fileName, du(Pt, ne.text.length));
          return;
        }
        if (!ge(we, tt)) return;
        let Ge = tt.checker.getSymbolAtLocation(we);
        if (!Ge) return;
        const nt = we.parent;
        if (p_(nt) && nt.propertyName === we) return;
        if ($u(nt)) {
          E.assert(we.kind === 80 || we.kind === 11), ot(we, Ge, nt, ne, tt, re);
          return;
        }
        if (G4(nt) && nt.isNameFirst && nt.typeExpression && zS(nt.typeExpression.type) && nt.typeExpression.type.jsDocPropertyTags && It(nt.typeExpression.type.jsDocPropertyTags)) {
          Ne(nt.typeExpression.type.jsDocPropertyTags, we, ne, tt);
          return;
        }
        const it = Ur(ne, Ge, we, tt);
        if (!it) {
          Ce(Ge, ne, tt);
          return;
        }
        switch (tt.specialSearchKind) {
          case 0:
            re && ue(we, it, tt);
            break;
          case 1:
            Ie(we, Ye, ne, tt);
            break;
          case 2:
            Xe(we, ne, tt);
            break;
          default:
            E.assertNever(tt.specialSearchKind);
        }
        rn(we) && Ns(we.parent) && $y(we.parent.parent.parent) && (Ge = we.parent.symbol, !Ge) || ae(we, Ge, ne, tt);
      }
      function Ne(Ye, Pt, ne, tt) {
        const re = tt.referenceAdder(ne.symbol);
        ue(Pt, ne.symbol, tt), bt(Ye, (we) => {
          k_(we.name) && re(we.name.left);
        });
      }
      function ot(Ye, Pt, ne, tt, re, we, Ge) {
        E.assert(!Ge || !!re.options.providePrefixAndSuffixTextForRename, "If alwaysGetReferences is true, then prefix/suffix text must be enabled");
        const { parent: nt, propertyName: it, name: ut } = ne, Qe = nt.parent, xt = K(Ye, Pt, ne, re.checker);
        if (!Ge && !tt.includes(xt)) return;
        if (it ? Ye === it ? (Qe.moduleSpecifier || Dt(), we && re.options.use !== 2 && re.markSeenReExportRHS(ut) && ue(ut, E.checkDefined(ne.symbol), re)) : re.markSeenReExportRHS(Ye) && Dt() : re.options.use === 2 && lg(ut) || Dt(), !ha(re.options) || Ge) {
          const Ve = lg(Ye) || lg(ne.name) ? 1 : 0, fr = E.checkDefined(ne.symbol), rr = Bue(fr, Ve, re.checker);
          rr && R(Ye, fr, rr, re);
        }
        if (tt.comingFrom !== 1 && Qe.moduleSpecifier && !it && !ha(re.options)) {
          const Ve = re.checker.getExportSpecifierLocalTargetSymbol(ne);
          Ve && z(Ve, re);
        }
        function Dt() {
          we && ue(Ye, xt, re);
        }
      }
      function K(Ye, Pt, ne, tt) {
        return ke(Ye, ne) && tt.getExportSpecifierLocalTargetSymbol(ne) || Pt;
      }
      function ke(Ye, Pt) {
        const { parent: ne, propertyName: tt, name: re } = Pt;
        return E.assert(tt === Ye || re === Ye), tt ? tt === Ye : !ne.parent.moduleSpecifier;
      }
      function ae(Ye, Pt, ne, tt) {
        const re = gDe(Ye, Pt, tt.checker, ne.comingFrom === 1);
        if (!re) return;
        const { symbol: we } = re;
        re.kind === 0 ? ha(tt.options) || z(we, tt) : R(Ye, we, re.exportInfo, tt);
      }
      function Ce({ flags: Ye, valueDeclaration: Pt }, ne, tt) {
        const re = tt.checker.getShorthandAssignmentValueSymbol(Pt), we = Pt && va(Pt);
        !(Ye & 33554432) && we && ne.includes(re) && ue(we, re, tt);
      }
      function ue(Ye, Pt, ne) {
        const { kind: tt, symbol: re } = "kind" in Pt ? Pt : {
          kind: void 0,
          symbol: Pt
        };
        if (ne.options.use === 2 && Ye.kind === 90) return;
        const we = ne.referenceAdder(re);
        ne.options.implementations ? Kt(Ye, we, ne) : we(Ye, tt);
      }
      function Ie(Ye, Pt, ne, tt) {
        Bw(Ye) && ue(Ye, ne.symbol, tt);
        const re = () => tt.referenceAdder(ne.symbol);
        if (Zn(Ye.parent))
          E.assert(Ye.kind === 90 || Ye.parent.name === Ye), Ft(ne.symbol, Pt, re());
        else {
          const we = Da(Ye);
          we && (Xt(we, re()), Ct(we, tt));
        }
      }
      function Xe(Ye, Pt, ne) {
        ue(Ye, Pt.symbol, ne);
        const tt = Ye.parent;
        if (ne.options.use === 2 || !Zn(tt)) return;
        E.assert(tt.name === Ye);
        const re = ne.referenceAdder(Pt.symbol);
        for (const we of tt.members)
          kx(we) && es(we) && we.body && we.body.forEachChild(function Ge(nt) {
            nt.kind === 110 ? re(nt) : !Ra(nt) && !Zn(nt) && nt.forEachChild(Ge);
          });
      }
      function Ft(Ye, Pt, ne) {
        const tt = Ut(Ye);
        if (tt && tt.declarations) for (const re of tt.declarations) {
          const we = uo(re, 137, Pt);
          E.assert(re.kind === 177 && !!we), ne(we);
        }
        Ye.exports && Ye.exports.forEach((re) => {
          const we = re.valueDeclaration;
          if (we && we.kind === 175) {
            const Ge = we.body;
            Ge && Ea(Ge, 110, (nt) => {
              Bw(nt) && ne(nt);
            });
          }
        });
      }
      function Ut(Ye) {
        return Ye.members && Ye.members.get("__constructor");
      }
      function Xt(Ye, Pt) {
        const ne = Ut(Ye.symbol);
        if (ne && ne.declarations)
          for (const tt of ne.declarations) {
            E.assert(tt.kind === 177);
            const re = tt.body;
            re && Ea(re, 108, (we) => {
              FV(we) && Pt(we);
            });
          }
      }
      function Ar(Ye) {
        return !!Ut(Ye.symbol);
      }
      function Ct(Ye, Pt) {
        if (Ar(Ye)) return;
        const ne = Ye.symbol;
        T(ne, Pt, Pt.createSearch(void 0, ne, void 0));
      }
      function Kt(Ye, Pt, ne) {
        if (pg(Ye) && zn(Ye.parent)) {
          Pt(Ye);
          return;
        }
        if (Ye.kind !== 80) return;
        Ye.parent.kind === 305 && na(Ye, ne.checker, Pt);
        const tt = zr(Ye);
        if (tt) {
          Pt(tt);
          return;
        }
        const re = cr(Ye, (nt) => !k_(nt.parent) && !ui(nt.parent) && !Eb(nt.parent)), we = re.parent;
        if (a5(we) && we.type === re && ne.markSeenContainingTypeReference(we))
          if (E0(we)) Ge(we.initializer);
          else if (Ra(we) && we.body) {
            const nt = we.body;
            nt.kind === 242 ? Hy(nt, (it) => {
              it.expression && Ge(it.expression);
            }) : Ge(nt);
          } else (Db(we) || N6(we)) && Ge(we.expression);
        function Ge(nt) {
          _i(nt) && Pt(nt);
        }
      }
      function zr(Ye) {
        return Fe(Ye) || Ln(Ye) ? zr(Ye.parent) : rh(Ye) ? qn(Ye.parent.parent, _f(Zn, au)) : void 0;
      }
      function _i(Ye) {
        switch (Ye.kind) {
          case 218:
            return _i(Ye.expression);
          case 220:
          case 219:
          case 211:
          case 232:
          case 210:
            return !0;
          default:
            return !1;
        }
      }
      function Gr(Ye, Pt, ne, tt) {
        if (Ye === Pt) return !0;
        const re = ss(Ye) + "," + ss(Pt), we = ne.get(re);
        if (we !== void 0) return we;
        ne.set(re, !1);
        const Ge = !!Ye.declarations && Ye.declarations.some((nt) => mD(nt).some((it) => {
          const ut = tt.getTypeAtLocation(it);
          return !!ut && !!ut.symbol && Gr(ut.symbol, Pt, ne, tt);
        }));
        return ne.set(re, Ge), Ge;
      }
      function Nt(Ye) {
        let Pt = K3(Ye, !1);
        if (!Pt) return;
        let ne = 256;
        switch (Pt.kind) {
          case 173:
          case 172:
          case 175:
          case 174:
          case 177:
          case 178:
          case 179:
            ne &= P0(Pt), Pt = Pt.parent;
            break;
          default:
            return;
        }
        const tt = Rn(he(Pt.getSourceFile(), "super", Pt), (re) => {
          if (re.kind !== 108) return;
          const we = K3(re, !1);
          return we && es(we) === !!ne && we.parent.symbol === Pt.symbol ? Yh(re) : void 0;
        });
        return [{
          definition: {
            type: 0,
            symbol: Pt.symbol
          },
          references: tt
        }];
      }
      function Li(Ye) {
        return Ye.kind === 80 && Ye.parent.kind === 170 && Ye.parent.name === Ye;
      }
      function ri(Ye, Pt, ne) {
        let tt = c_(Ye, !1, !1), re = 256;
        switch (tt.kind) {
          case 175:
          case 174:
            if (Hp(tt)) {
              re &= P0(tt), tt = tt.parent;
              break;
            }
          case 173:
          case 172:
          case 177:
          case 178:
          case 179:
            re &= P0(tt), tt = tt.parent;
            break;
          case 308:
            if (Sl(tt) || Li(Ye)) return;
          case 263:
          case 219:
            break;
          default:
            return;
        }
        const we = ks(tt.kind === 308 ? Pt : [tt.getSourceFile()], (Ge) => (ne.throwIfCancellationRequested(), he(Ge, "this", Pi(tt) ? Ge : tt).filter((nt) => {
          if (!oE(nt)) return !1;
          const it = c_(nt, !1, !1);
          if (!jd(it)) return !1;
          switch (tt.kind) {
            case 219:
            case 263:
              return tt.symbol === it.symbol;
            case 175:
            case 174:
              return Hp(tt) && tt.symbol === it.symbol;
            case 232:
            case 264:
            case 211:
              return it.parent && jd(it.parent) && tt.symbol === it.parent.symbol && es(it) === !!re;
            case 308:
              return it.kind === 308 && !Sl(it) && !Li(nt);
          }
        }))).map((Ge) => Yh(Ge));
        return [{
          definition: {
            type: 3,
            node: Hn(we, (Ge) => Fi(Ge.node.parent) ? Ge.node : void 0) || Ye
          },
          references: we
        }];
      }
      function Zr(Ye, Pt, ne, tt) {
        const re = G9(Ye, ne), we = ks(Pt, (Ge) => (tt.throwIfCancellationRequested(), Rn(he(Ge, Ye.text), (nt) => {
          if (Xs(nt) && nt.text === Ye.text) if (re) {
            const it = G9(nt, ne);
            if (re !== ne.getStringType() && (re === it || ni(nt, ne))) return Yh(nt, 2);
          } else return IS(nt) && !DS(nt, Ge) ? void 0 : Yh(nt, 2);
        })));
        return [{
          definition: {
            type: 4,
            node: Ye
          },
          references: we
        }];
      }
      function ni(Ye, Pt) {
        if (f_(Ye.parent)) return Pt.getPropertyOfType(Pt.getTypeAtLocation(Ye.parent.parent), Ye.text);
      }
      function ra(Ye, Pt, ne, tt, re, we) {
        const Ge = [];
        return Me(Ye, Pt, ne, tt, !(tt && re), (nt, it, ut) => {
          ut && tr(Ye) !== tr(ut) && (ut = void 0), Ge.push(ut || it || nt);
        }, () => !we), Ge;
      }
      function Me(Ye, Pt, ne, tt, re, we, Ge) {
        const nt = FI(Pt);
        if (nt) {
          const Ve = ne.getShorthandAssignmentValueSymbol(Pt.parent);
          if (Ve && tt) return we(Ve, void 0, void 0, 3);
          const fr = ne.getContextualType(nt.parent), rr = fr && Hn(LI(nt, ne, fr, !0), (q) => xt(q, 4));
          if (rr) return rr;
          const Oe = U(Pt, ne), rt = Oe && we(Oe, void 0, void 0, 4);
          if (rt) return rt;
          const ee = Ve && we(Ve, void 0, void 0, 3);
          if (ee) return ee;
        }
        const it = o(Pt, Ye, ne);
        if (it) {
          const Ve = we(it, void 0, void 0, 1);
          if (Ve) return Ve;
        }
        const ut = xt(Ye);
        if (ut) return ut;
        if (Ye.valueDeclaration && df(Ye.valueDeclaration, Ye.valueDeclaration.parent)) {
          const Ve = ne.getSymbolsOfParameterPropertyDeclaration(ns(Ye.valueDeclaration, Fi), Ye.name);
          return E.assert(Ve.length === 2 && !!(Ve[0].flags & 1) && !!(Ve[1].flags & 4)), xt(Ye.flags & 1 ? Ve[1] : Ve[0]);
        }
        const Qe = Ho(Ye, 282);
        if (!tt || Qe && !Qe.propertyName) {
          const Ve = Qe && ne.getExportSpecifierLocalTargetSymbol(Qe);
          if (Ve) {
            const fr = we(Ve, void 0, void 0, 1);
            if (fr) return fr;
          }
        }
        if (!tt) {
          let Ve;
          return re ? Ve = gI(Pt.parent) ? iL(ne, Pt.parent) : void 0 : Ve = Dt(Ye, ne), Ve && xt(Ve, 4);
        }
        if (E.assert(tt), re) {
          const Ve = Dt(Ye, ne);
          return Ve && xt(Ve, 4);
        }
        function xt(Ve, fr) {
          return Hn(ne.getRootSymbols(Ve), (rr) => we(Ve, rr, void 0, fr) || (rr.parent && rr.parent.flags & 96 && Ge(rr) ? vt(rr.parent, rr.name, ne, (Oe) => we(Ve, rr, Oe, fr)) : void 0));
        }
        function Dt(Ve, fr) {
          const rr = Ho(Ve, 209);
          if (rr && gI(rr)) return iL(fr, rr);
        }
      }
      function vt(Ye, Pt, ne, tt) {
        const re = /* @__PURE__ */ new Set();
        return we(Ye);
        function we(Ge) {
          if (!(!(Ge.flags & 96) || !Yp(re, Ge)))
            return Hn(Ge.declarations, (nt) => Hn(mD(nt), (it) => {
              const ut = ne.getTypeAtLocation(it), Qe = ut.symbol && ne.getPropertyOfType(ut, Pt);
              return Qe && Hn(ne.getRootSymbols(Qe), tt) || ut.symbol && we(ut.symbol);
            }));
        }
      }
      function tr(Ye) {
        return Ye.valueDeclaration ? !!(Pu(Ye.valueDeclaration) & 256) : !1;
      }
      function Ur(Ye, Pt, ne, tt) {
        const { checker: re } = tt;
        return Me(Pt, ne, re, !1, tt.options.use !== 2 || !!tt.options.providePrefixAndSuffixTextForRename, (we, Ge, nt, it) => (nt && tr(Pt) !== tr(nt) && (nt = void 0), Ye.includes(nt || Ge || we) ? {
          symbol: Ge && !(gc(we) & 6) ? Ge : we,
          kind: it
        } : void 0), (we) => !(Ye.parents && !Ye.parents.some((Ge) => Gr(we.parent, Ge, tt.inheritsFromCache, re))));
      }
      function $n(Ye, Pt) {
        let ne = YS(Ye);
        const { declarations: tt } = Pt;
        if (tt) {
          let re;
          do {
            re = ne;
            for (const we of tt) {
              const Ge = j9(we);
              Ge & ne && (ne |= Ge);
            }
          } while (ne !== re);
        }
        return ne;
      }
      e.getIntersectingMeaningFromDeclarations = $n;
      function zn(Ye) {
        return Ye.flags & 33554432 ? !(au(Ye) || Kp(Ye)) : rD(Ye) ? E0(Ye) : So(Ye) ? !!Ye.body : Zn(Ye) || R3(Ye);
      }
      function na(Ye, Pt, ne) {
        const tt = Pt.getSymbolAtLocation(Ye), re = Pt.getShorthandAssignmentValueSymbol(tt.valueDeclaration);
        if (re)
          for (const we of re.getDeclarations()) j9(we) & 1 && ne(we);
      }
      e.getReferenceEntriesForShorthandPropertyAssignment = na;
      function Ea(Ye, Pt, ne) {
        Fa(Ye, (tt) => {
          tt.kind === Pt && ne(tt), Ea(tt, Pt, ne);
        });
      }
      function Da(Ye) {
        return kJ(J9(Ye).parent);
      }
      function Lr(Ye, Pt, ne) {
        const tt = sE(Ye) ? Ye.parent : void 0, re = tt && ne.getTypeAtLocation(tt.expression), we = Rn(re && (re.isUnionOrIntersection() ? re.types : re.symbol === Pt.parent ? void 0 : [re]), (Ge) => Ge.symbol && Ge.symbol.flags & 96 ? Ge.symbol : void 0);
        return we.length === 0 ? void 0 : we;
      }
      function ha(Ye) {
        return Ye.use === 2 && Ye.providePrefixAndSuffixTextForRename;
      }
    })(qk || (qk = {}));
    var TE = {};
    gi(TE, {
      createDefinitionInfo: () => GI,
      getDefinitionAndBoundSpan: () => nQe,
      getDefinitionAtPosition: () => DDe,
      getReferenceAtPosition: () => PDe,
      getTypeDefinitionAtPosition: () => tQe
    });
    function DDe(e, t, n, i, a) {
      var o;
      const c = PDe(t, n, e), _ = c && [cQe(c.reference.fileName, c.fileName, c.unverified)] || Te;
      if (c?.file) return _;
      const u = G_(t, n);
      if (u === t) return;
      const { parent: d } = u, g = e.getTypeChecker();
      if (u.kind === 164 || Fe(u) && iF(d) && d.tagName === u) {
        const N = ZXe(g, u);
        if (N !== void 0 || u.kind !== 164) return N || Te;
      }
      if (cI(u)) {
        const N = z9(u.parent, u.text);
        return N ? [Vue(g, N, "label", u.text, void 0)] : void 0;
      }
      switch (u.kind) {
        case 90:
          if (!L6(u.parent)) break;
        case 84:
          const N = cr(u.parent, iw);
          if (N) return [oQe(N, t)];
          break;
      }
      let h;
      switch (u.kind) {
        case 107:
        case 135:
        case 127:
          h = So;
          const N = cr(u, h);
          return N ? [Gue(g, N)] : void 0;
      }
      if (lk(u) && Bc(u.parent)) {
        const N = u.parent.parent, { symbol: M, failedAliasResolution: R } = uH(N, g, a), G = dn(N.members, Bc), L = M ? g.symbolToString(M, N) : "", z = u.getSourceFile();
        return or(G, (H) => {
          let { pos: U } = Em(H);
          return U = gs(z.text, U), Vue(g, H, "constructor", "static {}", L, !1, R, {
            start: U,
            length: 6
          });
        });
      }
      let { symbol: S, failedAliasResolution: T } = uH(u, g, a), k = u;
      if (i && T) {
        const N = bt([u, ...S?.declarations || Te], (R) => cr(R, lK)), M = N && Fx(N);
        M && ({ symbol: S, failedAliasResolution: T } = uH(M, g, a), k = M);
      }
      if (!S && nL(k)) {
        const N = (o = e.getResolvedModuleFromModuleSpecifier(k, t)) == null ? void 0 : o.resolvedModule;
        if (N) return [{
          name: k.text,
          fileName: N.resolvedFileName,
          containerName: void 0,
          containerKind: void 0,
          kind: "script",
          textSpan: du(0, 0),
          failedAliasResolution: T,
          isAmbient: $l(N.resolvedFileName),
          unverified: k !== u
        }];
      }
      if (hs(u) && (al(d) || Bl(d)) && (S = d.symbol), !S) return zi(_, iQe(u, g));
      if (i && hr(S.declarations, (N) => N.getSourceFile().fileName === t.fileName)) return;
      const D = uQe(g, u);
      if (D && !(Gu(u.parent) && _Qe(D))) {
        const N = Gue(g, D, T);
        let M = (G) => G !== D;
        if (g.getRootSymbols(S).some((G) => YXe(G, D))) {
          if (!yc(D)) return [N];
          M = (G) => G !== D && (sl(G) || Hc(G));
        }
        const R = uP(g, S, u, T, M) || Te;
        return u.kind === 108 ? [N, ...R] : [...R, N];
      }
      if (u.parent.kind === 305) {
        const N = g.getShorthandAssignmentValueSymbol(S.valueDeclaration);
        return zi(N?.declarations ? N.declarations.map((M) => GI(M, g, N, u, !1, T)) : Te, wDe(g, u));
      }
      if (il(u) && Ns(d) && rp(d.parent) && u === (d.propertyName || d.name)) {
        const N = mI(u), M = g.getTypeAtLocation(d.parent);
        return N === void 0 ? Te : ks(M.isUnion() ? M.types : [M], (R) => {
          const G = R.getProperty(N);
          return G && uP(g, G, u);
        });
      }
      const P = wDe(g, u);
      return zi(_, P.length ? P : uP(g, S, u, T));
    }
    function YXe(e, t) {
      var n;
      return e === t.symbol || e === t.symbol.parent || Hl(t.parent) || !Wy(t.parent) && e === ((n = qn(t.parent, jd)) == null ? void 0 : n.symbol);
    }
    function wDe(e, t) {
      const n = FI(t);
      if (n) {
        const i = n && e.getContextualType(n.parent);
        if (i) {
          let a = LI(n, e, i, !1);
          if (_t(a, (o) => !!(o.valueDeclaration && bs(o.valueDeclaration.parent) && zg(o.valueDeclaration) && o.valueDeclaration.name === t))) {
            const o = e.getContextualType(n.parent, 4);
            if (o) {
              const c = LI(n, e, o, !1);
              c.length && (a = c);
            }
          }
          return ks(a, (o) => uP(e, o, t));
        }
      }
      return Te;
    }
    function ZXe(e, t) {
      const n = cr(t, al);
      if (!(n && n.name)) return;
      const i = cr(n, Zn);
      if (!i) return;
      const a = Jd(i);
      if (!a) return;
      const o = Gs(a.expression), c = Hc(o) ? o.symbol : e.getSymbolAtLocation(o);
      if (!c) return;
      const _ = vl(n) ? e.getTypeOfSymbol(c) : e.getDeclaredTypeOfSymbol(c);
      let u;
      if (_s(n.name)) {
        const d = e.getSymbolAtLocation(n.name);
        if (!d) return;
        vD(d) ? u = xr(e.getPropertiesOfType(_), (g) => g.escapedName === d.escapedName) : u = e.getPropertyOfType(_, Ti(d.escapedName));
      } else u = e.getPropertyOfType(_, Ti(Ix(n.name)));
      if (u)
        return uP(e, u, t);
    }
    function PDe(e, t, n) {
      var i, a;
      const o = HI(e.referencedFiles, t);
      if (o) {
        const u = n.getSourceFileFromReference(e, o);
        return u && {
          reference: o,
          fileName: u.fileName,
          file: u,
          unverified: !1
        };
      }
      const c = HI(e.typeReferenceDirectives, t);
      if (c) {
        const u = (i = n.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(c, e)) == null ? void 0 : i.resolvedTypeReferenceDirective, d = u && n.getSourceFile(u.resolvedFileName);
        return d && {
          reference: c,
          fileName: d.fileName,
          file: d,
          unverified: !1
        };
      }
      const _ = HI(e.libReferenceDirectives, t);
      if (_) {
        const u = n.getLibFileFromReference(_);
        return u && {
          reference: _,
          fileName: u.fileName,
          file: u,
          unverified: !1
        };
      }
      if (e.imports.length || e.moduleAugmentations.length) {
        const u = lE(e, t);
        let d;
        if (nL(u) && jl(u.text) && (d = n.getResolvedModuleFromModuleSpecifier(u, e))) {
          const g = (a = d.resolvedModule) == null ? void 0 : a.resolvedFileName, h = g || Fy(Xn(e.fileName), u.text);
          return {
            file: n.getSourceFile(h),
            fileName: h,
            reference: {
              pos: u.getStart(),
              end: u.getEnd(),
              fileName: u.text
            },
            unverified: !g
          };
        }
      }
    }
    var ADe = /* @__PURE__ */ new Set([
      "Array",
      "ArrayLike",
      "ReadonlyArray",
      "Promise",
      "PromiseLike",
      "Iterable",
      "IterableIterator",
      "AsyncIterable",
      "Set",
      "WeakSet",
      "ReadonlySet",
      "Map",
      "WeakMap",
      "ReadonlyMap",
      "Partial",
      "Required",
      "Readonly",
      "Pick",
      "Omit"
    ]);
    function KXe(e, t) {
      const n = t.symbol.name;
      if (!ADe.has(n)) return !1;
      const i = e.resolveName(n, void 0, 788968, !1);
      return !!i && i === t.target.symbol;
    }
    function NDe(e, t) {
      if (!t.aliasSymbol) return !1;
      const n = t.aliasSymbol.name;
      if (!ADe.has(n)) return !1;
      const i = e.resolveName(n, void 0, 788968, !1);
      return !!i && i === t.aliasSymbol;
    }
    function eQe(e, t, n, i) {
      var a, o;
      if (yn(t) & 4 && KXe(e, t)) return qI(e.getTypeArguments(t)[0], e, n, i);
      if (NDe(e, t) && t.aliasTypeArguments) return qI(t.aliasTypeArguments[0], e, n, i);
      if (yn(t) & 32 && t.target && NDe(e, t.target)) {
        const c = (o = (a = t.aliasSymbol) == null ? void 0 : a.declarations) == null ? void 0 : o[0];
        if (c && Kp(c) && xf(c.type) && c.type.typeArguments) return qI(e.getTypeAtLocation(c.type.typeArguments[0]), e, n, i);
      }
      return [];
    }
    function tQe(e, t, n) {
      const i = G_(t, n);
      if (i === t) return;
      if (a6(i.parent) && i.parent.name === i) return qI(e.getTypeAtLocation(i.parent), e, i.parent, !1);
      let { symbol: a, failedAliasResolution: o } = uH(i, e, !1);
      if (hs(i) && (al(i.parent) || Bl(i.parent)) && (a = i.parent.symbol, o = !1), !a) return;
      const c = e.getTypeOfSymbolAtLocation(a, i), _ = rQe(a, c, e), u = _ && qI(_, e, i, o), [d, g] = u && u.length !== 0 ? [_, u] : [c, qI(c, e, i, o)];
      return g.length ? [...eQe(e, d, i, o), ...g] : !(a.flags & 111551) && a.flags & 788968 ? uP(e, mu(a, e), i, o) : void 0;
    }
    function qI(e, t, n, i) {
      return ks(e.isUnion() && !(e.flags & 65536) ? e.types : [e], (a) => a.symbol && uP(t, a.symbol, n, i));
    }
    function rQe(e, t, n) {
      if (t.symbol === e || e.valueDeclaration && t.symbol && ci(e.valueDeclaration) && e.valueDeclaration.initializer === t.symbol.valueDeclaration) {
        const i = t.getCallSignatures();
        if (i.length === 1) return n.getReturnTypeOfSignature(js(i));
      }
    }
    function nQe(e, t, n) {
      const i = DDe(e, t, n);
      if (!i || i.length === 0) return;
      const a = HI(t.referencedFiles, n) || HI(t.typeReferenceDirectives, n) || HI(t.libReferenceDirectives, n);
      if (a) return {
        definitions: i,
        textSpan: V0(a)
      };
      const o = G_(t, n);
      return {
        definitions: i,
        textSpan: du(o.getStart(), o.getWidth())
      };
    }
    function iQe(e, t) {
      return Rn(t.getIndexInfosAtLocation(e), (n) => n.declaration && Gue(t, n.declaration));
    }
    function uH(e, t, n) {
      const i = t.getSymbolAtLocation(e);
      let a = !1;
      if (i?.declarations && i.flags & 2097152 && !n && aQe(e, i.declarations[0])) {
        const o = t.getAliasedSymbol(i);
        if (o.declarations) return { symbol: o };
        a = !0;
      }
      return {
        symbol: i,
        failedAliasResolution: a
      };
    }
    function aQe(e, t) {
      return e.kind !== 80 && (e.kind !== 11 || !By(e.parent)) ? !1 : e.parent === t ? !0 : t.kind !== 275;
    }
    function sQe(e) {
      if (!lD(e)) return !1;
      const t = cr(e, (n) => Hl(n) ? !0 : lD(n) ? !1 : "quit");
      return !!t && qc(t) === 5;
    }
    function uP(e, t, n, i, a) {
      const o = a !== void 0 ? dn(t.declarations, a) : t.declarations, c = !a && (u() || d());
      if (c) return c;
      const _ = dn(o, (h) => !sQe(h));
      return or(_t(_) ? _ : o, (h) => GI(h, e, t, n, !1, i));
      function u() {
        if (t.flags & 32 && !(t.flags & 19) && (Bw(n) || n.kind === 137)) {
          const h = xr(o, Zn);
          return h && g(h.members, !0);
        }
      }
      function d() {
        return LV(n) || WV(n) ? g(o, !1) : void 0;
      }
      function g(h, S) {
        if (!h) return;
        const T = h.filter(S ? yc : Ra), k = T.filter((D) => !!D.body);
        return T.length ? k.length !== 0 ? k.map((D) => GI(D, e, t, n)) : [GI(ws(T), e, t, n, !1, i)] : void 0;
      }
    }
    function GI(e, t, n, i, a, o) {
      const c = t.symbolToString(n);
      return Vue(t, e, H0.getSymbolKind(t, n, i), c, n.parent ? t.symbolToString(n.parent, i) : "", a, o);
    }
    function Vue(e, t, n, i, a, o, c, _) {
      const u = t.getSourceFile();
      return _ || (_ = P_(va(t) || t, u)), {
        fileName: u.fileName,
        textSpan: _,
        kind: n,
        name: i,
        containerKind: void 0,
        containerName: a,
        ...Jo.toContextSpan(_, u, Jo.getContextNode(t)),
        isLocal: !que(e, t),
        isAmbient: !!(t.flags & 33554432),
        unverified: o,
        failedAliasResolution: c
      };
    }
    function oQe(e, t) {
      const n = Jo.getContextNode(e), i = P_(zue(n) ? n.start : n, t);
      return {
        fileName: t.fileName,
        textSpan: i,
        kind: "keyword",
        name: "switch",
        containerKind: void 0,
        containerName: "",
        ...Jo.toContextSpan(i, t, n),
        isLocal: !0,
        isAmbient: !1,
        unverified: !1,
        failedAliasResolution: void 0
      };
    }
    function que(e, t) {
      if (e.isDeclarationVisible(t)) return !0;
      if (!t.parent) return !1;
      if (E0(t.parent) && t.parent.initializer === t) return que(e, t.parent);
      switch (t.kind) {
        case 173:
        case 178:
        case 179:
        case 175:
          if (vf(t, 2)) return !1;
        case 177:
        case 304:
        case 305:
        case 211:
        case 232:
        case 220:
        case 219:
          return que(e, t.parent);
        default:
          return !1;
      }
    }
    function Gue(e, t, n) {
      return GI(t, e, t.symbol, t, !1, n);
    }
    function HI(e, t) {
      return xr(e, (n) => T3(n, t));
    }
    function cQe(e, t, n) {
      return {
        fileName: t,
        textSpan: Vc(0, 0),
        kind: "script",
        name: e,
        containerName: void 0,
        containerKind: void 0,
        unverified: n
      };
    }
    function lQe(e) {
      const t = cr(e, (i) => !sE(i)), n = t?.parent;
      return n && Wy(n) && P5(n) === t ? n : void 0;
    }
    function uQe(e, t) {
      const n = lQe(t), i = n && e.getResolvedSignature(n);
      return qn(i && i.declaration, (a) => Ra(a) && !mg(a));
    }
    function _Qe(e) {
      switch (e.kind) {
        case 177:
        case 186:
        case 180:
        case 181:
          return !0;
        default:
          return !1;
      }
    }
    var _H = {};
    gi(_H, { provideInlayHints: () => mQe });
    var fQe = (e) => new RegExp(`^\\s?/\\*\\*?\\s?${e}\\s?\\*\\/\\s?$`);
    function pQe(e) {
      return e.includeInlayParameterNameHints === "literals" || e.includeInlayParameterNameHints === "all";
    }
    function dQe(e) {
      return e.includeInlayParameterNameHints === "literals";
    }
    function Hue(e) {
      return e.interactiveInlayHints === !0;
    }
    function mQe(e) {
      const { file: t, program: n, span: i, cancellationToken: a, preferences: o } = e, c = t.text, _ = n.getCompilerOptions(), u = Df(t, o), d = n.getTypeChecker(), g = [];
      return h(t), g;
      function h(ce) {
        if (!(!ce || ce.getFullWidth() === 0)) {
          switch (ce.kind) {
            case 268:
            case 264:
            case 265:
            case 263:
            case 232:
            case 219:
            case 175:
            case 220:
              a.throwIfCancellationRequested();
          }
          if (x3(i, ce.pos, ce.getFullWidth()) && !(ui(ce) && !rh(ce)))
            return o.includeInlayVariableTypeHints && ci(ce) || o.includeInlayPropertyDeclarationTypeHints && ga(ce) ? M(ce) : o.includeInlayEnumMemberValueHints && Gh(ce) ? P(ce) : pQe(o) && (za(ce) || Xb(ce)) ? R(ce) : (o.includeInlayFunctionParameterTypeHints && So(ce) && AO(ce) && pe(ce), o.includeInlayFunctionLikeReturnTypeHints && S(ce) && H(ce)), Fa(ce, h);
        }
      }
      function S(ce) {
        return Bo(ce) || Lo(ce) || Xc(ce) || hc(ce) || Dp(ce);
      }
      function T(ce, oe, ge, Ae) {
        let Ne = `${Ae ? "..." : ""}${ce}`, ot;
        Hue(o) ? (ot = [Be(Ne, oe), { text: ":" }], Ne = "") : Ne += ":", g.push({
          text: Ne,
          position: ge,
          kind: "Parameter",
          whitespaceAfter: !0,
          displayParts: ot
        });
      }
      function k(ce, oe) {
        g.push({
          text: typeof ce == "string" ? `: ${ce}` : "",
          displayParts: typeof ce == "string" ? void 0 : [{ text: ": " }, ...ce],
          position: oe,
          kind: "Type",
          whitespaceBefore: !0
        });
      }
      function D(ce, oe) {
        g.push({
          text: `= ${ce}`,
          position: oe,
          kind: "Enum",
          whitespaceBefore: !0
        });
      }
      function P(ce) {
        if (ce.initializer) return;
        const oe = d.getConstantValue(ce);
        oe !== void 0 && D(oe.toString(), ce.end);
      }
      function N(ce) {
        return ce.symbol && ce.symbol.flags & 1536;
      }
      function M(ce) {
        if (ce.initializer === void 0 && !(ga(ce) && !(d.getTypeAtLocation(ce).flags & 1)) || Ja(ce.name) || ci(ce) && !Se(ce) || _l(ce)) return;
        const oe = d.getTypeAtLocation(ce);
        if (N(oe)) return;
        const ge = he(oe);
        if (ge) {
          const Ae = typeof ge == "string" ? ge : ge.map((Ne) => Ne.text).join("");
          if (o.includeInlayVariableTypeHintsWhenTypeMatchesName === !1 && ev(ce.name.getText(), Ae)) return;
          k(ge, ce.name.end);
        }
      }
      function R(ce) {
        const oe = ce.arguments;
        if (!oe || !oe.length) return;
        const ge = d.getResolvedSignature(ce);
        if (ge === void 0) return;
        let Ae = 0;
        for (const Ne of oe) {
          const ot = Gs(Ne);
          if (dQe(o) && !z(ot)) {
            Ae++;
            continue;
          }
          let K = 0;
          if (wp(ot)) {
            const ae = d.getTypeAtLocation(ot.expression);
            if (d.isTupleType(ae)) {
              const { elementFlags: Ce, fixedLength: ue } = ae.target;
              if (ue === 0) continue;
              const Ie = qs(Ce, (Xe) => !(Xe & 1));
              (Ie < 0 ? ue : Ie) > 0 && (K = Ie < 0 ? ue : Ie);
            }
          }
          const ke = d.getParameterIdentifierInfoAtPosition(ge, Ae);
          if (Ae = Ae + (K || 1), ke) {
            const { parameter: ae, parameterName: Ce, isRestParameter: ue } = ke;
            if (!(o.includeInlayParameterNameHintsWhenArgumentMatchesName || !G(ot, Ce)) && !ue) continue;
            const Ie = Ti(Ce);
            if (L(ot, Ie)) continue;
            T(Ie, ae, Ne.getStart(), ue);
          }
        }
      }
      function G(ce, oe) {
        return Fe(ce) ? ce.text === oe : Ln(ce) ? ce.name.text === oe : !1;
      }
      function L(ce, oe) {
        if (!Y_(oe, Ps(_), FA(t.scriptKind))) return !1;
        const ge = jg(c, ce.pos);
        if (!ge?.length) return !1;
        const Ae = fQe(oe);
        return _t(ge, (Ne) => Ae.test(c.substring(Ne.pos, Ne.end)));
      }
      function z(ce) {
        switch (ce.kind) {
          case 225: {
            const oe = ce.operand;
            return _S(oe) || Fe(oe) && UD(oe.escapedText);
          }
          case 112:
          case 97:
          case 106:
          case 15:
          case 229:
            return !0;
          case 80: {
            const oe = ce.escapedText;
            return $(oe) || UD(oe);
          }
        }
        return _S(ce);
      }
      function H(ce) {
        if (Bo(ce) && !uo(ce, 21, t) || yf(ce) || !ce.body) return;
        const oe = d.getSignatureFromDeclaration(ce);
        if (!oe) return;
        const ge = d.getTypePredicateOfSignature(oe);
        if (ge?.type) {
          const ot = fe(ge);
          if (ot) {
            k(ot, U(ce));
            return;
          }
        }
        const Ae = d.getReturnTypeOfSignature(oe);
        if (N(Ae)) return;
        const Ne = he(Ae);
        Ne && k(Ne, U(ce));
      }
      function U(ce) {
        const oe = uo(ce, 22, t);
        return oe ? oe.end : ce.parameters.end;
      }
      function pe(ce) {
        const oe = d.getSignatureFromDeclaration(ce);
        if (!oe) return;
        let ge = 0;
        for (const Ae of ce.parameters)
          Se(Ae) && ie(Ae, Yy(Ae) ? oe.thisParameter : oe.parameters[ge]), !Yy(Ae) && ge++;
      }
      function ie(ce, oe) {
        if (_l(ce) || oe === void 0) return;
        const ge = W(oe);
        ge !== void 0 && k(ge, ce.questionToken ? ce.questionToken.end : ce.name.end);
      }
      function W(ce) {
        const oe = ce.valueDeclaration;
        if (!oe || !Fi(oe)) return;
        const ge = d.getTypeOfSymbolAtLocation(ce, oe);
        if (!N(ge))
          return he(ge);
      }
      function Q(ce) {
        const ge = i2();
        return e6((Ae) => {
          const Ne = d.typeToTypeNode(ce, void 0, 71286784);
          E.assertIsDefined(Ne, "should always get typenode"), ge.writeNode(4, Ne, t, Ae);
        });
      }
      function se(ce) {
        const ge = i2();
        return e6((Ae) => {
          const Ne = d.typePredicateToTypePredicateNode(ce, void 0, 71286784);
          E.assertIsDefined(Ne, "should always get typePredicateNode"), ge.writeNode(4, Ne, t, Ae);
        });
      }
      function he(ce) {
        if (!Hue(o)) return Q(ce);
        const oe = d.typeToTypeNode(ce, void 0, 71286784);
        return E.assertIsDefined(oe, "should always get typeNode"), de(oe);
      }
      function fe(ce) {
        if (!Hue(o)) return se(ce);
        const oe = d.typePredicateToTypePredicateNode(ce, void 0, 71286784);
        return E.assertIsDefined(oe, "should always get typenode"), de(oe);
      }
      function de(ce) {
        const oe = [];
        return ge(ce), oe;
        function ge(K) {
          var ke, ae;
          if (!K) return;
          const Ce = as(K.kind);
          if (Ce) {
            oe.push({ text: Ce });
            return;
          }
          if (_S(K)) {
            oe.push({ text: ot(K) });
            return;
          }
          switch (K.kind) {
            case 80:
              E.assertNode(K, Fe);
              const ue = On(K), Ie = K.symbol && K.symbol.declarations && K.symbol.declarations.length && va(K.symbol.declarations[0]);
              Ie ? oe.push(Be(ue, Ie)) : oe.push({ text: ue });
              break;
            case 167:
              E.assertNode(K, k_), ge(K.left), oe.push({ text: "." }), ge(K.right);
              break;
            case 183:
              E.assertNode(K, _k), K.assertsModifier && oe.push({ text: "asserts " }), ge(K.parameterName), K.type && (oe.push({ text: " is " }), ge(K.type));
              break;
            case 184:
              E.assertNode(K, xf), ge(K.typeName), K.typeArguments && (oe.push({ text: "<" }), Ne(K.typeArguments, ", "), oe.push({ text: ">" }));
              break;
            case 169:
              E.assertNode(K, $o), K.modifiers && (Ne(K.modifiers, " "), oe.push({ text: " " })), ge(K.name), K.constraint && (oe.push({ text: " extends " }), ge(K.constraint)), K.default && (oe.push({ text: " = " }), ge(K.default));
              break;
            case 170:
              E.assertNode(K, Fi), K.modifiers && (Ne(K.modifiers, " "), oe.push({ text: " " })), K.dotDotDotToken && oe.push({ text: "..." }), ge(K.name), K.questionToken && oe.push({ text: "?" }), K.type && (oe.push({ text: ": " }), ge(K.type));
              break;
            case 186:
              E.assertNode(K, D6), oe.push({ text: "new " }), Ae(K), oe.push({ text: " => " }), ge(K.type);
              break;
            case 187:
              E.assertNode(K, Gb), oe.push({ text: "typeof " }), ge(K.exprName), K.typeArguments && (oe.push({ text: "<" }), Ne(K.typeArguments, ", "), oe.push({ text: ">" }));
              break;
            case 188:
              E.assertNode(K, C_), oe.push({ text: "{" }), K.members.length && (oe.push({ text: " " }), Ne(K.members, "; "), oe.push({ text: " " })), oe.push({ text: "}" });
              break;
            case 189:
              E.assertNode(K, aN), ge(K.elementType), oe.push({ text: "[]" });
              break;
            case 190:
              E.assertNode(K, fk), oe.push({ text: "[" }), Ne(K.elements, ", "), oe.push({ text: "]" });
              break;
            case 203:
              E.assertNode(K, w6), K.dotDotDotToken && oe.push({ text: "..." }), ge(K.name), K.questionToken && oe.push({ text: "?" }), oe.push({ text: ": " }), ge(K.type);
              break;
            case 191:
              E.assertNode(K, QO), ge(K.type), oe.push({ text: "?" });
              break;
            case 192:
              E.assertNode(K, YO), oe.push({ text: "..." }), ge(K.type);
              break;
            case 193:
              E.assertNode(K, j0), Ne(K.types, " | ");
              break;
            case 194:
              E.assertNode(K, pk), Ne(K.types, " & ");
              break;
            case 195:
              E.assertNode(K, Hb), ge(K.checkType), oe.push({ text: " extends " }), ge(K.extendsType), oe.push({ text: " ? " }), ge(K.trueType), oe.push({ text: " : " }), ge(K.falseType);
              break;
            case 196:
              E.assertNode(K, OS), oe.push({ text: "infer " }), ge(K.typeParameter);
              break;
            case 197:
              E.assertNode(K, FS), oe.push({ text: "(" }), ge(K.type), oe.push({ text: ")" });
              break;
            case 199:
              E.assertNode(K, Tv), oe.push({ text: `${as(K.operator)} ` }), ge(K.type);
              break;
            case 200:
              E.assertNode(K, $b), ge(K.objectType), oe.push({ text: "[" }), ge(K.indexType), oe.push({ text: "]" });
              break;
            case 201:
              E.assertNode(K, LS), oe.push({ text: "{ " }), K.readonlyToken && (K.readonlyToken.kind === 40 ? oe.push({ text: "+" }) : K.readonlyToken.kind === 41 && oe.push({ text: "-" }), oe.push({ text: "readonly " })), oe.push({ text: "[" }), ge(K.typeParameter), K.nameType && (oe.push({ text: " as " }), ge(K.nameType)), oe.push({ text: "]" }), K.questionToken && (K.questionToken.kind === 40 ? oe.push({ text: "+" }) : K.questionToken.kind === 41 && oe.push({ text: "-" }), oe.push({ text: "?" })), oe.push({ text: ": " }), K.type && ge(K.type), oe.push({ text: "; }" });
              break;
            case 202:
              E.assertNode(K, B0), ge(K.literal);
              break;
            case 185:
              E.assertNode(K, mg), Ae(K), oe.push({ text: " => " }), ge(K.type);
              break;
            case 206:
              E.assertNode(K, Am), K.isTypeOf && oe.push({ text: "typeof " }), oe.push({ text: "import(" }), ge(K.argument), K.assertions && (oe.push({ text: ", { assert: " }), Ne(K.assertions.assertClause.elements, ", "), oe.push({ text: " }" })), oe.push({ text: ")" }), K.qualifier && (oe.push({ text: "." }), ge(K.qualifier)), K.typeArguments && (oe.push({ text: "<" }), Ne(K.typeArguments, ", "), oe.push({ text: ">" }));
              break;
            case 172:
              E.assertNode(K, f_), (ke = K.modifiers) != null && ke.length && (Ne(K.modifiers, " "), oe.push({ text: " " })), ge(K.name), K.questionToken && oe.push({ text: "?" }), K.type && (oe.push({ text: ": " }), ge(K.type));
              break;
            case 182:
              E.assertNode(K, s1), oe.push({ text: "[" }), Ne(K.parameters, ", "), oe.push({ text: "]" }), K.type && (oe.push({ text: ": " }), ge(K.type));
              break;
            case 174:
              E.assertNode(K, gd), (ae = K.modifiers) != null && ae.length && (Ne(K.modifiers, " "), oe.push({ text: " " })), ge(K.name), K.questionToken && oe.push({ text: "?" }), Ae(K), K.type && (oe.push({ text: ": " }), ge(K.type));
              break;
            case 180:
              E.assertNode(K, uk), Ae(K), K.type && (oe.push({ text: ": " }), ge(K.type));
              break;
            case 181:
              E.assertNode(K, tw), oe.push({ text: "new " }), Ae(K), K.type && (oe.push({ text: ": " }), ge(K.type));
              break;
            case 208:
              E.assertNode(K, J0), oe.push({ text: "[" }), Ne(K.elements, ", "), oe.push({ text: "]" });
              break;
            case 207:
              E.assertNode(K, rp), oe.push({ text: "{" }), K.elements.length && (oe.push({ text: " " }), Ne(K.elements, ", "), oe.push({ text: " " })), oe.push({ text: "}" });
              break;
            case 209:
              E.assertNode(K, Ns), ge(K.name);
              break;
            case 225:
              E.assertNode(K, kv), oe.push({ text: as(K.operator) }), ge(K.operand);
              break;
            case 204:
              E.assertNode(K, Vte), ge(K.head), K.templateSpans.forEach(ge);
              break;
            case 16:
              E.assertNode(K, ok), oe.push({ text: ot(K) });
              break;
            case 205:
              E.assertNode(K, Iz), ge(K.type), ge(K.literal);
              break;
            case 17:
              E.assertNode(K, Dz), oe.push({ text: ot(K) });
              break;
            case 18:
              E.assertNode(K, GO), oe.push({ text: ot(K) });
              break;
            case 198:
              E.assertNode(K, rw), oe.push({ text: "this" });
              break;
            case 168:
              E.assertNode(K, _s), oe.push({ text: "[" }), ge(K.expression), oe.push({ text: "]" });
              break;
            default:
              E.failBadSyntaxKind(K);
          }
        }
        function Ae(K) {
          K.typeParameters && (oe.push({ text: "<" }), Ne(K.typeParameters, ", "), oe.push({ text: ">" })), oe.push({ text: "(" }), Ne(K.parameters, ", "), oe.push({ text: ")" });
        }
        function Ne(K, ke) {
          K.forEach((ae, Ce) => {
            Ce > 0 && oe.push({ text: ke }), ge(ae);
          });
        }
        function ot(K) {
          switch (K.kind) {
            case 11:
              return u === 0 ? `'${dg(K.text, 39)}'` : `"${dg(K.text, 34)}"`;
            case 16:
            case 17:
            case 18: {
              const ke = K.rawText ?? lJ(dg(K.text, 96));
              switch (K.kind) {
                case 16:
                  return "`" + ke + "${";
                case 17:
                  return "}" + ke + "${";
                case 18:
                  return "}" + ke + "`";
              }
            }
          }
          return K.text;
        }
      }
      function $(ce) {
        return ce === "undefined";
      }
      function Se(ce) {
        if ((mv(ce) || ci(ce) && i6(ce)) && ce.initializer) {
          const oe = Gs(ce.initializer);
          return !(z(oe) || Xb(oe) || bs(oe) || Db(oe));
        }
        return !0;
      }
      function Be(ce, oe) {
        const ge = oe.getSourceFile();
        return {
          text: ce,
          span: P_(oe, ge),
          file: ge.fileName
        };
      }
    }
    var qv = {};
    gi(qv, {
      getDocCommentTemplateAtPosition: () => EQe,
      getJSDocParameterNameCompletionDetails: () => CQe,
      getJSDocParameterNameCompletions: () => kQe,
      getJSDocTagCompletionDetails: () => jDe,
      getJSDocTagCompletions: () => xQe,
      getJSDocTagNameCompletionDetails: () => TQe,
      getJSDocTagNameCompletions: () => SQe,
      getJsDocCommentsFromDeclarations: () => gQe,
      getJsDocTagsFromDeclarations: () => vQe
    });
    var IDe = [
      "abstract",
      "access",
      "alias",
      "argument",
      "async",
      "augments",
      "author",
      "borrows",
      "callback",
      "class",
      "classdesc",
      "constant",
      "constructor",
      "constructs",
      "copyright",
      "default",
      "deprecated",
      "description",
      "emits",
      "enum",
      "event",
      "example",
      "exports",
      "extends",
      "external",
      "field",
      "file",
      "fileoverview",
      "fires",
      "function",
      "generator",
      "global",
      "hideconstructor",
      "host",
      "ignore",
      "implements",
      "import",
      "inheritdoc",
      "inner",
      "instance",
      "interface",
      "kind",
      "lends",
      "license",
      "link",
      "linkcode",
      "linkplain",
      "listens",
      "member",
      "memberof",
      "method",
      "mixes",
      "module",
      "name",
      "namespace",
      "overload",
      "override",
      "package",
      "param",
      "private",
      "prop",
      "property",
      "protected",
      "public",
      "readonly",
      "requires",
      "returns",
      "satisfies",
      "see",
      "since",
      "static",
      "summary",
      "template",
      "this",
      "throws",
      "todo",
      "tutorial",
      "type",
      "typedef",
      "var",
      "variation",
      "version",
      "virtual",
      "yields"
    ], ODe, FDe;
    function gQe(e, t) {
      const n = [];
      return pq(e, (i) => {
        for (const a of yQe(i)) {
          const o = Hd(a) && a.tags && xr(a.tags, (_) => _.kind === 328 && (_.tagName.escapedText === "inheritDoc" || _.tagName.escapedText === "inheritdoc"));
          if (a.comment === void 0 && !o || Hd(a) && i.kind !== 347 && i.kind !== 339 && a.tags && a.tags.some((_) => _.kind === 347 || _.kind === 339) && !a.tags.some((_) => _.kind === 342 || _.kind === 343)) continue;
          let c = a.comment ? xE(a.comment, t) : [];
          o && o.comment && (c = c.concat(xE(o.comment, t))), Gi(n, c, hQe) || n.push(c);
        }
      }), Rf(Jn(n, [pE()]));
    }
    function hQe(e, t) {
      return jf(e, t, (n, i) => n.kind === i.kind && n.text === i.text);
    }
    function yQe(e) {
      switch (e.kind) {
        case 342:
        case 349:
          return [e];
        case 339:
        case 347:
          return [e, e.parent];
        case 324:
          if (j6(e.parent)) return [e.parent.parent];
        default:
          return HB(e);
      }
    }
    function vQe(e, t) {
      const n = [];
      return pq(e, (i) => {
        const a = av(i);
        if (!(a.some((o) => o.kind === 347 || o.kind === 339) && !a.some((o) => o.kind === 342 || o.kind === 343)))
          for (const o of a)
            n.push({
              name: o.tagName.text,
              text: RDe(o, t)
            }), n.push(...LDe(MDe(o), t));
      }), n;
    }
    function LDe(e, t) {
      return ks(e, (n) => zi([{
        name: n.tagName.text,
        text: RDe(n, t)
      }], LDe(MDe(n), t)));
    }
    function MDe(e) {
      return G4(e) && e.isNameFirst && e.typeExpression && zS(e.typeExpression.type) ? e.typeExpression.type.jsDocPropertyTags : void 0;
    }
    function xE(e, t) {
      return typeof e == "string" ? [sp(e)] : ks(e, (n) => n.kind === 322 ? [sp(n.text)] : Pse(n, t));
    }
    function RDe(e, t) {
      const { comment: n, kind: i } = e, a = bQe(i);
      switch (i) {
        case 350:
          const _ = e.typeExpression;
          return _ ? o(_) : n === void 0 ? void 0 : xE(n, t);
        case 330:
          return o(e.class);
        case 329:
          return o(e.class);
        case 346:
          const u = e, d = [];
          if (u.constraint && d.push(sp(u.constraint.getText())), It(u.typeParameters)) {
            It(d) && d.push(Ec());
            const h = u.typeParameters[u.typeParameters.length - 1];
            bt(u.typeParameters, (S) => {
              d.push(a(S.getText())), h !== S && d.push(Yu(28), Ec());
            });
          }
          return n && d.push(Ec(), ...xE(n, t)), d;
        case 345:
        case 351:
          return o(e.typeExpression);
        case 347:
        case 339:
        case 349:
        case 342:
        case 348:
          const { name: g } = e;
          return g ? o(g) : n === void 0 ? void 0 : xE(n, t);
        default:
          return n === void 0 ? void 0 : xE(n, t);
      }
      function o(_) {
        return c(_.getText());
      }
      function c(_) {
        return n ? _.match(/^https?$/) ? [sp(_), ...xE(n, t)] : [
          a(_),
          Ec(),
          ...xE(n, t)
        ] : [sp(_)];
      }
    }
    function bQe(e) {
      switch (e) {
        case 342:
          return kse;
        case 349:
          return Cse;
        case 346:
          return Dse;
        case 347:
        case 339:
          return Ese;
        default:
          return sp;
      }
    }
    function SQe() {
      return ODe || (ODe = or(IDe, (e) => ({
        name: e,
        kind: "keyword",
        kindModifiers: "",
        sortText: Vk.SortText.LocationPriority
      })));
    }
    var TQe = jDe;
    function xQe() {
      return FDe || (FDe = or(IDe, (e) => ({
        name: `@${e}`,
        kind: "keyword",
        kindModifiers: "",
        sortText: Vk.SortText.LocationPriority
      })));
    }
    function jDe(e) {
      return {
        name: e,
        kind: "",
        kindModifiers: "",
        displayParts: [sp(e)],
        documentation: Te,
        tags: void 0,
        codeActions: void 0
      };
    }
    function kQe(e) {
      if (!Fe(e.name)) return Te;
      const t = e.name.text, n = e.parent, i = n.parent;
      return Ra(i) ? Rn(i.parameters, (a) => {
        if (!Fe(a.name)) return;
        const o = a.name.text;
        if (!(n.tags.some((c) => c !== e && np(c) && Fe(c.name) && c.name.escapedText === o) || t !== void 0 && !ta(o, t)))
          return {
            name: o,
            kind: "parameter",
            kindModifiers: "",
            sortText: Vk.SortText.LocationPriority
          };
      }) : [];
    }
    function CQe(e) {
      return {
        name: e,
        kind: "parameter",
        kindModifiers: "",
        displayParts: [sp(e)],
        documentation: Te,
        tags: void 0,
        codeActions: void 0
      };
    }
    function EQe(e, t, n, i) {
      const a = xi(t, n), o = cr(a, Hd);
      if (o && (o.comment !== void 0 || It(o.tags))) return;
      const c = a.getStart(t);
      if (!o && c < n) return;
      const _ = AQe(a, i);
      if (!_) return;
      const { commentOwner: u, parameters: d, hasReturn: g } = _, h = Wo(Jf(u) && u.jsDoc ? u.jsDoc : void 0);
      if (u.getStart(t) < n || h && o && h !== o) return;
      const S = DQe(t, n), T = Zg(t.fileName), k = (d ? wQe(d || [], T, S, e) : "") + (g ? PQe(S, e) : ""), D = "/**", P = " */", N = It(av(u)) > 0;
      if (k && !N) {
        const M = D + e + S + " * ", R = c === n ? e + S : "";
        return {
          newText: M + e + k + S + P + R,
          caretOffset: M.length
        };
      }
      return {
        newText: D + P,
        caretOffset: 3
      };
    }
    function DQe(e, t) {
      const { text: n } = e, i = rd(t, e);
      let a = i;
      for (; a <= t && hm(n.charCodeAt(a)); a++) ;
      return n.slice(i, a);
    }
    function wQe(e, t, n, i) {
      return e.map(({ name: a, dotDotDotToken: o }, c) => {
        const _ = a.kind === 80 ? a.text : "param" + c;
        return `${n} * @param ${t ? o ? "{...any} " : "{any} " : ""}${_}${i}`;
      }).join("");
    }
    function PQe(e, t) {
      return `${e} * @returns${t}`;
    }
    function AQe(e, t) {
      return ZZ(e, (n) => $ue(n, t));
    }
    function $ue(e, t) {
      switch (e.kind) {
        case 263:
        case 219:
        case 175:
        case 177:
        case 174:
        case 220:
          const n = e;
          return {
            commentOwner: e,
            parameters: n.parameters,
            hasReturn: eM(n, t)
          };
        case 304:
          return $ue(e.initializer, t);
        case 264:
        case 265:
        case 267:
        case 307:
        case 266:
          return { commentOwner: e };
        case 172: {
          const a = e;
          return a.type && mg(a.type) ? {
            commentOwner: e,
            parameters: a.type.parameters,
            hasReturn: eM(a.type, t)
          } : { commentOwner: e };
        }
        case 244: {
          const a = e.declarationList.declarations, o = a.length === 1 && a[0].initializer ? NQe(a[0].initializer) : void 0;
          return o ? {
            commentOwner: e,
            parameters: o.parameters,
            hasReturn: eM(o, t)
          } : { commentOwner: e };
        }
        case 308:
          return "quit";
        case 268:
          return e.parent.kind === 268 ? void 0 : { commentOwner: e };
        case 245:
          return $ue(e.expression, t);
        case 227: {
          const a = e;
          return qc(a) === 0 ? "quit" : Ra(a.right) ? {
            commentOwner: e,
            parameters: a.right.parameters,
            hasReturn: eM(a.right, t)
          } : { commentOwner: e };
        }
        case 173:
          const i = e.initializer;
          if (i && (Lo(i) || Bo(i))) return {
            commentOwner: e,
            parameters: i.parameters,
            hasReturn: eM(i, t)
          };
      }
    }
    function eM(e, t) {
      return !!t?.generateReturnInDocTemplate && (mg(e) || Bo(e) && dt(e.body) || So(e) && e.body && Wa(e.body) && !!Hy(e.body, (n) => n));
    }
    function NQe(e) {
      for (; e.kind === 218; ) e = e.expression;
      switch (e.kind) {
        case 219:
        case 220:
          return e;
        case 232:
          return xr(e.members, yc);
      }
    }
    var fH = {};
    gi(fH, { mapCode: () => IQe });
    function IQe(e, t, n, i, a, o) {
      return on.ChangeTracker.with({
        host: i,
        formatContext: a,
        preferences: o
      }, (c) => {
        const _ = t.map((d) => OQe(e, d)), u = n && Rf(n);
        for (const d of _) FQe(e, c, d, u);
      });
    }
    function OQe(e, t) {
      const n = [{
        parse: () => Sk("__mapcode_content_nodes.ts", t, e.languageVersion, !0, e.scriptKind),
        body: (o) => o.statements
      }, {
        parse: () => Sk("__mapcode_class_content_nodes.ts", `class __class {
${t}
}`, e.languageVersion, !0, e.scriptKind),
        body: (o) => o.statements[0].members
      }], i = [];
      for (const { parse: o, body: c } of n) {
        const _ = o(), u = c(_);
        if (u.length && _.parseDiagnostics.length === 0) return u;
        u.length && i.push({
          sourceFile: _,
          body: u
        });
      }
      i.sort((o, c) => o.sourceFile.parseDiagnostics.length - c.sourceFile.parseDiagnostics.length);
      const { body: a } = i[0];
      return a;
    }
    function FQe(e, t, n, i) {
      al(n[0]) || Eb(n[0]) ? LQe(e, t, n, i) : MQe(e, t, n, i);
    }
    function LQe(e, t, n, i) {
      let a;
      if (!i || !i.length ? a = xr(e.statements, _f(Zn, au)) : a = bt(i, (c) => cr(xi(e, c.start), _f(Zn, au))), !a) return;
      const o = a.members.find((c) => n.some((_) => tM(_, c)));
      if (o) {
        const c = Ya(a.members, (_) => n.some((u) => tM(u, _)));
        bt(n, pH), t.replaceNodeRangeWithNodes(e, o, c, n);
        return;
      }
      bt(n, pH), t.insertNodesAfter(e, a.members[a.members.length - 1], n);
    }
    function MQe(e, t, n, i) {
      if (!i?.length) {
        t.insertNodesAtEndOfFile(e, n, !1);
        return;
      }
      for (const o of i) {
        const c = cr(xi(e, o.start), (_) => _f(Wa, Pi)(_) && _t(_.statements, (u) => n.some((d) => tM(d, u))));
        if (c) {
          const _ = c.statements.find((u) => n.some((d) => tM(d, u)));
          if (_) {
            const u = Ya(c.statements, (d) => n.some((g) => tM(g, d)));
            bt(n, pH), t.replaceNodeRangeWithNodes(e, _, u, n);
            return;
          }
        }
      }
      let a = e.statements;
      for (const o of i) {
        const c = cr(xi(e, o.start), Wa);
        if (c) {
          a = c.statements;
          break;
        }
      }
      bt(n, pH), t.insertNodesAfter(e, a[a.length - 1], n);
    }
    function tM(e, t) {
      var n, i, a, o, c, _;
      return e.kind !== t.kind ? !1 : e.kind === 177 ? e.kind === t.kind : Bl(e) && Bl(t) ? e.name.getText() === t.name.getText() : Cv(e) && Cv(t) || Lz(e) && Lz(t) ? e.expression.getText() === t.expression.getText() : Ev(e) && Ev(t) ? ((n = e.initializer) == null ? void 0 : n.getText()) === ((i = t.initializer) == null ? void 0 : i.getText()) && ((a = e.incrementor) == null ? void 0 : a.getText()) === ((o = t.incrementor) == null ? void 0 : o.getText()) && ((c = e.condition) == null ? void 0 : c.getText()) === ((_ = t.condition) == null ? void 0 : _.getText()) : wb(e) && wb(t) ? e.expression.getText() === t.expression.getText() && e.initializer.getText() === t.initializer.getText() : c1(e) && c1(t) ? e.label.getText() === t.label.getText() : e.getText() === t.getText();
    }
    function pH(e) {
      BDe(e), e.parent = void 0;
    }
    function BDe(e) {
      e.pos = -1, e.end = -1, e.forEachChild(BDe);
    }
    var Gv = {};
    gi(Gv, {
      compareImportsOrRequireStatements: () => r_e,
      compareModuleSpecifiers: () => tYe,
      getImportDeclarationInsertionIndex: () => YQe,
      getImportSpecifierInsertionIndex: () => ZQe,
      getNamedImportSpecifierComparerWithDetection: () => QQe,
      getOrganizeImportsStringComparerWithDetection: () => XQe,
      organizeImports: () => RQe,
      testCoalesceExports: () => eYe,
      testCoalesceImports: () => KQe
    });
    function RQe(e, t, n, i, a, o) {
      const c = on.ChangeTracker.fromContext({
        host: n,
        formatContext: t,
        preferences: a
      }), _ = o === "SortAndCombine" || o === "All", u = _, d = o === "RemoveUnused" || o === "All", g = e.statements.filter(ic), h = Que(e, g), { comparersToTest: S, typeOrdersToTest: T } = Xue(a), k = S[0], D = {
        moduleSpecifierComparer: typeof a.organizeImportsIgnoreCase == "boolean" ? k : void 0,
        namedImportComparer: typeof a.organizeImportsIgnoreCase == "boolean" ? k : void 0,
        typeOrder: a.organizeImportsTypeOrder
      };
      if (typeof a.organizeImportsIgnoreCase != "boolean" && ({ comparer: D.moduleSpecifierComparer } = WDe(h, S)), !D.typeOrder || typeof a.organizeImportsIgnoreCase != "boolean") {
        const R = e_e(g, S, T);
        if (R) {
          const { namedImportComparer: G, typeOrder: L } = R;
          D.namedImportComparer = D.namedImportComparer ?? G, D.typeOrder = D.typeOrder ?? L;
        }
      }
      h.forEach((R) => N(R, D)), o !== "RemoveUnused" && BQe(e).forEach((R) => M(R, D.namedImportComparer));
      for (const R of e.statements.filter(o_))
        R.body && (Que(e, R.body.statements.filter(ic)).forEach((G) => N(G, D)), o !== "RemoveUnused" && M(R.body.statements.filter(tl), D.namedImportComparer));
      return c.getChanges();
      function P(R, G) {
        if (It(R) === 0) return;
        ln(R[0], 1024);
        const L = u ? BC(R, (H) => rM(H.moduleSpecifier)) : [R], z = ks(_ ? uf(L, (H, U) => Zue(H[0].moduleSpecifier, U[0].moduleSpecifier, D.moduleSpecifierComparer ?? k)) : L, (H) => rM(H[0].moduleSpecifier) || H[0].moduleSpecifier === void 0 ? G(H) : H);
        if (z.length === 0) c.deleteNodes(e, R, {
          leadingTriviaOption: on.LeadingTriviaOption.Exclude,
          trailingTriviaOption: on.TrailingTriviaOption.Include
        }, !0);
        else {
          const H = {
            leadingTriviaOption: on.LeadingTriviaOption.Exclude,
            trailingTriviaOption: on.TrailingTriviaOption.Include,
            suffix: Xh(n, t.options)
          };
          c.replaceNodeWithNodes(e, R[0], z, H);
          const U = c.nodeHasTrailingComment(e, R[0], H);
          c.deleteNodes(e, R.slice(1), { trailingTriviaOption: on.TrailingTriviaOption.Include }, U);
        }
      }
      function N(R, G) {
        const L = G.moduleSpecifierComparer ?? k, z = G.namedImportComparer ?? k, H = XI({ organizeImportsTypeOrder: G.typeOrder ?? "last" }, z);
        P(R, (pe) => (d && (pe = JQe(pe, e, i)), u && (pe = JDe(pe, L, H, e)), _ && (pe = uf(pe, (ie, W) => r_e(ie, W, L))), pe));
      }
      function M(R, G) {
        const L = XI(a, G);
        P(R, (z) => zDe(z, L));
      }
    }
    function Xue(e) {
      return {
        comparersToTest: typeof e.organizeImportsIgnoreCase == "boolean" ? [t_e(e, e.organizeImportsIgnoreCase)] : [t_e(e, !0), t_e(e, !1)],
        typeOrdersToTest: e.organizeImportsTypeOrder ? [e.organizeImportsTypeOrder] : [
          "last",
          "inline",
          "first"
        ]
      };
    }
    function Que(e, t) {
      const n = Bg(e.languageVersion, !1, e.languageVariant), i = [];
      let a = 0;
      for (const o of t)
        i[a] && jQe(e, o, n) && a++, i[a] || (i[a] = []), i[a].push(o);
      return i;
    }
    function jQe(e, t, n) {
      const i = t.getFullStart(), a = t.getStart();
      n.setText(e.text, i, a - i);
      let o = 0;
      for (; n.getTokenStart() < a; ) if (n.scan() === 4 && (o++, o >= 2))
        return !0;
      return !1;
    }
    function BQe(e) {
      const t = [], n = e.statements, i = It(n);
      let a = 0, o = 0;
      for (; a < i; ) if (tl(n[a])) {
        t[o] === void 0 && (t[o] = []);
        const c = n[a];
        if (c.moduleSpecifier)
          t[o].push(c), a++;
        else {
          for (; a < i && tl(n[a]); ) t[o].push(n[a++]);
          o++;
        }
      } else a++;
      return ks(t, (c) => Que(e, c));
    }
    function JQe(e, t, n) {
      const i = n.getTypeChecker(), a = n.getCompilerOptions(), o = i.getJsxNamespace(t), c = i.getJsxFragmentFactory(t), _ = !!(t.transformFlags & 2), u = [];
      for (const g of e) {
        const { importClause: h, moduleSpecifier: S } = g;
        if (!h) {
          u.push(g);
          continue;
        }
        let { name: T, namedBindings: k } = h;
        if (T && !d(T) && (T = void 0), k) if (nh(k))
          d(k.name) || (k = void 0);
        else {
          const D = k.elements.filter((P) => d(P.name));
          D.length < k.elements.length && (k = D.length ? A.updateNamedImports(k, D) : void 0);
        }
        T || k ? u.push($I(g, T, k)) : UQe(t, S) && (t.isDeclarationFile ? u.push(A.createImportDeclaration(g.modifiers, void 0, S, void 0)) : u.push(g));
      }
      return u;
      function d(g) {
        return _ && (g.text === o || c && g.text === c) && Nq(a.jsx) || Jo.Core.isSymbolReferencedInFile(g, i, t);
      }
    }
    function rM(e) {
      return e !== void 0 && Xs(e) ? e.text : void 0;
    }
    function zQe(e) {
      let t;
      const n = {
        defaultImports: [],
        namespaceImports: [],
        namedImports: []
      }, i = {
        defaultImports: [],
        namespaceImports: [],
        namedImports: []
      };
      for (const a of e) {
        if (a.importClause === void 0) {
          t = t || a;
          continue;
        }
        const o = a.importClause.isTypeOnly ? n : i, { name: c, namedBindings: _ } = a.importClause;
        c && o.defaultImports.push(a), _ && (nh(_) ? o.namespaceImports.push(a) : o.namedImports.push(a));
      }
      return {
        importWithoutClause: t,
        typeOnlyImports: n,
        regularImports: i
      };
    }
    function JDe(e, t, n, i) {
      if (e.length === 0) return e;
      const a = QR(e, (c) => {
        if (c.attributes) {
          let _ = c.attributes.token + " ";
          for (const u of uf(c.attributes.elements, (d, g) => Du(d.name.text, g.name.text)))
            _ += u.name.text + ":", _ += Xs(u.value) ? `"${u.value.text}"` : u.value.getText() + " ";
          return _;
        }
        return "";
      }), o = [];
      for (const c in a) {
        const _ = a[c], { importWithoutClause: u, typeOnlyImports: d, regularImports: g } = zQe(_);
        u && o.push(u);
        for (const h of [g, d]) {
          const S = h === d, { defaultImports: T, namespaceImports: k, namedImports: D } = h;
          if (!S && T.length === 1 && k.length === 1 && D.length === 0) {
            const U = T[0];
            o.push($I(U, U.importClause.name, k[0].importClause.namedBindings));
            continue;
          }
          const P = uf(k, (U, pe) => t(U.importClause.namedBindings.name.text, pe.importClause.namedBindings.name.text));
          for (const U of P) o.push($I(U, void 0, U.importClause.namedBindings));
          const N = ul(T), M = ul(D), R = N ?? M;
          if (!R) continue;
          let G;
          const L = [];
          if (T.length === 1) G = T[0].importClause.name;
          else for (const U of T) L.push(A.createImportSpecifier(!1, A.createIdentifier("default"), U.importClause.name));
          L.push(...VQe(D));
          const z = A.createNodeArray(uf(L, n), M?.importClause.namedBindings.elements.hasTrailingComma), H = z.length === 0 ? G ? void 0 : A.createNamedImports(Te) : M ? A.updateNamedImports(M.importClause.namedBindings, z) : A.createNamedImports(z);
          i && H && M?.importClause.namedBindings && !DS(M.importClause.namedBindings, i) && ln(H, 2), S && G && H ? (o.push($I(R, G, void 0)), o.push($I(M ?? R, void 0, H))) : o.push($I(R, G, H));
        }
      }
      return o;
    }
    function zDe(e, t) {
      if (e.length === 0) return e;
      const { exportWithoutClause: n, namedExports: i, typeOnlyExports: a } = c(e), o = [];
      n && o.push(n);
      for (const _ of [i, a]) {
        if (_.length === 0) continue;
        const u = [];
        u.push(...ks(_, (h) => h.exportClause && Pp(h.exportClause) ? h.exportClause.elements : Te));
        const d = uf(u, t), g = _[0];
        o.push(A.updateExportDeclaration(g, g.modifiers, g.isTypeOnly, g.exportClause && (Pp(g.exportClause) ? A.updateNamedExports(g.exportClause, d) : A.updateNamespaceExport(g.exportClause, g.exportClause.name)), g.moduleSpecifier, g.attributes));
      }
      return o;
      function c(_) {
        let u;
        const d = [], g = [];
        for (const h of _) h.exportClause === void 0 ? u = u || h : h.isTypeOnly ? g.push(h) : d.push(h);
        return {
          exportWithoutClause: u,
          namedExports: d,
          typeOnlyExports: g
        };
      }
    }
    function $I(e, t, n) {
      return A.updateImportDeclaration(e, e.modifiers, A.updateImportClause(e.importClause, e.importClause.phaseModifier, t, n), e.moduleSpecifier, e.attributes);
    }
    function Yue(e, t, n, i) {
      switch (i?.organizeImportsTypeOrder) {
        case "first":
          return tv(t.isTypeOnly, e.isTypeOnly) || n(e.name.text, t.name.text);
        case "inline":
          return n(e.name.text, t.name.text);
        default:
          return tv(e.isTypeOnly, t.isTypeOnly) || n(e.name.text, t.name.text);
      }
    }
    function Zue(e, t, n) {
      const i = e === void 0 ? void 0 : rM(e), a = t === void 0 ? void 0 : rM(t);
      return tv(i === void 0, a === void 0) || tv(jl(i), jl(a)) || n(i, a);
    }
    function WQe(e) {
      return e.map((t) => rM(Kue(t)) || "");
    }
    function Kue(e) {
      var t;
      switch (e.kind) {
        case 272:
          return (t = qn(e.moduleReference, qh)) == null ? void 0 : t.expression;
        case 273:
          return e.moduleSpecifier;
        case 244:
          return e.declarationList.declarations[0].initializer.arguments[0];
      }
    }
    function UQe(e, t) {
      const n = Ts(t) && t.text;
      return Ta(n) && _t(e.moduleAugmentations, (i) => Ts(i) && i.text === n);
    }
    function VQe(e) {
      return ks(e, (t) => or(qQe(t), (n) => n.name && n.propertyName && Ab(n.name) === Ab(n.propertyName) ? A.updateImportSpecifier(n, n.isTypeOnly, void 0, n.name) : n));
    }
    function qQe(e) {
      var t;
      return (t = e.importClause) != null && t.namedBindings && Nm(e.importClause.namedBindings) ? e.importClause.namedBindings.elements : void 0;
    }
    function WDe(e, t) {
      const n = [];
      return e.forEach((i) => {
        n.push(WQe(i));
      }), VDe(n, t);
    }
    function e_e(e, t, n) {
      let i = !1;
      const a = e.filter((u) => {
        var d, g;
        const h = (g = qn((d = u.importClause) == null ? void 0 : d.namedBindings, Nm)) == null ? void 0 : g.elements;
        return h?.length ? (!i && h.some((S) => S.isTypeOnly) && h.some((S) => !S.isTypeOnly) && (i = !0), !0) : !1;
      });
      if (a.length === 0) return;
      const o = a.map((u) => {
        var d, g;
        return (g = qn((d = u.importClause) == null ? void 0 : d.namedBindings, Nm)) == null ? void 0 : g.elements;
      }).filter((u) => u !== void 0);
      if (!i || n.length === 0) {
        const u = VDe(o.map((d) => d.map((g) => g.name.text)), t);
        return {
          namedImportComparer: u.comparer,
          typeOrder: n.length === 1 ? n[0] : void 0,
          isSorted: u.isSorted
        };
      }
      const c = {
        first: 1 / 0,
        last: 1 / 0,
        inline: 1 / 0
      }, _ = {
        first: t[0],
        last: t[0],
        inline: t[0]
      };
      for (const u of t) {
        const d = {
          first: 0,
          last: 0,
          inline: 0
        };
        for (const g of o) for (const h of n) d[h] = (d[h] ?? 0) + UDe(g, (S, T) => Yue(S, T, u, { organizeImportsTypeOrder: h }));
        for (const g of n) {
          const h = g;
          d[h] < c[h] && (c[h] = d[h], _[h] = u);
        }
      }
      e: for (const u of n) {
        const d = u;
        for (const g of n) if (c[g] < c[d]) continue e;
        return {
          namedImportComparer: _[d],
          typeOrder: d,
          isSorted: c[d] === 0
        };
      }
      return {
        namedImportComparer: _.last,
        typeOrder: "last",
        isSorted: c.last === 0
      };
    }
    function UDe(e, t) {
      let n = 0;
      for (let i = 0; i < e.length - 1; i++) t(e[i], e[i + 1]) > 0 && n++;
      return n;
    }
    function VDe(e, t) {
      let n, i = 1 / 0;
      for (const a of t) {
        let o = 0;
        for (const c of e) {
          if (c.length <= 1) continue;
          const _ = UDe(c, a);
          o += _;
        }
        o < i && (i = o, n = a);
      }
      return {
        comparer: n ?? t[0],
        isSorted: i === 0
      };
    }
    function GQe(e, t) {
      return Fo(qDe(e), qDe(t));
    }
    function qDe(e) {
      var t;
      switch (e.kind) {
        case 273:
          return e.importClause ? e.importClause.isTypeOnly ? 1 : ((t = e.importClause.namedBindings) == null ? void 0 : t.kind) === 275 ? 2 : e.importClause.name ? 3 : 4 : 0;
        case 272:
          return 5;
        case 244:
          return 6;
      }
    }
    function nM(e) {
      return e ? yQ : Du;
    }
    function HQe(e, t) {
      const n = $Qe(t), i = t.organizeImportsCaseFirst ?? !1, a = t.organizeImportsNumericCollation ?? !1, o = t.organizeImportsAccentCollation ?? !0, c = e ? o ? "accent" : "base" : o ? "variant" : "case";
      return new Intl.Collator(n, {
        usage: "sort",
        caseFirst: i || "false",
        sensitivity: c,
        numeric: a
      }).compare;
    }
    function $Qe(e) {
      let t = e.organizeImportsLocale;
      t === "auto" && (t = vQ()), t === void 0 && (t = "en");
      const n = Intl.Collator.supportedLocalesOf(t);
      return n.length ? n[0] : "en";
    }
    function t_e(e, t) {
      return (e.organizeImportsCollation ?? "ordinal") === "unicode" ? HQe(t, e) : nM(t);
    }
    function XQe(e, t) {
      return WDe([e], Xue(t).comparersToTest);
    }
    function XI(e, t) {
      const n = t ?? nM(!!e.organizeImportsIgnoreCase);
      return (i, a) => Yue(i, a, n, e);
    }
    function QQe(e, t, n) {
      const { comparersToTest: i, typeOrdersToTest: a } = Xue(t), o = e_e([e], i, a);
      let c = XI(t, i[0]), _;
      if (typeof t.organizeImportsIgnoreCase != "boolean" || !t.organizeImportsTypeOrder) {
        if (o) {
          const { namedImportComparer: u, typeOrder: d, isSorted: g } = o;
          _ = g, c = XI({ organizeImportsTypeOrder: d }, u);
        } else if (n) {
          const u = e_e(n.statements.filter(ic), i, a);
          if (u) {
            const { namedImportComparer: d, typeOrder: g, isSorted: h } = u;
            _ = h, c = XI({ organizeImportsTypeOrder: g }, d);
          }
        }
      }
      return {
        specifierComparer: c,
        isSorted: _
      };
    }
    function YQe(e, t, n) {
      const i = Lg(e, t, mo, (a, o) => r_e(a, o, n));
      return i < 0 ? ~i : i;
    }
    function ZQe(e, t, n) {
      const i = Lg(e, t, mo, n);
      return i < 0 ? ~i : i;
    }
    function r_e(e, t, n) {
      return Zue(Kue(e), Kue(t), n) || GQe(e, t);
    }
    function KQe(e, t, n, i) {
      const a = nM(t);
      return JDe(e, a, XI({ organizeImportsTypeOrder: i?.organizeImportsTypeOrder }, a), n);
    }
    function eYe(e, t, n) {
      return zDe(e, (a, o) => Yue(a, o, nM(t), { organizeImportsTypeOrder: n?.organizeImportsTypeOrder ?? "last" }));
    }
    function tYe(e, t, n) {
      return Zue(e, t, nM(!!n));
    }
    var dH = {};
    gi(dH, { collectElements: () => rYe });
    function rYe(e, t) {
      const n = [];
      return nYe(e, t, n), iYe(e, n), n.sort((i, a) => i.textSpan.start - a.textSpan.start), n;
    }
    function nYe(e, t, n) {
      let i = 40, a = 0;
      const o = e.statements, c = o.length;
      for (; a < c; ) {
        for (; a < c && !Nx(o[a]); )
          _(o[a]), a++;
        if (a === c) break;
        const u = a;
        for (; a < c && Nx(o[a]); )
          _(o[a]), a++;
        const d = a - 1;
        d !== u && n.push(iM(uo(o[u], 102, e).getStart(e), o[d].getEnd(), "imports"));
      }
      _(e.endOfFileToken);
      function _(u) {
        var d;
        if (i === 0) return;
        t.throwIfCancellationRequested(), (Jl(u) || $c(u) || zf(u) || ym(u) || u.kind === 1) && HDe(u, e, t, n), Ra(u) && un(u.parent) && Ln(u.parent.left) && HDe(u.parent.left, e, t, n), (Wa(u) || Vd(u)) && n_e(u.statements.end, e, t, n), (Zn(u) || au(u)) && n_e(u.members.end, e, t, n);
        const g = sYe(u, e);
        g && n.push(g), i--, za(u) ? (i++, _(u.expression), i--, u.arguments.forEach(_), (d = u.typeArguments) == null || d.forEach(_)) : Cv(u) && u.elseStatement && Cv(u.elseStatement) ? (_(u.expression), _(u.thenStatement), i++, _(u.elseStatement), i--) : u.forEachChild(_), i++;
      }
    }
    function iYe(e, t) {
      const n = [], i = e.getLineStarts();
      for (const a of i) {
        const o = e.getLineEndOfPosition(a), c = GDe(e.text.substring(a, o));
        if (!(!c || W0(e, a)))
          if (c.isStart) {
            const _ = Vc(e.text.indexOf("//", a), o);
            n.push(Gk(_, "region", _, !1, c.name || "#region"));
          } else {
            const _ = n.pop();
            _ && (_.textSpan.length = o - _.textSpan.start, _.hintSpan.length = o - _.textSpan.start, t.push(_));
          }
      }
    }
    var aYe = /^#(end)?region(.*)\r?$/;
    function GDe(e) {
      if (e = e.trimStart(), !ta(e, "//")) return null;
      e = e.slice(2).trim();
      const t = aYe.exec(e);
      if (t) return {
        isStart: !t[1],
        name: t[2].trim()
      };
    }
    function n_e(e, t, n, i) {
      const a = jg(t.text, e);
      if (!a) return;
      let o = -1, c = -1, _ = 0;
      const u = t.getFullText();
      for (const { kind: g, pos: h, end: S } of a)
        switch (n.throwIfCancellationRequested(), g) {
          case 2:
            if (GDe(u.slice(h, S))) {
              d(), _ = 0;
              break;
            }
            _ === 0 && (o = h), c = S, _++;
            break;
          case 3:
            d(), i.push(iM(h, S, "comment")), _ = 0;
            break;
          default:
            E.assertNever(g);
        }
      d();
      function d() {
        _ > 1 && i.push(iM(o, c, "comment"));
      }
    }
    function HDe(e, t, n, i) {
      sk(e) || n_e(e.pos, t, n, i);
    }
    function iM(e, t, n) {
      return Gk(Vc(e, t), n);
    }
    function sYe(e, t) {
      switch (e.kind) {
        case 242:
          if (Ra(e.parent)) return oYe(e.parent, e, t);
          switch (e.parent.kind) {
            case 247:
            case 250:
            case 251:
            case 249:
            case 246:
            case 248:
            case 255:
            case 300:
              return g(e.parent);
            case 259:
              const T = e.parent;
              if (T.tryBlock === e) return g(e.parent);
              if (T.finallyBlock === e) {
                const k = uo(T, 98, t);
                if (k) return g(k);
              }
            default:
              return Gk(P_(e, t), "code");
          }
        case 269:
          return g(e.parent);
        case 264:
        case 232:
        case 265:
        case 267:
        case 270:
        case 188:
        case 207:
          return g(e);
        case 190:
          return g(e, !1, !fk(e.parent), 23);
        case 297:
        case 298:
          return h(e.statements);
        case 211:
          return d(e);
        case 210:
          return d(e, 23);
        case 285:
          return o(e);
        case 289:
          return c(e);
        case 286:
        case 287:
          return _(e.attributes);
        case 229:
        case 15:
          return u(e);
        case 208:
          return g(e, !1, !Ns(e.parent), 23);
        case 220:
          return a(e);
        case 214:
          return i(e);
        case 218:
          return S(e);
        case 276:
        case 280:
        case 301:
          return n(e);
      }
      function n(T) {
        if (!T.elements.length) return;
        const k = uo(T, 19, t), D = uo(T, 20, t);
        if (!(!k || !D || xp(k.pos, D.pos, t)))
          return mH(k, D, T, t, !1, !1);
      }
      function i(T) {
        if (!T.arguments.length) return;
        const k = uo(T, 21, t), D = uo(T, 22, t);
        if (!(!k || !D || xp(k.pos, D.pos, t)))
          return mH(k, D, T, t, !1, !0);
      }
      function a(T) {
        if (!(Wa(T.body) || E_(T.body) || xp(T.body.getFullStart(), T.body.getEnd(), t)))
          return Gk(Vc(T.body.getFullStart(), T.body.getEnd()), "code", P_(T));
      }
      function o(T) {
        const k = Vc(T.openingElement.getStart(t), T.closingElement.getEnd()), D = T.openingElement.tagName.getText(t);
        return Gk(k, "code", k, !1, "<" + D + ">...</" + D + ">");
      }
      function c(T) {
        const k = Vc(T.openingFragment.getStart(t), T.closingFragment.getEnd());
        return Gk(k, "code", k, !1, "<>...</>");
      }
      function _(T) {
        if (T.properties.length !== 0)
          return iM(T.getStart(t), T.getEnd(), "code");
      }
      function u(T) {
        if (!(T.kind === 15 && T.text.length === 0))
          return iM(T.getStart(t), T.getEnd(), "code");
      }
      function d(T, k = 19) {
        return g(T, !1, !hu(T.parent) && !za(T.parent), k);
      }
      function g(T, k = !1, D = !0, P = 19, N = P === 19 ? 20 : 24) {
        const M = uo(e, P, t), R = uo(e, N, t);
        return M && R && mH(M, R, T, t, k, D);
      }
      function h(T) {
        return T.length ? Gk(V0(T), "code") : void 0;
      }
      function S(T) {
        if (!xp(T.getStart(), T.getEnd(), t))
          return Gk(Vc(T.getStart(), T.getEnd()), "code", P_(T));
      }
    }
    function oYe(e, t, n) {
      const i = cYe(e, t, n), a = uo(t, 20, n);
      return i && a && mH(i, a, e, n, e.kind !== 220);
    }
    function mH(e, t, n, i, a = !1, o = !0) {
      return Gk(Vc(o ? e.getFullStart() : e.getStart(i), t.getEnd()), "code", P_(n, i), a);
    }
    function Gk(e, t, n = e, i = !1, a = "...") {
      return {
        textSpan: e,
        kind: t,
        hintSpan: n,
        bannerText: a,
        autoCollapse: i
      };
    }
    function cYe(e, t, n) {
      if (bee(e.parameters, n)) {
        const i = uo(e, 21, n);
        if (i) return i;
      }
      return uo(t, 19, n);
    }
    var aM = {};
    gi(aM, {
      getRenameInfo: () => lYe,
      nodeIsEligibleForRename: () => XDe
    });
    function lYe(e, t, n, i) {
      const a = H9(G_(t, n));
      if (XDe(a)) {
        const o = uYe(a, e.getTypeChecker(), t, e, i);
        if (o) return o;
      }
      return gH(p.You_cannot_rename_this_element);
    }
    function uYe(e, t, n, i, a) {
      const o = t.getSymbolAtLocation(e);
      if (!o) {
        if (Xs(e)) {
          const g = G9(e, t);
          if (g && (g.flags & 1024 || g.flags & 134217728 && hr(g.types, (h) => !!(h.flags & 1024)))) return i_e(e.text, e.text, "string", "", e, n);
        } else if (jV(e)) {
          const g = uc(e);
          return i_e(g, g, "label", "", e, n);
        }
        return;
      }
      const { declarations: c } = o;
      if (!c || c.length === 0) return;
      if (c.some((g) => _Ye(i, g))) return gH(p.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);
      if (Fe(e) && e.escapedText === "default" && o.parent && o.parent.flags & 1536) return;
      if (Xs(e) && _A(e)) return a.allowRenameOfImportPath ? pYe(e, n, o) : void 0;
      const _ = fYe(n, o, t, a);
      if (_) return gH(_);
      const u = H0.getSymbolKind(t, o, e), d = Ase(e) || ep(e) && e.parent.kind === 168 ? Qp(Xp(e)) : void 0;
      return i_e(d || t.symbolToString(o), d || t.getFullyQualifiedName(o), u, H0.getSymbolModifiers(t, o), e, n);
    }
    function _Ye(e, t) {
      const n = t.getSourceFile();
      return e.isSourceFileDefaultLibrary(n) && lc(n.fileName, ".d.ts");
    }
    function fYe(e, t, n, i) {
      if (!i.providePrefixAndSuffixTextForRename && t.flags & 2097152) {
        const c = t.declarations && xr(t.declarations, (_) => p_(_));
        c && !c.propertyName && (t = n.getAliasedSymbol(t));
      }
      const { declarations: a } = t;
      if (!a) return;
      const o = $De(e.path);
      if (o === void 0) return _t(a, (c) => TI(c.getSourceFile().path)) ? p.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder : void 0;
      for (const c of a) {
        const _ = $De(c.getSourceFile().path);
        if (_) {
          const u = Math.min(o.length, _.length);
          for (let d = 0; d <= u; d++) if (Du(o[d], _[d]) !== 0) return p.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder;
        }
      }
    }
    function $De(e) {
      const t = wu(e), n = t.lastIndexOf("node_modules");
      if (n !== -1)
        return t.slice(0, n + 2);
    }
    function pYe(e, t, n) {
      if (!jl(e.text)) return gH(p.You_cannot_rename_a_module_via_a_global_import);
      const i = n.declarations && xr(n.declarations, Pi);
      if (!i) return;
      const a = Uo(e.text, "/index") || Uo(e.text, "/index.js") ? void 0 : TQ(__(i.fileName), "/index"), o = a === void 0 ? i.fileName : a, c = a === void 0 ? "module" : "directory", _ = e.text.lastIndexOf("/") + 1, u = du(e.getStart(t) + 1 + _, e.text.length - _);
      return {
        canRename: !0,
        fileToRename: o,
        kind: c,
        displayName: o,
        fullDisplayName: e.text,
        kindModifiers: "",
        triggerSpan: u
      };
    }
    function i_e(e, t, n, i, a, o) {
      return {
        canRename: !0,
        fileToRename: void 0,
        kind: n,
        displayName: e,
        fullDisplayName: t,
        kindModifiers: i,
        triggerSpan: dYe(a, o)
      };
    }
    function gH(e) {
      return {
        canRename: !1,
        localizedErrorMessage: Oa(e)
      };
    }
    function dYe(e, t) {
      let n = e.getStart(t), i = e.getWidth(t);
      return Xs(e) && (n += 1, i -= 2), du(n, i);
    }
    function XDe(e) {
      switch (e.kind) {
        case 80:
        case 81:
        case 11:
        case 15:
        case 110:
          return !0;
        case 9:
          return W9(e);
        default:
          return !1;
      }
    }
    var QI = {};
    gi(QI, {
      getArgumentInfoForCompletions: () => vYe,
      getSignatureHelpItems: () => mYe
    });
    function mYe(e, t, n, i, a) {
      const o = e.getTypeChecker(), c = zw(t, n);
      if (!c) return;
      const _ = !!i && i.kind === "characterTyped";
      if (_ && (Ok(t, n, c) || W0(t, n))) return;
      const u = IYe(c, n, t, o, !!i && i.kind === "invoked");
      if (!u) return;
      a.throwIfCancellationRequested();
      const d = gYe(u, o, t, c, _);
      return a.throwIfCancellationRequested(), d ? o.runWithCancellationToken(a, (g) => d.kind === 0 ? nwe(d.candidates, d.resolvedSignature, u, t, g) : FYe(d.symbol, u, t, g)) : T_(t) ? yYe(u, e, a) : void 0;
    }
    function gYe({ invocation: e, argumentCount: t }, n, i, a, o) {
      switch (e.kind) {
        case 0: {
          if (o && !hYe(a, e.node, i)) return;
          const c = [], _ = n.getResolvedSignatureForSignatureHelp(e.node, c, t);
          return c.length === 0 ? void 0 : {
            kind: 0,
            candidates: c,
            resolvedSignature: _
          };
        }
        case 1: {
          const { called: c } = e;
          if (o && !QDe(a, i, Fe(c) ? c.parent : c)) return;
          const _ = $V(c, t, n);
          if (_.length !== 0) return {
            kind: 0,
            candidates: _,
            resolvedSignature: js(_)
          };
          const u = n.getSymbolAtLocation(c);
          return u && {
            kind: 1,
            symbol: u
          };
        }
        case 2:
          return {
            kind: 0,
            candidates: [e.signature],
            resolvedSignature: e.signature
          };
        default:
          return E.assertNever(e);
      }
    }
    function hYe(e, t, n) {
      if (!ym(t)) return !1;
      const i = t.getChildren(n);
      switch (e.kind) {
        case 21:
          return Gi(i, e);
        case 28: {
          const a = q9(e);
          return !!a && Gi(i, a);
        }
        case 30:
          return QDe(e, n, t.expression);
        default:
          return !1;
      }
    }
    function yYe(e, t, n) {
      if (e.invocation.kind === 2) return;
      const i = twe(e.invocation), a = Ln(i) ? i.name.text : void 0, o = t.getTypeChecker();
      return a === void 0 ? void 0 : Hn(t.getSourceFiles(), (c) => Hn(c.getNamedDeclarations().get(a), (_) => {
        const u = _.symbol && o.getTypeOfSymbolAtLocation(_.symbol, _), d = u && u.getCallSignatures();
        if (d && d.length) return o.runWithCancellationToken(n, (g) => nwe(d, d[0], e, c, g, !0));
      }));
    }
    function QDe(e, t, n) {
      const i = e.getFullStart();
      let a = e.parent;
      for (; a; ) {
        const o = Tl(i, t, a, !0);
        if (o) return W_(n, o);
        a = a.parent;
      }
      return E.fail("Could not find preceding token");
    }
    function vYe(e, t, n, i) {
      const a = ZDe(e, t, n, i);
      return !a || a.isTypeParameterList || a.invocation.kind !== 0 ? void 0 : {
        invocation: a.invocation.node,
        argumentCount: a.argumentCount,
        argumentIndex: a.argumentIndex
      };
    }
    function YDe(e, t, n, i) {
      const a = bYe(e, n, i);
      if (!a) return;
      const { list: o, argumentIndex: c } = a;
      return {
        list: o,
        argumentIndex: c,
        argumentCount: wYe(i, o),
        argumentsSpan: AYe(o, n)
      };
    }
    function bYe(e, t, n) {
      if (e.kind === 30 || e.kind === 21) return {
        list: OYe(e.parent, e, t),
        argumentIndex: 0
      };
      {
        const i = q9(e);
        return i && {
          list: i,
          argumentIndex: DYe(n, i, e)
        };
      }
    }
    function ZDe(e, t, n, i) {
      const { parent: a } = e;
      if (ym(a)) {
        const o = a, c = YDe(e, t, n, i);
        if (!c) return;
        const { list: _, argumentIndex: u, argumentCount: d, argumentsSpan: g } = c;
        return {
          isTypeParameterList: !!a.typeArguments && a.typeArguments.pos === _.pos,
          invocation: {
            kind: 0,
            node: o
          },
          argumentsSpan: g,
          argumentIndex: u,
          argumentCount: d
        };
      } else {
        if (IS(e) && xv(a))
          return fI(e, t, n) ? s_e(a, 0, n) : void 0;
        if (ok(e) && a.parent.kind === 216) {
          const o = a, c = o.parent;
          return E.assert(o.kind === 229), s_e(c, fI(e, t, n) ? 0 : 1, n);
        } else if (I6(a) && xv(a.parent.parent)) {
          const o = a, c = a.parent.parent;
          return GO(e) && !fI(e, t, n) ? void 0 : s_e(c, PYe(o.parent.templateSpans.indexOf(o), e, t, n), n);
        } else if (Gu(a)) {
          const o = a.attributes.pos, c = gs(n.text, a.attributes.end, !1);
          return {
            isTypeParameterList: !1,
            invocation: {
              kind: 0,
              node: a
            },
            argumentsSpan: du(o, c - o),
            argumentIndex: 0,
            argumentCount: 1
          };
        } else {
          const o = XV(e, n);
          if (o) {
            const { called: c, nTypeArguments: _ } = o;
            return {
              isTypeParameterList: !0,
              invocation: {
                kind: 1,
                called: c
              },
              argumentsSpan: Vc(c.getStart(n), e.end),
              argumentIndex: _,
              argumentCount: _ + 1
            };
          }
          return;
        }
      }
    }
    function SYe(e, t, n, i) {
      return TYe(e, t, n, i) || ZDe(e, t, n, i);
    }
    function KDe(e) {
      return un(e.parent) ? KDe(e.parent) : e;
    }
    function a_e(e) {
      return un(e.left) ? a_e(e.left) + 1 : 2;
    }
    function TYe(e, t, n, i) {
      const a = xYe(e);
      if (a === void 0) return;
      const o = kYe(a, n, t, i);
      if (o === void 0) return;
      const { contextualType: c, argumentIndex: _, argumentCount: u, argumentsSpan: d } = o, g = c.getNonNullableType(), h = g.symbol;
      if (h === void 0) return;
      const S = Wo(g.getCallSignatures());
      if (S !== void 0)
        return {
          isTypeParameterList: !1,
          invocation: {
            kind: 2,
            signature: S,
            node: e,
            symbol: CYe(h)
          },
          argumentsSpan: d,
          argumentIndex: _,
          argumentCount: u
        };
    }
    function xYe(e) {
      switch (e.kind) {
        case 21:
        case 28:
          return e;
        default:
          return cr(e.parent, (t) => Fi(t) ? !0 : Ns(t) || rp(t) || J0(t) ? !1 : "quit");
      }
    }
    function kYe(e, t, n, i) {
      const { parent: a } = e;
      switch (a.kind) {
        case 218:
        case 175:
        case 219:
        case 220:
          const o = YDe(e, n, t, i);
          if (!o) return;
          const { argumentIndex: c, argumentCount: _, argumentsSpan: u } = o, d = hc(a) ? i.getContextualTypeForObjectLiteralElement(a) : i.getContextualType(a);
          return d && {
            contextualType: d,
            argumentIndex: c,
            argumentCount: _,
            argumentsSpan: u
          };
        case 227: {
          const g = KDe(a), h = i.getContextualType(g), S = e.kind === 21 ? 0 : a_e(a) - 1, T = a_e(g);
          return h && {
            contextualType: h,
            argumentIndex: S,
            argumentCount: T,
            argumentsSpan: P_(a)
          };
        }
        default:
          return;
      }
    }
    function CYe(e) {
      return e.name === "__type" && Hn(e.declarations, (t) => {
        var n;
        return mg(t) ? (n = qn(t.parent, jd)) == null ? void 0 : n.symbol : void 0;
      }) || e;
    }
    function EYe(e, t) {
      const n = t.getTypeAtLocation(e.expression);
      if (t.isTupleType(n)) {
        const { elementFlags: i, fixedLength: a } = n.target;
        if (a === 0) return 0;
        const o = qs(i, (c) => !(c & 1));
        return o < 0 ? a : o;
      }
      return 0;
    }
    function DYe(e, t, n) {
      return ewe(e, t, n);
    }
    function wYe(e, t) {
      return ewe(e, t, void 0);
    }
    function ewe(e, t, n) {
      const i = t.getChildren();
      let a = 0, o = !1;
      for (const c of i) {
        if (n && c === n)
          return !o && c.kind === 28 && a++, a;
        if (wp(c)) {
          a += EYe(c, e), o = !0;
          continue;
        }
        if (c.kind !== 28) {
          a++, o = !0;
          continue;
        }
        if (o) {
          o = !1;
          continue;
        }
        a++;
      }
      return n ? a : i.length && ws(i).kind === 28 ? a + 1 : a;
    }
    function PYe(e, t, n, i) {
      return E.assert(n >= t.getStart(), "Assumed 'position' could not occur before node."), wZ(t) ? fI(t, n, i) ? 0 : e + 2 : e + 1;
    }
    function s_e(e, t, n) {
      const i = IS(e.template) ? 1 : e.template.templateSpans.length + 1;
      return t !== 0 && E.assertLessThan(t, i), {
        isTypeParameterList: !1,
        invocation: {
          kind: 0,
          node: e
        },
        argumentsSpan: NYe(e, n),
        argumentIndex: t,
        argumentCount: i
      };
    }
    function AYe(e, t) {
      const n = e.getFullStart();
      return du(n, gs(t.text, e.getEnd(), !1) - n);
    }
    function NYe(e, t) {
      const n = e.template, i = n.getStart();
      let a = n.getEnd();
      return n.kind === 229 && ws(n.templateSpans).literal.getFullWidth() === 0 && (a = gs(t.text, a, !1)), du(i, a - i);
    }
    function IYe(e, t, n, i, a) {
      for (let o = e; !Pi(o) && (a || !Wa(o)); o = o.parent) {
        E.assert(W_(o.parent, o), "Not a subspan", () => `Child: ${E.formatSyntaxKind(o.kind)}, parent: ${E.formatSyntaxKind(o.parent.kind)}`);
        const c = SYe(o, t, n, i);
        if (c) return c;
      }
    }
    function OYe(e, t, n) {
      const i = e.getChildren(n), a = i.indexOf(t);
      return E.assert(a >= 0 && i.length > a + 1), i[a + 1];
    }
    function twe(e) {
      return e.kind === 0 ? P5(e.node) : e.called;
    }
    function rwe(e) {
      return e.kind === 0 ? e.node : e.kind === 1 ? e.called : e.node;
    }
    var sM = 70246400;
    function nwe(e, t, { isTypeParameterList: n, argumentCount: i, argumentsSpan: a, invocation: o, argumentIndex: c }, _, u, d) {
      var g;
      const h = rwe(o), S = o.kind === 2 ? o.symbol : u.getSymbolAtLocation(twe(o)) || d && ((g = t.declaration) == null ? void 0 : g.symbol), T = S ? Hw(u, S, d ? _ : void 0, void 0) : Te, k = or(e, (R) => MYe(R, T, n, u, h, _));
      let D = 0, P = 0;
      for (let R = 0; R < k.length; R++) {
        const G = k[R];
        if (e[R] === t && (D = P, G.length > 1)) {
          let L = 0;
          for (const z of G) {
            if (z.isVariadic || z.parameters.length >= i) {
              D = P + L;
              break;
            }
            L++;
          }
        }
        P += G.length;
      }
      E.assert(D !== -1);
      const N = {
        items: wi(k, mo),
        applicableSpan: a,
        selectedItemIndex: D,
        argumentIndex: c,
        argumentCount: i
      }, M = N.items[D];
      if (M.isVariadic) {
        const R = qs(M.parameters, (G) => !!G.isRest);
        -1 < R && R < M.parameters.length - 1 ? N.argumentIndex = M.parameters.length : N.argumentIndex = Math.min(N.argumentIndex, M.parameters.length - 1);
      }
      return N;
    }
    function FYe(e, { argumentCount: t, argumentsSpan: n, invocation: i, argumentIndex: a }, o, c) {
      const _ = c.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);
      if (_)
        return {
          items: [LYe(e, _, c, rwe(i), o)],
          applicableSpan: n,
          selectedItemIndex: 0,
          argumentIndex: a,
          argumentCount: t
        };
    }
    function LYe(e, t, n, i, a) {
      const o = Hw(n, e), c = i2(), _ = t.map((g) => awe(g, n, i, a, c)), u = e.getDocumentationComment(n), d = e.getJsDocTags(n);
      return {
        isVariadic: !1,
        prefixDisplayParts: [...o, Yu(30)],
        suffixDisplayParts: [Yu(32)],
        separatorDisplayParts: iwe,
        parameters: _,
        documentation: u,
        tags: d
      };
    }
    var iwe = [Yu(28), Ec()];
    function MYe(e, t, n, i, a, o) {
      return or((n ? jYe : BYe)(e, i, a, o), ({ isVariadic: c, parameters: _, prefix: u, suffix: d }) => ({
        isVariadic: c,
        prefixDisplayParts: [...t, ...u],
        suffixDisplayParts: [...d, ...RYe(e, a, i)],
        separatorDisplayParts: iwe,
        parameters: _,
        documentation: e.getDocumentationComment(i),
        tags: e.getJsDocTags()
      }));
    }
    function RYe(e, t, n) {
      return v1((i) => {
        i.writePunctuation(":"), i.writeSpace(" ");
        const a = n.getTypePredicateOfSignature(e);
        a ? n.writeTypePredicate(a, t, void 0, i) : n.writeType(n.getReturnTypeOfSignature(e), t, void 0, i);
      });
    }
    function jYe(e, t, n, i) {
      const a = (e.target || e).typeParameters, o = i2(), c = (a || Te).map((u) => awe(u, t, n, i, o)), _ = e.thisParameter ? [t.symbolToParameterDeclaration(e.thisParameter, n, sM)] : [];
      return t.getExpandedParameters(e).map((u) => {
        const d = A.createNodeArray([..._, ...or(u, (h) => t.symbolToParameterDeclaration(h, n, sM))]), g = v1((h) => {
          o.writeList(2576, d, i, h);
        });
        return {
          isVariadic: !1,
          parameters: c,
          prefix: [Yu(30)],
          suffix: [Yu(32), ...g]
        };
      });
    }
    function BYe(e, t, n, i) {
      const a = i2(), o = v1((u) => {
        if (e.typeParameters && e.typeParameters.length) {
          const d = A.createNodeArray(e.typeParameters.map((g) => t.typeParameterToDeclaration(g, n, sM)));
          a.writeList(53776, d, i, u);
        }
      }), c = t.getExpandedParameters(e), _ = t.hasEffectiveRestParameter(e) ? c.length === 1 ? (u) => !0 : (u) => {
        var d;
        return !!(u.length && ((d = qn(u[u.length - 1], Ug)) == null ? void 0 : d.links.checkFlags) & 32768);
      } : (u) => !1;
      return c.map((u) => ({
        isVariadic: _(u),
        parameters: u.map((d) => JYe(d, t, n, i, a)),
        prefix: [...o, Yu(21)],
        suffix: [Yu(22)]
      }));
    }
    function JYe(e, t, n, i, a) {
      const o = v1((u) => {
        const d = t.symbolToParameterDeclaration(e, n, sM);
        a.writeNode(4, d, i, u);
      }), c = t.isOptionalParameter(e.valueDeclaration), _ = Ug(e) && !!(e.links.checkFlags & 32768);
      return {
        name: e.name,
        documentation: e.getDocumentationComment(t),
        displayParts: o,
        isOptional: c,
        isRest: _
      };
    }
    function awe(e, t, n, i, a) {
      const o = v1((c) => {
        const _ = t.typeParameterToDeclaration(e, n, sM);
        a.writeNode(4, _, i, c);
      });
      return {
        name: e.symbol.name,
        documentation: e.symbol.getDocumentationComment(t),
        displayParts: o,
        isOptional: !1,
        isRest: !1
      };
    }
    var hH = {};
    gi(hH, { getSmartSelectionRange: () => zYe });
    function zYe(e, t) {
      var n, i;
      let a = { textSpan: Vc(t.getFullStart(), t.getEnd()) }, o = t;
      e: for (; ; ) {
        const u = VYe(o);
        if (!u.length) break;
        for (let d = 0; d < u.length; d++) {
          const g = u[d - 1], h = u[d], S = u[d + 1];
          if (ov(h, t, !0) > e) break e;
          const T = Fg(Ly(t.text, h.end));
          if (T && T.kind === 2 && _(T.pos, T.end), WYe(t, e, h)) {
            if (uB(h) && So(o) && !xp(h.getStart(t), h.getEnd(), t) && c(h.getStart(t), h.getEnd()), Wa(h) || I6(h) || ok(h) || GO(h) || g && ok(g) || iu(h) && $c(o) || B6(h) && iu(o) || ci(h) && B6(o) && u.length === 1 || wv(h) || z0(h) || zS(h)) {
              o = h;
              break;
            }
            I6(o) && S && Y7(S) && c(h.getFullStart() - 2, S.getStart() + 1);
            const k = B6(h) && qYe(g) && GYe(S) && !xp(g.getStart(), S.getStart(), t);
            let D = k ? g.getEnd() : h.getStart();
            const P = k ? S.getStart() : HYe(t, h);
            if (Jf(h) && ((n = h.jsDoc) != null && n.length) && c(js(h.jsDoc).getStart(), P), B6(h)) {
              const N = h.getChildren()[0];
              N && Jf(N) && ((i = N.jsDoc) != null && i.length) && N.getStart() !== h.pos && (D = Math.min(D, js(N.jsDoc).getStart()));
            }
            c(D, P), (Ts(h) || Cx(h)) && c(D + 1, P - 1), o = h;
            break;
          }
          if (d === u.length - 1) break e;
        }
      }
      return a;
      function c(u, d) {
        if (u !== d) {
          const g = Vc(u, d);
          (!a || !fE(g, a.textSpan) && aZ(g, e)) && (a = {
            textSpan: g,
            ...a && { parent: a }
          });
        }
      }
      function _(u, d) {
        c(u, d);
        let g = u;
        for (; t.text.charCodeAt(g) === 47; ) g++;
        c(g, d);
      }
    }
    function WYe(e, t, n) {
      return E.assert(n.pos <= t), t < n.end ? !0 : n.getEnd() === t ? G_(e, t).pos < n.end : !1;
    }
    var UYe = _f(ic, bl);
    function VYe(e) {
      var t;
      if (Pi(e)) return YI(e.getChildAt(0).getChildren(), UYe);
      if (LS(e)) {
        const [n, ...i] = e.getChildren(), a = E.checkDefined(i.pop());
        return E.assertEqual(n.kind, 19), E.assertEqual(a.kind, 20), [
          n,
          ZI(yH(YI(YI(i, (o) => o === e.readonlyToken || o.kind === 148 || o === e.questionToken || o.kind === 58), ({ kind: o }) => o === 23 || o === 169 || o === 24), ({ kind: o }) => o === 59)),
          a
        ];
      }
      if (f_(e)) {
        const n = YI(e.getChildren(), (o) => o === e.name || Gi(e.modifiers, o)), i = ((t = n[0]) == null ? void 0 : t.kind) === 321 ? n[0] : void 0, a = yH(i ? n.slice(1) : n, ({ kind: o }) => o === 59);
        return i ? [i, ZI(a)] : a;
      }
      if (Fi(e)) {
        const n = YI(e.getChildren(), (i) => i === e.dotDotDotToken || i === e.name);
        return yH(YI(n, (i) => i === n[0] || i === e.questionToken), ({ kind: i }) => i === 64);
      }
      return Ns(e) ? yH(e.getChildren(), ({ kind: n }) => n === 64) : e.getChildren();
    }
    function YI(e, t) {
      const n = [];
      let i;
      for (const a of e) t(a) ? (i = i || [], i.push(a)) : (i && (n.push(ZI(i)), i = void 0), n.push(a));
      return i && n.push(ZI(i)), n;
    }
    function yH(e, t, n = !0) {
      if (e.length < 2) return e;
      const i = qs(e, t);
      if (i === -1) return e;
      const a = e.slice(0, i), o = e[i], c = ws(e), _ = n && c.kind === 27, u = e.slice(i + 1, _ ? e.length - 1 : void 0), d = a3([
        a.length ? ZI(a) : void 0,
        o,
        u.length ? ZI(u) : void 0
      ]);
      return _ ? d.concat(c) : d;
    }
    function ZI(e) {
      return E.assertGreaterThanOrEqual(e.length, 1), Ud(Nv.createSyntaxList(e), e[0].pos, ws(e).end);
    }
    function qYe(e) {
      const t = e && e.kind;
      return t === 19 || t === 23 || t === 21 || t === 287;
    }
    function GYe(e) {
      const t = e && e.kind;
      return t === 20 || t === 24 || t === 22 || t === 288;
    }
    function HYe(e, t) {
      switch (t.kind) {
        case 342:
        case 339:
        case 349:
        case 347:
        case 344:
          return e.getLineEndOfPosition(t.getStart());
        default:
          return t.getEnd();
      }
    }
    var H0 = {};
    gi(H0, {
      getSymbolDisplayPartsDocumentationAndSymbolKind: () => XYe,
      getSymbolKind: () => owe,
      getSymbolModifiers: () => $Ye
    });
    var swe = 70246400;
    function owe(e, t, n) {
      const i = cwe(e, t, n);
      if (i !== "") return i;
      const a = v6(t);
      return a & 32 ? Ho(t, 232) ? "local class" : "class" : a & 384 ? "enum" : a & 524288 ? "type" : a & 64 ? "interface" : a & 262144 ? "type parameter" : a & 8 ? "enum member" : a & 2097152 ? "alias" : a & 1536 ? "module" : i;
    }
    function cwe(e, t, n) {
      const i = e.getRootSymbols(t);
      if (i.length === 1 && js(i).flags & 8192 && e.getTypeOfSymbolAtLocation(t, n).getNonNullableType().getCallSignatures().length !== 0) return "method";
      if (e.isUndefinedSymbol(t)) return "var";
      if (e.isArgumentsSymbol(t)) return "local var";
      if (n.kind === 110 && dt(n) || jb(n)) return "parameter";
      const a = v6(t);
      if (a & 3)
        return mq(t) ? "parameter" : t.valueDeclaration && i6(t.valueDeclaration) ? "const" : t.valueDeclaration && Q3(t.valueDeclaration) ? "using" : t.valueDeclaration && X3(t.valueDeclaration) ? "await using" : bt(t.declarations, v5) ? "let" : _we(t) ? "local var" : "var";
      if (a & 16) return _we(t) ? "local function" : "function";
      if (a & 32768) return "getter";
      if (a & 65536) return "setter";
      if (a & 8192) return "method";
      if (a & 16384) return "constructor";
      if (a & 131072) return "index";
      if (a & 4) {
        if (a & 33554432 && t.links.checkFlags & 6) {
          const o = bt(e.getRootSymbols(t), (c) => {
            if (c.getFlags() & 98311) return "property";
          });
          return o || (e.getTypeOfSymbolAtLocation(t, n).getCallSignatures().length ? "method" : "property");
        }
        return "property";
      }
      return "";
    }
    function lwe(e) {
      if (e.declarations && e.declarations.length) {
        const [t, ...n] = e.declarations, i = Ww(t, It(n) && gL(t) && _t(n, (a) => !gL(a)) ? 65536 : 0);
        if (i) return i.split(",");
      }
      return [];
    }
    function $Ye(e, t) {
      if (!t) return "";
      const n = new Set(lwe(t));
      if (t.flags & 2097152) {
        const i = e.getAliasedSymbol(t);
        i !== t && bt(lwe(i), (a) => {
          n.add(a);
        });
      }
      return t.flags & 16777216 && n.add("optional"), n.size > 0 ? ma(n.values()).join(",") : "";
    }
    function uwe(e, t, n, i, a, o, c, _, u, d) {
      var g;
      const h = [];
      let S = [], T = [];
      const k = v6(t);
      let D = c & 1 ? cwe(e, t, a) : "", P = !1;
      const N = a.kind === 110 && A5(a) || jb(a);
      let M, R, G = !1;
      const L = {
        canIncreaseExpansionDepth: !1,
        truncated: !1
      };
      let z = !1;
      if (a.kind === 110 && !N) return {
        displayParts: [wf(110)],
        documentation: [],
        symbolKind: "primitive type",
        tags: void 0
      };
      if (D !== "" || k & 32 || k & 2097152) {
        if (D === "getter" || D === "setter") {
          const ge = xr(t.declarations, (Ae) => Ae.name === a && Ae.kind !== 212);
          if (ge) switch (ge.kind) {
            case 178:
              D = "getter";
              break;
            case 179:
              D = "setter";
              break;
            case 173:
              D = "accessor";
              break;
            default:
              E.assertNever(ge);
          }
          else D = "property";
        }
        let ce;
        if (o ?? (o = N ? e.getTypeAtLocation(a) : e.getTypeOfSymbolAtLocation(t, a)), a.parent && a.parent.kind === 212) {
          const ge = a.parent.name;
          (ge === a || ge && ge.getFullWidth() === 0) && (a = a.parent);
        }
        let oe;
        if (ym(a) ? oe = a : (FV(a) || Bw(a) || a.parent && (Gu(a.parent) || xv(a.parent)) && Ra(t.valueDeclaration)) && (oe = a.parent), oe) {
          ce = e.getResolvedSignature(oe);
          const ge = oe.kind === 215 || za(oe) && oe.expression.kind === 108, Ae = ge ? o.getConstructSignatures() : o.getCallSignatures();
          if (ce && !Gi(Ae, ce.target) && !Gi(Ae, ce) && (ce = Ae.length ? Ae[0] : void 0), ce) {
            switch (ge && k & 32 ? (D = "constructor", de(o.symbol, D)) : k & 2097152 ? (D = "alias", $(D), h.push(Ec()), ge && (ce.flags & 4 && (h.push(wf(128)), h.push(Ec())), h.push(wf(105)), h.push(Ec())), fe(t)) : de(t, D), D) {
              case "JSX attribute":
              case "property":
              case "var":
              case "const":
              case "let":
              case "parameter":
              case "local var":
                h.push(Yu(59)), h.push(Ec()), !(yn(o) & 16) && o.symbol && (Mn(h, Hw(e, o.symbol, i, void 0, 5)), h.push(pE())), ge && (ce.flags & 4 && (h.push(wf(128)), h.push(Ec())), h.push(wf(105)), h.push(Ec())), Se(ce, Ae, 262144);
                break;
              default:
                Se(ce, Ae);
            }
            P = !0, G = Ae.length > 1;
          }
        } else if (WV(a) && !(k & 98304) || a.kind === 137 && a.parent.kind === 177) {
          const ge = a.parent;
          if (t.declarations && xr(t.declarations, (Ae) => Ae === (a.kind === 137 ? ge.parent : ge))) {
            const Ae = ge.kind === 177 ? o.getNonNullableType().getConstructSignatures() : o.getNonNullableType().getCallSignatures();
            e.isImplementationOfOverload(ge) ? ce = Ae[0] : ce = e.getSignatureFromDeclaration(ge), ge.kind === 177 ? (D = "constructor", de(o.symbol, D)) : de(ge.kind === 180 && !(o.symbol.flags & 2048 || o.symbol.flags & 4096) ? o.symbol : t, D), ce && Se(ce, Ae), P = !0, G = Ae.length > 1;
          }
        }
      }
      if (k & 32 && !P && !N) {
        ie();
        const ce = Ho(t, 232);
        ce && ($("local class"), h.push(Ec())), he(t, c) || (ce || (h.push(wf(86)), h.push(Ec())), fe(t), Be(t, n));
      }
      if (k & 64 && c & 2 && (pe(), he(t, c) || (h.push(wf(120)), h.push(Ec()), fe(t), Be(t, n))), k & 524288 && c & 2 && (pe(), h.push(wf(156)), h.push(Ec()), fe(t), Be(t, n), h.push(Ec()), h.push(Gw(64)), h.push(Ec()), Mn(h, yI(e, a.parent && _d(a.parent) ? e.getTypeAtLocation(a.parent) : e.getDeclaredTypeOfSymbol(t), i, 8388608, u, d, L))), k & 384 && (pe(), he(t, c) || (_t(t.declarations, (ce) => l1(ce) && cv(ce)) && (h.push(wf(87)), h.push(Ec())), h.push(wf(94)), h.push(Ec()), fe(t, void 0))), k & 1536 && !N && (pe(), !he(t, c))) {
        const ce = Ho(t, 268), oe = ce && ce.name && ce.name.kind === 80;
        h.push(wf(oe ? 145 : 144)), h.push(Ec()), fe(t);
      }
      if (k & 262144 && c & 2)
        if (pe(), h.push(Yu(21)), h.push(sp("type parameter")), h.push(Yu(22)), h.push(Ec()), fe(t), t.parent)
          W(), fe(t.parent, i), Be(t.parent, i);
        else {
          const ce = Ho(t, 169);
          if (ce === void 0) return E.fail();
          const oe = ce.parent;
          if (oe)
            if (Ra(oe)) {
              W();
              const ge = e.getSignatureFromDeclaration(oe);
              oe.kind === 181 ? (h.push(wf(105)), h.push(Ec())) : oe.kind !== 180 && oe.name && fe(oe.symbol), Mn(h, hq(e, ge, n, 32));
            } else Kp(oe) && (W(), h.push(wf(156)), h.push(Ec()), fe(oe.symbol), Be(oe.symbol, n));
        }
      if (k & 8) {
        D = "enum member", de(t, "enum member");
        const ce = (g = t.declarations) == null ? void 0 : g[0];
        if (ce?.kind === 307) {
          const oe = e.getConstantValue(ce);
          oe !== void 0 && (h.push(Ec()), h.push(Gw(64)), h.push(Ec()), h.push(tf(sK(oe), typeof oe == "number" ? 7 : 8)));
        }
      }
      if (t.flags & 2097152) {
        if (pe(), !P || S.length === 0 && T.length === 0) {
          const ce = e.getAliasedSymbol(t);
          if (ce !== t && ce.declarations && ce.declarations.length > 0) {
            const oe = ce.declarations[0], ge = va(oe);
            if (ge && !P) {
              const Ae = m5(oe) && Qn(oe, 128), Ne = t.name !== "default" && !Ae, ot = uwe(e, ce, Sr(oe), i, ge, o, c, Ne ? t : ce, u, d);
              h.push(...ot.displayParts), h.push(pE()), M = ot.documentation, R = ot.tags, L && ot.canIncreaseVerbosityLevel && (L.canIncreaseExpansionDepth = !0);
            } else
              M = ce.getContextualDocumentationComment(oe, e), R = ce.getJsDocTags(e);
          }
        }
        if (t.declarations) switch (t.declarations[0].kind) {
          case 271:
            h.push(wf(95)), h.push(Ec()), h.push(wf(145));
            break;
          case 278:
            h.push(wf(95)), h.push(Ec()), h.push(wf(t.declarations[0].isExportEquals ? 64 : 90));
            break;
          case 282:
            h.push(wf(95));
            break;
          default:
            h.push(wf(102));
        }
        h.push(Ec()), fe(t), bt(t.declarations, (ce) => {
          if (ce.kind === 272) {
            const oe = ce;
            if (uv(oe))
              h.push(Ec()), h.push(Gw(64)), h.push(Ec()), h.push(wf(149)), h.push(Yu(21)), h.push(tf(uc(sD(oe)), 8)), h.push(Yu(22));
            else {
              const ge = e.getSymbolAtLocation(oe.moduleReference);
              ge && (h.push(Ec()), h.push(Gw(64)), h.push(Ec()), fe(ge, i));
            }
            return !0;
          }
        });
      }
      if (!P) if (D !== "") {
        if (o) {
          if (N ? (pe(), h.push(wf(110))) : de(t, D), D === "property" || D === "accessor" || D === "getter" || D === "setter" || D === "JSX attribute" || k & 3 || D === "local var" || D === "index" || D === "using" || D === "await using" || N) {
            if (h.push(Yu(59)), h.push(Ec()), o.symbol && o.symbol.flags & 262144 && D !== "index" ? Mn(h, v1((ce) => {
              const oe = e.typeParameterToDeclaration(o, i, swe, void 0, void 0, u, d, L);
              U().writeNode(4, oe, Sr(Ca(i)), ce);
            }, u)) : Mn(h, yI(e, o, i, void 0, u, d, L)), Ug(t) && t.links.target && Ug(t.links.target) && t.links.target.links.tupleLabelDeclaration) {
              const ce = t.links.target.links.tupleLabelDeclaration;
              E.assertNode(ce.name, Fe), h.push(Ec()), h.push(Yu(21)), h.push(sp(On(ce.name))), h.push(Yu(22));
            }
          } else if (k & 16 || k & 8192 || k & 16384 || k & 131072 || k & 98304 || D === "method") {
            const ce = o.getNonNullableType().getCallSignatures();
            ce.length && (Se(ce[0], ce), G = ce.length > 1);
          }
        }
      } else D = owe(e, t, a);
      if (S.length === 0 && !G && (S = t.getContextualDocumentationComment(i, e)), S.length === 0 && k & 4 && t.parent && t.declarations && bt(t.parent.declarations, (ce) => ce.kind === 308))
        for (const ce of t.declarations) {
          if (!ce.parent || ce.parent.kind !== 227) continue;
          const oe = e.getSymbolAtLocation(ce.parent.right);
          if (oe && (S = oe.getDocumentationComment(e), T = oe.getJsDocTags(e), S.length > 0))
            break;
        }
      if (S.length === 0 && Fe(a) && t.valueDeclaration && Ns(t.valueDeclaration)) {
        const ce = t.valueDeclaration, oe = ce.parent, ge = ce.propertyName || ce.name;
        if (Fe(ge) && rp(oe)) {
          const Ae = Xp(ge), Ne = e.getTypeAtLocation(oe);
          S = Hn(Ne.isUnion() ? Ne.types : [Ne], (ot) => {
            const K = ot.getProperty(Ae);
            return K ? K.getDocumentationComment(e) : void 0;
          }) || Te;
        }
      }
      T.length === 0 && !G && !oD(a) && (T = t.getContextualJsDocTags(i, e)), S.length === 0 && M && (S = M), T.length === 0 && R && (T = R);
      const H = !L.truncated && L.canIncreaseExpansionDepth;
      return {
        displayParts: h,
        documentation: S,
        symbolKind: D,
        tags: T.length === 0 ? void 0 : T,
        canIncreaseVerbosityLevel: d !== void 0 ? H : void 0
      };
      function U() {
        return i2();
      }
      function pe() {
        h.length && h.push(pE()), ie();
      }
      function ie() {
        _ && ($("alias"), h.push(Ec()));
      }
      function W() {
        h.push(Ec()), h.push(wf(103)), h.push(Ec());
      }
      function Q(ce, oe) {
        if (d === void 0) return !1;
        const ge = ce.flags & 96 ? e.getDeclaredTypeOfSymbol(ce) : e.getTypeOfSymbolAtLocation(ce, a);
        return !ge || e.isLibType(ge) ? !1 : 0 < d ? !0 : (oe && (oe.canIncreaseExpansionDepth = !0), !1);
      }
      function se(ce) {
        let oe = 0;
        return ce & 1 && (oe |= 111551), ce & 2 && (oe |= 788968), ce & 4 && (oe |= 1920), oe;
      }
      function he(ce, oe) {
        if (z) return !0;
        if (Q(ce, L)) {
          const ge = se(oe);
          return Mn(h, v1((Ae) => {
            const Ne = e.getEmitResolver().symbolToDeclarations(ce, ge, 17408, u, d !== void 0 ? d - 1 : void 0, L), ot = U(), K = ce.valueDeclaration && Sr(ce.valueDeclaration);
            Ne.forEach((ke, ae) => {
              ae > 0 && Ae.writeLine(), ot.writeNode(4, ke, K, Ae);
            });
          }, u)), z = !0, !0;
        }
        return !1;
      }
      function fe(ce, oe) {
        let ge;
        _ && ce === t && (ce = _), D === "index" && (ge = e.getIndexInfosOfIndexSymbol(ce));
        let Ae = [];
        ce.flags & 131072 && ge ? (ce.parent && (Ae = Hw(e, ce.parent)), Ae.push(Yu(23)), ge.forEach((Ne, ot) => {
          Ae.push(...yI(e, Ne.keyType)), ot !== ge.length - 1 && (Ae.push(Ec()), Ae.push(Yu(52)), Ae.push(Ec()));
        }), Ae.push(Yu(24))) : Ae = Hw(e, ce, oe || n, void 0, 7), Mn(h, Ae), t.flags & 16777216 && h.push(Yu(58));
      }
      function de(ce, oe) {
        pe(), oe && ($(oe), ce && !_t(ce.declarations, (ge) => Bo(ge) || (Lo(ge) || Hc(ge)) && !ge.name) && (h.push(Ec()), fe(ce)));
      }
      function $(ce) {
        switch (ce) {
          case "var":
          case "function":
          case "let":
          case "const":
          case "constructor":
          case "using":
          case "await using":
            h.push(gq(ce));
            return;
          default:
            h.push(Yu(21)), h.push(gq(ce)), h.push(Yu(22));
            return;
        }
      }
      function Se(ce, oe, ge = 0) {
        Mn(h, hq(e, ce, i, ge | 32, u, d, L)), oe.length > 1 && (h.push(Ec()), h.push(Yu(21)), h.push(Gw(40)), h.push(tf((oe.length - 1).toString(), 7)), h.push(Ec()), h.push(sp(oe.length === 2 ? "overload" : "overloads")), h.push(Yu(22))), S = ce.getDocumentationComment(e), T = ce.getJsDocTags(), oe.length > 1 && S.length === 0 && T.length === 0 && (S = oe[0].getDocumentationComment(e), T = oe[0].getJsDocTags().filter((Ae) => Ae.name !== "deprecated"));
      }
      function Be(ce, oe) {
        Mn(h, v1((ge) => {
          const Ae = e.symbolToTypeParameterDeclarations(ce, oe, swe);
          U().writeList(53776, Ae, Sr(Ca(oe)), ge);
        }));
      }
    }
    function XYe(e, t, n, i, a, o = YS(a), c, _, u) {
      return uwe(e, t, n, i, a, void 0, o, c, _, u);
    }
    function _we(e) {
      return e.parent ? !1 : bt(e.declarations, (t) => {
        if (t.kind === 219) return !0;
        if (t.kind !== 261 && t.kind !== 263) return !1;
        for (let n = t.parent; !Ib(n); n = n.parent) if (n.kind === 308 || n.kind === 269) return !1;
        return !0;
      });
    }
    var on = {};
    gi(on, {
      ChangeTracker: () => ZYe,
      LeadingTriviaOption: () => dwe,
      TrailingTriviaOption: () => mwe,
      applyChanges: () => __e,
      assignPositionsToNode: () => TH,
      createWriter: () => hwe,
      deleteNode: () => Zh,
      getAdjustedEndPosition: () => Hk,
      isThisTypeAnnotatable: () => YYe,
      isValidLocationToAddComment: () => ywe
    });
    function fwe(e) {
      const t = e.__pos;
      return E.assert(typeof t == "number"), t;
    }
    function o_e(e, t) {
      E.assert(typeof t == "number"), e.__pos = t;
    }
    function pwe(e) {
      const t = e.__end;
      return E.assert(typeof t == "number"), t;
    }
    function c_e(e, t) {
      E.assert(typeof t == "number"), e.__end = t;
    }
    var dwe = /* @__PURE__ */ ((e) => (e[e.Exclude = 0] = "Exclude", e[e.IncludeAll = 1] = "IncludeAll", e[e.JSDoc = 2] = "JSDoc", e[e.StartLine = 3] = "StartLine", e))(dwe || {}), mwe = /* @__PURE__ */ ((e) => (e[e.Exclude = 0] = "Exclude", e[e.ExcludeWhitespace = 1] = "ExcludeWhitespace", e[e.Include = 2] = "Include", e))(mwe || {});
    function gwe(e, t) {
      return gs(e, t, !1, !0);
    }
    function QYe(e, t) {
      let n = t;
      for (; n < e.length; ) {
        const i = e.charCodeAt(n);
        if (hm(i)) {
          n++;
          continue;
        }
        return i === 47;
      }
      return !1;
    }
    var KI = {
      leadingTriviaOption: 0,
      trailingTriviaOption: 0
    };
    function e8(e, t, n, i) {
      return {
        pos: iT(e, t, i),
        end: Hk(e, n, i)
      };
    }
    function iT(e, t, n, i = !1) {
      var a, o;
      const { leadingTriviaOption: c } = n;
      if (c === 0) return t.getStart(e);
      if (c === 3) {
        const S = t.getStart(e), T = rd(S, e);
        return cE(t, T) ? T : S;
      }
      if (c === 2) {
        const S = MB(t, e.text);
        if (S?.length) return rd(S[0].pos, e);
      }
      const _ = t.getFullStart(), u = t.getStart(e);
      if (_ === u) return u;
      const d = rd(_, e);
      if (rd(u, e) === d) return c === 1 ? _ : u;
      if (i) {
        const S = ((a = jg(e.text, _)) == null ? void 0 : a[0]) || ((o = Ly(e.text, _)) == null ? void 0 : o[0]);
        if (S) return gs(e.text, S.end, !0, !0);
      }
      const g = _ > 0 ? 1 : 0;
      let h = qy(TD(e, d) + g, e);
      return h = gwe(e.text, h), qy(TD(e, h), e);
    }
    function l_e(e, t, n) {
      const { end: i } = t, { trailingTriviaOption: a } = n;
      if (a === 2) {
        const o = Ly(e.text, i);
        if (o) {
          const c = TD(e, t.end);
          for (const _ of o) {
            if (_.kind === 2 || TD(e, _.pos) > c) break;
            if (TD(e, _.end) > c) return gs(e.text, _.end, !0, !0);
          }
        }
      }
    }
    function Hk(e, t, n) {
      var i;
      const { end: a } = t, { trailingTriviaOption: o } = n;
      if (o === 0) return a;
      if (o === 1) {
        const u = zi(Ly(e.text, a), jg(e.text, a)), d = (i = u?.[u.length - 1]) == null ? void 0 : i.end;
        return d || a;
      }
      const c = l_e(e, t, n);
      if (c) return c;
      const _ = gs(e.text, a, !0);
      return _ !== a && (o === 2 || Uu(e.text.charCodeAt(_ - 1))) ? _ : a;
    }
    function vH(e, t) {
      return !!t && !!e.parent && (t.kind === 28 || t.kind === 27 && e.parent.kind === 211);
    }
    function YYe(e) {
      return Lo(e) || Xc(e);
    }
    var ZYe = class vge {
      constructor(t, n) {
        this.newLineCharacter = t, this.formatContext = n, this.changes = [], this.classesWithNodesInsertedAtStart = /* @__PURE__ */ new Map(), this.deletedNodes = [];
      }
      static fromContext(t) {
        return new vge(Xh(t.host, t.formatContext.options), t.formatContext);
      }
      static with(t, n) {
        const i = vge.fromContext(t);
        return n(i), i.getChanges();
      }
      pushRaw(t, n) {
        E.assertEqual(t.fileName, n.fileName);
        for (const i of n.textChanges) this.changes.push({
          kind: 3,
          sourceFile: t,
          text: i.newText,
          range: Z9(i.span)
        });
      }
      deleteRange(t, n) {
        this.changes.push({
          kind: 0,
          sourceFile: t,
          range: n
        });
      }
      delete(t, n) {
        this.deletedNodes.push({
          sourceFile: t,
          node: n
        });
      }
      deleteNode(t, n, i = { leadingTriviaOption: 1 }) {
        this.deleteRange(t, e8(t, n, n, i));
      }
      deleteNodes(t, n, i = { leadingTriviaOption: 1 }, a) {
        for (const o of n) {
          const c = iT(t, o, i, a), _ = Hk(t, o, i);
          this.deleteRange(t, {
            pos: c,
            end: _
          }), a = !!l_e(t, o, i);
        }
      }
      deleteModifier(t, n) {
        this.deleteRange(t, {
          pos: n.getStart(t),
          end: gs(t.text, n.end, !0)
        });
      }
      deleteNodeRange(t, n, i, a = { leadingTriviaOption: 1 }) {
        const o = iT(t, n, a), c = Hk(t, i, a);
        this.deleteRange(t, {
          pos: o,
          end: c
        });
      }
      deleteNodeRangeExcludingEnd(t, n, i, a = { leadingTriviaOption: 1 }) {
        const o = iT(t, n, a), c = i === void 0 ? t.text.length : iT(t, i, a);
        this.deleteRange(t, {
          pos: o,
          end: c
        });
      }
      replaceRange(t, n, i, a = {}) {
        this.changes.push({
          kind: 1,
          sourceFile: t,
          range: n,
          options: a,
          node: i
        });
      }
      replaceNode(t, n, i, a = KI) {
        this.replaceRange(t, e8(t, n, n, a), i, a);
      }
      replaceNodeRange(t, n, i, a, o = KI) {
        this.replaceRange(t, e8(t, n, i, o), a, o);
      }
      replaceRangeWithNodes(t, n, i, a = {}) {
        this.changes.push({
          kind: 2,
          sourceFile: t,
          range: n,
          options: a,
          nodes: i
        });
      }
      replaceNodeWithNodes(t, n, i, a = KI) {
        this.replaceRangeWithNodes(t, e8(t, n, n, a), i, a);
      }
      replaceNodeWithText(t, n, i) {
        this.replaceRangeWithText(t, e8(t, n, n, KI), i);
      }
      replaceNodeRangeWithNodes(t, n, i, a, o = KI) {
        this.replaceRangeWithNodes(t, e8(t, n, i, o), a, o);
      }
      nodeHasTrailingComment(t, n, i = KI) {
        return !!l_e(t, n, i);
      }
      nextCommaToken(t, n) {
        const i = c2(n, n.parent, t);
        return i && i.kind === 28 ? i : void 0;
      }
      replacePropertyAssignment(t, n, i) {
        const a = this.nextCommaToken(t, n) ? "" : "," + this.newLineCharacter;
        this.replaceNode(t, n, i, { suffix: a });
      }
      insertNodeAt(t, n, i, a = {}) {
        this.replaceRange(t, bf(n), i, a);
      }
      insertNodesAt(t, n, i, a = {}) {
        this.replaceRangeWithNodes(t, bf(n), i, a);
      }
      insertNodeAtTopOfFile(t, n, i) {
        this.insertAtTopOfFile(t, n, i);
      }
      insertNodesAtTopOfFile(t, n, i) {
        this.insertAtTopOfFile(t, n, i);
      }
      insertAtTopOfFile(t, n, i) {
        const a = sZe(t), o = {
          prefix: a === 0 ? void 0 : this.newLineCharacter,
          suffix: (Uu(t.text.charCodeAt(a)) ? "" : this.newLineCharacter) + (i ? this.newLineCharacter : "")
        };
        da(n) ? this.insertNodesAt(t, a, n, o) : this.insertNodeAt(t, a, n, o);
      }
      insertNodesAtEndOfFile(t, n, i) {
        this.insertAtEndOfFile(t, n, i);
      }
      insertAtEndOfFile(t, n, i) {
        const a = t.end + 1, o = {
          prefix: this.newLineCharacter,
          suffix: this.newLineCharacter + (i ? this.newLineCharacter : "")
        };
        this.insertNodesAt(t, a, n, o);
      }
      insertStatementsInNewFile(t, n, i) {
        this.newFileChanges || (this.newFileChanges = Up()), this.newFileChanges.add(t, {
          oldFile: i,
          statements: n
        });
      }
      insertFirstParameter(t, n, i) {
        const a = ul(n);
        a ? this.insertNodeBefore(t, a, i) : this.insertNodeAt(t, n.pos, i);
      }
      insertNodeBefore(t, n, i, a = !1, o = {}) {
        this.insertNodeAt(t, iT(t, n, o), i, this.getOptionsForInsertNodeBefore(n, i, a));
      }
      insertNodesBefore(t, n, i, a = !1, o = {}) {
        this.insertNodesAt(t, iT(t, n, o), i, this.getOptionsForInsertNodeBefore(n, js(i), a));
      }
      insertModifierAt(t, n, i, a = {}) {
        this.insertNodeAt(t, n, A.createToken(i), a);
      }
      insertModifierBefore(t, n, i) {
        return this.insertModifierAt(t, i.getStart(t), n, { suffix: " " });
      }
      insertCommentBeforeLine(t, n, i, a) {
        const o = qy(n, t), c = Ise(t.text, o), _ = ywe(t, c), u = lE(t, _ ? c : i), d = t.text.slice(o, c), g = `${_ ? "" : this.newLineCharacter}//${a}${this.newLineCharacter}${d}`;
        this.insertText(t, u.getStart(t), g);
      }
      insertJsdocCommentBefore(t, n, i) {
        const a = n.getStart(t);
        if (n.jsDoc) for (const _ of n.jsDoc) this.deleteRange(t, {
          pos: rd(_.getStart(t), t),
          end: Hk(t, _, {})
        });
        const o = sL(t.text, a - 1), c = t.text.slice(o, a);
        this.insertNodeAt(t, a, i, { suffix: this.newLineCharacter + c });
      }
      createJSDocText(t, n) {
        const i = ks(n.jsDoc, (o) => Ta(o.comment) ? A.createJSDocText(o.comment) : o.comment), a = Fg(n.jsDoc);
        return a && xp(a.pos, a.end, t) && It(i) === 0 ? void 0 : A.createNodeArray(Jn(i, A.createJSDocText(`
`)));
      }
      replaceJSDocComment(t, n, i) {
        this.insertJsdocCommentBefore(t, KYe(n), A.createJSDocComment(this.createJSDocText(t, n), A.createNodeArray(i)));
      }
      addJSDocTags(t, n, i) {
        const a = wi(n.jsDoc, (c) => c.tags), o = i.filter((c) => !a.some((_, u) => {
          const d = eZe(_, c);
          return d && (a[u] = d), !!d;
        }));
        this.replaceJSDocComment(t, n, [...a, ...o]);
      }
      filterJSDocTags(t, n, i) {
        this.replaceJSDocComment(t, n, dn(wi(n.jsDoc, (a) => a.tags), i));
      }
      replaceRangeWithText(t, n, i) {
        this.changes.push({
          kind: 3,
          sourceFile: t,
          range: n,
          text: i
        });
      }
      insertText(t, n, i) {
        this.replaceRangeWithText(t, bf(n), i);
      }
      tryInsertTypeAnnotation(t, n, i) {
        let a;
        if (Ra(n)) {
          if (a = uo(n, 22, t), !a) {
            if (!Bo(n)) return !1;
            a = js(n.parameters);
          }
        } else a = (n.kind === 261 ? n.exclamationToken : n.questionToken) ?? n.name;
        return this.insertNodeAt(t, a.end, i, { prefix: ": " }), !0;
      }
      tryInsertThisTypeAnnotation(t, n, i) {
        const a = uo(n, 21, t).getStart(t) + 1, o = n.parameters.length ? ", " : "";
        this.insertNodeAt(t, a, i, {
          prefix: "this: ",
          suffix: o
        });
      }
      insertTypeParameters(t, n, i) {
        const a = (uo(n, 21, t) || js(n.parameters)).getStart(t);
        this.insertNodesAt(t, a, i, {
          prefix: "<",
          suffix: ">",
          joiner: ", "
        });
      }
      getOptionsForInsertNodeBefore(t, n, i) {
        return Ei(t) || al(t) ? { suffix: i ? this.newLineCharacter + this.newLineCharacter : this.newLineCharacter } : ci(t) ? { suffix: ", " } : Fi(t) ? Fi(n) ? { suffix: ", " } : {} : Ts(t) && ic(t.parent) || Nm(t) ? { suffix: ", " } : p_(t) ? { suffix: "," + (i ? this.newLineCharacter : " ") } : E.failBadSyntaxKind(t);
      }
      insertNodeAtConstructorStart(t, n, i) {
        const a = ul(n.body.statements);
        !a || !n.body.multiLine ? this.replaceConstructorBody(t, n, [i, ...n.body.statements]) : this.insertNodeBefore(t, a, i);
      }
      insertNodeAtConstructorStartAfterSuperCall(t, n, i) {
        const a = xr(n.body.statements, (o) => zl(o) && hS(o.expression));
        !a || !n.body.multiLine ? this.replaceConstructorBody(t, n, [...n.body.statements, i]) : this.insertNodeAfter(t, a, i);
      }
      insertNodeAtConstructorEnd(t, n, i) {
        const a = Wo(n.body.statements);
        !a || !n.body.multiLine ? this.replaceConstructorBody(t, n, [...n.body.statements, i]) : this.insertNodeAfter(t, a, i);
      }
      replaceConstructorBody(t, n, i) {
        this.replaceNode(t, n.body, A.createBlock(i, !0));
      }
      insertNodeAtEndOfScope(t, n, i) {
        const a = iT(t, n.getLastToken(), {});
        this.insertNodeAt(t, a, i, {
          prefix: Uu(t.text.charCodeAt(n.getLastToken().pos)) ? this.newLineCharacter : this.newLineCharacter + this.newLineCharacter,
          suffix: this.newLineCharacter
        });
      }
      insertMemberAtStart(t, n, i) {
        this.insertNodeAtStartWorker(t, n, i);
      }
      insertNodeAtObjectStart(t, n, i) {
        this.insertNodeAtStartWorker(t, n, i);
      }
      insertNodeAtStartWorker(t, n, i) {
        const a = this.guessIndentationFromExistingMembers(t, n) ?? this.computeIndentationForNewMember(t, n);
        this.insertNodeAt(t, bH(n).pos, i, this.getInsertNodeAtStartInsertOptions(t, n, a));
      }
      guessIndentationFromExistingMembers(t, n) {
        let i, a = n;
        for (const o of bH(n)) {
          if (sO(a, o, t)) return;
          const c = o.getStart(t), _ = dl.SmartIndenter.findFirstNonWhitespaceColumn(rd(c, t), c, t, this.formatContext.options);
          if (i === void 0) i = _;
          else if (_ !== i) return;
          a = o;
        }
        return i;
      }
      computeIndentationForNewMember(t, n) {
        const i = n.getStart(t);
        return dl.SmartIndenter.findFirstNonWhitespaceColumn(rd(i, t), i, t, this.formatContext.options) + (this.formatContext.options.indentSize ?? 4);
      }
      getInsertNodeAtStartInsertOptions(t, n, i) {
        const a = bH(n).length === 0, o = !this.classesWithNodesInsertedAtStart.has(Hs(n));
        o && this.classesWithNodesInsertedAtStart.set(Hs(n), {
          node: n,
          sourceFile: t
        });
        const c = bs(n) && (!Tp(t) || !a);
        return {
          indentation: i,
          prefix: (bs(n) && Tp(t) && a && !o ? "," : "") + this.newLineCharacter,
          suffix: c ? "," : au(n) && a ? ";" : ""
        };
      }
      insertNodeAfterComma(t, n, i) {
        const a = this.insertNodeAfterWorker(t, this.nextCommaToken(t, n) || n, i);
        this.insertNodeAt(t, a, i, this.getInsertNodeAfterOptions(t, n));
      }
      insertNodeAfter(t, n, i) {
        const a = this.insertNodeAfterWorker(t, n, i);
        this.insertNodeAt(t, a, i, this.getInsertNodeAfterOptions(t, n));
      }
      insertNodeAtEndOfList(t, n, i) {
        this.insertNodeAt(t, n.end, i, { prefix: ", " });
      }
      insertNodesAfter(t, n, i) {
        const a = this.insertNodeAfterWorker(t, n, js(i));
        this.insertNodesAt(t, a, i, this.getInsertNodeAfterOptions(t, n));
      }
      insertNodeAfterWorker(t, n, i) {
        return oZe(n, i) && t.text.charCodeAt(n.end - 1) !== 59 && this.replaceRange(t, bf(n.end), A.createToken(27)), Hk(t, n, {});
      }
      getInsertNodeAfterOptions(t, n) {
        const i = this.getInsertNodeAfterOptionsWorker(n);
        return {
          ...i,
          prefix: n.end === t.end && Ei(n) ? i.prefix ? `
${i.prefix}` : `
` : i.prefix
        };
      }
      getInsertNodeAfterOptionsWorker(t) {
        switch (t.kind) {
          case 264:
          case 268:
            return {
              prefix: this.newLineCharacter,
              suffix: this.newLineCharacter
            };
          case 261:
          case 11:
          case 80:
            return { prefix: ", " };
          case 304:
            return { suffix: "," + this.newLineCharacter };
          case 95:
            return { prefix: " " };
          case 170:
            return {};
          default:
            return E.assert(Ei(t) || Z7(t)), { suffix: this.newLineCharacter };
        }
      }
      insertName(t, n, i) {
        if (E.assert(!n.name), n.kind === 220) {
          const a = uo(n, 39, t), o = uo(n, 21, t);
          o ? (this.insertNodesAt(t, o.getStart(t), [A.createToken(100), A.createIdentifier(i)], { joiner: " " }), Zh(this, t, a)) : (this.insertText(t, js(n.parameters).getStart(t), `function ${i}(`), this.replaceRange(t, a, A.createToken(22))), n.body.kind !== 242 && (this.insertNodesAt(t, n.body.getStart(t), [A.createToken(19), A.createToken(107)], {
            joiner: " ",
            suffix: " "
          }), this.insertNodesAt(t, n.body.end, [A.createToken(27), A.createToken(20)], { joiner: " " }));
        } else {
          const a = uo(n, n.kind === 219 ? 100 : 86, t).end;
          this.insertNodeAt(t, a, A.createIdentifier(i), { prefix: " " });
        }
      }
      insertExportModifier(t, n) {
        this.insertText(t, n.getStart(t), "export ");
      }
      insertImportSpecifierAtIndex(t, n, i, a) {
        const o = i.elements[a - 1];
        o ? this.insertNodeInListAfter(t, o, n) : this.insertNodeBefore(t, i.elements[0], n, !xp(i.elements[0].getStart(), i.parent.parent.getStart(), t));
      }
      insertNodeInListAfter(t, n, i, a = dl.SmartIndenter.getContainingList(n, t)) {
        if (!a) {
          E.fail("node is not a list element");
          return;
        }
        const o = t6(a, n);
        if (o < 0) return;
        const c = n.getEnd();
        if (o !== a.length - 1) {
          const _ = xi(t, n.end);
          if (_ && vH(n, _)) {
            const u = a[o + 1], d = gwe(t.text, u.getFullStart()), g = `${as(_.kind)}${t.text.substring(_.end, d)}`;
            this.insertNodesAt(t, d, [i], { suffix: g });
          }
        } else {
          const _ = n.getStart(t), u = rd(_, t);
          let d, g = !1;
          if (a.length === 1) d = 28;
          else {
            const h = Tl(n.pos, t);
            d = vH(n, h) ? h.kind : 28, g = rd(a[o - 1].getStart(t), t) !== u;
          }
          if ((QYe(t.text, n.end) || !xp(a.pos, a.end, t)) && (g = !0), g) {
            this.replaceRange(t, bf(c), A.createToken(d));
            const h = dl.SmartIndenter.findFirstNonWhitespaceColumn(u, _, t, this.formatContext.options);
            let S = gs(t.text, c, !0, !1);
            for (; S !== c && Uu(t.text.charCodeAt(S - 1)); ) S--;
            this.replaceRange(t, bf(S), i, {
              indentation: h,
              prefix: this.newLineCharacter
            });
          } else this.replaceRange(t, bf(c), i, { prefix: `${as(d)} ` });
        }
      }
      parenthesizeExpression(t, n) {
        this.replaceRange(t, ez(n), A.createParenthesizedExpression(n));
      }
      finishClassesWithNodesInsertedAtStart() {
        this.classesWithNodesInsertedAtStart.forEach(({ node: t, sourceFile: n }) => {
          const [i, a] = rZe(t, n);
          if (i !== void 0 && a !== void 0) {
            const o = bH(t).length === 0, c = xp(i, a, n);
            o && c && i !== a - 1 && this.deleteRange(n, bf(i, a - 1)), c && this.insertText(n, a - 1, this.newLineCharacter);
          }
        });
      }
      finishDeleteDeclarations() {
        const t = /* @__PURE__ */ new Set();
        for (const { sourceFile: n, node: i } of this.deletedNodes) this.deletedNodes.some((a) => a.sourceFile === n && sse(a.node, i)) || (da(i) ? this.deleteRange(n, tz(n, i)) : f_e.deleteDeclaration(this, t, n, i));
        t.forEach((n) => {
          const i = n.getSourceFile(), a = dl.SmartIndenter.getContainingList(n, i);
          if (n !== ws(a)) return;
          const o = i_(a, (c) => !t.has(c), a.length - 2);
          o !== -1 && this.deleteRange(i, {
            pos: a[o].end,
            end: u_e(i, a[o + 1])
          });
        });
      }
      getChanges(t) {
        this.finishDeleteDeclarations(), this.finishClassesWithNodesInsertedAtStart();
        const n = SH.getTextChangesFromChanges(this.changes, this.newLineCharacter, this.formatContext, t);
        return this.newFileChanges && this.newFileChanges.forEach((i, a) => {
          n.push(SH.newFileChanges(a, i, this.newLineCharacter, this.formatContext));
        }), n;
      }
      createNewFile(t, n, i) {
        this.insertStatementsInNewFile(n, i, t);
      }
    };
    function KYe(e) {
      if (e.kind !== 220) return e;
      const t = e.parent.kind === 173 ? e.parent : e.parent.parent;
      return t.jsDoc = e.jsDoc, t;
    }
    function eZe(e, t) {
      if (e.kind === t.kind)
        switch (e.kind) {
          case 342: {
            const n = e, i = t;
            return Fe(n.name) && Fe(i.name) && n.name.escapedText === i.name.escapedText ? A.createJSDocParameterTag(void 0, i.name, !1, i.typeExpression, i.isNameFirst, n.comment) : void 0;
          }
          case 343:
            return A.createJSDocReturnTag(void 0, t.typeExpression, e.comment);
          case 345:
            return A.createJSDocTypeTag(void 0, t.typeExpression, e.comment);
        }
    }
    function u_e(e, t) {
      return gs(e.text, iT(e, t, { leadingTriviaOption: 1 }), !1, !0);
    }
    function tZe(e, t, n, i) {
      const a = u_e(e, i);
      if (n === void 0 || xp(Hk(e, t, {}), a, e)) return a;
      const o = Tl(i.getStart(e), e);
      if (vH(t, o)) {
        const c = Tl(t.getStart(e), e);
        if (vH(n, c)) {
          const _ = gs(e.text, o.getEnd(), !0, !0);
          if (xp(c.getStart(e), o.getStart(e), e)) return Uu(e.text.charCodeAt(_ - 1)) ? _ - 1 : _;
          if (Uu(e.text.charCodeAt(_))) return _;
        }
      }
      return a;
    }
    function rZe(e, t) {
      const n = uo(e, 19, t), i = uo(e, 20, t);
      return [n?.end, i?.end];
    }
    function bH(e) {
      return bs(e) ? e.properties : e.members;
    }
    var SH;
    ((e) => {
      function t(_, u, d, g) {
        return Rn(BC(_, (h) => h.sourceFile.path), (h) => {
          const S = h[0].sourceFile, T = uf(h, (D, P) => D.range.pos - P.range.pos || D.range.end - P.range.end);
          for (let D = 0; D < T.length - 1; D++) E.assert(T[D].range.end <= T[D + 1].range.pos, "Changes overlap", () => `${JSON.stringify(T[D].range)} and ${JSON.stringify(T[D + 1].range)}`);
          const k = Rn(T, (D) => {
            const P = V0(D.range), N = D.kind === 1 ? Sr(rc(D.node)) ?? D.sourceFile : D.kind === 2 ? Sr(rc(D.nodes[0])) ?? D.sourceFile : D.sourceFile, M = a(D, N, S, u, d, g);
            if (!(P.length === M.length && zse(N.text, M, P.start)))
              return pI(P, M);
          });
          return k.length > 0 ? {
            fileName: S.fileName,
            textChanges: k
          } : void 0;
        });
      }
      e.getTextChangesFromChanges = t;
      function n(_, u, d, g) {
        const h = i(xO(_), u, d, g);
        return {
          fileName: _,
          textChanges: [pI(du(0, 0), h)],
          isNewFile: !0
        };
      }
      e.newFileChanges = n;
      function i(_, u, d, g) {
        const h = ks(u, (T) => T.statements.map((k) => k === 4 ? "" : c(k, T.oldFile, d).text)).join(d), S = Sk("any file name", h, {
          languageVersion: 99,
          jsDocParsingMode: 1
        }, !0, _);
        return __e(h, dl.formatDocument(S, g)) + d;
      }
      e.newFileChangesWorker = i;
      function a(_, u, d, g, h, S) {
        var T;
        if (_.kind === 0) return "";
        if (_.kind === 3) return _.text;
        const { options: k = {}, range: { pos: D } } = _, P = (R) => o(R, u, d, D, k, g, h, S), N = _.kind === 2 ? _.nodes.map((R) => zC(P(R), g)).join(((T = _.options) == null ? void 0 : T.joiner) || g) : P(_.node), M = k.indentation !== void 0 || rd(D, u) === D ? N : N.replace(/^\s+/, "");
        return (k.prefix || "") + M + (!k.suffix || Uo(M, k.suffix) ? "" : k.suffix);
      }
      function o(_, u, d, g, { indentation: h, prefix: S, delta: T }, k, D, P) {
        const { node: N, text: M } = c(_, u, k);
        P && P(N, M);
        const R = yL(D, u), G = h !== void 0 ? h : dl.SmartIndenter.getIndentation(g, d, R, S === k || rd(g, u) === g);
        T === void 0 && (T = dl.SmartIndenter.shouldIndentChildNode(R, _) && R.indentSize || 0);
        const L = {
          text: M,
          getLineAndCharacterOfPosition(z) {
            return Za(this, z);
          }
        };
        return __e(M, dl.formatNodeGivenIndentation(N, L, u.languageVariant, G, T, {
          ...D,
          options: R
        }));
      }
      function c(_, u, d) {
        const g = hwe(d);
        return g1({
          newLine: CI(d),
          neverAsciiEscape: !0,
          preserveSourceNewlines: !0,
          terminateUnterminatedLiterals: !0
        }, g).writeNode(4, _, u, g), {
          text: g.getText(),
          node: TH(_)
        };
      }
      e.getNonformattedText = c;
    })(SH || (SH = {}));
    function __e(e, t) {
      for (let n = t.length - 1; n >= 0; n--) {
        const { span: i, newText: a } = t[n];
        e = `${e.substring(0, i.start)}${a}${e.substring(dc(i))}`;
      }
      return e;
    }
    function nZe(e) {
      return gs(e, 0) === e.length;
    }
    var iZe = {
      ...UN,
      factory: YA(UN.factory.flags | 1, UN.factory.baseFactory)
    };
    function TH(e) {
      const t = Tr(e, TH, iZe, aZe, TH), n = wo(t) ? t : Object.create(t);
      return Ud(n, fwe(e), pwe(e)), n;
    }
    function aZe(e, t, n, i, a) {
      const o = Fr(e, t, n, i, a);
      if (!o) return o;
      E.assert(e);
      const c = o === e ? A.createNodeArray(o.slice(0)) : o;
      return Ud(c, fwe(e), pwe(e)), c;
    }
    function hwe(e) {
      let t = 0;
      const n = CA(e), i = ($) => {
        $ && o_e($, t);
      }, a = ($) => {
        $ && c_e($, t);
      }, o = ($) => {
        $ && o_e($, t);
      }, c = ($) => {
        $ && c_e($, t);
      }, _ = ($) => {
        $ && o_e($, t);
      }, u = ($) => {
        $ && c_e($, t);
      };
      function d($, Se) {
        if (Se || !nZe($)) {
          t = n.getTextPos();
          let Be = 0;
          for (; Rg($.charCodeAt($.length - Be - 1)); ) Be++;
          t -= Be;
        }
      }
      function g($) {
        n.write($), d($, !1);
      }
      function h($) {
        n.writeComment($);
      }
      function S($) {
        n.writeKeyword($), d($, !1);
      }
      function T($) {
        n.writeOperator($), d($, !1);
      }
      function k($) {
        n.writePunctuation($), d($, !1);
      }
      function D($) {
        n.writeTrailingSemicolon($), d($, !1);
      }
      function P($) {
        n.writeParameter($), d($, !1);
      }
      function N($) {
        n.writeProperty($), d($, !1);
      }
      function M($) {
        n.writeSpace($), d($, !1);
      }
      function R($) {
        n.writeStringLiteral($), d($, !1);
      }
      function G($, Se) {
        n.writeSymbol($, Se), d($, !1);
      }
      function L($) {
        n.writeLine($);
      }
      function z() {
        n.increaseIndent();
      }
      function H() {
        n.decreaseIndent();
      }
      function U() {
        return n.getText();
      }
      function pe($) {
        n.rawWrite($), d($, !1);
      }
      function ie($) {
        n.writeLiteral($), d($, !0);
      }
      function W() {
        return n.getTextPos();
      }
      function Q() {
        return n.getLine();
      }
      function se() {
        return n.getColumn();
      }
      function he() {
        return n.getIndent();
      }
      function fe() {
        return n.isAtStartOfLine();
      }
      function de() {
        n.clear(), t = 0;
      }
      return {
        onBeforeEmitNode: i,
        onAfterEmitNode: a,
        onBeforeEmitNodeArray: o,
        onAfterEmitNodeArray: c,
        onBeforeEmitToken: _,
        onAfterEmitToken: u,
        write: g,
        writeComment: h,
        writeKeyword: S,
        writeOperator: T,
        writePunctuation: k,
        writeTrailingSemicolon: D,
        writeParameter: P,
        writeProperty: N,
        writeSpace: M,
        writeStringLiteral: R,
        writeSymbol: G,
        writeLine: L,
        increaseIndent: z,
        decreaseIndent: H,
        getText: U,
        rawWrite: pe,
        writeLiteral: ie,
        getTextPos: W,
        getLine: Q,
        getColumn: se,
        getIndent: he,
        isAtStartOfLine: fe,
        hasTrailingComment: () => n.hasTrailingComment(),
        hasTrailingWhitespace: () => n.hasTrailingWhitespace(),
        clear: de
      };
    }
    function sZe(e) {
      let t;
      for (const d of e.statements) if (bm(d)) t = d;
      else break;
      let n = 0;
      const i = e.text;
      if (t)
        return n = t.end, u(), n;
      const a = J7(i);
      a !== void 0 && (n = a.length, u());
      const o = jg(i, n);
      if (!o) return n;
      let c, _;
      for (const d of o) {
        if (d.kind === 3) {
          if (p5(i, d.pos)) {
            c = {
              range: d,
              pinnedOrTripleSlash: !0
            };
            continue;
          }
        } else if (SB(i, d.pos, d.end)) {
          c = {
            range: d,
            pinnedOrTripleSlash: !0
          };
          continue;
        }
        if (c && (c.pinnedOrTripleSlash || e.getLineAndCharacterOfPosition(d.pos).line >= e.getLineAndCharacterOfPosition(c.range.end).line + 2))
          break;
        if (e.statements.length) {
          _ === void 0 && (_ = e.getLineAndCharacterOfPosition(e.statements[0].getStart()).line);
          const g = e.getLineAndCharacterOfPosition(d.end).line;
          if (_ < g + 2) break;
        }
        c = {
          range: d,
          pinnedOrTripleSlash: !1
        };
      }
      return c && (n = c.range.end, u()), n;
      function u() {
        if (n < i.length) {
          const d = i.charCodeAt(n);
          Uu(d) && (n++, n < i.length && d === 13 && i.charCodeAt(n) === 10 && n++);
        }
      }
    }
    function ywe(e, t) {
      return !W0(e, t) && !Ok(e, t) && !HV(e, t) && !fse(e, t);
    }
    function oZe(e, t) {
      return (f_(e) || ga(e)) && Z7(t) && t.name.kind === 168 || r5(e) && r5(t);
    }
    var f_e;
    ((e) => {
      function t(o, c, _, u) {
        switch (u.kind) {
          case 170: {
            const h = u.parent;
            Bo(h) && h.parameters.length === 1 && !uo(h, 21, _) ? o.replaceNodeWithText(_, u, "()") : t8(o, c, _, u);
            break;
          }
          case 273:
          case 272:
            Zh(o, _, u, { leadingTriviaOption: _.imports.length && u === js(_.imports).parent || u === xr(_.statements, Nx) ? 0 : Jf(u) ? 2 : 3 });
            break;
          case 209:
            const d = u.parent;
            d.kind === 208 && u !== ws(d.elements) ? Zh(o, _, u) : t8(o, c, _, u);
            break;
          case 261:
            a(o, c, _, u);
            break;
          case 169:
            t8(o, c, _, u);
            break;
          case 277:
            const g = u.parent;
            g.elements.length === 1 ? i(o, _, g) : t8(o, c, _, u);
            break;
          case 275:
            i(o, _, u);
            break;
          case 27:
            Zh(o, _, u, { trailingTriviaOption: 0 });
            break;
          case 100:
            Zh(o, _, u, { leadingTriviaOption: 0 });
            break;
          case 264:
          case 263:
            Zh(o, _, u, { leadingTriviaOption: Jf(u) ? 2 : 3 });
            break;
          default:
            u.parent ? hd(u.parent) && u.parent.name === u ? n(o, _, u.parent) : za(u.parent) && Gi(u.parent.arguments, u) ? t8(o, c, _, u) : Zh(o, _, u) : Zh(o, _, u);
        }
      }
      e.deleteDeclaration = t;
      function n(o, c, _) {
        if (!_.namedBindings) Zh(o, c, _.parent);
        else {
          const u = _.name.getStart(c), d = xi(c, _.name.end);
          if (d && d.kind === 28) {
            const g = gs(c.text, d.end, !1, !0);
            o.deleteRange(c, {
              pos: u,
              end: g
            });
          } else Zh(o, c, _.name);
        }
      }
      function i(o, c, _) {
        if (_.parent.name) {
          const u = E.checkDefined(xi(c, _.pos - 1));
          o.deleteRange(c, {
            pos: u.getStart(c),
            end: _.end
          });
        } else Zh(o, c, dv(_, 273));
      }
      function a(o, c, _, u) {
        const { parent: d } = u;
        if (d.kind === 300) {
          o.deleteNodeRange(_, uo(d, 21, _), uo(d, 22, _));
          return;
        }
        if (d.declarations.length !== 1) {
          t8(o, c, _, u);
          return;
        }
        const g = d.parent;
        switch (g.kind) {
          case 251:
          case 250:
            o.replaceNode(_, u, A.createObjectLiteralExpression());
            break;
          case 249:
            Zh(o, _, d);
            break;
          case 244:
            Zh(o, _, g, { leadingTriviaOption: Jf(g) ? 2 : 3 });
            break;
          default:
            E.assertNever(g);
        }
      }
    })(f_e || (f_e = {}));
    function Zh(e, t, n, i = { leadingTriviaOption: 1 }) {
      const a = iT(t, n, i), o = Hk(t, n, i);
      e.deleteRange(t, {
        pos: a,
        end: o
      });
    }
    function t8(e, t, n, i) {
      const a = E.checkDefined(dl.SmartIndenter.getContainingList(i, n)), o = t6(a, i);
      if (E.assert(o !== -1), a.length === 1) {
        Zh(e, n, i);
        return;
      }
      E.assert(!t.has(i), "Deleting a node twice"), t.add(i), e.deleteRange(n, {
        pos: u_e(n, i),
        end: o === a.length - 1 ? Hk(n, i, {}) : tZe(n, i, a[o - 1], a[o + 1])
      });
    }
    var dl = {};
    gi(dl, {
      FormattingContext: () => bwe,
      FormattingRequestKind: () => vwe,
      RuleAction: () => Swe,
      RuleFlags: () => Twe,
      SmartIndenter: () => Jm,
      anyContext: () => xH,
      createTextRangeWithKind: () => DH,
      formatDocument: () => ZZe,
      formatNodeGivenIndentation: () => aKe,
      formatOnClosingCurly: () => YZe,
      formatOnEnter: () => $Ze,
      formatOnOpeningCurly: () => QZe,
      formatOnSemicolon: () => XZe,
      formatSelection: () => KZe,
      getAllRules: () => xwe,
      getFormatContext: () => JZe,
      getFormattingScanner: () => p_e,
      getIndentationString: () => D_e,
      getRangeOfEnclosingComment: () => $we
    });
    var vwe = /* @__PURE__ */ ((e) => (e[e.FormatDocument = 0] = "FormatDocument", e[e.FormatSelection = 1] = "FormatSelection", e[e.FormatOnEnter = 2] = "FormatOnEnter", e[e.FormatOnSemicolon = 3] = "FormatOnSemicolon", e[e.FormatOnOpeningCurlyBrace = 4] = "FormatOnOpeningCurlyBrace", e[e.FormatOnClosingCurlyBrace = 5] = "FormatOnClosingCurlyBrace", e))(vwe || {}), bwe = class {
      constructor(e, t, n) {
        this.sourceFile = e, this.formattingRequestKind = t, this.options = n;
      }
      updateContext(e, t, n, i, a) {
        this.currentTokenSpan = E.checkDefined(e), this.currentTokenParent = E.checkDefined(t), this.nextTokenSpan = E.checkDefined(n), this.nextTokenParent = E.checkDefined(i), this.contextNode = E.checkDefined(a), this.contextNodeAllOnSameLine = void 0, this.nextNodeAllOnSameLine = void 0, this.tokensAreOnSameLine = void 0, this.contextNodeBlockIsOnOneLine = void 0, this.nextNodeBlockIsOnOneLine = void 0;
      }
      ContextNodeAllOnSameLine() {
        return this.contextNodeAllOnSameLine === void 0 && (this.contextNodeAllOnSameLine = this.NodeIsOnOneLine(this.contextNode)), this.contextNodeAllOnSameLine;
      }
      NextNodeAllOnSameLine() {
        return this.nextNodeAllOnSameLine === void 0 && (this.nextNodeAllOnSameLine = this.NodeIsOnOneLine(this.nextTokenParent)), this.nextNodeAllOnSameLine;
      }
      TokensAreOnSameLine() {
        return this.tokensAreOnSameLine === void 0 && (this.tokensAreOnSameLine = this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line === this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line), this.tokensAreOnSameLine;
      }
      ContextNodeBlockIsOnOneLine() {
        return this.contextNodeBlockIsOnOneLine === void 0 && (this.contextNodeBlockIsOnOneLine = this.BlockIsOnOneLine(this.contextNode)), this.contextNodeBlockIsOnOneLine;
      }
      NextNodeBlockIsOnOneLine() {
        return this.nextNodeBlockIsOnOneLine === void 0 && (this.nextNodeBlockIsOnOneLine = this.BlockIsOnOneLine(this.nextTokenParent)), this.nextNodeBlockIsOnOneLine;
      }
      NodeIsOnOneLine(e) {
        return this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line === this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line;
      }
      BlockIsOnOneLine(e) {
        const t = uo(e, 19, this.sourceFile), n = uo(e, 20, this.sourceFile);
        return t && n ? this.sourceFile.getLineAndCharacterOfPosition(t.getEnd()).line === this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line : !1;
      }
    }, cZe = Bg(99, !1, 0), lZe = Bg(99, !1, 1);
    function p_e(e, t, n, i, a) {
      const o = t === 1 ? lZe : cZe;
      o.setText(e), o.resetTokenState(n);
      let c = !0, _, u, d, g, h;
      const S = a({
        advance: T,
        readTokenInfo: L,
        readEOFTokenRange: H,
        isOnToken: U,
        isOnEOF: pe,
        getCurrentLeadingTrivia: () => _,
        lastTrailingTriviaWasNewLine: () => c,
        skipToEndOf: W,
        skipToStartOf: Q,
        getTokenFullStart: () => h?.token.pos ?? o.getTokenStart(),
        getStartPos: () => h?.token.pos ?? o.getTokenStart()
      });
      return h = void 0, o.setText(void 0), S;
      function T() {
        h = void 0, o.getTokenFullStart() !== n ? c = !!u && ws(u).kind === 4 : o.scan(), _ = void 0, u = void 0;
        let se = o.getTokenFullStart();
        for (; se < i; ) {
          const he = o.getToken();
          if (!p6(he)) break;
          o.scan();
          const fe = {
            pos: se,
            end: o.getTokenFullStart(),
            kind: he
          };
          se = o.getTokenFullStart(), _ = kr(_, fe);
        }
        d = o.getTokenFullStart();
      }
      function k(se) {
        switch (se.kind) {
          case 34:
          case 72:
          case 73:
          case 50:
          case 49:
            return !0;
        }
        return !1;
      }
      function D(se) {
        if (se.parent) switch (se.parent.kind) {
          case 292:
          case 287:
          case 288:
          case 286:
            return z_(se.kind) || se.kind === 80;
        }
        return !1;
      }
      function P(se) {
        return sk(se) || Im(se) && h?.token.kind === 12;
      }
      function N(se) {
        return se.kind === 14;
      }
      function M(se) {
        return se.kind === 17 || se.kind === 18;
      }
      function R(se) {
        return se.parent && Om(se.parent) && se.parent.initializer === se;
      }
      function G(se) {
        return se === 44 || se === 69;
      }
      function L(se) {
        E.assert(U());
        const he = k(se) ? 1 : N(se) ? 2 : M(se) ? 3 : D(se) ? 4 : P(se) ? 5 : R(se) ? 6 : 0;
        if (h && he === g) return ie(h, se);
        o.getTokenFullStart() !== d && (E.assert(h !== void 0), o.resetTokenState(d), o.scan());
        let fe = z(se, he);
        const de = DH(o.getTokenFullStart(), o.getTokenEnd(), fe);
        for (u && (u = void 0); o.getTokenFullStart() < i && (fe = o.scan(), !!p6(fe)); ) {
          const $ = DH(o.getTokenFullStart(), o.getTokenEnd(), fe);
          if (u || (u = []), u.push($), fe === 4) {
            o.scan();
            break;
          }
        }
        return h = {
          leadingTrivia: _,
          trailingTrivia: u,
          token: de
        }, ie(h, se);
      }
      function z(se, he) {
        const fe = o.getToken();
        switch (g = 0, he) {
          case 1:
            if (fe === 32) {
              g = 1;
              const de = o.reScanGreaterToken();
              return E.assert(se.kind === de), de;
            }
            break;
          case 2:
            if (G(fe)) {
              g = 2;
              const de = o.reScanSlashToken();
              return E.assert(se.kind === de), de;
            }
            break;
          case 3:
            if (fe === 20)
              return g = 3, o.reScanTemplateToken(!1);
            break;
          case 4:
            return g = 4, o.scanJsxIdentifier();
          case 5:
            return g = 5, o.reScanJsxToken(!1);
          case 6:
            return g = 6, o.reScanJsxAttributeValue();
          case 0:
            break;
          default:
            E.assertNever(he);
        }
        return fe;
      }
      function H() {
        return E.assert(pe()), DH(o.getTokenFullStart(), o.getTokenEnd(), 1);
      }
      function U() {
        const se = h ? h.token.kind : o.getToken();
        return se !== 1 && !p6(se);
      }
      function pe() {
        return (h ? h.token.kind : o.getToken()) === 1;
      }
      function ie(se, he) {
        return Tx(he) && se.token.kind !== he.kind && (se.token.kind = he.kind), se;
      }
      function W(se) {
        o.resetTokenState(se.end), d = o.getTokenFullStart(), g = void 0, h = void 0, c = !1, _ = void 0, u = void 0;
      }
      function Q(se) {
        o.resetTokenState(se.pos), d = o.getTokenFullStart(), g = void 0, h = void 0, c = !1, _ = void 0, u = void 0;
      }
    }
    var xH = Te, Swe = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.StopProcessingSpaceActions = 1] = "StopProcessingSpaceActions", e[e.StopProcessingTokenActions = 2] = "StopProcessingTokenActions", e[e.InsertSpace = 4] = "InsertSpace", e[e.InsertNewLine = 8] = "InsertNewLine", e[e.DeleteSpace = 16] = "DeleteSpace", e[e.DeleteToken = 32] = "DeleteToken", e[e.InsertTrailingSemicolon = 64] = "InsertTrailingSemicolon", e[e.StopAction = 3] = "StopAction", e[e.ModifySpaceAction = 28] = "ModifySpaceAction", e[e.ModifyTokenAction = 96] = "ModifyTokenAction", e))(Swe || {}), Twe = /* @__PURE__ */ ((e) => (e[e.None = 0] = "None", e[e.CanDeleteNewLines = 1] = "CanDeleteNewLines", e))(Twe || {});
    function xwe() {
      const e = [];
      for (let z = 0; z <= 166; z++) z !== 1 && e.push(z);
      function t(...z) {
        return {
          tokens: e.filter((H) => !z.some((U) => U === H)),
          isSpecific: !1
        };
      }
      const n = {
        tokens: e,
        isSpecific: !1
      }, i = _P([...e, 3]), a = _P([...e, 1]), o = Cwe(83, 166), c = Cwe(30, 79), _ = [
        103,
        104,
        165,
        130,
        142,
        152
      ], u = [
        46,
        47,
        55,
        54
      ], d = [
        9,
        10,
        80,
        21,
        23,
        19,
        110,
        105
      ], g = [
        80,
        21,
        110,
        105
      ], h = [
        80,
        22,
        24,
        105
      ], S = [
        80,
        21,
        110,
        105
      ], T = [
        80,
        22,
        24,
        105
      ], k = [2, 3], D = [80, ...rq], P = i, N = _P([
        80,
        32,
        3,
        86,
        95,
        102
      ]), M = _P([
        22,
        3,
        92,
        113,
        98,
        93,
        85
      ]), R = [
        Gn("IgnoreBeforeComment", n, k, xH, 1),
        Gn("IgnoreAfterLineComment", 2, n, xH, 1),
        Gn("NotSpaceBeforeColon", n, 59, [
          Ri,
          oM,
          wwe
        ], 16),
        Gn("SpaceAfterColon", 59, n, [
          Ri,
          oM,
          EZe
        ], 4),
        Gn("NoSpaceBeforeQuestionMark", n, 58, [
          Ri,
          oM,
          wwe
        ], 16),
        Gn("SpaceAfterQuestionMarkInConditionalOperator", 58, n, [Ri, pZe], 4),
        Gn("NoSpaceAfterQuestionMark", 58, n, [Ri, fZe], 16),
        Gn("NoSpaceBeforeDot", n, [25, 29], [Ri, BZe], 16),
        Gn("NoSpaceAfterDot", [25, 29], n, [Ri], 16),
        Gn("NoSpaceBetweenImportParenInImportType", 102, 21, [Ri, kZe], 16),
        Gn("NoSpaceAfterUnaryPrefixOperator", u, d, [Ri, oM], 16),
        Gn("NoSpaceAfterUnaryPreincrementOperator", 46, g, [Ri], 16),
        Gn("NoSpaceAfterUnaryPredecrementOperator", 47, S, [Ri], 16),
        Gn("NoSpaceBeforeUnaryPostincrementOperator", h, 46, [Ri, Vwe], 16),
        Gn("NoSpaceBeforeUnaryPostdecrementOperator", T, 47, [Ri, Vwe], 16),
        Gn("SpaceAfterPostincrementWhenFollowedByAdd", 46, 40, [Ri, b1], 4),
        Gn("SpaceAfterAddWhenFollowedByUnaryPlus", 40, 40, [Ri, b1], 4),
        Gn("SpaceAfterAddWhenFollowedByPreincrement", 40, 46, [Ri, b1], 4),
        Gn("SpaceAfterPostdecrementWhenFollowedBySubtract", 47, 41, [Ri, b1], 4),
        Gn("SpaceAfterSubtractWhenFollowedByUnaryMinus", 41, 41, [Ri, b1], 4),
        Gn("SpaceAfterSubtractWhenFollowedByPredecrement", 41, 47, [Ri, b1], 4),
        Gn("NoSpaceAfterCloseBrace", 20, [28, 27], [Ri], 16),
        Gn("NewLineBeforeCloseBraceInBlockContext", i, 20, [Awe], 8),
        Gn("SpaceAfterCloseBrace", 20, t(22), [Ri, gZe], 4),
        Gn("SpaceBetweenCloseBraceAndElse", 20, 93, [Ri], 4),
        Gn("SpaceBetweenCloseBraceAndWhile", 20, 117, [Ri], 4),
        Gn("NoSpaceBetweenEmptyBraceBrackets", 19, 20, [Ri, Mwe], 16),
        Gn("SpaceAfterConditionalClosingParen", 22, 23, [cM], 4),
        Gn("NoSpaceBetweenFunctionKeywordAndStar", 100, 42, [Owe], 16),
        Gn("SpaceAfterStarInGeneratorDeclaration", 42, 80, [Owe], 4),
        Gn("SpaceAfterFunctionInFuncDecl", 100, n, [aT], 4),
        Gn("NewLineAfterOpenBraceInBlockContext", 19, n, [Awe], 8),
        Gn("SpaceAfterGetSetInMember", [139, 153], 80, [aT], 4),
        Gn("NoSpaceBetweenYieldKeywordAndStar", 127, 42, [Ri, Uwe], 16),
        Gn("SpaceBetweenYieldOrYieldStarAndOperand", [127, 42], n, [Ri, Uwe], 4),
        Gn("NoSpaceBetweenReturnAndSemicolon", 107, 27, [Ri], 16),
        Gn("SpaceAfterCertainKeywords", [
          115,
          111,
          105,
          91,
          107,
          114,
          135
        ], n, [Ri], 4),
        Gn("SpaceAfterLetConstInVariableDeclaration", [121, 87], n, [Ri, PZe], 4),
        Gn("NoSpaceBeforeOpenParenInFuncCall", n, 21, [
          Ri,
          vZe,
          bZe
        ], 16),
        Gn("SpaceBeforeBinaryKeywordOperator", n, _, [Ri, b1], 4),
        Gn("SpaceAfterBinaryKeywordOperator", _, n, [Ri, b1], 4),
        Gn("SpaceAfterVoidOperator", 116, n, [Ri, FZe], 4),
        Gn("SpaceBetweenAsyncAndOpenParen", 134, 21, [xZe, Ri], 4),
        Gn("SpaceBetweenAsyncAndFunctionKeyword", 134, [100, 80], [Ri], 4),
        Gn("NoSpaceBetweenTagAndTemplateString", [80, 22], [15, 16], [Ri], 16),
        Gn("SpaceBeforeJsxAttribute", n, 80, [CZe, Ri], 4),
        Gn("SpaceBeforeSlashInJsxOpeningElement", n, 44, [Jwe, Ri], 4),
        Gn("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement", 44, 32, [Jwe, Ri], 16),
        Gn("NoSpaceBeforeEqualInJsxAttribute", n, 64, [jwe, Ri], 16),
        Gn("NoSpaceAfterEqualInJsxAttribute", 64, n, [jwe, Ri], 16),
        Gn("NoSpaceBeforeJsxNamespaceColon", 80, 59, [Bwe], 16),
        Gn("NoSpaceAfterJsxNamespaceColon", 59, 80, [Bwe], 16),
        Gn("NoSpaceAfterModuleImport", [144, 149], 21, [Ri], 16),
        Gn("SpaceAfterCertainTypeScriptKeywords", [
          128,
          129,
          86,
          138,
          90,
          94,
          95,
          96,
          139,
          119,
          102,
          120,
          144,
          145,
          123,
          125,
          124,
          148,
          153,
          126,
          156,
          161,
          143,
          140
        ], n, [Ri], 4),
        Gn("SpaceBeforeCertainTypeScriptKeywords", n, [
          96,
          119,
          161
        ], [Ri], 4),
        Gn("SpaceAfterModuleName", 11, 19, [AZe], 4),
        Gn("SpaceBeforeArrow", n, 39, [Ri], 4),
        Gn("SpaceAfterArrow", 39, n, [Ri], 4),
        Gn("NoSpaceAfterEllipsis", 26, 80, [Ri], 16),
        Gn("NoSpaceAfterOptionalParameters", 58, [22, 28], [Ri, oM], 16),
        Gn("NoSpaceBetweenEmptyInterfaceBraceBrackets", 19, 20, [Ri, NZe], 16),
        Gn("NoSpaceBeforeOpenAngularBracket", D, 30, [Ri, lM], 16),
        Gn("NoSpaceBetweenCloseParenAndAngularBracket", 22, 30, [Ri, lM], 16),
        Gn("NoSpaceAfterOpenAngularBracket", 30, n, [Ri, lM], 16),
        Gn("NoSpaceBeforeCloseAngularBracket", n, 32, [Ri, lM], 16),
        Gn("NoSpaceAfterCloseAngularBracket", 32, [
          21,
          23,
          32,
          28
        ], [
          Ri,
          lM,
          mZe,
          OZe
        ], 16),
        Gn("SpaceBeforeAt", [22, 80], 60, [Ri], 4),
        Gn("NoSpaceAfterAt", 60, n, [Ri], 16),
        Gn("SpaceAfterDecorator", n, [
          128,
          80,
          95,
          90,
          86,
          126,
          125,
          123,
          124,
          139,
          153,
          23,
          42
        ], [wZe], 4),
        Gn("NoSpaceBeforeNonNullAssertionOperator", n, 54, [Ri, LZe], 16),
        Gn("NoSpaceAfterNewKeywordOnConstructorSignature", 105, 21, [Ri, IZe], 16),
        Gn("SpaceLessThanAndNonJSXTypeAnnotation", 30, 30, [Ri], 4)
      ], G = [
        Gn("SpaceAfterConstructor", 137, 21, [op("insertSpaceAfterConstructor"), Ri], 4),
        Gn("NoSpaceAfterConstructor", 137, 21, [Bm("insertSpaceAfterConstructor"), Ri], 16),
        Gn("SpaceAfterComma", 28, n, [
          op("insertSpaceAfterCommaDelimiter"),
          Ri,
          b_e,
          SZe,
          TZe
        ], 4),
        Gn("NoSpaceAfterComma", 28, n, [
          Bm("insertSpaceAfterCommaDelimiter"),
          Ri,
          b_e
        ], 16),
        Gn("SpaceAfterAnonymousFunctionKeyword", [100, 42], 21, [op("insertSpaceAfterFunctionKeywordForAnonymousFunctions"), aT], 4),
        Gn("NoSpaceAfterAnonymousFunctionKeyword", [100, 42], 21, [Bm("insertSpaceAfterFunctionKeywordForAnonymousFunctions"), aT], 16),
        Gn("SpaceAfterKeywordInControl", o, 21, [op("insertSpaceAfterKeywordsInControlFlowStatements"), cM], 4),
        Gn("NoSpaceAfterKeywordInControl", o, 21, [Bm("insertSpaceAfterKeywordsInControlFlowStatements"), cM], 16),
        Gn("SpaceAfterOpenParen", 21, n, [op("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"), Ri], 4),
        Gn("SpaceBeforeCloseParen", n, 22, [op("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"), Ri], 4),
        Gn("SpaceBetweenOpenParens", 21, 21, [op("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"), Ri], 4),
        Gn("NoSpaceBetweenParens", 21, 22, [Ri], 16),
        Gn("NoSpaceAfterOpenParen", 21, n, [Bm("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"), Ri], 16),
        Gn("NoSpaceBeforeCloseParen", n, 22, [Bm("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"), Ri], 16),
        Gn("SpaceAfterOpenBracket", 23, n, [op("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"), Ri], 4),
        Gn("SpaceBeforeCloseBracket", n, 24, [op("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"), Ri], 4),
        Gn("NoSpaceBetweenBrackets", 23, 24, [Ri], 16),
        Gn("NoSpaceAfterOpenBracket", 23, n, [Bm("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"), Ri], 16),
        Gn("NoSpaceBeforeCloseBracket", n, 24, [Bm("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"), Ri], 16),
        Gn("SpaceAfterOpenBrace", 19, n, [Dwe("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"), Pwe], 4),
        Gn("SpaceBeforeCloseBrace", n, 20, [Dwe("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"), Pwe], 4),
        Gn("NoSpaceBetweenEmptyBraceBrackets", 19, 20, [Ri, Mwe], 16),
        Gn("NoSpaceAfterOpenBrace", 19, n, [d_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"), Ri], 16),
        Gn("NoSpaceBeforeCloseBrace", n, 20, [d_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"), Ri], 16),
        Gn("SpaceBetweenEmptyBraceBrackets", 19, 20, [op("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")], 4),
        Gn("NoSpaceBetweenEmptyBraceBrackets", 19, 20, [d_e("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"), Ri], 16),
        Gn("SpaceAfterTemplateHeadAndMiddle", [16, 17], n, [op("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"), Rwe], 4, 1),
        Gn("SpaceBeforeTemplateMiddleAndTail", n, [17, 18], [op("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"), Ri], 4),
        Gn("NoSpaceAfterTemplateHeadAndMiddle", [16, 17], n, [Bm("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"), Rwe], 16, 1),
        Gn("NoSpaceBeforeTemplateMiddleAndTail", n, [17, 18], [Bm("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"), Ri], 16),
        Gn("SpaceAfterOpenBraceInJsxExpression", 19, n, [
          op("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),
          Ri,
          CH
        ], 4),
        Gn("SpaceBeforeCloseBraceInJsxExpression", n, 20, [
          op("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),
          Ri,
          CH
        ], 4),
        Gn("NoSpaceAfterOpenBraceInJsxExpression", 19, n, [
          Bm("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),
          Ri,
          CH
        ], 16),
        Gn("NoSpaceBeforeCloseBraceInJsxExpression", n, 20, [
          Bm("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),
          Ri,
          CH
        ], 16),
        Gn("SpaceAfterSemicolonInFor", 27, n, [
          op("insertSpaceAfterSemicolonInForStatements"),
          Ri,
          g_e
        ], 4),
        Gn("NoSpaceAfterSemicolonInFor", 27, n, [
          Bm("insertSpaceAfterSemicolonInForStatements"),
          Ri,
          g_e
        ], 16),
        Gn("SpaceBeforeBinaryOperator", n, c, [
          op("insertSpaceBeforeAndAfterBinaryOperators"),
          Ri,
          b1
        ], 4),
        Gn("SpaceAfterBinaryOperator", c, n, [
          op("insertSpaceBeforeAndAfterBinaryOperators"),
          Ri,
          b1
        ], 4),
        Gn("NoSpaceBeforeBinaryOperator", n, c, [
          Bm("insertSpaceBeforeAndAfterBinaryOperators"),
          Ri,
          b1
        ], 16),
        Gn("NoSpaceAfterBinaryOperator", c, n, [
          Bm("insertSpaceBeforeAndAfterBinaryOperators"),
          Ri,
          b1
        ], 16),
        Gn("SpaceBeforeOpenParenInFuncDecl", n, 21, [
          op("insertSpaceBeforeFunctionParenthesis"),
          Ri,
          aT
        ], 4),
        Gn("NoSpaceBeforeOpenParenInFuncDecl", n, 21, [
          Bm("insertSpaceBeforeFunctionParenthesis"),
          Ri,
          aT
        ], 16),
        Gn("NewLineBeforeOpenBraceInControl", M, 19, [
          op("placeOpenBraceOnNewLineForControlBlocks"),
          cM,
          v_e
        ], 8, 1),
        Gn("NewLineBeforeOpenBraceInFunction", P, 19, [
          op("placeOpenBraceOnNewLineForFunctions"),
          aT,
          v_e
        ], 8, 1),
        Gn("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock", N, 19, [
          op("placeOpenBraceOnNewLineForFunctions"),
          Fwe,
          v_e
        ], 8, 1),
        Gn("SpaceAfterTypeAssertion", 32, n, [
          op("insertSpaceAfterTypeAssertion"),
          Ri,
          T_e
        ], 4),
        Gn("NoSpaceAfterTypeAssertion", 32, n, [
          Bm("insertSpaceAfterTypeAssertion"),
          Ri,
          T_e
        ], 16),
        Gn("SpaceBeforeTypeAnnotation", n, [58, 59], [
          op("insertSpaceBeforeTypeAnnotation"),
          Ri,
          h_e
        ], 4),
        Gn("NoSpaceBeforeTypeAnnotation", n, [58, 59], [
          Bm("insertSpaceBeforeTypeAnnotation"),
          Ri,
          h_e
        ], 16),
        Gn("NoOptionalSemicolon", 27, a, [Ewe("semicolons", "remove"), RZe], 32),
        Gn("OptionalSemicolon", n, a, [Ewe("semicolons", "insert"), jZe], 64)
      ], L = [
        Gn("NoSpaceBeforeSemicolon", n, 27, [Ri], 16),
        Gn("SpaceBeforeOpenBraceInControl", M, 19, [
          m_e("placeOpenBraceOnNewLineForControlBlocks"),
          cM,
          S_e,
          y_e
        ], 4, 1),
        Gn("SpaceBeforeOpenBraceInFunction", P, 19, [
          m_e("placeOpenBraceOnNewLineForFunctions"),
          aT,
          kH,
          S_e,
          y_e
        ], 4, 1),
        Gn("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock", N, 19, [
          m_e("placeOpenBraceOnNewLineForFunctions"),
          Fwe,
          S_e,
          y_e
        ], 4, 1),
        Gn("NoSpaceBeforeComma", n, 28, [Ri], 16),
        Gn("NoSpaceBeforeOpenBracket", t(134, 84), 23, [Ri], 16),
        Gn("NoSpaceAfterCloseBracket", 24, n, [Ri, DZe], 16),
        Gn("SpaceAfterSemicolon", 27, n, [Ri], 4),
        Gn("SpaceBetweenForAndAwaitKeyword", 99, 135, [Ri], 4),
        Gn("SpaceBetweenDotDotDotAndTypeName", 26, D, [Ri], 16),
        Gn("SpaceBetweenStatements", [
          22,
          92,
          93,
          84
        ], n, [
          Ri,
          b_e,
          uZe
        ], 4),
        Gn("SpaceAfterTryCatchFinally", [
          113,
          85,
          98
        ], 19, [Ri], 4)
      ];
      return [
        ...R,
        ...G,
        ...L
      ];
    }
    function Gn(e, t, n, i, a, o = 0) {
      return {
        leftTokenRange: kwe(t),
        rightTokenRange: kwe(n),
        rule: {
          debugName: e,
          context: i,
          action: a,
          flags: o
        }
      };
    }
    function _P(e) {
      return {
        tokens: e,
        isSpecific: !0
      };
    }
    function kwe(e) {
      return typeof e == "number" ? _P([e]) : da(e) ? _P(e) : e;
    }
    function Cwe(e, t, n = []) {
      const i = [];
      for (let a = e; a <= t; a++) Gi(n, a) || i.push(a);
      return _P(i);
    }
    function Ewe(e, t) {
      return (n) => n.options && n.options[e] === t;
    }
    function op(e) {
      return (t) => t.options && po(t.options, e) && !!t.options[e];
    }
    function d_e(e) {
      return (t) => t.options && po(t.options, e) && !t.options[e];
    }
    function Bm(e) {
      return (t) => !t.options || !po(t.options, e) || !t.options[e];
    }
    function m_e(e) {
      return (t) => !t.options || !po(t.options, e) || !t.options[e] || t.TokensAreOnSameLine();
    }
    function Dwe(e) {
      return (t) => !t.options || !po(t.options, e) || !!t.options[e];
    }
    function g_e(e) {
      return e.contextNode.kind === 249;
    }
    function uZe(e) {
      return !g_e(e);
    }
    function b1(e) {
      switch (e.contextNode.kind) {
        case 227:
          return e.contextNode.operatorToken.kind !== 28;
        case 228:
        case 195:
        case 235:
        case 282:
        case 277:
        case 183:
        case 193:
        case 194:
        case 239:
          return !0;
        case 209:
        case 266:
        case 272:
        case 278:
        case 261:
        case 170:
        case 307:
        case 173:
        case 172:
          return e.currentTokenSpan.kind === 64 || e.nextTokenSpan.kind === 64;
        case 250:
        case 169:
          return e.currentTokenSpan.kind === 103 || e.nextTokenSpan.kind === 103 || e.currentTokenSpan.kind === 64 || e.nextTokenSpan.kind === 64;
        case 251:
          return e.currentTokenSpan.kind === 165 || e.nextTokenSpan.kind === 165;
      }
      return !1;
    }
    function oM(e) {
      return !b1(e);
    }
    function wwe(e) {
      return !h_e(e);
    }
    function h_e(e) {
      const t = e.contextNode.kind;
      return t === 173 || t === 172 || t === 170 || t === 261 || xx(t);
    }
    function _Ze(e) {
      return ga(e.contextNode) && e.contextNode.questionToken;
    }
    function fZe(e) {
      return !_Ze(e);
    }
    function pZe(e) {
      return e.contextNode.kind === 228 || e.contextNode.kind === 195;
    }
    function y_e(e) {
      return e.TokensAreOnSameLine() || kH(e);
    }
    function Pwe(e) {
      return e.contextNode.kind === 207 || e.contextNode.kind === 201 || dZe(e);
    }
    function v_e(e) {
      return kH(e) && !(e.NextNodeAllOnSameLine() || e.NextNodeBlockIsOnOneLine());
    }
    function Awe(e) {
      return Nwe(e) && !(e.ContextNodeAllOnSameLine() || e.ContextNodeBlockIsOnOneLine());
    }
    function dZe(e) {
      return Nwe(e) && (e.ContextNodeAllOnSameLine() || e.ContextNodeBlockIsOnOneLine());
    }
    function Nwe(e) {
      return Iwe(e.contextNode);
    }
    function kH(e) {
      return Iwe(e.nextTokenParent);
    }
    function Iwe(e) {
      if (Lwe(e)) return !0;
      switch (e.kind) {
        case 242:
        case 270:
        case 211:
        case 269:
          return !0;
      }
      return !1;
    }
    function aT(e) {
      switch (e.contextNode.kind) {
        case 263:
        case 175:
        case 174:
        case 178:
        case 179:
        case 180:
        case 219:
        case 177:
        case 220:
        case 265:
          return !0;
      }
      return !1;
    }
    function mZe(e) {
      return !aT(e);
    }
    function Owe(e) {
      return e.contextNode.kind === 263 || e.contextNode.kind === 219;
    }
    function Fwe(e) {
      return Lwe(e.contextNode);
    }
    function Lwe(e) {
      switch (e.kind) {
        case 264:
        case 232:
        case 265:
        case 267:
        case 188:
        case 268:
        case 279:
        case 280:
        case 273:
        case 276:
          return !0;
      }
      return !1;
    }
    function gZe(e) {
      switch (e.currentTokenParent.kind) {
        case 264:
        case 268:
        case 267:
        case 300:
        case 269:
        case 256:
          return !0;
        case 242: {
          const t = e.currentTokenParent.parent;
          if (!t || t.kind !== 220 && t.kind !== 219) return !0;
        }
      }
      return !1;
    }
    function cM(e) {
      switch (e.contextNode.kind) {
        case 246:
        case 256:
        case 249:
        case 250:
        case 251:
        case 248:
        case 259:
        case 247:
        case 255:
        case 300:
          return !0;
        default:
          return !1;
      }
    }
    function Mwe(e) {
      return e.contextNode.kind === 211;
    }
    function hZe(e) {
      return e.contextNode.kind === 214;
    }
    function yZe(e) {
      return e.contextNode.kind === 215;
    }
    function vZe(e) {
      return hZe(e) || yZe(e);
    }
    function bZe(e) {
      return e.currentTokenSpan.kind !== 28;
    }
    function SZe(e) {
      return e.nextTokenSpan.kind !== 24;
    }
    function TZe(e) {
      return e.nextTokenSpan.kind !== 22;
    }
    function xZe(e) {
      return e.contextNode.kind === 220;
    }
    function kZe(e) {
      return e.contextNode.kind === 206;
    }
    function Ri(e) {
      return e.TokensAreOnSameLine() && e.contextNode.kind !== 12;
    }
    function Rwe(e) {
      return e.contextNode.kind !== 12;
    }
    function b_e(e) {
      return e.contextNode.kind !== 285 && e.contextNode.kind !== 289;
    }
    function CH(e) {
      return e.contextNode.kind === 295 || e.contextNode.kind === 294;
    }
    function CZe(e) {
      return e.nextTokenParent.kind === 292 || e.nextTokenParent.kind === 296 && e.nextTokenParent.parent.kind === 292;
    }
    function jwe(e) {
      return e.contextNode.kind === 292;
    }
    function EZe(e) {
      return e.nextTokenParent.kind !== 296;
    }
    function Bwe(e) {
      return e.nextTokenParent.kind === 296;
    }
    function Jwe(e) {
      return e.contextNode.kind === 286;
    }
    function DZe(e) {
      return !aT(e) && !kH(e);
    }
    function wZe(e) {
      return e.TokensAreOnSameLine() && tp(e.contextNode) && zwe(e.currentTokenParent) && !zwe(e.nextTokenParent);
    }
    function zwe(e) {
      for (; e && dt(e); ) e = e.parent;
      return e && e.kind === 171;
    }
    function PZe(e) {
      return e.currentTokenParent.kind === 262 && e.currentTokenParent.getStart(e.sourceFile) === e.currentTokenSpan.pos;
    }
    function S_e(e) {
      return e.formattingRequestKind !== 2;
    }
    function AZe(e) {
      return e.contextNode.kind === 268;
    }
    function NZe(e) {
      return e.contextNode.kind === 188;
    }
    function IZe(e) {
      return e.contextNode.kind === 181;
    }
    function Wwe(e, t) {
      if (e.kind !== 30 && e.kind !== 32) return !1;
      switch (t.kind) {
        case 184:
        case 217:
        case 266:
        case 264:
        case 232:
        case 265:
        case 263:
        case 219:
        case 220:
        case 175:
        case 174:
        case 180:
        case 181:
        case 214:
        case 215:
        case 234:
          return !0;
        default:
          return !1;
      }
    }
    function lM(e) {
      return Wwe(e.currentTokenSpan, e.currentTokenParent) || Wwe(e.nextTokenSpan, e.nextTokenParent);
    }
    function T_e(e) {
      return e.contextNode.kind === 217;
    }
    function OZe(e) {
      return !T_e(e);
    }
    function FZe(e) {
      return e.currentTokenSpan.kind === 116 && e.currentTokenParent.kind === 223;
    }
    function Uwe(e) {
      return e.contextNode.kind === 230 && e.contextNode.expression !== void 0;
    }
    function LZe(e) {
      return e.contextNode.kind === 236;
    }
    function Vwe(e) {
      return !MZe(e);
    }
    function MZe(e) {
      switch (e.contextNode.kind) {
        case 246:
        case 249:
        case 250:
        case 251:
        case 247:
        case 248:
          return !0;
        default:
          return !1;
      }
    }
    function RZe(e) {
      let t = e.nextTokenSpan.kind, n = e.nextTokenSpan.pos;
      if (p6(t)) {
        const i = e.nextTokenParent === e.currentTokenParent ? c2(e.currentTokenParent, cr(e.currentTokenParent, (a) => !a.parent), e.sourceFile) : e.nextTokenParent.getFirstToken(e.sourceFile);
        if (!i) return !0;
        t = i.kind, n = i.getStart(e.sourceFile);
      }
      return e.sourceFile.getLineAndCharacterOfPosition(e.currentTokenSpan.pos).line === e.sourceFile.getLineAndCharacterOfPosition(n).line ? t === 20 || t === 1 : t === 27 && e.currentTokenSpan.kind === 27 ? !0 : t === 241 || t === 27 ? !1 : e.contextNode.kind === 265 || e.contextNode.kind === 266 ? !f_(e.currentTokenParent) || !!e.currentTokenParent.type || t !== 21 : ga(e.currentTokenParent) ? !e.currentTokenParent.initializer : e.currentTokenParent.kind !== 249 && e.currentTokenParent.kind !== 243 && e.currentTokenParent.kind !== 241 && t !== 23 && t !== 21 && t !== 40 && t !== 41 && t !== 44 && t !== 14 && t !== 28 && t !== 229 && t !== 16 && t !== 15 && t !== 25;
    }
    function jZe(e) {
      return uL(e.currentTokenSpan.end, e.currentTokenParent, e.sourceFile);
    }
    function BZe(e) {
      return !Ln(e.contextNode) || !V_(e.contextNode.expression) || e.contextNode.expression.getText().includes(".");
    }
    function JZe(e, t) {
      return {
        options: e,
        getRules: zZe(),
        host: t
      };
    }
    var x_e;
    function zZe() {
      return x_e === void 0 && (x_e = UZe(xwe())), x_e;
    }
    function WZe(e) {
      let t = 0;
      return e & 1 && (t |= 28), e & 2 && (t |= 96), e & 28 && (t |= 28), e & 96 && (t |= 96), t;
    }
    function UZe(e) {
      const t = VZe(e);
      return (n) => {
        const i = t[qwe(n.currentTokenSpan.kind, n.nextTokenSpan.kind)];
        if (i) {
          const a = [];
          let o = 0;
          for (const c of i) {
            const _ = ~WZe(o);
            c.action & _ && hr(c.context, (u) => u(n)) && (a.push(c), o |= c.action);
          }
          if (a.length) return a;
        }
      };
    }
    function VZe(e) {
      const t = new Array(k_e * k_e), n = new Array(t.length);
      for (const i of e) {
        const a = i.leftTokenRange.isSpecific && i.rightTokenRange.isSpecific;
        for (const o of i.leftTokenRange.tokens) for (const c of i.rightTokenRange.tokens) {
          const _ = qwe(o, c);
          let u = t[_];
          u === void 0 && (u = t[_] = []), qZe(u, i.rule, a, n, _);
        }
      }
      return t;
    }
    function qwe(e, t) {
      return E.assert(e <= 166 && t <= 166, "Must compute formatting context from tokens"), e * k_e + t;
    }
    var fP = 5, EH = 31, k_e = 167, r8 = ((e) => (e[e.StopRulesSpecific = 0] = "StopRulesSpecific", e[e.StopRulesAny = fP * 1] = "StopRulesAny", e[e.ContextRulesSpecific = fP * 2] = "ContextRulesSpecific", e[e.ContextRulesAny = fP * 3] = "ContextRulesAny", e[e.NoContextRulesSpecific = fP * 4] = "NoContextRulesSpecific", e[e.NoContextRulesAny = fP * 5] = "NoContextRulesAny", e))(r8 || {});
    function qZe(e, t, n, i, a) {
      const o = t.action & 3 ? n ? 0 : r8.StopRulesAny : t.context !== xH ? n ? r8.ContextRulesSpecific : r8.ContextRulesAny : n ? r8.NoContextRulesSpecific : r8.NoContextRulesAny, c = i[a] || 0;
      e.splice(GZe(c, o), 0, t), i[a] = HZe(c, o);
    }
    function GZe(e, t) {
      let n = 0;
      for (let i = 0; i <= t; i += fP)
        n += e & EH, e >>= fP;
      return n;
    }
    function HZe(e, t) {
      const n = (e >> t & EH) + 1;
      return E.assert((n & EH) === n, "Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."), e & ~(EH << t) | n << t;
    }
    function DH(e, t, n) {
      const i = {
        pos: e,
        end: t,
        kind: n
      };
      return E.isDebugging && Object.defineProperty(i, "__debugKind", { get: () => E.formatSyntaxKind(n) }), i;
    }
    function $Ze(e, t, n) {
      const i = t.getLineAndCharacterOfPosition(e).line;
      if (i === 0) return [];
      let a = W3(i, t);
      for (; hm(t.text.charCodeAt(a)); ) a--;
      return Uu(t.text.charCodeAt(a)) && a--, uM({
        pos: qy(i - 1, t),
        end: a + 1
      }, t, n, 2);
    }
    function XZe(e, t, n) {
      return Gwe(E_e(C_e(e, 27, t)), t, n, 3);
    }
    function QZe(e, t, n) {
      const i = C_e(e, 19, t);
      if (!i) return [];
      const a = i.parent;
      return uM({
        pos: rd(E_e(a).getStart(t), t),
        end: e
      }, t, n, 4);
    }
    function YZe(e, t, n) {
      return Gwe(E_e(C_e(e, 20, t)), t, n, 5);
    }
    function ZZe(e, t) {
      return uM({
        pos: 0,
        end: e.text.length
      }, e, t, 0);
    }
    function KZe(e, t, n, i) {
      return uM({
        pos: rd(e, n),
        end: t
      }, n, i, 1);
    }
    function C_e(e, t, n) {
      const i = Tl(e, n);
      return i && i.kind === t && e === i.getEnd() ? i : void 0;
    }
    function E_e(e) {
      let t = e;
      for (; t && t.parent && t.parent.end === e.end && !eKe(t.parent, t); ) t = t.parent;
      return t;
    }
    function eKe(e, t) {
      switch (e.kind) {
        case 264:
        case 265:
          return W_(e.members, t);
        case 268:
          const n = e.body;
          return !!n && n.kind === 269 && W_(n.statements, t);
        case 308:
        case 242:
        case 269:
          return W_(e.statements, t);
        case 300:
          return W_(e.block.statements, t);
      }
      return !1;
    }
    function tKe(e, t) {
      return n(t);
      function n(i) {
        const a = Fa(i, (o) => NJ(o.getStart(t), o.end, e) && o);
        if (a) {
          const o = n(a);
          if (o) return o;
        }
        return i;
      }
    }
    function rKe(e, t) {
      if (!e.length) return a;
      const n = e.filter((o) => Jw(t, o.start, o.start + o.length)).sort((o, c) => o.start - c.start);
      if (!n.length) return a;
      let i = 0;
      return (o) => {
        for (; ; ) {
          if (i >= n.length) return !1;
          const c = n[i];
          if (o.end <= c.start) return !1;
          if (V9(o.pos, o.end, c.start, c.start + c.length)) return !0;
          i++;
        }
      };
      function a() {
        return !1;
      }
    }
    function nKe(e, t, n) {
      const i = e.getStart(n);
      if (i === t.pos && e.end === t.end) return i;
      const a = Tl(t.pos, n);
      return !a || a.end >= t.pos ? e.pos : a.end;
    }
    function iKe(e, t, n) {
      let i = -1, a;
      for (; e; ) {
        const o = n.getLineAndCharacterOfPosition(e.getStart(n)).line;
        if (i !== -1 && o !== i) break;
        if (Jm.shouldIndentChildNode(t, e, a, n)) return t.indentSize;
        i = o, a = e, e = e.parent;
      }
      return 0;
    }
    function aKe(e, t, n, i, a, o) {
      const c = {
        pos: e.pos,
        end: e.end
      };
      return p_e(t.text, n, c.pos, c.end, (_) => Hwe(c, e, i, a, _, o, 1, (u) => !1, t));
    }
    function Gwe(e, t, n, i) {
      return e ? uM({
        pos: rd(e.getStart(t), t),
        end: e.end
      }, t, n, i) : [];
    }
    function uM(e, t, n, i) {
      const a = tKe(e, t);
      return p_e(t.text, t.languageVariant, nKe(a, e, t), e.end, (o) => Hwe(e, a, Jm.getIndentationForNode(a, e, t, n.options), iKe(a, n.options, t), o, n, i, rKe(t.parseDiagnostics, e), t));
    }
    function Hwe(e, t, n, i, a, { options: o, getRules: c, host: _ }, u, d, g) {
      var h;
      const S = new bwe(g, u, o);
      let T, k, D, P, N, M = -1;
      const R = [];
      if (a.advance(), a.isOnToken()) {
        const K = g.getLineAndCharacterOfPosition(t.getStart(g)).line;
        let ke = K;
        tp(t) && (ke = g.getLineAndCharacterOfPosition(TB(t, g)).line), pe(t, t, K, ke, n, i);
      }
      const G = a.getCurrentLeadingTrivia();
      if (G) {
        const K = Jm.nodeWillIndentChild(o, t, void 0, g, !1) ? n + o.indentSize : n;
        ie(G, K, !0, (ke) => {
          Q(ke, g.getLineAndCharacterOfPosition(ke.pos), t, t, void 0), he(ke.pos, K, !1);
        }), o.trimTrailingWhitespace !== !1 && ce(G);
      }
      if (k && a.getTokenFullStart() >= e.end) {
        const K = a.isOnEOF() ? a.readEOFTokenRange() : a.isOnToken() ? a.readTokenInfo(t).token : void 0;
        if (K && K.pos === T) {
          const ke = ((h = Tl(K.end, g, t)) == null ? void 0 : h.parent) || D;
          se(K, g.getLineAndCharacterOfPosition(K.pos).line, ke, k, P, D, ke, void 0);
        }
      }
      return R;
      function L(K, ke, ae, Ce, ue) {
        if (Jw(Ce, K, ke) || uI(Ce, K, ke)) {
          if (ue !== -1) return ue;
        } else {
          const Ie = g.getLineAndCharacterOfPosition(K).line, Xe = rd(K, g), Ft = Jm.findFirstNonWhitespaceColumn(Xe, K, g, o);
          if (Ie !== ae || K === Ft) {
            const Ut = Jm.getBaseIndentation(o);
            return Ut > Ft ? Ut : Ft;
          }
        }
        return -1;
      }
      function z(K, ke, ae, Ce, ue, Ie) {
        const Xe = Jm.shouldIndentChildNode(o, K) ? o.indentSize : 0;
        return Ie === ke ? {
          indentation: ke === N ? M : ue.getIndentation(),
          delta: Math.min(o.indentSize, ue.getDelta(K) + Xe)
        } : ae === -1 ? K.kind === 21 && ke === N ? {
          indentation: M,
          delta: ue.getDelta(K)
        } : Jm.childStartsOnTheSameLineWithElseInIfStatement(Ce, K, ke, g) || Jm.childIsUnindentedBranchOfConditionalExpression(Ce, K, ke, g) || Jm.argumentStartsOnSameLineAsPreviousArgument(Ce, K, ke, g) ? {
          indentation: ue.getIndentation(),
          delta: Xe
        } : {
          indentation: ue.getIndentation() + ue.getDelta(K),
          delta: Xe
        } : {
          indentation: ae,
          delta: Xe
        };
      }
      function H(K) {
        if (vd(K)) {
          const ke = xr(K.modifiers, hs, qs(K.modifiers, pl));
          if (ke) return ke.kind;
        }
        switch (K.kind) {
          case 264:
            return 86;
          case 265:
            return 120;
          case 263:
            return 100;
          case 267:
            return 267;
          case 178:
            return 139;
          case 179:
            return 153;
          case 175:
            if (K.asteriskToken) return 42;
          case 173:
          case 170:
            const ke = va(K);
            if (ke) return ke.kind;
        }
      }
      function U(K, ke, ae, Ce) {
        return {
          getIndentationForComment: (Xe, Ft, Ut) => {
            switch (Xe) {
              case 20:
              case 24:
              case 22:
                return ae + Ie(Ut);
            }
            return Ft !== -1 ? Ft : ae;
          },
          getIndentationForToken: (Xe, Ft, Ut, Xt) => !Xt && ue(Xe, Ft, Ut) ? ae + Ie(Ut) : ae,
          getIndentation: () => ae,
          getDelta: Ie,
          recomputeIndentation: (Xe, Ft) => {
            Jm.shouldIndentChildNode(o, Ft, K, g) && (ae += Xe ? o.indentSize : -o.indentSize, Ce = Jm.shouldIndentChildNode(o, K) ? o.indentSize : 0);
          }
        };
        function ue(Xe, Ft, Ut) {
          switch (Ft) {
            case 19:
            case 20:
            case 22:
            case 93:
            case 117:
            case 60:
              return !1;
            case 44:
            case 32:
              switch (Ut.kind) {
                case 287:
                case 288:
                case 286:
                  return !1;
              }
              break;
            case 23:
            case 24:
              if (Ut.kind !== 201) return !1;
              break;
          }
          return ke !== Xe && !(tp(K) && Ft === H(K));
        }
        function Ie(Xe) {
          return Jm.nodeWillIndentChild(o, K, Xe, g, !0) ? Ce : 0;
        }
      }
      function pe(K, ke, ae, Ce, ue, Ie) {
        if (!Jw(e, K.getStart(g), K.getEnd())) return;
        const Xe = U(K, ae, ue, Ie);
        let Ft = ke;
        for (Fa(K, (Ct) => {
          Ut(Ct, -1, K, Xe, ae, Ce, !1);
        }, (Ct) => {
          Xt(Ct, K, ae, Xe);
        }); a.isOnToken() && a.getTokenFullStart() < e.end; ) {
          const Ct = a.readTokenInfo(K);
          if (Ct.token.end > Math.min(K.end, e.end)) break;
          Ar(Ct, K, Xe, K);
        }
        function Ut(Ct, Kt, zr, _i, Gr, Nt, Li, ri) {
          if (E.assert(!wo(Ct)), Nc(Ct) || rK(zr, Ct)) return Kt;
          const Zr = Ct.getStart(g), ni = g.getLineAndCharacterOfPosition(Zr).line;
          let ra = ni;
          tp(Ct) && (ra = g.getLineAndCharacterOfPosition(TB(Ct, g)).line);
          let Me = -1;
          if (Li && W_(e, zr) && (Me = L(Zr, Ct.end, Gr, e, Kt), Me !== -1 && (Kt = Me)), !Jw(e, Ct.pos, Ct.end))
            return Ct.end < e.pos && a.skipToEndOf(Ct), Kt;
          if (Ct.getFullWidth() === 0) return Kt;
          for (; a.isOnToken() && a.getTokenFullStart() < e.end; ) {
            const Ur = a.readTokenInfo(K);
            if (Ur.token.end > e.end) return Kt;
            if (Ur.token.end > Zr) {
              Ur.token.pos > Zr && a.skipToStartOf(Ct);
              break;
            }
            Ar(Ur, K, _i, K);
          }
          if (!a.isOnToken() || a.getTokenFullStart() >= e.end) return Kt;
          if (Tx(Ct)) {
            const Ur = a.readTokenInfo(Ct);
            if (Ct.kind !== 12)
              return E.assert(Ur.token.end === Ct.end, "Token end is child end"), Ar(Ur, K, _i, Ct), Kt;
          }
          const vt = Ct.kind === 171 ? ni : Nt, tr = z(Ct, ni, Me, K, _i, vt);
          return pe(Ct, Ft, ni, ra, tr.indentation, tr.delta), Ft = K, ri && zr.kind === 210 && Kt === -1 && (Kt = tr.indentation), Kt;
        }
        function Xt(Ct, Kt, zr, _i) {
          E.assert(Cb(Ct)), E.assert(!wo(Ct));
          const Gr = sKe(Kt, Ct);
          let Nt = _i, Li = zr;
          if (!Jw(e, Ct.pos, Ct.end)) {
            Ct.end < e.pos && a.skipToEndOf(Ct);
            return;
          }
          if (Gr !== 0) for (; a.isOnToken() && a.getTokenFullStart() < e.end; ) {
            const ni = a.readTokenInfo(Kt);
            if (ni.token.end > Ct.pos) break;
            if (ni.token.kind === Gr) {
              Li = g.getLineAndCharacterOfPosition(ni.token.pos).line, Ar(ni, Kt, _i, Kt);
              let ra;
              if (M !== -1) ra = M;
              else {
                const Me = rd(ni.token.pos, g);
                ra = Jm.findFirstNonWhitespaceColumn(Me, ni.token.pos, g, o);
              }
              Nt = U(Kt, zr, ra, o.indentSize);
            } else Ar(ni, Kt, _i, Kt);
          }
          let ri = -1;
          for (let ni = 0; ni < Ct.length; ni++) {
            const ra = Ct[ni];
            ri = Ut(ra, ri, K, Nt, Li, Li, !0, ni === 0);
          }
          const Zr = oKe(Gr);
          if (Zr !== 0 && a.isOnToken() && a.getTokenFullStart() < e.end) {
            let ni = a.readTokenInfo(Kt);
            ni.token.kind === 28 && (Ar(ni, Kt, Nt, Kt), ni = a.isOnToken() ? a.readTokenInfo(Kt) : void 0), ni && ni.token.kind === Zr && W_(Kt, ni.token) && Ar(ni, Kt, Nt, Kt, !0);
          }
        }
        function Ar(Ct, Kt, zr, _i, Gr) {
          E.assert(W_(Kt, Ct.token));
          const Nt = a.lastTrailingTriviaWasNewLine();
          let Li = !1;
          Ct.leadingTrivia && W(Ct.leadingTrivia, Kt, Ft, zr);
          let ri = 0;
          const Zr = W_(e, Ct.token), ni = g.getLineAndCharacterOfPosition(Ct.token.pos);
          if (Zr) {
            const ra = d(Ct.token), Me = k;
            if (ri = Q(Ct.token, ni, Kt, Ft, zr), !ra) if (ri === 0) {
              const vt = Me && g.getLineAndCharacterOfPosition(Me.end).line;
              Li = Nt && ni.line !== vt;
            } else Li = ri === 1;
          }
          if (Ct.trailingTrivia && (T = ws(Ct.trailingTrivia).end, W(Ct.trailingTrivia, Kt, Ft, zr)), Li) {
            const ra = Zr && !d(Ct.token) ? zr.getIndentationForToken(ni.line, Ct.token.kind, _i, !!Gr) : -1;
            let Me = !0;
            if (Ct.leadingTrivia) {
              const vt = zr.getIndentationForComment(Ct.token.kind, ra, _i);
              Me = ie(Ct.leadingTrivia, vt, Me, (tr) => he(tr.pos, vt, !1));
            }
            ra !== -1 && Me && (he(Ct.token.pos, ra, ri === 1), N = ni.line, M = ra);
          }
          a.advance(), Ft = Kt;
        }
      }
      function ie(K, ke, ae, Ce) {
        for (const ue of K) {
          const Ie = W_(e, ue);
          switch (ue.kind) {
            case 3:
              Ie && $(ue, ke, !ae), ae = !1;
              break;
            case 2:
              ae && Ie && Ce(ue), ae = !1;
              break;
            case 4:
              ae = !0;
              break;
          }
        }
        return ae;
      }
      function W(K, ke, ae, Ce) {
        for (const ue of K) Y9(ue.kind) && W_(e, ue) && Q(ue, g.getLineAndCharacterOfPosition(ue.pos), ke, ae, Ce);
      }
      function Q(K, ke, ae, Ce, ue) {
        const Ie = d(K);
        let Xe = 0;
        return Ie || (k ? Xe = se(K, ke.line, ae, k, P, D, Ce, ue) : Se(g.getLineAndCharacterOfPosition(e.pos).line, ke.line)), k = K, T = K.end, D = ae, P = ke.line, Xe;
      }
      function se(K, ke, ae, Ce, ue, Ie, Xe, Ft) {
        S.updateContext(Ce, Ie, K, ae, Xe);
        const Ut = c(S);
        let Xt = S.options.trimTrailingWhitespace !== !1, Ar = 0;
        return Ut ? la(Ut, (Ct) => {
          if (Ar = ot(Ct, Ce, ue, K, ke), Ft) switch (Ar) {
            case 2:
              ae.getStart(g) === K.pos && Ft.recomputeIndentation(!1, Xe);
              break;
            case 1:
              ae.getStart(g) === K.pos && Ft.recomputeIndentation(!0, Xe);
              break;
            default:
              E.assert(Ar === 0);
          }
          Xt = Xt && !(Ct.action & 16) && Ct.flags !== 1;
        }) : Xt = Xt && K.kind !== 1, ke !== ue && Xt && Se(ue, ke, Ce), Ar;
      }
      function he(K, ke, ae) {
        const Ce = D_e(ke, o);
        if (ae) Ae(K, 0, Ce);
        else {
          const ue = g.getLineAndCharacterOfPosition(K), Ie = qy(ue.line, g);
          (ke !== fe(Ie, ue.character) || de(Ce, Ie)) && Ae(Ie, ue.character, Ce);
        }
      }
      function fe(K, ke) {
        let ae = 0;
        for (let Ce = 0; Ce < ke; Ce++) g.text.charCodeAt(K + Ce) === 9 ? ae += o.tabSize - ae % o.tabSize : ae++;
        return ae;
      }
      function de(K, ke) {
        return K !== g.text.substr(ke, K.length);
      }
      function $(K, ke, ae, Ce = !0) {
        let ue = g.getLineAndCharacterOfPosition(K.pos).line;
        const Ie = g.getLineAndCharacterOfPosition(K.end).line;
        if (ue === Ie) {
          ae || he(K.pos, ke, !1);
          return;
        }
        const Xe = [];
        let Ft = K.pos;
        for (let Kt = ue; Kt < Ie; Kt++) {
          const zr = W3(Kt, g);
          Xe.push({
            pos: Ft,
            end: zr
          }), Ft = qy(Kt + 1, g);
        }
        if (Ce && Xe.push({
          pos: Ft,
          end: K.end
        }), Xe.length === 0) return;
        const Ut = qy(ue, g), Xt = Jm.findFirstNonWhitespaceCharacterAndColumn(Ut, Xe[0].pos, g, o);
        let Ar = 0;
        ae && (Ar = 1, ue++);
        const Ct = ke - Xt.column;
        for (let Kt = Ar; Kt < Xe.length; Kt++, ue++) {
          const zr = qy(ue, g), _i = Kt === 0 ? Xt : Jm.findFirstNonWhitespaceCharacterAndColumn(Xe[Kt].pos, Xe[Kt].end, g, o), Gr = _i.column + Ct;
          if (Gr > 0) {
            const Nt = D_e(Gr, o);
            Ae(zr, _i.character, Nt);
          } else ge(zr, _i.character);
        }
      }
      function Se(K, ke, ae) {
        for (let Ce = K; Ce < ke; Ce++) {
          const ue = qy(Ce, g), Ie = W3(Ce, g);
          if (ae && (Y9(ae.kind) || QV(ae.kind)) && ae.pos <= Ie && ae.end > Ie) continue;
          const Xe = Be(ue, Ie);
          Xe !== -1 && (E.assert(Xe === ue || !hm(g.text.charCodeAt(Xe - 1))), ge(Xe, Ie + 1 - Xe));
        }
      }
      function Be(K, ke) {
        let ae = ke;
        for (; ae >= K && hm(g.text.charCodeAt(ae)); ) ae--;
        return ae !== ke ? ae + 1 : -1;
      }
      function ce(K) {
        let ke = k ? k.end : e.pos;
        for (const ae of K) Y9(ae.kind) && (ke < ae.pos && oe(ke, ae.pos - 1, k), ke = ae.end + 1);
        ke < e.end && oe(ke, e.end, k);
      }
      function oe(K, ke, ae) {
        const Ce = g.getLineAndCharacterOfPosition(K).line, ue = g.getLineAndCharacterOfPosition(ke).line;
        Se(Ce, ue + 1, ae);
      }
      function ge(K, ke) {
        ke && R.push(K9(K, ke, ""));
      }
      function Ae(K, ke, ae) {
        (ke || ae) && R.push(K9(K, ke, ae));
      }
      function Ne(K, ke) {
        ke && R.push(K9(K, 0, ke));
      }
      function ot(K, ke, ae, Ce, ue) {
        const Ie = ue !== ae;
        switch (K.action) {
          case 1:
            return 0;
          case 16:
            if (ke.end !== Ce.pos)
              return ge(ke.end, Ce.pos - ke.end), Ie ? 2 : 0;
            break;
          case 32:
            ge(ke.pos, ke.end - ke.pos);
            break;
          case 8:
            if (K.flags !== 1 && ae !== ue) return 0;
            if (ue - ae !== 1)
              return Ae(ke.end, Ce.pos - ke.end, Xh(_, o)), Ie ? 0 : 1;
            break;
          case 4:
            if (K.flags !== 1 && ae !== ue) return 0;
            if (Ce.pos - ke.end !== 1 || g.text.charCodeAt(ke.end) !== 32)
              return Ae(ke.end, Ce.pos - ke.end, " "), Ie ? 2 : 0;
            break;
          case 64:
            Ne(ke.end, ";");
        }
        return 0;
      }
    }
    function $we(e, t, n, i = xi(e, t)) {
      const a = cr(i, Hd);
      if (a && (i = a.parent), i.getStart(e) <= t && t < i.getEnd()) return;
      n = n === null ? void 0 : n === void 0 ? Tl(t, e) : n;
      const o = zi(n && Ly(e.text, n.end), LB(i, e));
      return o && xr(o, (c) => lI(c, t) || t === c.end && (c.kind === 2 || t === e.getFullWidth()));
    }
    function sKe(e, t) {
      switch (e.kind) {
        case 177:
        case 263:
        case 219:
        case 175:
        case 174:
        case 220:
        case 180:
        case 181:
        case 185:
        case 186:
        case 178:
        case 179:
          if (e.typeParameters === t) return 30;
          if (e.parameters === t) return 21;
          break;
        case 214:
        case 215:
          if (e.typeArguments === t) return 30;
          if (e.arguments === t) return 21;
          break;
        case 264:
        case 232:
        case 265:
        case 266:
          if (e.typeParameters === t) return 30;
          break;
        case 184:
        case 216:
        case 187:
        case 234:
        case 206:
          if (e.typeArguments === t) return 30;
          break;
        case 188:
          return 19;
      }
      return 0;
    }
    function oKe(e) {
      switch (e) {
        case 21:
          return 22;
        case 30:
          return 32;
        case 19:
          return 20;
      }
      return 0;
    }
    var wH, n8, i8;
    function D_e(e, t) {
      if ((!wH || wH.tabSize !== t.tabSize || wH.indentSize !== t.indentSize) && (wH = {
        tabSize: t.tabSize,
        indentSize: t.indentSize
      }, n8 = i8 = void 0), t.convertTabsToSpaces) {
        let n;
        const i = Math.floor(e / t.indentSize), a = e % t.indentSize;
        return i8 || (i8 = []), i8[i] === void 0 ? (n = dI(" ", t.indentSize * i), i8[i] = n) : n = i8[i], a ? n + dI(" ", a) : n;
      } else {
        const n = Math.floor(e / t.tabSize), i = e - n * t.tabSize;
        let a;
        return n8 || (n8 = []), n8[n] === void 0 ? n8[n] = a = dI("	", n) : a = n8[n], i ? a + dI(" ", i) : a;
      }
    }
    var Jm;
    ((e) => {
      let t;
      (($) => {
        $[$.Unknown = -1] = "Unknown";
      })(t || (t = {}));
      function n($, Se, Be, ce = !1) {
        if ($ > Se.text.length) return _(Be);
        if (Be.indentStyle === 0) return 0;
        const oe = Tl($, Se, void 0, !0), ge = $we(Se, $, oe || null);
        if (ge && ge.kind === 3) return i(Se, $, Be, ge);
        if (!oe) return _(Be);
        if (QV(oe.kind) && oe.getStart(Se) <= $ && $ < oe.end) return 0;
        const Ae = Se.getLineAndCharacterOfPosition($).line, Ne = xi(Se, $), ot = Ne.kind === 19 && Ne.parent.kind === 211;
        if (Be.indentStyle === 1 || ot) return a(Se, $, Be);
        if (oe.kind === 28 && oe.parent.kind !== 227) {
          const ke = g(oe, Se, Be);
          if (ke !== -1) return ke;
        }
        const K = G($, oe.parent, Se);
        if (K && !W_(K, oe)) {
          const ke = [219, 220].includes(Ne.parent.kind) ? 0 : Be.indentSize;
          return H(K, Se, Be) + ke;
        }
        return o(Se, $, oe, Ae, ce, Be);
      }
      e.getIndentation = n;
      function i($, Se, Be, ce) {
        const oe = Za($, Se).line - 1, ge = Za($, ce.pos).line;
        if (E.assert(ge >= 0), oe <= ge) return Q(qy(ge, $), Se, $, Be);
        const Ae = qy(oe, $), { column: Ne, character: ot } = W(Ae, Se, $, Be);
        return Ne === 0 ? Ne : $.text.charCodeAt(Ae + ot) === 42 ? Ne - 1 : Ne;
      }
      function a($, Se, Be) {
        let ce = Se;
        for (; ce > 0 && Rg($.text.charCodeAt(ce)); )
          ce--;
        return Q(rd(ce, $), ce, $, Be);
      }
      function o($, Se, Be, ce, oe, ge) {
        let Ae, Ne = Be;
        for (; Ne; ) {
          if (UV(Ne, Se, $) && fe(ge, Ne, Ae, $, !0)) {
            const K = k(Ne, $), ke = T(Be, Ne, ce, $), ae = ke !== 0 ? oe && ke === 2 ? ge.indentSize : 0 : ce !== K.line ? ge.indentSize : 0;
            return u(Ne, K, void 0, ae, $, !0, ge);
          }
          const ot = U(Ne, $, ge, !0);
          if (ot !== -1) return ot;
          Ae = Ne, Ne = Ne.parent;
        }
        return _(ge);
      }
      function c($, Se, Be, ce) {
        return u($, Be.getLineAndCharacterOfPosition($.getStart(Be)), Se, 0, Be, !1, ce);
      }
      e.getIndentationForNode = c;
      function _($) {
        return $.baseIndentSize || 0;
      }
      e.getBaseIndentation = _;
      function u($, Se, Be, ce, oe, ge, Ae) {
        var Ne;
        let ot = $.parent;
        for (; ot; ) {
          let K = !0;
          if (Be) {
            const ue = $.getStart(oe);
            K = ue < Be.pos || ue > Be.end;
          }
          const ke = d(ot, $, oe), ae = ke.line === Se.line || P(ot, $, Se.line, oe);
          if (K) {
            const ue = (Ne = R($, oe)) == null ? void 0 : Ne[0], Ie = !!ue && k(ue, oe).line > ke.line;
            let Xe = U($, oe, Ae, Ie);
            if (Xe !== -1 || (Xe = h($, ot, Se, ae, oe, Ae), Xe !== -1)) return Xe + ce;
          }
          fe(Ae, ot, $, oe, ge) && !ae && (ce += Ae.indentSize);
          const Ce = D(ot, $, Se.line, oe);
          $ = ot, ot = $.parent, Se = Ce ? oe.getLineAndCharacterOfPosition($.getStart(oe)) : ke;
        }
        return ce + _(Ae);
      }
      function d($, Se, Be) {
        const ce = R(Se, Be), oe = ce ? ce.pos : $.getStart(Be);
        return Be.getLineAndCharacterOfPosition(oe);
      }
      function g($, Se, Be) {
        const ce = ose($);
        return ce && ce.listItemIndex > 0 ? pe(ce.list.getChildren(), ce.listItemIndex - 1, Se, Be) : -1;
      }
      function h($, Se, Be, ce, oe, ge) {
        return (Jl($) || r5($)) && (Se.kind === 308 || !ce) ? ie(Be, oe, ge) : -1;
      }
      let S;
      (($) => {
        $[$.Unknown = 0] = "Unknown", $[$.OpenBrace = 1] = "OpenBrace", $[$.CloseBrace = 2] = "CloseBrace";
      })(S || (S = {}));
      function T($, Se, Be, ce) {
        const oe = c2($, Se, ce);
        return oe ? oe.kind === 19 ? 1 : oe.kind === 20 && Be === k(oe, ce).line ? 2 : 0 : 0;
      }
      function k($, Se) {
        return Se.getLineAndCharacterOfPosition($.getStart(Se));
      }
      function D($, Se, Be, ce) {
        return za($) && Gi($.arguments, Se) ? Za(ce, $.expression.getEnd()).line === Be : !1;
      }
      e.isArgumentAndStartLineOverlapsExpressionBeingCalled = D;
      function P($, Se, Be, ce) {
        if ($.kind === 246 && $.elseStatement === Se) {
          const oe = uo($, 93, ce);
          return E.assert(oe !== void 0), k(oe, ce).line === Be;
        }
        return !1;
      }
      e.childStartsOnTheSameLineWithElseInIfStatement = P;
      function N($, Se, Be, ce) {
        if (MS($) && (Se === $.whenTrue || Se === $.whenFalse)) {
          const oe = Za(ce, $.condition.end).line;
          if (Se === $.whenTrue) return Be === oe;
          {
            const ge = k($.whenTrue, ce).line, Ae = Za(ce, $.whenTrue.end).line;
            return oe === ge && Ae === Be;
          }
        }
        return !1;
      }
      e.childIsUnindentedBranchOfConditionalExpression = N;
      function M($, Se, Be, ce) {
        if (ym($)) {
          if (!$.arguments) return !1;
          const oe = xr($.arguments, (Ne) => Ne.pos === Se.pos);
          if (!oe) return !1;
          const ge = $.arguments.indexOf(oe);
          if (ge === 0) return !1;
          const Ae = $.arguments[ge - 1];
          if (Be === Za(ce, Ae.getEnd()).line) return !0;
        }
        return !1;
      }
      e.argumentStartsOnSameLineAsPreviousArgument = M;
      function R($, Se) {
        return $.parent && L($.getStart(Se), $.getEnd(), $.parent, Se);
      }
      e.getContainingList = R;
      function G($, Se, Be) {
        return Se && L($, $, Se, Be);
      }
      function L($, Se, Be, ce) {
        switch (Be.kind) {
          case 184:
            return oe(Be.typeArguments);
          case 211:
            return oe(Be.properties);
          case 210:
            return oe(Be.elements);
          case 188:
            return oe(Be.members);
          case 263:
          case 219:
          case 220:
          case 175:
          case 174:
          case 180:
          case 177:
          case 186:
          case 181:
            return oe(Be.typeParameters) || oe(Be.parameters);
          case 178:
            return oe(Be.parameters);
          case 264:
          case 232:
          case 265:
          case 266:
          case 346:
            return oe(Be.typeParameters);
          case 215:
          case 214:
            return oe(Be.typeArguments) || oe(Be.arguments);
          case 262:
            return oe(Be.declarations);
          case 276:
          case 280:
            return oe(Be.elements);
          case 207:
          case 208:
            return oe(Be.elements);
        }
        function oe(ge) {
          return ge && uI(z(Be, ge, ce), $, Se) ? ge : void 0;
        }
      }
      function z($, Se, Be) {
        const ce = $.getChildren(Be);
        for (let oe = 1; oe < ce.length - 1; oe++) if (ce[oe].pos === Se.pos && ce[oe].end === Se.end) return {
          pos: ce[oe - 1].end,
          end: ce[oe + 1].getStart(Be)
        };
        return Se;
      }
      function H($, Se, Be) {
        return $ ? ie(Se.getLineAndCharacterOfPosition($.pos), Se, Be) : -1;
      }
      function U($, Se, Be, ce) {
        if ($.parent && $.parent.kind === 262) return -1;
        const oe = R($, Se);
        if (oe) {
          const ge = oe.indexOf($);
          if (ge !== -1) {
            const Ae = pe(oe, ge, Se, Be);
            if (Ae !== -1) return Ae;
          }
          return H(oe, Se, Be) + (ce ? Be.indentSize : 0);
        }
        return -1;
      }
      function pe($, Se, Be, ce) {
        E.assert(Se >= 0 && Se < $.length);
        const oe = $[Se];
        let ge = k(oe, Be);
        for (let Ae = Se - 1; Ae >= 0; Ae--)
          if ($[Ae].kind !== 28) {
            if (Be.getLineAndCharacterOfPosition($[Ae].end).line !== ge.line) return ie(ge, Be, ce);
            ge = k($[Ae], Be);
          }
        return -1;
      }
      function ie($, Se, Be) {
        const ce = Se.getPositionOfLineAndCharacter($.line, 0);
        return Q(ce, ce + $.character, Se, Be);
      }
      function W($, Se, Be, ce) {
        let oe = 0, ge = 0;
        for (let Ae = $; Ae < Se; Ae++) {
          const Ne = Be.text.charCodeAt(Ae);
          if (!hm(Ne)) break;
          Ne === 9 ? ge += ce.tabSize + ge % ce.tabSize : ge++, oe++;
        }
        return {
          column: ge,
          character: oe
        };
      }
      e.findFirstNonWhitespaceCharacterAndColumn = W;
      function Q($, Se, Be, ce) {
        return W($, Se, Be, ce).column;
      }
      e.findFirstNonWhitespaceColumn = Q;
      function se($, Se, Be, ce, oe) {
        const ge = Be ? Be.kind : 0;
        switch (Se.kind) {
          case 245:
          case 264:
          case 232:
          case 265:
          case 267:
          case 266:
          case 210:
          case 242:
          case 269:
          case 211:
          case 188:
          case 201:
          case 190:
          case 218:
          case 212:
          case 214:
          case 215:
          case 244:
          case 278:
          case 254:
          case 228:
          case 208:
          case 207:
          case 287:
          case 290:
          case 286:
          case 295:
          case 174:
          case 180:
          case 181:
          case 170:
          case 185:
          case 186:
          case 197:
          case 216:
          case 224:
          case 280:
          case 276:
          case 282:
          case 277:
          case 173:
          case 297:
          case 298:
            return !0;
          case 270:
            return $.indentSwitchCase ?? !0;
          case 261:
          case 304:
          case 227:
            if (!$.indentMultiLineObjectLiteralBeginningOnBlankLine && ce && ge === 211) return de(ce, Be);
            if (Se.kind === 227 && ce && Be && ge === 285) return ce.getLineAndCharacterOfPosition(gs(ce.text, Se.pos)).line !== ce.getLineAndCharacterOfPosition(gs(ce.text, Be.pos)).line;
            if (Se.kind !== 227) return !0;
            break;
          case 247:
          case 248:
          case 250:
          case 251:
          case 249:
          case 246:
          case 263:
          case 219:
          case 175:
          case 177:
          case 178:
          case 179:
            return ge !== 242;
          case 220:
            return ce && ge === 218 ? de(ce, Be) : ge !== 242;
          case 279:
            return ge !== 280;
          case 273:
            return ge !== 274 || !!Be.namedBindings && Be.namedBindings.kind !== 276;
          case 285:
            return ge !== 288;
          case 289:
            return ge !== 291;
          case 194:
          case 193:
          case 239:
            if (ge === 188 || ge === 190 || ge === 201) return !1;
            break;
          case 259:
            if (ge === 242) return !1;
            break;
        }
        return oe;
      }
      e.nodeWillIndentChild = se;
      function he($, Se) {
        switch ($) {
          case 254:
          case 258:
          case 252:
          case 253:
            return Se.kind !== 242;
          default:
            return !1;
        }
      }
      function fe($, Se, Be, ce, oe = !1) {
        return se($, Se, Be, ce, !1) && !(oe && Be && he(Be.kind, Se));
      }
      e.shouldIndentChildNode = fe;
      function de($, Se) {
        const Be = gs($.text, Se.pos);
        return $.getLineAndCharacterOfPosition(Be).line === $.getLineAndCharacterOfPosition(Se.end).line;
      }
    })(Jm || (Jm = {}));
    var PH = {};
    gi(PH, { preparePasteEdits: () => cKe });
    function cKe(e, t, n) {
      let i = !1;
      return t.forEach((a) => {
        const o = cr(xi(e, a.pos), (c) => W_(c, a));
        o && Fa(o, function c(_) {
          var u;
          if (!i) {
            if (Fe(_) && cE(a, _.getStart(e))) {
              const d = n.resolveName(_.text, _, -1, !1);
              if (d && d.declarations) {
                for (const g of d.declarations) if (oG(g) || _.text && e.symbol && ((u = e.symbol.exports) != null && u.has(_.escapedText))) {
                  i = !0;
                  return;
                }
              }
            }
            _.forEachChild(c);
          }
        });
      }), i;
    }
    var AH = {};
    gi(AH, { pasteEditsProvider: () => uKe });
    var lKe = "providePostPasteEdits";
    function uKe(e, t, n, i, a, o, c, _) {
      return {
        edits: on.ChangeTracker.with({
          host: a,
          formatContext: c,
          preferences: o
        }, (u) => _Ke(e, t, n, i, a, o, c, _, u)),
        fixId: lKe
      };
    }
    function _Ke(e, t, n, i, a, o, c, _, u) {
      let d;
      t.length !== n.length && (d = t.length === 1 ? t[0] : t.join(Xh(c.host, c.options)));
      const g = [];
      let h = e.text;
      for (let T = n.length - 1; T >= 0; T--) {
        const { pos: k, end: D } = n[T];
        h = d ? h.slice(0, k) + d + h.slice(D) : h.slice(0, k) + t[T] + h.slice(D);
      }
      let S;
      E.checkDefined(a.runWithTemporaryFileUpdate).call(a, e.fileName, h, (T, k, D) => {
        if (S = Zu.createImportAdder(D, T, o, a), i?.range) {
          E.assert(i.range.length === t.length), i.range.forEach((G) => {
            const L = i.file.statements, z = qs(L, (U) => U.end > G.pos);
            if (z === -1) return;
            let H = qs(L, (U) => U.end >= G.end, z);
            H !== -1 && G.end <= L[H].getStart() && H--, g.push(...L.slice(z, H === -1 ? L.length : H + 1));
          }), E.assertIsDefined(k, "no original program found");
          const P = k.getTypeChecker(), N = fKe(i), M = DL(i.file, g, P, Voe(D, g, P), N), R = !Iq(e.fileName, k, a, !!i.file.commonJsModuleIndicator);
          Moe(i.file, M.targetFileImportsFromOldFile, u, R), Goe(i.file, M.oldImportsNeededByTargetFile, M.targetFileImportsFromOldFile, P, T, S);
        } else {
          const P = {
            sourceFile: D,
            program: k,
            cancellationToken: _,
            host: a,
            preferences: o,
            formatContext: c
          };
          let N = 0;
          n.forEach((M, R) => {
            const G = M.end - M.pos, L = d ?? t[R], z = M.pos + N, H = {
              pos: z,
              end: z + L.length
            };
            N += L.length - G;
            const U = cr(xi(P.sourceFile, H.pos), (pe) => W_(pe, H));
            U && Fa(U, function pe(ie) {
              if (Fe(ie) && cE(H, ie.getStart(D)) && !T?.getTypeChecker().resolveName(ie.text, ie, -1, !1)) return S.addImportForUnresolvedIdentifier(P, ie, !0);
              ie.forEachChild(pe);
            });
          });
        }
        S.writeFixes(u, Df(i ? i.file : e, o));
      }), S.hasFixes() && n.forEach((T, k) => {
        u.replaceRangeWithText(e, {
          pos: T.pos,
          end: T.end
        }, d ?? t[k]);
      });
    }
    function fKe({ file: e, range: t }) {
      const n = t[0].pos, i = t[t.length - 1].end, a = xi(e, n), o = zw(e, n) ?? xi(e, i);
      return {
        pos: Fe(a) && n <= a.getStart(e) ? a.getFullStart() : n,
        end: Fe(o) && i === o.getEnd() ? on.getAdjustedEndPosition(e, o, {}) : i
      };
    }
    var Xwe = {};
    gi(Xwe, {
      ANONYMOUS: () => Tq,
      AccessFlags: () => oY,
      AssertionLevel: () => hQ,
      AssignmentDeclarationKind: () => gY,
      AssignmentKind: () => WK,
      Associativity: () => XK,
      BreakpointResolver: () => SG,
      BuilderFileEmit: () => Uie,
      BuilderProgramKind: () => Yie,
      BuilderState: () => Qd,
      CallHierarchy: () => Bk,
      CharacterCodes: () => DY,
      CheckFlags: () => nY,
      CheckMode: () => GW,
      ClassificationType: () => OV,
      ClassificationTypeNames: () => Kae,
      CommentDirectiveType: () => WQ,
      Comparison: () => In,
      CompletionInfoFlags: () => Gae,
      CompletionTriggerKind: () => NV,
      Completions: () => Vk,
      ContainerFlags: () => kne,
      ContextFlags: () => XQ,
      Debug: () => E,
      DiagnosticCategory: () => w7,
      Diagnostics: () => p,
      DocumentHighlights: () => xL,
      ElementFlags: () => sY,
      EmitFlags: () => Dj,
      EmitHint: () => NY,
      EmitOnly: () => VQ,
      EndOfLineState: () => Xae,
      ExitStatus: () => qQ,
      ExportKind: () => Use,
      Extension: () => wY,
      ExternalEmitHelpers: () => AY,
      FileIncludeKind: () => hj,
      FilePreprocessingDiagnosticsKind: () => UQ,
      FileSystemEntryKind: () => JY,
      FileWatcherEventKind: () => RY,
      FindAllReferences: () => Jo,
      FlattenLevel: () => qne,
      FlowFlags: () => D7,
      ForegroundColorEscapeSequences: () => Oie,
      FunctionFlags: () => $K,
      GeneratedIdentifierFlags: () => gj,
      GetLiteralTextFlags: () => iK,
      GoToDefinition: () => TE,
      HighlightSpanKind: () => Vae,
      IdentifierNameMap: () => Z6,
      ImportKind: () => Wse,
      ImportsNotUsedAsValues: () => TY,
      IndentStyle: () => qae,
      IndexFlags: () => cY,
      IndexKind: () => _Y,
      InferenceFlags: () => dY,
      InferencePriority: () => pY,
      InlayHintKind: () => Uae,
      InlayHints: () => _H,
      InternalEmitFlags: () => PY,
      InternalNodeBuilderFlags: () => YQ,
      InternalSymbolName: () => iY,
      IntersectionFlags: () => $Q,
      InvalidatedProjectKind: () => bae,
      JSDocParsingMode: () => MY,
      JsDoc: () => qv,
      JsTyping: () => oh,
      JsxEmit: () => SY,
      JsxFlags: () => jQ,
      JsxReferenceKind: () => lY,
      LanguageFeatureMinimumTarget: () => Rl,
      LanguageServiceMode: () => zae,
      LanguageVariant: () => CY,
      LexicalEnvironmentFlags: () => OY,
      ListFormat: () => FY,
      LogLevel: () => DQ,
      MapCode: () => fH,
      MemberOverrideStatus: () => GQ,
      ModifierFlags: () => dj,
      ModuleDetectionKind: () => hY,
      ModuleInstanceState: () => Tne,
      ModuleKind: () => mx,
      ModuleResolutionKind: () => WC,
      ModuleSpecifierEnding: () => Uee,
      NavigateTo: () => poe,
      NavigationBar: () => moe,
      NewLineKind: () => xY,
      NodeBuilderFlags: () => QQ,
      NodeCheckFlags: () => bj,
      NodeFactoryFlags: () => Tte,
      NodeFlags: () => pj,
      NodeResolutionFeatures: () => fne,
      ObjectFlags: () => Tj,
      OperationCanceledException: () => N4,
      OperatorPrecedence: () => QK,
      OrganizeImports: () => Gv,
      OrganizeImportsMode: () => AV,
      OuterExpressionKinds: () => IY,
      OutliningElementsCollector: () => dH,
      OutliningSpanKind: () => Hae,
      OutputFileType: () => $ae,
      PackageJsonAutoImportPreference: () => Jae,
      PackageJsonDependencyGroup: () => Bae,
      PatternMatchKind: () => zq,
      PollingInterval: () => wj,
      PollingWatchKind: () => bY,
      PragmaKindFlags: () => LY,
      PredicateSemantics: () => BQ,
      PreparePasteEdits: () => PH,
      PrivateIdentifierKind: () => Ite,
      ProcessLevel: () => Xne,
      ProgramUpdateLevel: () => Pie,
      QuotePreference: () => Sse,
      RegularExpressionFlags: () => JQ,
      RelationComparisonResult: () => mj,
      Rename: () => aM,
      ScriptElementKind: () => Yae,
      ScriptElementKindModifier: () => Zae,
      ScriptKind: () => kj,
      ScriptSnapshot: () => L9,
      ScriptTarget: () => kY,
      SemanticClassificationFormat: () => Wae,
      SemanticMeaning: () => ese,
      SemicolonPreference: () => IV,
      SignatureCheckMode: () => HW,
      SignatureFlags: () => xj,
      SignatureHelp: () => QI,
      SignatureInfo: () => Wie,
      SignatureKind: () => uY,
      SmartSelectionRange: () => hH,
      SnippetKind: () => Ej,
      StatisticType: () => Pae,
      StructureIsReused: () => yj,
      SymbolAccessibility: () => eY,
      SymbolDisplay: () => H0,
      SymbolDisplayPartKind: () => R9,
      SymbolFlags: () => vj,
      SymbolFormatFlags: () => KQ,
      SyntaxKind: () => fj,
      Ternary: () => mY,
      ThrottledCancellationToken: () => xce,
      TokenClass: () => Qae,
      TokenFlags: () => zQ,
      TransformFlags: () => Cj,
      TypeFacts: () => VW,
      TypeFlags: () => Sj,
      TypeFormatFlags: () => ZQ,
      TypeMapKind: () => fY,
      TypePredicateKind: () => tY,
      TypeReferenceSerializationKind: () => rY,
      UnionReduction: () => HQ,
      UpToDateStatusType: () => pae,
      VarianceFlags: () => aY,
      Version: () => Ld,
      VersionRange: () => E7,
      WatchDirectoryFlags: () => EY,
      WatchDirectoryKind: () => vY,
      WatchFileKind: () => yY,
      WatchLogLevel: () => Nie,
      WatchType: () => Xl,
      accessPrivateIdentifier: () => Vne,
      addEmitFlags: () => wm,
      addEmitHelper: () => ak,
      addEmitHelpers: () => th,
      addInternalEmitFlags: () => AS,
      addNodeFactoryPatcher: () => f0e,
      addObjectAllocatorPatcher: () => Qhe,
      addRange: () => Mn,
      addRelatedInfo: () => ts,
      addSyntheticLeadingComment: () => i1,
      addSyntheticTrailingComment: () => QD,
      addToSeen: () => Yp,
      advancedAsyncSuperHelper: () => qO,
      affectsDeclarationPathOptionDeclarations: () => Rre,
      affectsEmitOptionDeclarations: () => Mre,
      allKeysStartWithDot: () => JF,
      altDirectorySeparator: () => I7,
      and: () => x7,
      append: () => kr,
      appendIfUnique: () => Lh,
      arrayFrom: () => ma,
      arrayIsEqualTo: () => jf,
      arrayIsHomogeneous: () => Zee,
      arrayOf: () => pQ,
      arrayReverseIterator: () => qR,
      arrayToMap: () => jC,
      arrayToMultiMap: () => o3,
      arrayToNumericMap: () => mQ,
      assertType: () => Dge,
      assign: () => rS,
      asyncSuperHelper: () => VO,
      attachFileToDiagnostics: () => Xx,
      base64decode: () => hee,
      base64encode: () => gee,
      binarySearch: () => Lg,
      binarySearchKey: () => ux,
      bindSourceFile: () => Cne,
      breakIntoCharacterSpans: () => aoe,
      breakIntoWordSpans: () => soe,
      buildLinkParts: () => Pse,
      buildOpts: () => TN,
      buildOverload: () => Zwe,
      bundlerModuleNameResolver: () => pne,
      canBeConvertedToAsync: () => Hq,
      canHaveDecorators: () => e2,
      canHaveExportModifier: () => GA,
      canHaveFlowNode: () => Bx,
      canHaveIllegalDecorators: () => tW,
      canHaveIllegalModifiers: () => hre,
      canHaveIllegalType: () => j0e,
      canHaveIllegalTypeParameters: () => gre,
      canHaveJSDoc: () => dA,
      canHaveLocals: () => og,
      canHaveModifiers: () => vd,
      canHaveModuleSpecifier: () => jK,
      canHaveStatements: () => gte,
      canHaveSymbol: () => jd,
      canIncludeBindAndCheckDiagnostics: () => BD,
      canJsonReportNoInputFiles: () => wN,
      canProduceDiagnostics: () => jN,
      canUsePropertyAccess: () => az,
      canWatchAffectingLocation: () => aae,
      canWatchAtTypes: () => iae,
      canWatchDirectoryOrFile: () => HU,
      canWatchDirectoryOrFilePath: () => Lw,
      cartesianProduct: () => CQ,
      cast: () => ns,
      chainBundle: () => Xd,
      chainDiagnosticMessages: () => ba,
      changeAnyExtension: () => m3,
      changeCompilerHostLikeToUseCache: () => Nw,
      changeExtension: () => F0,
      changeFullExtension: () => L7,
      changesAffectModuleResolution: () => o5,
      changesAffectingProgramStructure: () => YZ,
      characterCodeToRegularExpressionFlag: () => Bj,
      childIsDecorated: () => aD,
      classElementOrClassElementParameterIsDecorated: () => JB,
      classHasClassThisAssignment: () => oU,
      classHasDeclaredOrExplicitlyAssignedName: () => cU,
      classHasExplicitlyAssignedName: () => e9,
      classOrConstructorParameterIsDecorated: () => w0,
      classicNameResolver: () => bne,
      classifier: () => Dce,
      cleanExtendedConfigCache: () => s9,
      clear: () => Yf,
      clearMap: () => K_,
      clearSharedExtendedConfigFileWatcher: () => SU,
      climbPastPropertyAccess: () => J9,
      clone: () => gQ,
      cloneCompilerOptions: () => ZV,
      closeFileWatcher: () => md,
      closeFileWatcherOf: () => Np,
      codefix: () => Zu,
      collapseTextChangeRangesAcrossMultipleVersions: () => lZ,
      collectExternalModuleInfo: () => nU,
      combine: () => lx,
      combinePaths: () => jn,
      commandLineOptionOfCustomType: () => Jre,
      commentPragmas: () => P7,
      commonOptionsWithBuild: () => vF,
      compact: () => a3,
      compareBooleans: () => tv,
      compareComparableValues: () => iS,
      compareDataObjects: () => FJ,
      compareDiagnostics: () => ND,
      compareEmitHelpers: () => Fte,
      compareNumberOfDirectorySeparators: () => UA,
      comparePaths: () => Rh,
      comparePathsCaseInsensitive: () => Yge,
      comparePathsCaseSensitive: () => Qge,
      comparePatternKeys: () => RW,
      compareProperties: () => SQ,
      compareStringsCaseInsensitive: () => l3,
      compareStringsCaseInsensitiveEslintCompatible: () => yQ,
      compareStringsCaseSensitive: () => Du,
      compareStringsCaseSensitiveUI: () => u3,
      compareTextSpans: () => S7,
      compareValues: () => Fo,
      compilerOptionsAffectDeclarationPath: () => Ree,
      compilerOptionsAffectEmit: () => Mee,
      compilerOptionsAffectSemanticDiagnostics: () => Lee,
      compilerOptionsDidYouMeanDiagnostics: () => xF,
      compilerOptionsIndicateEsModules: () => iq,
      computeCommonSourceDirectoryOfFilenames: () => EU,
      computeLineAndCharacterOfPosition: () => VC,
      computeLineOfPosition: () => M4,
      computeLineStarts: () => Sx,
      computePositionOfLineAndCharacter: () => B7,
      computeSignatureWithDiagnostics: () => zU,
      computeSuggestionDiagnostics: () => Vq,
      computedOptions: () => ID,
      concatenate: () => zi,
      concatenateDiagnosticMessageChains: () => Aee,
      consumesNodeCoreModules: () => dL,
      contains: () => Gi,
      containsIgnoredPath: () => WD,
      containsObjectRestOrSpread: () => yN,
      containsParseError: () => Ax,
      containsPath: () => vp,
      convertCompilerOptionsForTelemetry: () => tne,
      convertCompilerOptionsFromJson: () => Hye,
      convertJsonOption: () => VS,
      convertToBase64: () => mee,
      convertToJson: () => CN,
      convertToObject: () => Xre,
      convertToOptionsWithAbsolutePaths: () => DF,
      convertToRelativePath: () => F4,
      convertToTSConfig: () => bW,
      convertTypeAcquisitionFromJson: () => $ye,
      copyComments: () => KS,
      copyEntries: () => c5,
      copyLeadingComments: () => dE,
      copyProperties: () => ZR,
      copyTrailingAsLeadingComments: () => bI,
      copyTrailingComments: () => $w,
      couldStartTrivia: () => XY,
      countWhere: () => Qf,
      createAbstractBuilder: () => ebe,
      createAccessorPropertyBackingField: () => iW,
      createAccessorPropertyGetRedirector: () => Cre,
      createAccessorPropertySetRedirector: () => Ere,
      createBaseNodeFactory: () => hte,
      createBinaryExpressionTrampoline: () => pF,
      createBuilderProgram: () => WU,
      createBuilderProgramUsingIncrementalBuildInfo: () => tae,
      createBuilderStatusReporter: () => w9,
      createCacheableExportInfoMap: () => Oq,
      createCachedDirectoryStructureHost: () => i9,
      createClassifier: () => A2e,
      createCommentDirectivesMap: () => nK,
      createCompilerDiagnostic: () => nc,
      createCompilerDiagnosticForInvalidCustomType: () => zre,
      createCompilerDiagnosticFromMessageChain: () => _O,
      createCompilerHost: () => Iie,
      createCompilerHostFromProgramHost: () => cV,
      createCompilerHostWorker: () => o9,
      createDetachedDiagnostic: () => $x,
      createDiagnosticCollection: () => SD,
      createDiagnosticForFileFromMessageChain: () => FB,
      createDiagnosticForNode: () => Kr,
      createDiagnosticForNodeArray: () => n6,
      createDiagnosticForNodeArrayFromMessageChain: () => H3,
      createDiagnosticForNodeFromMessageChain: () => Gg,
      createDiagnosticForNodeInSourceFile: () => Sp,
      createDiagnosticForRange: () => gK,
      createDiagnosticMessageChainFromDiagnostic: () => mK,
      createDiagnosticReporter: () => Nk,
      createDocumentPositionMapper: () => Bne,
      createDocumentRegistry: () => $se,
      createDocumentRegistryInternal: () => jq,
      createEmitAndSemanticDiagnosticsBuilderProgram: () => GU,
      createEmitHelperFactory: () => Ote,
      createEmptyExports: () => uN,
      createEvaluator: () => cte,
      createExpressionForJsxElement: () => ure,
      createExpressionForJsxFragment: () => _re,
      createExpressionForObjectLiteralElementLike: () => fre,
      createExpressionForPropertyName: () => Xz,
      createExpressionFromEntityName: () => _N,
      createExternalHelpersImportDeclarationIfNeeded: () => Zz,
      createFileDiagnostic: () => wl,
      createFileDiagnosticFromMessageChain: () => y5,
      createFlowNode: () => sh,
      createForOfBindingStatement: () => $z,
      createFutureSourceFile: () => bL,
      createGetCanonicalFileName: () => pu,
      createGetIsolatedDeclarationErrors: () => yie,
      createGetSourceFile: () => DU,
      createGetSymbolAccessibilityDiagnosticForNode: () => Lv,
      createGetSymbolAccessibilityDiagnosticForNodeName: () => hie,
      createGetSymbolWalker: () => Ene,
      createIncrementalCompilerHost: () => D9,
      createIncrementalProgram: () => fae,
      createJsxFactoryExpression: () => Hz,
      createLanguageService: () => kce,
      createLanguageServiceSourceFile: () => jL,
      createMemberAccessForPropertyName: () => US,
      createModeAwareCache: () => H6,
      createModeAwareCacheKey: () => gw,
      createModeMismatchDetails: () => yB,
      createModuleNotFoundChain: () => u5,
      createModuleResolutionCache: () => $6,
      createModuleResolutionLoader: () => OU,
      createModuleResolutionLoaderUsingGlobalCache: () => lae,
      createModuleSpecifierResolutionHost: () => Bv,
      createMultiMap: () => Up,
      createNameResolver: () => uz,
      createNodeConverters: () => bte,
      createNodeFactory: () => YA,
      createOptionNameMap: () => SF,
      createOverload: () => NH,
      createPackageJsonImportFilter: () => mE,
      createPackageJsonInfo: () => Cq,
      createParenthesizerRules: () => yte,
      createPatternMatcher: () => Kse,
      createPrinter: () => g1,
      createPrinterWithDefaults: () => Die,
      createPrinterWithRemoveComments: () => i2,
      createPrinterWithRemoveCommentsNeverAsciiEscape: () => wie,
      createPrinterWithRemoveCommentsOmitTrailingSemicolon: () => bU,
      createProgram: () => QN,
      createProgramDiagnostics: () => Jie,
      createProgramHost: () => lV,
      createPropertyNameNodeForIdentifierOrLiteral: () => NO,
      createQueue: () => c3,
      createRange: () => bf,
      createRedirectedBuilderProgram: () => qU,
      createResolutionCache: () => XU,
      createRuntimeTypeSerializer: () => eie,
      createScanner: () => Bg,
      createSemanticDiagnosticsBuilderProgram: () => Kve,
      createSet: () => KR,
      createSolutionBuilder: () => hae,
      createSolutionBuilderHost: () => mae,
      createSolutionBuilderWithWatch: () => yae,
      createSolutionBuilderWithWatchHost: () => gae,
      createSortedArray: () => VR,
      createSourceFile: () => Sk,
      createSourceMapGenerator: () => Fne,
      createSourceMapSource: () => g0e,
      createSuperAccessVariableStatement: () => r9,
      createSymbolTable: () => Ka,
      createSymlinkCache: () => VJ,
      createSyntacticTypeNodeBuilder: () => Mae,
      createSystemWatchFunctions: () => zY,
      createTextChange: () => pI,
      createTextChangeFromStartLength: () => K9,
      createTextChangeRange: () => C3,
      createTextRangeFromNode: () => tq,
      createTextRangeFromSpan: () => Z9,
      createTextSpan: () => du,
      createTextSpanFromBounds: () => Vc,
      createTextSpanFromNode: () => P_,
      createTextSpanFromRange: () => V0,
      createTextSpanFromStringLiteralLikeContent: () => eq,
      createTextWriter: () => CA,
      createTokenRange: () => PJ,
      createTypeChecker: () => Ine,
      createTypeReferenceDirectiveResolutionCache: () => RF,
      createTypeReferenceResolutionLoader: () => u9,
      createWatchCompilerHost: () => ube,
      createWatchCompilerHostOfConfigFile: () => uV,
      createWatchCompilerHostOfFilesAndCompilerOptions: () => _V,
      createWatchFactory: () => oV,
      createWatchHost: () => sV,
      createWatchProgram: () => fV,
      createWatchStatusReporter: () => QU,
      createWriteFileMeasuringIO: () => wU,
      declarationNameToString: () => Do,
      decodeMappings: () => eU,
      decodedTextSpanIntersectsWith: () => k3,
      deduplicate: () => Z1,
      defaultHoverMaximumTruncationLength: () => XZ,
      defaultInitCompilerOptions: () => pye,
      defaultMaximumTruncationLength: () => Z4,
      diagnosticCategoryName: () => aS,
      diagnosticToString: () => l2,
      diagnosticsEqualityComparer: () => fO,
      directoryProbablyExists: () => zd,
      directorySeparator: () => Co,
      displayPart: () => tf,
      displayPartsToString: () => OI,
      disposeEmitNodes: () => Sz,
      documentSpansEqual: () => _q,
      dumpTracingLegend: () => RQ,
      elementAt: () => Py,
      elideNodes: () => kre,
      emitDetachedComments: () => aee,
      emitFiles: () => yU,
      emitFilesAndReportErrors: () => x9,
      emitFilesAndReportErrorsAndGetExitStatus: () => aV,
      emitModuleKindIsNonNodeESM: () => BA,
      emitNewLineBeforeLeadingCommentOfPosition: () => iee,
      emitResolverSkipsTypeChecking: () => hU,
      emitSkippedWithNoDiagnostics: () => MU,
      emptyArray: () => Te,
      emptyFileSystemEntries: () => ZJ,
      emptyMap: () => mi,
      emptyOptions: () => td,
      endsWith: () => Uo,
      ensurePathIsNonModuleName: () => sS,
      ensureScriptKind: () => TO,
      ensureTrailingDirectorySeparator: () => El,
      entityNameToString: () => mf,
      enumerateInsertsAndDeletes: () => C7,
      equalOwnProperties: () => dQ,
      equateStringsCaseInsensitive: () => ev,
      equateStringsCaseSensitive: () => nS,
      equateValues: () => S0,
      escapeJsxAttributeString: () => _J,
      escapeLeadingUnderscores: () => mc,
      escapeNonAsciiString: () => q5,
      escapeSnippetText: () => Vb,
      escapeString: () => dg,
      escapeTemplateSubstitution: () => lJ,
      evaluatorResult: () => Pl,
      every: () => hr,
      exclusivelyPrefixedNodeCoreModules: () => jO,
      executeCommandLine: () => Ube,
      expandPreOrPostfixIncrementOrDecrementExpression: () => cF,
      explainFiles: () => eV,
      explainIfFileIsRedirectAndImpliedFormat: () => tV,
      exportAssignmentIsAlias: () => yA,
      expressionResultIsUnused: () => ete,
      extend: () => YR,
      extensionFromPath: () => RD,
      extensionIsTS: () => DO,
      extensionsNotSupportingExtensionlessResolution: () => EO,
      externalHelpersModuleNameText: () => Vy,
      factory: () => A,
      fileExtensionIs: () => lc,
      fileExtensionIsOneOf: () => jc,
      fileIncludeReasonToDiagnostics: () => iV,
      fileShouldUseJavaScriptRequire: () => Iq,
      filter: () => dn,
      filterMutate: () => T4,
      filterSemanticDiagnostics: () => d9,
      find: () => xr,
      findAncestor: () => cr,
      findBestPatternMatch: () => aj,
      findChildOfKind: () => uo,
      findComputedPropertyNameCacheAssignment: () => dF,
      findConfigFile: () => kU,
      findConstructorDeclaration: () => XA,
      findContainingList: () => q9,
      findDiagnosticForNode: () => Bse,
      findFirstNonJsxWhitespaceToken: () => cse,
      findIndex: () => qs,
      findLast: () => Ya,
      findLastIndex: () => i_,
      findListItemInfo: () => ose,
      findModifier: () => _E,
      findNextToken: () => c2,
      findPackageJson: () => jse,
      findPackageJsons: () => kq,
      findPrecedingMatchingToken: () => Q9,
      findPrecedingToken: () => Tl,
      findSuperStatementIndexPath: () => QF,
      findTokenOnLeftOfPosition: () => zw,
      findUseStrictPrologue: () => Yz,
      first: () => js,
      firstDefined: () => Hn,
      firstDefinedIterator: () => rs,
      firstIterator: () => HR,
      firstOrOnly: () => wq,
      firstOrUndefined: () => ul,
      firstOrUndefinedIterator: () => b7,
      fixupCompilerOptions: () => Xq,
      flatMap: () => ks,
      flatMapIterator: () => pa,
      flatMapToMutable: () => wi,
      flatten: () => Rf,
      flattenCommaList: () => Dre,
      flattenDestructuringAssignment: () => $S,
      flattenDestructuringBinding: () => n2,
      flattenDiagnosticMessageText: () => Mm,
      forEach: () => bt,
      forEachAncestor: () => ZZ,
      forEachAncestorDirectory: () => L4,
      forEachAncestorDirectoryStoppingAtGlobalCache: () => hg,
      forEachChild: () => Fa,
      forEachChildRecursively: () => bk,
      forEachDynamicImportOrRequireCall: () => BO,
      forEachEmittedFile: () => pU,
      forEachEnclosingBlockScopeContainer: () => fK,
      forEachEntry: () => Dl,
      forEachExternalModuleToImportFrom: () => Lq,
      forEachImportClauseDeclaration: () => BK,
      forEachKey: () => Vg,
      forEachLeadingCommentRange: () => y3,
      forEachNameInAccessChainWalkingLeft: () => Cee,
      forEachNameOfDefaultExport: () => TL,
      forEachOptionsSyntaxByName: () => gz,
      forEachProjectReference: () => HD,
      forEachPropertyAssignment: () => s6,
      forEachResolvedProjectReference: () => dz,
      forEachReturnStatement: () => Hy,
      forEachRight: () => la,
      forEachTrailingCommentRange: () => v3,
      forEachTsConfigPropArray: () => Z3,
      forEachUnique: () => pq,
      forEachYieldExpression: () => RB,
      formatColorAndReset: () => a2,
      formatDiagnostic: () => PU,
      formatDiagnostics: () => Dve,
      formatDiagnosticsWithColorAndContext: () => Mie,
      formatGeneratedName: () => Av,
      formatGeneratedNamePart: () => U6,
      formatLocation: () => AU,
      formatMessage: () => Qx,
      formatStringFromArgs: () => Yg,
      formatting: () => dl,
      generateDjb2Hash: () => I4,
      generateTSConfig: () => Qre,
      getAdjustedReferenceLocation: () => GV,
      getAdjustedRenameLocation: () => H9,
      getAliasDeclarationFromName: () => ZB,
      getAllAccessorDeclarations: () => Bb,
      getAllDecoratorsOfClass: () => aU,
      getAllDecoratorsOfClassElement: () => ZF,
      getAllJSDocTags: () => G7,
      getAllJSDocTagsOfKind: () => bhe,
      getAllKeys: () => kge,
      getAllProjectOutputs: () => n9,
      getAllSuperTypeNodes: () => mD,
      getAllowImportingTsExtensions: () => Iee,
      getAllowJSCompilerOption: () => t1,
      getAllowSyntheticDefaultImports: () => Yx,
      getAlwaysStrict: () => OD,
      getAncestor: () => dv,
      getAnyExtensionFromPath: () => hx,
      getAreDeclarationMapsEnabled: () => pO,
      getAssignedExpandoInitializer: () => Ox,
      getAssignedName: () => U7,
      getAssignmentDeclarationKind: () => qc,
      getAssignmentDeclarationPropertyAccessKind: () => lA,
      getAssignmentTargetKind: () => Xy,
      getAutomaticTypeDirectiveNames: () => LF,
      getBaseFileName: () => nl,
      getBinaryOperatorPrecedence: () => TA,
      getBuildInfo: () => vU,
      getBuildInfoFileVersionMap: () => VU,
      getBuildInfoText: () => Cie,
      getBuildOrderFromAnyBuildOrder: () => eI,
      getBuilderCreationParameters: () => y9,
      getBuilderFileEmit: () => h1,
      getCanonicalDiagnostic: () => hK,
      getCheckFlags: () => gc,
      getClassExtendsHeritageElement: () => Mb,
      getClassLikeDeclarationOfSymbol: () => I0,
      getCombinedLocalAndExportSymbolFlags: () => v6,
      getCombinedModifierFlags: () => nv,
      getCombinedNodeFlags: () => x0,
      getCombinedNodeFlagsAlwaysIncludeJSDoc: () => qj,
      getCommentRange: () => Pm,
      getCommonSourceDirectory: () => Aw,
      getCommonSourceDirectoryOfConfig: () => XS,
      getCompilerOptionValue: () => gO,
      getComputedCommonSourceDirectory: () => kie,
      getConditions: () => f1,
      getConfigFileParsingDiagnostics: () => s2,
      getConstantValue: () => Cte,
      getContainerFlags: () => BW,
      getContainerNode: () => ZS,
      getContainingClass: () => nu,
      getContainingClassExcludingClassDecorators: () => E5,
      getContainingClassStaticBlock: () => DK,
      getContainingFunction: () => Kf,
      getContainingFunctionDeclaration: () => EK,
      getContainingFunctionOrClassStaticBlock: () => C5,
      getContainingNodeArray: () => tte,
      getContainingObjectLiteralElement: () => FI,
      getContextualTypeFromParent: () => cL,
      getContextualTypeFromParentOrAncestorTypeNode: () => G9,
      getDeclarationDiagnostics: () => vie,
      getDeclarationEmitExtensionForPath: () => $5,
      getDeclarationEmitOutputFilePath: () => eee,
      getDeclarationEmitOutputFilePathWorker: () => H5,
      getDeclarationFileExtension: () => gF,
      getDeclarationFromName: () => dD,
      getDeclarationModifierFlagsFromSymbol: () => kp,
      getDeclarationOfKind: () => Ho,
      getDeclarationsOfKind: () => QZ,
      getDeclaredExpandoInitializer: () => uD,
      getDecorators: () => My,
      getDefaultCompilerOptions: () => RL,
      getDefaultFormatCodeSettings: () => M9,
      getDefaultLibFileName: () => S3,
      getDefaultLibFilePath: () => Cce,
      getDefaultLikeExportInfo: () => SL,
      getDefaultLikeExportNameFromDeclaration: () => Pq,
      getDefaultResolutionModeForFileWorker: () => p9,
      getDiagnosticText: () => q_,
      getDiagnosticsWithinSpan: () => Jse,
      getDirectoryPath: () => Xn,
      getDirectoryToWatchFailedLookupLocation: () => $U,
      getDirectoryToWatchFailedLookupLocationFromTypeRoot: () => oae,
      getDocumentPositionMapper: () => Uq,
      getDocumentSpansEqualityComparer: () => fq,
      getESModuleInterop: () => Dm,
      getEditsForFileRename: () => Qse,
      getEffectiveBaseTypeNode: () => Jd,
      getEffectiveConstraintOfTypeParameter: () => $C,
      getEffectiveContainerForJSDocTemplateTag: () => j5,
      getEffectiveImplementsTypeNodes: () => f6,
      getEffectiveInitializer: () => sA,
      getEffectiveJSDocHost: () => pv,
      getEffectiveModifierFlags: () => Pu,
      getEffectiveModifierFlagsAlwaysIncludeJSDoc: () => lee,
      getEffectiveModifierFlagsNoCache: () => uee,
      getEffectiveReturnTypeNode: () => yf,
      getEffectiveSetAccessorTypeAnnotationNode: () => vJ,
      getEffectiveTypeAnnotationNode: () => _l,
      getEffectiveTypeParameterDeclarations: () => Ry,
      getEffectiveTypeRoots: () => mw,
      getElementOrPropertyAccessArgumentExpressionOrName: () => R5,
      getElementOrPropertyAccessName: () => Jh,
      getElementsOfBindingOrAssignmentPattern: () => W6,
      getEmitDeclarations: () => U_,
      getEmitFlags: () => Bs,
      getEmitHelpers: () => Tz,
      getEmitModuleDetectionKind: () => Oee,
      getEmitModuleFormatOfFileWorker: () => Fw,
      getEmitModuleKind: () => u_,
      getEmitModuleResolutionKind: () => Hu,
      getEmitScriptTarget: () => Ps,
      getEmitStandardClassFields: () => WJ,
      getEnclosingBlockScopeContainer: () => Bd,
      getEnclosingContainer: () => h5,
      getEncodedSemanticClassifications: () => Mq,
      getEncodedSyntacticClassifications: () => Rq,
      getEndLinePosition: () => W3,
      getEntityNameFromTypeNode: () => tA,
      getEntrypointsFromPackageJsonInfo: () => FW,
      getErrorCountForSummary: () => S9,
      getErrorSpanForNode: () => gS,
      getErrorSummaryText: () => ZU,
      getEscapedTextOfIdentifierOrLiteral: () => yD,
      getEscapedTextOfJsxAttributeName: () => qD,
      getEscapedTextOfJsxNamespacedName: () => tk,
      getExpandoInitializer: () => _v,
      getExportAssignmentExpression: () => KB,
      getExportInfoMap: () => EI,
      getExportNeedsImportStarHelper: () => Jne,
      getExpressionAssociativity: () => oJ,
      getExpressionPrecedence: () => bD,
      getExternalHelpersModuleName: () => pN,
      getExternalModuleImportEqualsDeclarationExpression: () => sD,
      getExternalModuleName: () => Lx,
      getExternalModuleNameFromDeclaration: () => ZK,
      getExternalModuleNameFromPath: () => dJ,
      getExternalModuleNameLiteral: () => vk,
      getExternalModuleRequireArgument: () => WB,
      getFallbackOptions: () => HN,
      getFileEmitOutput: () => zie,
      getFileMatcherPatterns: () => SO,
      getFileNamesFromConfigSpecs: () => pw,
      getFileWatcherEventKind: () => Nj,
      getFilesInErrorForSummary: () => T9,
      getFirstConstructorWithBody: () => Xg,
      getFirstIdentifier: () => x_,
      getFirstNonSpaceCharacterPosition: () => Ise,
      getFirstProjectOutput: () => gU,
      getFixableErrorSpanExpression: () => Eq,
      getFormatCodeSettingsForWriting: () => yL,
      getFullWidth: () => J3,
      getFunctionFlags: () => Gc,
      getHeritageClause: () => vA,
      getHostSignatureFromJSDoc: () => fv,
      getIdentifierAutoGenerate: () => v0e,
      getIdentifierGeneratedImportReference: () => Nte,
      getIdentifierTypeArguments: () => NS,
      getImmediatelyInvokedFunctionExpression: () => lv,
      getImpliedNodeFormatForEmitWorker: () => QS,
      getImpliedNodeFormatForFile: () => XN,
      getImpliedNodeFormatForFileWorker: () => f9,
      getImportNeedsImportDefaultHelper: () => rU,
      getImportNeedsImportStarHelper: () => $F,
      getIndentString: () => G5,
      getInferredLibraryNameResolveFrom: () => _9,
      getInitializedVariables: () => wD,
      getInitializerOfBinaryExpression: () => GB,
      getInitializerOfBindingOrAssignmentElement: () => mN,
      getInterfaceBaseTypeNodes: () => gD,
      getInternalEmitFlags: () => pd,
      getInvokedExpression: () => P5,
      getIsFileExcluded: () => qse,
      getIsolatedModules: () => Zp,
      getJSDocAugmentsTag: () => vZ,
      getJSDocClassTag: () => $j,
      getJSDocCommentRanges: () => MB,
      getJSDocCommentsAndTags: () => HB,
      getJSDocDeprecatedTag: () => Xj,
      getJSDocDeprecatedTagNoCache: () => EZ,
      getJSDocEnumTag: () => Qj,
      getJSDocHost: () => Fb,
      getJSDocImplementsTags: () => bZ,
      getJSDocOverloadTags: () => XB,
      getJSDocOverrideTagNoCache: () => CZ,
      getJSDocParameterTags: () => HC,
      getJSDocParameterTagsNoCache: () => mZ,
      getJSDocPrivateTag: () => ghe,
      getJSDocPrivateTagNoCache: () => TZ,
      getJSDocProtectedTag: () => hhe,
      getJSDocProtectedTagNoCache: () => xZ,
      getJSDocPublicTag: () => mhe,
      getJSDocPublicTagNoCache: () => SZ,
      getJSDocReadonlyTag: () => yhe,
      getJSDocReadonlyTagNoCache: () => kZ,
      getJSDocReturnTag: () => DZ,
      getJSDocReturnType: () => D3,
      getJSDocRoot: () => _6,
      getJSDocSatisfiesExpressionType: () => oz,
      getJSDocSatisfiesTag: () => Yj,
      getJSDocTags: () => av,
      getJSDocTemplateTag: () => vhe,
      getJSDocThisTag: () => V7,
      getJSDocType: () => k0,
      getJSDocTypeAliasName: () => eW,
      getJSDocTypeAssertionType: () => J6,
      getJSDocTypeParameterDeclarations: () => K5,
      getJSDocTypeParameterTags: () => gZ,
      getJSDocTypeParameterTagsNoCache: () => hZ,
      getJSDocTypeTag: () => iv,
      getJSXImplicitImportBase: () => JA,
      getJSXRuntimeImport: () => yO,
      getJSXTransformEnabled: () => hO,
      getKeyForCompilerOptions: () => PW,
      getLanguageVariant: () => FA,
      getLastChild: () => LJ,
      getLeadingCommentRanges: () => jg,
      getLeadingCommentRangesOfNode: () => LB,
      getLeftmostAccessExpression: () => Hx,
      getLeftmostExpression: () => b6,
      getLibFileNameFromLibReference: () => pz,
      getLibNameFromLibReference: () => fz,
      getLibraryNameFromLibFileName: () => FU,
      getLineAndCharacterOfPosition: () => Za,
      getLineInfo: () => KW,
      getLineOfLocalPosition: () => TD,
      getLineStartPositionForPosition: () => rd,
      getLineStarts: () => Mg,
      getLinesBetweenPositionAndNextNonWhitespaceCharacter: () => Tee,
      getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter: () => See,
      getLinesBetweenPositions: () => R4,
      getLinesBetweenRangeEndAndRangeStart: () => AJ,
      getLinesBetweenRangeEndPositions: () => $he,
      getLiteralText: () => aK,
      getLocalNameForExternalImport: () => z6,
      getLocalSymbolForExportDefault: () => ED,
      getLocaleSpecificMessage: () => Oa,
      getLocaleTimeString: () => KN,
      getMappedContextSpan: () => dq,
      getMappedDocumentSpan: () => aL,
      getMappedLocation: () => qw,
      getMatchedFileSpec: () => rV,
      getMatchedIncludeSpec: () => nV,
      getMeaningFromDeclaration: () => j9,
      getMeaningFromLocation: () => YS,
      getMembersOfDeclaration: () => bK,
      getModeForFileReference: () => Rie,
      getModeForResolutionAtIndex: () => Ove,
      getModeForUsageLocation: () => IU,
      getModifiedTime: () => gx,
      getModifiers: () => kb,
      getModuleInstanceState: () => m1,
      getModuleNameStringLiteralAt: () => YN,
      getModuleSpecifierEndingPreference: () => Vee,
      getModuleSpecifierOfBareOrAccessedRequire: () => OK,
      getModuleSpecifierResolverHost: () => aq,
      getNameForExportedSymbol: () => mL,
      getNameFromImportAttribute: () => LO,
      getNameFromIndexInfo: () => pK,
      getNameFromPropertyName: () => mI,
      getNameOfAccessExpression: () => RJ,
      getNameOfCompilerOptionValue: () => EF,
      getNameOfDeclaration: () => va,
      getNameOfExpando: () => UB,
      getNameOfJSDocTypedef: () => dZ,
      getNameOfScriptTarget: () => mO,
      getNameOrArgument: () => cA,
      getNameTable: () => bG,
      getNamespaceDeclarationNode: () => u6,
      getNewLineCharacter: () => N0,
      getNewLineKind: () => CI,
      getNewLineOrDefaultFromHost: () => Xh,
      getNewTargetContainer: () => PK,
      getNextJSDocCommentLocation: () => $B,
      getNodeChildren: () => qz,
      getNodeForGeneratedName: () => hN,
      getNodeId: () => Hs,
      getNodeKind: () => o2,
      getNodeModifiers: () => Ww,
      getNodeModulePathParts: () => IO,
      getNonAssignedNameOfDeclaration: () => W7,
      getNonAssignmentOperatorForCompoundAssignment: () => xw,
      getNonAugmentationDeclaration: () => wB,
      getNonDecoratorTokenPosOfNode: () => TB,
      getNonIncrementalBuildInfoRoots: () => rae,
      getNormalizedAbsolutePath: () => ca,
      getNormalizedAbsolutePathWithoutRoot: () => Lj,
      getNormalizedPathComponents: () => F7,
      getObjectFlags: () => yn,
      getOperatorAssociativity: () => cJ,
      getOperatorPrecedence: () => SA,
      getOptionFromName: () => mW,
      getOptionsForLibraryResolution: () => AW,
      getOptionsNameMap: () => q6,
      getOptionsSyntaxByArrayElementValue: () => mz,
      getOptionsSyntaxByValue: () => pte,
      getOrCreateEmitNode: () => Au,
      getOrUpdate: () => v_,
      getOriginalNode: () => rc,
      getOriginalNodeId: () => w_,
      getOutputDeclarationFileName: () => Pw,
      getOutputDeclarationFileNameWorker: () => dU,
      getOutputExtension: () => VN,
      getOutputFileNames: () => Cve,
      getOutputJSFileNameWorker: () => mU,
      getOutputPathsFor: () => ww,
      getOwnEmitOutputFilePath: () => KK,
      getOwnKeys: () => mm,
      getOwnValues: () => _x,
      getPackageJsonTypesVersionsPaths: () => FF,
      getPackageNameFromTypesPackageName: () => vw,
      getPackageScopeForPath: () => yw,
      getParameterSymbolFromJSDoc: () => mA,
      getParentNodeInSpan: () => hI,
      getParseTreeNode: () => Ca,
      getParsedCommandLineOfConfigFile: () => xN,
      getPathComponents: () => wu,
      getPathFromPathComponents: () => rv,
      getPathUpdater: () => Jq,
      getPathsBasePath: () => X5,
      getPatternFromSpec: () => HJ,
      getPendingEmitKindWithSeen: () => h9,
      getPositionOfLineAndCharacter: () => g3,
      getPossibleGenericSignatures: () => $V,
      getPossibleOriginalInputExtensionForExtension: () => mJ,
      getPossibleOriginalInputPathWithoutChangingExt: () => gJ,
      getPossibleTypeArgumentsInfo: () => XV,
      getPreEmitDiagnostics: () => Eve,
      getPrecedingNonSpaceCharacterPosition: () => sL,
      getPrivateIdentifier: () => sU,
      getProperties: () => iU,
      getProperty: () => s3,
      getPropertyAssignmentAliasLikeExpression: () => HK,
      getPropertyNameForPropertyNameNode: () => kS,
      getPropertyNameFromType: () => Ep,
      getPropertyNameOfBindingOrAssignmentElement: () => Kz,
      getPropertySymbolFromBindingElement: () => iL,
      getPropertySymbolsFromContextualType: () => LI,
      getQuoteFromPreference: () => oq,
      getQuotePreference: () => Df,
      getRangesWhere: () => uQ,
      getRefactorContextSpan: () => Lk,
      getReferencedFileLocation: () => Ow,
      getRegexFromPattern: () => O0,
      getRegularExpressionForWildcard: () => FD,
      getRegularExpressionsForWildcards: () => vO,
      getRelativePathFromDirectory: () => Zf,
      getRelativePathFromFile: () => vx,
      getRelativePathToDirectoryOrUrl: () => bx,
      getRenameLocation: () => vI,
      getReplacementSpanForContextToken: () => KV,
      getResolutionDiagnostic: () => jU,
      getResolutionModeOverride: () => eE,
      getResolveJsonModule: () => zb,
      getResolvePackageJsonExports: () => MA,
      getResolvePackageJsonImports: () => RA,
      getResolvedExternalModuleName: () => pJ,
      getResolvedModuleFromResolution: () => Px,
      getResolvedTypeReferenceDirectiveFromResolution: () => l5,
      getRestIndicatorOfBindingOrAssignmentElement: () => _F,
      getRestParameterElementType: () => jB,
      getRightMostAssignedExpression: () => oA,
      getRootDeclaration: () => xm,
      getRootDirectoryOfResolutionCache: () => cae,
      getRootLength: () => Md,
      getScriptKind: () => yq,
      getScriptKindFromFileName: () => xO,
      getScriptTargetFeatures: () => xB,
      getSelectedEffectiveModifierFlags: () => Wx,
      getSelectedSyntacticModifierFlags: () => oee,
      getSemanticClassifications: () => Gse,
      getSemanticJsxChildren: () => d6,
      getSetAccessorTypeAnnotationNode: () => ree,
      getSetAccessorValueParameter: () => xD,
      getSetExternalModuleIndicator: () => LA,
      getShebang: () => J7,
      getSingleVariableOfVariableStatement: () => jx,
      getSnapshotText: () => Fk,
      getSnippetElement: () => xz,
      getSourceFileOfModule: () => z3,
      getSourceFileOfNode: () => Sr,
      getSourceFilePathInNewDir: () => Y5,
      getSourceFileVersionAsHashFromText: () => k9,
      getSourceFilesToEmit: () => Q5,
      getSourceMapRange: () => M0,
      getSourceMapper: () => coe,
      getSourceTextOfNodeFromSourceFile: () => Pb,
      getSpanOfTokenAtPosition: () => _g,
      getSpellingSuggestion: () => xb,
      getStartPositionOfLine: () => qy,
      getStartPositionOfRange: () => DD,
      getStartsOnNewLine: () => XD,
      getStaticPropertiesAndClassStaticBlock: () => YF,
      getStrictOptionValue: () => Sf,
      getStringComparer: () => JC,
      getSubPatternFromSpec: () => bO,
      getSuperCallFromStatement: () => XF,
      getSuperContainer: () => K3,
      getSupportedCodeFixes: () => yG,
      getSupportedExtensions: () => LD,
      getSupportedExtensionsWithJsonIfResolveJsonModule: () => WA,
      getSwitchedType: () => Sq,
      getSymbolId: () => ss,
      getSymbolNameForPrivateIdentifier: () => bA,
      getSymbolTarget: () => vq,
      getSyntacticClassifications: () => Hse,
      getSyntacticModifierFlags: () => P0,
      getSyntacticModifierFlagsNoCache: () => TJ,
      getSynthesizedDeepClone: () => no,
      getSynthesizedDeepCloneWithReplacements: () => QA,
      getSynthesizedDeepClones: () => qb,
      getSynthesizedDeepClonesWithReplacements: () => hz,
      getSyntheticLeadingComments: () => C6,
      getSyntheticTrailingComments: () => tN,
      getTargetLabel: () => z9,
      getTargetOfBindingOrAssignmentElement: () => u1,
      getTemporaryModuleResolutionState: () => hw,
      getTextOfConstantValue: () => sK,
      getTextOfIdentifierOrLiteral: () => Xp,
      getTextOfJSDocComment: () => w3,
      getTextOfJsxAttributeName: () => $A,
      getTextOfJsxNamespacedName: () => GD,
      getTextOfNode: () => uc,
      getTextOfNodeFromSourceText: () => eD,
      getTextOfPropertyName: () => Ix,
      getThisContainer: () => c_,
      getThisParameter: () => Rb,
      getTokenAtPosition: () => xi,
      getTokenPosOfNode: () => ov,
      getTokenSourceMapRange: () => h0e,
      getTouchingPropertyName: () => G_,
      getTouchingToken: () => lE,
      getTrailingCommentRanges: () => Ly,
      getTrailingSemicolonDeferringWriter: () => fJ,
      getTransformers: () => Sie,
      getTsBuildInfoEmitOutputFilePath: () => Mv,
      getTsConfigObjectLiteralExpression: () => iD,
      getTsConfigPropArrayElementValue: () => k5,
      getTypeAnnotationNode: () => nee,
      getTypeArgumentOrTypeParameterList: () => mse,
      getTypeKeywordOfTypeOnlyImport: () => uq,
      getTypeNode: () => Pte,
      getTypeNodeIfAccessible: () => Qw,
      getTypeParameterFromJsDoc: () => JK,
      getTypeParameterOwner: () => _he,
      getTypesPackageName: () => zF,
      getUILocale: () => vQ,
      getUniqueName: () => eT,
      getUniqueSymbolId: () => Nse,
      getUseDefineForClassFields: () => jA,
      getWatchErrorSummaryDiagnosticMessage: () => YU,
      getWatchFactory: () => xU,
      group: () => BC,
      groupBy: () => QR,
      guessIndentation: () => HZ,
      handleNoEmitOptions: () => RU,
      handleWatchOptionsConfigDirTemplateSubstitution: () => wF,
      hasAbstractModifier: () => Jb,
      hasAccessorModifier: () => km,
      hasAmbientModifier: () => SJ,
      hasChangesInResolutions: () => vB,
      hasContextSensitiveParameters: () => AO,
      hasDecorators: () => tp,
      hasDocComment: () => pse,
      hasDynamicName: () => zh,
      hasEffectiveModifier: () => vf,
      hasEffectiveModifiers: () => bJ,
      hasEffectiveReadonlyModifier: () => ES,
      hasExtension: () => UC,
      hasImplementationTSFileExtension: () => Wee,
      hasIndexSignature: () => bq,
      hasInferredType: () => RO,
      hasInitializer: () => E0,
      hasInvalidEscape: () => uJ,
      hasJSDocNodes: () => Jf,
      hasJSDocParameterTags: () => yZ,
      hasJSFileExtension: () => Zg,
      hasJsonModuleEmitEnabled: () => dO,
      hasOnlyExpressionInitializer: () => dS,
      hasOverrideModifier: () => eO,
      hasPossibleExternalModuleReference: () => _K,
      hasProperty: () => po,
      hasPropertyAccessExpressionWithName: () => oI,
      hasQuestionToken: () => Mx,
      hasRecordedExternalHelpers: () => mre,
      hasResolutionModeOverride: () => ste,
      hasRestParameter: () => dB,
      hasScopeMarker: () => jZ,
      hasStaticModifier: () => vl,
      hasSyntacticModifier: () => Qn,
      hasSyntacticModifiers: () => see,
      hasTSFileExtension: () => wS,
      hasTabstop: () => nte,
      hasTrailingDirectorySeparator: () => Oy,
      hasType: () => a5,
      hasTypeArguments: () => zK,
      hasZeroOrOneAsteriskCharacter: () => UJ,
      hostGetCanonicalFileName: () => Wh,
      hostUsesCaseSensitiveFileNames: () => CS,
      idText: () => On,
      identifierIsThisKeyword: () => yJ,
      identifierToKeywordKind: () => lS,
      identity: () => mo,
      identitySourceMapConsumer: () => tU,
      ignoreSourceNewlines: () => Cz,
      ignoredPaths: () => N7,
      importFromModuleSpecifier: () => fD,
      importSyntaxAffectsModuleResolution: () => zJ,
      indexOfAnyCharCode: () => Wu,
      indexOfNode: () => t6,
      indicesOf: () => v7,
      inferredTypesContainingFile: () => Iw,
      injectClassNamedEvaluationHelperBlockIfMissing: () => t9,
      injectClassThisAssignmentIfMissing: () => $ne,
      insertImports: () => lq,
      insertSorted: () => wy,
      insertStatementAfterCustomPrologue: () => mS,
      insertStatementAfterStandardPrologue: () => Ihe,
      insertStatementsAfterCustomPrologue: () => bB,
      insertStatementsAfterStandardPrologue: () => qg,
      intersperse: () => Jn,
      intrinsicTagNameToString: () => cz,
      introducesArgumentsExoticObject: () => xK,
      inverseJsxOptionMap: () => SN,
      isAbstractConstructorSymbol: () => xee,
      isAbstractModifier: () => zte,
      isAccessExpression: () => jo,
      isAccessibilityModifier: () => YV,
      isAccessor: () => zy,
      isAccessorModifier: () => Nz,
      isAliasableExpression: () => B5,
      isAmbientModule: () => o_,
      isAmbientPropertyDeclaration: () => AB,
      isAnyDirectorySeparator: () => Ij,
      isAnyImportOrBareOrAccessedRequire: () => lK,
      isAnyImportOrReExport: () => q3,
      isAnyImportOrRequireStatement: () => uK,
      isAnyImportSyntax: () => Nx,
      isAnySupportedFileExtension: () => c0e,
      isApplicableVersionedTypesKey: () => NN,
      isArgumentExpressionOfElementAccess: () => JV,
      isArray: () => da,
      isArrayBindingElement: () => K7,
      isArrayBindingOrAssignmentElement: () => F3,
      isArrayBindingOrAssignmentPattern: () => oB,
      isArrayBindingPattern: () => J0,
      isArrayLiteralExpression: () => hu,
      isArrayLiteralOrObjectLiteralDestructuringPattern: () => U0,
      isArrayTypeNode: () => aN,
      isArrowFunction: () => Bo,
      isAsExpression: () => A6,
      isAssertClause: () => Xte,
      isAssertEntry: () => w0e,
      isAssertionExpression: () => Db,
      isAssertsKeyword: () => Bte,
      isAssignmentDeclaration: () => lD,
      isAssignmentExpression: () => Hl,
      isAssignmentOperator: () => Uh,
      isAssignmentPattern: () => Q4,
      isAssignmentTarget: () => Qy,
      isAsteriskToken: () => nN,
      isAsyncFunction: () => hD,
      isAsyncModifier: () => ZD,
      isAutoAccessorPropertyDeclaration: () => R_,
      isAwaitExpression: () => o1,
      isAwaitKeyword: () => Az,
      isBigIntLiteral: () => E6,
      isBinaryExpression: () => un,
      isBinaryLogicalOperator: () => EA,
      isBinaryOperatorToken: () => xre,
      isBindableObjectDefinePropertyCall: () => bS,
      isBindableStaticAccessExpression: () => Ob,
      isBindableStaticElementAccessExpression: () => M5,
      isBindableStaticNameExpression: () => SS,
      isBindingElement: () => Ns,
      isBindingElementOfBareOrAccessedRequire: () => IK,
      isBindingName: () => pS,
      isBindingOrAssignmentElement: () => FZ,
      isBindingOrAssignmentPattern: () => I3,
      isBindingPattern: () => Ja,
      isBlock: () => Wa,
      isBlockLike: () => Mk,
      isBlockOrCatchScoped: () => kB,
      isBlockScope: () => NB,
      isBlockScopedContainerTopLevel: () => cK,
      isBooleanLiteral: () => X4,
      isBreakOrContinueStatement: () => q4,
      isBreakStatement: () => C0e,
      isBuildCommand: () => Aae,
      isBuildInfoFile: () => Tie,
      isBuilderProgram: () => KU,
      isBundle: () => Kte,
      isCallChain: () => uS,
      isCallExpression: () => za,
      isCallExpressionTarget: () => FV,
      isCallLikeExpression: () => Wy,
      isCallLikeOrFunctionLikeExpression: () => cB,
      isCallOrNewExpression: () => ym,
      isCallOrNewExpressionTarget: () => LV,
      isCallSignatureDeclaration: () => uk,
      isCallToHelper: () => YD,
      isCaseBlock: () => aw,
      isCaseClause: () => F6,
      isCaseKeyword: () => Ute,
      isCaseOrDefaultClause: () => B3,
      isCatchClause: () => Zb,
      isCatchClauseVariableDeclaration: () => rte,
      isCatchClauseVariableDeclarationOrBindingElement: () => CB,
      isCheckJsEnabledForFile: () => jD,
      isCircularBuildOrder: () => Ik,
      isClassDeclaration: () => sl,
      isClassElement: () => al,
      isClassExpression: () => Hc,
      isClassInstanceProperty: () => IZ,
      isClassLike: () => Zn,
      isClassMemberModifier: () => iB,
      isClassNamedEvaluationHelperBlock: () => Pk,
      isClassOrTypeElement: () => Z7,
      isClassStaticBlockDeclaration: () => Bc,
      isClassThisAssignmentBlock: () => Cw,
      isColonToken: () => Rte,
      isCommaExpression: () => fN,
      isCommaListExpression: () => nw,
      isCommaSequence: () => lw,
      isCommaToken: () => Mte,
      isComment: () => Y9,
      isCommonJsExportPropertyAssignment: () => T5,
      isCommonJsExportedExpression: () => SK,
      isCompoundAssignment: () => Tw,
      isComputedNonLiteralName: () => G3,
      isComputedPropertyName: () => _s,
      isConciseBody: () => t5,
      isConditionalExpression: () => MS,
      isConditionalTypeNode: () => Hb,
      isConstAssertion: () => lz,
      isConstTypeReference: () => _d,
      isConstructSignatureDeclaration: () => tw,
      isConstructorDeclaration: () => yc,
      isConstructorTypeNode: () => D6,
      isContextualKeyword: () => z5,
      isContinueStatement: () => k0e,
      isCustomPrologue: () => Y3,
      isDebuggerStatement: () => E0e,
      isDeclaration: () => Jl,
      isDeclarationBindingElement: () => N3,
      isDeclarationFileName: () => $l,
      isDeclarationName: () => pg,
      isDeclarationNameOfEnumOrNamespace: () => IJ,
      isDeclarationReadonly: () => $3,
      isDeclarationStatement: () => WZ,
      isDeclarationWithTypeParameterChildren: () => OB,
      isDeclarationWithTypeParameters: () => IB,
      isDecorator: () => pl,
      isDecoratorTarget: () => rse,
      isDefaultClause: () => L6,
      isDefaultImport: () => TS,
      isDefaultModifier: () => XO,
      isDefaultedExpandoInitializer: () => FK,
      isDeleteExpression: () => qte,
      isDeleteTarget: () => YB,
      isDeprecatedDeclaration: () => gL,
      isDestructuringAssignment: () => A0,
      isDiskPathRoot: () => Oj,
      isDoStatement: () => x0e,
      isDocumentRegistryEntry: () => DI,
      isDotDotDotToken: () => HO,
      isDottedName: () => wA,
      isDynamicName: () => U5,
      isEffectiveExternalModule: () => r6,
      isEffectiveStrictModeSourceFile: () => PB,
      isElementAccessChain: () => Zj,
      isElementAccessExpression: () => Po,
      isEmittedFileOfProgram: () => Aie,
      isEmptyArrayLiteral: () => dee,
      isEmptyBindingElement: () => _Z,
      isEmptyBindingPattern: () => uZ,
      isEmptyObjectLiteral: () => DJ,
      isEmptyStatement: () => Fz,
      isEmptyStringLiteral: () => zB,
      isEntityName: () => S_,
      isEntityNameExpression: () => go,
      isEnumConst: () => cv,
      isEnumDeclaration: () => l1,
      isEnumMember: () => Gh,
      isEqualityOperatorKind: () => lL,
      isEqualsGreaterThanToken: () => jte,
      isExclamationToken: () => iN,
      isExcludedFile: () => Zre,
      isExclusivelyTypeOnlyImportOrExport: () => NU,
      isExpandoPropertyDeclaration: () => rk,
      isExportAssignment: () => Xo,
      isExportDeclaration: () => tl,
      isExportModifier: () => ck,
      isExportName: () => lF,
      isExportNamespaceAsDefaultDeclaration: () => d5,
      isExportOrDefaultModifier: () => gN,
      isExportSpecifier: () => $u,
      isExportsIdentifier: () => vS,
      isExportsOrModuleExportsOrAlias: () => t2,
      isExpression: () => dt,
      isExpressionNode: () => fg,
      isExpressionOfExternalModuleImportEqualsDeclaration: () => ase,
      isExpressionOfOptionalChainRoot: () => $7,
      isExpressionStatement: () => zl,
      isExpressionWithTypeArguments: () => rh,
      isExpressionWithTypeArgumentsInClassExtendsClause: () => rO,
      isExternalModule: () => Sl,
      isExternalModuleAugmentation: () => Nb,
      isExternalModuleImportEqualsDeclaration: () => uv,
      isExternalModuleIndicator: () => M3,
      isExternalModuleNameRelative: () => jl,
      isExternalModuleReference: () => qh,
      isExternalModuleSymbol: () => Dx,
      isExternalOrCommonJsModule: () => gf,
      isFileLevelReservedGeneratedIdentifier: () => A3,
      isFileLevelUniqueName: () => f5,
      isFileProbablyExternalModule: () => vN,
      isFirstDeclarationOfSymbolParameter: () => mq,
      isFixablePromiseHandler: () => Gq,
      isForInOrOfStatement: () => wb,
      isForInStatement: () => eF,
      isForInitializer: () => bp,
      isForOfStatement: () => oN,
      isForStatement: () => Ev,
      isFullSourceFile: () => Hg,
      isFunctionBlock: () => Ib,
      isFunctionBody: () => uB,
      isFunctionDeclaration: () => Xc,
      isFunctionExpression: () => Lo,
      isFunctionExpressionOrArrowFunction: () => r1,
      isFunctionLike: () => Ra,
      isFunctionLikeDeclaration: () => So,
      isFunctionLikeKind: () => xx,
      isFunctionLikeOrClassStaticBlockDeclaration: () => YC,
      isFunctionOrConstructorTypeNode: () => OZ,
      isFunctionOrModuleBlock: () => aB,
      isFunctionSymbol: () => RK,
      isFunctionTypeNode: () => mg,
      isGeneratedIdentifier: () => Ko,
      isGeneratedPrivateIdentifier: () => fS,
      isGetAccessor: () => Wg,
      isGetAccessorDeclaration: () => Dp,
      isGetOrSetAccessorDeclaration: () => P3,
      isGlobalScopeAugmentation: () => ug,
      isGlobalSourceFile: () => D0,
      isGrammarError: () => rK,
      isHeritageClause: () => kf,
      isHoistedFunction: () => b5,
      isHoistedVariableStatement: () => S5,
      isIdentifier: () => Fe,
      isIdentifierANonContextualKeyword: () => rJ,
      isIdentifierName: () => GK,
      isIdentifierOrThisTypeNode: () => vre,
      isIdentifierPart: () => jh,
      isIdentifierStart: () => sg,
      isIdentifierText: () => Y_,
      isIdentifierTypePredicate: () => kK,
      isIdentifierTypeReference: () => Yee,
      isIfStatement: () => Cv,
      isIgnoredFileFromWildCardWatching: () => GN,
      isImplicitGlob: () => GJ,
      isImportAttribute: () => Qte,
      isImportAttributeName: () => NZ,
      isImportAttributes: () => BS,
      isImportCall: () => B_,
      isImportClause: () => hd,
      isImportDeclaration: () => ic,
      isImportEqualsDeclaration: () => bl,
      isImportKeyword: () => ew,
      isImportMeta: () => a6,
      isImportOrExportSpecifier: () => By,
      isImportOrExportSpecifierName: () => Ase,
      isImportSpecifier: () => p_,
      isImportTypeAssertionContainer: () => D0e,
      isImportTypeNode: () => Am,
      isImportable: () => Fq,
      isInComment: () => W0,
      isInCompoundLikeAssignment: () => QB,
      isInExpressionContext: () => A5,
      isInJSDoc: () => oD,
      isInJSFile: () => rn,
      isInJSXText: () => fse,
      isInJsonFile: () => I5,
      isInNonReferenceComment: () => yse,
      isInReferenceComment: () => hse,
      isInRightSideOfInternalImportEqualsDeclaration: () => B9,
      isInString: () => Ok,
      isInTemplateString: () => HV,
      isInTopLevelContext: () => D5,
      isInTypeQuery: () => zx,
      isIncrementalBuildInfo: () => ZN,
      isIncrementalBundleEmitBuildInfo: () => Qie,
      isIncrementalCompilation: () => Wb,
      isIndexSignatureDeclaration: () => s1,
      isIndexedAccessTypeNode: () => $b,
      isInferTypeNode: () => OS,
      isInfinityOrNaNString: () => UD,
      isInitializedProperty: () => MN,
      isInitializedVariable: () => OA,
      isInsideJsxElement: () => X9,
      isInsideJsxElementOrAttribute: () => _se,
      isInsideNodeModules: () => TI,
      isInsideTemplateLiteral: () => fI,
      isInstanceOfExpression: () => nO,
      isInstantiatedModule: () => HF,
      isInterfaceDeclaration: () => au,
      isInternalDeclaration: () => $Z,
      isInternalModuleImportEqualsDeclaration: () => yS,
      isInternalName: () => Qz,
      isIntersectionTypeNode: () => pk,
      isIntrinsicJsxName: () => m6,
      isIterationStatement: () => Uy,
      isJSDoc: () => Hd,
      isJSDocAllType: () => rre,
      isJSDocAugmentsTag: () => yk,
      isJSDocAuthorTag: () => I0e,
      isJSDocCallbackTag: () => jz,
      isJSDocClassTag: () => ire,
      isJSDocCommentContainingNode: () => i5,
      isJSDocConstructSignature: () => Rx,
      isJSDocDeprecatedTag: () => Uz,
      isJSDocEnumTag: () => lN,
      isJSDocFunctionType: () => R6,
      isJSDocImplementsTag: () => sF,
      isJSDocImportTag: () => Fm,
      isJSDocIndexSignature: () => F5,
      isJSDocLikeText: () => aW,
      isJSDocLink: () => ere,
      isJSDocLinkCode: () => tre,
      isJSDocLinkLike: () => Ex,
      isJSDocLinkPlain: () => A0e,
      isJSDocMemberName: () => Pv,
      isJSDocNameReference: () => sw,
      isJSDocNamepathType: () => N0e,
      isJSDocNamespaceBody: () => Che,
      isJSDocNode: () => ZC,
      isJSDocNonNullableType: () => rF,
      isJSDocNullableType: () => M6,
      isJSDocOptionalParameter: () => OO,
      isJSDocOptionalType: () => Rz,
      isJSDocOverloadTag: () => j6,
      isJSDocOverrideTag: () => iF,
      isJSDocParameterTag: () => np,
      isJSDocPrivateTag: () => Jz,
      isJSDocPropertyLikeTag: () => G4,
      isJSDocPropertyTag: () => are,
      isJSDocProtectedTag: () => zz,
      isJSDocPublicTag: () => Bz,
      isJSDocReadonlyTag: () => Wz,
      isJSDocReturnTag: () => aF,
      isJSDocSatisfiesExpression: () => sz,
      isJSDocSatisfiesTag: () => oF,
      isJSDocSeeTag: () => O0e,
      isJSDocSignature: () => z0,
      isJSDocTag: () => KC,
      isJSDocTemplateTag: () => ed,
      isJSDocThisTag: () => Vz,
      isJSDocThrowsTag: () => L0e,
      isJSDocTypeAlias: () => $p,
      isJSDocTypeAssertion: () => Kb,
      isJSDocTypeExpression: () => wv,
      isJSDocTypeLiteral: () => zS,
      isJSDocTypeTag: () => ow,
      isJSDocTypedefTag: () => WS,
      isJSDocUnknownTag: () => F0e,
      isJSDocUnknownType: () => nre,
      isJSDocVariadicType: () => nF,
      isJSXTagName: () => c6,
      isJsonEqual: () => wO,
      isJsonSourceFile: () => Tp,
      isJsxAttribute: () => Om,
      isJsxAttributeLike: () => n5,
      isJsxAttributeName: () => ate,
      isJsxAttributes: () => Yb,
      isJsxCallLike: () => GZ,
      isJsxChild: () => j3,
      isJsxClosingElement: () => Qb,
      isJsxClosingFragment: () => Zte,
      isJsxElement: () => Im,
      isJsxExpression: () => O6,
      isJsxFragment: () => Dv,
      isJsxNamespacedName: () => Gd,
      isJsxOpeningElement: () => qd,
      isJsxOpeningFragment: () => yd,
      isJsxOpeningLikeElement: () => Gu,
      isJsxOpeningLikeElementTagName: () => nse,
      isJsxSelfClosingElement: () => JS,
      isJsxSpreadAttribute: () => hk,
      isJsxTagNameExpression: () => Y4,
      isJsxText: () => sk,
      isJumpStatementTarget: () => cI,
      isKeyword: () => z_,
      isKeywordOrPunctuation: () => J5,
      isKnownSymbol: () => vD,
      isLabelName: () => jV,
      isLabelOfLabeledStatement: () => RV,
      isLabeledStatement: () => c1,
      isLateVisibilityPaintedStatement: () => g5,
      isLeftHandSideExpression: () => j_,
      isLet: () => v5,
      isLineBreak: () => Uu,
      isLiteralComputedPropertyDeclarationName: () => hA,
      isLiteralExpression: () => _S,
      isLiteralExpressionOfObject: () => rB,
      isLiteralImportTypeNode: () => Bh,
      isLiteralKind: () => H4,
      isLiteralNameOfPropertyDeclarationOrIndexAccess: () => W9,
      isLiteralTypeLiteral: () => RZ,
      isLiteralTypeNode: () => B0,
      isLocalName: () => Hh,
      isLogicalOperator: () => _ee,
      isLogicalOrCoalescingAssignmentExpression: () => xJ,
      isLogicalOrCoalescingAssignmentOperator: () => kD,
      isLogicalOrCoalescingBinaryExpression: () => DA,
      isLogicalOrCoalescingBinaryOperator: () => tO,
      isMappedTypeNode: () => LS,
      isMemberName: () => Jg,
      isMetaProperty: () => RS,
      isMethodDeclaration: () => hc,
      isMethodOrAccessor: () => kx,
      isMethodSignature: () => gd,
      isMinusToken: () => Pz,
      isMissingDeclaration: () => P0e,
      isMissingPackageJsonInfo: () => lne,
      isModifier: () => hs,
      isModifierKind: () => Jy,
      isModifierLike: () => ec,
      isModuleAugmentationExternal: () => DB,
      isModuleBlock: () => Vd,
      isModuleBody: () => BZ,
      isModuleDeclaration: () => Qc,
      isModuleExportName: () => tF,
      isModuleExportsAccessExpression: () => $g,
      isModuleIdentifier: () => VB,
      isModuleName: () => Tre,
      isModuleOrEnumDeclaration: () => R3,
      isModuleReference: () => VZ,
      isModuleSpecifierLike: () => nL,
      isModuleWithStringLiteralName: () => m5,
      isNameOfFunctionDeclaration: () => WV,
      isNameOfModuleDeclaration: () => zV,
      isNamedDeclaration: () => Bl,
      isNamedEvaluation: () => hf,
      isNamedEvaluationSource: () => iJ,
      isNamedExportBindings: () => eB,
      isNamedExports: () => Pp,
      isNamedImportBindings: () => _B,
      isNamedImports: () => Nm,
      isNamedImportsOrExports: () => lO,
      isNamedTupleMember: () => w6,
      isNamespaceBody: () => khe,
      isNamespaceExport: () => gg,
      isNamespaceExportDeclaration: () => cN,
      isNamespaceImport: () => nh,
      isNamespaceReexportDeclaration: () => NK,
      isNewExpression: () => Xb,
      isNewExpressionTarget: () => Bw,
      isNewScopeNode: () => fte,
      isNoSubstitutionTemplateLiteral: () => IS,
      isNodeArray: () => Cb,
      isNodeArrayMultiLine: () => bee,
      isNodeDescendantOf: () => Lb,
      isNodeKind: () => Q7,
      isNodeLikeSystem: () => cj,
      isNodeModulesDirectory: () => M7,
      isNodeWithPossibleHoistedDeclaration: () => VK,
      isNonContextualKeyword: () => tJ,
      isNonGlobalAmbientModule: () => EB,
      isNonNullAccess: () => ite,
      isNonNullChain: () => X7,
      isNonNullExpression: () => mk,
      isNonStaticMethodOrAccessorWithPrivateName: () => zne,
      isNotEmittedStatement: () => Yte,
      isNullishCoalesce: () => Kj,
      isNumber: () => Ay,
      isNumericLiteral: () => V_,
      isNumericLiteralName: () => eh,
      isObjectBindingElementWithoutPropertyName: () => gI,
      isObjectBindingOrAssignmentElement: () => O3,
      isObjectBindingOrAssignmentPattern: () => sB,
      isObjectBindingPattern: () => rp,
      isObjectLiteralElement: () => fB,
      isObjectLiteralElementLike: () => zg,
      isObjectLiteralExpression: () => bs,
      isObjectLiteralMethod: () => Hp,
      isObjectLiteralOrClassExpressionMethodOrAccessor: () => x5,
      isObjectTypeDeclaration: () => Gx,
      isOmittedExpression: () => Al,
      isOptionalChain: () => Vu,
      isOptionalChainRoot: () => U4,
      isOptionalDeclaration: () => ek,
      isOptionalJSDocPropertyLikeTag: () => HA,
      isOptionalTypeNode: () => QO,
      isOuterExpression: () => uF,
      isOutermostOptionalChain: () => V4,
      isOverrideModifier: () => Wte,
      isPackageJsonInfo: () => MF,
      isPackedArrayLiteral: () => iz,
      isParameter: () => Fi,
      isParameterPropertyDeclaration: () => df,
      isParameterPropertyModifier: () => $4,
      isParenthesizedExpression: () => E_,
      isParenthesizedTypeNode: () => FS,
      isParseTreeNode: () => W4,
      isPartOfParameterDeclaration: () => mv,
      isPartOfTypeNode: () => Sm,
      isPartOfTypeOnlyImportOrExportDeclaration: () => AZ,
      isPartOfTypeQuery: () => N5,
      isPartiallyEmittedExpression: () => Gte,
      isPatternMatch: () => T7,
      isPinnedComment: () => p5,
      isPlainJsFile: () => K4,
      isPlusToken: () => wz,
      isPossiblyTypeArgumentPosition: () => _I,
      isPostfixUnaryExpression: () => Oz,
      isPotentiallyExecutableNode: () => $D,
      isPrefixUnaryExpression: () => kv,
      isPrimitiveLiteralValue: () => MO,
      isPrivateIdentifier: () => Oi,
      isPrivateIdentifierClassElementDeclaration: () => qu,
      isPrivateIdentifierPropertyAccessExpression: () => QC,
      isPrivateIdentifierSymbol: () => nJ,
      isProgramUptoDate: () => LU,
      isPrologueDirective: () => bm,
      isPropertyAccessChain: () => H7,
      isPropertyAccessEntityNameExpression: () => PA,
      isPropertyAccessExpression: () => Ln,
      isPropertyAccessOrQualifiedName: () => L3,
      isPropertyAccessOrQualifiedNameOrImportTypeNode: () => LZ,
      isPropertyAssignment: () => ol,
      isPropertyDeclaration: () => ga,
      isPropertyName: () => il,
      isPropertyNameLiteral: () => Tm,
      isPropertySignature: () => f_,
      isPrototypeAccess: () => Ky,
      isPrototypePropertyAssignment: () => uA,
      isPunctuation: () => eJ,
      isPushOrUnshiftIdentifier: () => aJ,
      isQualifiedName: () => k_,
      isQuestionDotToken: () => $O,
      isQuestionOrExclamationToken: () => yre,
      isQuestionOrPlusOrMinusToken: () => Sre,
      isQuestionToken: () => a1,
      isReadonlyKeyword: () => Jte,
      isReadonlyKeywordOrPlusOrMinusToken: () => bre,
      isRecognizedTripleSlashComment: () => SB,
      isReferenceFileLocation: () => tE,
      isReferencedFile: () => Rv,
      isRegularExpressionLiteral: () => Ez,
      isRequireCall: () => J_,
      isRequireVariableStatement: () => iA,
      isRestParameter: () => cg,
      isRestTypeNode: () => YO,
      isReturnStatement: () => zf,
      isReturnStatementWithFixablePromiseHandler: () => kL,
      isRightSideOfAccessExpression: () => EJ,
      isRightSideOfInstanceofExpression: () => pee,
      isRightSideOfPropertyAccess: () => sE,
      isRightSideOfQualifiedName: () => ise,
      isRightSideOfQualifiedNameOrPropertyAccess: () => CD,
      isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName: () => fee,
      isRootedDiskPath: () => pf,
      isSameEntityName: () => l6,
      isSatisfiesExpression: () => N6,
      isSemicolonClassElement: () => Hte,
      isSetAccessor: () => vm,
      isSetAccessorDeclaration: () => ef,
      isShiftOperatorOrHigher: () => rW,
      isShorthandAmbientModuleSymbol: () => V3,
      isShorthandPropertyAssignment: () => Nu,
      isSideEffectImport: () => _z,
      isSignedNumericLiteral: () => W5,
      isSimpleCopiableExpression: () => r2,
      isSimpleInlineableExpression: () => Lm,
      isSimpleParameterList: () => RN,
      isSingleOrDoubleQuote: () => aA,
      isSolutionConfig: () => kW,
      isSourceElement: () => ote,
      isSourceFile: () => Pi,
      isSourceFileFromLibrary: () => gE,
      isSourceFileJS: () => T_,
      isSourceFileNotJson: () => O5,
      isSourceMapping: () => jne,
      isSpecialPropertyDeclaration: () => MK,
      isSpreadAssignment: () => ih,
      isSpreadElement: () => wp,
      isStatement: () => Ei,
      isStatementButNotDeclaration: () => r5,
      isStatementOrBlock: () => UZ,
      isStatementWithLocals: () => tK,
      isStatic: () => es,
      isStaticModifier: () => lk,
      isString: () => Ta,
      isStringANonContextualKeyword: () => Jx,
      isStringAndEmptyAnonymousObjectIntersection: () => gse,
      isStringDoubleQuoted: () => L5,
      isStringLiteral: () => Ts,
      isStringLiteralLike: () => Xs,
      isStringLiteralOrJsxExpression: () => qZ,
      isStringLiteralOrTemplate: () => Fse,
      isStringOrNumericLiteralLike: () => ep,
      isStringOrRegularExpressionOrTemplateLiteral: () => QV,
      isStringTextContainingNode: () => nB,
      isSuperCall: () => hS,
      isSuperKeyword: () => KD,
      isSuperProperty: () => Z_,
      isSupportedSourceFileName: () => YJ,
      isSwitchStatement: () => iw,
      isSyntaxList: () => B6,
      isSyntheticExpression: () => T0e,
      isSyntheticReference: () => gk,
      isTagName: () => BV,
      isTaggedTemplateExpression: () => xv,
      isTaggedTemplateTag: () => tse,
      isTemplateExpression: () => KO,
      isTemplateHead: () => ok,
      isTemplateLiteral: () => Cx,
      isTemplateLiteralKind: () => jy,
      isTemplateLiteralToken: () => wZ,
      isTemplateLiteralTypeNode: () => Vte,
      isTemplateLiteralTypeSpan: () => Iz,
      isTemplateMiddle: () => Dz,
      isTemplateMiddleOrTemplateTail: () => Y7,
      isTemplateSpan: () => I6,
      isTemplateTail: () => GO,
      isTextWhiteSpaceLike: () => Tse,
      isThis: () => oE,
      isThisContainerOrFunctionBlock: () => wK,
      isThisIdentifier: () => Zy,
      isThisInTypeQuery: () => jb,
      isThisInitializedDeclaration: () => w5,
      isThisInitializedObjectBindingExpression: () => AK,
      isThisProperty: () => eA,
      isThisTypeNode: () => rw,
      isThisTypeParameter: () => VD,
      isThisTypePredicate: () => CK,
      isThrowStatement: () => Mz,
      isToken: () => Tx,
      isTokenKind: () => tB,
      isTraceEnabled: () => _1,
      isTransientSymbol: () => Ug,
      isTrivia: () => p6,
      isTryStatement: () => jS,
      isTupleTypeNode: () => fk,
      isTypeAlias: () => pA,
      isTypeAliasDeclaration: () => Kp,
      isTypeAssertionExpression: () => ZO,
      isTypeDeclaration: () => Kx,
      isTypeElement: () => Eb,
      isTypeKeyword: () => Uw,
      isTypeKeywordTokenOrIdentifier: () => eL,
      isTypeLiteralNode: () => C_,
      isTypeNode: () => ui,
      isTypeNodeKind: () => MJ,
      isTypeOfExpression: () => P6,
      isTypeOnlyExportDeclaration: () => PZ,
      isTypeOnlyImportDeclaration: () => XC,
      isTypeOnlyImportOrExportDeclaration: () => C0,
      isTypeOperatorNode: () => Tv,
      isTypeParameterDeclaration: () => $o,
      isTypePredicateNode: () => _k,
      isTypeQueryNode: () => Gb,
      isTypeReferenceNode: () => xf,
      isTypeReferenceType: () => pB,
      isTypeUsableAsPropertyName: () => Cp,
      isUMDExportSymbol: () => cO,
      isUnaryExpression: () => lB,
      isUnaryExpressionWithWrite: () => MZ,
      isUnicodeIdentifierStart: () => j7,
      isUnionTypeNode: () => j0,
      isUrl: () => UY,
      isValidBigIntString: () => PO,
      isValidESSymbolDeclaration: () => TK,
      isValidTypeOnlyAliasUseSite: () => vv,
      isValueSignatureDeclaration: () => xS,
      isVarAwaitUsing: () => X3,
      isVarConst: () => i6,
      isVarConstLike: () => vK,
      isVarUsing: () => Q3,
      isVariableDeclaration: () => ci,
      isVariableDeclarationInVariableStatement: () => nD,
      isVariableDeclarationInitializedToBareOrAccessedRequire: () => $y,
      isVariableDeclarationInitializedToRequire: () => cD,
      isVariableDeclarationList: () => iu,
      isVariableLike: () => rD,
      isVariableStatement: () => $c,
      isVoidExpression: () => dk,
      isWatchSet: () => OJ,
      isWhileStatement: () => Lz,
      isWhiteSpaceLike: () => Rg,
      isWhiteSpaceSingleLine: () => hm,
      isWithStatement: () => $te,
      isWriteAccess: () => qx,
      isWriteOnlyAccess: () => oO,
      isYieldExpression: () => sN,
      jsxModeNeedsExplicitImport: () => Nq,
      keywordPart: () => wf,
      last: () => ws,
      lastOrUndefined: () => Wo,
      length: () => It,
      libMap: () => yF,
      libs: () => hF,
      lineBreakPart: () => pE,
      loadModuleFromGlobalCache: () => Sne,
      loadWithModeAwareCache: () => $N,
      makeIdentifierFromModuleName: () => oK,
      makeImport: () => y1,
      makeStringLiteral: () => Vw,
      mangleScopedPackageName: () => Q6,
      map: () => or,
      mapAllOrFail: () => kl,
      mapDefined: () => Rn,
      mapDefinedIterator: () => Go,
      mapEntries: () => lQ,
      mapIterator: () => cx,
      mapOneOrMany: () => Dq,
      mapToDisplayParts: () => v1,
      matchFiles: () => $J,
      matchPatternOrExact: () => KJ,
      matchedText: () => kQ,
      matchesExclude: () => NF,
      matchesExcludeWorker: () => IF,
      maxBy: () => ej,
      maybeBind: () => Ua,
      maybeSetLocalizedDiagnosticMessages: () => Pee,
      memoize: () => s_,
      memoizeOne: () => gm,
      min: () => tj,
      minAndMax: () => $ee,
      missingFileModifiedTime: () => ff,
      modifierToFlag: () => Ux,
      modifiersToFlags: () => Cm,
      moduleExportNameIsDefault: () => lg,
      moduleExportNameTextEscaped: () => Ab,
      moduleExportNameTextUnescaped: () => Gy,
      moduleOptionDeclaration: () => Fre,
      moduleResolutionIsEqualTo: () => KZ,
      moduleResolutionNameAndModeGetter: () => l9,
      moduleResolutionOptionDeclarations: () => _W,
      moduleResolutionSupportsPackageJsonExportsAndImports: () => S6,
      moduleResolutionUsesNodeModules: () => tL,
      moduleSpecifierToValidIdentifier: () => kI,
      moduleSpecifiers: () => $h,
      moduleSupportsImportAttributes: () => Fee,
      moduleSymbolToValidIdentifier: () => xI,
      moveEmitHelpers: () => Dte,
      moveRangeEnd: () => aO,
      moveRangePastDecorators: () => Vh,
      moveRangePastModifiers: () => Em,
      moveRangePos: () => hv,
      moveSyntheticComments: () => kte,
      mutateMap: () => AD,
      mutateMapSkippingNewValues: () => Qg,
      needsParentheses: () => oL,
      needsScopeMarker: () => e5,
      newCaseClauseTracker: () => vL,
      newPrivateEnvironment: () => Une,
      noEmitNotification: () => zN,
      noEmitSubstitution: () => Dw,
      noTransformers: () => bie,
      noTruncationMaximumTruncationLength: () => gB,
      nodeCanBeDecorated: () => rA,
      nodeCoreModules: () => nk,
      nodeHasName: () => E3,
      nodeIsDecorated: () => o6,
      nodeIsMissing: () => Nc,
      nodeIsPresent: () => Gp,
      nodeIsSynthesized: () => wo,
      nodeModuleNameResolver: () => dne,
      nodeModulesPathPart: () => ah,
      nodeNextJsonConfigResolver: () => mne,
      nodeOrChildIsDecorated: () => nA,
      nodeOverlapsWithStartEnd: () => U9,
      nodePosToString: () => whe,
      nodeSeenTracker: () => uE,
      nodeStartsNewLexicalEnvironment: () => sJ,
      noop: () => so,
      noopFileWatcher: () => iE,
      normalizePath: () => us,
      normalizeSlashes: () => ru,
      normalizeSpans: () => Vj,
      not: () => k7,
      notImplemented: () => is,
      notImplementedResolver: () => Eie,
      nullNodeConverters: () => Ste,
      nullParenthesizerRules: () => vte,
      nullTransformationContext: () => UN,
      objectAllocator: () => gu,
      operatorPart: () => Gw,
      optionDeclarations: () => $d,
      optionMapToObject: () => CF,
      optionsAffectingProgramStructure: () => jre,
      optionsForBuild: () => pW,
      optionsForWatch: () => xk,
      optionsHaveChanges: () => wx,
      or: () => _f,
      orderedRemoveItem: () => k4,
      orderedRemoveItemAt: () => Iy,
      packageIdToPackageName: () => _5,
      packageIdToString: () => sv,
      parameterIsThisKeyword: () => Yy,
      parameterNamePart: () => kse,
      parseBaseNodeFactory: () => wre,
      parseBigInt: () => Qee,
      parseBuildCommand: () => Gre,
      parseCommandLine: () => Vre,
      parseCommandLineWorker: () => dW,
      parseConfigFileTextToJson: () => gW,
      parseConfigFileWithSystem: () => uae,
      parseConfigHostFromCompilerHostLike: () => m9,
      parseCustomTypeOption: () => TF,
      parseIsolatedEntityName: () => Tk,
      parseIsolatedJSDocComment: () => Are,
      parseJSDocTypeExpressionForTests: () => aye,
      parseJsonConfigFileContent: () => Lye,
      parseJsonSourceFileConfigFileContent: () => EN,
      parseJsonText: () => bN,
      parseListTypeOption: () => Wre,
      parseNodeFactory: () => Nv,
      parseNodeModuleFromPath: () => AN,
      parsePackageName: () => BF,
      parsePseudoBigInt: () => JD,
      parseValidBigInt: () => rz,
      pasteEdits: () => AH,
      patchWriteFileEnsuringDirectory: () => WY,
      pathContainsNodeModules: () => p1,
      pathIsAbsolute: () => O4,
      pathIsBareSpecifier: () => Fj,
      pathIsRelative: () => Bf,
      patternText: () => xQ,
      performIncrementalCompilation: () => _ae,
      performance: () => IQ,
      positionBelongsToNode: () => UV,
      positionIsASICandidate: () => uL,
      positionIsSynthesized: () => Wd,
      positionsAreOnSameLine: () => xp,
      preProcessFile: () => V2e,
      probablyUsesSemicolons: () => SI,
      processCommentPragmas: () => cW,
      processPragmasIntoFields: () => lW,
      processTaggedTemplateExpression: () => lU,
      programContainsEsModules: () => bse,
      programContainsModules: () => vse,
      projectReferenceIsEqualTo: () => hB,
      propertyNamePart: () => Cse,
      pseudoBigIntToString: () => Ub,
      punctuationPart: () => Yu,
      pushIfUnique: () => hp,
      quote: () => Xw,
      quotePreferenceFromString: () => sq,
      rangeContainsPosition: () => cE,
      rangeContainsPositionExclusive: () => lI,
      rangeContainsRange: () => W_,
      rangeContainsRangeExclusive: () => sse,
      rangeContainsStartEnd: () => uI,
      rangeEndIsOnSameLineAsRangeStart: () => IA,
      rangeEndPositionsAreOnSameLine: () => yee,
      rangeEquals: () => GR,
      rangeIsOnSingleLine: () => DS,
      rangeOfNode: () => ez,
      rangeOfTypeParameters: () => tz,
      rangeOverlapsWithStartEnd: () => Jw,
      rangeStartIsOnSameLineAsRangeEnd: () => vee,
      rangeStartPositionsAreOnSameLine: () => sO,
      readBuilderProgram: () => E9,
      readConfigFile: () => kN,
      readJson: () => y6,
      readJsonConfigFile: () => Hre,
      readJsonOrUndefined: () => wJ,
      reduceEachLeadingCommentRange: () => YY,
      reduceEachTrailingCommentRange: () => ZY,
      reduceLeft: () => a_,
      reduceLeftIterator: () => qo,
      reducePathComponents: () => yx,
      refactor: () => jk,
      regExpEscape: () => r0e,
      regularExpressionFlagToCharacterCode: () => rhe,
      relativeComplement: () => _Q,
      removeAllComments: () => KA,
      removeEmitHelper: () => y0e,
      removeExtension: () => VA,
      removeFileExtension: () => __,
      removeIgnoredPath: () => v9,
      removeMinAndVersionNumbers: () => ij,
      removePrefix: () => C4,
      removeSuffix: () => zC,
      removeTrailingDirectorySeparator: () => T0,
      repeatString: () => dI,
      replaceElement: () => XR,
      replaceFirstStar: () => PS,
      resolutionExtensionIsTSOrJson: () => MD,
      resolveConfigFileProjectName: () => pV,
      resolveJSModule: () => _ne,
      resolveLibrary: () => jF,
      resolveModuleName: () => qS,
      resolveModuleNameFromCache: () => _1e,
      resolvePackageNameToPackageJson: () => wW,
      resolvePath: () => Fy,
      resolveProjectReferencePath: () => Ak,
      resolveTripleslashReference: () => CU,
      resolveTypeReferenceDirective: () => one,
      resolvingEmptyArray: () => mB,
      returnFalse: () => Mh,
      returnNoopFileWatcher: () => Mw,
      returnTrue: () => Sb,
      returnUndefined: () => Tb,
      returnsPromise: () => qq,
      rewriteModuleSpecifier: () => Dk,
      sameFlatMap: () => Rs,
      sameMap: () => el,
      sameMapping: () => eve,
      scanTokenAtPosition: () => yK,
      scanner: () => su,
      semanticDiagnosticsOptionDeclarations: () => Lre,
      serializeCompilerOptions: () => SW,
      server: () => Kwe,
      servicesVersion: () => OTe,
      setCommentRange: () => fl,
      setConfigFileInOptions: () => TW,
      setConstantValue: () => Ete,
      setEmitFlags: () => ln,
      setGetSourceFileAsHashVersioned: () => C9,
      setIdentifierAutoGenerate: () => rN,
      setIdentifierGeneratedImportReference: () => Ate,
      setIdentifierTypeArguments: () => R0,
      setInternalEmitFlags: () => eN,
      setLocalizedDiagnosticMessages: () => wee,
      setNodeChildren: () => sre,
      setNodeFlags: () => Kee,
      setObjectAllocator: () => Dee,
      setOriginalNode: () => Fn,
      setParent: () => eo,
      setParentRecursive: () => bv,
      setPrivateIdentifier: () => HS,
      setSnippetElement: () => kz,
      setSourceMapRange: () => As,
      setStackTraceLimit: () => Bge,
      setStartsOnNewLine: () => WO,
      setSyntheticLeadingComments: () => Sv,
      setSyntheticTrailingComments: () => ik,
      setSys: () => qge,
      setSysLog: () => BY,
      setTextRange: () => pt,
      setTextRangeEnd: () => k6,
      setTextRangePos: () => zD,
      setTextRangePosEnd: () => Ud,
      setTextRangePosWidth: () => nz,
      setTokenSourceMapRange: () => xte,
      setTypeNode: () => wte,
      setUILocale: () => bQ,
      setValueDeclaration: () => _D,
      shouldAllowImportingTsExtension: () => Y6,
      shouldPreserveConstEnums: () => e1,
      shouldRewriteModuleSpecifier: () => fA,
      shouldUseUriStyleNodeCoreModules: () => hL,
      showModuleSpecifier: () => kee,
      signatureHasRestParameter: () => Qu,
      signatureToDisplayParts: () => hq,
      single: () => $R,
      singleElementArray: () => dx,
      singleIterator: () => Fh,
      singleOrMany: () => ig,
      singleOrUndefined: () => Fg,
      skipAlias: () => mu,
      skipConstraint: () => nq,
      skipOuterExpressions: () => Ic,
      skipParentheses: () => Gs,
      skipPartiallyEmittedExpressions: () => fd,
      skipTrivia: () => gs,
      skipTypeChecking: () => x6,
      skipTypeCheckingIgnoringNoCheck: () => Xee,
      skipTypeParentheses: () => pD,
      skipWhile: () => EQ,
      sliceAfter: () => Hee,
      some: () => _t,
      sortAndDeduplicate: () => x4,
      sortAndDeduplicateDiagnostics: () => GC,
      sourceFileAffectingCompilerOptions: () => fW,
      sourceFileMayBeEmitted: () => gv,
      sourceMapCommentRegExp: () => YW,
      sourceMapCommentRegExpDontCareLineStart: () => Lne,
      spacePart: () => Ec,
      spanMap: () => tS,
      startEndContainsRange: () => NJ,
      startEndOverlapsWithStartEnd: () => V9,
      startOnNewLine: () => Xu,
      startTracing: () => MQ,
      startsWith: () => ta,
      startsWithDirectory: () => Rj,
      startsWithUnderscore: () => Aq,
      startsWithUseStrict: () => pre,
      stringContainsAt: () => zse,
      stringToToken: () => oS,
      stripQuotes: () => Qp,
      supportedDeclarationExtensions: () => CO,
      supportedJSExtensionsFlat: () => T6,
      supportedLocaleDirectories: () => pZ,
      supportedTSExtensionsFlat: () => XJ,
      supportedTSImplementationExtensions: () => zA,
      suppressLeadingAndTrailingTrivia: () => Tf,
      suppressLeadingTrivia: () => yz,
      suppressTrailingTrivia: () => dte,
      symbolEscapedNameNoDefault: () => rL,
      symbolName: () => kc,
      symbolNameNoDefault: () => cq,
      symbolToDisplayParts: () => Hw,
      sys: () => Cl,
      sysLog: () => d3,
      tagNamesAreEquivalent: () => Ov,
      takeWhile: () => oj,
      targetOptionDeclaration: () => uW,
      targetToLibMap: () => KY,
      testFormatSettings: () => f2e,
      textChangeRangeIsUnchanged: () => cZ,
      textChangeRangeNewSpan: () => z4,
      textChanges: () => on,
      textOrKeywordPart: () => gq,
      textPart: () => sp,
      textRangeContainsPositionInclusive: () => T3,
      textRangeContainsTextSpan: () => rZ,
      textRangeIntersectsWithTextSpan: () => sZ,
      textSpanContainsPosition: () => Wj,
      textSpanContainsTextRange: () => Uj,
      textSpanContainsTextSpan: () => tZ,
      textSpanEnd: () => dc,
      textSpanIntersection: () => oZ,
      textSpanIntersectsWith: () => x3,
      textSpanIntersectsWithPosition: () => aZ,
      textSpanIntersectsWithTextSpan: () => iZ,
      textSpanIsEmpty: () => eZ,
      textSpanOverlap: () => nZ,
      textSpanOverlapsWith: () => uhe,
      textSpansEqual: () => fE,
      textToKeywordObj: () => R7,
      timestamp: () => ko,
      toArray: () => fx,
      toBuilderFileEmit: () => Kie,
      toBuilderStateFileInfoForMultiEmit: () => Zie,
      toEditorSettings: () => II,
      toFileNameLowerCase: () => Ny,
      toPath: () => Eo,
      toProgramEmitPending: () => eae,
      toSorted: () => uf,
      tokenIsIdentifierOrKeyword: () => M_,
      tokenIsIdentifierOrKeywordOrGreaterThan: () => qY,
      tokenToString: () => as,
      trace: () => _a,
      tracing: () => sn,
      tracingEnabled: () => p3,
      transferSourceFileChildren: () => ore,
      transform: () => UTe,
      transformClassFields: () => Kne,
      transformDeclarations: () => fU,
      transformECMAScriptModule: () => _U,
      transformES2015: () => pie,
      transformES2016: () => fie,
      transformES2017: () => nie,
      transformES2018: () => iie,
      transformES2019: () => aie,
      transformES2020: () => sie,
      transformES2021: () => oie,
      transformESDecorators: () => rie,
      transformESNext: () => cie,
      transformGenerators: () => die,
      transformImpliedNodeFormatDependentModule: () => gie,
      transformJsx: () => _ie,
      transformLegacyDecorators: () => tie,
      transformModule: () => uU,
      transformNamedEvaluation: () => Cf,
      transformNodes: () => WN,
      transformSystemModule: () => mie,
      transformTypeScript: () => Zne,
      transpile: () => K2e,
      transpileDeclaration: () => Y2e,
      transpileModule: () => uoe,
      transpileOptionValueCompilerOptions: () => Bre,
      tryAddToSet: () => b_,
      tryAndIgnoreErrors: () => pL,
      tryCast: () => qn,
      tryDirectoryExists: () => fL,
      tryExtractTSExtension: () => iO,
      tryFileExists: () => Yw,
      tryGetClassExtendingExpressionWithTypeArguments: () => kJ,
      tryGetClassImplementingOrExtendingExpressionWithTypeArguments: () => CJ,
      tryGetDirectories: () => _L,
      tryGetExtensionFromPath: () => Kg,
      tryGetImportFromModuleSpecifier: () => _A,
      tryGetJSDocSatisfiesTypeNode: () => FO,
      tryGetModuleNameFromFile: () => dN,
      tryGetModuleSpecifierFromDeclaration: () => Fx,
      tryGetNativePerformanceHooks: () => NQ,
      tryGetPropertyAccessOrIdentifierToString: () => AA,
      tryGetPropertyNameOfBindingOrAssignmentElement: () => fF,
      tryGetSourceMappingURL: () => Mne,
      tryGetTextOfPropertyName: () => tD,
      tryParseJson: () => NA,
      tryParsePattern: () => Zx,
      tryParsePatterns: () => qA,
      tryParseRawSourceMap: () => Rne,
      tryReadDirectory: () => xq,
      tryReadFile: () => fw,
      tryRemoveDirectoryPrefix: () => qJ,
      tryRemoveExtension: () => Gee,
      tryRemovePrefix: () => sj,
      tryRemoveSuffix: () => TQ,
      tscBuildOption: () => kk,
      typeAcquisitionDeclarations: () => bF,
      typeAliasNamePart: () => Ese,
      typeDirectiveIsEqualTo: () => eK,
      typeKeywords: () => rq,
      typeParameterNamePart: () => Dse,
      typeToDisplayParts: () => yI,
      unchangedPollThresholds: () => A7,
      unchangedTextChangeRange: () => z7,
      unescapeLeadingUnderscores: () => Ti,
      unmangleScopedPackageName: () => IN,
      unorderedRemoveItem: () => px,
      unprefixedNodeCoreModules: () => _te,
      unsetNodeChildren: () => Gz,
      unwrapInnermostStatementOfLabel: () => BB,
      unwrapParenthesizedExpression: () => lte,
      updateErrorForNoInputFiles: () => AF,
      updateLanguageServiceSourceFile: () => vG,
      updateMissingFilePathsWatch: () => TU,
      updateResolutionField: () => G6,
      updateSharedExtendedConfigFileWatcher: () => a9,
      updateSourceFile: () => sW,
      updateWatchingWildcardDirectories: () => qN,
      usesWildcardTypes: () => yv,
      usingSingleLineStringWriter: () => e6,
      utf16EncodeAsString: () => J4,
      validateLocaleAndSetLanguage: () => Gj,
      version: () => Qr,
      versionMajorMinor: () => Un,
      visitArray: () => bw,
      visitCommaListElements: () => LN,
      visitEachChild: () => Tr,
      visitFunctionBody: () => ap,
      visitIterationBody: () => D_,
      visitLexicalEnvironment: () => QW,
      visitNode: () => Ze,
      visitNodes: () => Fr,
      visitParameterList: () => Cc,
      walkUpBindingElementsAndPatterns: () => cS,
      walkUpOuterExpressions: () => dre,
      walkUpParenthesizedExpressions: () => dd,
      walkUpParenthesizedTypes: () => gA,
      walkUpParenthesizedTypesAndGetParentAndChild: () => qK,
      whitespaceOrMapCommentRegExp: () => ZW,
      writeCommentRange: () => h6,
      writeFile: () => Z5,
      writeFileEnsuringDirectories: () => hJ,
      zipWith: () => Ds
    });
    var pKe = !0, Qwe;
    function dKe() {
      return Qwe ?? (Qwe = new Ld(Qr));
    }
    function Ywe(e, t, n, i, a) {
      let o = t ? "DeprecationError: " : "DeprecationWarning: ";
      return o += `'${e}' `, o += i ? `has been deprecated since v${i}` : "is deprecated", o += t ? " and can no longer be used." : n ? ` and will no longer be usable after v${n}.` : ".", o += a ? ` ${Yg(a, [e])}` : "", o;
    }
    function mKe(e, t, n, i) {
      const a = Ywe(e, !0, t, n, i);
      return () => {
        throw new TypeError(a);
      };
    }
    function gKe(e, t, n, i) {
      let a = !1;
      return () => {
        pKe && !a && (E.log.warn(Ywe(e, !1, t, n, i)), a = !0);
      };
    }
    function hKe(e, t = {}) {
      const n = typeof t.typeScriptVersion == "string" ? new Ld(t.typeScriptVersion) : t.typeScriptVersion ?? dKe(), i = typeof t.errorAfter == "string" ? new Ld(t.errorAfter) : t.errorAfter, a = typeof t.warnAfter == "string" ? new Ld(t.warnAfter) : t.warnAfter, o = typeof t.since == "string" ? new Ld(t.since) : t.since ?? a, c = t.error || i && n.compareTo(i) >= 0, _ = !a || n.compareTo(a) >= 0;
      return c ? mKe(e, i, o, t.message) : _ ? gKe(e, i, o, t.message) : so;
    }
    function yKe(e, t) {
      return function() {
        return e(), t.apply(this, arguments);
      };
    }
    function vKe(e, t) {
      return yKe(hKe(t?.name ?? E.getFunctionName(e), t), e);
    }
    function NH(e, t, n, i) {
      if (Object.defineProperty(o, "name", {
        ...Object.getOwnPropertyDescriptor(o, "name"),
        value: e
      }), i) for (const c of Object.keys(i)) {
        const _ = +c;
        !isNaN(_) && po(t, `${_}`) && (t[_] = vKe(t[_], {
          ...i[_],
          name: e
        }));
      }
      const a = bKe(t, n);
      return o;
      function o(...c) {
        const _ = a(c), u = _ !== void 0 ? t[_] : void 0;
        if (typeof u == "function") return u(...c);
        throw new TypeError("Invalid arguments");
      }
    }
    function bKe(e, t) {
      return (n) => {
        for (let i = 0; po(e, `${i}`) && po(t, `${i}`); i++) {
          const a = t[i];
          if (a(n)) return i;
        }
      };
    }
    function Zwe(e) {
      return { overload: (t) => ({ bind: (n) => ({
        finish: () => NH(e, t, n),
        deprecate: (i) => ({ finish: () => NH(e, t, n, i) })
      }) }) };
    }
    var Kwe = {};
    gi(Kwe, {
      ActionInvalidate: () => F9,
      ActionPackageInstalled: () => iI,
      ActionSet: () => O9,
      ActionWatchTypingLocations: () => aI,
      Arguments: () => PV,
      AutoImportProviderProject: () => Z_e,
      AuxiliaryProject: () => Q_e,
      CharRangeSection: () => kfe,
      CloseFileWatcherEvent: () => VH,
      CommandNames: () => NPe,
      ConfigFileDiagEvent: () => BH,
      ConfiguredProject: () => K_e,
      ConfiguredProjectLoadKind: () => afe,
      CreateDirectoryWatcherEvent: () => UH,
      CreateFileWatcherEvent: () => WH,
      Errors: () => Kh,
      EventBeginInstallTypes: () => DV,
      EventEndInstallTypes: () => wV,
      EventInitializationFailed: () => Rae,
      EventTypesRegistry: () => EV,
      ExternalProject: () => OH,
      GcTimer: () => j_e,
      InferredProject: () => X_e,
      LargeFileReferencedEvent: () => jH,
      LineIndex: () => _8,
      LineLeaf: () => dM,
      LineNode: () => wE,
      LogLevel: () => P_e,
      Msg: () => A_e,
      OpenFileInfoTelemetryEvent: () => efe,
      Project: () => $k,
      ProjectInfoTelemetryEvent: () => zH,
      ProjectKind: () => dP,
      ProjectLanguageServiceStateEvent: () => JH,
      ProjectLoadingFinishEvent: () => RH,
      ProjectLoadingStartEvent: () => MH,
      ProjectService: () => dfe,
      ProjectsUpdatedInBackgroundEvent: () => _M,
      ScriptInfo: () => W_e,
      ScriptVersionCache: () => r$,
      Session: () => BPe,
      TextStorage: () => z_e,
      ThrottledOperations: () => R_e,
      TypingsInstallerAdapter: () => qPe,
      allFilesAreJsOrDts: () => G_e,
      allRootFilesAreJsOrDts: () => q_e,
      asNormalizedPath: () => nPe,
      convertCompilerOptions: () => fM,
      convertFormatOptions: () => CE,
      convertScriptKindName: () => GH,
      convertTypeAcquisition: () => rfe,
      convertUserPreferences: () => nfe,
      convertWatchOptions: () => l8,
      countEachFileTypes: () => a8,
      createInstallTypingsRequest: () => N_e,
      createModuleSpecifierCache: () => hfe,
      createNormalizedPathMap: () => iPe,
      createPackageJsonCache: () => yfe,
      createSortedArray: () => M_e,
      emptyArray: () => Nl,
      findArgument: () => i2e,
      formatDiagnosticToProtocol: () => u8,
      formatMessage: () => vfe,
      getBaseConfigFileName: () => IH,
      getDetailWatchInfo: () => QH,
      getLocationInNewDocument: () => xfe,
      hasArgument: () => n2e,
      hasNoTypeScriptSource: () => H_e,
      indent: () => jw,
      isBackgroundProject: () => o8,
      isConfigFile: () => mfe,
      isConfiguredProject: () => $0,
      isDynamicFileName: () => pP,
      isExternalProject: () => s8,
      isInferredProject: () => Xk,
      isInferredProjectName: () => I_e,
      isProjectDeferredClose: () => c8,
      makeAutoImportProviderProjectName: () => F_e,
      makeAuxiliaryProjectName: () => L_e,
      makeInferredProjectName: () => O_e,
      maxFileSize: () => LH,
      maxProgramSizeForNonTsFiles: () => FH,
      normalizedPathToPath: () => kE,
      nowString: () => a2e,
      nullCancellationToken: () => wPe,
      nullTypingsInstaller: () => pM,
      protocol: () => B_e,
      scriptInfoIsContainedByBackgroundProject: () => U_e,
      scriptInfoIsContainedByDeferredClosedProject: () => V_e,
      stringifyIndented: () => jv,
      toEvent: () => bfe,
      toNormalizedPath: () => ho,
      tryConvertScriptKindName: () => qH,
      typingsInstaller: () => w_e,
      updateProjectIfDirty: () => nd
    });
    var w_e = {};
    gi(w_e, {
      TypingsInstaller: () => xKe,
      getNpmCommandForInstallation: () => tPe,
      installNpmPackages: () => TKe,
      typingsName: () => rPe
    });
    var SKe = {
      isEnabled: () => !1,
      writeLine: so
    };
    function ePe(e, t, n, i) {
      try {
        const a = qS(t, jn(e, "index.d.ts"), { moduleResolution: 2 }, n);
        return a.resolvedModule && a.resolvedModule.resolvedFileName;
      } catch (a) {
        i.isEnabled() && i.writeLine(`Failed to resolve ${t} in folder '${e}': ${a.message}`);
        return;
      }
    }
    function TKe(e, t, n, i) {
      let a = !1;
      for (let o = n.length; o > 0; ) {
        const c = tPe(e, t, n, o);
        o = c.remaining, a = i(c.command) || a;
      }
      return a;
    }
    function tPe(e, t, n, i) {
      const a = n.length - i;
      let o, c = i;
      for (; o = `${e} install --ignore-scripts ${(c === n.length ? n : n.slice(a, a + c)).join(" ")} --save-dev --user-agent="typesInstaller/${t}"`, !(o.length < 8e3); )
        c = c - Math.floor(c / 2);
      return {
        command: o,
        remaining: i - c
      };
    }
    var xKe = class {
      constructor(e, t, n, i, a, o = SKe) {
        this.installTypingHost = e, this.globalCachePath = t, this.safeListPath = n, this.typesMapLocation = i, this.throttleLimit = a, this.log = o, this.packageNameToTypingLocation = /* @__PURE__ */ new Map(), this.missingTypingsSet = /* @__PURE__ */ new Set(), this.knownCachesSet = /* @__PURE__ */ new Set(), this.projectWatchers = /* @__PURE__ */ new Map(), this.pendingRunRequests = [], this.installRunCount = 1, this.inFlightRequestCount = 0, this.latestDistTag = "latest", this.log.isEnabled() && this.log.writeLine(`Global cache location '${t}', safe file path '${n}', types map path ${i}`), this.processCacheLocation(this.globalCachePath);
      }
      handleRequest(e) {
        switch (e.kind) {
          case "discover":
            this.install(e);
            break;
          case "closeProject":
            this.closeProject(e);
            break;
          case "typesRegistry": {
            const t = {};
            this.typesRegistry.forEach((i, a) => {
              t[a] = i;
            });
            const n = {
              kind: EV,
              typesRegistry: t
            };
            this.sendResponse(n);
            break;
          }
          case "installPackage":
            this.installPackage(e);
            break;
          default:
            E.assertNever(e);
        }
      }
      closeProject(e) {
        this.closeWatchers(e.projectName);
      }
      closeWatchers(e) {
        if (this.log.isEnabled() && this.log.writeLine(`Closing file watchers for project '${e}'`), !this.projectWatchers.get(e)) {
          this.log.isEnabled() && this.log.writeLine(`No watchers are registered for project '${e}'`);
          return;
        }
        this.projectWatchers.delete(e), this.sendResponse({
          kind: aI,
          projectName: e,
          files: []
        }), this.log.isEnabled() && this.log.writeLine(`Closing file watchers for project '${e}' - done.`);
      }
      install(e) {
        this.log.isEnabled() && this.log.writeLine(`Got install request${jv(e)}`), e.cachePath && (this.log.isEnabled() && this.log.writeLine(`Request specifies cache path '${e.cachePath}', loading cached information...`), this.processCacheLocation(e.cachePath)), this.safeList === void 0 && this.initializeSafeList();
        const t = oh.discoverTypings(this.installTypingHost, this.log.isEnabled() ? ((n) => this.log.writeLine(n)) : void 0, e.fileNames, e.projectRootPath, this.safeList, this.packageNameToTypingLocation, e.typeAcquisition, e.unresolvedImports, this.typesRegistry, e.compilerOptions);
        this.watchFiles(e.projectName, t.filesToWatch), t.newTypingNames.length ? this.installTypings(e, e.cachePath || this.globalCachePath, t.cachedTypingPaths, t.newTypingNames) : (this.sendResponse(this.createSetTypings(e, t.cachedTypingPaths)), this.log.isEnabled() && this.log.writeLine("No new typings were requested as a result of typings discovery"));
      }
      installPackage(e) {
        const { fileName: t, packageName: n, projectName: i, projectRootPath: a, id: o } = e, c = oh.validatePackageName(n);
        if (c !== oh.NameValidationResult.Ok) {
          const u = oh.renderPackageNameValidationFailure(c, n);
          this.log.isEnabled() && this.log.writeLine(u);
          const d = {
            kind: iI,
            projectName: i,
            id: o,
            success: !1,
            message: u
          };
          this.sendResponse(d);
          return;
        }
        const _ = L4(Xn(t), (u) => {
          if (this.installTypingHost.fileExists(jn(u, "package.json"))) return u;
        }) || a;
        if (_) this.installWorker(-1, [n], _, (u) => {
          const d = {
            kind: iI,
            projectName: i,
            id: o,
            success: u,
            message: u ? `Package ${n} installed.` : `There was an error installing ${n}.`
          };
          this.sendResponse(d);
        });
        else {
          const u = {
            kind: iI,
            projectName: i,
            id: o,
            success: !1,
            message: "Could not determine a project root path."
          };
          this.sendResponse(u);
        }
      }
      initializeSafeList() {
        if (this.typesMapLocation) {
          const e = oh.loadTypesMap(this.installTypingHost, this.typesMapLocation);
          if (e) {
            this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`), this.safeList = e;
            return;
          }
          this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`);
        }
        this.safeList = oh.loadSafeList(this.installTypingHost, this.safeListPath);
      }
      processCacheLocation(e) {
        if (this.log.isEnabled() && this.log.writeLine(`Processing cache location '${e}'`), this.knownCachesSet.has(e)) {
          this.log.isEnabled() && this.log.writeLine("Cache location was already processed...");
          return;
        }
        const t = jn(e, "package.json"), n = jn(e, "package-lock.json");
        if (this.log.isEnabled() && this.log.writeLine(`Trying to find '${t}'...`), this.installTypingHost.fileExists(t) && this.installTypingHost.fileExists(n)) {
          const i = JSON.parse(this.installTypingHost.readFile(t)), a = JSON.parse(this.installTypingHost.readFile(n));
          if (this.log.isEnabled() && (this.log.writeLine(`Loaded content of '${t}':${jv(i)}`), this.log.writeLine(`Loaded content of '${n}':${jv(a)}`)), i.devDependencies && (a.packages || a.dependencies)) for (const o in i.devDependencies) {
            if (a.packages && !po(a.packages, `node_modules/${o}`) || a.dependencies && !po(a.dependencies, o)) continue;
            const c = nl(o);
            if (!c) continue;
            const _ = ePe(e, c, this.installTypingHost, this.log);
            if (!_) {
              this.missingTypingsSet.add(c);
              continue;
            }
            const u = this.packageNameToTypingLocation.get(c);
            if (u) {
              if (u.typingLocation === _) continue;
              this.log.isEnabled() && this.log.writeLine(`New typing for package ${c} from '${_}' conflicts with existing typing file '${u}'`);
            }
            this.log.isEnabled() && this.log.writeLine(`Adding entry into typings cache: '${c}' => '${_}'`);
            const d = a.packages && s3(a.packages, `node_modules/${o}`) || s3(a.dependencies, o), g = d && d.version;
            if (!g) continue;
            const h = {
              typingLocation: _,
              version: new Ld(g)
            };
            this.packageNameToTypingLocation.set(c, h);
          }
        }
        this.log.isEnabled() && this.log.writeLine(`Finished processing cache location '${e}'`), this.knownCachesSet.add(e);
      }
      filterTypings(e) {
        return Rn(e, (t) => {
          const n = Q6(t);
          if (this.missingTypingsSet.has(n)) {
            this.log.isEnabled() && this.log.writeLine(`'${t}':: '${n}' is in missingTypingsSet - skipping...`);
            return;
          }
          const i = oh.validatePackageName(t);
          if (i !== oh.NameValidationResult.Ok) {
            this.missingTypingsSet.add(n), this.log.isEnabled() && this.log.writeLine(oh.renderPackageNameValidationFailure(i, t));
            return;
          }
          if (!this.typesRegistry.has(n)) {
            this.log.isEnabled() && this.log.writeLine(`'${t}':: Entry for package '${n}' does not exist in local types registry - skipping...`);
            return;
          }
          if (this.packageNameToTypingLocation.get(n) && oh.isTypingUpToDate(this.packageNameToTypingLocation.get(n), this.typesRegistry.get(n))) {
            this.log.isEnabled() && this.log.writeLine(`'${t}':: '${n}' already has an up-to-date typing - skipping...`);
            return;
          }
          return n;
        });
      }
      ensurePackageDirectoryExists(e) {
        const t = jn(e, "package.json");
        this.log.isEnabled() && this.log.writeLine(`Npm config file: ${t}`), this.installTypingHost.fileExists(t) || (this.log.isEnabled() && this.log.writeLine(`Npm config file: '${t}' is missing, creating new one...`), this.ensureDirectoryExists(e, this.installTypingHost), this.installTypingHost.writeFile(t, '{ "private": true }'));
      }
      installTypings(e, t, n, i) {
        this.log.isEnabled() && this.log.writeLine(`Installing typings ${JSON.stringify(i)}`);
        const a = this.filterTypings(i);
        if (a.length === 0) {
          this.log.isEnabled() && this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"), this.sendResponse(this.createSetTypings(e, n));
          return;
        }
        this.ensurePackageDirectoryExists(t);
        const o = this.installRunCount;
        this.installRunCount++, this.sendResponse({
          kind: DV,
          eventId: o,
          typingsInstallerVersion: Qr,
          projectName: e.projectName
        });
        const c = a.map(rPe);
        this.installTypingsAsync(o, c, t, (_) => {
          try {
            if (!_) {
              this.log.isEnabled() && this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(a)}`);
              for (const d of a) this.missingTypingsSet.add(d);
              return;
            }
            this.log.isEnabled() && this.log.writeLine(`Installed typings ${JSON.stringify(c)}`);
            const u = [];
            for (const d of a) {
              const g = ePe(t, d, this.installTypingHost, this.log);
              if (!g) {
                this.missingTypingsSet.add(d);
                continue;
              }
              const h = this.typesRegistry.get(d), S = {
                typingLocation: g,
                version: new Ld(h[`ts${Un}`] || h[this.latestDistTag])
              };
              this.packageNameToTypingLocation.set(d, S), u.push(g);
            }
            this.log.isEnabled() && this.log.writeLine(`Installed typing files ${JSON.stringify(u)}`), this.sendResponse(this.createSetTypings(e, n.concat(u)));
          } finally {
            const u = {
              kind: wV,
              eventId: o,
              projectName: e.projectName,
              packagesToInstall: c,
              installSuccess: _,
              typingsInstallerVersion: Qr
            };
            this.sendResponse(u);
          }
        });
      }
      ensureDirectoryExists(e, t) {
        const n = Xn(e);
        t.directoryExists(n) || this.ensureDirectoryExists(n, t), t.directoryExists(e) || t.createDirectory(e);
      }
      watchFiles(e, t) {
        if (!t.length) {
          this.closeWatchers(e);
          return;
        }
        const n = this.projectWatchers.get(e), i = new Set(t);
        !n || Vg(i, (a) => !n.has(a)) || Vg(n, (a) => !i.has(a)) ? (this.projectWatchers.set(e, i), this.sendResponse({
          kind: aI,
          projectName: e,
          files: t
        })) : this.sendResponse({
          kind: aI,
          projectName: e,
          files: void 0
        });
      }
      createSetTypings(e, t) {
        return {
          projectName: e.projectName,
          typeAcquisition: e.typeAcquisition,
          compilerOptions: e.compilerOptions,
          typings: t,
          unresolvedImports: e.unresolvedImports,
          kind: O9
        };
      }
      installTypingsAsync(e, t, n, i) {
        this.pendingRunRequests.unshift({
          requestId: e,
          packageNames: t,
          cwd: n,
          onRequestCompleted: i
        }), this.executeWithThrottling();
      }
      executeWithThrottling() {
        for (; this.inFlightRequestCount < this.throttleLimit && this.pendingRunRequests.length; ) {
          this.inFlightRequestCount++;
          const e = this.pendingRunRequests.pop();
          this.installWorker(e.requestId, e.packageNames, e.cwd, (t) => {
            this.inFlightRequestCount--, e.onRequestCompleted(t), this.executeWithThrottling();
          });
        }
      }
    };
    function rPe(e) {
      return `@types/${e}@ts${Un}`;
    }
    var P_e = /* @__PURE__ */ ((e) => (e[e.terse = 0] = "terse", e[e.normal = 1] = "normal", e[e.requestTime = 2] = "requestTime", e[e.verbose = 3] = "verbose", e))(P_e || {}), Nl = M_e(), A_e = /* @__PURE__ */ ((e) => (e.Err = "Err", e.Info = "Info", e.Perf = "Perf", e))(A_e || {});
    function N_e(e, t, n, i) {
      return {
        projectName: e.getProjectName(),
        fileNames: e.getFileNames(!0, !0).concat(e.getExcludedFiles()),
        compilerOptions: e.getCompilationSettings(),
        typeAcquisition: t,
        unresolvedImports: n,
        projectRootPath: e.getCurrentDirectory(),
        cachePath: i,
        kind: "discover"
      };
    }
    var Kh;
    ((e) => {
      function t() {
        throw new Error("No Project.");
      }
      e.ThrowNoProject = t;
      function n() {
        throw new Error("The project's language service is disabled.");
      }
      e.ThrowProjectLanguageServiceDisabled = n;
      function i(a, o) {
        throw new Error(`Project '${o.getProjectName()}' does not contain document '${a}'`);
      }
      e.ThrowProjectDoesNotContainDocument = i;
    })(Kh || (Kh = {}));
    function ho(e) {
      return us(e);
    }
    function kE(e, t, n) {
      return n(pf(e) ? e : ca(e, t));
    }
    function nPe(e) {
      return e;
    }
    function iPe() {
      const e = /* @__PURE__ */ new Map();
      return {
        get(t) {
          return e.get(t);
        },
        set(t, n) {
          e.set(t, n);
        },
        contains(t) {
          return e.has(t);
        },
        remove(t) {
          e.delete(t);
        }
      };
    }
    function I_e(e) {
      return /dev\/null\/inferredProject\d+\*/.test(e);
    }
    function O_e(e) {
      return `/dev/null/inferredProject${e}*`;
    }
    function F_e(e) {
      return `/dev/null/autoImportProviderProject${e}*`;
    }
    function L_e(e) {
      return `/dev/null/auxiliaryProject${e}*`;
    }
    function M_e() {
      return [];
    }
    var R_e = class $5e {
      constructor(t, n) {
        this.host = t, this.pendingTimeouts = /* @__PURE__ */ new Map(), this.logger = n.hasLevel(3) ? n : void 0;
      }
      schedule(t, n, i) {
        const a = this.pendingTimeouts.get(t);
        a && this.host.clearTimeout(a), this.pendingTimeouts.set(t, this.host.setTimeout($5e.run, n, t, this, i)), this.logger && this.logger.info(`Scheduled: ${t}${a ? ", Cancelled earlier one" : ""}`);
      }
      cancel(t) {
        const n = this.pendingTimeouts.get(t);
        return n ? (this.host.clearTimeout(n), this.pendingTimeouts.delete(t)) : !1;
      }
      static run(t, n, i) {
        n.pendingTimeouts.delete(t), n.logger && n.logger.info(`Running: ${t}`), i();
      }
    }, j_e = class X5e {
      constructor(t, n, i) {
        this.host = t, this.delay = n, this.logger = i;
      }
      scheduleCollect() {
        !this.host.gc || this.timerId !== void 0 || (this.timerId = this.host.setTimeout(X5e.run, this.delay, this));
      }
      static run(t) {
        t.timerId = void 0;
        const n = t.logger.hasLevel(2), i = n && t.host.getMemoryUsage();
        if (t.host.gc(), n) {
          const a = t.host.getMemoryUsage();
          t.logger.perftrc(`GC::before ${i}, after ${a}`);
        }
      }
    };
    function IH(e) {
      const t = nl(e);
      return t === "tsconfig.json" || t === "jsconfig.json" ? t : void 0;
    }
    var B_e = {};
    gi(B_e, {
      ClassificationType: () => OV,
      CommandTypes: () => J_e,
      CompletionTriggerKind: () => NV,
      IndentStyle: () => cPe,
      JsxEmit: () => lPe,
      ModuleKind: () => uPe,
      ModuleResolutionKind: () => _Pe,
      NewLineKind: () => fPe,
      OrganizeImportsMode: () => AV,
      PollingWatchKind: () => oPe,
      ScriptTarget: () => pPe,
      SemicolonPreference: () => IV,
      WatchDirectoryKind: () => sPe,
      WatchFileKind: () => aPe
    });
    var J_e = /* @__PURE__ */ ((e) => (e.JsxClosingTag = "jsxClosingTag", e.LinkedEditingRange = "linkedEditingRange", e.Brace = "brace", e.BraceFull = "brace-full", e.BraceCompletion = "braceCompletion", e.GetSpanOfEnclosingComment = "getSpanOfEnclosingComment", e.Change = "change", e.Close = "close", e.Completions = "completions", e.CompletionInfo = "completionInfo", e.CompletionsFull = "completions-full", e.CompletionDetails = "completionEntryDetails", e.CompletionDetailsFull = "completionEntryDetails-full", e.CompileOnSaveAffectedFileList = "compileOnSaveAffectedFileList", e.CompileOnSaveEmitFile = "compileOnSaveEmitFile", e.Configure = "configure", e.Definition = "definition", e.DefinitionFull = "definition-full", e.DefinitionAndBoundSpan = "definitionAndBoundSpan", e.DefinitionAndBoundSpanFull = "definitionAndBoundSpan-full", e.Implementation = "implementation", e.ImplementationFull = "implementation-full", e.EmitOutput = "emit-output", e.Exit = "exit", e.FileReferences = "fileReferences", e.FileReferencesFull = "fileReferences-full", e.Format = "format", e.Formatonkey = "formatonkey", e.FormatFull = "format-full", e.FormatonkeyFull = "formatonkey-full", e.FormatRangeFull = "formatRange-full", e.Geterr = "geterr", e.GeterrForProject = "geterrForProject", e.SemanticDiagnosticsSync = "semanticDiagnosticsSync", e.SyntacticDiagnosticsSync = "syntacticDiagnosticsSync", e.SuggestionDiagnosticsSync = "suggestionDiagnosticsSync", e.NavBar = "navbar", e.NavBarFull = "navbar-full", e.Navto = "navto", e.NavtoFull = "navto-full", e.NavTree = "navtree", e.NavTreeFull = "navtree-full", e.DocumentHighlights = "documentHighlights", e.DocumentHighlightsFull = "documentHighlights-full", e.Open = "open", e.Quickinfo = "quickinfo", e.QuickinfoFull = "quickinfo-full", e.References = "references", e.ReferencesFull = "references-full", e.Reload = "reload", e.Rename = "rename", e.RenameInfoFull = "rename-full", e.RenameLocationsFull = "renameLocations-full", e.Saveto = "saveto", e.SignatureHelp = "signatureHelp", e.SignatureHelpFull = "signatureHelp-full", e.FindSourceDefinition = "findSourceDefinition", e.Status = "status", e.TypeDefinition = "typeDefinition", e.ProjectInfo = "projectInfo", e.ReloadProjects = "reloadProjects", e.Unknown = "unknown", e.OpenExternalProject = "openExternalProject", e.OpenExternalProjects = "openExternalProjects", e.CloseExternalProject = "closeExternalProject", e.SynchronizeProjectList = "synchronizeProjectList", e.ApplyChangedToOpenFiles = "applyChangedToOpenFiles", e.UpdateOpen = "updateOpen", e.EncodedSyntacticClassificationsFull = "encodedSyntacticClassifications-full", e.EncodedSemanticClassificationsFull = "encodedSemanticClassifications-full", e.Cleanup = "cleanup", e.GetOutliningSpans = "getOutliningSpans", e.GetOutliningSpansFull = "outliningSpans", e.TodoComments = "todoComments", e.Indentation = "indentation", e.DocCommentTemplate = "docCommentTemplate", e.CompilerOptionsDiagnosticsFull = "compilerOptionsDiagnostics-full", e.NameOrDottedNameSpan = "nameOrDottedNameSpan", e.BreakpointStatement = "breakpointStatement", e.CompilerOptionsForInferredProjects = "compilerOptionsForInferredProjects", e.GetCodeFixes = "getCodeFixes", e.GetCodeFixesFull = "getCodeFixes-full", e.GetCombinedCodeFix = "getCombinedCodeFix", e.GetCombinedCodeFixFull = "getCombinedCodeFix-full", e.ApplyCodeActionCommand = "applyCodeActionCommand", e.GetSupportedCodeFixes = "getSupportedCodeFixes", e.GetApplicableRefactors = "getApplicableRefactors", e.GetEditsForRefactor = "getEditsForRefactor", e.GetMoveToRefactoringFileSuggestions = "getMoveToRefactoringFileSuggestions", e.PreparePasteEdits = "preparePasteEdits", e.GetPasteEdits = "getPasteEdits", e.GetEditsForRefactorFull = "getEditsForRefactor-full", e.OrganizeImports = "organizeImports", e.OrganizeImportsFull = "organizeImports-full", e.GetEditsForFileRename = "getEditsForFileRename", e.GetEditsForFileRenameFull = "getEditsForFileRename-full", e.ConfigurePlugin = "configurePlugin", e.SelectionRange = "selectionRange", e.SelectionRangeFull = "selectionRange-full", e.ToggleLineComment = "toggleLineComment", e.ToggleLineCommentFull = "toggleLineComment-full", e.ToggleMultilineComment = "toggleMultilineComment", e.ToggleMultilineCommentFull = "toggleMultilineComment-full", e.CommentSelection = "commentSelection", e.CommentSelectionFull = "commentSelection-full", e.UncommentSelection = "uncommentSelection", e.UncommentSelectionFull = "uncommentSelection-full", e.PrepareCallHierarchy = "prepareCallHierarchy", e.ProvideCallHierarchyIncomingCalls = "provideCallHierarchyIncomingCalls", e.ProvideCallHierarchyOutgoingCalls = "provideCallHierarchyOutgoingCalls", e.ProvideInlayHints = "provideInlayHints", e.WatchChange = "watchChange", e.MapCode = "mapCode", e.CopilotRelated = "copilotRelated", e))(J_e || {}), aPe = /* @__PURE__ */ ((e) => (e.FixedPollingInterval = "FixedPollingInterval", e.PriorityPollingInterval = "PriorityPollingInterval", e.DynamicPriorityPolling = "DynamicPriorityPolling", e.FixedChunkSizePolling = "FixedChunkSizePolling", e.UseFsEvents = "UseFsEvents", e.UseFsEventsOnParentDirectory = "UseFsEventsOnParentDirectory", e))(aPe || {}), sPe = /* @__PURE__ */ ((e) => (e.UseFsEvents = "UseFsEvents", e.FixedPollingInterval = "FixedPollingInterval", e.DynamicPriorityPolling = "DynamicPriorityPolling", e.FixedChunkSizePolling = "FixedChunkSizePolling", e))(sPe || {}), oPe = /* @__PURE__ */ ((e) => (e.FixedInterval = "FixedInterval", e.PriorityInterval = "PriorityInterval", e.DynamicPriority = "DynamicPriority", e.FixedChunkSize = "FixedChunkSize", e))(oPe || {}), cPe = /* @__PURE__ */ ((e) => (e.None = "None", e.Block = "Block", e.Smart = "Smart", e))(cPe || {}), lPe = /* @__PURE__ */ ((e) => (e.None = "none", e.Preserve = "preserve", e.ReactNative = "react-native", e.React = "react", e.ReactJSX = "react-jsx", e.ReactJSXDev = "react-jsxdev", e))(lPe || {}), uPe = /* @__PURE__ */ ((e) => (e.None = "none", e.CommonJS = "commonjs", e.AMD = "amd", e.UMD = "umd", e.System = "system", e.ES6 = "es6", e.ES2015 = "es2015", e.ES2020 = "es2020", e.ES2022 = "es2022", e.ESNext = "esnext", e.Node16 = "node16", e.Node18 = "node18", e.Node20 = "node20", e.NodeNext = "nodenext", e.Preserve = "preserve", e))(uPe || {}), _Pe = /* @__PURE__ */ ((e) => (e.Classic = "classic", e.Node = "node", e.NodeJs = "node", e.Node10 = "node10", e.Node16 = "node16", e.NodeNext = "nodenext", e.Bundler = "bundler", e))(_Pe || {}), fPe = /* @__PURE__ */ ((e) => (e.Crlf = "Crlf", e.Lf = "Lf", e))(fPe || {}), pPe = /* @__PURE__ */ ((e) => (e.ES3 = "es3", e.ES5 = "es5", e.ES6 = "es6", e.ES2015 = "es2015", e.ES2016 = "es2016", e.ES2017 = "es2017", e.ES2018 = "es2018", e.ES2019 = "es2019", e.ES2020 = "es2020", e.ES2021 = "es2021", e.ES2022 = "es2022", e.ES2023 = "es2023", e.ES2024 = "es2024", e.ES2025 = "es2025", e.ESNext = "esnext", e.JSON = "json", e.Latest = "esnext", e.LatestStandard = "es2025", e))(pPe || {}), z_e = class {
      constructor(e, t, n) {
        this.host = e, this.info = t, this.isOpen = !1, this.ownFileText = !1, this.pendingReloadFromDisk = !1, this.version = n || 0;
      }
      getVersion() {
        return this.svc ? `SVC-${this.version}-${this.svc.getSnapshotVersion()}` : `Text-${this.version}`;
      }
      hasScriptVersionCache_TestOnly() {
        return this.svc !== void 0;
      }
      resetSourceMapInfo() {
        this.info.sourceFileLike = void 0, this.info.closeSourceMapFileWatcher(), this.info.sourceMapFilePath = void 0, this.info.declarationInfoPath = void 0, this.info.sourceInfos = void 0, this.info.documentPositionMapper = void 0;
      }
      useText(e) {
        this.svc = void 0, this.text = e, this.textSnapshot = void 0, this.lineMap = void 0, this.fileSize = void 0, this.resetSourceMapInfo(), this.version++;
      }
      edit(e, t, n) {
        this.switchToScriptVersionCache().edit(e, t - e, n), this.ownFileText = !1, this.text = void 0, this.textSnapshot = void 0, this.lineMap = void 0, this.fileSize = void 0, this.resetSourceMapInfo();
      }
      reload(e) {
        return E.assert(e !== void 0), this.pendingReloadFromDisk = !1, !this.text && this.svc && (this.text = Fk(this.svc.getSnapshot())), this.text !== e ? (this.useText(e), this.ownFileText = !1, !0) : !1;
      }
      reloadWithFileText(e) {
        const { text: t, fileSize: n } = e || !this.info.isDynamicOrHasMixedContent() ? this.getFileTextAndSize(e) : {
          text: "",
          fileSize: void 0
        }, i = this.reload(t);
        return this.fileSize = n, this.ownFileText = !e || e === this.info.fileName, this.ownFileText && this.info.mTime === ff.getTime() && (this.info.mTime = (this.host.getModifiedTime(this.info.fileName) || ff).getTime()), i;
      }
      scheduleReloadIfNeeded() {
        return !this.pendingReloadFromDisk && !this.ownFileText ? this.pendingReloadFromDisk = !0 : !1;
      }
      delayReloadFromFileIntoText() {
        this.pendingReloadFromDisk = !0;
      }
      getTelemetryFileSize() {
        return this.fileSize ? this.fileSize : this.text ? this.text.length : this.svc ? this.svc.getSnapshot().getLength() : this.getSnapshot().getLength();
      }
      getSnapshot() {
        var e;
        return ((e = this.tryUseScriptVersionCache()) == null ? void 0 : e.getSnapshot()) || (this.textSnapshot ?? (this.textSnapshot = L9.fromString(E.checkDefined(this.text))));
      }
      getAbsolutePositionAndLineText(e) {
        const t = this.tryUseScriptVersionCache();
        if (t) return t.getAbsolutePositionAndLineText(e);
        const n = this.getLineMap();
        return e <= n.length ? {
          absolutePosition: n[e - 1],
          lineText: this.text.substring(n[e - 1], n[e])
        } : {
          absolutePosition: this.text.length,
          lineText: void 0
        };
      }
      lineToTextSpan(e) {
        const t = this.tryUseScriptVersionCache();
        if (t) return t.lineToTextSpan(e);
        const n = this.getLineMap(), i = n[e];
        return Vc(i, e + 1 < n.length ? n[e + 1] : this.text.length);
      }
      lineOffsetToPosition(e, t, n) {
        const i = this.tryUseScriptVersionCache();
        return i ? i.lineOffsetToPosition(e, t) : B7(this.getLineMap(), e - 1, t - 1, this.text, n);
      }
      positionToLineOffset(e) {
        const t = this.tryUseScriptVersionCache();
        if (t) return t.positionToLineOffset(e);
        const { line: n, character: i } = VC(this.getLineMap(), e);
        return {
          line: n + 1,
          offset: i + 1
        };
      }
      getFileTextAndSize(e) {
        let t;
        const n = e || this.info.fileName, i = () => t === void 0 ? t = this.host.readFile(n) || "" : t;
        if (!wS(this.info.fileName)) {
          const a = this.host.getFileSize ? this.host.getFileSize(n) : i().length;
          if (a > LH)
            return E.assert(!!this.info.containingProjects.length), this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${n} for info ${this.info.fileName}: fileSize: ${a}`), this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(n, a), {
              text: "",
              fileSize: a
            };
        }
        return { text: i() };
      }
      switchToScriptVersionCache() {
        return (!this.svc || this.pendingReloadFromDisk) && (this.svc = r$.fromString(this.getOrLoadText()), this.textSnapshot = void 0, this.version++), this.svc;
      }
      tryUseScriptVersionCache() {
        return (!this.svc || this.pendingReloadFromDisk) && this.getOrLoadText(), this.isOpen ? (!this.svc && !this.textSnapshot && (this.svc = r$.fromString(E.checkDefined(this.text)), this.textSnapshot = void 0), this.svc) : this.svc;
      }
      getOrLoadText() {
        return (this.text === void 0 || this.pendingReloadFromDisk) && (E.assert(!this.svc || this.pendingReloadFromDisk, "ScriptVersionCache should not be set when reloading from disk"), this.reloadWithFileText()), this.text;
      }
      getLineMap() {
        return E.assert(!this.svc, "ScriptVersionCache should not be set"), this.lineMap || (this.lineMap = Sx(E.checkDefined(this.text)));
      }
      getLineInfo() {
        const e = this.tryUseScriptVersionCache();
        if (e) return {
          getLineCount: () => e.getLineCount(),
          getLineText: (n) => e.getAbsolutePositionAndLineText(n + 1).lineText
        };
        const t = this.getLineMap();
        return KW(this.text, t);
      }
    };
    function pP(e) {
      return e[0] === "^" || (e.includes("walkThroughSnippet:/") || e.includes("untitled:/")) && nl(e)[0] === "^" || e.includes(":^") && !e.includes(Co);
    }
    var W_e = class {
      constructor(e, t, n, i, a, o) {
        this.host = e, this.fileName = t, this.scriptKind = n, this.hasMixedContent = i, this.path = a, this.containingProjects = [], this.isDynamic = pP(t), this.textStorage = new z_e(e, this, o), (i || this.isDynamic) && (this.realpath = this.path), this.scriptKind = n || xO(t);
      }
      isDynamicOrHasMixedContent() {
        return this.hasMixedContent || this.isDynamic;
      }
      isScriptOpen() {
        return this.textStorage.isOpen;
      }
      open(e) {
        this.textStorage.isOpen = !0, e !== void 0 && this.textStorage.reload(e) && this.markContainingProjectsAsDirty();
      }
      close(e = !0) {
        this.textStorage.isOpen = !1, e && this.textStorage.scheduleReloadIfNeeded() && this.markContainingProjectsAsDirty();
      }
      getSnapshot() {
        return this.textStorage.getSnapshot();
      }
      ensureRealPath() {
        if (this.realpath === void 0 && (this.realpath = this.path, this.host.realpath)) {
          E.assert(!!this.containingProjects.length);
          const e = this.containingProjects[0], t = this.host.realpath(this.path);
          t && (this.realpath = e.toPath(t), this.realpath !== this.path && e.projectService.realpathToScriptInfos.add(this.realpath, this));
        }
      }
      getRealpathIfDifferent() {
        return this.realpath && this.realpath !== this.path ? this.realpath : void 0;
      }
      isSymlink() {
        return this.realpath && this.realpath !== this.path;
      }
      getFormatCodeSettings() {
        return this.formatSettings;
      }
      getPreferences() {
        return this.preferences;
      }
      attachToProject(e) {
        const t = !this.isAttached(e);
        return t && (this.containingProjects.push(e), e.getCompilerOptions().preserveSymlinks || this.ensureRealPath(), e.onFileAddedOrRemoved(this.isSymlink())), t;
      }
      isAttached(e) {
        switch (this.containingProjects.length) {
          case 0:
            return !1;
          case 1:
            return this.containingProjects[0] === e;
          case 2:
            return this.containingProjects[0] === e || this.containingProjects[1] === e;
          default:
            return Gi(this.containingProjects, e);
        }
      }
      detachFromProject(e) {
        switch (this.containingProjects.length) {
          case 0:
            return;
          case 1:
            this.containingProjects[0] === e && (e.onFileAddedOrRemoved(this.isSymlink()), this.containingProjects.pop());
            break;
          case 2:
            this.containingProjects[0] === e ? (e.onFileAddedOrRemoved(this.isSymlink()), this.containingProjects[0] = this.containingProjects.pop()) : this.containingProjects[1] === e && (e.onFileAddedOrRemoved(this.isSymlink()), this.containingProjects.pop());
            break;
          default:
            k4(this.containingProjects, e) && e.onFileAddedOrRemoved(this.isSymlink());
            break;
        }
      }
      detachAllProjects() {
        for (const e of this.containingProjects) {
          $0(e) && e.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName, this.path, 2);
          const t = e.getRootFilesMap().get(this.path);
          e.removeFile(this, !1, !1), e.onFileAddedOrRemoved(this.isSymlink()), t && !Xk(e) && e.addMissingFileRoot(t.fileName);
        }
        Yf(this.containingProjects);
      }
      getDefaultProject() {
        switch (this.containingProjects.length) {
          case 0:
            return Kh.ThrowNoProject();
          case 1:
            return c8(this.containingProjects[0]) || o8(this.containingProjects[0]) ? Kh.ThrowNoProject() : this.containingProjects[0];
          default:
            let e, t, n, i;
            for (let a = 0; a < this.containingProjects.length; a++) {
              const o = this.containingProjects[a];
              if ($0(o)) {
                if (o.deferredClose) continue;
                if (!o.isSourceOfProjectReferenceRedirect(this.fileName)) {
                  if (i === void 0 && a !== this.containingProjects.length - 1 && (i = o.projectService.findDefaultConfiguredProject(this) || !1), i === o) return o;
                  n || (n = o);
                }
                e || (e = o);
              } else {
                if (s8(o)) return o;
                !t && Xk(o) && (t = o);
              }
            }
            return (i || n || e || t) ?? Kh.ThrowNoProject();
        }
      }
      registerFileUpdate() {
        for (const e of this.containingProjects) e.registerFileUpdate(this.path);
      }
      setOptions(e, t) {
        e && (this.formatSettings ? this.formatSettings = {
          ...this.formatSettings,
          ...e
        } : (this.formatSettings = M9(this.host.newLine), rS(this.formatSettings, e))), t && (this.preferences || (this.preferences = td), this.preferences = {
          ...this.preferences,
          ...t
        });
      }
      getLatestVersion() {
        return this.textStorage.getSnapshot(), this.textStorage.getVersion();
      }
      saveTo(e) {
        this.host.writeFile(e, Fk(this.textStorage.getSnapshot()));
      }
      delayReloadNonMixedContentFile() {
        E.assert(!this.isDynamicOrHasMixedContent()), this.textStorage.delayReloadFromFileIntoText(), this.markContainingProjectsAsDirty();
      }
      reloadFromFile(e) {
        return this.textStorage.reloadWithFileText(e) ? (this.markContainingProjectsAsDirty(), !0) : !1;
      }
      editContent(e, t, n) {
        this.textStorage.edit(e, t, n), this.markContainingProjectsAsDirty();
      }
      markContainingProjectsAsDirty() {
        for (const e of this.containingProjects) e.markFileAsDirty(this.path);
      }
      isOrphan() {
        return this.deferredDelete || !bt(this.containingProjects, (e) => !e.isOrphan());
      }
      lineToTextSpan(e) {
        return this.textStorage.lineToTextSpan(e);
      }
      lineOffsetToPosition(e, t, n) {
        return this.textStorage.lineOffsetToPosition(e, t, n);
      }
      positionToLineOffset(e) {
        kKe(e);
        const t = this.textStorage.positionToLineOffset(e);
        return CKe(t), t;
      }
      isJavaScript() {
        return this.scriptKind === 1 || this.scriptKind === 2;
      }
      closeSourceMapFileWatcher() {
        this.sourceMapFilePath && !Ta(this.sourceMapFilePath) && (Np(this.sourceMapFilePath), this.sourceMapFilePath = void 0);
      }
    };
    function kKe(e) {
      E.assert(typeof e == "number", `Expected position ${e} to be a number.`), E.assert(e >= 0, "Expected position to be non-negative.");
    }
    function CKe(e) {
      E.assert(typeof e.line == "number", `Expected line ${e.line} to be a number.`), E.assert(typeof e.offset == "number", `Expected offset ${e.offset} to be a number.`), E.assert(e.line > 0, `Expected line to be non-${e.line === 0 ? "zero" : "negative"}`), E.assert(e.offset > 0, `Expected offset to be non-${e.offset === 0 ? "zero" : "negative"}`);
    }
    function U_e(e) {
      return _t(e.containingProjects, o8);
    }
    function V_e(e) {
      return _t(e.containingProjects, c8);
    }
    var dP = /* @__PURE__ */ ((e) => (e[e.Inferred = 0] = "Inferred", e[e.Configured = 1] = "Configured", e[e.External = 2] = "External", e[e.AutoImportProvider = 3] = "AutoImportProvider", e[e.Auxiliary = 4] = "Auxiliary", e))(dP || {});
    function a8(e, t = !1) {
      const n = {
        js: 0,
        jsSize: 0,
        jsx: 0,
        jsxSize: 0,
        ts: 0,
        tsSize: 0,
        tsx: 0,
        tsxSize: 0,
        dts: 0,
        dtsSize: 0,
        deferred: 0,
        deferredSize: 0
      };
      for (const i of e) {
        const a = t ? i.textStorage.getTelemetryFileSize() : 0;
        switch (i.scriptKind) {
          case 1:
            n.js += 1, n.jsSize += a;
            break;
          case 2:
            n.jsx += 1, n.jsxSize += a;
            break;
          case 3:
            $l(i.fileName) ? (n.dts += 1, n.dtsSize += a) : (n.ts += 1, n.tsSize += a);
            break;
          case 4:
            n.tsx += 1, n.tsxSize += a;
            break;
          case 7:
            n.deferred += 1, n.deferredSize += a;
            break;
        }
      }
      return n;
    }
    function EKe(e) {
      const t = a8(e.getScriptInfos());
      return t.js > 0 && t.ts === 0 && t.tsx === 0;
    }
    function q_e(e) {
      const t = a8(e.getRootScriptInfos());
      return t.ts === 0 && t.tsx === 0;
    }
    function G_e(e) {
      const t = a8(e.getScriptInfos());
      return t.ts === 0 && t.tsx === 0;
    }
    function H_e(e) {
      return !e.some((t) => lc(t, ".ts") && !$l(t) || lc(t, ".tsx"));
    }
    function $_e(e) {
      return e.generatedFilePath !== void 0;
    }
    function dPe(e, t) {
      if (e === t || (e || Nl).length === 0 && (t || Nl).length === 0) return !0;
      const n = /* @__PURE__ */ new Map();
      let i = 0;
      for (const a of e) n.get(a) !== !0 && (n.set(a, !0), i++);
      for (const a of t) {
        const o = n.get(a);
        if (o === void 0) return !1;
        o === !0 && (n.set(a, !1), i--);
      }
      return i === 0;
    }
    function DKe(e, t) {
      return e.enable !== t.enable || !dPe(e.include, t.include) || !dPe(e.exclude, t.exclude);
    }
    function wKe(e, t) {
      return t1(e) !== t1(t);
    }
    function PKe(e, t) {
      return e === t ? !1 : !jf(e, t);
    }
    var $k = class Q5e {
      constructor(t, n, i, a, o, c, _, u, d, g) {
        switch (this.projectKind = n, this.projectService = i, this.compilerOptions = c, this.compileOnSaveEnabled = _, this.watchOptions = u, this.rootFilesMap = /* @__PURE__ */ new Map(), this.plugins = [], this.cachedUnresolvedImportsPerFile = /* @__PURE__ */ new Map(), this.hasAddedorRemovedFiles = !1, this.hasAddedOrRemovedSymlinks = !1, this.lastReportedVersion = 0, this.projectProgramVersion = 0, this.projectStateVersion = 0, this.initialLoadPending = !1, this.dirty = !1, this.typingFiles = Nl, this.moduleSpecifierCache = hfe(this), this.createHash = Ua(this.projectService.host, this.projectService.host.createHash), this.globalCacheResolutionModuleName = oh.nonRelativeModuleNameForTypingCache, this.updateFromProjectInProgress = !1, i.logger.info(`Creating ${dP[n]}Project: ${t}, currentDirectory: ${g}`), this.projectName = t, this.directoryStructureHost = d, this.currentDirectory = this.projectService.getNormalizedAbsolutePath(g), this.getCanonicalFileName = this.projectService.toCanonicalFileName, this.jsDocParsingMode = this.projectService.jsDocParsingMode, this.cancellationToken = new xce(this.projectService.cancellationToken, this.projectService.throttleWaitMilliseconds), this.compilerOptions ? (a || t1(this.compilerOptions) || this.projectService.hasDeferredExtension()) && (this.compilerOptions.allowNonTsExtensions = !0) : (this.compilerOptions = RL(), this.compilerOptions.allowNonTsExtensions = !0, this.compilerOptions.allowJs = !0), i.serverMode) {
          case 0:
            this.languageServiceEnabled = !0;
            break;
          case 1:
            this.languageServiceEnabled = !0, this.compilerOptions.noResolve = !0, this.compilerOptions.types = [];
            break;
          case 2:
            this.languageServiceEnabled = !1, this.compilerOptions.noResolve = !0, this.compilerOptions.types = [];
            break;
          default:
            E.assertNever(i.serverMode);
        }
        this.setInternalCompilerOptionsForEmittingJsFiles();
        const h = this.projectService.host;
        this.projectService.logger.loggingEnabled() ? this.trace = (S) => this.writeLog(S) : h.trace && (this.trace = (S) => h.trace(S)), this.realpath = Ua(h, h.realpath), this.preferNonRecursiveWatch = this.projectService.canUseWatchEvents || h.preferNonRecursiveWatch, this.resolutionCache = XU(this, this.currentDirectory, !0), this.languageService = kce(this, this.projectService.documentRegistry, this.projectService.serverMode), o && this.disableLanguageService(o), this.markAsDirty(), o8(this) || (this.projectService.pendingEnsureProjectForOpenFiles = !0), this.projectService.onProjectCreation(this);
      }
      getRedirectFromSourceFile(t) {
      }
      isNonTsProject() {
        return nd(this), G_e(this);
      }
      isJsOnlyProject() {
        return nd(this), EKe(this);
      }
      static resolveModule(t, n, i, a) {
        return Q5e.importServicePluginSync({ name: t }, [n], i, a).resolvedModule;
      }
      static importServicePluginSync(t, n, i, a) {
        E.assertIsDefined(i.require);
        let o, c;
        for (const _ of n) {
          const u = ru(i.resolvePath(jn(_, "node_modules")));
          a(`Loading ${t.name} from ${_} (resolved to ${u})`);
          const d = i.require(u, t.name);
          if (!d.error) {
            c = d.module;
            break;
          }
          const g = d.error.stack || d.error.message || JSON.stringify(d.error);
          (o ?? (o = [])).push(`Failed to load module '${t.name}' from ${u}: ${g}`);
        }
        return {
          pluginConfigEntry: t,
          resolvedModule: c,
          errorLogs: o
        };
      }
      static async importServicePluginAsync(t, n, i, a) {
        E.assertIsDefined(i.importPlugin);
        let o, c;
        for (const _ of n) {
          const u = jn(_, "node_modules");
          a(`Dynamically importing ${t.name} from ${_} (resolved to ${u})`);
          let d;
          try {
            d = await i.importPlugin(u, t.name);
          } catch (h) {
            d = {
              module: void 0,
              error: h
            };
          }
          if (!d.error) {
            c = d.module;
            break;
          }
          const g = d.error.stack || d.error.message || JSON.stringify(d.error);
          (o ?? (o = [])).push(`Failed to dynamically import module '${t.name}' from ${u}: ${g}`);
        }
        return {
          pluginConfigEntry: t,
          resolvedModule: c,
          errorLogs: o
        };
      }
      isKnownTypesPackageName(t) {
        return this.projectService.typingsInstaller.isKnownTypesPackageName(t);
      }
      installPackage(t) {
        return this.projectService.typingsInstaller.installPackage({
          ...t,
          projectName: this.projectName,
          projectRootPath: this.toPath(this.currentDirectory)
        });
      }
      getGlobalTypingsCacheLocation() {
        return this.getTypeAcquisition().enable ? this.projectService.typingsInstaller.globalTypingsCacheLocation : void 0;
      }
      getSymlinkCache() {
        return this.symlinks || (this.symlinks = VJ(this.getCurrentDirectory(), this.getCanonicalFileName)), this.program && !this.symlinks.hasProcessedResolutions() && this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule, this.program.forEachResolvedTypeReferenceDirective, this.program.getAutomaticTypeDirectiveResolutions()), this.symlinks;
      }
      getCompilationSettings() {
        return this.compilerOptions;
      }
      getCompilerOptions() {
        return this.getCompilationSettings();
      }
      getNewLine() {
        return this.projectService.host.newLine;
      }
      getProjectVersion() {
        return this.projectStateVersion.toString();
      }
      getProjectReferences() {
      }
      getScriptFileNames() {
        if (!this.rootFilesMap.size) return Te;
        let t;
        return this.rootFilesMap.forEach((n) => {
          (this.languageServiceEnabled || n.info && n.info.isScriptOpen()) && (t || (t = [])).push(n.fileName);
        }), Mn(t, this.typingFiles) || Te;
      }
      getOrCreateScriptInfoAndAttachToProject(t) {
        const n = this.projectService.getOrCreateScriptInfoNotOpenedByClient(t, this.currentDirectory, this.directoryStructureHost, !1);
        if (n) {
          const i = this.rootFilesMap.get(n.path);
          i && i.info !== n && (i.info = n), n.attachToProject(this);
        }
        return n;
      }
      getScriptKind(t) {
        const n = this.projectService.getScriptInfoForPath(this.toPath(t));
        return n && n.scriptKind;
      }
      getScriptVersion(t) {
        const n = this.projectService.getOrCreateScriptInfoNotOpenedByClient(t, this.currentDirectory, this.directoryStructureHost, !1);
        return n && n.getLatestVersion();
      }
      getScriptSnapshot(t) {
        const n = this.getOrCreateScriptInfoAndAttachToProject(t);
        if (n) return n.getSnapshot();
      }
      getCancellationToken() {
        return this.cancellationToken;
      }
      getCurrentDirectory() {
        return this.currentDirectory;
      }
      getDefaultLibFileName() {
        return jn(Xn(us(this.projectService.getExecutingFilePath())), S3(this.compilerOptions));
      }
      useCaseSensitiveFileNames() {
        return this.projectService.host.useCaseSensitiveFileNames;
      }
      readDirectory(t, n, i, a, o) {
        return this.directoryStructureHost.readDirectory(t, n, i, a, o);
      }
      readFile(t) {
        return this.projectService.host.readFile(t);
      }
      writeFile(t, n) {
        return this.projectService.host.writeFile(t, n);
      }
      fileExists(t) {
        const n = this.toPath(t);
        return !!this.projectService.getScriptInfoForPath(n) || !this.isWatchedMissingFile(n) && this.directoryStructureHost.fileExists(t);
      }
      resolveModuleNameLiterals(t, n, i, a, o, c) {
        return this.resolutionCache.resolveModuleNameLiterals(t, n, i, a, o, c);
      }
      getModuleResolutionCache() {
        return this.resolutionCache.getModuleResolutionCache();
      }
      resolveTypeReferenceDirectiveReferences(t, n, i, a, o, c) {
        return this.resolutionCache.resolveTypeReferenceDirectiveReferences(t, n, i, a, o, c);
      }
      resolveLibrary(t, n, i, a) {
        return this.resolutionCache.resolveLibrary(t, n, i, a);
      }
      directoryExists(t) {
        return this.directoryStructureHost.directoryExists(t);
      }
      getDirectories(t) {
        return this.directoryStructureHost.getDirectories(t);
      }
      getCachedDirectoryStructureHost() {
      }
      toPath(t) {
        return Eo(t, this.currentDirectory, this.projectService.toCanonicalFileName);
      }
      watchDirectoryOfFailedLookupLocation(t, n, i) {
        return this.projectService.watchFactory.watchDirectory(t, n, i, this.projectService.getWatchOptions(this), Xl.FailedLookupLocations, this);
      }
      watchAffectingFileLocation(t, n) {
        return this.projectService.watchFactory.watchFile(t, n, 2e3, this.projectService.getWatchOptions(this), Xl.AffectingFileLocation, this);
      }
      clearInvalidateResolutionOfFailedLookupTimer() {
        return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`);
      }
      scheduleInvalidateResolutionsOfFailedLookupLocations() {
        this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`, 1e3, () => {
          this.resolutionCache.invalidateResolutionsOfFailedLookupLocations() && this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this);
        });
      }
      invalidateResolutionsOfFailedLookupLocations() {
        this.clearInvalidateResolutionOfFailedLookupTimer() && this.resolutionCache.invalidateResolutionsOfFailedLookupLocations() && (this.markAsDirty(), this.projectService.delayEnsureProjectForOpenFiles());
      }
      onInvalidatedResolution() {
        this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this);
      }
      watchTypeRootsDirectory(t, n, i) {
        return this.projectService.watchFactory.watchDirectory(t, n, i, this.projectService.getWatchOptions(this), Xl.TypeRoots, this);
      }
      hasChangedAutomaticTypeDirectiveNames() {
        return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames();
      }
      onChangedAutomaticTypeDirectiveNames() {
        this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this);
      }
      fileIsOpen(t) {
        return this.projectService.openFiles.has(t);
      }
      writeLog(t) {
        this.projectService.logger.info(t);
      }
      log(t) {
        this.writeLog(t);
      }
      error(t) {
        this.projectService.logger.msg(t, "Err");
      }
      setInternalCompilerOptionsForEmittingJsFiles() {
        (this.projectKind === 0 || this.projectKind === 2) && (this.compilerOptions.noEmitForJsFiles = !0);
      }
      getGlobalProjectErrors() {
        return dn(this.projectErrors, (t) => !t.file) || Nl;
      }
      getAllProjectErrors() {
        return this.projectErrors || Nl;
      }
      setProjectErrors(t) {
        this.projectErrors = t;
      }
      getLanguageService(t = !0) {
        return t && nd(this), this.languageService;
      }
      getSourceMapper() {
        return this.getLanguageService().getSourceMapper();
      }
      clearSourceMapperCache() {
        this.languageService.clearSourceMapperCache();
      }
      getDocumentPositionMapper(t, n) {
        return this.projectService.getDocumentPositionMapper(this, t, n);
      }
      getSourceFileLike(t) {
        return this.projectService.getSourceFileLike(t, this);
      }
      shouldEmitFile(t) {
        return t && !t.isDynamicOrHasMixedContent() && !this.program.isSourceOfProjectReferenceRedirect(t.path);
      }
      getCompileOnSaveAffectedFileList(t) {
        return this.languageServiceEnabled ? (nd(this), this.builderState = Qd.create(this.program, this.builderState, !0), Rn(Qd.getFilesAffectedBy(this.builderState, this.program, t.path, this.cancellationToken, this.projectService.host), (n) => this.shouldEmitFile(this.projectService.getScriptInfoForPath(n.path)) ? n.fileName : void 0)) : [];
      }
      emitFile(t, n) {
        if (!this.languageServiceEnabled || !this.shouldEmitFile(t)) return {
          emitSkipped: !0,
          diagnostics: Nl
        };
        const { emitSkipped: i, diagnostics: a, outputFiles: o } = this.getLanguageService().getEmitOutput(t.fileName);
        if (!i) {
          for (const c of o) n(ca(c.name, this.currentDirectory), c.text, c.writeByteOrderMark);
          if (this.builderState && U_(this.compilerOptions)) {
            const c = o.filter((_) => $l(_.name));
            if (c.length === 1) {
              const _ = this.program.getSourceFile(t.fileName), u = this.projectService.host.createHash ? this.projectService.host.createHash(c[0].text) : I4(c[0].text);
              Qd.updateSignatureOfFile(this.builderState, u, _.resolvedPath);
            }
          }
        }
        return {
          emitSkipped: i,
          diagnostics: a
        };
      }
      enableLanguageService() {
        this.languageServiceEnabled || this.projectService.serverMode === 2 || (this.languageServiceEnabled = !0, this.lastFileExceededProgramSize = void 0, this.projectService.onUpdateLanguageServiceStateForProject(this, !0));
      }
      cleanupProgram() {
        if (this.program) {
          for (const t of this.program.getSourceFiles()) this.detachScriptInfoIfNotRoot(t.fileName);
          this.program.forEachResolvedProjectReference((t) => this.detachScriptInfoFromProject(t.sourceFile.fileName)), this.program = void 0;
        }
      }
      disableLanguageService(t) {
        this.languageServiceEnabled && (E.assert(this.projectService.serverMode !== 2), this.languageService.cleanupSemanticCache(), this.languageServiceEnabled = !1, this.cleanupProgram(), this.lastFileExceededProgramSize = t, this.builderState = void 0, this.autoImportProviderHost && this.autoImportProviderHost.close(), this.autoImportProviderHost = void 0, this.resolutionCache.closeTypeRootsWatch(), this.clearGeneratedFileWatch(), this.projectService.verifyDocumentRegistry(), this.projectService.onUpdateLanguageServiceStateForProject(this, !1));
      }
      getProjectName() {
        return this.projectName;
      }
      removeLocalTypingsFromTypeAcquisition(t) {
        return !t.enable || !t.include ? t : {
          ...t,
          include: this.removeExistingTypings(t.include)
        };
      }
      getExternalFiles(t) {
        return uf(ks(this.plugins, (n) => {
          if (typeof n.module.getExternalFiles == "function")
            try {
              return n.module.getExternalFiles(this, t || 0);
            } catch (i) {
              this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${i}`), i.stack && this.projectService.logger.info(i.stack);
            }
        }));
      }
      getSourceFile(t) {
        if (this.program)
          return this.program.getSourceFileByPath(t);
      }
      getSourceFileOrConfigFile(t) {
        const n = this.program.getCompilerOptions();
        return t === n.configFilePath ? n.configFile : this.getSourceFile(t);
      }
      close() {
        var t;
        this.typingsCache && this.projectService.typingsInstaller.onProjectClosed(this), this.typingsCache = void 0, this.closeWatchingTypingLocations(), this.cleanupProgram(), bt(this.externalFiles, (n) => this.detachScriptInfoIfNotRoot(n)), this.rootFilesMap.forEach((n) => {
          var i;
          return (i = n.info) == null ? void 0 : i.detachFromProject(this);
        }), this.projectService.pendingEnsureProjectForOpenFiles = !0, this.rootFilesMap = void 0, this.externalFiles = void 0, this.program = void 0, this.builderState = void 0, this.resolutionCache.clear(), this.resolutionCache = void 0, this.cachedUnresolvedImportsPerFile = void 0, (t = this.packageJsonWatches) == null || t.forEach((n) => {
          n.projects.delete(this), n.close();
        }), this.packageJsonWatches = void 0, this.moduleSpecifierCache.clear(), this.moduleSpecifierCache = void 0, this.directoryStructureHost = void 0, this.exportMapCache = void 0, this.projectErrors = void 0, this.plugins.length = 0, this.missingFilesMap && (K_(this.missingFilesMap, md), this.missingFilesMap = void 0), this.clearGeneratedFileWatch(), this.clearInvalidateResolutionOfFailedLookupTimer(), this.autoImportProviderHost && this.autoImportProviderHost.close(), this.autoImportProviderHost = void 0, this.noDtsResolutionProject && this.noDtsResolutionProject.close(), this.noDtsResolutionProject = void 0, this.languageService.dispose(), this.languageService = void 0;
      }
      detachScriptInfoIfNotRoot(t) {
        const n = this.projectService.getScriptInfo(t);
        n && !this.isRoot(n) && n.detachFromProject(this);
      }
      isClosed() {
        return this.rootFilesMap === void 0;
      }
      hasRoots() {
        var t;
        return !!((t = this.rootFilesMap) != null && t.size);
      }
      isOrphan() {
        return !1;
      }
      getRootFiles() {
        return this.rootFilesMap && ma(Go(this.rootFilesMap.values(), (t) => {
          var n;
          return (n = t.info) == null ? void 0 : n.fileName;
        }));
      }
      getRootFilesMap() {
        return this.rootFilesMap;
      }
      getRootScriptInfos() {
        return ma(Go(this.rootFilesMap.values(), (t) => t.info));
      }
      getScriptInfos() {
        return this.languageServiceEnabled ? or(this.program.getSourceFiles(), (t) => {
          const n = this.projectService.getScriptInfoForPath(t.resolvedPath);
          return E.assert(!!n, "getScriptInfo", () => `scriptInfo for a file '${t.fileName}' Path: '${t.path}' / '${t.resolvedPath}' is missing.`), n;
        }) : this.getRootScriptInfos();
      }
      getExcludedFiles() {
        return Nl;
      }
      getFileNames(t, n) {
        if (!this.program) return [];
        if (!this.languageServiceEnabled) {
          let a = this.getRootFiles();
          if (this.compilerOptions) {
            const o = Cce(this.compilerOptions);
            o && (a || (a = [])).push(o);
          }
          return a;
        }
        const i = [];
        for (const a of this.program.getSourceFiles())
          t && this.program.isSourceFileFromExternalLibrary(a) || i.push(a.fileName);
        if (!n) {
          const a = this.program.getCompilerOptions().configFile;
          if (a && (i.push(a.fileName), a.extendedSourceFiles))
            for (const o of a.extendedSourceFiles) i.push(o);
        }
        return i;
      }
      getFileNamesWithRedirectInfo(t) {
        return this.getFileNames().map((n) => ({
          fileName: n,
          isSourceOfProjectReferenceRedirect: t && this.isSourceOfProjectReferenceRedirect(n)
        }));
      }
      hasConfigFile(t) {
        if (this.program && this.languageServiceEnabled) {
          const n = this.program.getCompilerOptions().configFile;
          if (n) {
            if (t === n.fileName) return !0;
            if (n.extendedSourceFiles) {
              for (const i of n.extendedSourceFiles) if (t === i) return !0;
            }
          }
        }
        return !1;
      }
      containsScriptInfo(t) {
        if (this.isRoot(t)) return !0;
        if (!this.program) return !1;
        const n = this.program.getSourceFileByPath(t.path);
        return !!n && n.resolvedPath === t.path;
      }
      containsFile(t, n) {
        const i = this.projectService.getScriptInfoForNormalizedPath(t);
        return i && (i.isScriptOpen() || !n) ? this.containsScriptInfo(i) : !1;
      }
      isRoot(t) {
        var n, i;
        return ((i = (n = this.rootFilesMap) == null ? void 0 : n.get(t.path)) == null ? void 0 : i.info) === t;
      }
      addRoot(t, n) {
        E.assert(!this.isRoot(t)), this.rootFilesMap.set(t.path, {
          fileName: n || t.fileName,
          info: t
        }), t.attachToProject(this), this.markAsDirty();
      }
      addMissingFileRoot(t) {
        const n = this.projectService.toPath(t);
        this.rootFilesMap.set(n, { fileName: t }), this.markAsDirty();
      }
      removeFile(t, n, i) {
        this.isRoot(t) && this.removeRoot(t), n ? this.resolutionCache.removeResolutionsOfFile(t.path) : this.resolutionCache.invalidateResolutionOfFile(t.path), this.cachedUnresolvedImportsPerFile.delete(t.path), i && t.detachFromProject(this), this.markAsDirty();
      }
      registerFileUpdate(t) {
        (this.updatedFileNames || (this.updatedFileNames = /* @__PURE__ */ new Set())).add(t);
      }
      markFileAsDirty(t) {
        this.markAsDirty(), this.exportMapCache && !this.exportMapCache.isEmpty() && (this.changedFilesForExportMapCache || (this.changedFilesForExportMapCache = /* @__PURE__ */ new Set())).add(t);
      }
      markAsDirty() {
        this.dirty || (this.projectStateVersion++, this.dirty = !0);
      }
      markAutoImportProviderAsDirty() {
        var t;
        this.autoImportProviderHost || (this.autoImportProviderHost = void 0), (t = this.autoImportProviderHost) == null || t.markAsDirty();
      }
      onAutoImportProviderSettingsChanged() {
        this.markAutoImportProviderAsDirty();
      }
      onPackageJsonChange() {
        this.moduleSpecifierCache.clear(), this.markAutoImportProviderAsDirty();
      }
      onFileAddedOrRemoved(t) {
        this.hasAddedorRemovedFiles = !0, t && (this.hasAddedOrRemovedSymlinks = !0);
      }
      onDiscoveredSymlink() {
        this.hasAddedOrRemovedSymlinks = !0;
      }
      onReleaseOldSourceFile(t, n, i, a) {
        (!a || t.resolvedPath === t.path && a.resolvedPath !== t.path) && this.detachScriptInfoFromProject(t.fileName, i);
      }
      updateFromProject() {
        nd(this);
      }
      updateGraph() {
        var t, n;
        (t = sn) == null || t.push(sn.Phase.Session, "updateGraph", {
          name: this.projectName,
          kind: dP[this.projectKind]
        }), this.resolutionCache.startRecordingFilesWithChangedResolutions();
        const i = this.updateGraphWorker(), a = this.hasAddedorRemovedFiles;
        this.hasAddedorRemovedFiles = !1, this.hasAddedOrRemovedSymlinks = !1;
        const o = this.resolutionCache.finishRecordingFilesWithChangedResolutions() || Nl;
        for (const _ of o) this.cachedUnresolvedImportsPerFile.delete(_);
        this.languageServiceEnabled && this.projectService.serverMode === 0 && !this.isOrphan() ? ((i || o.length) && (this.lastCachedUnresolvedImportsList = AKe(this.program, this.cachedUnresolvedImportsPerFile)), this.enqueueInstallTypingsForProject(a)) : this.lastCachedUnresolvedImportsList = void 0;
        const c = this.projectProgramVersion === 0 && i;
        return i && this.projectProgramVersion++, a && this.markAutoImportProviderAsDirty(), c && this.getPackageJsonAutoImportProvider(), (n = sn) == null || n.pop(), !i;
      }
      enqueueInstallTypingsForProject(t) {
        const n = this.getTypeAcquisition();
        if (!n || !n.enable || this.projectService.typingsInstaller === pM) return;
        const i = this.typingsCache;
        (t || !i || DKe(n, i.typeAcquisition) || wKe(this.getCompilationSettings(), i.compilerOptions) || PKe(this.lastCachedUnresolvedImportsList, i.unresolvedImports)) && (this.typingsCache = {
          compilerOptions: this.getCompilationSettings(),
          typeAcquisition: n,
          unresolvedImports: this.lastCachedUnresolvedImportsList
        }, this.projectService.typingsInstaller.enqueueInstallTypingsRequest(this, n, this.lastCachedUnresolvedImportsList));
      }
      updateTypingFiles(t, n, i, a) {
        this.typingsCache = {
          compilerOptions: t,
          typeAcquisition: n,
          unresolvedImports: i
        };
        const o = !n || !n.enable ? Nl : uf(a);
        C7(o, this.typingFiles, JC(!this.useCaseSensitiveFileNames()), so, (c) => this.detachScriptInfoFromProject(c)) && (this.typingFiles = o, this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile), this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this));
      }
      closeWatchingTypingLocations() {
        this.typingWatchers && K_(this.typingWatchers, md), this.typingWatchers = void 0;
      }
      onTypingInstallerWatchInvoke() {
        this.typingWatchers.isInvoked = !0, this.projectService.updateTypingsForProject({
          projectName: this.getProjectName(),
          kind: F9
        });
      }
      watchTypingLocations(t) {
        if (this.currentDirectory === this.projectService.currentDirectory || !Lw(this.toPath(this.currentDirectory))) return;
        if (!t) {
          this.typingWatchers.isInvoked = !1;
          return;
        }
        if (!t.length) {
          this.closeWatchingTypingLocations();
          return;
        }
        const n = new Map(this.typingWatchers);
        this.typingWatchers || (this.typingWatchers = /* @__PURE__ */ new Map()), this.typingWatchers.isInvoked = !1;
        const i = (a, o) => {
          const c = this.toPath(a);
          if (n.delete(c), !this.typingWatchers.has(c)) {
            const _ = o === "FileWatcher" ? Xl.TypingInstallerLocationFile : Xl.TypingInstallerLocationDirectory;
            this.typingWatchers.set(c, Lw(c) ? o === "FileWatcher" ? this.projectService.watchFactory.watchFile(a, () => this.typingWatchers.isInvoked ? this.writeLog("TypingWatchers already invoked") : this.onTypingInstallerWatchInvoke(), 2e3, this.projectService.getWatchOptions(this), _, this) : this.projectService.watchFactory.watchDirectory(a, (u) => {
              if (this.typingWatchers.isInvoked) return this.writeLog("TypingWatchers already invoked");
              if (!lc(u, ".json")) return this.writeLog("Ignoring files that are not *.json");
              if (Rh(u, jn(this.projectService.typingsInstaller.globalTypingsCacheLocation, "package.json"), !this.useCaseSensitiveFileNames())) return this.writeLog("Ignoring package.json change at global typings location");
              this.onTypingInstallerWatchInvoke();
            }, 1, this.projectService.getWatchOptions(this), _, this) : (this.writeLog(`Skipping watcher creation at ${a}:: ${QH(_, this)}`), iE));
          }
        };
        for (const a of t) {
          const o = nl(a);
          if (o === "package.json" || o === "bower.json") {
            i(a, "FileWatcher");
            continue;
          }
          if (vp(this.currentDirectory, a, this.currentDirectory, !this.useCaseSensitiveFileNames())) {
            const c = a.indexOf(Co, this.currentDirectory.length + 1);
            i(c !== -1 ? a.substr(0, c) : a, "DirectoryWatcher");
            continue;
          }
          if (vp(this.projectService.typingsInstaller.globalTypingsCacheLocation, a, this.currentDirectory, !this.useCaseSensitiveFileNames())) {
            i(this.projectService.typingsInstaller.globalTypingsCacheLocation, "DirectoryWatcher");
            continue;
          }
          i(a, "DirectoryWatcher");
        }
        n.forEach((a, o) => {
          a.close(), this.typingWatchers.delete(o);
        });
      }
      skipWatchingFailedLookups(t) {
        const n = this.projectService.getScriptInfoForPath(t);
        return n?.isDynamic;
      }
      skipWatchingTypeRoots() {
        return Xk(this) && this.currentDirectory === this.projectService.currentDirectory;
      }
      getCurrentProgram() {
        return this.program;
      }
      removeExistingTypings(t) {
        if (!t.length) return t;
        const n = LF(this.getCompilerOptions(), this);
        return dn(t, (i) => !n.includes(i));
      }
      updateGraphWorker() {
        var t, n;
        const i = this.languageService.getCurrentProgram();
        E.assert(i === this.program), E.assert(!this.isClosed(), "Called update graph worker of closed project"), this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);
        const a = ko(), { hasInvalidatedResolutions: o, hasInvalidatedLibResolutions: c } = this.resolutionCache.createHasInvalidatedResolutions(Mh, Mh);
        this.hasInvalidatedResolutions = o, this.hasInvalidatedLibResolutions = c, this.resolutionCache.startCachingPerDirectoryResolution(), this.dirty = !1, this.updateFromProjectInProgress = !0, this.program = this.languageService.getProgram(), this.updateFromProjectInProgress = !1, (t = sn) == null || t.push(sn.Phase.Session, "finishCachingPerDirectoryResolution"), this.resolutionCache.finishCachingPerDirectoryResolution(this.program, i), (n = sn) == null || n.pop(), E.assert(i === void 0 || this.program !== void 0);
        let _ = !1;
        if (this.program && (!i || this.program !== i && this.program.structureIsReused !== 2)) {
          if (_ = !0, this.rootFilesMap.forEach((g, h) => {
            var S;
            const T = this.program.getSourceFileByPath(h), k = g.info;
            !T || ((S = g.info) == null ? void 0 : S.path) === T.resolvedPath || (g.info = this.projectService.getScriptInfo(T.fileName), E.assert(g.info.isAttached(this)), k?.detachFromProject(this));
          }), TU(this.program, this.missingFilesMap || (this.missingFilesMap = /* @__PURE__ */ new Map()), (g, h) => this.addMissingFileWatcher(g, h)), this.generatedFilesMap) {
            const g = this.compilerOptions.outFile;
            $_e(this.generatedFilesMap) ? (!g || !this.isValidGeneratedFileWatcher(__(g) + ".d.ts", this.generatedFilesMap)) && this.clearGeneratedFileWatch() : g ? this.clearGeneratedFileWatch() : this.generatedFilesMap.forEach((h, S) => {
              const T = this.program.getSourceFileByPath(S);
              (!T || T.resolvedPath !== S || !this.isValidGeneratedFileWatcher(H5(T.fileName, this.compilerOptions, this.program), h)) && (Np(h), this.generatedFilesMap.delete(S));
            });
          }
          this.languageServiceEnabled && this.projectService.serverMode === 0 && this.resolutionCache.updateTypeRootsWatch();
        }
        this.projectService.verifyProgram(this), this.exportMapCache && !this.exportMapCache.isEmpty() && (this.exportMapCache.releaseSymbols(), this.hasAddedorRemovedFiles || i && !this.program.structureIsReused ? this.exportMapCache.clear() : this.changedFilesForExportMapCache && i && this.program && Vg(this.changedFilesForExportMapCache, (g) => {
          const h = i.getSourceFileByPath(g), S = this.program.getSourceFileByPath(g);
          return !h || !S ? (this.exportMapCache.clear(), !0) : this.exportMapCache.onFileChanged(h, S, !!this.getTypeAcquisition().enable);
        })), this.changedFilesForExportMapCache && this.changedFilesForExportMapCache.clear(), (this.hasAddedOrRemovedSymlinks || this.program && !this.program.structureIsReused && this.getCompilerOptions().preserveSymlinks) && (this.symlinks = void 0, this.moduleSpecifierCache.clear());
        const u = this.externalFiles || Nl;
        this.externalFiles = this.getExternalFiles(), C7(this.externalFiles, u, JC(!this.useCaseSensitiveFileNames()), (g) => {
          this.projectService.getOrCreateScriptInfoNotOpenedByClient(g, this.currentDirectory, this.directoryStructureHost, !1)?.attachToProject(this);
        }, (g) => this.detachScriptInfoFromProject(g));
        const d = ko() - a;
        return this.sendPerformanceEvent("UpdateGraph", d), this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${_}${this.program ? ` structureIsReused:: ${yj[this.program.structureIsReused]}` : ""} Elapsed: ${d}ms`), this.projectService.logger.isTestLogger ? this.program !== i ? this.print(!0, this.hasAddedorRemovedFiles, !0) : this.writeLog("Same program as before") : this.hasAddedorRemovedFiles ? this.print(!0, !0, !1) : this.program !== i && this.writeLog("Different program with same set of files"), this.projectService.verifyDocumentRegistry(), _;
      }
      sendPerformanceEvent(t, n) {
        this.projectService.sendPerformanceEvent(t, n);
      }
      detachScriptInfoFromProject(t, n) {
        const i = this.projectService.getScriptInfo(t);
        i && (i.detachFromProject(this), n || this.resolutionCache.removeResolutionsOfFile(i.path));
      }
      addMissingFileWatcher(t, n) {
        var i;
        if ($0(this)) {
          const o = this.projectService.configFileExistenceInfoCache.get(t);
          if ((i = o?.config) != null && i.projects.has(this.canonicalConfigFilePath)) return iE;
        }
        const a = this.projectService.watchFactory.watchFile(ca(n, this.currentDirectory), (o, c) => {
          $0(this) && this.getCachedDirectoryStructureHost().addOrDeleteFile(o, t, c), c === 0 && this.missingFilesMap.has(t) && (this.missingFilesMap.delete(t), a.close(), this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this));
        }, 500, this.projectService.getWatchOptions(this), Xl.MissingFile, this);
        return a;
      }
      isWatchedMissingFile(t) {
        return !!this.missingFilesMap && this.missingFilesMap.has(t);
      }
      addGeneratedFileWatch(t, n) {
        if (this.compilerOptions.outFile)
          this.generatedFilesMap || (this.generatedFilesMap = this.createGeneratedFileWatcher(t));
        else {
          const i = this.toPath(n);
          if (this.generatedFilesMap) {
            if ($_e(this.generatedFilesMap)) {
              E.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);
              return;
            }
            if (this.generatedFilesMap.has(i)) return;
          } else this.generatedFilesMap = /* @__PURE__ */ new Map();
          this.generatedFilesMap.set(i, this.createGeneratedFileWatcher(t));
        }
      }
      createGeneratedFileWatcher(t) {
        return {
          generatedFilePath: this.toPath(t),
          watcher: this.projectService.watchFactory.watchFile(t, () => {
            this.clearSourceMapperCache(), this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this);
          }, 2e3, this.projectService.getWatchOptions(this), Xl.MissingGeneratedFile, this)
        };
      }
      isValidGeneratedFileWatcher(t, n) {
        return this.toPath(t) === n.generatedFilePath;
      }
      clearGeneratedFileWatch() {
        this.generatedFilesMap && ($_e(this.generatedFilesMap) ? Np(this.generatedFilesMap) : K_(this.generatedFilesMap, Np), this.generatedFilesMap = void 0);
      }
      getScriptInfoForNormalizedPath(t) {
        const n = this.projectService.getScriptInfoForPath(this.toPath(t));
        return n && !n.isAttached(this) ? Kh.ThrowProjectDoesNotContainDocument(t, this) : n;
      }
      getScriptInfo(t) {
        return this.projectService.getScriptInfo(t);
      }
      filesToString(t) {
        return this.filesToStringWorker(t, !0, !1);
      }
      filesToStringWorker(t, n, i) {
        if (this.initialLoadPending) return `	Files (0) InitialLoadPending
`;
        if (!this.program) return `	Files (0) NoProgram
`;
        const a = this.program.getSourceFiles();
        let o = `	Files (${a.length})
`;
        if (t) {
          for (const c of a) o += `	${c.fileName}${i ? ` ${c.version} ${JSON.stringify(c.text)}` : ""}
`;
          n && (o += `

`, eV(this.program, (c) => o += `	${c}
`));
        }
        return o;
      }
      print(t, n, i) {
        var a;
        this.writeLog(`Project '${this.projectName}' (${dP[this.projectKind]})`), this.writeLog(this.filesToStringWorker(t && this.projectService.logger.hasLevel(3), n && this.projectService.logger.hasLevel(3), i && this.projectService.logger.hasLevel(3))), this.writeLog("-----------------------------------------------"), this.autoImportProviderHost && this.autoImportProviderHost.print(!1, !1, !1), (a = this.noDtsResolutionProject) == null || a.print(!1, !1, !1);
      }
      setCompilerOptions(t) {
        var n;
        if (t) {
          t.allowNonTsExtensions = !0;
          const i = this.compilerOptions;
          this.compilerOptions = t, this.setInternalCompilerOptionsForEmittingJsFiles(), (n = this.noDtsResolutionProject) == null || n.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()), o5(i, t) && (this.cachedUnresolvedImportsPerFile.clear(), this.lastCachedUnresolvedImportsList = void 0, this.resolutionCache.onChangesAffectModuleResolution(), this.moduleSpecifierCache.clear()), this.markAsDirty();
        }
      }
      setWatchOptions(t) {
        this.watchOptions = t;
      }
      getWatchOptions() {
        return this.watchOptions;
      }
      setTypeAcquisition(t) {
        t && (this.typeAcquisition = this.removeLocalTypingsFromTypeAcquisition(t));
      }
      getTypeAcquisition() {
        return this.typeAcquisition || {};
      }
      getChangesSinceVersion(t, n) {
        var i, a;
        const o = n ? (u) => ma(u.entries(), ([d, g]) => ({
          fileName: d,
          isSourceOfProjectReferenceRedirect: g
        })) : (u) => ma(u.keys());
        this.initialLoadPending || nd(this);
        const c = {
          projectName: this.getProjectName(),
          version: this.projectProgramVersion,
          isInferred: Xk(this),
          options: this.getCompilationSettings(),
          languageServiceDisabled: !this.languageServiceEnabled,
          lastFileExceededProgramSize: this.lastFileExceededProgramSize
        }, _ = this.updatedFileNames;
        if (this.updatedFileNames = void 0, this.lastReportedFileNames && t === this.lastReportedVersion) {
          if (this.projectProgramVersion === this.lastReportedVersion && !_) return {
            info: c,
            projectErrors: this.getGlobalProjectErrors()
          };
          const u = this.lastReportedFileNames, d = ((i = this.externalFiles) == null ? void 0 : i.map((D) => ({
            fileName: ho(D),
            isSourceOfProjectReferenceRedirect: !1
          }))) || Nl, g = jC(this.getFileNamesWithRedirectInfo(!!n).concat(d), (D) => D.fileName, (D) => D.isSourceOfProjectReferenceRedirect), h = /* @__PURE__ */ new Map(), S = /* @__PURE__ */ new Map(), T = _ ? ma(_.keys()) : [], k = [];
          return Dl(g, (D, P) => {
            u.has(P) ? n && D !== u.get(P) && k.push({
              fileName: P,
              isSourceOfProjectReferenceRedirect: D
            }) : h.set(P, D);
          }), Dl(u, (D, P) => {
            g.has(P) || S.set(P, D);
          }), this.lastReportedFileNames = g, this.lastReportedVersion = this.projectProgramVersion, {
            info: c,
            changes: {
              added: o(h),
              removed: o(S),
              updated: n ? T.map((D) => ({
                fileName: D,
                isSourceOfProjectReferenceRedirect: this.isSourceOfProjectReferenceRedirect(D)
              })) : T,
              updatedRedirects: n ? k : void 0
            },
            projectErrors: this.getGlobalProjectErrors()
          };
        } else {
          const u = this.getFileNamesWithRedirectInfo(!!n), d = ((a = this.externalFiles) == null ? void 0 : a.map((h) => ({
            fileName: ho(h),
            isSourceOfProjectReferenceRedirect: !1
          }))) || Nl, g = u.concat(d);
          return this.lastReportedFileNames = jC(g, (h) => h.fileName, (h) => h.isSourceOfProjectReferenceRedirect), this.lastReportedVersion = this.projectProgramVersion, {
            info: c,
            files: n ? g : g.map((h) => h.fileName),
            projectErrors: this.getGlobalProjectErrors()
          };
        }
      }
      removeRoot(t) {
        this.rootFilesMap.delete(t.path);
      }
      isSourceOfProjectReferenceRedirect(t) {
        return !!this.program && this.program.isSourceOfProjectReferenceRedirect(t);
      }
      getGlobalPluginSearchPaths() {
        return [...this.projectService.pluginProbeLocations, jn(this.projectService.getExecutingFilePath(), "../../..")];
      }
      enableGlobalPlugins(t) {
        if (!this.projectService.globalPlugins.length) return;
        const n = this.projectService.host;
        if (!n.require && !n.importPlugin) {
          this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");
          return;
        }
        const i = this.getGlobalPluginSearchPaths();
        for (const a of this.projectService.globalPlugins)
          a && (t.plugins && t.plugins.some((o) => o.name === a) || (this.projectService.logger.info(`Loading global plugin ${a}`), this.enablePlugin({
            name: a,
            global: !0
          }, i)));
      }
      enablePlugin(t, n) {
        this.projectService.requestEnablePlugin(this, t, n);
      }
      enableProxy(t, n) {
        try {
          if (typeof t != "function") {
            this.projectService.logger.info(`Skipped loading plugin ${n.name} because it did not expose a proper factory function`);
            return;
          }
          const i = {
            config: n,
            project: this,
            languageService: this.languageService,
            languageServiceHost: this,
            serverHost: this.projectService.host,
            session: this.projectService.session
          }, a = t({ typescript: Xwe }), o = a.create(i);
          for (const c of Object.keys(this.languageService)) c in o || (this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${c} in created LS. Patching.`), o[c] = this.languageService[c]);
          this.projectService.logger.info("Plugin validation succeeded"), this.languageService = o, this.plugins.push({
            name: n.name,
            module: a
          });
        } catch (i) {
          this.projectService.logger.info(`Plugin activation failed: ${i}`);
        }
      }
      onPluginConfigurationChanged(t, n) {
        this.plugins.filter((i) => i.name === t).forEach((i) => {
          i.module.onConfigurationChanged && i.module.onConfigurationChanged(n);
        });
      }
      refreshDiagnostics() {
        this.projectService.sendProjectsUpdatedInBackgroundEvent();
      }
      getPackageJsonsVisibleToFile(t, n) {
        return this.projectService.serverMode !== 0 ? Nl : this.projectService.getPackageJsonsVisibleToFile(t, this, n);
      }
      getNearestAncestorDirectoryWithPackageJson(t) {
        return this.projectService.getNearestAncestorDirectoryWithPackageJson(t, this);
      }
      getPackageJsonsForAutoImport(t) {
        return this.getPackageJsonsVisibleToFile(jn(this.currentDirectory, Iw), t);
      }
      getPackageJsonCache() {
        return this.projectService.packageJsonCache;
      }
      getCachedExportInfoMap() {
        return this.exportMapCache || (this.exportMapCache = Oq(this));
      }
      clearCachedExportInfoMap() {
        var t;
        (t = this.exportMapCache) == null || t.clear();
      }
      getModuleSpecifierCache() {
        return this.moduleSpecifierCache;
      }
      includePackageJsonAutoImports() {
        return this.projectService.includePackageJsonAutoImports() === 0 || !this.languageServiceEnabled || TI(this.currentDirectory) || !this.isDefaultProjectForOpenFiles() ? 0 : this.projectService.includePackageJsonAutoImports();
      }
      getHostForAutoImportProvider() {
        var t, n;
        return this.program ? {
          fileExists: this.program.fileExists,
          directoryExists: this.program.directoryExists,
          realpath: this.program.realpath || ((t = this.projectService.host.realpath) == null ? void 0 : t.bind(this.projectService.host)),
          getCurrentDirectory: this.getCurrentDirectory.bind(this),
          readFile: this.projectService.host.readFile.bind(this.projectService.host),
          getDirectories: this.projectService.host.getDirectories.bind(this.projectService.host),
          trace: (n = this.projectService.host.trace) == null ? void 0 : n.bind(this.projectService.host),
          useCaseSensitiveFileNames: this.program.useCaseSensitiveFileNames(),
          readDirectory: this.projectService.host.readDirectory.bind(this.projectService.host)
        } : this.projectService.host;
      }
      getPackageJsonAutoImportProvider() {
        var t, n, i;
        if (this.autoImportProviderHost === !1) return;
        if (this.projectService.serverMode !== 0) {
          this.autoImportProviderHost = !1;
          return;
        }
        if (this.autoImportProviderHost) {
          if (nd(this.autoImportProviderHost), this.autoImportProviderHost.isEmpty()) {
            this.autoImportProviderHost.close(), this.autoImportProviderHost = void 0;
            return;
          }
          return this.autoImportProviderHost.getCurrentProgram();
        }
        const a = this.includePackageJsonAutoImports();
        if (a) {
          (t = sn) == null || t.push(sn.Phase.Session, "getPackageJsonAutoImportProvider");
          const o = ko();
          if (this.autoImportProviderHost = Z_e.create(a, this, this.getHostForAutoImportProvider()) ?? !1, this.autoImportProviderHost)
            return nd(this.autoImportProviderHost), this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider", ko() - o), (n = sn) == null || n.pop(), this.autoImportProviderHost.getCurrentProgram();
          (i = sn) == null || i.pop();
        }
      }
      isDefaultProjectForOpenFiles() {
        return !!Dl(this.projectService.openFiles, (t, n) => this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(n)) === this);
      }
      watchNodeModulesForPackageJsonChanges(t) {
        return this.projectService.watchPackageJsonsInNodeModules(t, this);
      }
      getIncompleteCompletionsCache() {
        return this.projectService.getIncompleteCompletionsCache();
      }
      getNoDtsResolutionProject(t) {
        return E.assert(this.projectService.serverMode === 0), this.noDtsResolutionProject ?? (this.noDtsResolutionProject = new Q_e(this)), this.noDtsResolutionProject.rootFile !== t && (this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this.noDtsResolutionProject, [t]), this.noDtsResolutionProject.rootFile = t), this.noDtsResolutionProject;
      }
      runWithTemporaryFileUpdate(t, n, i) {
        var a, o, c, _;
        const u = this.program, d = E.checkDefined((a = this.program) == null ? void 0 : a.getSourceFile(t), "Expected file to be part of program"), g = E.checkDefined(d.getFullText());
        (o = this.getScriptInfo(t)) == null || o.editContent(0, g.length, n), this.updateGraph();
        try {
          i(this.program, u, (c = this.program) == null ? void 0 : c.getSourceFile(t));
        } finally {
          (_ = this.getScriptInfo(t)) == null || _.editContent(0, n.length, g);
        }
      }
      getCompilerOptionsForNoDtsResolutionProject() {
        return {
          ...this.getCompilerOptions(),
          noDtsResolution: !0,
          allowJs: !0,
          maxNodeModuleJsDepth: 3,
          diagnostics: !1,
          skipLibCheck: !0,
          sourceMap: !1,
          types: Te,
          lib: Te,
          noLib: !0
        };
      }
    };
    function AKe(e, t) {
      var n, i;
      const a = e.getSourceFiles();
      (n = sn) == null || n.push(sn.Phase.Session, "getUnresolvedImports", { count: a.length });
      const o = e.getTypeChecker().getAmbientModules().map((_) => Qp(_.getName())), c = x4(ks(a, (_) => NKe(e, _, o, t)));
      return (i = sn) == null || i.pop(), c;
    }
    function NKe(e, t, n, i) {
      return v_(i, t.path, () => {
        let a;
        return e.forEachResolvedModule(({ resolvedModule: o }, c) => {
          (!o || !MD(o.extension)) && !jl(c) && !n.some((_) => _ === c) && (a = kr(a, BF(c).packageName));
        }, t), a || Nl;
      });
    }
    var X_e = class extends $k {
      constructor(e, t, n, i, a, o) {
        super(e.newInferredProjectName(), 0, e, !1, void 0, t, !1, n, e.host, a), this._isJsInferredProject = !1, this.typeAcquisition = o, this.projectRootPath = i && e.toCanonicalFileName(i), !i && !e.useSingleInferredProject && (this.canonicalCurrentDirectory = e.toCanonicalFileName(this.currentDirectory)), this.enableGlobalPlugins(this.getCompilerOptions());
      }
      toggleJsInferredProject(e) {
        e !== this._isJsInferredProject && (this._isJsInferredProject = e, this.setCompilerOptions());
      }
      setCompilerOptions(e) {
        if (!e && !this.getCompilationSettings()) return;
        const t = ZV(e || this.getCompilationSettings());
        this._isJsInferredProject && typeof t.maxNodeModuleJsDepth != "number" ? t.maxNodeModuleJsDepth = 2 : this._isJsInferredProject || (t.maxNodeModuleJsDepth = void 0), t.allowJs = !0, super.setCompilerOptions(t);
      }
      addRoot(e) {
        E.assert(e.isScriptOpen()), this.projectService.startWatchingConfigFilesForInferredProjectRoot(e), !this._isJsInferredProject && e.isJavaScript() ? this.toggleJsInferredProject(!0) : this.isOrphan() && this._isJsInferredProject && !e.isJavaScript() && this.toggleJsInferredProject(!1), super.addRoot(e);
      }
      removeRoot(e) {
        this.projectService.stopWatchingConfigFilesForScriptInfo(e), super.removeRoot(e), !this.isOrphan() && this._isJsInferredProject && e.isJavaScript() && hr(this.getRootScriptInfos(), (t) => !t.isJavaScript()) && this.toggleJsInferredProject(!1);
      }
      isOrphan() {
        return !this.hasRoots();
      }
      isProjectWithSingleRoot() {
        return !this.projectRootPath && !this.projectService.useSingleInferredProject || this.getRootScriptInfos().length === 1;
      }
      close() {
        bt(this.getRootScriptInfos(), (e) => this.projectService.stopWatchingConfigFilesForScriptInfo(e)), super.close();
      }
      getTypeAcquisition() {
        return this.typeAcquisition || {
          enable: q_e(this),
          include: Te,
          exclude: Te
        };
      }
    }, Q_e = class extends $k {
      constructor(e) {
        super(e.projectService.newAuxiliaryProjectName(), 4, e.projectService, !1, void 0, e.getCompilerOptionsForNoDtsResolutionProject(), !1, void 0, e.projectService.host, e.currentDirectory);
      }
      isOrphan() {
        return !0;
      }
      scheduleInvalidateResolutionsOfFailedLookupLocations() {
      }
    }, Y_e = class bge extends $k {
      constructor(t, n, i) {
        super(t.projectService.newAutoImportProviderProjectName(), 3, t.projectService, !1, void 0, i, !1, t.getWatchOptions(), t.projectService.host, t.currentDirectory), this.hostProject = t, this.rootFileNames = n, this.useSourceOfProjectReferenceRedirect = Ua(this.hostProject, this.hostProject.useSourceOfProjectReferenceRedirect), this.getParsedCommandLine = Ua(this.hostProject, this.hostProject.getParsedCommandLine);
      }
      static getRootFileNames(t, n, i, a) {
        var o, c;
        if (!t) return Te;
        const _ = n.getCurrentProgram();
        if (!_) return Te;
        const u = ko();
        let d, g;
        const h = jn(n.currentDirectory, Iw), S = n.getPackageJsonsForAutoImport(jn(n.currentDirectory, h));
        for (const G of S)
          (o = G.dependencies) == null || o.forEach((L, z) => N(z)), (c = G.peerDependencies) == null || c.forEach((L, z) => N(z));
        let T = 0;
        if (d) {
          const G = n.getSymlinkCache();
          for (const L of ma(d.keys())) {
            if (t === 2 && T >= this.maxDependencies)
              return n.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`), Te;
            const z = wW(L, n.currentDirectory, a, i, _.getModuleResolutionCache());
            if (z) {
              const H = M(z, _, G);
              if (H) {
                T += P(H);
                continue;
              }
            }
            if (!bt([n.currentDirectory, n.getGlobalTypingsCacheLocation()], (H) => {
              if (H) {
                const U = wW(`@types/${L}`, H, a, i, _.getModuleResolutionCache());
                if (U) {
                  const pe = M(U, _, G);
                  return T += P(pe), !0;
                }
              }
            }) && z && a.allowJs && a.maxNodeModuleJsDepth) {
              const H = M(z, _, G, !0);
              T += P(H);
            }
          }
        }
        const k = _.getResolvedProjectReferences();
        let D = 0;
        return k?.length && n.projectService.getHostPreferences().includeCompletionsForModuleExports && k.forEach((G) => {
          if (G?.commandLine.options.outFile) D += P(R([F0(G.commandLine.options.outFile, ".d.ts")]));
          else if (G) {
            const L = s_(() => XS(G.commandLine, !n.useCaseSensitiveFileNames()));
            D += P(R(Rn(G.commandLine.fileNames, (z) => !$l(z) && !lc(z, ".json") && !_.getSourceFile(z) ? Pw(z, G.commandLine, !n.useCaseSensitiveFileNames(), L) : void 0)));
          }
        }), g?.size && n.log(`AutoImportProviderProject: found ${g.size} root files in ${T} dependencies ${D} referenced projects in ${ko() - u} ms`), g ? ma(g.values()) : Te;
        function P(G) {
          return G?.length ? (g ?? (g = /* @__PURE__ */ new Set()), G.forEach((L) => g.add(L)), 1) : 0;
        }
        function N(G) {
          ta(G, "@types/") || (d || (d = /* @__PURE__ */ new Set())).add(G);
        }
        function M(G, L, z, H) {
          var U;
          const pe = FW(G, a, i, L.getModuleResolutionCache(), H);
          if (pe) {
            const ie = (U = i.realpath) == null ? void 0 : U.call(i, G.packageDirectory), W = ie ? n.toPath(ie) : void 0, Q = W && W !== n.toPath(G.packageDirectory);
            return Q && z.setSymlinkedDirectory(G.packageDirectory, {
              real: El(ie),
              realPath: El(W)
            }), R(pe, Q ? (se) => se.replace(G.packageDirectory, ie) : void 0);
          }
        }
        function R(G, L) {
          return Rn(G, (z) => {
            const H = L ? L(z) : z;
            if (!_.getSourceFile(H) && !(L && _.getSourceFile(z))) return H;
          });
        }
      }
      static create(t, n, i) {
        if (t === 0) return;
        const a = {
          ...n.getCompilerOptions(),
          ...this.compilerOptionsOverrides
        }, o = this.getRootFileNames(t, n, i, a);
        if (o.length)
          return new bge(n, o, a);
      }
      isEmpty() {
        return !_t(this.rootFileNames);
      }
      isOrphan() {
        return !0;
      }
      updateGraph() {
        let t = this.rootFileNames;
        t || (t = bge.getRootFileNames(this.hostProject.includePackageJsonAutoImports(), this.hostProject, this.hostProject.getHostForAutoImportProvider(), this.getCompilationSettings())), this.projectService.setFileNamesOfAutoImportProviderOrAuxillaryProject(this, t), this.rootFileNames = t;
        const n = this.getCurrentProgram(), i = super.updateGraph();
        return n && n !== this.getCurrentProgram() && this.hostProject.clearCachedExportInfoMap(), i;
      }
      scheduleInvalidateResolutionsOfFailedLookupLocations() {
      }
      hasRoots() {
        var t;
        return !!((t = this.rootFileNames) != null && t.length);
      }
      markAsDirty() {
        this.rootFileNames = void 0, super.markAsDirty();
      }
      getScriptFileNames() {
        return this.rootFileNames || Te;
      }
      getLanguageService() {
        throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.");
      }
      onAutoImportProviderSettingsChanged() {
        throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.");
      }
      onPackageJsonChange() {
        throw new Error("package.json changes should be notified on an AutoImportProvider's host project");
      }
      getHostForAutoImportProvider() {
        throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.");
      }
      getProjectReferences() {
        return this.hostProject.getProjectReferences();
      }
      includePackageJsonAutoImports() {
        return 0;
      }
      getSymlinkCache() {
        return this.hostProject.getSymlinkCache();
      }
      getModuleResolutionCache() {
        var t;
        return (t = this.hostProject.getCurrentProgram()) == null ? void 0 : t.getModuleResolutionCache();
      }
    };
    Y_e.maxDependencies = 10, Y_e.compilerOptionsOverrides = {
      diagnostics: !1,
      skipLibCheck: !0,
      sourceMap: !1,
      types: Te,
      lib: Te,
      noLib: !0
    };
    var Z_e = Y_e, K_e = class extends $k {
      constructor(e, t, n, i, a) {
        super(e, 1, n, !1, void 0, {}, !1, void 0, i, Xn(e)), this.canonicalConfigFilePath = t, this.openFileWatchTriggered = /* @__PURE__ */ new Map(), this.initialLoadPending = !0, this.sendLoadingProjectFinish = !1, this.pendingUpdateLevel = 2, this.pendingUpdateReason = a;
      }
      setCompilerHost(e) {
        this.compilerHost = e;
      }
      getCompilerHost() {
        return this.compilerHost;
      }
      useSourceOfProjectReferenceRedirect() {
        return this.languageServiceEnabled;
      }
      getParsedCommandLine(e) {
        const t = ho(e), n = this.projectService.toCanonicalFileName(t);
        let i = this.projectService.configFileExistenceInfoCache.get(n);
        return i || this.projectService.configFileExistenceInfoCache.set(n, i = { exists: this.projectService.host.fileExists(t) }), this.projectService.ensureParsedConfigUptoDate(t, n, i, this), this.languageServiceEnabled && this.projectService.serverMode === 0 && this.projectService.watchWildcards(t, i, this), i.exists ? i.config.parsedCommandLine : void 0;
      }
      onReleaseParsedCommandLine(e) {
        this.releaseParsedConfig(this.projectService.toCanonicalFileName(ho(e)));
      }
      releaseParsedConfig(e) {
        this.projectService.stopWatchingWildCards(e, this), this.projectService.releaseParsedConfig(e, this);
      }
      updateGraph() {
        if (this.deferredClose) return !1;
        const e = this.dirty;
        this.initialLoadPending = !1;
        const t = this.pendingUpdateLevel;
        this.pendingUpdateLevel = 0;
        let n;
        switch (t) {
          case 1:
            this.openFileWatchTriggered.clear(), n = this.projectService.reloadFileNamesOfConfiguredProject(this);
            break;
          case 2:
            this.openFileWatchTriggered.clear();
            const i = E.checkDefined(this.pendingUpdateReason);
            this.projectService.reloadConfiguredProject(this, i), n = !0;
            break;
          default:
            n = super.updateGraph();
        }
        return this.compilerHost = void 0, this.projectService.sendProjectLoadingFinishEvent(this), this.projectService.sendProjectTelemetry(this), t === 2 || n && (!e || !this.triggerFileForConfigFileDiag || this.getCurrentProgram().structureIsReused === 2) ? this.triggerFileForConfigFileDiag = void 0 : this.triggerFileForConfigFileDiag || this.projectService.sendConfigFileDiagEvent(this, void 0, !1), n;
      }
      getCachedDirectoryStructureHost() {
        return this.directoryStructureHost;
      }
      getConfigFilePath() {
        return this.getProjectName();
      }
      getProjectReferences() {
        return this.projectReferences;
      }
      updateReferences(e) {
        this.projectReferences = e, this.potentialProjectReferences = void 0;
      }
      setPotentialProjectReference(e) {
        E.assert(this.initialLoadPending), (this.potentialProjectReferences || (this.potentialProjectReferences = /* @__PURE__ */ new Set())).add(e);
      }
      getRedirectFromSourceFile(e) {
        const t = this.getCurrentProgram();
        return t && t.getRedirectFromSourceFile(e);
      }
      forEachResolvedProjectReference(e) {
        var t;
        return (t = this.getCurrentProgram()) == null ? void 0 : t.forEachResolvedProjectReference(e);
      }
      enablePluginsWithOptions(e) {
        var t;
        if (this.plugins.length = 0, !((t = e.plugins) != null && t.length) && !this.projectService.globalPlugins.length) return;
        const n = this.projectService.host;
        if (!n.require && !n.importPlugin) {
          this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");
          return;
        }
        const i = this.getGlobalPluginSearchPaths();
        if (this.projectService.allowLocalPluginLoads) {
          const a = Xn(this.canonicalConfigFilePath);
          this.projectService.logger.info(`Local plugin loading enabled; adding ${a} to search paths`), i.unshift(a);
        }
        if (e.plugins) for (const a of e.plugins) this.enablePlugin(a, i);
        return this.enableGlobalPlugins(e);
      }
      getGlobalProjectErrors() {
        return dn(this.projectErrors, (e) => !e.file) || Nl;
      }
      getAllProjectErrors() {
        return this.projectErrors || Nl;
      }
      setProjectErrors(e) {
        this.projectErrors = e;
      }
      close() {
        this.projectService.configFileExistenceInfoCache.forEach((e, t) => this.releaseParsedConfig(t)), this.projectErrors = void 0, this.openFileWatchTriggered.clear(), this.compilerHost = void 0, super.close();
      }
      markAsDirty() {
        this.deferredClose || super.markAsDirty();
      }
      isOrphan() {
        return !!this.deferredClose;
      }
      getEffectiveTypeRoots() {
        return mw(this.getCompilationSettings(), this) || [];
      }
      updateErrorOnNoInputFiles(e) {
        this.parsedCommandLine = e, AF(e.fileNames, this.getConfigFilePath(), this.getCompilerOptions().configFile.configFileSpecs, this.projectErrors, wN(e.raw));
      }
    }, OH = class extends $k {
      constructor(e, t, n, i, a, o, c) {
        super(e, 2, t, !0, i, n, a, c, t.host, Xn(o || ru(e))), this.externalProjectName = e, this.compileOnSaveEnabled = a, this.excludedFiles = [], this.enableGlobalPlugins(this.getCompilerOptions());
      }
      updateGraph() {
        const e = super.updateGraph();
        return this.projectService.sendProjectTelemetry(this), e;
      }
      getExcludedFiles() {
        return this.excludedFiles;
      }
    };
    function Xk(e) {
      return e.projectKind === 0;
    }
    function $0(e) {
      return e.projectKind === 1;
    }
    function s8(e) {
      return e.projectKind === 2;
    }
    function o8(e) {
      return e.projectKind === 3 || e.projectKind === 4;
    }
    function c8(e) {
      return $0(e) && !!e.deferredClose;
    }
    var FH = 20 * 1024 * 1024, LH = 4 * 1024 * 1024, _M = "projectsUpdatedInBackground", MH = "projectLoadingStart", RH = "projectLoadingFinish", jH = "largeFileReferenced", BH = "configFileDiag", JH = "projectLanguageServiceState", zH = "projectInfo", efe = "openFileInfo", WH = "createFileWatcher", UH = "createDirectoryWatcher", VH = "closeFileWatcher", mPe = "*ensureProjectForOpenFiles*";
    function gPe(e) {
      const t = /* @__PURE__ */ new Map();
      for (const n of e) if (typeof n.type == "object") {
        const i = n.type;
        i.forEach((a) => {
          E.assert(typeof a == "number");
        }), t.set(n.name, i);
      }
      return t;
    }
    var IKe = gPe($d), OKe = gPe(xk), FKe = new Map(Object.entries({
      none: 0,
      block: 1,
      smart: 2
    })), tfe = {
      jquery: {
        match: /jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,
        types: ["jquery"]
      },
      WinJS: {
        match: /^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,
        exclude: [[
          "^",
          1,
          "/.*"
        ]],
        types: ["winjs"]
      },
      Kendo: {
        match: /^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,
        exclude: [[
          "^",
          1,
          "/.*"
        ]],
        types: ["kendo-ui"]
      },
      "Office Nuget": {
        match: /^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,
        exclude: [[
          "^",
          1,
          "/.*"
        ]],
        types: ["office"]
      },
      References: {
        match: /^(.*\/_references\.js)$/i,
        exclude: [[
          "^",
          1,
          "$"
        ]]
      }
    };
    function CE(e) {
      return Ta(e.indentStyle) && (e.indentStyle = FKe.get(e.indentStyle.toLowerCase()), E.assert(e.indentStyle !== void 0)), e;
    }
    function fM(e) {
      return IKe.forEach((t, n) => {
        const i = e[n];
        Ta(i) && (e[n] = t.get(i.toLowerCase()));
      }), da(e.lib) && (e.lib = e.lib.map((t) => yF.get(t) ?? t)), e;
    }
    function l8(e, t) {
      let n, i;
      return xk.forEach((a) => {
        const o = e[a.name];
        if (o === void 0) return;
        const c = OKe.get(a.name);
        (n || (n = {}))[a.name] = c ? Ta(o) ? c.get(o.toLowerCase()) : o : VS(a, o, t || "", i || (i = []));
      }), n && {
        watchOptions: n,
        errors: i
      };
    }
    function rfe(e) {
      let t;
      return bF.forEach((n) => {
        const i = e[n.name];
        i !== void 0 && ((t || (t = {}))[n.name] = i);
      }), t;
    }
    function qH(e) {
      return Ta(e) ? GH(e) : e;
    }
    function GH(e) {
      switch (e) {
        case "JS":
          return 1;
        case "JSX":
          return 2;
        case "TS":
          return 3;
        case "TSX":
          return 4;
        default:
          return 0;
      }
    }
    function nfe(e) {
      const { lazyConfiguredProjectsFromExternalProject: t, ...n } = e;
      return n;
    }
    var HH = {
      getFileName: (e) => e,
      getScriptKind: (e, t) => {
        let n;
        if (t) {
          const i = hx(e);
          i && _t(t, (a) => a.extension === i ? (n = a.scriptKind, !0) : !1);
        }
        return n;
      },
      hasMixedContent: (e, t) => _t(t, (n) => n.isMixedContent && lc(e, n.extension))
    }, $H = {
      getFileName: (e) => e.fileName,
      getScriptKind: (e) => qH(e.scriptKind),
      hasMixedContent: (e) => !!e.hasMixedContent
    };
    function hPe(e, t) {
      for (const n of t) if (n.getProjectName() === e) return n;
    }
    var pM = {
      isKnownTypesPackageName: Mh,
      installPackage: is,
      enqueueInstallTypingsRequest: so,
      attach: so,
      onProjectClosed: so,
      globalTypingsCacheLocation: void 0
    }, ife = { close: so };
    function yPe(e, t) {
      if (!t) return;
      const n = t.get(e.path);
      if (n !== void 0)
        return XH(e) ? n && !Ta(n) ? n.get(e.fileName) : void 0 : Ta(n) || !n ? n : n.get(!1);
    }
    function vPe(e) {
      return !!e.containingProjects;
    }
    function XH(e) {
      return !!e.configFileInfo;
    }
    var afe = /* @__PURE__ */ ((e) => (e[e.FindOptimized = 0] = "FindOptimized", e[e.Find = 1] = "Find", e[e.CreateReplayOptimized = 2] = "CreateReplayOptimized", e[e.CreateReplay = 3] = "CreateReplay", e[e.CreateOptimized = 4] = "CreateOptimized", e[e.Create = 5] = "Create", e[e.ReloadOptimized = 6] = "ReloadOptimized", e[e.Reload = 7] = "Reload", e))(afe || {});
    function bPe(e) {
      return e - 1;
    }
    function SPe(e, t, n, i, a, o, c, _, u) {
      for (var d; ; ) {
        if (t.parsedCommandLine && (_ && !t.parsedCommandLine.options.composite || t.parsedCommandLine.options.disableSolutionSearching)) return;
        const g = t.projectService.getConfigFileNameForFile({
          fileName: t.getConfigFilePath(),
          path: e.path,
          configFileInfo: !0,
          isForDefaultProject: !_
        }, i <= 3);
        if (!g) return;
        const h = t.projectService.findCreateOrReloadConfiguredProject(g, i, a, o, _ ? void 0 : e.fileName, c, _, u);
        if (!h) return;
        !h.project.parsedCommandLine && ((d = t.parsedCommandLine) != null && d.options.composite) && h.project.setPotentialProjectReference(t.canonicalConfigFilePath);
        const S = n(h);
        if (S) return S;
        t = h.project;
      }
    }
    function TPe(e, t, n, i, a, o, c, _) {
      const u = t.options.disableReferencedProjectLoad ? 0 : i;
      let d;
      return bt(t.projectReferences, (g) => {
        var h;
        const S = ho(Ak(g)), T = e.projectService.toCanonicalFileName(S), k = _?.get(T);
        if (k !== void 0 && k >= u) return;
        const D = e.projectService.configFileExistenceInfoCache.get(T);
        let P = u === 0 ? D?.exists || (h = e.resolvedChildConfigs) != null && h.has(T) ? D.config.parsedCommandLine : void 0 : e.getParsedCommandLine(S);
        if (P && u !== i && u > 2 && (P = e.getParsedCommandLine(S)), !P) return;
        const N = e.projectService.findConfiguredProjectByProjectName(S, o);
        if (!(u === 2 && !D && !N)) {
          switch (u) {
            case 6:
              N && N.projectService.reloadConfiguredProjectOptimized(N, a, c);
            case 4:
              (e.resolvedChildConfigs ?? (e.resolvedChildConfigs = /* @__PURE__ */ new Set())).add(T);
            case 2:
            case 0:
              if (N || u !== 0) {
                const M = n(D ?? e.projectService.configFileExistenceInfoCache.get(T), N, S, a, e, T);
                if (M) return M;
              }
              break;
            default:
              E.assertNever(u);
          }
          (_ ?? (_ = /* @__PURE__ */ new Map())).set(T, u), (d ?? (d = [])).push(P);
        }
      }) || bt(d, (g) => g.projectReferences && TPe(e, g, n, u, a, o, c, _));
    }
    function sfe(e, t, n, i, a) {
      let o = !1, c;
      switch (t) {
        case 2:
        case 3:
          ufe(e) && (c = e.projectService.configFileExistenceInfoCache.get(e.canonicalConfigFilePath));
          break;
        case 4:
          if (c = lfe(e), c) break;
        case 5:
          o = MKe(e, n);
          break;
        case 6:
          if (e.projectService.reloadConfiguredProjectOptimized(e, i, a), c = lfe(e), c) break;
        case 7:
          o = e.projectService.reloadConfiguredProjectClearingSemanticCache(e, i, a);
          break;
        case 0:
        case 1:
          break;
        default:
          E.assertNever(t);
      }
      return {
        project: e,
        sentConfigFileDiag: o,
        configFileExistenceInfo: c,
        reason: i
      };
    }
    function xPe(e, t) {
      return e.initialLoadPending ? (e.potentialProjectReferences && Vg(e.potentialProjectReferences, t)) ?? (e.resolvedChildConfigs && Vg(e.resolvedChildConfigs, t)) : void 0;
    }
    function LKe(e, t, n, i) {
      return e.getCurrentProgram() ? e.forEachResolvedProjectReference(t) : e.initialLoadPending ? xPe(e, i) : bt(e.getProjectReferences(), n);
    }
    function ofe(e, t, n) {
      const i = n && e.projectService.configuredProjects.get(n);
      return i && t(i);
    }
    function kPe(e, t) {
      return LKe(e, (n) => ofe(e, t, n.sourceFile.path), (n) => ofe(e, t, e.toPath(Ak(n))), (n) => ofe(e, t, n));
    }
    function QH(e, t) {
      return `${Ta(t) ? `Config: ${t} ` : t ? `Project: ${t.getProjectName()} ` : ""}WatchType: ${e}`;
    }
    function cfe(e) {
      return !e.isScriptOpen() && e.mTime !== void 0;
    }
    function nd(e) {
      return e.invalidateResolutionsOfFailedLookupLocations(), e.dirty && !e.updateGraph();
    }
    function CPe(e, t, n) {
      if (!n && (e.invalidateResolutionsOfFailedLookupLocations(), !e.dirty))
        return !1;
      e.triggerFileForConfigFileDiag = t;
      const i = e.pendingUpdateLevel;
      if (e.updateGraph(), !e.triggerFileForConfigFileDiag && !n) return i === 2;
      const a = e.projectService.sendConfigFileDiagEvent(e, t, n);
      return e.triggerFileForConfigFileDiag = void 0, a;
    }
    function MKe(e, t) {
      if (t) {
        if (CPe(e, t, !1)) return !0;
      } else nd(e);
      return !1;
    }
    function lfe(e) {
      const t = ho(e.getConfigFilePath()), n = e.projectService.ensureParsedConfigUptoDate(t, e.canonicalConfigFilePath, e.projectService.configFileExistenceInfoCache.get(e.canonicalConfigFilePath), e), i = n.config.parsedCommandLine;
      if (e.parsedCommandLine = i, e.resolvedChildConfigs = void 0, e.updateReferences(i.projectReferences), ufe(e)) return n;
    }
    function ufe(e) {
      return !!e.parsedCommandLine && (!!e.parsedCommandLine.options.composite || !!kW(e.parsedCommandLine));
    }
    function RKe(e) {
      return ufe(e) ? e.projectService.configFileExistenceInfoCache.get(e.canonicalConfigFilePath) : void 0;
    }
    function jKe(e) {
      return `Creating possible configured project for ${e.fileName} to open`;
    }
    function YH(e) {
      return `User requested reload projects: ${e}`;
    }
    function _fe(e) {
      $0(e) && (e.projectOptions = !0);
    }
    function ffe(e) {
      let t = 1;
      return () => e(t++);
    }
    function pfe() {
      return {
        idToCallbacks: /* @__PURE__ */ new Map(),
        pathToId: /* @__PURE__ */ new Map()
      };
    }
    function EPe(e, t) {
      return !!t && !!e.eventHandler && !!e.session;
    }
    function BKe(e, t) {
      if (!EPe(e, t)) return;
      const n = pfe(), i = pfe(), a = pfe();
      let o = 1;
      return e.session.addProtocolHandler("watchChange", (T) => (d(T.arguments), { responseRequired: !1 })), {
        watchFile: c,
        watchDirectory: _,
        getCurrentDirectory: () => e.host.getCurrentDirectory(),
        useCaseSensitiveFileNames: e.host.useCaseSensitiveFileNames
      };
      function c(T, k) {
        return u(n, T, k, (D) => ({
          eventName: WH,
          data: {
            id: D,
            path: T
          }
        }));
      }
      function _(T, k, D) {
        return u(D ? a : i, T, k, (P) => ({
          eventName: UH,
          data: {
            id: P,
            path: T,
            recursive: !!D,
            ignoreUpdate: T.endsWith("/node_modules") ? void 0 : !0
          }
        }));
      }
      function u({ pathToId: T, idToCallbacks: k }, D, P, N) {
        const M = e.toPath(D);
        let R = T.get(M);
        R || T.set(M, R = o++);
        let G = k.get(R);
        return G || (k.set(R, G = /* @__PURE__ */ new Set()), e.eventHandler(N(R))), G.add(P), { close() {
          const L = k.get(R);
          L?.delete(P) && (L.size || (k.delete(R), T.delete(M), e.eventHandler({
            eventName: VH,
            data: { id: R }
          })));
        } };
      }
      function d(T) {
        da(T) ? T.forEach(g) : g(T);
      }
      function g({ id: T, created: k, deleted: D, updated: P }) {
        h(T, k, 0), h(T, D, 2), h(T, P, 1);
      }
      function h(T, k, D) {
        k?.length && (S(n, T, k, (P, N) => P(N, D)), S(i, T, k, (P, N) => P(N)), S(a, T, k, (P, N) => P(N)));
      }
      function S(T, k, D, P) {
        var N;
        (N = T.idToCallbacks.get(k)) == null || N.forEach((M) => {
          D.forEach((R) => P(M, ru(R)));
        });
      }
    }
    var DPe = class Sge {
      constructor(t) {
        this.filenameToScriptInfo = /* @__PURE__ */ new Map(), this.nodeModulesWatchers = /* @__PURE__ */ new Map(), this.filenameToScriptInfoVersion = /* @__PURE__ */ new Map(), this.allJsFilesForOpenFileTelemetry = /* @__PURE__ */ new Set(), this.externalProjectToConfiguredProjectMap = /* @__PURE__ */ new Map(), this.externalProjects = [], this.inferredProjects = [], this.configuredProjects = /* @__PURE__ */ new Map(), this.newInferredProjectName = ffe(O_e), this.newAutoImportProviderProjectName = ffe(F_e), this.newAuxiliaryProjectName = ffe(L_e), this.openFiles = /* @__PURE__ */ new Map(), this.configFileForOpenFiles = /* @__PURE__ */ new Map(), this.rootOfInferredProjects = /* @__PURE__ */ new Set(), this.openFilesWithNonRootedDiskPath = /* @__PURE__ */ new Map(), this.compilerOptionsForInferredProjectsPerProjectRoot = /* @__PURE__ */ new Map(), this.watchOptionsForInferredProjectsPerProjectRoot = /* @__PURE__ */ new Map(), this.typeAcquisitionForInferredProjectsPerProjectRoot = /* @__PURE__ */ new Map(), this.projectToSizeMap = /* @__PURE__ */ new Map(), this.configFileExistenceInfoCache = /* @__PURE__ */ new Map(), this.safelist = tfe, this.legacySafelist = /* @__PURE__ */ new Map(), this.pendingProjectUpdates = /* @__PURE__ */ new Map(), this.pendingEnsureProjectForOpenFiles = !1, this.seenProjects = /* @__PURE__ */ new Map(), this.sharedExtendedConfigFileWatchers = /* @__PURE__ */ new Map(), this.extendedConfigCache = /* @__PURE__ */ new Map(), this.baseline = so, this.verifyDocumentRegistry = so, this.verifyProgram = so, this.onProjectCreation = so;
        var n;
        this.host = t.host, this.logger = t.logger, this.cancellationToken = t.cancellationToken, this.useSingleInferredProject = t.useSingleInferredProject, this.useInferredProjectPerProjectRoot = t.useInferredProjectPerProjectRoot, this.typingsInstaller = t.typingsInstaller || pM, this.throttleWaitMilliseconds = t.throttleWaitMilliseconds, this.eventHandler = t.eventHandler, this.suppressDiagnosticEvents = t.suppressDiagnosticEvents, this.globalPlugins = t.globalPlugins || Nl, this.pluginProbeLocations = t.pluginProbeLocations || Nl, this.allowLocalPluginLoads = !!t.allowLocalPluginLoads, this.typesMapLocation = t.typesMapLocation === void 0 ? jn(Xn(this.getExecutingFilePath()), "typesMap.json") : t.typesMapLocation, this.session = t.session, this.jsDocParsingMode = t.jsDocParsingMode, t.serverMode !== void 0 ? this.serverMode = t.serverMode : this.serverMode = 0, this.host.realpath && (this.realpathToScriptInfos = Up()), this.currentDirectory = ho(this.host.getCurrentDirectory()), this.toCanonicalFileName = pu(this.host.useCaseSensitiveFileNames), this.globalCacheLocationDirectoryPath = this.typingsInstaller.globalTypingsCacheLocation ? El(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)) : void 0, this.throttledOperations = new R_e(this.host, this.logger), this.logger.info(`currentDirectory:: ${this.host.getCurrentDirectory()} useCaseSensitiveFileNames:: ${this.host.useCaseSensitiveFileNames}`), this.logger.info(`libs Location:: ${Xn(this.host.getExecutingFilePath())}`), this.logger.info(`globalTypingsCacheLocation:: ${this.typingsInstaller.globalTypingsCacheLocation}`), this.typesMapLocation ? this.loadTypesMap() : this.logger.info("No types map provided; using the default"), this.typingsInstaller.attach(this), this.hostConfiguration = {
          formatCodeOptions: M9(this.host.newLine),
          preferences: td,
          hostInfo: "Unknown host",
          extraFileExtensions: []
        }, this.documentRegistry = jq(this.host.useCaseSensitiveFileNames, this.currentDirectory, this.jsDocParsingMode, this);
        const i = this.logger.hasLevel(3) ? 2 : this.logger.loggingEnabled() ? 1 : 0, a = i !== 0 ? ((o) => this.logger.info(o)) : so;
        this.packageJsonCache = yfe(this), this.watchFactory = this.serverMode !== 0 ? {
          watchFile: Mw,
          watchDirectory: Mw
        } : xU(BKe(this, t.canUseWatchEvents) || this.host, i, a, QH), this.canUseWatchEvents = EPe(this, t.canUseWatchEvents), (n = t.incrementalVerifier) == null || n.call(t, this);
      }
      toPath(t) {
        return Eo(t, this.currentDirectory, this.toCanonicalFileName);
      }
      getExecutingFilePath() {
        return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath());
      }
      getNormalizedAbsolutePath(t) {
        return ca(t, this.host.getCurrentDirectory());
      }
      setDocument(t, n, i) {
        const a = E.checkDefined(this.getScriptInfoForPath(n));
        a.cacheSourceFile = {
          key: t,
          sourceFile: i
        };
      }
      getDocument(t, n) {
        const i = this.getScriptInfoForPath(n);
        return i && i.cacheSourceFile && i.cacheSourceFile.key === t ? i.cacheSourceFile.sourceFile : void 0;
      }
      ensureInferredProjectsUpToDate_TestOnly() {
        this.ensureProjectStructuresUptoDate();
      }
      getCompilerOptionsForInferredProjects() {
        return this.compilerOptionsForInferredProjects;
      }
      onUpdateLanguageServiceStateForProject(t, n) {
        if (!this.eventHandler) return;
        const i = {
          eventName: JH,
          data: {
            project: t,
            languageServiceEnabled: n
          }
        };
        this.eventHandler(i);
      }
      loadTypesMap() {
        try {
          const t = this.host.readFile(this.typesMapLocation);
          if (t === void 0) {
            this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);
            return;
          }
          const n = JSON.parse(t);
          for (const i of Object.keys(n.typesMap)) n.typesMap[i].match = new RegExp(n.typesMap[i].match, "i");
          this.safelist = n.typesMap;
          for (const i in n.simpleMap) po(n.simpleMap, i) && this.legacySafelist.set(i, n.simpleMap[i].toLowerCase());
        } catch (t) {
          this.logger.info(`Error loading types map: ${t}`), this.safelist = tfe, this.legacySafelist.clear();
        }
      }
      updateTypingsForProject(t) {
        const n = this.findProject(t.projectName);
        if (n)
          switch (t.kind) {
            case O9:
              n.updateTypingFiles(t.compilerOptions, t.typeAcquisition, t.unresolvedImports, t.typings);
              return;
            case F9:
              n.enqueueInstallTypingsForProject(!0);
              return;
          }
      }
      watchTypingLocations(t) {
        var n;
        (n = this.findProject(t.projectName)) == null || n.watchTypingLocations(t.files);
      }
      delayEnsureProjectForOpenFiles() {
        this.openFiles.size && (this.pendingEnsureProjectForOpenFiles = !0, this.throttledOperations.schedule(mPe, 2500, () => {
          this.pendingProjectUpdates.size !== 0 ? this.delayEnsureProjectForOpenFiles() : this.pendingEnsureProjectForOpenFiles && (this.ensureProjectForOpenFiles(), this.sendProjectsUpdatedInBackgroundEvent());
        }));
      }
      delayUpdateProjectGraph(t) {
        if (c8(t) || (t.markAsDirty(), o8(t))) return;
        const n = t.getProjectName();
        this.pendingProjectUpdates.set(n, t), this.throttledOperations.schedule(n, 250, () => {
          this.pendingProjectUpdates.delete(n) && nd(t);
        });
      }
      hasPendingProjectUpdate(t) {
        return this.pendingProjectUpdates.has(t.getProjectName());
      }
      sendProjectsUpdatedInBackgroundEvent() {
        if (!this.eventHandler) return;
        const t = {
          eventName: _M,
          data: { openFiles: ma(this.openFiles.keys(), (n) => this.getScriptInfoForPath(n).fileName) }
        };
        this.eventHandler(t);
      }
      sendLargeFileReferencedEvent(t, n) {
        if (!this.eventHandler) return;
        const i = {
          eventName: jH,
          data: {
            file: t,
            fileSize: n,
            maxFileSize: LH
          }
        };
        this.eventHandler(i);
      }
      sendProjectLoadingStartEvent(t, n) {
        if (!this.eventHandler) return;
        t.sendLoadingProjectFinish = !0;
        const i = {
          eventName: MH,
          data: {
            project: t,
            reason: n
          }
        };
        this.eventHandler(i);
      }
      sendProjectLoadingFinishEvent(t) {
        if (!this.eventHandler || !t.sendLoadingProjectFinish) return;
        t.sendLoadingProjectFinish = !1;
        const n = {
          eventName: RH,
          data: { project: t }
        };
        this.eventHandler(n);
      }
      sendPerformanceEvent(t, n) {
        this.performanceEventHandler && this.performanceEventHandler({
          kind: t,
          durationMs: n
        });
      }
      delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(t) {
        this.delayUpdateProjectGraph(t), this.delayEnsureProjectForOpenFiles();
      }
      delayUpdateProjectGraphs(t, n) {
        if (t.length) {
          for (const i of t)
            n && i.clearSourceMapperCache(), this.delayUpdateProjectGraph(i);
          this.delayEnsureProjectForOpenFiles();
        }
      }
      setCompilerOptionsForInferredProjects(t, n) {
        E.assert(n === void 0 || this.useInferredProjectPerProjectRoot, "Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");
        const i = fM(t), a = l8(t, n), o = rfe(t);
        i.allowNonTsExtensions = !0;
        const c = n && this.toCanonicalFileName(n);
        c ? (this.compilerOptionsForInferredProjectsPerProjectRoot.set(c, i), this.watchOptionsForInferredProjectsPerProjectRoot.set(c, a || !1), this.typeAcquisitionForInferredProjectsPerProjectRoot.set(c, o)) : (this.compilerOptionsForInferredProjects = i, this.watchOptionsForInferredProjects = a, this.typeAcquisitionForInferredProjects = o);
        for (const _ of this.inferredProjects) (c ? _.projectRootPath === c : !_.projectRootPath || !this.compilerOptionsForInferredProjectsPerProjectRoot.has(_.projectRootPath)) && (_.setCompilerOptions(i), _.setTypeAcquisition(o), _.setWatchOptions(a?.watchOptions), _.setProjectErrors(a?.errors), _.compileOnSaveEnabled = i.compileOnSave, _.markAsDirty(), this.delayUpdateProjectGraph(_));
        this.delayEnsureProjectForOpenFiles();
      }
      findProject(t) {
        if (t !== void 0)
          return I_e(t) ? hPe(t, this.inferredProjects) : this.findExternalProjectByProjectName(t) || this.findConfiguredProjectByProjectName(ho(t));
      }
      forEachProject(t) {
        this.externalProjects.forEach(t), this.configuredProjects.forEach(t), this.inferredProjects.forEach(t);
      }
      forEachEnabledProject(t) {
        this.forEachProject((n) => {
          !n.isOrphan() && n.languageServiceEnabled && t(n);
        });
      }
      getDefaultProjectForFile(t, n) {
        return n ? this.ensureDefaultProjectForFile(t) : this.tryGetDefaultProjectForFile(t);
      }
      tryGetDefaultProjectForFile(t) {
        const n = Ta(t) ? this.getScriptInfoForNormalizedPath(t) : t;
        return n && !n.isOrphan() ? n.getDefaultProject() : void 0;
      }
      tryGetDefaultProjectForEnsuringConfiguredProjectForFile(t) {
        var n;
        const i = Ta(t) ? this.getScriptInfoForNormalizedPath(t) : t;
        if (i)
          return (n = this.pendingOpenFileProjectUpdates) != null && n.delete(i.path) && (this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(i, 5), i.isOrphan() && this.assignOrphanScriptInfoToInferredProject(i, this.openFiles.get(i.path))), this.tryGetDefaultProjectForFile(i);
      }
      ensureDefaultProjectForFile(t) {
        return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(t) || this.doEnsureDefaultProjectForFile(t);
      }
      doEnsureDefaultProjectForFile(t) {
        this.ensureProjectStructuresUptoDate();
        const n = Ta(t) ? this.getScriptInfoForNormalizedPath(t) : t;
        return n ? n.getDefaultProject() : (this.logErrorForScriptInfoNotFound(Ta(t) ? t : t.fileName), Kh.ThrowNoProject());
      }
      getScriptInfoEnsuringProjectsUptoDate(t) {
        return this.ensureProjectStructuresUptoDate(), this.getScriptInfo(t);
      }
      ensureProjectStructuresUptoDate() {
        let t = this.pendingEnsureProjectForOpenFiles;
        this.pendingProjectUpdates.clear();
        const n = (i) => {
          t = nd(i) || t;
        };
        this.externalProjects.forEach(n), this.configuredProjects.forEach(n), this.inferredProjects.forEach(n), t && this.ensureProjectForOpenFiles();
      }
      getFormatCodeOptions(t) {
        const n = this.getScriptInfoForNormalizedPath(t);
        return n && n.getFormatCodeSettings() || this.hostConfiguration.formatCodeOptions;
      }
      getPreferences(t) {
        const n = this.getScriptInfoForNormalizedPath(t);
        return {
          ...this.hostConfiguration.preferences,
          ...n && n.getPreferences()
        };
      }
      getHostFormatCodeOptions() {
        return this.hostConfiguration.formatCodeOptions;
      }
      getHostPreferences() {
        return this.hostConfiguration.preferences;
      }
      onSourceFileChanged(t, n) {
        E.assert(!t.isScriptOpen()), n === 2 ? this.handleDeletedFile(t, !0) : (t.deferredDelete && (t.deferredDelete = void 0), t.delayReloadNonMixedContentFile(), this.delayUpdateProjectGraphs(t.containingProjects, !1), this.handleSourceMapProjects(t));
      }
      handleSourceMapProjects(t) {
        if (t.sourceMapFilePath) if (Ta(t.sourceMapFilePath)) {
          const n = this.getScriptInfoForPath(t.sourceMapFilePath);
          this.delayUpdateSourceInfoProjects(n?.sourceInfos);
        } else this.delayUpdateSourceInfoProjects(t.sourceMapFilePath.sourceInfos);
        this.delayUpdateSourceInfoProjects(t.sourceInfos), t.declarationInfoPath && this.delayUpdateProjectsOfScriptInfoPath(t.declarationInfoPath);
      }
      delayUpdateSourceInfoProjects(t) {
        t && t.forEach((n, i) => this.delayUpdateProjectsOfScriptInfoPath(i));
      }
      delayUpdateProjectsOfScriptInfoPath(t) {
        const n = this.getScriptInfoForPath(t);
        n && this.delayUpdateProjectGraphs(n.containingProjects, !0);
      }
      handleDeletedFile(t, n) {
        E.assert(!t.isScriptOpen()), this.delayUpdateProjectGraphs(t.containingProjects, !1), this.handleSourceMapProjects(t), t.detachAllProjects(), n ? (t.delayReloadNonMixedContentFile(), t.deferredDelete = !0) : this.deleteScriptInfo(t);
      }
      watchWildcardDirectory(t, n, i, a) {
        let o = this.watchFactory.watchDirectory(t, (_) => this.onWildCardDirectoryWatcherInvoke(t, i, a, c, _), n, this.getWatchOptionsFromProjectWatchOptions(a.parsedCommandLine.watchOptions, Xn(i)), Xl.WildcardDirectory, i);
        const c = {
          packageJsonWatches: void 0,
          close() {
            var _;
            o && (o.close(), o = void 0, (_ = c.packageJsonWatches) == null || _.forEach((u) => {
              u.projects.delete(c), u.close();
            }), c.packageJsonWatches = void 0);
          }
        };
        return c;
      }
      onWildCardDirectoryWatcherInvoke(t, n, i, a, o) {
        const c = this.toPath(o), _ = i.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(o, c);
        if (nl(c) === "package.json" && !TI(c) && (_ && _.fileExists || !_ && this.host.fileExists(o))) {
          const d = this.getNormalizedAbsolutePath(o);
          this.logger.info(`Config: ${n} Detected new package.json: ${d}`), this.packageJsonCache.addOrUpdate(d, c), this.watchPackageJsonFile(d, c, a);
        }
        _?.fileExists || this.sendSourceFileChange(c);
        const u = this.findConfiguredProjectByProjectName(n);
        GN({
          watchedDirPath: this.toPath(t),
          fileOrDirectory: o,
          fileOrDirectoryPath: c,
          configFileName: n,
          extraFileExtensions: this.hostConfiguration.extraFileExtensions,
          currentDirectory: this.currentDirectory,
          options: i.parsedCommandLine.options,
          program: u?.getCurrentProgram() || i.parsedCommandLine.fileNames,
          useCaseSensitiveFileNames: this.host.useCaseSensitiveFileNames,
          writeLog: (d) => this.logger.info(d),
          toPath: (d) => this.toPath(d),
          getScriptKind: u ? ((d) => u.getScriptKind(d)) : void 0
        }) || (i.updateLevel !== 2 && (i.updateLevel = 1), i.projects.forEach((d, g) => {
          var h;
          if (!d) return;
          const S = this.getConfiguredProjectByCanonicalConfigFilePath(g);
          if (!S) return;
          if (u !== S && this.getHostPreferences().includeCompletionsForModuleExports) {
            const k = this.toPath(n);
            xr((h = S.getCurrentProgram()) == null ? void 0 : h.getResolvedProjectReferences(), (D) => D?.sourceFile.path === k) && S.markAutoImportProviderAsDirty();
          }
          const T = u === S ? 1 : 0;
          if (!(S.pendingUpdateLevel > T))
            if (this.openFiles.has(c)) if (E.checkDefined(this.getScriptInfoForPath(c)).isAttached(S)) {
              const k = Math.max(T, S.openFileWatchTriggered.get(c) || 0);
              S.openFileWatchTriggered.set(c, k);
            } else
              S.pendingUpdateLevel = T, this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(S);
            else
              S.pendingUpdateLevel = T, this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(S);
        }));
      }
      delayUpdateProjectsFromParsedConfigOnConfigFileChange(t, n) {
        const i = this.configFileExistenceInfoCache.get(t);
        if (!i?.config) return !1;
        let a = !1;
        return i.config.updateLevel = 2, i.config.cachedDirectoryStructureHost.clearCache(), i.config.projects.forEach((o, c) => {
          var _, u, d;
          const g = this.getConfiguredProjectByCanonicalConfigFilePath(c);
          if (g)
            if (a = !0, c === t) {
              if (g.initialLoadPending) return;
              g.pendingUpdateLevel = 2, g.pendingUpdateReason = n, this.delayUpdateProjectGraph(g), g.markAutoImportProviderAsDirty();
            } else {
              if (g.initialLoadPending) {
                (u = (_ = this.configFileExistenceInfoCache.get(c)) == null ? void 0 : _.openFilesImpactedByConfigFile) == null || u.forEach((S) => {
                  var T;
                  (T = this.pendingOpenFileProjectUpdates) != null && T.has(S) || (this.pendingOpenFileProjectUpdates ?? (this.pendingOpenFileProjectUpdates = /* @__PURE__ */ new Map())).set(S, this.configFileForOpenFiles.get(S));
                });
                return;
              }
              const h = this.toPath(t);
              g.resolutionCache.removeResolutionsFromProjectReferenceRedirects(h), this.delayUpdateProjectGraph(g), this.getHostPreferences().includeCompletionsForModuleExports && xr((d = g.getCurrentProgram()) == null ? void 0 : d.getResolvedProjectReferences(), (S) => S?.sourceFile.path === h) && g.markAutoImportProviderAsDirty();
            }
        }), a;
      }
      onConfigFileChanged(t, n, i) {
        const a = this.configFileExistenceInfoCache.get(n), o = this.getConfiguredProjectByCanonicalConfigFilePath(n), c = o?.deferredClose;
        i === 2 ? (a.exists = !1, o && (o.deferredClose = !0)) : (a.exists = !0, c && (o.deferredClose = void 0, o.markAsDirty())), this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(n, "Change in config file detected"), this.openFiles.forEach((_, u) => {
          var d, g;
          const h = this.configFileForOpenFiles.get(u);
          if (!((d = a.openFilesImpactedByConfigFile) != null && d.has(u))) return;
          this.configFileForOpenFiles.delete(u);
          const S = this.getScriptInfoForPath(u);
          this.getConfigFileNameForFile(S, !1) && ((g = this.pendingOpenFileProjectUpdates) != null && g.has(u) || (this.pendingOpenFileProjectUpdates ?? (this.pendingOpenFileProjectUpdates = /* @__PURE__ */ new Map())).set(u, h));
        }), this.delayEnsureProjectForOpenFiles();
      }
      removeProject(t) {
        switch (this.logger.info("`remove Project::"), t.print(!0, !0, !1), t.close(), E.shouldAssert(1) && this.filenameToScriptInfo.forEach((n) => E.assert(!n.isAttached(t), "Found script Info still attached to project", () => `${t.projectName}: ScriptInfos still attached: ${JSON.stringify(ma(Go(this.filenameToScriptInfo.values(), (i) => i.isAttached(t) ? {
          fileName: i.fileName,
          projects: i.containingProjects.map((a) => a.projectName),
          hasMixedContent: i.hasMixedContent
        } : void 0)), void 0, " ")}`)), this.pendingProjectUpdates.delete(t.getProjectName()), t.projectKind) {
          case 2:
            px(this.externalProjects, t), this.projectToSizeMap.delete(t.getProjectName());
            break;
          case 1:
            this.configuredProjects.delete(t.canonicalConfigFilePath), this.projectToSizeMap.delete(t.canonicalConfigFilePath);
            break;
          case 0:
            px(this.inferredProjects, t);
            break;
        }
      }
      assignOrphanScriptInfoToInferredProject(t, n) {
        E.assert(t.isOrphan());
        const i = this.getOrCreateInferredProjectForProjectRootPathIfEnabled(t, n) || this.getOrCreateSingleInferredProjectIfEnabled() || this.getOrCreateSingleInferredWithoutProjectRoot(t.isDynamic ? n || this.currentDirectory : Xn(pf(t.fileName) ? t.fileName : ca(t.fileName, n ? this.getNormalizedAbsolutePath(n) : this.currentDirectory)));
        if (i.addRoot(t), t.containingProjects[0] !== i && (k4(t.containingProjects, i), t.containingProjects.unshift(i)), i.updateGraph(), !this.useSingleInferredProject && !i.projectRootPath) for (const a of this.inferredProjects) {
          if (a === i || a.isOrphan()) continue;
          const o = a.getRootScriptInfos();
          E.assert(o.length === 1 || !!a.projectRootPath), o.length === 1 && bt(o[0].containingProjects, (c) => c !== o[0].containingProjects[0] && !c.isOrphan()) && a.removeFile(o[0], !0, !0);
        }
        return i;
      }
      assignOrphanScriptInfosToInferredProject() {
        this.openFiles.forEach((t, n) => {
          const i = this.getScriptInfoForPath(n);
          i.isOrphan() && this.assignOrphanScriptInfoToInferredProject(i, t);
        });
      }
      closeOpenFile(t, n) {
        var i;
        const a = t.isDynamic ? !1 : this.host.fileExists(t.fileName);
        t.close(a), this.stopWatchingConfigFilesForScriptInfo(t);
        const o = this.toCanonicalFileName(t.fileName);
        this.openFilesWithNonRootedDiskPath.get(o) === t && this.openFilesWithNonRootedDiskPath.delete(o);
        let c = !1;
        for (const _ of t.containingProjects) {
          if ($0(_)) {
            t.hasMixedContent && t.registerFileUpdate();
            const u = _.openFileWatchTriggered.get(t.path);
            u !== void 0 && (_.openFileWatchTriggered.delete(t.path), _.pendingUpdateLevel < u && (_.pendingUpdateLevel = u, _.markFileAsDirty(t.path)));
          } else Xk(_) && _.isRoot(t) && (_.isProjectWithSingleRoot() && (c = !0), _.removeFile(t, a, !0));
          _.languageServiceEnabled || _.markAsDirty();
        }
        return this.openFiles.delete(t.path), this.configFileForOpenFiles.delete(t.path), (i = this.pendingOpenFileProjectUpdates) == null || i.delete(t.path), E.assert(!this.rootOfInferredProjects.has(t)), !n && c && this.assignOrphanScriptInfosToInferredProject(), a ? this.watchClosedScriptInfo(t) : this.handleDeletedFile(t, !1), c;
      }
      deleteScriptInfo(t) {
        E.assert(!t.isScriptOpen()), this.filenameToScriptInfo.delete(t.path), this.filenameToScriptInfoVersion.set(t.path, t.textStorage.version), this.stopWatchingScriptInfo(t);
        const n = t.getRealpathIfDifferent();
        n && this.realpathToScriptInfos.remove(n, t), t.closeSourceMapFileWatcher();
      }
      configFileExists(t, n, i) {
        const a = this.configFileExistenceInfoCache.get(n);
        let o;
        if (this.openFiles.has(i.path) && (!XH(i) || i.isForDefaultProject) && (a ? (a.openFilesImpactedByConfigFile ?? (a.openFilesImpactedByConfigFile = /* @__PURE__ */ new Set())).add(i.path) : (o = /* @__PURE__ */ new Set()).add(i.path)), a) return a.exists;
        const c = this.host.fileExists(t);
        return this.configFileExistenceInfoCache.set(n, {
          exists: c,
          openFilesImpactedByConfigFile: o
        }), c;
      }
      createConfigFileWatcherForParsedConfig(t, n, i) {
        var a, o;
        const c = this.configFileExistenceInfoCache.get(n);
        (!c.watcher || c.watcher === ife) && (c.watcher = this.watchFactory.watchFile(t, (_, u) => this.onConfigFileChanged(t, n, u), 2e3, this.getWatchOptionsFromProjectWatchOptions((o = (a = c?.config) == null ? void 0 : a.parsedCommandLine) == null ? void 0 : o.watchOptions, Xn(t)), Xl.ConfigFile, i)), this.ensureConfigFileWatcherForProject(c, i);
      }
      ensureConfigFileWatcherForProject(t, n) {
        const i = t.config.projects;
        i.set(n.canonicalConfigFilePath, i.get(n.canonicalConfigFilePath) || !1);
      }
      releaseParsedConfig(t, n) {
        var i, a, o;
        const c = this.configFileExistenceInfoCache.get(t);
        (i = c.config) != null && i.projects.delete(n.canonicalConfigFilePath) && ((a = c.config) != null && a.projects.size || (c.config = void 0, SU(t, this.sharedExtendedConfigFileWatchers), E.checkDefined(c.watcher), (o = c.openFilesImpactedByConfigFile) != null && o.size ? c.inferredProjectRoots ? Lw(Xn(t)) || (c.watcher.close(), c.watcher = ife) : (c.watcher.close(), c.watcher = void 0) : (c.watcher.close(), this.configFileExistenceInfoCache.delete(t))));
      }
      stopWatchingConfigFilesForScriptInfo(t) {
        if (this.serverMode !== 0) return;
        const n = this.rootOfInferredProjects.delete(t), i = t.isScriptOpen();
        i && !n || this.forEachConfigFileLocation(t, (a) => {
          var o, c, _;
          const u = this.configFileExistenceInfoCache.get(a);
          if (u) {
            if (i) {
              if (!((o = u?.openFilesImpactedByConfigFile) != null && o.has(t.path))) return;
            } else if (!((c = u.openFilesImpactedByConfigFile) != null && c.delete(t.path))) return;
            n && (u.inferredProjectRoots--, u.watcher && !u.config && !u.inferredProjectRoots && (u.watcher.close(), u.watcher = void 0)), !((_ = u.openFilesImpactedByConfigFile) != null && _.size) && !u.config && (E.assert(!u.watcher), this.configFileExistenceInfoCache.delete(a));
          }
        });
      }
      startWatchingConfigFilesForInferredProjectRoot(t) {
        this.serverMode === 0 && (E.assert(t.isScriptOpen()), this.rootOfInferredProjects.add(t), this.forEachConfigFileLocation(t, (n, i) => {
          let a = this.configFileExistenceInfoCache.get(n);
          a ? a.inferredProjectRoots = (a.inferredProjectRoots ?? 0) + 1 : (a = {
            exists: this.host.fileExists(i),
            inferredProjectRoots: 1
          }, this.configFileExistenceInfoCache.set(n, a)), (a.openFilesImpactedByConfigFile ?? (a.openFilesImpactedByConfigFile = /* @__PURE__ */ new Set())).add(t.path), a.watcher || (a.watcher = Lw(Xn(n)) ? this.watchFactory.watchFile(i, (o, c) => this.onConfigFileChanged(i, n, c), 2e3, this.hostConfiguration.watchOptions, Xl.ConfigFileForInferredRoot) : ife);
        }));
      }
      forEachConfigFileLocation(t, n) {
        if (this.serverMode !== 0) return;
        E.assert(!vPe(t) || this.openFiles.has(t.path));
        const i = this.openFiles.get(t.path);
        if (E.checkDefined(this.getScriptInfo(t.path)).isDynamic) return;
        let a = Xn(t.fileName);
        const o = () => vp(i, a, this.currentDirectory, !this.host.useCaseSensitiveFileNames), c = !i || !o();
        let _ = !0, u = !0;
        XH(t) && (Uo(t.fileName, "tsconfig.json") ? _ = !1 : _ = u = !1);
        do {
          const d = kE(a, this.currentDirectory, this.toCanonicalFileName);
          if (_) {
            const h = jn(a, "tsconfig.json");
            if (n(jn(d, "tsconfig.json"), h)) return h;
          }
          if (u) {
            const h = jn(a, "jsconfig.json");
            if (n(jn(d, "jsconfig.json"), h)) return h;
          }
          if (M7(d)) break;
          const g = Xn(a);
          if (g === a) break;
          a = g, _ = u = !0;
        } while (c || o());
      }
      findDefaultConfiguredProject(t) {
        var n;
        return (n = this.findDefaultConfiguredProjectWorker(t, 1)) == null ? void 0 : n.defaultProject;
      }
      findDefaultConfiguredProjectWorker(t, n) {
        return t.isScriptOpen() ? this.tryFindDefaultConfiguredProjectForOpenScriptInfo(t, n) : void 0;
      }
      getConfigFileNameForFileFromCache(t, n) {
        if (n) {
          const i = yPe(t, this.pendingOpenFileProjectUpdates);
          if (i !== void 0) return i;
        }
        return yPe(t, this.configFileForOpenFiles);
      }
      setConfigFileNameForFileInCache(t, n) {
        if (!this.openFiles.has(t.path)) return;
        const i = n || !1;
        if (!XH(t)) this.configFileForOpenFiles.set(t.path, i);
        else {
          let a = this.configFileForOpenFiles.get(t.path);
          (!a || Ta(a)) && this.configFileForOpenFiles.set(t.path, a = (/* @__PURE__ */ new Map()).set(!1, a)), a.set(t.fileName, i);
        }
      }
      getConfigFileNameForFile(t, n) {
        const i = this.getConfigFileNameForFileFromCache(t, n);
        if (i !== void 0) return i || void 0;
        if (n) return;
        const a = this.forEachConfigFileLocation(t, (o, c) => this.configFileExists(c, o, t));
        return this.logger.info(`getConfigFileNameForFile:: File: ${t.fileName} ProjectRootPath: ${this.openFiles.get(t.path)}:: Result: ${a}`), this.setConfigFileNameForFileInCache(t, a), a;
      }
      printProjects() {
        this.logger.hasLevel(1) && (this.logger.startGroup(), this.externalProjects.forEach(gfe), this.configuredProjects.forEach(gfe), this.inferredProjects.forEach(gfe), this.logger.info("Open files: "), this.openFiles.forEach((t, n) => {
          const i = this.getScriptInfoForPath(n);
          this.logger.info(`	FileName: ${i.fileName} ProjectRootPath: ${t}`), this.logger.info(`		Projects: ${i.containingProjects.map((a) => a.getProjectName())}`);
        }), this.logger.endGroup());
      }
      findConfiguredProjectByProjectName(t, n) {
        const i = this.toCanonicalFileName(t), a = this.getConfiguredProjectByCanonicalConfigFilePath(i);
        return n ? a : a?.deferredClose ? void 0 : a;
      }
      getConfiguredProjectByCanonicalConfigFilePath(t) {
        return this.configuredProjects.get(t);
      }
      findExternalProjectByProjectName(t) {
        return hPe(t, this.externalProjects);
      }
      getFilenameForExceededTotalSizeLimitForNonTsFiles(t, n, i, a) {
        if (n && n.disableSizeLimit || !this.host.getFileSize) return;
        let o = FH;
        this.projectToSizeMap.set(t, 0), this.projectToSizeMap.forEach((_) => o -= _ || 0);
        let c = 0;
        for (const _ of i) {
          const u = a.getFileName(_);
          if (!wS(u) && (c += this.host.getFileSize(u), c > FH || c > o)) {
            const d = i.map((g) => a.getFileName(g)).filter((g) => !wS(g)).map((g) => ({
              name: g,
              size: this.host.getFileSize(g)
            })).sort((g, h) => h.size - g.size).slice(0, 5);
            return this.logger.info(`Non TS file size exceeded limit (${c}). Largest files: ${d.map((g) => `${g.name}:${g.size}`).join(", ")}`), u;
          }
        }
        this.projectToSizeMap.set(t, c);
      }
      createExternalProject(t, n, i, a, o) {
        const c = fM(i), _ = l8(i, Xn(ru(t))), u = new OH(t, this, c, this.getFilenameForExceededTotalSizeLimitForNonTsFiles(t, c, n, $H), i.compileOnSave === void 0 ? !0 : i.compileOnSave, void 0, _?.watchOptions);
        return u.setProjectErrors(_?.errors), u.excludedFiles = o, this.addFilesToNonInferredProject(u, n, $H, a), this.externalProjects.push(u), u;
      }
      sendProjectTelemetry(t) {
        if (this.seenProjects.has(t.projectName)) {
          _fe(t);
          return;
        }
        if (this.seenProjects.set(t.projectName, !0), !this.eventHandler || !this.host.createSHA256Hash) {
          _fe(t);
          return;
        }
        const n = $0(t) ? t.projectOptions : void 0;
        _fe(t);
        const i = {
          projectId: this.host.createSHA256Hash(t.projectName),
          fileStats: a8(t.getScriptInfos(), !0),
          compilerOptions: tne(t.getCompilationSettings()),
          typeAcquisition: o(t.getTypeAcquisition()),
          extends: n && n.configHasExtendsProperty,
          files: n && n.configHasFilesProperty,
          include: n && n.configHasIncludeProperty,
          exclude: n && n.configHasExcludeProperty,
          compileOnSave: t.compileOnSaveEnabled,
          configFileName: a(),
          projectType: t instanceof OH ? "external" : "configured",
          languageServiceEnabled: t.languageServiceEnabled,
          version: Qr
        };
        this.eventHandler({
          eventName: zH,
          data: i
        });
        function a() {
          return $0(t) && IH(t.getConfigFilePath()) || "other";
        }
        function o({ enable: c, include: _, exclude: u }) {
          return {
            enable: c,
            include: _ !== void 0 && _.length !== 0,
            exclude: u !== void 0 && u.length !== 0
          };
        }
      }
      addFilesToNonInferredProject(t, n, i, a) {
        this.updateNonInferredProjectFiles(t, n, i), t.setTypeAcquisition(a), t.markAsDirty();
      }
      createConfiguredProject(t, n) {
        var i;
        (i = sn) == null || i.instant(sn.Phase.Session, "createConfiguredProject", { configFilePath: t });
        const a = this.toCanonicalFileName(t);
        let o = this.configFileExistenceInfoCache.get(a);
        o ? o.exists = !0 : this.configFileExistenceInfoCache.set(a, o = { exists: !0 }), o.config || (o.config = {
          cachedDirectoryStructureHost: i9(this.host, this.host.getCurrentDirectory(), this.host.useCaseSensitiveFileNames),
          projects: /* @__PURE__ */ new Map(),
          updateLevel: 2
        });
        const c = new K_e(t, a, this, o.config.cachedDirectoryStructureHost, n);
        return E.assert(!this.configuredProjects.has(a)), this.configuredProjects.set(a, c), this.createConfigFileWatcherForParsedConfig(t, a, c), c;
      }
      loadConfiguredProject(t, n) {
        var i, a;
        (i = sn) == null || i.push(sn.Phase.Session, "loadConfiguredProject", { configFilePath: t.canonicalConfigFilePath }), this.sendProjectLoadingStartEvent(t, n);
        const o = ho(t.getConfigFilePath()), c = this.ensureParsedConfigUptoDate(o, t.canonicalConfigFilePath, this.configFileExistenceInfoCache.get(t.canonicalConfigFilePath), t), _ = c.config.parsedCommandLine;
        E.assert(!!_.fileNames);
        const u = _.options;
        t.projectOptions || (t.projectOptions = {
          configHasExtendsProperty: _.raw.extends !== void 0,
          configHasFilesProperty: _.raw.files !== void 0,
          configHasIncludeProperty: _.raw.include !== void 0,
          configHasExcludeProperty: _.raw.exclude !== void 0
        }), t.parsedCommandLine = _, t.setProjectErrors(_.options.configFile.parseDiagnostics), t.updateReferences(_.projectReferences);
        const d = this.getFilenameForExceededTotalSizeLimitForNonTsFiles(t.canonicalConfigFilePath, u, _.fileNames, HH);
        d ? (t.disableLanguageService(d), this.configFileExistenceInfoCache.forEach((h, S) => this.stopWatchingWildCards(S, t))) : (t.setCompilerOptions(u), t.setWatchOptions(_.watchOptions), t.enableLanguageService(), this.watchWildcards(o, c, t)), t.enablePluginsWithOptions(u);
        const g = _.fileNames.concat(t.getExternalFiles(2));
        this.updateRootAndOptionsOfNonInferredProject(t, g, HH, u, _.typeAcquisition, _.compileOnSave, _.watchOptions), (a = sn) == null || a.pop();
      }
      ensureParsedConfigUptoDate(t, n, i, a) {
        var o, c, _;
        if (i.config && (i.config.updateLevel === 1 && this.reloadFileNamesOfParsedConfig(t, i.config), !i.config.updateLevel))
          return this.ensureConfigFileWatcherForProject(i, a), i;
        if (!i.exists && i.config)
          return i.config.updateLevel = void 0, this.ensureConfigFileWatcherForProject(i, a), i;
        const u = ((o = i.config) == null ? void 0 : o.cachedDirectoryStructureHost) || i9(this.host, this.host.getCurrentDirectory(), this.host.useCaseSensitiveFileNames), d = fw(t, (D) => this.host.readFile(D)), g = bN(t, Ta(d) ? d : ""), h = g.parseDiagnostics;
        Ta(d) || h.push(d);
        const S = Xn(t), T = EN(g, u, S, void 0, t, void 0, this.hostConfiguration.extraFileExtensions, this.extendedConfigCache);
        T.errors.length && h.push(...T.errors), this.logger.info(`Config: ${t} : ${JSON.stringify({
          rootNames: T.fileNames,
          options: T.options,
          watchOptions: T.watchOptions,
          projectReferences: T.projectReferences
        }, void 0, " ")}`);
        const k = (c = i.config) == null ? void 0 : c.parsedCommandLine;
        return i.config ? (i.config.parsedCommandLine = T, i.config.watchedDirectoriesStale = !0, i.config.updateLevel = void 0) : i.config = {
          parsedCommandLine: T,
          cachedDirectoryStructureHost: u,
          projects: /* @__PURE__ */ new Map()
        }, !k && !wO(this.getWatchOptionsFromProjectWatchOptions(void 0, S), this.getWatchOptionsFromProjectWatchOptions(T.watchOptions, S)) && ((_ = i.watcher) == null || _.close(), i.watcher = void 0), this.createConfigFileWatcherForParsedConfig(t, n, a), a9(n, T.options, this.sharedExtendedConfigFileWatchers, (D, P) => this.watchFactory.watchFile(D, () => {
          var N;
          s9(this.extendedConfigCache, P, (R) => this.toPath(R));
          let M = !1;
          (N = this.sharedExtendedConfigFileWatchers.get(P)) == null || N.projects.forEach((R) => {
            M = this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(R, `Change in extended config file ${D} detected`) || M;
          }), M && this.delayEnsureProjectForOpenFiles();
        }, 2e3, this.hostConfiguration.watchOptions, Xl.ExtendedConfigFile, t), (D) => this.toPath(D)), i;
      }
      watchWildcards(t, { exists: n, config: i }, a) {
        if (i.projects.set(a.canonicalConfigFilePath, !0), n) {
          if (i.watchedDirectories && !i.watchedDirectoriesStale) return;
          i.watchedDirectoriesStale = !1, qN(i.watchedDirectories || (i.watchedDirectories = /* @__PURE__ */ new Map()), i.parsedCommandLine.wildcardDirectories, (o, c) => this.watchWildcardDirectory(o, c, t, i));
        } else {
          if (i.watchedDirectoriesStale = !1, !i.watchedDirectories) return;
          K_(i.watchedDirectories, Np), i.watchedDirectories = void 0;
        }
      }
      stopWatchingWildCards(t, n) {
        const i = this.configFileExistenceInfoCache.get(t);
        !i.config || !i.config.projects.get(n.canonicalConfigFilePath) || (i.config.projects.set(n.canonicalConfigFilePath, !1), !Dl(i.config.projects, mo) && (i.config.watchedDirectories && (K_(i.config.watchedDirectories, Np), i.config.watchedDirectories = void 0), i.config.watchedDirectoriesStale = void 0));
      }
      updateNonInferredProjectFiles(t, n, i) {
        var a;
        const o = t.getRootFilesMap(), c = /* @__PURE__ */ new Map();
        for (const _ of n) {
          const u = i.getFileName(_), d = ho(u), g = pP(d);
          let h;
          if (!g && !t.fileExists(u)) {
            h = kE(d, this.currentDirectory, this.toCanonicalFileName);
            const S = o.get(h);
            S ? (((a = S.info) == null ? void 0 : a.path) === h && (t.removeFile(S.info, !1, !0), S.info = void 0), S.fileName = d) : o.set(h, { fileName: d });
          } else {
            const S = i.getScriptKind(_, this.hostConfiguration.extraFileExtensions), T = i.hasMixedContent(_, this.hostConfiguration.extraFileExtensions), k = E.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(d, t.currentDirectory, S, T, t.directoryStructureHost, !1));
            h = k.path;
            const D = o.get(h);
            !D || D.info !== k ? (t.addRoot(k, d), k.isScriptOpen() && this.removeRootOfInferredProjectIfNowPartOfOtherProject(k)) : D.fileName = d;
          }
          c.set(h, !0);
        }
        o.size > c.size && o.forEach((_, u) => {
          c.has(u) || (_.info ? t.removeFile(_.info, t.fileExists(_.info.fileName), !0) : o.delete(u));
        });
      }
      updateRootAndOptionsOfNonInferredProject(t, n, i, a, o, c, _) {
        t.setCompilerOptions(a), t.setWatchOptions(_), c !== void 0 && (t.compileOnSaveEnabled = c), this.addFilesToNonInferredProject(t, n, i, o);
      }
      reloadFileNamesOfConfiguredProject(t) {
        const n = this.reloadFileNamesOfParsedConfig(t.getConfigFilePath(), this.configFileExistenceInfoCache.get(t.canonicalConfigFilePath).config);
        return t.updateErrorOnNoInputFiles(n), this.updateNonInferredProjectFiles(t, n.fileNames.concat(t.getExternalFiles(1)), HH), t.markAsDirty(), t.updateGraph();
      }
      reloadFileNamesOfParsedConfig(t, n) {
        if (n.updateLevel === void 0) return n.parsedCommandLine;
        E.assert(n.updateLevel === 1);
        const i = n.parsedCommandLine.options.configFile.configFileSpecs, a = pw(i, Xn(t), n.parsedCommandLine.options, n.cachedDirectoryStructureHost, this.hostConfiguration.extraFileExtensions);
        return n.parsedCommandLine = {
          ...n.parsedCommandLine,
          fileNames: a
        }, n.updateLevel = void 0, n.parsedCommandLine;
      }
      setFileNamesOfAutoImportProviderOrAuxillaryProject(t, n) {
        this.updateNonInferredProjectFiles(t, n, HH);
      }
      reloadConfiguredProjectOptimized(t, n, i) {
        i.has(t) || (i.set(t, 6), t.initialLoadPending || this.setProjectForReload(t, 2, n));
      }
      reloadConfiguredProjectClearingSemanticCache(t, n, i) {
        return i.get(t) === 7 ? !1 : (i.set(t, 7), this.clearSemanticCache(t), this.reloadConfiguredProject(t, YH(n)), !0);
      }
      setProjectForReload(t, n, i) {
        n === 2 && this.clearSemanticCache(t), t.pendingUpdateReason = i && YH(i), t.pendingUpdateLevel = n;
      }
      reloadConfiguredProject(t, n) {
        t.initialLoadPending = !1, this.setProjectForReload(t, 0), this.loadConfiguredProject(t, n), CPe(t, t.triggerFileForConfigFileDiag ?? t.getConfigFilePath(), !0);
      }
      clearSemanticCache(t) {
        t.originalConfiguredProjects = void 0, t.resolutionCache.clear(), t.getLanguageService(!1).cleanupSemanticCache(), t.cleanupProgram(), t.markAsDirty();
      }
      sendConfigFileDiagEvent(t, n, i) {
        if (!this.eventHandler || this.suppressDiagnosticEvents) return !1;
        const a = t.getLanguageService().getCompilerOptionsDiagnostics();
        return a.push(...t.getAllProjectErrors()), !i && a.length === (t.configDiagDiagnosticsReported ?? 0) ? !1 : (t.configDiagDiagnosticsReported = a.length, this.eventHandler({
          eventName: BH,
          data: {
            configFileName: t.getConfigFilePath(),
            diagnostics: a,
            triggerFile: n ?? t.getConfigFilePath()
          }
        }), !0);
      }
      getOrCreateInferredProjectForProjectRootPathIfEnabled(t, n) {
        if (!this.useInferredProjectPerProjectRoot || t.isDynamic && n === void 0) return;
        if (n) {
          const a = this.toCanonicalFileName(n);
          for (const o of this.inferredProjects) if (o.projectRootPath === a) return o;
          return this.createInferredProject(n, !1, n);
        }
        let i;
        for (const a of this.inferredProjects)
          a.projectRootPath && vp(a.projectRootPath, t.path, this.host.getCurrentDirectory(), !this.host.useCaseSensitiveFileNames) && (i && i.projectRootPath.length > a.projectRootPath.length || (i = a));
        return i;
      }
      getOrCreateSingleInferredProjectIfEnabled() {
        if (this.useSingleInferredProject)
          return this.inferredProjects.length > 0 && this.inferredProjects[0].projectRootPath === void 0 ? this.inferredProjects[0] : this.createInferredProject(this.currentDirectory, !0, void 0);
      }
      getOrCreateSingleInferredWithoutProjectRoot(t) {
        E.assert(!this.useSingleInferredProject);
        const n = this.toCanonicalFileName(this.getNormalizedAbsolutePath(t));
        for (const i of this.inferredProjects) if (!i.projectRootPath && i.isOrphan() && i.canonicalCurrentDirectory === n) return i;
        return this.createInferredProject(t, !1, void 0);
      }
      createInferredProject(t, n, i) {
        const a = i && this.compilerOptionsForInferredProjectsPerProjectRoot.get(i) || this.compilerOptionsForInferredProjects;
        let o, c;
        i && (o = this.watchOptionsForInferredProjectsPerProjectRoot.get(i), c = this.typeAcquisitionForInferredProjectsPerProjectRoot.get(i)), o === void 0 && (o = this.watchOptionsForInferredProjects), c === void 0 && (c = this.typeAcquisitionForInferredProjects), o = o || void 0;
        const _ = new X_e(this, a, o?.watchOptions, i, t, c);
        return _.setProjectErrors(o?.errors), n ? this.inferredProjects.unshift(_) : this.inferredProjects.push(_), _;
      }
      getOrCreateScriptInfoNotOpenedByClient(t, n, i, a) {
        return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(ho(t), n, void 0, void 0, i, a);
      }
      getScriptInfo(t) {
        return this.getScriptInfoForNormalizedPath(ho(t));
      }
      getScriptInfoOrConfig(t) {
        const n = ho(t), i = this.getScriptInfoForNormalizedPath(n);
        if (i) return i;
        const a = this.configuredProjects.get(this.toPath(t));
        return a && a.getCompilerOptions().configFile;
      }
      logErrorForScriptInfoNotFound(t) {
        const n = ma(Go(this.filenameToScriptInfo.entries(), (i) => i[1].deferredDelete ? void 0 : i), ([i, a]) => ({
          path: i,
          fileName: a.fileName
        }));
        this.logger.msg(`Could not find file ${JSON.stringify(t)}.
All files are: ${JSON.stringify(n)}`, "Err");
      }
      getSymlinkedProjects(t) {
        let n;
        if (this.realpathToScriptInfos) {
          const a = t.getRealpathIfDifferent();
          a && bt(this.realpathToScriptInfos.get(a), i), bt(this.realpathToScriptInfos.get(t.path), i);
        }
        return n;
        function i(a) {
          if (a !== t)
            for (const o of a.containingProjects) o.languageServiceEnabled && !o.isOrphan() && !o.getCompilerOptions().preserveSymlinks && !t.isAttached(o) && (n ? Dl(n, (c, _) => _ === a.path ? !1 : Gi(c, o)) || n.add(a.path, o) : (n = Up(), n.add(a.path, o)));
        }
      }
      watchClosedScriptInfo(t) {
        if (E.assert(!t.fileWatcher), !t.isDynamicOrHasMixedContent() && (!this.globalCacheLocationDirectoryPath || !ta(t.path, this.globalCacheLocationDirectoryPath))) {
          const n = t.fileName.indexOf("/node_modules/");
          !this.host.getModifiedTime || n === -1 ? t.fileWatcher = this.watchFactory.watchFile(t.fileName, (i, a) => this.onSourceFileChanged(t, a), 500, this.hostConfiguration.watchOptions, Xl.ClosedScriptInfo) : (t.mTime = this.getModifiedTime(t), t.fileWatcher = this.watchClosedScriptInfoInNodeModules(t.fileName.substring(0, n)));
        }
      }
      createNodeModulesWatcher(t, n) {
        let i = this.watchFactory.watchDirectory(t, (o) => {
          var c;
          const _ = v9(this.toPath(o));
          if (!_) return;
          const u = nl(_);
          if ((c = a.affectedModuleSpecifierCacheProjects) != null && c.size && (u === "package.json" || u === "node_modules") && a.affectedModuleSpecifierCacheProjects.forEach((d) => {
            var g;
            (g = d.getModuleSpecifierCache()) == null || g.clear();
          }), a.refreshScriptInfoRefCount) if (n === _) this.refreshScriptInfosInDirectory(n);
          else {
            const d = this.filenameToScriptInfo.get(_);
            d ? cfe(d) && this.refreshScriptInfo(d) : UC(_) || this.refreshScriptInfosInDirectory(_);
          }
        }, 1, this.hostConfiguration.watchOptions, Xl.NodeModules);
        const a = {
          refreshScriptInfoRefCount: 0,
          affectedModuleSpecifierCacheProjects: void 0,
          close: () => {
            var o;
            i && !a.refreshScriptInfoRefCount && !((o = a.affectedModuleSpecifierCacheProjects) != null && o.size) && (i.close(), i = void 0, this.nodeModulesWatchers.delete(n));
          }
        };
        return this.nodeModulesWatchers.set(n, a), a;
      }
      watchPackageJsonsInNodeModules(t, n) {
        var i;
        const a = this.toPath(t), o = this.nodeModulesWatchers.get(a) || this.createNodeModulesWatcher(t, a);
        return E.assert(!((i = o.affectedModuleSpecifierCacheProjects) != null && i.has(n))), (o.affectedModuleSpecifierCacheProjects || (o.affectedModuleSpecifierCacheProjects = /* @__PURE__ */ new Set())).add(n), { close: () => {
          var c;
          (c = o.affectedModuleSpecifierCacheProjects) == null || c.delete(n), o.close();
        } };
      }
      watchClosedScriptInfoInNodeModules(t) {
        const n = t + "/node_modules", i = this.toPath(n), a = this.nodeModulesWatchers.get(i) || this.createNodeModulesWatcher(n, i);
        return a.refreshScriptInfoRefCount++, { close: () => {
          a.refreshScriptInfoRefCount--, a.close();
        } };
      }
      getModifiedTime(t) {
        return (this.host.getModifiedTime(t.fileName) || ff).getTime();
      }
      refreshScriptInfo(t) {
        const n = this.getModifiedTime(t);
        if (n !== t.mTime) {
          const i = Nj(t.mTime, n);
          t.mTime = n, this.onSourceFileChanged(t, i);
        }
      }
      refreshScriptInfosInDirectory(t) {
        t = t + Co, this.filenameToScriptInfo.forEach((n) => {
          cfe(n) && ta(n.path, t) && this.refreshScriptInfo(n);
        });
      }
      stopWatchingScriptInfo(t) {
        t.fileWatcher && (t.fileWatcher.close(), t.fileWatcher = void 0);
      }
      getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(t, n, i, a, o, c) {
        if (pf(t) || pP(t)) return this.getOrCreateScriptInfoWorker(t, n, !1, void 0, i, !!a, o, c);
        const _ = this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(t));
        if (_) return _;
      }
      getOrCreateScriptInfoForNormalizedPath(t, n, i, a, o, c) {
        return this.getOrCreateScriptInfoWorker(t, this.currentDirectory, n, i, a, !!o, c, !1);
      }
      getOrCreateScriptInfoWorker(t, n, i, a, o, c, _, u) {
        E.assert(a === void 0 || i, "ScriptInfo needs to be opened by client to be able to set its user defined content");
        const d = kE(t, n, this.toCanonicalFileName);
        let g = this.filenameToScriptInfo.get(d);
        if (g) {
          if (g.deferredDelete) {
            if (E.assert(!g.isDynamic), !i && !(_ || this.host).fileExists(t)) return u ? g : void 0;
            g.deferredDelete = void 0;
          }
        } else {
          const h = pP(t);
          if (E.assert(pf(t) || h || i, "", () => `${JSON.stringify({
            fileName: t,
            currentDirectory: n,
            hostCurrentDirectory: this.currentDirectory,
            openKeys: ma(this.openFilesWithNonRootedDiskPath.keys())
          })}
Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`), E.assert(!pf(t) || this.currentDirectory === n || !this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(t)), "", () => `${JSON.stringify({
            fileName: t,
            currentDirectory: n,
            hostCurrentDirectory: this.currentDirectory,
            openKeys: ma(this.openFilesWithNonRootedDiskPath.keys())
          })}
Open script files with non rooted disk path opened with current directory context cannot have same canonical names`), E.assert(!h || this.currentDirectory === n || this.useInferredProjectPerProjectRoot, "", () => `${JSON.stringify({
            fileName: t,
            currentDirectory: n,
            hostCurrentDirectory: this.currentDirectory,
            openKeys: ma(this.openFilesWithNonRootedDiskPath.keys())
          })}
Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`), !i && !h && !(_ || this.host).fileExists(t)) return;
          g = new W_e(this.host, t, o, c, d, this.filenameToScriptInfoVersion.get(d)), this.filenameToScriptInfo.set(g.path, g), this.filenameToScriptInfoVersion.delete(g.path), i ? !pf(t) && (!h || this.currentDirectory !== n) && this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(t), g) : this.watchClosedScriptInfo(g);
        }
        return i && (this.stopWatchingScriptInfo(g), g.open(a), c && g.registerFileUpdate()), g;
      }
      getScriptInfoForNormalizedPath(t) {
        return !pf(t) && this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(t)) || this.getScriptInfoForPath(kE(t, this.currentDirectory, this.toCanonicalFileName));
      }
      getScriptInfoForPath(t) {
        const n = this.filenameToScriptInfo.get(t);
        return !n || !n.deferredDelete ? n : void 0;
      }
      getDocumentPositionMapper(t, n, i) {
        const a = this.getOrCreateScriptInfoNotOpenedByClient(n, t.currentDirectory, this.host, !1);
        if (!a) {
          i && t.addGeneratedFileWatch(n, i);
          return;
        }
        if (a.getSnapshot(), Ta(a.sourceMapFilePath)) {
          const d = this.getScriptInfoForPath(a.sourceMapFilePath);
          if (d && (d.getSnapshot(), d.documentPositionMapper !== void 0))
            return d.sourceInfos = this.addSourceInfoToSourceMap(i, t, d.sourceInfos), d.documentPositionMapper ? d.documentPositionMapper : void 0;
          a.sourceMapFilePath = void 0;
        } else if (a.sourceMapFilePath) {
          a.sourceMapFilePath.sourceInfos = this.addSourceInfoToSourceMap(i, t, a.sourceMapFilePath.sourceInfos);
          return;
        } else if (a.sourceMapFilePath !== void 0) return;
        let o, c = (d, g) => {
          const h = this.getOrCreateScriptInfoNotOpenedByClient(d, t.currentDirectory, this.host, !0);
          if (o = h || g, !h || h.deferredDelete) return;
          const S = h.getSnapshot();
          return h.documentPositionMapper !== void 0 ? h.documentPositionMapper : Fk(S);
        };
        const _ = t.projectName, u = Uq({
          getCanonicalFileName: this.toCanonicalFileName,
          log: (d) => this.logger.info(d),
          getSourceFileLike: (d) => this.getSourceFileLike(d, _, a)
        }, a.fileName, a.textStorage.getLineInfo(), c);
        return c = void 0, o ? Ta(o) ? a.sourceMapFilePath = {
          watcher: this.addMissingSourceMapFile(t.currentDirectory === this.currentDirectory ? o : ca(o, t.currentDirectory), a.path),
          sourceInfos: this.addSourceInfoToSourceMap(i, t)
        } : (a.sourceMapFilePath = o.path, o.declarationInfoPath = a.path, o.deferredDelete || (o.documentPositionMapper = u || !1), o.sourceInfos = this.addSourceInfoToSourceMap(i, t, o.sourceInfos)) : a.sourceMapFilePath = !1, u;
      }
      addSourceInfoToSourceMap(t, n, i) {
        if (t) {
          const a = this.getOrCreateScriptInfoNotOpenedByClient(t, n.currentDirectory, n.directoryStructureHost, !1);
          (i || (i = /* @__PURE__ */ new Set())).add(a.path);
        }
        return i;
      }
      addMissingSourceMapFile(t, n) {
        return this.watchFactory.watchFile(t, () => {
          const i = this.getScriptInfoForPath(n);
          i && i.sourceMapFilePath && !Ta(i.sourceMapFilePath) && (this.delayUpdateProjectGraphs(i.containingProjects, !0), this.delayUpdateSourceInfoProjects(i.sourceMapFilePath.sourceInfos), i.closeSourceMapFileWatcher());
        }, 2e3, this.hostConfiguration.watchOptions, Xl.MissingSourceMapFile);
      }
      getSourceFileLike(t, n, i) {
        const a = n.projectName ? n : this.findProject(n);
        if (a) {
          const c = a.toPath(t), _ = a.getSourceFile(c);
          if (_ && _.resolvedPath === c) return _;
        }
        const o = this.getOrCreateScriptInfoNotOpenedByClient(t, (a || this).currentDirectory, a ? a.directoryStructureHost : this.host, !1);
        if (o) {
          if (i && Ta(i.sourceMapFilePath) && o !== i) {
            const c = this.getScriptInfoForPath(i.sourceMapFilePath);
            c && (c.sourceInfos ?? (c.sourceInfos = /* @__PURE__ */ new Set())).add(o.path);
          }
          return o.cacheSourceFile ? o.cacheSourceFile.sourceFile : (o.sourceFileLike || (o.sourceFileLike = {
            get text() {
              return E.fail("shouldnt need text"), "";
            },
            getLineAndCharacterOfPosition: (c) => {
              const _ = o.positionToLineOffset(c);
              return {
                line: _.line - 1,
                character: _.offset - 1
              };
            },
            getPositionOfLineAndCharacter: (c, _, u) => o.lineOffsetToPosition(c + 1, _ + 1, u)
          }), o.sourceFileLike);
        }
      }
      setPerformanceEventHandler(t) {
        this.performanceEventHandler = t;
      }
      setHostConfiguration(t) {
        var n;
        if (t.file) {
          const i = this.getScriptInfoForNormalizedPath(ho(t.file));
          i && (i.setOptions(CE(t.formatOptions), t.preferences), this.logger.info(`Host configuration update for file ${t.file}`));
        } else {
          if (t.hostInfo !== void 0 && (this.hostConfiguration.hostInfo = t.hostInfo, this.logger.info(`Host information ${t.hostInfo}`)), t.formatOptions && (this.hostConfiguration.formatCodeOptions = {
            ...this.hostConfiguration.formatCodeOptions,
            ...CE(t.formatOptions)
          }, this.logger.info("Format host information updated")), t.preferences) {
            const { lazyConfiguredProjectsFromExternalProject: i, includePackageJsonAutoImports: a, includeCompletionsForModuleExports: o } = this.hostConfiguration.preferences;
            this.hostConfiguration.preferences = {
              ...this.hostConfiguration.preferences,
              ...t.preferences
            }, i && !this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject && this.externalProjectToConfiguredProjectMap.forEach((c) => c.forEach((_) => {
              !_.deferredClose && !_.isClosed() && _.pendingUpdateLevel === 2 && !this.hasPendingProjectUpdate(_) && _.updateGraph();
            })), (a !== t.preferences.includePackageJsonAutoImports || !!o != !!t.preferences.includeCompletionsForModuleExports) && this.forEachProject((c) => {
              c.onAutoImportProviderSettingsChanged();
            });
          }
          if (t.extraFileExtensions && (this.hostConfiguration.extraFileExtensions = t.extraFileExtensions, this.reloadProjects(), this.logger.info("Host file extension mappings updated")), t.watchOptions) {
            const i = (n = l8(t.watchOptions)) == null ? void 0 : n.watchOptions, a = wF(i, this.currentDirectory);
            this.hostConfiguration.watchOptions = a, this.hostConfiguration.beforeSubstitution = a === i ? void 0 : i, this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`);
          }
        }
      }
      getWatchOptions(t) {
        return this.getWatchOptionsFromProjectWatchOptions(t.getWatchOptions(), t.getCurrentDirectory());
      }
      getWatchOptionsFromProjectWatchOptions(t, n) {
        const i = this.hostConfiguration.beforeSubstitution ? wF(this.hostConfiguration.beforeSubstitution, n) : this.hostConfiguration.watchOptions;
        return t && i ? {
          ...i,
          ...t
        } : t || i;
      }
      closeLog() {
        this.logger.close();
      }
      sendSourceFileChange(t) {
        this.filenameToScriptInfo.forEach((n) => {
          if (this.openFiles.has(n.path) || !n.fileWatcher) return;
          const i = s_(() => this.host.fileExists(n.fileName) ? n.deferredDelete ? 0 : 1 : 2);
          if (t) {
            if (cfe(n) || !n.path.startsWith(t) || i() === 2 && n.deferredDelete) return;
            this.logger.info(`Invoking sourceFileChange on ${n.fileName}:: ${i()}`);
          }
          this.onSourceFileChanged(n, i());
        });
      }
      reloadProjects() {
        this.logger.info("reload projects."), this.sendSourceFileChange(void 0), this.pendingProjectUpdates.forEach((i, a) => {
          this.throttledOperations.cancel(a), this.pendingProjectUpdates.delete(a);
        }), this.throttledOperations.cancel(mPe), this.pendingOpenFileProjectUpdates = void 0, this.pendingEnsureProjectForOpenFiles = !1, this.configFileExistenceInfoCache.forEach((i) => {
          i.config && (i.config.updateLevel = 2, i.config.cachedDirectoryStructureHost.clearCache());
        }), this.configFileForOpenFiles.clear(), this.externalProjects.forEach((i) => {
          this.clearSemanticCache(i), i.updateGraph();
        });
        const t = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Set();
        this.externalProjectToConfiguredProjectMap.forEach((i, a) => {
          const o = `Reloading configured project in external project: ${a}`;
          i.forEach((c) => {
            this.getHostPreferences().lazyConfiguredProjectsFromExternalProject ? this.reloadConfiguredProjectOptimized(c, o, t) : this.reloadConfiguredProjectClearingSemanticCache(c, o, t);
          });
        }), this.openFiles.forEach((i, a) => {
          const o = this.getScriptInfoForPath(a);
          xr(o.containingProjects, s8) || this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(o, 7, t, n);
        }), n.forEach((i) => t.set(i, 7)), this.inferredProjects.forEach((i) => this.clearSemanticCache(i)), this.ensureProjectForOpenFiles(), this.cleanupProjectsAndScriptInfos(t, new Set(this.openFiles.keys()), new Set(this.externalProjectToConfiguredProjectMap.keys())), this.logger.info("After reloading projects.."), this.printProjects();
      }
      removeRootOfInferredProjectIfNowPartOfOtherProject(t) {
        E.assert(t.containingProjects.length > 0);
        const n = t.containingProjects[0];
        !n.isOrphan() && Xk(n) && n.isRoot(t) && bt(t.containingProjects, (i) => i !== n && !i.isOrphan()) && n.removeFile(t, !0, !0);
      }
      ensureProjectForOpenFiles() {
        this.logger.info("Before ensureProjectForOpenFiles:"), this.printProjects();
        const t = this.pendingOpenFileProjectUpdates;
        this.pendingOpenFileProjectUpdates = void 0, t?.forEach((n, i) => this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(i), 5)), this.openFiles.forEach((n, i) => {
          const a = this.getScriptInfoForPath(i);
          a.isOrphan() ? this.assignOrphanScriptInfoToInferredProject(a, n) : this.removeRootOfInferredProjectIfNowPartOfOtherProject(a);
        }), this.pendingEnsureProjectForOpenFiles = !1, this.inferredProjects.forEach(nd), this.logger.info("After ensureProjectForOpenFiles:"), this.printProjects();
      }
      openClientFile(t, n, i, a) {
        return this.openClientFileWithNormalizedPath(ho(t), n, i, !1, a ? ho(a) : void 0);
      }
      getOriginalLocationEnsuringConfiguredProject(t, n) {
        const i = t.isSourceOfProjectReferenceRedirect(n.fileName), a = i ? n : t.getSourceMapper().tryGetSourcePosition(n);
        if (!a) return;
        const { fileName: o } = a, c = this.getScriptInfo(o);
        if (!c && !this.host.fileExists(o)) return;
        const _ = {
          fileName: ho(o),
          path: this.toPath(o)
        }, u = this.getConfigFileNameForFile(_, !1);
        if (!u) return;
        let d = this.findConfiguredProjectByProjectName(u);
        if (!d) {
          if (t.getCompilerOptions().disableReferencedProjectLoad)
            return i ? n : c?.containingProjects.length ? a : n;
          d = this.createConfiguredProject(u, `Creating project for original file: ${_.fileName}${n !== a ? " for location: " + n.fileName : ""}`);
        }
        const g = this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(_, 5, sfe(d, 4), (T) => `Creating project referenced in solution ${T.projectName} to find possible configured project for original file: ${_.fileName}${n !== a ? " for location: " + n.fileName : ""}`);
        if (!g.defaultProject) return;
        if (g.defaultProject === t) return a;
        S(g.defaultProject);
        const h = this.getScriptInfo(o);
        if (!h || !h.containingProjects.length) return;
        return h.containingProjects.forEach((T) => {
          $0(T) && S(T);
        }), a;
        function S(T) {
          (t.originalConfiguredProjects ?? (t.originalConfiguredProjects = /* @__PURE__ */ new Set())).add(T.canonicalConfigFilePath);
        }
      }
      fileExists(t) {
        return !!this.getScriptInfoForNormalizedPath(t) || this.host.fileExists(t);
      }
      findExternalProjectContainingOpenScriptInfo(t) {
        return xr(this.externalProjects, (n) => (nd(n), n.containsScriptInfo(t)));
      }
      getOrCreateOpenScriptInfo(t, n, i, a, o) {
        const c = this.getOrCreateScriptInfoWorker(t, o ? this.getNormalizedAbsolutePath(o) : this.currentDirectory, !0, n, i, !!a, void 0, !0);
        return this.openFiles.set(c.path, o), c;
      }
      assignProjectToOpenedScriptInfo(t) {
        let n, i;
        const a = this.findExternalProjectContainingOpenScriptInfo(t);
        let o, c;
        if (!a && this.serverMode === 0) {
          const _ = this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(t, 5);
          _ && (o = _.seenProjects, c = _.sentConfigDiag, _.defaultProject && (n = _.defaultProject.getConfigFilePath(), i = _.defaultProject.getAllProjectErrors()));
        }
        return t.containingProjects.forEach(nd), t.isOrphan() && (o?.forEach((_, u) => {
          _ !== 4 && !c.has(u) && this.sendConfigFileDiagEvent(u, t.fileName, !0);
        }), E.assert(this.openFiles.has(t.path)), this.assignOrphanScriptInfoToInferredProject(t, this.openFiles.get(t.path))), E.assert(!t.isOrphan()), {
          configFileName: n,
          configFileErrors: i,
          retainProjects: o
        };
      }
      findCreateOrReloadConfiguredProject(t, n, i, a, o, c, _, u, d) {
        let g = d ?? this.findConfiguredProjectByProjectName(t, a), h = !1, S;
        switch (n) {
          case 0:
          case 1:
          case 3:
            if (!g) return;
            break;
          case 2:
            if (!g) return;
            S = RKe(g);
            break;
          case 4:
          case 5:
            g ?? (g = this.createConfiguredProject(t, i)), _ || ({ sentConfigFileDiag: h, configFileExistenceInfo: S } = sfe(g, n, o));
            break;
          case 6:
            if (g ?? (g = this.createConfiguredProject(t, YH(i))), g.projectService.reloadConfiguredProjectOptimized(g, i, c), S = lfe(g), S) break;
          case 7:
            g ?? (g = this.createConfiguredProject(t, YH(i))), h = !u && this.reloadConfiguredProjectClearingSemanticCache(g, i, c), u && !u.has(g) && !c.has(g) && (this.setProjectForReload(g, 2, i), u.add(g));
            break;
          default:
            E.assertNever(n);
        }
        return {
          project: g,
          sentConfigFileDiag: h,
          configFileExistenceInfo: S,
          reason: i
        };
      }
      tryFindDefaultConfiguredProjectForOpenScriptInfo(t, n, i, a) {
        const o = this.getConfigFileNameForFile(t, n <= 3);
        if (!o) return;
        const c = bPe(n), _ = this.findCreateOrReloadConfiguredProject(o, c, jKe(t), i, t.fileName, a);
        return _ && this.tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(t, n, _, (u) => `Creating project referenced in solution ${u.projectName} to find possible configured project for ${t.fileName} to open`, i, a);
      }
      isMatchedByConfig(t, n, i) {
        if (n.fileNames.some((u) => this.toPath(u) === i.path)) return !0;
        if (YJ(i.fileName, n.options, this.hostConfiguration.extraFileExtensions)) return !1;
        const { validatedFilesSpec: a, validatedIncludeSpecs: o, validatedExcludeSpecs: c } = n.options.configFile.configFileSpecs, _ = ho(ca(Xn(t), this.currentDirectory));
        return a?.some((u) => this.toPath(ca(u, _)) === i.path) ? !0 : !o?.length || IF(i.fileName, c, this.host.useCaseSensitiveFileNames, this.currentDirectory, _) ? !1 : o?.some((u) => {
          const d = HJ(u, _, "files");
          return !!d && O0(`(${d})$`, this.host.useCaseSensitiveFileNames).test(i.fileName);
        });
      }
      tryFindDefaultConfiguredProjectForOpenScriptInfoOrClosedFileInfo(t, n, i, a, o, c) {
        const _ = vPe(t), u = bPe(n), d = /* @__PURE__ */ new Map();
        let g;
        const h = /* @__PURE__ */ new Set();
        let S, T, k, D;
        return P(i), {
          defaultProject: S ?? T,
          tsconfigProject: k ?? D,
          sentConfigDiag: h,
          seenProjects: d,
          seenConfigs: g
        };
        function P(z) {
          return R(z, z.project) ?? G(z.project) ?? L(z.project);
        }
        function N(z, H, U, pe, ie, W) {
          if (H) {
            if (d.has(H)) return;
            d.set(H, u);
          } else {
            if (g?.has(W)) return;
            (g ?? (g = /* @__PURE__ */ new Set())).add(W);
          }
          if (!ie.projectService.isMatchedByConfig(U, z.config.parsedCommandLine, t)) {
            ie.languageServiceEnabled && ie.projectService.watchWildcards(U, z, ie);
            return;
          }
          const Q = H ? sfe(H, n, t.fileName, pe, c) : ie.projectService.findCreateOrReloadConfiguredProject(U, n, pe, o, t.fileName, c);
          if (!Q) {
            E.assert(n === 3);
            return;
          }
          return d.set(Q.project, u), Q.sentConfigFileDiag && h.add(Q.project), M(Q.project, ie);
        }
        function M(z, H) {
          if (d.get(z) === n) return;
          d.set(z, n);
          const U = _ ? t : z.projectService.getScriptInfo(t.fileName), pe = U && z.containsScriptInfo(U);
          if (pe && !z.isSourceOfProjectReferenceRedirect(U.path))
            return k = H, S = z;
          !T && _ && pe && (D = H, T = z);
        }
        function R(z, H) {
          return z.sentConfigFileDiag && h.add(z.project), z.configFileExistenceInfo ? N(z.configFileExistenceInfo, z.project, ho(z.project.getConfigFilePath()), z.reason, z.project, z.project.canonicalConfigFilePath) : M(z.project, H);
        }
        function G(z) {
          return z.parsedCommandLine && TPe(z, z.parsedCommandLine, N, u, a(z), o, c);
        }
        function L(z) {
          return _ ? SPe(t, z, P, u, `Creating possible configured project for ${t.fileName} to open`, o, c, !1) : void 0;
        }
      }
      tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(t, n, i, a) {
        const o = n === 1, c = this.tryFindDefaultConfiguredProjectForOpenScriptInfo(t, n, o, i);
        if (!c) return;
        const { defaultProject: _, tsconfigProject: u, seenProjects: d } = c;
        return _ && SPe(t, u, (g) => {
          d.set(g.project, n);
        }, n, `Creating project possibly referencing default composite project ${_.getProjectName()} of open file ${t.fileName}`, o, i, !0, a), c;
      }
      loadAncestorProjectTree(t) {
        t ?? (t = new Set(Go(this.configuredProjects.entries(), ([a, o]) => o.initialLoadPending ? void 0 : a)));
        const n = /* @__PURE__ */ new Set(), i = ma(this.configuredProjects.values());
        for (const a of i)
          xPe(a, (o) => t.has(o)) && nd(a), this.ensureProjectChildren(a, t, n);
      }
      ensureProjectChildren(t, n, i) {
        var a;
        if (!b_(i, t.canonicalConfigFilePath) || t.getCompilerOptions().disableReferencedProjectLoad) return;
        const o = (a = t.getCurrentProgram()) == null ? void 0 : a.getResolvedProjectReferences();
        if (o)
          for (const c of o) {
            if (!c) continue;
            const _ = dz(c.references, (g) => n.has(g.sourceFile.path) ? g : void 0);
            if (!_) continue;
            const u = ho(c.sourceFile.fileName), d = this.findConfiguredProjectByProjectName(u) ?? this.createConfiguredProject(u, `Creating project referenced by : ${t.projectName} as it references project ${_.sourceFile.fileName}`);
            nd(d), this.ensureProjectChildren(d, n, i);
          }
      }
      cleanupConfiguredProjects(t, n, i) {
        this.getOrphanConfiguredProjects(t, i, n).forEach((a) => this.removeProject(a));
      }
      cleanupProjectsAndScriptInfos(t, n, i) {
        this.cleanupConfiguredProjects(t, i, n);
        for (const a of this.inferredProjects.slice()) a.isOrphan() && this.removeProject(a);
        this.removeOrphanScriptInfos();
      }
      tryInvokeWildCardDirectories(t) {
        this.configFileExistenceInfoCache.forEach((n, i) => {
          var a, o;
          !((a = n.config) != null && a.parsedCommandLine) || Gi(n.config.parsedCommandLine.fileNames, t.fileName, this.host.useCaseSensitiveFileNames ? nS : ev) || (o = n.config.watchedDirectories) == null || o.forEach((c, _) => {
            vp(_, t.fileName, !this.host.useCaseSensitiveFileNames) && (this.logger.info(`Invoking ${i}:: wildcard for open scriptInfo:: ${t.fileName}`), this.onWildCardDirectoryWatcherInvoke(_, i, n.config, c.watcher, t.fileName));
          });
        });
      }
      openClientFileWithNormalizedPath(t, n, i, a, o) {
        const c = this.getScriptInfoForPath(kE(t, o ? this.getNormalizedAbsolutePath(o) : this.currentDirectory, this.toCanonicalFileName)), _ = this.getOrCreateOpenScriptInfo(t, n, i, a, o);
        !c && _ && !_.isDynamic && this.tryInvokeWildCardDirectories(_);
        const { retainProjects: u, ...d } = this.assignProjectToOpenedScriptInfo(_);
        return this.cleanupProjectsAndScriptInfos(u, /* @__PURE__ */ new Set([_.path]), void 0), this.telemetryOnOpenFile(_), this.printProjects(), d;
      }
      getOrphanConfiguredProjects(t, n, i) {
        const a = new Set(this.configuredProjects.values()), o = (d) => {
          d.originalConfiguredProjects && ($0(d) || !d.isOrphan()) && d.originalConfiguredProjects.forEach((g, h) => {
            const S = this.getConfiguredProjectByCanonicalConfigFilePath(h);
            return S && u(S);
          });
        };
        if (t?.forEach((d, g) => u(g)), !a.size || (this.inferredProjects.forEach(o), this.externalProjects.forEach(o), this.externalProjectToConfiguredProjectMap.forEach((d, g) => {
          i?.has(g) || d.forEach(u);
        }), !a.size) || (Dl(this.openFiles, (d, g) => {
          if (n?.has(g)) return;
          const h = this.getScriptInfoForPath(g);
          if (xr(h.containingProjects, s8)) return;
          const S = this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(h, 1);
          if (S?.defaultProject && (S?.seenProjects.forEach((T, k) => u(k)), !a.size))
            return a;
        }), !a.size)) return a;
        return Dl(this.configuredProjects, (d) => {
          if (a.has(d) && (_(d) || kPe(d, c)) && (u(d), !a.size))
            return a;
        }), a;
        function c(d) {
          return !a.has(d) || _(d);
        }
        function _(d) {
          var g, h;
          return (d.deferredClose || d.projectService.hasPendingProjectUpdate(d)) && !!((h = (g = d.projectService.configFileExistenceInfoCache.get(d.canonicalConfigFilePath)) == null ? void 0 : g.openFilesImpactedByConfigFile) != null && h.size);
        }
        function u(d) {
          a.delete(d) && (o(d), kPe(d, u));
        }
      }
      removeOrphanScriptInfos() {
        const t = new Map(this.filenameToScriptInfo);
        this.filenameToScriptInfo.forEach((n) => {
          if (!n.deferredDelete) {
            if (!n.isScriptOpen() && n.isOrphan() && !V_e(n) && !U_e(n)) {
              if (!n.sourceMapFilePath) return;
              let i;
              if (Ta(n.sourceMapFilePath)) {
                const a = this.filenameToScriptInfo.get(n.sourceMapFilePath);
                i = a?.sourceInfos;
              } else i = n.sourceMapFilePath.sourceInfos;
              if (!i || !Vg(i, (a) => {
                const o = this.getScriptInfoForPath(a);
                return !!o && (o.isScriptOpen() || !o.isOrphan());
              })) return;
            }
            if (t.delete(n.path), n.sourceMapFilePath) {
              let i;
              if (Ta(n.sourceMapFilePath)) {
                const a = this.filenameToScriptInfo.get(n.sourceMapFilePath);
                a?.deferredDelete ? n.sourceMapFilePath = {
                  watcher: this.addMissingSourceMapFile(a.fileName, n.path),
                  sourceInfos: a.sourceInfos
                } : t.delete(n.sourceMapFilePath), i = a?.sourceInfos;
              } else i = n.sourceMapFilePath.sourceInfos;
              i && i.forEach((a, o) => t.delete(o));
            }
          }
        }), t.forEach((n) => this.deleteScriptInfo(n));
      }
      telemetryOnOpenFile(t) {
        if (this.serverMode !== 0 || !this.eventHandler || !t.isJavaScript() || !Yp(this.allJsFilesForOpenFileTelemetry, t.path)) return;
        const n = this.ensureDefaultProjectForFile(t);
        if (!n.languageServiceEnabled) return;
        const i = n.getSourceFile(t.path), a = !!i && !!i.checkJsDirective;
        this.eventHandler({
          eventName: efe,
          data: { info: { checkJs: a } }
        });
      }
      closeClientFile(t, n) {
        const i = this.getScriptInfoForNormalizedPath(ho(t)), a = i ? this.closeOpenFile(i, n) : !1;
        return n || this.printProjects(), a;
      }
      collectChanges(t, n, i, a) {
        for (const o of n) {
          const c = xr(t, (_) => _.projectName === o.getProjectName());
          a.push(o.getChangesSinceVersion(c && c.version, i));
        }
      }
      synchronizeProjectList(t, n) {
        const i = [];
        return this.collectChanges(t, this.externalProjects, n, i), this.collectChanges(t, Go(this.configuredProjects.values(), (a) => a.deferredClose ? void 0 : a), n, i), this.collectChanges(t, this.inferredProjects, n, i), i;
      }
      applyChangesInOpenFiles(t, n, i) {
        let a, o, c = !1;
        if (t) for (const u of t) {
          (a ?? (a = [])).push(this.getScriptInfoForPath(kE(ho(u.fileName), u.projectRootPath ? this.getNormalizedAbsolutePath(u.projectRootPath) : this.currentDirectory, this.toCanonicalFileName)));
          const d = this.getOrCreateOpenScriptInfo(ho(u.fileName), u.content, qH(u.scriptKind), u.hasMixedContent, u.projectRootPath ? ho(u.projectRootPath) : void 0);
          (o || (o = [])).push(d);
        }
        if (n) for (const u of n) {
          const d = this.getScriptInfo(u.fileName);
          E.assert(!!d), this.applyChangesToFile(d, u.changes);
        }
        if (i) for (const u of i) c = this.closeClientFile(u, !0) || c;
        let _;
        bt(a, (u, d) => !u && o[d] && !o[d].isDynamic ? this.tryInvokeWildCardDirectories(o[d]) : void 0), o?.forEach((u) => {
          var d;
          return (d = this.assignProjectToOpenedScriptInfo(u).retainProjects) == null ? void 0 : d.forEach((g, h) => (_ ?? (_ = /* @__PURE__ */ new Map())).set(h, g));
        }), c && this.assignOrphanScriptInfosToInferredProject(), o ? (this.cleanupProjectsAndScriptInfos(_, new Set(o.map((u) => u.path)), void 0), o.forEach((u) => this.telemetryOnOpenFile(u)), this.printProjects()) : It(i) && this.printProjects();
      }
      applyChangesToFile(t, n) {
        for (const i of n) t.editContent(i.span.start, i.span.start + i.span.length, i.newText);
      }
      closeExternalProject(t, n) {
        const i = ho(t);
        if (this.externalProjectToConfiguredProjectMap.get(i)) this.externalProjectToConfiguredProjectMap.delete(i);
        else {
          const a = this.findExternalProjectByProjectName(t);
          a && this.removeProject(a);
        }
        n && (this.cleanupConfiguredProjects(), this.printProjects());
      }
      openExternalProjects(t) {
        const n = new Set(this.externalProjects.map((i) => i.getProjectName()));
        this.externalProjectToConfiguredProjectMap.forEach((i, a) => n.add(a));
        for (const i of t)
          this.openExternalProject(i, !1), n.delete(i.projectFileName);
        n.forEach((i) => this.closeExternalProject(i, !1)), this.cleanupConfiguredProjects(), this.printProjects();
      }
      static escapeFilenameForRegex(t) {
        return t.replace(this.filenameEscapeRegexp, "\\$&");
      }
      resetSafeList() {
        this.safelist = tfe;
      }
      applySafeList(t) {
        const n = t.typeAcquisition;
        E.assert(!!n, "proj.typeAcquisition should be set by now");
        const i = this.applySafeListWorker(t, t.rootFiles, n);
        return i?.excludedFiles ?? [];
      }
      applySafeListWorker(t, n, i) {
        if (i.enable === !1 || i.disableFilenameBasedTypeAcquisition) return;
        const a = i.include || (i.include = []), o = [], c = n.map((h) => ru(h.fileName));
        for (const h of Object.keys(this.safelist)) {
          const S = this.safelist[h];
          for (const T of c) if (S.match.test(T)) {
            if (this.logger.info(`Excluding files based on rule ${h} matching file '${T}'`), S.types)
              for (const k of S.types) a.includes(k) || a.push(k);
            if (S.exclude) for (const k of S.exclude) {
              const D = T.replace(S.match, (...P) => k.map((N) => typeof N == "number" ? Ta(P[N]) ? Sge.escapeFilenameForRegex(P[N]) : (this.logger.info(`Incorrect RegExp specification in safelist rule ${h} - not enough groups`), "\\*") : N).join(""));
              o.includes(D) || o.push(D);
            }
            else {
              const k = Sge.escapeFilenameForRegex(T);
              o.includes(k) || o.push(k);
            }
          }
        }
        const _ = o.map((h) => new RegExp(h, "i"));
        let u, d;
        for (let h = 0; h < n.length; h++) if (_.some((S) => S.test(c[h]))) g(h);
        else {
          if (i.enable) {
            const S = nl(Ny(c[h]));
            if (lc(S, "js")) {
              const T = ij(__(S)), k = this.legacySafelist.get(T);
              if (k !== void 0) {
                this.logger.info(`Excluded '${c[h]}' because it matched ${T} from the legacy safelist`), g(h), a.includes(k) || a.push(k);
                continue;
              }
            }
          }
          /^.+[.-]min\.js$/.test(c[h]) ? g(h) : u?.push(n[h]);
        }
        return d ? {
          rootFiles: u,
          excludedFiles: d
        } : void 0;
        function g(h) {
          d || (E.assert(!u), u = n.slice(0, h), d = []), d.push(c[h]);
        }
      }
      openExternalProject(t, n) {
        const i = this.findExternalProjectByProjectName(t.projectFileName);
        let a, o = [];
        for (const c of t.rootFiles) {
          const _ = ho(c.fileName);
          if (IH(_)) {
            if (this.serverMode === 0 && this.host.fileExists(_)) {
              let u = this.findConfiguredProjectByProjectName(_);
              u || (u = this.createConfiguredProject(_, `Creating configured project in external project: ${t.projectFileName}`), this.getHostPreferences().lazyConfiguredProjectsFromExternalProject || u.updateGraph()), (a ?? (a = /* @__PURE__ */ new Set())).add(u), E.assert(!u.isClosed());
            }
          } else o.push(c);
        }
        if (a)
          this.externalProjectToConfiguredProjectMap.set(t.projectFileName, a), i && this.removeProject(i);
        else {
          this.externalProjectToConfiguredProjectMap.delete(t.projectFileName);
          const c = t.typeAcquisition || {};
          c.include = c.include || [], c.exclude = c.exclude || [], c.enable === void 0 && (c.enable = H_e(o.map((d) => d.fileName)));
          const _ = this.applySafeListWorker(t, o, c), u = _?.excludedFiles ?? [];
          if (o = _?.rootFiles ?? o, i) {
            i.excludedFiles = u;
            const d = fM(t.options), g = l8(t.options, i.getCurrentDirectory()), h = this.getFilenameForExceededTotalSizeLimitForNonTsFiles(t.projectFileName, d, o, $H);
            h ? i.disableLanguageService(h) : i.enableLanguageService(), i.setProjectErrors(g?.errors), this.updateRootAndOptionsOfNonInferredProject(i, o, $H, d, c, t.options.compileOnSave, g?.watchOptions), i.updateGraph();
          } else this.createExternalProject(t.projectFileName, o, t.options, c, u).updateGraph();
        }
        n && (this.cleanupConfiguredProjects(a, /* @__PURE__ */ new Set([t.projectFileName])), this.printProjects());
      }
      hasDeferredExtension() {
        for (const t of this.hostConfiguration.extraFileExtensions) if (t.scriptKind === 7) return !0;
        return !1;
      }
      requestEnablePlugin(t, n, i) {
        if (!this.host.importPlugin && !this.host.require) {
          this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");
          return;
        }
        if (this.logger.info(`Enabling plugin ${n.name} from candidate paths: ${i.join(",")}`), !n.name || jl(n.name) || /[\\/]\.\.?(?:$|[\\/])/.test(n.name)) {
          this.logger.info(`Skipped loading plugin ${n.name || JSON.stringify(n)} because only package name is allowed plugin name`);
          return;
        }
        if (this.host.importPlugin) {
          const a = $k.importServicePluginAsync(n, i, this.host, (c) => this.logger.info(c));
          this.pendingPluginEnablements ?? (this.pendingPluginEnablements = /* @__PURE__ */ new Map());
          let o = this.pendingPluginEnablements.get(t);
          o || this.pendingPluginEnablements.set(t, o = []), o.push(a);
          return;
        }
        this.endEnablePlugin(t, $k.importServicePluginSync(n, i, this.host, (a) => this.logger.info(a)));
      }
      endEnablePlugin(t, { pluginConfigEntry: n, resolvedModule: i, errorLogs: a }) {
        var o;
        if (i) {
          const c = (o = this.currentPluginConfigOverrides) == null ? void 0 : o.get(n.name);
          if (c) {
            const _ = n.name;
            n = c, n.name = _;
          }
          t.enableProxy(i, n);
        } else
          bt(a, (c) => this.logger.info(c)), this.logger.info(`Couldn't find ${n.name}`);
      }
      hasNewPluginEnablementRequests() {
        return !!this.pendingPluginEnablements;
      }
      hasPendingPluginEnablements() {
        return !!this.currentPluginEnablementPromise;
      }
      async waitForPendingPlugins() {
        for (; this.currentPluginEnablementPromise; ) await this.currentPluginEnablementPromise;
      }
      enableRequestedPlugins() {
        this.pendingPluginEnablements && this.enableRequestedPluginsAsync();
      }
      async enableRequestedPluginsAsync() {
        if (this.currentPluginEnablementPromise && await this.waitForPendingPlugins(), !this.pendingPluginEnablements) return;
        const t = ma(this.pendingPluginEnablements.entries());
        this.pendingPluginEnablements = void 0, this.currentPluginEnablementPromise = this.enableRequestedPluginsWorker(t), await this.currentPluginEnablementPromise;
      }
      async enableRequestedPluginsWorker(t) {
        E.assert(this.currentPluginEnablementPromise === void 0);
        let n = !1;
        await Promise.all(or(t, async ([i, a]) => {
          const o = await Promise.all(a);
          if (i.isClosed() || c8(i)) {
            this.logger.info(`Cancelling plugin enabling for ${i.getProjectName()} as it is ${i.isClosed() ? "closed" : "deferred close"}`);
            return;
          }
          n = !0;
          for (const c of o) this.endEnablePlugin(i, c);
          this.delayUpdateProjectGraph(i);
        })), this.currentPluginEnablementPromise = void 0, n && this.sendProjectsUpdatedInBackgroundEvent();
      }
      configurePlugin(t) {
        this.forEachEnabledProject((n) => n.onPluginConfigurationChanged(t.pluginName, t.configuration)), this.currentPluginConfigOverrides = this.currentPluginConfigOverrides || /* @__PURE__ */ new Map(), this.currentPluginConfigOverrides.set(t.pluginName, t.configuration);
      }
      getPackageJsonsVisibleToFile(t, n, i) {
        const a = this.packageJsonCache, o = i && this.toPath(i), c = [], _ = (u) => {
          switch (a.directoryHasPackageJson(u)) {
            case 3:
              return a.searchDirectoryAndAncestors(u, n), _(u);
            case -1:
              const d = jn(u, "package.json");
              this.watchPackageJsonFile(d, this.toPath(d), n);
              const g = a.getInDirectory(u);
              g && c.push(g);
          }
          if (o && o === u) return !0;
        };
        return hg(n, Xn(t), _), c;
      }
      getNearestAncestorDirectoryWithPackageJson(t, n) {
        return hg(n, t, (i) => {
          switch (this.packageJsonCache.directoryHasPackageJson(i)) {
            case -1:
              return i;
            case 0:
              return;
            case 3:
              return this.host.fileExists(jn(i, "package.json")) ? i : void 0;
          }
        });
      }
      watchPackageJsonFile(t, n, i) {
        E.assert(i !== void 0);
        let a = (this.packageJsonFilesMap ?? (this.packageJsonFilesMap = /* @__PURE__ */ new Map())).get(n);
        if (!a) {
          let o = this.watchFactory.watchFile(t, (c, _) => {
            switch (_) {
              case 0:
              case 1:
                this.packageJsonCache.addOrUpdate(c, n), this.onPackageJsonChange(a);
                break;
              case 2:
                this.packageJsonCache.delete(n), this.onPackageJsonChange(a), a.projects.clear(), a.close();
            }
          }, 250, this.hostConfiguration.watchOptions, Xl.PackageJson);
          a = {
            projects: /* @__PURE__ */ new Set(),
            close: () => {
              var c;
              a.projects.size || !o || (o.close(), o = void 0, (c = this.packageJsonFilesMap) == null || c.delete(n), this.packageJsonCache.invalidate(n));
            }
          }, this.packageJsonFilesMap.set(n, a);
        }
        a.projects.add(i), (i.packageJsonWatches ?? (i.packageJsonWatches = /* @__PURE__ */ new Set())).add(a);
      }
      onPackageJsonChange(t) {
        t.projects.forEach((n) => {
          var i;
          return (i = n.onPackageJsonChange) == null ? void 0 : i.call(n);
        });
      }
      includePackageJsonAutoImports() {
        switch (this.hostConfiguration.preferences.includePackageJsonAutoImports) {
          case "on":
            return 1;
          case "off":
            return 0;
          default:
            return 2;
        }
      }
      getIncompleteCompletionsCache() {
        return this.incompleteCompletionsCache || (this.incompleteCompletionsCache = JKe());
      }
    };
    DPe.filenameEscapeRegexp = /[-/\\^$*+?.()|[\]{}]/g;
    var dfe = DPe;
    function JKe() {
      let e;
      return {
        get() {
          return e;
        },
        set(t) {
          e = t;
        },
        clear() {
          e = void 0;
        }
      };
    }
    function mfe(e) {
      return e.kind !== void 0;
    }
    function gfe(e) {
      e.print(!1, !1, !1);
    }
    function hfe(e) {
      let t, n, i;
      const a = {
        get(u, d, g, h) {
          if (!(!n || i !== c(u, g, h)))
            return n.get(d);
        },
        set(u, d, g, h, S, T, k) {
          if (o(u, g, h).set(d, _(S, T, k, void 0, !1)), k) {
            for (const D of T) if (D.isInNodeModules) {
              const P = D.path.substring(0, D.path.indexOf(ah) + ah.length - 1), N = e.toPath(P);
              t?.has(N) || (t || (t = /* @__PURE__ */ new Map())).set(N, e.watchNodeModulesForPackageJsonChanges(P));
            }
          }
        },
        setModulePaths(u, d, g, h, S) {
          const T = o(u, g, h), k = T.get(d);
          k ? k.modulePaths = S : T.set(d, _(void 0, S, void 0, void 0, void 0));
        },
        setBlockedByPackageJsonDependencies(u, d, g, h, S, T) {
          const k = o(u, g, h), D = k.get(d);
          D ? (D.isBlockedByPackageJsonDependencies = T, D.packageName = S) : k.set(d, _(void 0, void 0, void 0, S, T));
        },
        clear() {
          t?.forEach(md), n?.clear(), t?.clear(), i = void 0;
        },
        count() {
          return n ? n.size : 0;
        }
      };
      return E.isDebugging && Object.defineProperty(a, "__cache", { get: () => n }), a;
      function o(u, d, g) {
        const h = c(u, d, g);
        return n && i !== h && a.clear(), i = h, n || (n = /* @__PURE__ */ new Map());
      }
      function c(u, d, g) {
        return `${u},${d.importModuleSpecifierEnding},${d.importModuleSpecifierPreference},${g.overrideImportMode}`;
      }
      function _(u, d, g, h, S) {
        return {
          kind: u,
          modulePaths: d,
          moduleSpecifiers: g,
          packageName: h,
          isBlockedByPackageJsonDependencies: S
        };
      }
    }
    function yfe(e) {
      const t = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
      return {
        addOrUpdate: i,
        invalidate: a,
        delete: (c) => {
          t.delete(c), n.set(Xn(c), !0);
        },
        getInDirectory: (c) => t.get(e.toPath(jn(c, "package.json"))) || void 0,
        directoryHasPackageJson: (c) => o(e.toPath(c)),
        searchDirectoryAndAncestors: (c, _) => {
          hg(_, c, (u) => {
            const d = e.toPath(u);
            if (o(d) !== 3) return !0;
            const g = jn(u, "package.json");
            Yw(e, g) ? i(g, jn(d, "package.json")) : n.set(d, !0);
          });
        }
      };
      function i(c, _) {
        const u = E.checkDefined(Cq(c, e.host));
        t.set(_, u), n.delete(Xn(_));
      }
      function a(c) {
        t.delete(c), n.delete(Xn(c));
      }
      function o(c) {
        return t.has(jn(c, "package.json")) ? -1 : n.has(c) ? 0 : 3;
      }
    }
    var wPe = {
      isCancellationRequested: () => !1,
      setRequest: () => {
      },
      resetRequest: () => {
      }
    };
    function zKe(e) {
      const t = e[0], n = e[1];
      return (1e9 * t + n) / 1e6;
    }
    function PPe(e, t) {
      if ((Xk(e) || s8(e)) && e.isJsOnlyProject()) {
        const n = e.getScriptInfoForNormalizedPath(t);
        return n && !n.isJavaScript();
      }
      return !1;
    }
    function WKe(e) {
      return U_(e) || !!e.emitDecoratorMetadata;
    }
    function APe(e, t, n) {
      const i = t.getScriptInfoForNormalizedPath(e);
      return {
        start: i.positionToLineOffset(n.start),
        end: i.positionToLineOffset(n.start + n.length),
        text: Mm(n.messageText, `
`),
        code: n.code,
        category: aS(n),
        reportsUnnecessary: n.reportsUnnecessary,
        reportsDeprecated: n.reportsDeprecated,
        source: n.source,
        relatedInformation: or(n.relatedInformation, ZH)
      };
    }
    function ZH(e) {
      return e.file ? {
        span: {
          start: EE(Za(e.file, e.start)),
          end: EE(Za(e.file, e.start + e.length)),
          file: e.file.fileName
        },
        message: Mm(e.messageText, `
`),
        category: aS(e),
        code: e.code
      } : {
        message: Mm(e.messageText, `
`),
        category: aS(e),
        code: e.code
      };
    }
    function EE(e) {
      return {
        line: e.line + 1,
        offset: e.character + 1
      };
    }
    function u8(e, t) {
      const n = e.file && EE(Za(e.file, e.start)), i = e.file && EE(Za(e.file, e.start + e.length)), a = Mm(e.messageText, `
`), { code: o, source: c } = e, _ = {
        start: n,
        end: i,
        text: a,
        code: o,
        category: aS(e),
        reportsUnnecessary: e.reportsUnnecessary,
        reportsDeprecated: e.reportsDeprecated,
        source: c,
        relatedInformation: or(e.relatedInformation, ZH)
      };
      return t ? {
        ..._,
        fileName: e.file && e.file.fileName
      } : _;
    }
    function UKe(e, t) {
      return e.every((n) => dc(n.span) < t);
    }
    var NPe = J_e;
    function vfe(e, t, n, i) {
      const a = t.hasLevel(3), o = JSON.stringify(e);
      return a && t.info(`${e.type}:${jv(e)}`), `Content-Length: ${1 + n(o, "utf8")}\r
\r
${o}${i}`;
    }
    var VKe = class {
      constructor(e) {
        this.operationHost = e;
      }
      startNew(e) {
        this.complete(), this.requestId = this.operationHost.getCurrentRequestId(), this.executeAction(e);
      }
      complete() {
        this.requestId !== void 0 && (this.operationHost.sendRequestCompletedEvent(this.requestId, this.performanceData), this.requestId = void 0), this.setTimerHandle(void 0), this.setImmediateId(void 0), this.performanceData = void 0;
      }
      immediate(e, t) {
        const n = this.requestId;
        E.assert(n === this.operationHost.getCurrentRequestId(), "immediate: incorrect request id"), this.setImmediateId(this.operationHost.getServerHost().setImmediate(() => {
          this.immediateId = void 0, this.operationHost.executeWithRequestId(n, () => this.executeAction(t), this.performanceData);
        }, e));
      }
      delay(e, t, n) {
        const i = this.requestId;
        E.assert(i === this.operationHost.getCurrentRequestId(), "delay: incorrect request id"), this.setTimerHandle(this.operationHost.getServerHost().setTimeout(() => {
          this.timerHandle = void 0, this.operationHost.executeWithRequestId(i, () => this.executeAction(n), this.performanceData);
        }, t, e));
      }
      executeAction(e) {
        var t, n, i, a, o, c;
        let _ = !1;
        try {
          this.operationHost.isCancellationRequested() ? (_ = !0, (t = sn) == null || t.instant(sn.Phase.Session, "stepCanceled", {
            seq: this.requestId,
            early: !0
          })) : ((n = sn) == null || n.push(sn.Phase.Session, "stepAction", { seq: this.requestId }), e(this), (i = sn) == null || i.pop());
        } catch (u) {
          (a = sn) == null || a.popAll(), _ = !0, u instanceof N4 ? (o = sn) == null || o.instant(sn.Phase.Session, "stepCanceled", { seq: this.requestId }) : ((c = sn) == null || c.instant(sn.Phase.Session, "stepError", {
            seq: this.requestId,
            message: u.message
          }), this.operationHost.logError(u, `delayed processing of request ${this.requestId}`));
        }
        this.performanceData = this.operationHost.getPerformanceData(), (_ || !this.hasPendingWork()) && this.complete();
      }
      setTimerHandle(e) {
        this.timerHandle !== void 0 && this.operationHost.getServerHost().clearTimeout(this.timerHandle), this.timerHandle = e;
      }
      setImmediateId(e) {
        this.immediateId !== void 0 && this.operationHost.getServerHost().clearImmediate(this.immediateId), this.immediateId = e;
      }
      hasPendingWork() {
        return !!this.timerHandle || !!this.immediateId;
      }
    };
    function bfe(e, t) {
      return {
        seq: 0,
        type: "event",
        event: e,
        body: t
      };
    }
    function qKe(e, t, n, i) {
      const a = wi(da(n) ? n : n.projects, (o) => i(o, e));
      return !da(n) && n.symLinkedProjects && n.symLinkedProjects.forEach((o, c) => {
        const _ = t(c);
        a.push(...ks(o, (u) => i(u, _)));
      }), Z1(a, S0);
    }
    function KH(e) {
      return KR(({ textSpan: t }) => t.start + 100003 * t.length, fq(e));
    }
    function GKe(e, t, n, i, a, o, c) {
      const _ = Sfe(e, t, n, IPe(t, n, !0), LPe, (g, h) => g.getLanguageService().findRenameLocations(h.fileName, h.pos, i, a, o), (g, h) => h(mP(g)));
      if (da(_)) return _;
      const u = [], d = KH(c);
      return _.forEach((g, h) => {
        for (const S of g) !d.has(S) && !e$(mP(S), h) && (u.push(S), d.add(S));
      }), u;
    }
    function IPe(e, t, n) {
      const i = e.getLanguageService().getDefinitionAtPosition(t.fileName, t.pos, !1, n), a = i && ul(i);
      return a && !a.isLocal ? {
        fileName: a.fileName,
        pos: a.textSpan.start
      } : void 0;
    }
    function HKe(e, t, n, i, a) {
      var o, c;
      const _ = Sfe(e, t, n, IPe(t, n, !1), LPe, (h, S) => (a.info(`Finding references to ${S.fileName} position ${S.pos} in project ${h.getProjectName()}`), h.getLanguageService().findReferences(S.fileName, S.pos)), (h, S) => {
        S(mP(h.definition));
        for (const T of h.references) S(mP(T));
      });
      if (da(_)) return _;
      const u = _.get(t);
      if (((c = (o = u?.[0]) == null ? void 0 : o.references[0]) == null ? void 0 : c.isDefinition) === void 0) _.forEach((h) => {
        for (const S of h) for (const T of S.references) delete T.isDefinition;
      });
      else {
        const h = KH(i);
        for (const T of u) for (const k of T.references) if (k.isDefinition) {
          h.add(k);
          break;
        }
        const S = /* @__PURE__ */ new Set();
        for (; ; ) {
          let T = !1;
          if (_.forEach((k, D) => {
            S.has(D) || D.getLanguageService().updateIsDefinitionOfReferencedSymbols(k, h) && (S.add(D), T = !0);
          }), !T) break;
        }
        _.forEach((T, k) => {
          if (!S.has(k))
            for (const D of T) for (const P of D.references) P.isDefinition = !1;
        });
      }
      const d = [], g = KH(i);
      return _.forEach((h, S) => {
        for (const T of h) {
          const k = e$(mP(T.definition), S), D = k === void 0 ? T.definition : {
            ...T.definition,
            textSpan: du(k.pos, T.definition.textSpan.length),
            fileName: k.fileName,
            contextSpan: XKe(T.definition, S)
          };
          let P = xr(d, (N) => _q(N.definition, D, i));
          P || (P = {
            definition: D,
            references: []
          }, d.push(P));
          for (const N of T.references) !g.has(N) && !e$(mP(N), S) && (g.add(N), P.references.push(N));
        }
      }), d.filter((h) => h.references.length !== 0);
    }
    function OPe(e, t, n) {
      for (const i of da(e) ? e : e.projects) n(i, t);
      !da(e) && e.symLinkedProjects && e.symLinkedProjects.forEach((i, a) => {
        for (const o of i) n(o, a);
      });
    }
    function Sfe(e, t, n, i, a, o, c) {
      const _ = /* @__PURE__ */ new Map(), u = c3();
      u.enqueue({
        project: t,
        location: n
      }), OPe(e, n.fileName, (D, P) => {
        const N = {
          fileName: P,
          pos: n.pos
        };
        u.enqueue({
          project: D,
          location: N
        });
      });
      const d = t.projectService, g = t.getCancellationToken(), h = s_(() => t.isSourceOfProjectReferenceRedirect(i.fileName) ? i : t.getLanguageService().getSourceMapper().tryGetGeneratedPosition(i)), S = s_(() => t.isSourceOfProjectReferenceRedirect(i.fileName) ? i : t.getLanguageService().getSourceMapper().tryGetSourcePosition(i)), T = /* @__PURE__ */ new Set();
      e: for (; !u.isEmpty(); ) {
        for (; !u.isEmpty(); ) {
          if (g.isCancellationRequested()) break e;
          const { project: D, location: P } = u.dequeue();
          if (_.has(D) || MPe(D, P) || (nd(D), !D.containsFile(ho(P.fileName)))) continue;
          const N = k(D, P);
          _.set(D, N ?? Nl), T.add($Ke(D));
        }
        i && (d.loadAncestorProjectTree(T), d.forEachEnabledProject((D) => {
          if (g.isCancellationRequested() || _.has(D)) return;
          const P = a(i, D, h, S);
          P && u.enqueue({
            project: D,
            location: P
          });
        }));
      }
      if (_.size === 1) return HR(_.values());
      return _;
      function k(D, P) {
        const N = o(D, P);
        if (!N || !c) return N;
        for (const M of N) c(M, (R) => {
          const G = d.getOriginalLocationEnsuringConfiguredProject(D, R);
          if (!G) return;
          const L = d.getScriptInfo(G.fileName);
          for (const H of L.containingProjects) !H.isOrphan() && !_.has(H) && u.enqueue({
            project: H,
            location: G
          });
          const z = d.getSymlinkedProjects(L);
          z && z.forEach((H, U) => {
            for (const pe of H) !pe.isOrphan() && !_.has(pe) && u.enqueue({
              project: pe,
              location: {
                fileName: U,
                pos: G.pos
              }
            });
          });
        });
        return N;
      }
    }
    function FPe(e, t) {
      if (t.containsFile(ho(e.fileName)) && !MPe(t, e)) return e;
    }
    function LPe(e, t, n, i) {
      const a = FPe(e, t);
      if (a) return a;
      const o = n();
      if (o && t.containsFile(ho(o.fileName))) return o;
      const c = i();
      return c && t.containsFile(ho(c.fileName)) ? c : void 0;
    }
    function MPe(e, t) {
      if (!t) return !1;
      const n = e.getLanguageService().getProgram();
      if (!n) return !1;
      const i = n.getSourceFile(t.fileName);
      return !!i && i.resolvedPath !== i.path && i.resolvedPath !== e.toPath(t.fileName);
    }
    function $Ke(e) {
      return $0(e) ? e.canonicalConfigFilePath : e.getProjectName();
    }
    function mP({ fileName: e, textSpan: t }) {
      return {
        fileName: e,
        pos: t.start
      };
    }
    function e$(e, t) {
      return qw(e, t.getSourceMapper(), (n) => t.projectService.fileExists(n));
    }
    function RPe(e, t) {
      return aL(e, t.getSourceMapper(), (n) => t.projectService.fileExists(n));
    }
    function XKe(e, t) {
      return dq(e, t.getSourceMapper(), (n) => t.projectService.fileExists(n));
    }
    var jPe = [
      "openExternalProject",
      "openExternalProjects",
      "closeExternalProject",
      "synchronizeProjectList",
      "emit-output",
      "compileOnSaveAffectedFileList",
      "compileOnSaveEmitFile",
      "compilerOptionsDiagnostics-full",
      "encodedSemanticClassifications-full",
      "semanticDiagnosticsSync",
      "suggestionDiagnosticsSync",
      "geterrForProject",
      "reload",
      "reloadProjects",
      "getCodeFixes",
      "getCodeFixes-full",
      "getCombinedCodeFix",
      "getCombinedCodeFix-full",
      "applyCodeActionCommand",
      "getSupportedCodeFixes",
      "getApplicableRefactors",
      "getMoveToRefactoringFileSuggestions",
      "getEditsForRefactor",
      "getEditsForRefactor-full",
      "organizeImports",
      "organizeImports-full",
      "getEditsForFileRename",
      "getEditsForFileRename-full",
      "prepareCallHierarchy",
      "provideCallHierarchyIncomingCalls",
      "provideCallHierarchyOutgoingCalls",
      "getPasteEdits",
      "copilotRelated"
    ], QKe = [
      ...jPe,
      "definition",
      "definition-full",
      "definitionAndBoundSpan",
      "definitionAndBoundSpan-full",
      "typeDefinition",
      "implementation",
      "implementation-full",
      "references",
      "references-full",
      "rename",
      "renameLocations-full",
      "rename-full",
      "quickinfo",
      "quickinfo-full",
      "completionInfo",
      "completions",
      "completions-full",
      "completionEntryDetails",
      "completionEntryDetails-full",
      "signatureHelp",
      "signatureHelp-full",
      "navto",
      "navto-full",
      "documentHighlights",
      "documentHighlights-full",
      "preparePasteEdits"
    ], BPe = class cQ {
      constructor(t) {
        this.changeSeq = 0, this.regionDiagLineCountThreshold = 500, this.handlers = new Map(Object.entries({
          status: () => {
            const i = { version: Qr };
            return this.requiredResponse(i);
          },
          openExternalProject: (i) => (this.projectService.openExternalProject(i.arguments, !0), this.requiredResponse(!0)),
          openExternalProjects: (i) => (this.projectService.openExternalProjects(i.arguments.projects), this.requiredResponse(!0)),
          closeExternalProject: (i) => (this.projectService.closeExternalProject(i.arguments.projectFileName, !0), this.requiredResponse(!0)),
          synchronizeProjectList: (i) => {
            const a = this.projectService.synchronizeProjectList(i.arguments.knownProjects, i.arguments.includeProjectReferenceRedirectInfo);
            if (!a.some((c) => c.projectErrors && c.projectErrors.length !== 0)) return this.requiredResponse(a);
            const o = or(a, (c) => !c.projectErrors || c.projectErrors.length === 0 ? c : {
              info: c.info,
              changes: c.changes,
              files: c.files,
              projectErrors: this.convertToDiagnosticsWithLinePosition(c.projectErrors, void 0)
            });
            return this.requiredResponse(o);
          },
          updateOpen: (i) => (this.changeSeq++, this.projectService.applyChangesInOpenFiles(i.arguments.openFiles && cx(i.arguments.openFiles, (a) => ({
            fileName: a.file,
            content: a.fileContent,
            scriptKind: a.scriptKindName,
            projectRootPath: a.projectRootPath
          })), i.arguments.changedFiles && cx(i.arguments.changedFiles, (a) => ({
            fileName: a.fileName,
            changes: Go(qR(a.textChanges), (o) => {
              const c = E.checkDefined(this.projectService.getScriptInfo(a.fileName)), _ = c.lineOffsetToPosition(o.start.line, o.start.offset), u = c.lineOffsetToPosition(o.end.line, o.end.offset);
              return _ >= 0 ? {
                span: {
                  start: _,
                  length: u - _
                },
                newText: o.newText
              } : void 0;
            })
          })), i.arguments.closedFiles), this.requiredResponse(!0)),
          applyChangedToOpenFiles: (i) => (this.changeSeq++, this.projectService.applyChangesInOpenFiles(i.arguments.openFiles, i.arguments.changedFiles && cx(i.arguments.changedFiles, (a) => ({
            fileName: a.fileName,
            changes: qR(a.changes)
          })), i.arguments.closedFiles), this.requiredResponse(!0)),
          exit: () => (this.exit(), this.notRequired(void 0)),
          definition: (i) => this.requiredResponse(this.getDefinition(i.arguments, !0)),
          "definition-full": (i) => this.requiredResponse(this.getDefinition(i.arguments, !1)),
          definitionAndBoundSpan: (i) => this.requiredResponse(this.getDefinitionAndBoundSpan(i.arguments, !0)),
          "definitionAndBoundSpan-full": (i) => this.requiredResponse(this.getDefinitionAndBoundSpan(i.arguments, !1)),
          findSourceDefinition: (i) => this.requiredResponse(this.findSourceDefinition(i.arguments)),
          "emit-output": (i) => this.requiredResponse(this.getEmitOutput(i.arguments)),
          typeDefinition: (i) => this.requiredResponse(this.getTypeDefinition(i.arguments)),
          implementation: (i) => this.requiredResponse(this.getImplementation(i.arguments, !0)),
          "implementation-full": (i) => this.requiredResponse(this.getImplementation(i.arguments, !1)),
          references: (i) => this.requiredResponse(this.getReferences(i.arguments, !0)),
          "references-full": (i) => this.requiredResponse(this.getReferences(i.arguments, !1)),
          rename: (i) => this.requiredResponse(this.getRenameLocations(i.arguments, !0)),
          "renameLocations-full": (i) => this.requiredResponse(this.getRenameLocations(i.arguments, !1)),
          "rename-full": (i) => this.requiredResponse(this.getRenameInfo(i.arguments)),
          open: (i) => (this.openClientFile(ho(i.arguments.file), i.arguments.fileContent, GH(i.arguments.scriptKindName), i.arguments.projectRootPath ? ho(i.arguments.projectRootPath) : void 0), this.notRequired(i)),
          quickinfo: (i) => this.requiredResponse(this.getQuickInfoWorker(i.arguments, !0)),
          "quickinfo-full": (i) => this.requiredResponse(this.getQuickInfoWorker(i.arguments, !1)),
          getOutliningSpans: (i) => this.requiredResponse(this.getOutliningSpans(i.arguments, !0)),
          outliningSpans: (i) => this.requiredResponse(this.getOutliningSpans(i.arguments, !1)),
          todoComments: (i) => this.requiredResponse(this.getTodoComments(i.arguments)),
          indentation: (i) => this.requiredResponse(this.getIndentation(i.arguments)),
          nameOrDottedNameSpan: (i) => this.requiredResponse(this.getNameOrDottedNameSpan(i.arguments)),
          breakpointStatement: (i) => this.requiredResponse(this.getBreakpointStatement(i.arguments)),
          braceCompletion: (i) => this.requiredResponse(this.isValidBraceCompletion(i.arguments)),
          docCommentTemplate: (i) => this.requiredResponse(this.getDocCommentTemplate(i.arguments)),
          getSpanOfEnclosingComment: (i) => this.requiredResponse(this.getSpanOfEnclosingComment(i.arguments)),
          fileReferences: (i) => this.requiredResponse(this.getFileReferences(i.arguments, !0)),
          "fileReferences-full": (i) => this.requiredResponse(this.getFileReferences(i.arguments, !1)),
          format: (i) => this.requiredResponse(this.getFormattingEditsForRange(i.arguments)),
          formatonkey: (i) => this.requiredResponse(this.getFormattingEditsAfterKeystroke(i.arguments)),
          "format-full": (i) => this.requiredResponse(this.getFormattingEditsForDocumentFull(i.arguments)),
          "formatonkey-full": (i) => this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(i.arguments)),
          "formatRange-full": (i) => this.requiredResponse(this.getFormattingEditsForRangeFull(i.arguments)),
          completionInfo: (i) => this.requiredResponse(this.getCompletions(i.arguments, "completionInfo")),
          completions: (i) => this.requiredResponse(this.getCompletions(i.arguments, "completions")),
          "completions-full": (i) => this.requiredResponse(this.getCompletions(i.arguments, "completions-full")),
          completionEntryDetails: (i) => this.requiredResponse(this.getCompletionEntryDetails(i.arguments, !1)),
          "completionEntryDetails-full": (i) => this.requiredResponse(this.getCompletionEntryDetails(i.arguments, !0)),
          compileOnSaveAffectedFileList: (i) => this.requiredResponse(this.getCompileOnSaveAffectedFileList(i.arguments)),
          compileOnSaveEmitFile: (i) => this.requiredResponse(this.emitFile(i.arguments)),
          signatureHelp: (i) => this.requiredResponse(this.getSignatureHelpItems(i.arguments, !0)),
          "signatureHelp-full": (i) => this.requiredResponse(this.getSignatureHelpItems(i.arguments, !1)),
          "compilerOptionsDiagnostics-full": (i) => this.requiredResponse(this.getCompilerOptionsDiagnostics(i.arguments)),
          "encodedSyntacticClassifications-full": (i) => this.requiredResponse(this.getEncodedSyntacticClassifications(i.arguments)),
          "encodedSemanticClassifications-full": (i) => this.requiredResponse(this.getEncodedSemanticClassifications(i.arguments)),
          cleanup: () => (this.cleanup(), this.requiredResponse(!0)),
          semanticDiagnosticsSync: (i) => this.requiredResponse(this.getSemanticDiagnosticsSync(i.arguments)),
          syntacticDiagnosticsSync: (i) => this.requiredResponse(this.getSyntacticDiagnosticsSync(i.arguments)),
          suggestionDiagnosticsSync: (i) => this.requiredResponse(this.getSuggestionDiagnosticsSync(i.arguments)),
          geterr: (i) => (this.errorCheck.startNew((a) => this.getDiagnostics(a, i.arguments.delay, i.arguments.files)), this.notRequired(void 0)),
          geterrForProject: (i) => (this.errorCheck.startNew((a) => this.getDiagnosticsForProject(a, i.arguments.delay, i.arguments.file)), this.notRequired(void 0)),
          change: (i) => (this.change(i.arguments), this.notRequired(i)),
          configure: (i) => (this.projectService.setHostConfiguration(i.arguments), this.notRequired(i)),
          reload: (i) => (this.reload(i.arguments), this.requiredResponse({ reloadFinished: !0 })),
          saveto: (i) => {
            const a = i.arguments;
            return this.saveToTmp(a.file, a.tmpfile), this.notRequired(i);
          },
          close: (i) => {
            const a = i.arguments;
            return this.closeClientFile(a.file), this.notRequired(i);
          },
          navto: (i) => this.requiredResponse(this.getNavigateToItems(i.arguments, !0)),
          "navto-full": (i) => this.requiredResponse(this.getNavigateToItems(i.arguments, !1)),
          brace: (i) => this.requiredResponse(this.getBraceMatching(i.arguments, !0)),
          "brace-full": (i) => this.requiredResponse(this.getBraceMatching(i.arguments, !1)),
          navbar: (i) => this.requiredResponse(this.getNavigationBarItems(i.arguments, !0)),
          "navbar-full": (i) => this.requiredResponse(this.getNavigationBarItems(i.arguments, !1)),
          navtree: (i) => this.requiredResponse(this.getNavigationTree(i.arguments, !0)),
          "navtree-full": (i) => this.requiredResponse(this.getNavigationTree(i.arguments, !1)),
          documentHighlights: (i) => this.requiredResponse(this.getDocumentHighlights(i.arguments, !0)),
          "documentHighlights-full": (i) => this.requiredResponse(this.getDocumentHighlights(i.arguments, !1)),
          compilerOptionsForInferredProjects: (i) => (this.setCompilerOptionsForInferredProjects(i.arguments), this.requiredResponse(!0)),
          projectInfo: (i) => this.requiredResponse(this.getProjectInfo(i.arguments)),
          reloadProjects: (i) => (this.projectService.reloadProjects(), this.notRequired(i)),
          jsxClosingTag: (i) => this.requiredResponse(this.getJsxClosingTag(i.arguments)),
          linkedEditingRange: (i) => this.requiredResponse(this.getLinkedEditingRange(i.arguments)),
          getCodeFixes: (i) => this.requiredResponse(this.getCodeFixes(i.arguments, !0)),
          "getCodeFixes-full": (i) => this.requiredResponse(this.getCodeFixes(i.arguments, !1)),
          getCombinedCodeFix: (i) => this.requiredResponse(this.getCombinedCodeFix(i.arguments, !0)),
          "getCombinedCodeFix-full": (i) => this.requiredResponse(this.getCombinedCodeFix(i.arguments, !1)),
          applyCodeActionCommand: (i) => this.requiredResponse(this.applyCodeActionCommand(i.arguments)),
          getSupportedCodeFixes: (i) => this.requiredResponse(this.getSupportedCodeFixes(i.arguments)),
          getApplicableRefactors: (i) => this.requiredResponse(this.getApplicableRefactors(i.arguments)),
          getEditsForRefactor: (i) => this.requiredResponse(this.getEditsForRefactor(i.arguments, !0)),
          getMoveToRefactoringFileSuggestions: (i) => this.requiredResponse(this.getMoveToRefactoringFileSuggestions(i.arguments)),
          preparePasteEdits: (i) => this.requiredResponse(this.preparePasteEdits(i.arguments)),
          getPasteEdits: (i) => this.requiredResponse(this.getPasteEdits(i.arguments)),
          "getEditsForRefactor-full": (i) => this.requiredResponse(this.getEditsForRefactor(i.arguments, !1)),
          organizeImports: (i) => this.requiredResponse(this.organizeImports(i.arguments, !0)),
          "organizeImports-full": (i) => this.requiredResponse(this.organizeImports(i.arguments, !1)),
          getEditsForFileRename: (i) => this.requiredResponse(this.getEditsForFileRename(i.arguments, !0)),
          "getEditsForFileRename-full": (i) => this.requiredResponse(this.getEditsForFileRename(i.arguments, !1)),
          configurePlugin: (i) => (this.configurePlugin(i.arguments), this.notRequired(i)),
          selectionRange: (i) => this.requiredResponse(this.getSmartSelectionRange(i.arguments, !0)),
          "selectionRange-full": (i) => this.requiredResponse(this.getSmartSelectionRange(i.arguments, !1)),
          prepareCallHierarchy: (i) => this.requiredResponse(this.prepareCallHierarchy(i.arguments)),
          provideCallHierarchyIncomingCalls: (i) => this.requiredResponse(this.provideCallHierarchyIncomingCalls(i.arguments)),
          provideCallHierarchyOutgoingCalls: (i) => this.requiredResponse(this.provideCallHierarchyOutgoingCalls(i.arguments)),
          toggleLineComment: (i) => this.requiredResponse(this.toggleLineComment(i.arguments, !0)),
          "toggleLineComment-full": (i) => this.requiredResponse(this.toggleLineComment(i.arguments, !1)),
          toggleMultilineComment: (i) => this.requiredResponse(this.toggleMultilineComment(i.arguments, !0)),
          "toggleMultilineComment-full": (i) => this.requiredResponse(this.toggleMultilineComment(i.arguments, !1)),
          commentSelection: (i) => this.requiredResponse(this.commentSelection(i.arguments, !0)),
          "commentSelection-full": (i) => this.requiredResponse(this.commentSelection(i.arguments, !1)),
          uncommentSelection: (i) => this.requiredResponse(this.uncommentSelection(i.arguments, !0)),
          "uncommentSelection-full": (i) => this.requiredResponse(this.uncommentSelection(i.arguments, !1)),
          provideInlayHints: (i) => this.requiredResponse(this.provideInlayHints(i.arguments)),
          mapCode: (i) => this.requiredResponse(this.mapCode(i.arguments)),
          copilotRelated: () => this.requiredResponse(this.getCopilotRelatedInfo())
        })), this.host = t.host, this.cancellationToken = t.cancellationToken, this.typingsInstaller = t.typingsInstaller || pM, this.byteLength = t.byteLength, this.hrtime = t.hrtime, this.logger = t.logger, this.canUseEvents = t.canUseEvents, this.suppressDiagnosticEvents = t.suppressDiagnosticEvents, this.noGetErrOnBackgroundUpdate = t.noGetErrOnBackgroundUpdate;
        const { throttleWaitMilliseconds: n } = t;
        switch (this.eventHandler = this.canUseEvents ? t.eventHandler || ((i) => this.defaultEventHandler(i)) : void 0, this.errorCheck = new VKe({
          executeWithRequestId: (i, a, o) => this.executeWithRequestId(i, a, o),
          getCurrentRequestId: () => this.currentRequestId,
          getPerformanceData: () => this.performanceData,
          getServerHost: () => this.host,
          logError: (i, a) => this.logError(i, a),
          sendRequestCompletedEvent: (i, a) => this.sendRequestCompletedEvent(i, a),
          isCancellationRequested: () => this.cancellationToken.isCancellationRequested()
        }), this.projectService = new dfe({
          host: this.host,
          logger: this.logger,
          cancellationToken: this.cancellationToken,
          useSingleInferredProject: t.useSingleInferredProject,
          useInferredProjectPerProjectRoot: t.useInferredProjectPerProjectRoot,
          typingsInstaller: this.typingsInstaller,
          throttleWaitMilliseconds: n,
          eventHandler: this.eventHandler,
          suppressDiagnosticEvents: this.suppressDiagnosticEvents,
          globalPlugins: t.globalPlugins,
          pluginProbeLocations: t.pluginProbeLocations,
          allowLocalPluginLoads: t.allowLocalPluginLoads,
          typesMapLocation: t.typesMapLocation,
          serverMode: t.serverMode,
          session: this,
          canUseWatchEvents: t.canUseWatchEvents,
          incrementalVerifier: t.incrementalVerifier
        }), this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)), this.gcTimer = new j_e(this.host, 7e3, this.logger), this.projectService.serverMode) {
          case 0:
            break;
          case 1:
            jPe.forEach((i) => this.handlers.set(i, (a) => {
              throw new Error(`Request: ${a.command} not allowed in LanguageServiceMode.PartialSemantic`);
            }));
            break;
          case 2:
            QKe.forEach((i) => this.handlers.set(i, (a) => {
              throw new Error(`Request: ${a.command} not allowed in LanguageServiceMode.Syntactic`);
            }));
            break;
          default:
            E.assertNever(this.projectService.serverMode);
        }
      }
      sendRequestCompletedEvent(t, n) {
        this.event({
          request_seq: t,
          performanceData: n && JPe(n)
        }, "requestCompleted");
      }
      addPerformanceData(t, n) {
        this.performanceData || (this.performanceData = {}), this.performanceData[t] = (this.performanceData[t] ?? 0) + n;
      }
      addDiagnosticsPerformanceData(t, n, i) {
        var a, o;
        this.performanceData || (this.performanceData = {});
        let c = (a = this.performanceData.diagnosticsDuration) == null ? void 0 : a.get(t);
        c || ((o = this.performanceData).diagnosticsDuration ?? (o.diagnosticsDuration = /* @__PURE__ */ new Map())).set(t, c = {}), c[n] = i;
      }
      performanceEventHandler(t) {
        switch (t.kind) {
          case "UpdateGraph":
            this.addPerformanceData("updateGraphDurationMs", t.durationMs);
            break;
          case "CreatePackageJsonAutoImportProvider":
            this.addPerformanceData("createAutoImportProviderProgramDurationMs", t.durationMs);
            break;
        }
      }
      defaultEventHandler(t) {
        switch (t.eventName) {
          case _M:
            this.projectsUpdatedInBackgroundEvent(t.data.openFiles);
            break;
          case MH:
            this.event({
              projectName: t.data.project.getProjectName(),
              reason: t.data.reason
            }, t.eventName);
            break;
          case RH:
            this.event({ projectName: t.data.project.getProjectName() }, t.eventName);
            break;
          case jH:
          case WH:
          case UH:
          case VH:
            this.event(t.data, t.eventName);
            break;
          case BH:
            this.event({
              triggerFile: t.data.triggerFile,
              configFile: t.data.configFileName,
              diagnostics: or(t.data.diagnostics, (n) => u8(n, !0))
            }, t.eventName);
            break;
          case JH:
            this.event({
              projectName: t.data.project.getProjectName(),
              languageServiceEnabled: t.data.languageServiceEnabled
            }, t.eventName);
            break;
          case zH:
            this.event({
              telemetryEventName: t.eventName,
              payload: t.data
            }, "telemetry");
            break;
        }
      }
      projectsUpdatedInBackgroundEvent(t) {
        this.projectService.logger.info(`got projects updated in background ${t}`), t.length && (!this.suppressDiagnosticEvents && !this.noGetErrOnBackgroundUpdate && (this.projectService.logger.info(`Queueing diagnostics update for ${t}`), this.errorCheck.startNew((n) => this.updateErrorCheck(n, t, 100, !0))), this.event({ openFiles: t }, _M));
      }
      logError(t, n) {
        this.logErrorWorker(t, n);
      }
      logErrorWorker(t, n, i) {
        let a = "Exception on executing command " + n;
        if (t.message && (a += `:
` + jw(t.message), t.stack && (a += `
` + jw(t.stack))), this.logger.hasLevel(3)) {
          if (i) try {
            const { file: o, project: c } = this.getFileAndProject(i), _ = c.getScriptInfoForNormalizedPath(o);
            if (_) {
              const u = Fk(_.getSnapshot());
              a += `

File text of ${i.file}:${jw(u)}
`;
            }
          } catch {
          }
          if (t.ProgramFiles) {
            a += `

Program files: ${JSON.stringify(t.ProgramFiles)}
`, a += `

Projects::
`;
            let o = 0;
            const c = (_) => {
              a += `
Project '${_.projectName}' (${dP[_.projectKind]}) ${o}
`, a += _.filesToString(!0), a += `
-----------------------------------------------
`, o++;
            };
            this.projectService.externalProjects.forEach(c), this.projectService.configuredProjects.forEach(c), this.projectService.inferredProjects.forEach(c);
          }
        }
        this.logger.msg(a, "Err");
      }
      send(t) {
        if (t.type === "event" && !this.canUseEvents) {
          this.logger.hasLevel(3) && this.logger.info(`Session does not support events: ignored event: ${jv(t)}`);
          return;
        }
        this.writeMessage(t);
      }
      writeMessage(t) {
        const n = vfe(t, this.logger, this.byteLength, this.host.newLine);
        this.host.write(n);
      }
      event(t, n) {
        this.send(bfe(n, t));
      }
      doOutput(t, n, i, a, o, c) {
        const _ = {
          seq: 0,
          type: "response",
          command: n,
          request_seq: i,
          success: a,
          performanceData: o && JPe(o)
        };
        if (a) {
          let u;
          if (da(t))
            _.body = t, u = t.metadata, delete t.metadata;
          else if (typeof t == "object") if (t.metadata) {
            const { metadata: d, ...g } = t;
            _.body = g, u = d;
          } else _.body = t;
          else _.body = t;
          u && (_.metadata = u);
        } else E.assert(t === void 0);
        c && (_.message = c), this.send(_);
      }
      semanticCheck(t, n) {
        var i, a;
        const o = ko();
        (i = sn) == null || i.push(sn.Phase.Session, "semanticCheck", {
          file: t,
          configFilePath: n.canonicalConfigFilePath
        });
        const c = PPe(n, t) ? Nl : n.getLanguageService().getSemanticDiagnostics(t).filter((_) => !!_.file);
        this.sendDiagnosticsEvent(t, n, c, "semanticDiag", o), (a = sn) == null || a.pop();
      }
      syntacticCheck(t, n) {
        var i, a;
        const o = ko();
        (i = sn) == null || i.push(sn.Phase.Session, "syntacticCheck", {
          file: t,
          configFilePath: n.canonicalConfigFilePath
        }), this.sendDiagnosticsEvent(t, n, n.getLanguageService().getSyntacticDiagnostics(t), "syntaxDiag", o), (a = sn) == null || a.pop();
      }
      suggestionCheck(t, n) {
        var i, a;
        const o = ko();
        (i = sn) == null || i.push(sn.Phase.Session, "suggestionCheck", {
          file: t,
          configFilePath: n.canonicalConfigFilePath
        }), this.sendDiagnosticsEvent(t, n, n.getLanguageService().getSuggestionDiagnostics(t), "suggestionDiag", o), (a = sn) == null || a.pop();
      }
      regionSemanticCheck(t, n, i) {
        var a, o, c;
        const _ = ko();
        (a = sn) == null || a.push(sn.Phase.Session, "regionSemanticCheck", {
          file: t,
          configFilePath: n.canonicalConfigFilePath
        });
        let u;
        if (!this.shouldDoRegionCheck(t) || !(u = n.getLanguageService().getRegionSemanticDiagnostics(t, i))) {
          (o = sn) == null || o.pop();
          return;
        }
        this.sendDiagnosticsEvent(t, n, u.diagnostics, "regionSemanticDiag", _, u.spans), (c = sn) == null || c.pop();
      }
      shouldDoRegionCheck(t) {
        var n;
        const i = (n = this.projectService.getScriptInfoForNormalizedPath(t)) == null ? void 0 : n.textStorage.getLineInfo().getLineCount();
        return !!(i && i >= this.regionDiagLineCountThreshold);
      }
      sendDiagnosticsEvent(t, n, i, a, o, c) {
        try {
          const _ = E.checkDefined(n.getScriptInfo(t)), u = ko() - o, d = {
            file: t,
            diagnostics: i.map((g) => APe(t, n, g)),
            spans: c?.map((g) => zm(g, _))
          };
          this.event(d, a), this.addDiagnosticsPerformanceData(t, a, u);
        } catch (_) {
          this.logError(_, a);
        }
      }
      updateErrorCheck(t, n, i, a = !0) {
        if (n.length === 0) return;
        E.assert(!this.suppressDiagnosticEvents);
        const o = this.changeSeq, c = Math.min(i, 200);
        let _ = 0;
        const u = () => {
          if (_++, n.length > _) return t.delay("checkOne", c, g);
        }, d = (h, S) => {
          if (this.semanticCheck(h, S), this.changeSeq === o) {
            if (this.getPreferences(h).disableSuggestions) return u();
            t.immediate("suggestionCheck", () => {
              this.suggestionCheck(h, S), u();
            });
          }
        }, g = () => {
          if (this.changeSeq !== o) return;
          let h, S = n[_];
          if (Ta(S) ? S = this.toPendingErrorCheck(S) : "ranges" in S && (h = S.ranges, S = this.toPendingErrorCheck(S.file)), !S) return u();
          const { fileName: T, project: k } = S;
          if (nd(k), !!k.containsFile(T, a) && (this.syntacticCheck(T, k), this.changeSeq === o)) {
            if (k.projectService.serverMode !== 0) return u();
            if (h) return t.immediate("regionSemanticCheck", () => {
              const D = this.projectService.getScriptInfoForNormalizedPath(T);
              D && this.regionSemanticCheck(T, k, h.map((P) => this.getRange({
                file: T,
                ...P
              }, D))), this.changeSeq === o && t.immediate("semanticCheck", () => d(T, k));
            });
            t.immediate("semanticCheck", () => d(T, k));
          }
        };
        n.length > _ && this.changeSeq === o && t.delay("checkOne", i, g);
      }
      cleanProjects(t, n) {
        if (n) {
          this.logger.info(`cleaning ${t}`);
          for (const i of n)
            i.getLanguageService(!1).cleanupSemanticCache(), i.cleanupProgram();
        }
      }
      cleanup() {
        this.cleanProjects("inferred projects", this.projectService.inferredProjects), this.cleanProjects("configured projects", ma(this.projectService.configuredProjects.values())), this.cleanProjects("external projects", this.projectService.externalProjects), this.host.gc && (this.logger.info("host.gc()"), this.host.gc());
      }
      getEncodedSyntacticClassifications(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t);
        return i.getEncodedSyntacticClassifications(n, t);
      }
      getEncodedSemanticClassifications(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = t.format === "2020" ? "2020" : "original";
        return i.getLanguageService().getEncodedSemanticClassifications(n, t, a);
      }
      getProject(t) {
        return t === void 0 ? void 0 : this.projectService.findProject(t);
      }
      getConfigFileAndProject(t) {
        const n = this.getProject(t.projectFileName), i = ho(t.file);
        return {
          configFile: n && n.hasConfigFile(i) ? i : void 0,
          project: n
        };
      }
      getConfigFileDiagnostics(t, n, i) {
        const a = dn(zi(n.getAllProjectErrors(), n.getLanguageService().getCompilerOptionsDiagnostics()), (o) => !!o.file && o.file.fileName === t);
        return i ? this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(a) : or(a, (o) => u8(o, !1));
      }
      convertToDiagnosticsWithLinePositionFromDiagnosticFile(t) {
        return t.map((n) => ({
          message: Mm(n.messageText, this.host.newLine),
          start: n.start,
          length: n.length,
          category: aS(n),
          code: n.code,
          source: n.source,
          startLocation: n.file && EE(Za(n.file, n.start)),
          endLocation: n.file && EE(Za(n.file, n.start + n.length)),
          reportsUnnecessary: n.reportsUnnecessary,
          reportsDeprecated: n.reportsDeprecated,
          relatedInformation: or(n.relatedInformation, ZH)
        }));
      }
      getCompilerOptionsDiagnostics(t) {
        const n = this.getProject(t.projectFileName);
        return this.convertToDiagnosticsWithLinePosition(dn(n.getLanguageService().getCompilerOptionsDiagnostics(), (i) => !i.file), void 0);
      }
      convertToDiagnosticsWithLinePosition(t, n) {
        return t.map((i) => ({
          message: Mm(i.messageText, this.host.newLine),
          start: i.start,
          length: i.length,
          category: aS(i),
          code: i.code,
          source: i.source,
          startLocation: n && n.positionToLineOffset(i.start),
          endLocation: n && n.positionToLineOffset(i.start + i.length),
          reportsUnnecessary: i.reportsUnnecessary,
          reportsDeprecated: i.reportsDeprecated,
          relatedInformation: or(i.relatedInformation, ZH)
        }));
      }
      getDiagnosticsWorker(t, n, i, a) {
        const { project: o, file: c } = this.getFileAndProject(t);
        if (n && PPe(o, c)) return Nl;
        const _ = o.getScriptInfoForNormalizedPath(c), u = i(o, c);
        return a ? this.convertToDiagnosticsWithLinePosition(u, _) : u.map((d) => APe(c, o, d));
      }
      getDefinition(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.getPositionInFile(t, i), c = this.mapDefinitionInfoLocations(a.getLanguageService().getDefinitionAtPosition(i, o) || Nl, a);
        return n ? this.mapDefinitionInfo(c, a) : c.map(cQ.mapToOriginalLocation);
      }
      mapDefinitionInfoLocations(t, n) {
        return t.map((i) => {
          const a = RPe(i, n);
          return a ? {
            ...a,
            containerKind: i.containerKind,
            containerName: i.containerName,
            kind: i.kind,
            name: i.name,
            failedAliasResolution: i.failedAliasResolution,
            ...i.unverified && { unverified: i.unverified }
          } : i;
        });
      }
      getDefinitionAndBoundSpan(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.getPositionInFile(t, i), c = E.checkDefined(a.getScriptInfo(i)), _ = a.getLanguageService().getDefinitionAndBoundSpan(i, o);
        if (!_ || !_.definitions) return {
          definitions: Nl,
          textSpan: void 0
        };
        const u = this.mapDefinitionInfoLocations(_.definitions, a), { textSpan: d } = _;
        return n ? {
          definitions: this.mapDefinitionInfo(u, a),
          textSpan: zm(d, c)
        } : {
          definitions: u.map(cQ.mapToOriginalLocation),
          textSpan: d
        };
      }
      findSourceDefinition(t) {
        var n;
        const { file: i, project: a } = this.getFileAndProject(t), o = this.getPositionInFile(t, i), c = a.getLanguageService().getDefinitionAtPosition(i, o);
        let _ = this.mapDefinitionInfoLocations(c || Nl, a).slice();
        if (this.projectService.serverMode === 0 && (!_t(_, (S) => ho(S.fileName) !== i && !S.isAmbient) || _t(_, (S) => !!S.failedAliasResolution))) {
          const S = KR((P) => P.textSpan.start, fq(this.host.useCaseSensitiveFileNames));
          _?.forEach((P) => S.add(P));
          const T = a.getNoDtsResolutionProject(i), k = T.getLanguageService(), D = (n = k.getDefinitionAtPosition(i, o, !0, !1)) == null ? void 0 : n.filter((P) => ho(P.fileName) !== i);
          if (_t(D)) for (const P of D) {
            if (P.unverified) {
              const N = g(P, a.getLanguageService().getProgram(), k.getProgram());
              if (_t(N)) {
                for (const M of N) S.add(M);
                continue;
              }
            }
            S.add(P);
          }
          else {
            const P = _.filter((N) => ho(N.fileName) !== i && N.isAmbient);
            for (const N of _t(P) ? P : d()) {
              const M = u(N.fileName, i, T);
              if (!M) continue;
              const R = this.projectService.getOrCreateScriptInfoNotOpenedByClient(M, T.currentDirectory, T.directoryStructureHost, !1);
              if (!R) continue;
              T.containsScriptInfo(R) || (T.addRoot(R), T.updateGraph());
              const G = k.getProgram(), L = E.checkDefined(G.getSourceFile(M));
              for (const z of h(N.name, L, G)) S.add(z);
            }
          }
          _ = ma(S.values());
        }
        return _ = _.filter((S) => !S.isAmbient && !S.failedAliasResolution), this.mapDefinitionInfo(_, a);
        function u(S, T, k) {
          var D, P, N;
          const M = IO(S);
          if (M && S.lastIndexOf(ah) === M.topLevelNodeModulesIndex) {
            const R = S.substring(0, M.packageRootIndex), G = (D = a.getModuleResolutionCache()) == null ? void 0 : D.getPackageJsonInfoCache(), L = a.getCompilationSettings(), z = yw(ca(R, a.getCurrentDirectory()), hw(G, a, L));
            if (!z) return;
            const H = FW(z, { moduleResolution: 2 }, a, a.getModuleResolutionCache()), U = vw(IN(S.substring(M.topLevelPackageNameIndex + 1, M.packageRootIndex))), pe = a.toPath(S);
            if (H && _t(H, (ie) => a.toPath(ie) === pe)) return (P = k.resolutionCache.resolveSingleModuleNameWithoutWatching(U, T).resolvedModule) == null ? void 0 : P.resolvedFileName;
            {
              const ie = `${U}/${__(S.substring(M.packageRootIndex + 1))}`;
              return (N = k.resolutionCache.resolveSingleModuleNameWithoutWatching(ie, T).resolvedModule) == null ? void 0 : N.resolvedFileName;
            }
          }
        }
        function d() {
          const S = a.getLanguageService(), T = G_(S.getProgram().getSourceFile(i), o);
          return (Xs(T) || Fe(T)) && jo(T.parent) && Cee(T, (k) => {
            var D;
            if (k === T) return;
            const P = (D = S.getDefinitionAtPosition(i, k.getStart(), !0, !1)) == null ? void 0 : D.filter((N) => ho(N.fileName) !== i && N.isAmbient).map((N) => ({
              fileName: N.fileName,
              name: Xp(T)
            }));
            if (_t(P)) return P;
          }) || Nl;
        }
        function g(S, T, k) {
          var D;
          const P = k.getSourceFile(S.fileName);
          if (!P) return;
          const N = G_(T.getSourceFile(i), o), M = T.getTypeChecker().getSymbolAtLocation(N), R = M && Ho(M, 277);
          if (R)
            return h(((D = R.propertyName) == null ? void 0 : D.text) || R.name.text, P, k);
        }
        function h(S, T, k) {
          return Rn(Jo.Core.getTopMostDeclarationNamesInFile(S, T), (D) => {
            const P = k.getTypeChecker().getSymbolAtLocation(D), N = dD(D);
            if (P && N) return TE.createDefinitionInfo(N, k.getTypeChecker(), P, N, !0);
          });
        }
      }
      getEmitOutput(t) {
        const { file: n, project: i } = this.getFileAndProject(t);
        if (!i.shouldEmitFile(i.getScriptInfo(n))) return {
          emitSkipped: !0,
          outputFiles: [],
          diagnostics: []
        };
        const a = i.getLanguageService().getEmitOutput(n);
        return t.richResponse ? {
          ...a,
          diagnostics: t.includeLinePosition ? this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(a.diagnostics) : a.diagnostics.map((o) => u8(o, !0))
        } : a;
      }
      mapJSDocTagInfo(t, n, i) {
        return t ? t.map((a) => {
          var o;
          return {
            ...a,
            text: i ? this.mapDisplayParts(a.text, n) : (o = a.text) == null ? void 0 : o.map((c) => c.text).join("")
          };
        }) : [];
      }
      mapDisplayParts(t, n) {
        return t ? t.map((i) => i.kind !== "linkName" ? i : {
          ...i,
          target: this.toFileSpan(i.target.fileName, i.target.textSpan, n)
        }) : [];
      }
      mapSignatureHelpItems(t, n, i) {
        return t.map((a) => ({
          ...a,
          documentation: this.mapDisplayParts(a.documentation, n),
          parameters: a.parameters.map((o) => ({
            ...o,
            documentation: this.mapDisplayParts(o.documentation, n)
          })),
          tags: this.mapJSDocTagInfo(a.tags, n, i)
        }));
      }
      mapDefinitionInfo(t, n) {
        return t.map((i) => ({
          ...this.toFileSpanWithContext(i.fileName, i.textSpan, i.contextSpan, n),
          ...i.unverified && { unverified: i.unverified }
        }));
      }
      static mapToOriginalLocation(t) {
        return t.originalFileName ? (E.assert(t.originalTextSpan !== void 0, "originalTextSpan should be present if originalFileName is"), {
          ...t,
          fileName: t.originalFileName,
          textSpan: t.originalTextSpan,
          targetFileName: t.fileName,
          targetTextSpan: t.textSpan,
          contextSpan: t.originalContextSpan,
          targetContextSpan: t.contextSpan
        }) : t;
      }
      toFileSpan(t, n, i) {
        const a = i.getLanguageService(), o = a.toLineColumnOffset(t, n.start), c = a.toLineColumnOffset(t, dc(n));
        return {
          file: t,
          start: {
            line: o.line + 1,
            offset: o.character + 1
          },
          end: {
            line: c.line + 1,
            offset: c.character + 1
          }
        };
      }
      toFileSpanWithContext(t, n, i, a) {
        const o = this.toFileSpan(t, n, a), c = i && this.toFileSpan(t, i, a);
        return c ? {
          ...o,
          contextStart: c.start,
          contextEnd: c.end
        } : o;
      }
      getTypeDefinition(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = this.getPositionInFile(t, n), o = this.mapDefinitionInfoLocations(i.getLanguageService().getTypeDefinitionAtPosition(n, a) || Nl, i);
        return this.mapDefinitionInfo(o, i);
      }
      mapImplementationLocations(t, n) {
        return t.map((i) => {
          const a = RPe(i, n);
          return a ? {
            ...a,
            kind: i.kind,
            displayParts: i.displayParts
          } : i;
        });
      }
      getImplementation(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.getPositionInFile(t, i), c = this.mapImplementationLocations(a.getLanguageService().getImplementationAtPosition(i, o) || Nl, a);
        return n ? c.map(({ fileName: _, textSpan: u, contextSpan: d }) => this.toFileSpanWithContext(_, u, d, a)) : c.map(cQ.mapToOriginalLocation);
      }
      getSyntacticDiagnosticsSync(t) {
        const { configFile: n } = this.getConfigFileAndProject(t);
        return n ? Nl : this.getDiagnosticsWorker(t, !1, (i, a) => i.getLanguageService().getSyntacticDiagnostics(a), !!t.includeLinePosition);
      }
      getSemanticDiagnosticsSync(t) {
        const { configFile: n, project: i } = this.getConfigFileAndProject(t);
        return n ? this.getConfigFileDiagnostics(n, i, !!t.includeLinePosition) : this.getDiagnosticsWorker(t, !0, (a, o) => a.getLanguageService().getSemanticDiagnostics(o).filter((c) => !!c.file), !!t.includeLinePosition);
      }
      getSuggestionDiagnosticsSync(t) {
        const { configFile: n } = this.getConfigFileAndProject(t);
        return n ? Nl : this.getDiagnosticsWorker(t, !0, (i, a) => i.getLanguageService().getSuggestionDiagnostics(a), !!t.includeLinePosition);
      }
      getJsxClosingTag(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n), o = i.getJsxClosingTagAtPosition(n, a);
        return o === void 0 ? void 0 : {
          newText: o.newText,
          caretOffset: 0
        };
      }
      getLinkedEditingRange(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n), o = i.getLinkedEditingRangeAtPosition(n, a), c = this.projectService.getScriptInfoForNormalizedPath(n);
        if (!(c === void 0 || o === void 0))
          return ZKe(o, c);
      }
      getDocumentHighlights(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.getPositionInFile(t, i), c = a.getLanguageService().getDocumentHighlights(i, o, t.filesToSearch);
        return c ? n ? c.map(({ fileName: _, highlightSpans: u }) => {
          const d = a.getScriptInfo(_);
          return {
            file: _,
            highlightSpans: u.map(({ textSpan: g, kind: h, contextSpan: S }) => ({
              ...Tfe(g, S, d),
              kind: h
            }))
          };
        }) : c : Nl;
      }
      provideInlayHints(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = this.projectService.getScriptInfoForNormalizedPath(n);
        return i.getLanguageService().provideInlayHints(n, t, this.getPreferences(n)).map((o) => {
          const { position: c, displayParts: _ } = o;
          return {
            ...o,
            position: a.positionToLineOffset(c),
            displayParts: _?.map(({ text: u, span: d, file: g }) => {
              if (d) {
                E.assertIsDefined(g, "Target file should be defined together with its span.");
                const h = this.projectService.getScriptInfo(g);
                return {
                  text: u,
                  span: {
                    start: h.positionToLineOffset(d.start),
                    end: h.positionToLineOffset(d.start + d.length),
                    file: g
                  }
                };
              } else return { text: u };
            })
          };
        });
      }
      mapCode(t) {
        var n;
        const i = this.getHostFormatOptions(), a = this.getHostPreferences(), { file: o, languageService: c } = this.getFileAndLanguageServiceForSyntacticOperation(t), _ = this.projectService.getScriptInfoForNormalizedPath(o), u = (n = t.mapping.focusLocations) == null ? void 0 : n.map((g) => g.map((h) => {
          const S = _.lineOffsetToPosition(h.start.line, h.start.offset);
          return {
            start: S,
            length: _.lineOffsetToPosition(h.end.line, h.end.offset) - S
          };
        })), d = c.mapCode(o, t.mapping.contents, u, i, a);
        return this.mapTextChangesToCodeEdits(d);
      }
      getCopilotRelatedInfo() {
        return { relatedFiles: [] };
      }
      setCompilerOptionsForInferredProjects(t) {
        this.projectService.setCompilerOptionsForInferredProjects(t.options, t.projectRootPath);
      }
      getProjectInfo(t) {
        return this.getProjectInfoWorker(t.file, t.projectFileName, t.needFileNameList, t.needDefaultConfiguredProjectInfo, !1);
      }
      getProjectInfoWorker(t, n, i, a, o) {
        const { project: c } = this.getFileAndProjectWorker(t, n);
        return nd(c), {
          configFileName: c.getProjectName(),
          languageServiceDisabled: !c.languageServiceEnabled,
          fileNames: i ? c.getFileNames(!1, o) : void 0,
          configuredProjectInfo: a ? this.getDefaultConfiguredProjectInfo(t) : void 0
        };
      }
      getDefaultConfiguredProjectInfo(t) {
        var n;
        const i = this.projectService.getScriptInfo(t);
        if (!i) return;
        const a = this.projectService.findDefaultConfiguredProjectWorker(i, 3);
        if (!a) return;
        let o, c;
        return a.seenProjects.forEach((_, u) => {
          u !== a.defaultProject && (_ !== 3 ? (o ?? (o = [])).push(ho(u.getConfigFilePath())) : (c ?? (c = [])).push(ho(u.getConfigFilePath())));
        }), (n = a.seenConfigs) == null || n.forEach((_) => (o ?? (o = [])).push(_)), {
          notMatchedByConfig: o,
          notInProject: c,
          defaultProject: a.defaultProject && ho(a.defaultProject.getConfigFilePath())
        };
      }
      getRenameInfo(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = this.getPositionInFile(t, n), o = this.getPreferences(n);
        return i.getLanguageService().getRenameInfo(n, a, o);
      }
      getProjects(t, n, i) {
        let a, o;
        if (t.projectFileName) {
          const c = this.getProject(t.projectFileName);
          c && (a = [c]);
        } else {
          const c = n ? this.projectService.getScriptInfoEnsuringProjectsUptoDate(t.file) : this.projectService.getScriptInfo(t.file);
          if (c)
            n || this.projectService.ensureDefaultProjectForFile(c);
          else return i ? Nl : (this.projectService.logErrorForScriptInfoNotFound(t.file), Kh.ThrowNoProject());
          a = c.containingProjects, o = this.projectService.getSymlinkedProjects(c);
        }
        return a = dn(a, (c) => c.languageServiceEnabled && !c.isOrphan()), !i && (!a || !a.length) && !o ? (this.projectService.logErrorForScriptInfoNotFound(t.file ?? t.projectFileName), Kh.ThrowNoProject()) : o ? {
          projects: a,
          symLinkedProjects: o
        } : a;
      }
      getDefaultProject(t) {
        if (t.projectFileName) {
          const n = this.getProject(t.projectFileName);
          if (n) return n;
          if (!t.file) return Kh.ThrowNoProject();
        }
        return this.projectService.getScriptInfo(t.file).getDefaultProject();
      }
      getRenameLocations(t, n) {
        const i = ho(t.file), a = this.getPositionInFile(t, i), o = this.getProjects(t), c = this.getDefaultProject(t), _ = this.getPreferences(i), u = this.mapRenameInfo(c.getLanguageService().getRenameInfo(i, a, _), E.checkDefined(this.projectService.getScriptInfo(i)));
        if (!u.canRename) return n ? {
          info: u,
          locs: []
        } : [];
        const d = GKe(o, c, {
          fileName: t.file,
          pos: a
        }, !!t.findInStrings, !!t.findInComments, _, this.host.useCaseSensitiveFileNames);
        return n ? {
          info: u,
          locs: this.toSpanGroups(d)
        } : d;
      }
      mapRenameInfo(t, n) {
        if (t.canRename) {
          const { canRename: i, fileToRename: a, displayName: o, fullDisplayName: c, kind: _, kindModifiers: u, triggerSpan: d } = t;
          return {
            canRename: i,
            fileToRename: a,
            displayName: o,
            fullDisplayName: c,
            kind: _,
            kindModifiers: u,
            triggerSpan: zm(d, n)
          };
        } else return t;
      }
      toSpanGroups(t) {
        const n = /* @__PURE__ */ new Map();
        for (const { fileName: i, textSpan: a, contextSpan: o, originalContextSpan: c, originalTextSpan: _, originalFileName: u, ...d } of t) {
          let g = n.get(i);
          g || n.set(i, g = {
            file: i,
            locs: []
          });
          const h = E.checkDefined(this.projectService.getScriptInfo(i));
          g.locs.push({
            ...Tfe(a, o, h),
            ...d
          });
        }
        return ma(n.values());
      }
      getReferences(t, n) {
        const i = ho(t.file), a = this.getProjects(t), o = this.getPositionInFile(t, i), c = HKe(a, this.getDefaultProject(t), {
          fileName: t.file,
          pos: o
        }, this.host.useCaseSensitiveFileNames, this.logger);
        if (!n) return c;
        const _ = this.getPreferences(i), u = this.getDefaultProject(t), d = u.getScriptInfoForNormalizedPath(i), g = u.getLanguageService().getQuickInfoAtPosition(i, o), h = g ? OI(g.displayParts) : "", S = g && g.textSpan, T = S ? d.positionToLineOffset(S.start).offset : 0, k = S ? d.getSnapshot().getText(S.start, dc(S)) : "";
        return {
          refs: ks(c, (D) => D.references.map((P) => WPe(this.projectService, P, _))),
          symbolName: k,
          symbolStartOffset: T,
          symbolDisplayString: h
        };
      }
      getFileReferences(t, n) {
        const i = this.getProjects(t), a = ho(t.file), o = this.getPreferences(a), c = {
          fileName: a,
          pos: 0
        }, _ = Sfe(i, this.getDefaultProject(t), c, c, FPe, (d) => (this.logger.info(`Finding references to file ${a} in project ${d.getProjectName()}`), d.getLanguageService().getFileReferences(a)));
        let u;
        if (da(_)) u = _;
        else {
          u = [];
          const d = KH(this.host.useCaseSensitiveFileNames);
          _.forEach((g) => {
            for (const h of g) d.has(h) || (u.push(h), d.add(h));
          });
        }
        return n ? {
          refs: u.map((d) => WPe(this.projectService, d, o)),
          symbolName: `"${t.file}"`
        } : u;
      }
      openClientFile(t, n, i, a) {
        this.projectService.openClientFileWithNormalizedPath(t, n, i, !1, a);
      }
      getPosition(t, n) {
        return t.position !== void 0 ? t.position : n.lineOffsetToPosition(t.line, t.offset);
      }
      getPositionInFile(t, n) {
        const i = this.projectService.getScriptInfoForNormalizedPath(n);
        return this.getPosition(t, i);
      }
      getFileAndProject(t) {
        return this.getFileAndProjectWorker(t.file, t.projectFileName);
      }
      getFileAndLanguageServiceForSyntacticOperation(t) {
        const { file: n, project: i } = this.getFileAndProject(t);
        return {
          file: n,
          languageService: i.getLanguageService(!1)
        };
      }
      getFileAndProjectWorker(t, n) {
        const i = ho(t);
        return {
          file: i,
          project: this.getProject(n) || this.projectService.ensureDefaultProjectForFile(i)
        };
      }
      getOutliningSpans(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = a.getOutliningSpans(i);
        if (n) {
          const c = this.projectService.getScriptInfoForNormalizedPath(i);
          return o.map((_) => ({
            textSpan: zm(_.textSpan, c),
            hintSpan: zm(_.hintSpan, c),
            bannerText: _.bannerText,
            autoCollapse: _.autoCollapse,
            kind: _.kind
          }));
        } else return o;
      }
      getTodoComments(t) {
        const { file: n, project: i } = this.getFileAndProject(t);
        return i.getLanguageService().getTodoComments(n, t.descriptors);
      }
      getDocCommentTemplate(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n);
        return i.getDocCommentTemplateAtPosition(n, a, this.getPreferences(n), this.getFormatOptions(n));
      }
      getSpanOfEnclosingComment(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = t.onlyMultiLine, o = this.getPositionInFile(t, n);
        return i.getSpanOfEnclosingComment(n, o, a);
      }
      getIndentation(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n), o = t.options ? CE(t.options) : this.getFormatOptions(n);
        return {
          position: a,
          indentation: i.getIndentationAtPosition(n, a, o)
        };
      }
      getBreakpointStatement(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n);
        return i.getBreakpointStatementAtPosition(n, a);
      }
      getNameOrDottedNameSpan(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n);
        return i.getNameOrDottedNameSpan(n, a, a);
      }
      isValidBraceCompletion(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.getPositionInFile(t, n);
        return i.isValidBraceCompletionAtPosition(n, a, t.openingBrace.charCodeAt(0));
      }
      getQuickInfoWorker(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getPreferences(i), _ = a.getLanguageService().getQuickInfoAtPosition(i, this.getPosition(t, o), c.maximumHoverLength, t.verbosityLevel);
        if (!_) return;
        const u = !!c.displayPartsForJSDoc;
        if (n) {
          const d = OI(_.displayParts);
          return {
            kind: _.kind,
            kindModifiers: _.kindModifiers,
            start: o.positionToLineOffset(_.textSpan.start),
            end: o.positionToLineOffset(dc(_.textSpan)),
            displayString: d,
            documentation: u ? this.mapDisplayParts(_.documentation, a) : OI(_.documentation),
            tags: this.mapJSDocTagInfo(_.tags, a, u),
            canIncreaseVerbosityLevel: _.canIncreaseVerbosityLevel
          };
        } else return u ? _ : {
          ..._,
          tags: this.mapJSDocTagInfo(_.tags, a, !1)
        };
      }
      getFormattingEditsForRange(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.projectService.getScriptInfoForNormalizedPath(n), o = a.lineOffsetToPosition(t.line, t.offset), c = a.lineOffsetToPosition(t.endLine, t.endOffset), _ = i.getFormattingEditsForRange(n, o, c, this.getFormatOptions(n));
        if (_)
          return _.map((u) => this.convertTextChangeToCodeEdit(u, a));
      }
      getFormattingEditsForRangeFull(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = t.options ? CE(t.options) : this.getFormatOptions(n);
        return i.getFormattingEditsForRange(n, t.position, t.endPosition, a);
      }
      getFormattingEditsForDocumentFull(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = t.options ? CE(t.options) : this.getFormatOptions(n);
        return i.getFormattingEditsForDocument(n, a);
      }
      getFormattingEditsAfterKeystrokeFull(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = t.options ? CE(t.options) : this.getFormatOptions(n);
        return i.getFormattingEditsAfterKeystroke(n, t.position, t.key, a);
      }
      getFormattingEditsAfterKeystroke(t) {
        const { file: n, languageService: i } = this.getFileAndLanguageServiceForSyntacticOperation(t), a = this.projectService.getScriptInfoForNormalizedPath(n), o = a.lineOffsetToPosition(t.line, t.offset), c = this.getFormatOptions(n), _ = i.getFormattingEditsAfterKeystroke(n, o, t.key, c);
        if (t.key === `
` && (!_ || _.length === 0 || UKe(_, o))) {
          const { lineText: u, absolutePosition: d } = a.textStorage.getAbsolutePositionAndLineText(t.line);
          if (u && u.search("\\S") < 0) {
            const g = i.getIndentationAtPosition(n, o, c);
            let h = 0, S, T;
            for (S = 0, T = u.length; S < T; S++) if (u.charAt(S) === " ") h++;
            else if (u.charAt(S) === "	") h += c.tabSize;
            else break;
            if (g !== h) {
              const k = d + S;
              _.push({
                span: Vc(d, k),
                newText: dl.getIndentationString(g, c)
              });
            }
          }
        }
        if (_)
          return _.map((u) => ({
            start: a.positionToLineOffset(u.span.start),
            end: a.positionToLineOffset(dc(u.span)),
            newText: u.newText ? u.newText : ""
          }));
      }
      getCompletions(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getPosition(t, o), _ = a.getLanguageService().getCompletionsAtPosition(i, c, {
          ...nfe(this.getPreferences(i)),
          triggerCharacter: t.triggerCharacter,
          triggerKind: t.triggerKind,
          includeExternalModuleExports: t.includeExternalModuleExports,
          includeInsertTextCompletions: t.includeInsertTextCompletions
        }, a.projectService.getFormatCodeOptions(i));
        if (_ === void 0) return;
        if (n === "completions-full") return _;
        const u = t.prefix || "", d = Rn(_.entries, (g) => {
          if (_.isMemberCompletion || ta(g.name.toLowerCase(), u.toLowerCase())) {
            const h = g.replacementSpan ? zm(g.replacementSpan, o) : void 0;
            return {
              ...g,
              replacementSpan: h,
              hasAction: g.hasAction || void 0,
              symbol: void 0
            };
          }
        });
        return n === "completions" ? (_.metadata && (d.metadata = _.metadata), d) : {
          ..._,
          optionalReplacementSpan: _.optionalReplacementSpan && zm(_.optionalReplacementSpan, o),
          entries: d
        };
      }
      getCompletionEntryDetails(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getPosition(t, o), _ = a.projectService.getFormatCodeOptions(i), u = !!this.getPreferences(i).displayPartsForJSDoc, d = Rn(t.entryNames, (g) => {
          const { name: h, source: S, data: T } = typeof g == "string" ? {
            name: g,
            source: void 0,
            data: void 0
          } : g;
          return a.getLanguageService().getCompletionEntryDetails(i, c, h, _, S, this.getPreferences(i), T ? ns(T, net) : void 0);
        });
        return n ? u ? d : d.map((g) => ({
          ...g,
          tags: this.mapJSDocTagInfo(g.tags, a, !1)
        })) : d.map((g) => ({
          ...g,
          codeActions: or(g.codeActions, (h) => this.mapCodeAction(h)),
          documentation: this.mapDisplayParts(g.documentation, a),
          tags: this.mapJSDocTagInfo(g.tags, a, u)
        }));
      }
      getCompileOnSaveAffectedFileList(t) {
        const n = this.getProjects(t, !0, !0), i = this.projectService.getScriptInfo(t.file);
        return i ? qKe(i, (a) => this.projectService.getScriptInfoForPath(a), n, (a, o) => {
          if (!a.compileOnSaveEnabled || !a.languageServiceEnabled || a.isOrphan()) return;
          const c = a.getCompilationSettings();
          if (!(c.noEmit || $l(o.fileName) && !WKe(c)))
            return {
              projectFileName: a.getProjectName(),
              fileNames: a.getCompileOnSaveAffectedFileList(o),
              projectUsesOutFile: !!c.outFile
            };
        }) : Nl;
      }
      emitFile(t) {
        const { file: n, project: i } = this.getFileAndProject(t);
        if (i || Kh.ThrowNoProject(), !i.languageServiceEnabled) return t.richResponse ? {
          emitSkipped: !0,
          diagnostics: []
        } : !1;
        const a = i.getScriptInfo(n), { emitSkipped: o, diagnostics: c } = i.emitFile(a, (_, u, d) => this.host.writeFile(_, u, d));
        return t.richResponse ? {
          emitSkipped: o,
          diagnostics: t.includeLinePosition ? this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(c) : c.map((_) => u8(_, !0))
        } : !o;
      }
      getSignatureHelpItems(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getPosition(t, o), _ = a.getLanguageService().getSignatureHelpItems(i, c, t), u = !!this.getPreferences(i).displayPartsForJSDoc;
        if (_ && n) {
          const d = _.applicableSpan;
          return {
            ..._,
            applicableSpan: {
              start: o.positionToLineOffset(d.start),
              end: o.positionToLineOffset(d.start + d.length)
            },
            items: this.mapSignatureHelpItems(_.items, a, u)
          };
        } else return u || !_ ? _ : {
          ..._,
          items: _.items.map((d) => ({
            ...d,
            tags: this.mapJSDocTagInfo(d.tags, a, !1)
          }))
        };
      }
      toPendingErrorCheck(t) {
        const n = ho(t), i = this.projectService.tryGetDefaultProjectForFile(n);
        return i && {
          fileName: n,
          project: i
        };
      }
      getDiagnostics(t, n, i) {
        this.suppressDiagnosticEvents || i.length > 0 && this.updateErrorCheck(t, i, n);
      }
      change(t) {
        const n = this.projectService.getScriptInfo(t.file);
        E.assert(!!n), n.textStorage.switchToScriptVersionCache();
        const i = n.lineOffsetToPosition(t.line, t.offset), a = n.lineOffsetToPosition(t.endLine, t.endOffset);
        i >= 0 && (this.changeSeq++, this.projectService.applyChangesToFile(n, Fh({
          span: {
            start: i,
            length: a - i
          },
          newText: t.insertString
        })));
      }
      reload(t) {
        const n = ho(t.file), i = t.tmpfile === void 0 ? void 0 : ho(t.tmpfile), a = this.projectService.getScriptInfoForNormalizedPath(n);
        a && (this.changeSeq++, a.reloadFromFile(i));
      }
      saveToTmp(t, n) {
        const i = this.projectService.getScriptInfo(t);
        i && i.saveTo(n);
      }
      closeClientFile(t) {
        if (!t) return;
        const n = us(t);
        this.projectService.closeClientFile(n);
      }
      mapLocationNavigationBarItems(t, n) {
        return or(t, (i) => ({
          text: i.text,
          kind: i.kind,
          kindModifiers: i.kindModifiers,
          spans: i.spans.map((a) => zm(a, n)),
          childItems: this.mapLocationNavigationBarItems(i.childItems, n),
          indent: i.indent
        }));
      }
      getNavigationBarItems(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = a.getNavigationBarItems(i);
        return o ? n ? this.mapLocationNavigationBarItems(o, this.projectService.getScriptInfoForNormalizedPath(i)) : o : void 0;
      }
      toLocationNavigationTree(t, n) {
        return {
          text: t.text,
          kind: t.kind,
          kindModifiers: t.kindModifiers,
          spans: t.spans.map((i) => zm(i, n)),
          nameSpan: t.nameSpan && zm(t.nameSpan, n),
          childItems: or(t.childItems, (i) => this.toLocationNavigationTree(i, n))
        };
      }
      getNavigationTree(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = a.getNavigationTree(i);
        return o ? n ? this.toLocationNavigationTree(o, this.projectService.getScriptInfoForNormalizedPath(i)) : o : void 0;
      }
      getNavigateToItems(t, n) {
        const i = this.getFullNavigateToItems(t);
        return n ? ks(i, ({ project: a, navigateToItems: o }) => o.map((c) => {
          const _ = a.getScriptInfo(c.fileName), u = {
            name: c.name,
            kind: c.kind,
            kindModifiers: c.kindModifiers,
            isCaseSensitive: c.isCaseSensitive,
            matchKind: c.matchKind,
            file: c.fileName,
            start: _.positionToLineOffset(c.textSpan.start),
            end: _.positionToLineOffset(dc(c.textSpan))
          };
          return c.kindModifiers && c.kindModifiers !== "" && (u.kindModifiers = c.kindModifiers), c.containerName && c.containerName.length > 0 && (u.containerName = c.containerName), c.containerKind && c.containerKind.length > 0 && (u.containerKind = c.containerKind), u;
        })) : ks(i, ({ navigateToItems: a }) => a);
      }
      getFullNavigateToItems(t) {
        const { currentFileOnly: n, searchValue: i, maxResultCount: a, projectFileName: o } = t;
        if (n) {
          E.assertIsDefined(t.file);
          const { file: S, project: T } = this.getFileAndProject(t);
          return [{
            project: T,
            navigateToItems: T.getLanguageService().getNavigateToItems(i, a, S)
          }];
        }
        const c = this.getHostPreferences(), _ = [], u = /* @__PURE__ */ new Map();
        return !t.file && !o ? (this.projectService.loadAncestorProjectTree(), this.projectService.forEachEnabledProject((S) => d(S))) : OPe(this.getProjects(t), void 0, (S) => d(S)), _;
        function d(S) {
          const T = dn(S.getLanguageService().getNavigateToItems(i, a, void 0, S.isNonTsProject(), c.excludeLibrarySymbolsInNavTo), (k) => g(k) && !e$(mP(k), S));
          T.length && _.push({
            project: S,
            navigateToItems: T
          });
        }
        function g(S) {
          const T = S.name;
          if (!u.has(T))
            return u.set(T, [S]), !0;
          const k = u.get(T);
          for (const D of k) if (h(D, S)) return !1;
          return k.push(S), !0;
        }
        function h(S, T) {
          return S === T ? !0 : !S || !T ? !1 : S.containerKind === T.containerKind && S.containerName === T.containerName && S.fileName === T.fileName && S.isCaseSensitive === T.isCaseSensitive && S.kind === T.kind && S.kindModifiers === T.kindModifiers && S.matchKind === T.matchKind && S.name === T.name && S.textSpan.start === T.textSpan.start && S.textSpan.length === T.textSpan.length;
        }
      }
      getSupportedCodeFixes(t) {
        if (!t) return yG();
        if (t.file) {
          const { file: i, project: a } = this.getFileAndProject(t);
          return a.getLanguageService().getSupportedCodeFixes(i);
        }
        const n = this.getProject(t.projectFileName);
        return n || Kh.ThrowNoProject(), n.getLanguageService().getSupportedCodeFixes();
      }
      isLocation(t) {
        return t.line !== void 0;
      }
      extractPositionOrRange(t, n) {
        let i, a;
        return this.isLocation(t) ? i = o(t) : a = this.getRange(t, n), E.checkDefined(i === void 0 ? a : i);
        function o(c) {
          return c.position !== void 0 ? c.position : n.lineOffsetToPosition(c.line, c.offset);
        }
      }
      getRange(t, n) {
        const { startPosition: i, endPosition: a } = this.getStartAndEndPosition(t, n);
        return {
          pos: i,
          end: a
        };
      }
      getApplicableRefactors(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = i.getScriptInfoForNormalizedPath(n);
        return i.getLanguageService().getApplicableRefactors(n, this.extractPositionOrRange(t, a), this.getPreferences(n), t.triggerReason, t.kind, t.includeInteractiveActions).map((o) => ({
          ...o,
          actions: o.actions.map((c) => ({
            ...c,
            range: c.range ? {
              start: EE({
                line: c.range.start.line,
                character: c.range.start.offset
              }),
              end: EE({
                line: c.range.end.line,
                character: c.range.end.offset
              })
            } : void 0
          }))
        }));
      }
      getEditsForRefactor(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = a.getScriptInfoForNormalizedPath(i), c = a.getLanguageService().getEditsForRefactor(i, this.getFormatOptions(i), this.extractPositionOrRange(t, o), t.refactor, t.action, this.getPreferences(i), t.interactiveRefactorArguments);
        if (c === void 0) return { edits: [] };
        if (n) {
          const { renameFilename: _, renameLocation: u, edits: d } = c;
          let g;
          return _ !== void 0 && u !== void 0 && (g = xfe(Fk(a.getScriptInfoForNormalizedPath(ho(_)).getSnapshot()), _, u, d)), {
            renameLocation: g,
            renameFilename: _,
            edits: this.mapTextChangesToCodeEdits(d),
            notApplicableReason: c.notApplicableReason
          };
        }
        return c;
      }
      getMoveToRefactoringFileSuggestions(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = i.getScriptInfoForNormalizedPath(n);
        return i.getLanguageService().getMoveToRefactoringFileSuggestions(n, this.extractPositionOrRange(t, a), this.getPreferences(n));
      }
      preparePasteEdits(t) {
        const { file: n, project: i } = this.getFileAndProject(t);
        return i.getLanguageService().preparePasteEditsForFile(n, t.copiedTextSpan.map((a) => this.getRange({
          file: n,
          startLine: a.start.line,
          startOffset: a.start.offset,
          endLine: a.end.line,
          endOffset: a.end.offset
        }, this.projectService.getScriptInfoForNormalizedPath(n))));
      }
      getPasteEdits(t) {
        const { file: n, project: i } = this.getFileAndProject(t);
        if (pP(n)) return;
        const a = t.copiedFrom ? {
          file: t.copiedFrom.file,
          range: t.copiedFrom.spans.map((c) => this.getRange({
            file: t.copiedFrom.file,
            startLine: c.start.line,
            startOffset: c.start.offset,
            endLine: c.end.line,
            endOffset: c.end.offset
          }, i.getScriptInfoForNormalizedPath(ho(t.copiedFrom.file))))
        } : void 0, o = i.getLanguageService().getPasteEdits({
          targetFile: n,
          pastedText: t.pastedText,
          pasteLocations: t.pasteLocations.map((c) => this.getRange({
            file: n,
            startLine: c.start.line,
            startOffset: c.start.offset,
            endLine: c.end.line,
            endOffset: c.end.offset
          }, i.getScriptInfoForNormalizedPath(n))),
          copiedFrom: a,
          preferences: this.getPreferences(n)
        }, this.getFormatOptions(n));
        return o && this.mapPasteEditsAction(o);
      }
      organizeImports(t, n) {
        E.assert(t.scope.type === "file");
        const { file: i, project: a } = this.getFileAndProject(t.scope.args), o = a.getLanguageService().organizeImports({
          fileName: i,
          mode: t.mode ?? (t.skipDestructiveCodeActions ? "SortAndCombine" : void 0),
          type: "file"
        }, this.getFormatOptions(i), this.getPreferences(i));
        return n ? this.mapTextChangesToCodeEdits(o) : o;
      }
      getEditsForFileRename(t, n) {
        const i = ho(t.oldFilePath), a = ho(t.newFilePath), o = this.getHostFormatOptions(), c = this.getHostPreferences(), _ = /* @__PURE__ */ new Set(), u = [];
        return this.projectService.loadAncestorProjectTree(), this.projectService.forEachEnabledProject((d) => {
          const g = d.getLanguageService().getEditsForFileRename(i, a, o, c), h = [];
          for (const S of g) _.has(S.fileName) || (u.push(S), h.push(S.fileName));
          for (const S of h) _.add(S);
        }), n ? u.map((d) => this.mapTextChangeToCodeEdit(d)) : u;
      }
      getCodeFixes(t, n) {
        const { file: i, project: a } = this.getFileAndProject(t), o = a.getScriptInfoForNormalizedPath(i), { startPosition: c, endPosition: _ } = this.getStartAndEndPosition(t, o);
        let u;
        try {
          u = a.getLanguageService().getCodeFixesAtPosition(i, c, _, t.errorCodes, this.getFormatOptions(i), this.getPreferences(i));
        } catch (d) {
          const g = d instanceof Error ? d : new Error(d), h = a.getLanguageService(), S = [
            ...h.getSyntacticDiagnostics(i),
            ...h.getSemanticDiagnostics(i),
            ...h.getSuggestionDiagnostics(i)
          ].filter((k) => k3(c, _ - c, k.start, k.length)).map((k) => k.code), T = t.errorCodes.find((k) => !S.includes(k));
          throw T !== void 0 && (g.message += `
Additional information: BADCLIENT: Bad error code, ${T} not found in range ${c}..${_} (found: ${S.join(", ")})`), g;
        }
        return n ? u.map((d) => this.mapCodeFixAction(d)) : u;
      }
      getCombinedCodeFix({ scope: t, fixId: n }, i) {
        E.assert(t.type === "file");
        const { file: a, project: o } = this.getFileAndProject(t.args), c = o.getLanguageService().getCombinedCodeFix({
          type: "file",
          fileName: a
        }, n, this.getFormatOptions(a), this.getPreferences(a));
        return i ? {
          changes: this.mapTextChangesToCodeEdits(c.changes),
          commands: c.commands
        } : c;
      }
      applyCodeActionCommand(t) {
        const n = t.command;
        for (const i of fx(n)) {
          const { file: a, project: o } = this.getFileAndProject(i);
          o.getLanguageService().applyCodeActionCommand(i, this.getFormatOptions(a)).then((c) => {
          }, (c) => {
          });
        }
        return {};
      }
      getStartAndEndPosition(t, n) {
        let i, a;
        return t.startPosition !== void 0 ? i = t.startPosition : (i = n.lineOffsetToPosition(t.startLine, t.startOffset), t.startPosition = i), t.endPosition !== void 0 ? a = t.endPosition : (a = n.lineOffsetToPosition(t.endLine, t.endOffset), t.endPosition = a), {
          startPosition: i,
          endPosition: a
        };
      }
      mapCodeAction({ description: t, changes: n, commands: i }) {
        return {
          description: t,
          changes: this.mapTextChangesToCodeEdits(n),
          commands: i
        };
      }
      mapCodeFixAction({ fixName: t, description: n, changes: i, commands: a, fixId: o, fixAllDescription: c }) {
        return {
          fixName: t,
          description: n,
          changes: this.mapTextChangesToCodeEdits(i),
          commands: a,
          fixId: o,
          fixAllDescription: c
        };
      }
      mapPasteEditsAction({ edits: t, fixId: n }) {
        return {
          edits: this.mapTextChangesToCodeEdits(t),
          fixId: n
        };
      }
      mapTextChangesToCodeEdits(t) {
        return t.map((n) => this.mapTextChangeToCodeEdit(n));
      }
      mapTextChangeToCodeEdit(t) {
        const n = this.projectService.getScriptInfoOrConfig(t.fileName);
        return !!t.isNewFile == !!n && (n || this.projectService.logErrorForScriptInfoNotFound(t.fileName), E.fail("Expected isNewFile for (only) new files. " + JSON.stringify({
          isNewFile: !!t.isNewFile,
          hasScriptInfo: !!n
        }))), n ? {
          fileName: t.fileName,
          textChanges: t.textChanges.map((i) => YKe(i, n))
        } : eet(t);
      }
      convertTextChangeToCodeEdit(t, n) {
        return {
          start: n.positionToLineOffset(t.span.start),
          end: n.positionToLineOffset(t.span.start + t.span.length),
          newText: t.newText ? t.newText : ""
        };
      }
      getBraceMatching(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getPosition(t, o), _ = a.getBraceMatchingAtPosition(i, c);
        return _ ? n ? _.map((u) => zm(u, o)) : _ : void 0;
      }
      getDiagnosticsForProject(t, n, i) {
        if (this.suppressDiagnosticEvents) return;
        const { fileNames: a, languageServiceDisabled: o } = this.getProjectInfoWorker(i, void 0, !0, void 0, !0);
        if (o) return;
        const c = a.filter((k) => !k.includes("lib.d.ts"));
        if (c.length === 0) return;
        const _ = [], u = [], d = [], g = [], h = ho(i), S = this.projectService.ensureDefaultProjectForFile(h);
        for (const k of c) this.getCanonicalFileName(k) === this.getCanonicalFileName(i) ? _.push(k) : this.projectService.getScriptInfo(k).isScriptOpen() ? u.push(k) : $l(k) ? g.push(k) : d.push(k);
        const T = [
          ..._,
          ...u,
          ...d,
          ...g
        ].map((k) => ({
          fileName: k,
          project: S
        }));
        this.updateErrorCheck(t, T, n, !1);
      }
      configurePlugin(t) {
        this.projectService.configurePlugin(t);
      }
      getSmartSelectionRange(t, n) {
        const { locations: i } = t, { file: a, languageService: o } = this.getFileAndLanguageServiceForSyntacticOperation(t), c = E.checkDefined(this.projectService.getScriptInfo(a));
        return or(i, (_) => {
          const u = this.getPosition(_, c), d = o.getSmartSelectionRange(a, u);
          return n ? this.mapSelectionRange(d, c) : d;
        });
      }
      toggleLineComment(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = this.projectService.getScriptInfo(i), c = this.getRange(t, o), _ = a.toggleLineComment(i, c);
        if (n) {
          const u = this.projectService.getScriptInfoForNormalizedPath(i);
          return _.map((d) => this.convertTextChangeToCodeEdit(d, u));
        }
        return _;
      }
      toggleMultilineComment(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getRange(t, o), _ = a.toggleMultilineComment(i, c);
        if (n) {
          const u = this.projectService.getScriptInfoForNormalizedPath(i);
          return _.map((d) => this.convertTextChangeToCodeEdit(d, u));
        }
        return _;
      }
      commentSelection(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getRange(t, o), _ = a.commentSelection(i, c);
        if (n) {
          const u = this.projectService.getScriptInfoForNormalizedPath(i);
          return _.map((d) => this.convertTextChangeToCodeEdit(d, u));
        }
        return _;
      }
      uncommentSelection(t, n) {
        const { file: i, languageService: a } = this.getFileAndLanguageServiceForSyntacticOperation(t), o = this.projectService.getScriptInfoForNormalizedPath(i), c = this.getRange(t, o), _ = a.uncommentSelection(i, c);
        if (n) {
          const u = this.projectService.getScriptInfoForNormalizedPath(i);
          return _.map((d) => this.convertTextChangeToCodeEdit(d, u));
        }
        return _;
      }
      mapSelectionRange(t, n) {
        const i = { textSpan: zm(t.textSpan, n) };
        return t.parent && (i.parent = this.mapSelectionRange(t.parent, n)), i;
      }
      getScriptInfoFromProjectService(t) {
        const n = ho(t), i = this.projectService.getScriptInfoForNormalizedPath(n);
        return i || (this.projectService.logErrorForScriptInfoNotFound(n), Kh.ThrowNoProject());
      }
      toProtocolCallHierarchyItem(t) {
        const n = this.getScriptInfoFromProjectService(t.file);
        return {
          name: t.name,
          kind: t.kind,
          kindModifiers: t.kindModifiers,
          file: t.file,
          containerName: t.containerName,
          span: zm(t.span, n),
          selectionSpan: zm(t.selectionSpan, n)
        };
      }
      toProtocolCallHierarchyIncomingCall(t) {
        const n = this.getScriptInfoFromProjectService(t.from.file);
        return {
          from: this.toProtocolCallHierarchyItem(t.from),
          fromSpans: t.fromSpans.map((i) => zm(i, n))
        };
      }
      toProtocolCallHierarchyOutgoingCall(t, n) {
        return {
          to: this.toProtocolCallHierarchyItem(t.to),
          fromSpans: t.fromSpans.map((i) => zm(i, n))
        };
      }
      prepareCallHierarchy(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = this.projectService.getScriptInfoForNormalizedPath(n);
        if (a) {
          const o = this.getPosition(t, a), c = i.getLanguageService().prepareCallHierarchy(n, o);
          return c && Dq(c, (_) => this.toProtocolCallHierarchyItem(_));
        }
      }
      provideCallHierarchyIncomingCalls(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = this.getScriptInfoFromProjectService(n);
        return i.getLanguageService().provideCallHierarchyIncomingCalls(n, this.getPosition(t, a)).map((o) => this.toProtocolCallHierarchyIncomingCall(o));
      }
      provideCallHierarchyOutgoingCalls(t) {
        const { file: n, project: i } = this.getFileAndProject(t), a = this.getScriptInfoFromProjectService(n);
        return i.getLanguageService().provideCallHierarchyOutgoingCalls(n, this.getPosition(t, a)).map((o) => this.toProtocolCallHierarchyOutgoingCall(o, a));
      }
      getCanonicalFileName(t) {
        return us(this.host.useCaseSensitiveFileNames ? t : Ny(t));
      }
      exit() {
      }
      notRequired(t) {
        return t && this.doOutput(void 0, t.command, t.seq, !0, this.performanceData), {
          responseRequired: !1,
          performanceData: this.performanceData
        };
      }
      requiredResponse(t) {
        return {
          response: t,
          responseRequired: !0,
          performanceData: this.performanceData
        };
      }
      addProtocolHandler(t, n) {
        if (this.handlers.has(t)) throw new Error(`Protocol handler already exists for command "${t}"`);
        this.handlers.set(t, n);
      }
      setCurrentRequest(t) {
        E.assert(this.currentRequestId === void 0), this.currentRequestId = t, this.cancellationToken.setRequest(t);
      }
      resetCurrentRequest(t) {
        E.assert(this.currentRequestId === t), this.currentRequestId = void 0, this.cancellationToken.resetRequest(t);
      }
      executeWithRequestId(t, n, i) {
        const a = this.performanceData;
        try {
          return this.performanceData = i, this.setCurrentRequest(t), n();
        } finally {
          this.resetCurrentRequest(t), this.performanceData = a;
        }
      }
      executeCommand(t) {
        const n = this.handlers.get(t.command);
        if (n) {
          const i = this.executeWithRequestId(t.seq, () => n(t), void 0);
          return this.projectService.enableRequestedPlugins(), i;
        } else
          return this.logger.msg(`Unrecognized JSON command:${jv(t)}`, "Err"), this.doOutput(void 0, "unknown", t.seq, !1, void 0, `Unrecognized JSON command: ${t.command}`), { responseRequired: !1 };
      }
      onMessage(t) {
        var n, i, a, o, c, _, u;
        this.gcTimer.scheduleCollect();
        let d;
        const g = this.performanceData;
        this.logger.hasLevel(2) && (d = this.hrtime(), this.logger.hasLevel(3) && this.logger.info(`request:${jw(this.toStringMessage(t))}`));
        let h, S;
        try {
          h = this.parseMessage(t), S = h.arguments && h.arguments.file ? h.arguments : void 0, (n = sn) == null || n.instant(sn.Phase.Session, "request", {
            seq: h.seq,
            command: h.command
          }), (i = sn) == null || i.push(sn.Phase.Session, "executeCommand", {
            seq: h.seq,
            command: h.command
          }, !0);
          const { response: T, responseRequired: k, performanceData: D } = this.executeCommand(h);
          if ((a = sn) == null || a.pop(), this.logger.hasLevel(2)) {
            const P = zKe(this.hrtime(d)).toFixed(4);
            k ? this.logger.perftrc(`${h.seq}::${h.command}: elapsed time (in milliseconds) ${P}`) : this.logger.perftrc(`${h.seq}::${h.command}: async elapsed time (in milliseconds) ${P}`);
          }
          (o = sn) == null || o.instant(sn.Phase.Session, "response", {
            seq: h.seq,
            command: h.command,
            success: !!T
          }), T ? this.doOutput(T, h.command, h.seq, !0, D) : k && this.doOutput(void 0, h.command, h.seq, !1, D, "No content available.");
        } catch (T) {
          if ((c = sn) == null || c.popAll(), T instanceof N4) {
            (_ = sn) == null || _.instant(sn.Phase.Session, "commandCanceled", {
              seq: h?.seq,
              command: h?.command
            }), this.doOutput({ canceled: !0 }, h.command, h.seq, !0, this.performanceData);
            return;
          }
          this.logErrorWorker(T, this.toStringMessage(t), S), (u = sn) == null || u.instant(sn.Phase.Session, "commandError", {
            seq: h?.seq,
            command: h?.command,
            message: T.message
          }), this.doOutput(void 0, h ? h.command : "unknown", h ? h.seq : 0, !1, this.performanceData, "Error processing request. " + T.message + `
` + T.stack);
        } finally {
          this.performanceData = g;
        }
      }
      parseMessage(t) {
        return JSON.parse(t);
      }
      toStringMessage(t) {
        return t;
      }
      getFormatOptions(t) {
        return this.projectService.getFormatCodeOptions(t);
      }
      getPreferences(t) {
        return this.projectService.getPreferences(t);
      }
      getHostFormatOptions() {
        return this.projectService.getHostFormatCodeOptions();
      }
      getHostPreferences() {
        return this.projectService.getHostPreferences();
      }
    };
    function JPe(e) {
      const t = e.diagnosticsDuration && ma(e.diagnosticsDuration, ([n, i]) => ({
        ...i,
        file: n
      }));
      return {
        ...e,
        diagnosticsDuration: t
      };
    }
    function zm(e, t) {
      return {
        start: t.positionToLineOffset(e.start),
        end: t.positionToLineOffset(dc(e))
      };
    }
    function Tfe(e, t, n) {
      const i = zm(e, n), a = t && zm(t, n);
      return a ? {
        ...i,
        contextStart: a.start,
        contextEnd: a.end
      } : i;
    }
    function YKe(e, t) {
      return {
        start: zPe(t, e.span.start),
        end: zPe(t, dc(e.span)),
        newText: e.newText
      };
    }
    function zPe(e, t) {
      return mfe(e) ? KKe(e.getLineAndCharacterOfPosition(t)) : e.positionToLineOffset(t);
    }
    function ZKe(e, t) {
      const n = e.ranges.map((i) => ({
        start: t.positionToLineOffset(i.start),
        end: t.positionToLineOffset(i.start + i.length)
      }));
      return e.wordPattern ? {
        ranges: n,
        wordPattern: e.wordPattern
      } : { ranges: n };
    }
    function KKe(e) {
      return {
        line: e.line + 1,
        offset: e.character + 1
      };
    }
    function eet(e) {
      E.assert(e.textChanges.length === 1);
      const t = js(e.textChanges);
      return E.assert(t.span.start === 0 && t.span.length === 0), {
        fileName: e.fileName,
        textChanges: [{
          start: {
            line: 0,
            offset: 0
          },
          end: {
            line: 0,
            offset: 0
          },
          newText: t.newText
        }]
      };
    }
    function xfe(e, t, n, i) {
      const { line: a, character: o } = VC(Sx(tet(e, t, i)), n);
      return {
        line: a + 1,
        offset: o + 1
      };
    }
    function tet(e, t, n) {
      for (const { fileName: i, textChanges: a } of n)
        if (i === t)
          for (let o = a.length - 1; o >= 0; o--) {
            const { newText: c, span: { start: _, length: u } } = a[o];
            e = e.slice(0, _) + c + e.slice(_ + u);
          }
      return e;
    }
    function WPe(e, { fileName: t, textSpan: n, contextSpan: i, isWriteAccess: a, isDefinition: o }, { disableLineTextInReferences: c }) {
      const _ = E.checkDefined(e.getScriptInfo(t)), u = Tfe(n, i, _), d = c ? void 0 : ret(_, u);
      return {
        file: t,
        ...u,
        lineText: d,
        isWriteAccess: a,
        isDefinition: o
      };
    }
    function ret(e, t) {
      const n = e.lineToTextSpan(t.start.line - 1);
      return e.getSnapshot().getText(n.start, dc(n)).replace(/\r|\n/g, "");
    }
    function net(e) {
      return e === void 0 || e && typeof e == "object" && typeof e.exportName == "string" && (e.fileName === void 0 || typeof e.fileName == "string") && (e.ambientModuleName === void 0 || typeof e.ambientModuleName == "string" && (e.isPackageJsonImport === void 0 || typeof e.isPackageJsonImport == "boolean"));
    }
    var DE = 4, kfe = /* @__PURE__ */ ((e) => (e[e.PreStart = 0] = "PreStart", e[e.Start = 1] = "Start", e[e.Entire = 2] = "Entire", e[e.Mid = 3] = "Mid", e[e.End = 4] = "End", e[e.PostEnd = 5] = "PostEnd", e))(kfe || {}), iet = class {
      constructor() {
        this.goSubtree = !0, this.lineIndex = new _8(), this.endBranch = [], this.state = 2, this.initialText = "", this.trailingText = "", this.lineIndex.root = new wE(), this.startPath = [this.lineIndex.root], this.stack = [this.lineIndex.root];
      }
      get done() {
        return !1;
      }
      insertLines(e, t) {
        t && (this.trailingText = ""), e ? e = this.initialText + e + this.trailingText : e = this.initialText + this.trailingText;
        const n = _8.linesFromText(e).lines;
        n.length > 1 && n[n.length - 1] === "" && n.pop();
        let i, a;
        for (let c = this.endBranch.length - 1; c >= 0; c--)
          this.endBranch[c].updateCounts(), this.endBranch[c].charCount() === 0 && (a = this.endBranch[c], c > 0 ? i = this.endBranch[c - 1] : i = this.branchNode);
        a && i.remove(a);
        const o = this.startPath[this.startPath.length - 1];
        if (n.length > 0)
          if (o.text = n[0], n.length > 1) {
            let c = new Array(n.length - 1), _ = o;
            for (let g = 1; g < n.length; g++) c[g - 1] = new dM(n[g]);
            let u = this.startPath.length - 2;
            for (; u >= 0; ) {
              const g = this.startPath[u];
              c = g.insertAt(_, c), u--, _ = g;
            }
            let d = c.length;
            for (; d > 0; ) {
              const g = new wE();
              g.add(this.lineIndex.root), c = g.insertAt(this.lineIndex.root, c), d = c.length, this.lineIndex.root = g;
            }
            this.lineIndex.root.updateCounts();
          } else for (let c = this.startPath.length - 2; c >= 0; c--) this.startPath[c].updateCounts();
        else {
          this.startPath[this.startPath.length - 2].remove(o);
          for (let c = this.startPath.length - 2; c >= 0; c--) this.startPath[c].updateCounts();
        }
        return this.lineIndex;
      }
      post(e, t, n) {
        n === this.lineCollectionAtBranch && (this.state = 4), this.stack.pop();
      }
      pre(e, t, n, i, a) {
        const o = this.stack[this.stack.length - 1];
        this.state === 2 && a === 1 && (this.state = 1, this.branchNode = o, this.lineCollectionAtBranch = n);
        let c;
        function _(u) {
          return u.isLeaf() ? new dM("") : new wE();
        }
        switch (a) {
          case 0:
            this.goSubtree = !1, this.state !== 4 && o.add(n);
            break;
          case 1:
            this.state === 4 ? this.goSubtree = !1 : (c = _(n), o.add(c), this.startPath.push(c));
            break;
          case 2:
            this.state !== 4 ? (c = _(n), o.add(c), this.startPath.push(c)) : n.isLeaf() || (c = _(n), o.add(c), this.endBranch.push(c));
            break;
          case 3:
            this.goSubtree = !1;
            break;
          case 4:
            this.state !== 4 ? this.goSubtree = !1 : n.isLeaf() || (c = _(n), o.add(c), this.endBranch.push(c));
            break;
          case 5:
            this.goSubtree = !1, this.state !== 1 && o.add(n);
            break;
        }
        this.goSubtree && this.stack.push(c);
      }
      leaf(e, t, n) {
        this.state === 1 ? this.initialText = n.text.substring(0, e) : this.state === 2 ? (this.initialText = n.text.substring(0, e), this.trailingText = n.text.substring(e + t)) : this.trailingText = n.text.substring(e + t);
      }
    }, aet = class {
      constructor(e, t, n) {
        this.pos = e, this.deleteLen = t, this.insertedText = n;
      }
      getTextChangeRange() {
        return C3(du(this.pos, this.deleteLen), this.insertedText ? this.insertedText.length : 0);
      }
    }, t$ = class ox {
      constructor() {
        this.changes = [], this.versions = new Array(ox.maxVersions), this.minVersion = 0, this.currentVersion = 0;
      }
      versionToIndex(t) {
        if (!(t < this.minVersion || t > this.currentVersion))
          return t % ox.maxVersions;
      }
      currentVersionToIndex() {
        return this.currentVersion % ox.maxVersions;
      }
      edit(t, n, i) {
        this.changes.push(new aet(t, n, i)), (this.changes.length > ox.changeNumberThreshold || n > ox.changeLengthThreshold || i && i.length > ox.changeLengthThreshold) && this.getSnapshot();
      }
      getSnapshot() {
        return this._getSnapshot();
      }
      _getSnapshot() {
        let t = this.versions[this.currentVersionToIndex()];
        if (this.changes.length > 0) {
          let n = t.index;
          for (const i of this.changes) n = n.edit(i.pos, i.deleteLen, i.insertedText);
          t = new UPe(this.currentVersion + 1, this, n, this.changes), this.currentVersion = t.version, this.versions[this.currentVersionToIndex()] = t, this.changes = [], this.currentVersion - this.minVersion >= ox.maxVersions && (this.minVersion = this.currentVersion - ox.maxVersions + 1);
        }
        return t;
      }
      getSnapshotVersion() {
        return this._getSnapshot().version;
      }
      getAbsolutePositionAndLineText(t) {
        return this._getSnapshot().index.lineNumberToInfo(t);
      }
      lineOffsetToPosition(t, n) {
        return this._getSnapshot().index.absolutePositionOfStartOfLine(t) + (n - 1);
      }
      positionToLineOffset(t) {
        return this._getSnapshot().index.positionToLineOffset(t);
      }
      lineToTextSpan(t) {
        const n = this._getSnapshot().index, { lineText: i, absolutePosition: a } = n.lineNumberToInfo(t + 1);
        return du(a, i !== void 0 ? i.length : n.absolutePositionOfStartOfLine(t + 2) - a);
      }
      getTextChangesBetweenVersions(t, n) {
        if (t < n) if (t >= this.minVersion) {
          const i = [];
          for (let a = t + 1; a <= n; a++) {
            const o = this.versions[this.versionToIndex(a)];
            for (const c of o.changesSincePreviousVersion) i.push(c.getTextChangeRange());
          }
          return lZ(i);
        } else return;
        else return z7;
      }
      getLineCount() {
        return this._getSnapshot().index.getLineCount();
      }
      static fromString(t) {
        const n = new ox(), i = new UPe(0, n, new _8());
        n.versions[n.currentVersion] = i;
        const a = _8.linesFromText(t);
        return i.index.load(a.lines), n;
      }
    };
    t$.changeNumberThreshold = 8, t$.changeLengthThreshold = 256, t$.maxVersions = 8;
    var r$ = t$, UPe = class Y5e {
      constructor(t, n, i, a = Nl) {
        this.version = t, this.cache = n, this.index = i, this.changesSincePreviousVersion = a;
      }
      getText(t, n) {
        return this.index.getText(t, n - t);
      }
      getLength() {
        return this.index.getLength();
      }
      getChangeRange(t) {
        if (t instanceof Y5e && this.cache === t.cache) return this.version <= t.version ? z7 : this.cache.getTextChangesBetweenVersions(t.version, this.version);
      }
    }, _8 = class Tge {
      constructor() {
        this.checkEdits = !1;
      }
      absolutePositionOfStartOfLine(t) {
        return this.lineNumberToInfo(t).absolutePosition;
      }
      positionToLineOffset(t) {
        const { oneBasedLine: n, zeroBasedColumn: i } = this.root.charOffsetToLineInfo(1, t);
        return {
          line: n,
          offset: i + 1
        };
      }
      positionToColumnAndLineText(t) {
        return this.root.charOffsetToLineInfo(1, t);
      }
      getLineCount() {
        return this.root.lineCount();
      }
      lineNumberToInfo(t) {
        if (t <= this.getLineCount()) {
          const { position: n, leaf: i } = this.root.lineNumberToInfo(t, 0);
          return {
            absolutePosition: n,
            lineText: i && i.text
          };
        } else return {
          absolutePosition: this.root.charCount(),
          lineText: void 0
        };
      }
      load(t) {
        if (t.length > 0) {
          const n = [];
          for (let i = 0; i < t.length; i++) n[i] = new dM(t[i]);
          this.root = Tge.buildTreeFromBottom(n);
        } else this.root = new wE();
      }
      walk(t, n, i) {
        this.root.walk(t, n, i);
      }
      getText(t, n) {
        let i = "";
        return n > 0 && t < this.root.charCount() && this.walk(t, n, {
          goSubtree: !0,
          done: !1,
          leaf: (a, o, c) => {
            i = i.concat(c.text.substring(a, a + o));
          }
        }), i;
      }
      getLength() {
        return this.root.charCount();
      }
      every(t, n, i) {
        i || (i = this.root.charCount());
        const a = {
          goSubtree: !0,
          done: !1,
          leaf(o, c, _) {
            t(_, o, c) || (this.done = !0);
          }
        };
        return this.walk(n, i - n, a), !a.done;
      }
      edit(t, n, i) {
        if (this.root.charCount() === 0)
          return E.assert(n === 0), i !== void 0 ? (this.load(Tge.linesFromText(i).lines), this) : void 0;
        {
          let a;
          if (this.checkEdits) {
            const _ = this.getText(0, this.root.charCount());
            a = _.slice(0, t) + i + _.slice(t + n);
          }
          const o = new iet();
          let c = !1;
          if (t >= this.root.charCount()) {
            t = this.root.charCount() - 1;
            const _ = this.getText(t, 1);
            i ? i = _ + i : i = _, n = 0, c = !0;
          } else if (n > 0) {
            const _ = t + n, { zeroBasedColumn: u, lineText: d } = this.positionToColumnAndLineText(_);
            u === 0 && (n += d.length, i = i ? i + d : d);
          }
          if (this.root.walk(t, n, o), o.insertLines(i, c), this.checkEdits) {
            const _ = o.lineIndex.getText(0, o.lineIndex.getLength());
            E.assert(a === _, "buffer edit mismatch");
          }
          return o.lineIndex;
        }
      }
      static buildTreeFromBottom(t) {
        if (t.length < DE) return new wE(t);
        const n = new Array(Math.ceil(t.length / DE));
        let i = 0;
        for (let a = 0; a < n.length; a++) {
          const o = Math.min(i + DE, t.length);
          n[a] = new wE(t.slice(i, o)), i = o;
        }
        return this.buildTreeFromBottom(n);
      }
      static linesFromText(t) {
        const n = Sx(t);
        if (n.length === 0) return {
          lines: [],
          lineMap: n
        };
        const i = new Array(n.length), a = n.length - 1;
        for (let c = 0; c < a; c++) i[c] = t.substring(n[c], n[c + 1]);
        const o = t.substring(n[a]);
        return o.length > 0 ? i[a] = o : i.pop(), {
          lines: i,
          lineMap: n
        };
      }
    }, wE = class xge {
      constructor(t = []) {
        this.children = t, this.totalChars = 0, this.totalLines = 0, t.length && this.updateCounts();
      }
      isLeaf() {
        return !1;
      }
      updateCounts() {
        this.totalChars = 0, this.totalLines = 0;
        for (const t of this.children)
          this.totalChars += t.charCount(), this.totalLines += t.lineCount();
      }
      execWalk(t, n, i, a, o) {
        return i.pre && i.pre(t, n, this.children[a], this, o), i.goSubtree ? (this.children[a].walk(t, n, i), i.post && i.post(t, n, this.children[a], this, o)) : i.goSubtree = !0, i.done;
      }
      skipChild(t, n, i, a, o) {
        a.pre && !a.done && (a.pre(t, n, this.children[i], this, o), a.goSubtree = !0);
      }
      walk(t, n, i) {
        if (this.children.length === 0) return;
        let a = 0, o = this.children[a].charCount(), c = t;
        for (; c >= o; )
          this.skipChild(c, n, a, i, 0), c -= o, a++, o = this.children[a].charCount();
        if (c + n <= o) {
          if (this.execWalk(c, n, i, a, 2)) return;
        } else {
          if (this.execWalk(c, o - c, i, a, 1)) return;
          let _ = n - (o - c);
          for (a++, o = this.children[a].charCount(); _ > o; ) {
            if (this.execWalk(0, o, i, a, 3)) return;
            _ -= o, a++, o = this.children[a].charCount();
          }
          if (_ > 0 && this.execWalk(0, _, i, a, 4))
            return;
        }
        if (i.pre) {
          const _ = this.children.length;
          if (a < _ - 1) for (let u = a + 1; u < _; u++) this.skipChild(0, 0, u, i, 5);
        }
      }
      charOffsetToLineInfo(t, n) {
        if (this.children.length === 0) return {
          oneBasedLine: t,
          zeroBasedColumn: n,
          lineText: void 0
        };
        for (const a of this.children) {
          if (a.charCount() > n) return a.isLeaf() ? {
            oneBasedLine: t,
            zeroBasedColumn: n,
            lineText: a.text
          } : a.charOffsetToLineInfo(t, n);
          n -= a.charCount(), t += a.lineCount();
        }
        const i = this.lineCount();
        return i === 0 ? {
          oneBasedLine: 1,
          zeroBasedColumn: 0,
          lineText: void 0
        } : {
          oneBasedLine: i,
          zeroBasedColumn: E.checkDefined(this.lineNumberToInfo(i, 0).leaf).charCount(),
          lineText: void 0
        };
      }
      lineNumberToInfo(t, n) {
        for (const i of this.children) {
          const a = i.lineCount();
          if (a >= t) return i.isLeaf() ? {
            position: n,
            leaf: i
          } : i.lineNumberToInfo(t, n);
          t -= a, n += i.charCount();
        }
        return {
          position: n,
          leaf: void 0
        };
      }
      splitAfter(t) {
        let n;
        const i = this.children.length;
        t++;
        const a = t;
        if (t < i) {
          for (n = new xge(); t < i; )
            n.add(this.children[t]), t++;
          n.updateCounts();
        }
        return this.children.length = a, n;
      }
      remove(t) {
        const n = this.findChildIndex(t), i = this.children.length;
        if (n < i - 1) for (let a = n; a < i - 1; a++) this.children[a] = this.children[a + 1];
        this.children.pop();
      }
      findChildIndex(t) {
        const n = this.children.indexOf(t);
        return E.assert(n !== -1), n;
      }
      insertAt(t, n) {
        let i = this.findChildIndex(t);
        const a = this.children.length, o = n.length;
        if (a < DE && i === a - 1 && o === 1)
          return this.add(n[0]), this.updateCounts(), [];
        {
          const c = this.splitAfter(i);
          let _ = 0;
          for (i++; i < DE && _ < o; )
            this.children[i] = n[_], i++, _++;
          let u = [], d = 0;
          if (_ < o) {
            d = Math.ceil((o - _) / DE), u = new Array(d);
            let g = 0;
            for (let S = 0; S < d; S++) u[S] = new xge();
            let h = u[0];
            for (; _ < o; )
              h.add(n[_]), _++, h.children.length === DE && (g++, h = u[g]);
            for (let S = u.length - 1; S >= 0; S--) u[S].children.length === 0 && u.pop();
          }
          c && u.push(c), this.updateCounts();
          for (let g = 0; g < d; g++) u[g].updateCounts();
          return u;
        }
      }
      add(t) {
        this.children.push(t), E.assert(this.children.length <= DE);
      }
      charCount() {
        return this.totalChars;
      }
      lineCount() {
        return this.totalLines;
      }
    }, dM = class {
      constructor(e) {
        this.text = e;
      }
      isLeaf() {
        return !0;
      }
      walk(e, t, n) {
        n.leaf(e, t, this);
      }
      charCount() {
        return this.text.length;
      }
      lineCount() {
        return 1;
      }
    }, VPe = class Z5e {
      constructor(t, n, i, a, o, c) {
        this.telemetryEnabled = t, this.logger = n, this.host = i, this.globalTypingsCacheLocation = a, this.event = o, this.maxActiveRequestCount = c, this.activeRequestCount = 0, this.requestQueue = c3(), this.requestMap = /* @__PURE__ */ new Map(), this.requestedRegistry = !1, this.packageInstallId = 0;
      }
      isKnownTypesPackageName(t) {
        var n;
        return oh.validatePackageName(t) !== oh.NameValidationResult.Ok ? !1 : (this.requestedRegistry || (this.requestedRegistry = !0, this.installer.send({ kind: "typesRegistry" })), !!((n = this.typesRegistryCache) != null && n.has(t)));
      }
      installPackage(t) {
        this.packageInstallId++;
        const n = {
          kind: "installPackage",
          ...t,
          id: this.packageInstallId
        }, i = new Promise((a, o) => {
          (this.packageInstalledPromise ?? (this.packageInstalledPromise = /* @__PURE__ */ new Map())).set(this.packageInstallId, {
            resolve: a,
            reject: o
          });
        });
        return this.installer.send(n), i;
      }
      attach(t) {
        this.projectService = t, this.installer = this.createInstallerProcess();
      }
      onProjectClosed(t) {
        this.installer.send({
          projectName: t.getProjectName(),
          kind: "closeProject"
        });
      }
      enqueueInstallTypingsRequest(t, n, i) {
        const a = N_e(t, n, i);
        this.logger.hasLevel(3) && this.logger.info(`TIAdapter:: Scheduling throttled operation:${jv(a)}`), this.activeRequestCount < this.maxActiveRequestCount ? this.scheduleRequest(a) : (this.logger.hasLevel(3) && this.logger.info(`TIAdapter:: Deferring request for: ${a.projectName}`), this.requestQueue.enqueue(a), this.requestMap.set(a.projectName, a));
      }
      handleMessage(t) {
        var n, i;
        switch (this.logger.hasLevel(3) && this.logger.info(`TIAdapter:: Received response:${jv(t)}`), t.kind) {
          case EV:
            this.typesRegistryCache = new Map(Object.entries(t.typesRegistry));
            break;
          case iI: {
            const a = (n = this.packageInstalledPromise) == null ? void 0 : n.get(t.id);
            E.assertIsDefined(a, "Should find the promise for package install"), (i = this.packageInstalledPromise) == null || i.delete(t.id), t.success ? a.resolve({ successMessage: t.message }) : a.reject(t.message), this.projectService.updateTypingsForProject(t), this.event(t, "setTypings");
            break;
          }
          case Rae: {
            const a = { message: t.message };
            this.event(a, "typesInstallerInitializationFailed");
            break;
          }
          case DV: {
            const a = {
              eventId: t.eventId,
              packages: t.packagesToInstall
            };
            this.event(a, "beginInstallTypes");
            break;
          }
          case wV: {
            if (this.telemetryEnabled) {
              const o = {
                telemetryEventName: "typingsInstalled",
                payload: {
                  installedPackages: t.packagesToInstall.join(","),
                  installSuccess: t.installSuccess,
                  typingsInstallerVersion: t.typingsInstallerVersion
                }
              };
              this.event(o, "telemetry");
            }
            const a = {
              eventId: t.eventId,
              packages: t.packagesToInstall,
              success: t.installSuccess
            };
            this.event(a, "endInstallTypes");
            break;
          }
          case F9:
            this.projectService.updateTypingsForProject(t);
            break;
          case O9:
            for (this.activeRequestCount > 0 ? this.activeRequestCount-- : E.fail("TIAdapter:: Received too many responses"); !this.requestQueue.isEmpty(); ) {
              const a = this.requestQueue.dequeue();
              if (this.requestMap.get(a.projectName) === a) {
                this.requestMap.delete(a.projectName), this.scheduleRequest(a);
                break;
              }
              this.logger.hasLevel(3) && this.logger.info(`TIAdapter:: Skipping defunct request for: ${a.projectName}`);
            }
            this.projectService.updateTypingsForProject(t), this.event(t, "setTypings");
            break;
          case aI:
            this.projectService.watchTypingLocations(t);
            break;
          default:
        }
      }
      scheduleRequest(t) {
        this.logger.hasLevel(3) && this.logger.info(`TIAdapter:: Scheduling request for: ${t.projectName}`), this.activeRequestCount++, this.host.setTimeout(() => {
          this.logger.hasLevel(3) && this.logger.info(`TIAdapter:: Sending request:${jv(t)}`), this.installer.send(t);
        }, Z5e.requestDelayMillis, `${t.projectName}::${t.kind}`);
      }
    };
    VPe.requestDelayMillis = 100;
    var qPe = VPe, GPe = {};
    gi(GPe, {
      ActionInvalidate: () => F9,
      ActionPackageInstalled: () => iI,
      ActionSet: () => O9,
      ActionWatchTypingLocations: () => aI,
      Arguments: () => PV,
      AutoImportProviderProject: () => Z_e,
      AuxiliaryProject: () => Q_e,
      CharRangeSection: () => kfe,
      CloseFileWatcherEvent: () => VH,
      CommandNames: () => NPe,
      ConfigFileDiagEvent: () => BH,
      ConfiguredProject: () => K_e,
      ConfiguredProjectLoadKind: () => afe,
      CreateDirectoryWatcherEvent: () => UH,
      CreateFileWatcherEvent: () => WH,
      Errors: () => Kh,
      EventBeginInstallTypes: () => DV,
      EventEndInstallTypes: () => wV,
      EventInitializationFailed: () => Rae,
      EventTypesRegistry: () => EV,
      ExternalProject: () => OH,
      GcTimer: () => j_e,
      InferredProject: () => X_e,
      LargeFileReferencedEvent: () => jH,
      LineIndex: () => _8,
      LineLeaf: () => dM,
      LineNode: () => wE,
      LogLevel: () => P_e,
      Msg: () => A_e,
      OpenFileInfoTelemetryEvent: () => efe,
      Project: () => $k,
      ProjectInfoTelemetryEvent: () => zH,
      ProjectKind: () => dP,
      ProjectLanguageServiceStateEvent: () => JH,
      ProjectLoadingFinishEvent: () => RH,
      ProjectLoadingStartEvent: () => MH,
      ProjectService: () => dfe,
      ProjectsUpdatedInBackgroundEvent: () => _M,
      ScriptInfo: () => W_e,
      ScriptVersionCache: () => r$,
      Session: () => BPe,
      TextStorage: () => z_e,
      ThrottledOperations: () => R_e,
      TypingsInstallerAdapter: () => qPe,
      allFilesAreJsOrDts: () => G_e,
      allRootFilesAreJsOrDts: () => q_e,
      asNormalizedPath: () => nPe,
      convertCompilerOptions: () => fM,
      convertFormatOptions: () => CE,
      convertScriptKindName: () => GH,
      convertTypeAcquisition: () => rfe,
      convertUserPreferences: () => nfe,
      convertWatchOptions: () => l8,
      countEachFileTypes: () => a8,
      createInstallTypingsRequest: () => N_e,
      createModuleSpecifierCache: () => hfe,
      createNormalizedPathMap: () => iPe,
      createPackageJsonCache: () => yfe,
      createSortedArray: () => M_e,
      emptyArray: () => Nl,
      findArgument: () => i2e,
      formatDiagnosticToProtocol: () => u8,
      formatMessage: () => vfe,
      getBaseConfigFileName: () => IH,
      getDetailWatchInfo: () => QH,
      getLocationInNewDocument: () => xfe,
      hasArgument: () => n2e,
      hasNoTypeScriptSource: () => H_e,
      indent: () => jw,
      isBackgroundProject: () => o8,
      isConfigFile: () => mfe,
      isConfiguredProject: () => $0,
      isDynamicFileName: () => pP,
      isExternalProject: () => s8,
      isInferredProject: () => Xk,
      isInferredProjectName: () => I_e,
      isProjectDeferredClose: () => c8,
      makeAutoImportProviderProjectName: () => F_e,
      makeAuxiliaryProjectName: () => L_e,
      makeInferredProjectName: () => O_e,
      maxFileSize: () => LH,
      maxProgramSizeForNonTsFiles: () => FH,
      normalizedPathToPath: () => kE,
      nowString: () => a2e,
      nullCancellationToken: () => wPe,
      nullTypingsInstaller: () => pM,
      protocol: () => B_e,
      scriptInfoIsContainedByBackgroundProject: () => U_e,
      scriptInfoIsContainedByDeferredClosedProject: () => V_e,
      stringifyIndented: () => jv,
      toEvent: () => bfe,
      toNormalizedPath: () => ho,
      tryConvertScriptKindName: () => qH,
      typingsInstaller: () => w_e,
      updateProjectIfDirty: () => nd
    }), typeof console < "u" && (E.loggingHost = { log(e, t) {
      switch (e) {
        case 1:
          return console.error(t);
        case 2:
          return console.warn(t);
        case 3:
          return console.log(t);
        case 4:
          return console.log(t);
      }
    } });
  })({
    get exports() {
      return Qa;
    },
    set exports(ao) {
      Qa = ao, typeof qi < "u" && qi.exports && (qi.exports = ao);
    }
  });
}));
export {
  lpt as t
};

//# sourceMappingURL=typescript-B4pQAfB4.js.map