UNPKG

imba

Version:

Intuitive and powerful language for building webapps that fly

15,741 lines 874 kB
var imbac = (() => {
  var __defProp = Object.defineProperty;
  var __export = (target, all) => {
    for (var name in all)
      __defProp(target, name, {get: all[name], enumerable: true});
  };
  var stdin_exports = {};
  __export(stdin_exports, {
    default: () => stdin_default
  });
  var z3 = Object.create;
  var d1 = Object.defineProperty;
  var U3 = Object.getPrototypeOf;
  var Y3 = Object.prototype.hasOwnProperty;
  var K3 = Object.getOwnPropertyNames;
  var q3 = Object.getOwnPropertyDescriptor;
  var Hi = (t) => d1(t, "__esModule", {value: true});
  var er = (t, e) => () => (e || (e = {exports: {}}, t(e.exports, e)), e.exports);
  var Fi = (t, e) => {
    for (var r in e)
      d1(t, r, {get: e[r], enumerable: true});
  };
  var fn = (t, e, r) => {
    if (e && typeof e == "object" || typeof e == "function")
      for (let i of K3(e))
        !Y3.call(t, i) && i !== "default" && d1(t, i, {get: () => e[i], enumerable: !(r = q3(e, i)) || r.enumerable});
    return t;
  };
  var Ou = (t) => fn(Hi(d1(t != null ? z3(U3(t)) : {}, "default", t && t.__esModule && "default" in t ? {get: () => t.default, enumerable: true} : {value: t, enumerable: true})), t);
  var ta = er((or) => {
    var zi = {}, Ts = or.TOK = {}, Y_ = Ts.TERMINATOR = 1, K_ = Ts.IDENTIFIER = Ts.IVAR = 2, q_ = Ts.CONST = 3, X_ = Ts.VAR = 4, W_ = Ts.IF = 5, J_ = Ts.ELSE = 6, Z_ = Ts.DEF = 7;
    function Je(t, e, r, i) {
      return this._type = t, this._value = e, this._loc = r != null ? r : -1, this._len = i != null ? i : this._value.length, this._meta = null, this.generated = false, this.newLine = false, this.spaced = false, this.call = false, this;
    }
    or.Token = Je;
    Je.prototype.type = function() {
      return this._type;
    };
    Je.prototype.value = function() {
      return this._value;
    };
    Je.prototype.traverse = function() {
    };
    Je.prototype.c = function() {
      return "" + this._value;
    };
    Je.prototype.prepend = function(t) {
      return this._value = t + this._value, this;
    };
    Je.prototype.toString = function() {
      return this._value;
    };
    Je.prototype.charAt = function(t) {
      return this._value.charAt(t);
    };
    Je.prototype.slice = function(t) {
      return this._value.slice(t);
    };
    Je.prototype.cloneSlice = function(t, e) {
      return new Je(e || this._type, this.slice(t), this._loc + t, this._len - t);
    };
    Je.prototype.region = function() {
      return [this._loc, this._loc + this._len];
    };
    Je.prototype.startLoc = function() {
      return this._loc;
    };
    Je.prototype.endLoc = function() {
      return this._loc + this._len;
    };
    Je.prototype.loc = function() {
      return [this._loc, this.endLoc()];
    };
    or.lex = zi.lex = function() {
      var t = this.tokens[this.pos++], e;
      return t ? (e = t._type, this.yytext = t) : e = "", e;
    };
    or.token = zi.token = function(t, e) {
      return new Je(t, e, -1, 0);
    };
    or.typ = zi.typ = function(t) {
      return t._type;
    };
    or.val = zi.val = function(t) {
      return t._value;
    };
    or.line = zi.line = function(t) {
      return t._line;
    };
    or.loc = zi.loc = function(t) {
      return t._loc;
    };
    or.setTyp = zi.setTyp = function(t, e) {
      return t._type = e;
    };
    or.setVal = zi.setVal = function(t, e) {
      return t._value = e;
    };
    or.setLine = zi.setLine = function(t, e) {
      return t._line = e;
    };
    or.setLoc = zi.setLoc = function(t, e) {
      return t._loc = e;
    };
    var X3 = or.LBRACKET = new Je("{", "{", 0, 0, 0), W3 = or.RBRACKET = new Je("}", "}", 0, 0, 0), J3 = or.LPAREN = new Je("(", "(", 0, 0, 0), Z3 = or.RPAREN = new Je(")", ")", 0, 0, 0);
    X3.generated = true;
    W3.generated = true;
    J3.generated = true;
    Z3.generated = true;
    var Q_ = or.INDENT = new Je("INDENT", "2", 0, 0, 0), $_ = or.OUTDENT = new Je("OUTDENT", "2", 0, 0, 0);
  });
  var Cu = er((exports, module) => {
    (function() {
      "use strict";
      var root = typeof window == "object" ? window : {}, NODE_JS = !root.JS_SHA1_NO_NODE_JS && typeof process == "object" && process.versions && process.versions.node;
      NODE_JS && (root = global);
      var COMMON_JS = !root.JS_SHA1_NO_COMMON_JS && typeof module == "object" && module.exports, AMD = typeof define == "function" && define.amd, HEX_CHARS = "0123456789abcdef".split(""), EXTRA = [-2147483648, 8388608, 32768, 128], SHIFT = [24, 16, 8, 0], OUTPUT_TYPES = ["hex", "array", "digest", "arrayBuffer"], blocks = [], createOutputMethod = function(t) {
        return function(e) {
          return new Sha1(true).update(e)[t]();
        };
      }, createMethod = function() {
        var t = createOutputMethod("hex");
        t.create = function() {
          return new Sha1();
        }, t.update = function(i) {
          return t.create().update(i);
        };
        for (var e = 0; e < OUTPUT_TYPES.length; ++e) {
          var r = OUTPUT_TYPES[e];
          t[r] = createOutputMethod(r);
        }
        return t;
      }, nodeWrap = function(method) {
        var crypto = eval("require('crypto')"), Buffer = eval("require('buffer').Buffer"), nodeMethod = function(t) {
          if (typeof t == "string")
            return crypto.createHash("sha1").update(t, "utf8").digest("hex");
          if (t.constructor === ArrayBuffer)
            t = new Uint8Array(t);
          else if (t.length === void 0)
            return method(t);
          return crypto.createHash("sha1").update(new Buffer(t)).digest("hex");
        };
        return nodeMethod;
      };
      function Sha1(t) {
        t ? (blocks[0] = blocks[16] = blocks[1] = blocks[2] = blocks[3] = blocks[4] = blocks[5] = blocks[6] = blocks[7] = blocks[8] = blocks[9] = blocks[10] = blocks[11] = blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0, this.blocks = blocks) : this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], this.h0 = 1732584193, this.h1 = 4023233417, this.h2 = 2562383102, this.h3 = 271733878, this.h4 = 3285377520, this.block = this.start = this.bytes = this.hBytes = 0, this.finalized = this.hashed = false, this.first = true;
      }
      Sha1.prototype.update = function(t) {
        if (!this.finalized) {
          var e = typeof t != "string";
          e && t.constructor === root.ArrayBuffer && (t = new Uint8Array(t));
          for (var r, i = 0, s, n = t.length || 0, o = this.blocks; i < n; ) {
            if (this.hashed && (this.hashed = false, o[0] = this.block, o[16] = o[1] = o[2] = o[3] = o[4] = o[5] = o[6] = o[7] = o[8] = o[9] = o[10] = o[11] = o[12] = o[13] = o[14] = o[15] = 0), e)
              for (s = this.start; i < n && s < 64; ++i)
                o[s >> 2] |= t[i] << SHIFT[s++ & 3];
            else
              for (s = this.start; i < n && s < 64; ++i)
                r = t.charCodeAt(i), r < 128 ? o[s >> 2] |= r << SHIFT[s++ & 3] : r < 2048 ? (o[s >> 2] |= (192 | r >> 6) << SHIFT[s++ & 3], o[s >> 2] |= (128 | r & 63) << SHIFT[s++ & 3]) : r < 55296 || r >= 57344 ? (o[s >> 2] |= (224 | r >> 12) << SHIFT[s++ & 3], o[s >> 2] |= (128 | r >> 6 & 63) << SHIFT[s++ & 3], o[s >> 2] |= (128 | r & 63) << SHIFT[s++ & 3]) : (r = 65536 + ((r & 1023) << 10 | t.charCodeAt(++i) & 1023), o[s >> 2] |= (240 | r >> 18) << SHIFT[s++ & 3], o[s >> 2] |= (128 | r >> 12 & 63) << SHIFT[s++ & 3], o[s >> 2] |= (128 | r >> 6 & 63) << SHIFT[s++ & 3], o[s >> 2] |= (128 | r & 63) << SHIFT[s++ & 3]);
            this.lastByteIndex = s, this.bytes += s - this.start, s >= 64 ? (this.block = o[16], this.start = s - 64, this.hash(), this.hashed = true) : this.start = s;
          }
          return this.bytes > 4294967295 && (this.hBytes += this.bytes / 4294967296 << 0, this.bytes = this.bytes % 4294967296), this;
        }
      }, Sha1.prototype.finalize = function() {
        if (!this.finalized) {
          this.finalized = true;
          var t = this.blocks, e = this.lastByteIndex;
          t[16] = this.block, t[e >> 2] |= EXTRA[e & 3], this.block = t[16], e >= 56 && (this.hashed || this.hash(), t[0] = this.block, t[16] = t[1] = t[2] = t[3] = t[4] = t[5] = t[6] = t[7] = t[8] = t[9] = t[10] = t[11] = t[12] = t[13] = t[14] = t[15] = 0), t[14] = this.hBytes << 3 | this.bytes >>> 29, t[15] = this.bytes << 3, this.hash();
        }
      }, Sha1.prototype.hash = function() {
        var t = this.h0, e = this.h1, r = this.h2, i = this.h3, s = this.h4, n, o, a, l = this.blocks;
        for (o = 16; o < 80; ++o)
          a = l[o - 3] ^ l[o - 8] ^ l[o - 14] ^ l[o - 16], l[o] = a << 1 | a >>> 31;
        for (o = 0; o < 20; o += 5)
          n = e & r | ~e & i, a = t << 5 | t >>> 27, s = a + n + s + 1518500249 + l[o] << 0, e = e << 30 | e >>> 2, n = t & e | ~t & r, a = s << 5 | s >>> 27, i = a + n + i + 1518500249 + l[o + 1] << 0, t = t << 30 | t >>> 2, n = s & t | ~s & e, a = i << 5 | i >>> 27, r = a + n + r + 1518500249 + l[o + 2] << 0, s = s << 30 | s >>> 2, n = i & s | ~i & t, a = r << 5 | r >>> 27, e = a + n + e + 1518500249 + l[o + 3] << 0, i = i << 30 | i >>> 2, n = r & i | ~r & s, a = e << 5 | e >>> 27, t = a + n + t + 1518500249 + l[o + 4] << 0, r = r << 30 | r >>> 2;
        for (; o < 40; o += 5)
          n = e ^ r ^ i, a = t << 5 | t >>> 27, s = a + n + s + 1859775393 + l[o] << 0, e = e << 30 | e >>> 2, n = t ^ e ^ r, a = s << 5 | s >>> 27, i = a + n + i + 1859775393 + l[o + 1] << 0, t = t << 30 | t >>> 2, n = s ^ t ^ e, a = i << 5 | i >>> 27, r = a + n + r + 1859775393 + l[o + 2] << 0, s = s << 30 | s >>> 2, n = i ^ s ^ t, a = r << 5 | r >>> 27, e = a + n + e + 1859775393 + l[o + 3] << 0, i = i << 30 | i >>> 2, n = r ^ i ^ s, a = e << 5 | e >>> 27, t = a + n + t + 1859775393 + l[o + 4] << 0, r = r << 30 | r >>> 2;
        for (; o < 60; o += 5)
          n = e & r | e & i | r & i, a = t << 5 | t >>> 27, s = a + n + s - 1894007588 + l[o] << 0, e = e << 30 | e >>> 2, n = t & e | t & r | e & r, a = s << 5 | s >>> 27, i = a + n + i - 1894007588 + l[o + 1] << 0, t = t << 30 | t >>> 2, n = s & t | s & e | t & e, a = i << 5 | i >>> 27, r = a + n + r - 1894007588 + l[o + 2] << 0, s = s << 30 | s >>> 2, n = i & s | i & t | s & t, a = r << 5 | r >>> 27, e = a + n + e - 1894007588 + l[o + 3] << 0, i = i << 30 | i >>> 2, n = r & i | r & s | i & s, a = e << 5 | e >>> 27, t = a + n + t - 1894007588 + l[o + 4] << 0, r = r << 30 | r >>> 2;
        for (; o < 80; o += 5)
          n = e ^ r ^ i, a = t << 5 | t >>> 27, s = a + n + s - 899497514 + l[o] << 0, e = e << 30 | e >>> 2, n = t ^ e ^ r, a = s << 5 | s >>> 27, i = a + n + i - 899497514 + l[o + 1] << 0, t = t << 30 | t >>> 2, n = s ^ t ^ e, a = i << 5 | i >>> 27, r = a + n + r - 899497514 + l[o + 2] << 0, s = s << 30 | s >>> 2, n = i ^ s ^ t, a = r << 5 | r >>> 27, e = a + n + e - 899497514 + l[o + 3] << 0, i = i << 30 | i >>> 2, n = r ^ i ^ s, a = e << 5 | e >>> 27, t = a + n + t - 899497514 + l[o + 4] << 0, r = r << 30 | r >>> 2;
        this.h0 = this.h0 + t << 0, this.h1 = this.h1 + e << 0, this.h2 = this.h2 + r << 0, this.h3 = this.h3 + i << 0, this.h4 = this.h4 + s << 0;
      }, Sha1.prototype.hex = function() {
        this.finalize();
        var t = this.h0, e = this.h1, r = this.h2, i = this.h3, s = this.h4;
        return HEX_CHARS[t >> 28 & 15] + HEX_CHARS[t >> 24 & 15] + HEX_CHARS[t >> 20 & 15] + HEX_CHARS[t >> 16 & 15] + HEX_CHARS[t >> 12 & 15] + HEX_CHARS[t >> 8 & 15] + HEX_CHARS[t >> 4 & 15] + HEX_CHARS[t & 15] + HEX_CHARS[e >> 28 & 15] + HEX_CHARS[e >> 24 & 15] + HEX_CHARS[e >> 20 & 15] + HEX_CHARS[e >> 16 & 15] + HEX_CHARS[e >> 12 & 15] + HEX_CHARS[e >> 8 & 15] + HEX_CHARS[e >> 4 & 15] + HEX_CHARS[e & 15] + HEX_CHARS[r >> 28 & 15] + HEX_CHARS[r >> 24 & 15] + HEX_CHARS[r >> 20 & 15] + HEX_CHARS[r >> 16 & 15] + HEX_CHARS[r >> 12 & 15] + HEX_CHARS[r >> 8 & 15] + HEX_CHARS[r >> 4 & 15] + HEX_CHARS[r & 15] + HEX_CHARS[i >> 28 & 15] + HEX_CHARS[i >> 24 & 15] + HEX_CHARS[i >> 20 & 15] + HEX_CHARS[i >> 16 & 15] + HEX_CHARS[i >> 12 & 15] + HEX_CHARS[i >> 8 & 15] + HEX_CHARS[i >> 4 & 15] + HEX_CHARS[i & 15] + HEX_CHARS[s >> 28 & 15] + HEX_CHARS[s >> 24 & 15] + HEX_CHARS[s >> 20 & 15] + HEX_CHARS[s >> 16 & 15] + HEX_CHARS[s >> 12 & 15] + HEX_CHARS[s >> 8 & 15] + HEX_CHARS[s >> 4 & 15] + HEX_CHARS[s & 15];
      }, Sha1.prototype.toString = Sha1.prototype.hex, Sha1.prototype.digest = function() {
        this.finalize();
        var t = this.h0, e = this.h1, r = this.h2, i = this.h3, s = this.h4;
        return [t >> 24 & 255, t >> 16 & 255, t >> 8 & 255, t & 255, e >> 24 & 255, e >> 16 & 255, e >> 8 & 255, e & 255, r >> 24 & 255, r >> 16 & 255, r >> 8 & 255, r & 255, i >> 24 & 255, i >> 16 & 255, i >> 8 & 255, i & 255, s >> 24 & 255, s >> 16 & 255, s >> 8 & 255, s & 255];
      };
      var alphabet = "0123456789abcdefghjkmnpqrtuvwxyz", alias = {o: 0, i: 1, l: 1, s: 5};
      Sha1.prototype.b32 = function() {
        for (var t = this.digest(), e = 0, r = 0, i = "", s = 0; s < t.length; ) {
          var n = t[s];
          if (e < 0 ? r |= n >> -e : r = n << e & 248, e > 3) {
            e -= 8, s += 1;
            continue;
          }
          e < 4 && (i += alphabet[r >> 3], e += 5);
        }
        return i = i + (e < 0 ? alphabet[r >> 3] : ""), i;
      }, Sha1.prototype.array = Sha1.prototype.digest, Sha1.prototype.arrayBuffer = function() {
        this.finalize();
        var t = new ArrayBuffer(20), e = new DataView(t);
        return e.setUint32(0, this.h0), e.setUint32(4, this.h1), e.setUint32(8, this.h2), e.setUint32(12, this.h3), e.setUint32(16, this.h4), t;
      };
      var exports = createMethod();
      COMMON_JS ? module.exports = exports : (root.sha1 = exports, AMD && define(function() {
        return exports;
      }));
    })();
  });
  var J2 = er((Q3) => {
    Hi(Q3);
    Fi(Q3, {InternalPrefixes: () => Lu, ReservedIdentifierRegex: () => $3, ReservedPrefixes: () => Du, ToImbaMap: () => Mu, ToJSMap: () => Fu, toCustomTagIdentifier: () => of, toImbaIdentifier: () => nf, toJSIdentifier: () => Pu});
    var Lu = {TAG: "\u03C4", FLIP: "\u03C9", VALUE: "\u03C5", CACHE: "\u03F2", KEY: "\u03BA", ANY: "\u03C6", SYM: "\u03B5", SEP: "\u03B9", PRIVATE: "\u03A8", B: "\u03B9", T: "\u03C4", C: "\u03C1", V: "\u03C5", K: "\u03BA", D: "\u0394", H: "\u03B8", EXTEND: "\u03A9"}, Du = new Set(Object.values(Lu)), $3 = new RegExp("^[" + Array.from(Du).join("") + "]", "u"), Fu = {"-": "\u039E", "?": "\u03A6", "#": "\u03A8", "@": "\u03B1"}, tf = new RegExp("[-?#@]", "gu"), ef = function(t) {
      return Fu[t];
    };
    function Pu(t) {
      return t.replace(tf, ef);
    }
    var Mu = {\u039E: "-", \u03A6: "?", \u03A8: "#", \u03B1: "@"}, rf = new RegExp("[\u039E\u03A6\u03A8\u03B1]", "gu"), sf = function(t) {
      return Mu[t];
    };
    function nf(t) {
      return t.replace(rf, sf);
    }
    function of(t) {
      return "\u0393" + Pu(t);
    }
  });
  var lo = er((Ee) => {
    function Z2(t) {
      return t ? t.toArray ? t.toArray() : t : [];
    }
    var ge = {}, af = Cu(), lf = {reset: [0, 0], bold: [1, 22], dim: [2, 22], italic: [3, 23], underline: [4, 24], inverse: [7, 27], hidden: [8, 28], strikethrough: [9, 29], black: [30, 39], red: [31, 39], green: [32, 39], yellow: [33, 39], blue: [34, 39], magenta: [35, 39], cyan: [36, 39], white: [37, 39], gray: [90, 39], redBright: [91, 39], greenBright: [92, 39], yellowBright: [93, 39], blueBright: [94, 39], magentaBright: [95, 39], cyanBright: [96, 39], whiteBright: [97, 39]}, ao = Ee.ansi = {bold: function(t) {
      return "" + t + "";
    }, red: function(t) {
      return "" + t + "";
    }, green: function(t) {
      return "" + t + "";
    }, yellow: function(t) {
      return "" + t + "";
    }, blue: function(t) {
      return "" + t + "";
    }, gray: function(t) {
      return "" + t + "";
    }, white: function(t) {
      return "" + t + "";
    }, f: function(t, e) {
      let r = lf[t];
      return "[" + r[0] + "m" + e + "[" + r[1] + "m";
    }};
    ao.warn = ao.yellow;
    ao.error = ao.red;
    var Vu = J2(), cf = Vu.toImbaIdentifier, uf = Vu.toJSIdentifier, hf = "\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9";
    Ee.brace = ge.brace = function(t) {
      var e = t.match(/\n/);
      return e ? "{" + t + `
}` : `{
` + t + `
}`;
    };
    Ee.normalizeIndentation = ge.normalizeIndentation = function(t) {
      for (var e, r = /\n+([^\n\S]*)/g, i = null, s; e = r.exec(t); ) {
        var n = e[1];
        (i === null || 0 < (s = n.length) && s < i.length) && (i = n);
      }
      return i && (t = t.replace(RegExp("\\n" + i, "g"), `
`)), t;
    };
    Ee.flatten = ge.flatten = function(t) {
      var e = [];
      return t.forEach(function(r) {
        return r instanceof Array ? e.push.apply(e, ge.flatten(r)) : e.push(r);
      }), e;
    };
    Ee.clearLocationMarkers = ge.clearLocationMarkers = function(t) {
      return t.replace(/\/\*\%([\w\|]*)\$\*\//g, "");
    };
    Ee.pascalCase = ge.pascalCase = function(t) {
      return t.replace(/(^|[\-\_\s])(\w)/g, function(e, r, i) {
        return i.toUpperCase();
      });
    };
    Ee.camelCase = ge.camelCase = function(t) {
      return t = String(t), t.replace(/([\-\_\s])(\w)/g, function(e, r, i) {
        return i.toUpperCase();
      });
    };
    Ee.dashToCamelCase = ge.dashToCamelCase = function(t) {
      return t = String(t), t.indexOf("-") >= 0 && (t = t.replace(/([\-\s])(\w)/g, function(e, r, i) {
        return i.toUpperCase();
      })), t;
    };
    Ee.snakeCase = ge.snakeCase = function(t) {
      var t = t.replace(/([\-\s])(\w)/g, "_");
      return t.replace(/()([A-Z])/g, "_$1", function(e, r, i) {
        return i.toUpperCase();
      });
    };
    Ee.dasherize = ge.dasherize = function(t) {
      return t.replace(/([a-z\d])([A-Z])/g, "$1-$2").toLowerCase();
    };
    Ee.setterSym = ge.setterSym = function(t) {
      return ge.dashToCamelCase("set-" + t);
    };
    Ee.quote = ge.quote = function(t) {
      return '"' + t + '"';
    };
    Ee.singlequote = ge.singlequote = function(t) {
      return "'" + t + "'";
    };
    Ee.isValidIdentifier = ge.isValidIdentifier = function(t) {
      return !/[?-\s]/.test(t) && t[0] != "#";
    };
    Ee.toValidIdentifier = ge.toValidIdentifier = function(t) {
      return uf(t);
    };
    Ee.fromValidIdentifier = ge.fromValidIdentifier = function(t) {
      return cf(t);
    };
    Ee.isSystemIdentifier = ge.isSystemIdentifier = function(t) {
      return hf.indexOf(t[0]) >= 0;
    };
    Ee.symbolize = ge.symbolize = function(t, e) {
      return t = String(t), ge.toValidIdentifier(t);
      return e && e.tsc(), t;
      var r = t.charAt(t.length - 1);
      return r == "?" && (t = "is" + t[0].toUpperCase() + t.slice(1, -1)), t.indexOf("-") >= 0 && (t = t.replace(/([\-\s])(\w)/g, function(i, s, n) {
        return n.toUpperCase();
      })), t;
    };
    Ee.indent = ge.indent = function(t) {
      return String(t).replace(/^/g, "	").replace(/\n/g, `
	`).replace(/\n\t$/g, `
`);
    };
    Ee.bracketize = ge.bracketize = function(t, e) {
      return e === void 0 && (e = true), e && (t = `
` + ge.indent(t) + `
`), "{" + t + "}";
    };
    Ee.parenthesize = ge.parenthesize = function(t) {
      return "(" + String(t) + ")";
    };
    Ee.unionOfLocations = ge.unionOfLocations = function() {
      for (var t = arguments, e = t.length, r = new Array(e > 0 ? e : 0); e > 0; )
        r[e - 1] = t[--e];
      var i = Infinity, s = -Infinity;
      for (let n = 0, o = Z2(r), a = o.length, l; n < a; n++)
        l = o[n], l && l._loc != null && (l = l._loc), l && l.loc instanceof Function && (l = l.loc()), l instanceof Array ? (i > l[0] && (i = l[0]), s < l[0] && (s = l[1])) : (typeof l == "number" || l instanceof Number) && (i > l && (i = l), s < l && (s = l));
      return [i, s];
    };
    Ee.locationToLineColMap = ge.locationToLineColMap = function(t) {
      for (var e = t.split(/\n/g), r = [], i, s = 0, n = 0, o = 0; i = t[s]; )
        r[s] = [o, n], i == `
` ? (o++, n = 0) : n++, s++;
      return r[s] = [o, n], r[s + 1] = [o, n], r;
    };
    Ee.markLineColForTokens = ge.markLineColForTokens = function(t, e) {
      return ge;
    };
    Ee.parseArgs = ge.parseArgs = function(t, e) {
      var r;
      e === void 0 && (e = {});
      var i = e.alias || (e.alias = {}), s = e.group || (e.group = []), n = e.schema || {};
      n.main = {};
      var o = {}, a = {};
      t = t || process.argv.slice(2);
      for (var l = null, p = 0, c; p < t.length; ) {
        var _ = t[p];
        if (p++, c = _.match(/^\-([a-zA-Z]+)(\=\S+)?$/)) {
          l = null;
          let b = c[1].split("");
          for (let N = 0, y = Z2(b), v = y.length, d; N < v; N++) {
            d = y[N];
            var f = i[d] || d;
            b[N] = f, o[f] = true;
          }
          b.length == 1 && (l = b);
          continue;
        } else if (c = _.match(/^\-\-([a-z0-9\-\_A-Z]+)(\=\S+)?$/)) {
          var m = true;
          f = c[1], f.indexOf("no-") == 0 && (f = f.substr(3), m = false), f = ge.dashToCamelCase(f), c[2] && (m = c[2].slice(1)), o[f] = m, l = f;
          continue;
        } else {
          var g = n[l];
          l && n[l] || (l = "main"), _.match(/^\d+$/) && (_ = parseInt(_)), m = o[l], m == true || m == false ? o[l] = _ : typeof m == "string" || m instanceof String || typeof m == "number" || m instanceof Number ? o[l] = [m].concat(_) : m instanceof Array ? m.push(_) : o[l] = _, g && g.multi || (l = "main");
        }
      }
      for (let b = 0, N = Z2(s), y = N.length; b < y; b++) {
        let v = ge.dashToCamelCase(N[b]);
        for (let d, w = 0, k = Object.keys(o), T = k.length, S; w < T; w++)
          if (S = k[w], d = o[S], S.indexOf(v) == 0) {
            let C = S.substr(v.length).replace(/^\w/, function(L) {
              return L.toLowerCase();
            });
            C ? (o[v] || (o[v] = {}), o[v][C] = d) : o[v] || (o[v] = {});
          }
      }
      return (typeof (r = o.env) == "string" || r instanceof String) && (o["ENV_" + o.env] = true), o;
    };
    Ee.printExcerpt = ge.printExcerpt = function(t, e, r) {
      (!r || r.constructor !== Object) && (r = {});
      var i = r.hl !== void 0 ? r.hl : false, s = r.gutter !== void 0 ? r.gutter : true, n = r.type !== void 0 ? r.type : "warn", o = r.pad !== void 0 ? r.pad : 2, a = t.split(/\n/g), l = ge.locationToLineColMap(t), p = l[e[0]] || [0, 0], c = p[0], _ = p[1], f = a[c], m = Math.max(0, c - o), g = Math.min(m + o + 1 + o, a.length);
      let b = c - m;
      for (var N = m, y = []; N < g; )
        y.push(a[N++]);
      var v = y;
      return s && (v = v.map(function(w, k) {
        let T = "" + (m + k + 1), S;
        for (; T.length < String(g).length; )
          T = " " + T;
        return k == b ? (S = "   -> " + T + " | " + w, i && (S = ao.f(i, S))) : (S = "      " + T + " | " + w, i && (S = ao.f("gray", S))), S;
      })), v.join(`
`);
    };
    Ee.printWarning = ge.printWarning = function(t, e) {
      let r = e.message, i = ge.printExcerpt(t, e.loc, {hl: "whiteBright", type: "warn", pad: 1});
      return r + `
` + i;
    };
    Ee.identifierForPath = ge.identifierForPath = function(t) {
      var e = af.create();
      e.update(t);
      var r = e.b32().replace(/^\d+/, "");
      return r.slice(0, 6);
    };
  });
  var v1 = er((Si) => {
    function pf(t) {
      return t ? t.toArray ? t.toArray() : t : [];
    }
    var Q2 = Si.BALANCED_PAIRS = [["(", ")"], ["[", "]"], ["{", "}"], ["{{", "}}"], ["INDENT", "OUTDENT"], ["CALL_START", "CALL_END"], ["PARAM_START", "PARAM_END"], ["INDEX_START", "INDEX_END"], ["TAG_START", "TAG_END"], ["STYLE_START", "STYLE_END"], ["BLOCK_PARAM_START", "BLOCK_PARAM_END"]], ju = Si.INVERSES = {};
    for (let t = 0, e = Q2.length, r; t < e; t++)
      r = Q2[t], m1 = r[0], y1 = r[1], ju[y1] = m1, ju[m1] = y1, Q2[m1] = y1;
    var m1, y1, id = Si.ALL_KEYWORDS = ["true", "false", "null", "this", "delete", "typeof", "in", "instanceof", "throw", "break", "continue", "debugger", "if", "else", "switch", "for", "while", "do", "try", "catch", "finally", "class", "extends", "super", "return", "undefined", "then", "unless", "until", "loop", "of", "by", "when", "def", "tag", "do", "elif", "begin", "var", "let", "self", "await", "import", "and", "or", "is", "isnt", "not", "yes", "no", "isa", "case", "nil", "require"], sd = Si.TOK = {TERMINATOR: "TERMINATOR", INDENT: "INDENT", OUTDENT: "OUTDENT", DEF_BODY: "DEF_BODY", THEN: "THEN", CATCH: "CATCH"}, nd = Si.OPERATOR_ALIASES = {and: "&&", or: "||", is: "==", isnt: "!=", isa: "instanceof"}, od = Si.HEREGEX_OMIT = /\s+(?:#.*)?/g, ad = Si.HEREGEX = /^\/{3}([\s\S]+?)\/{3}([a-z]{0,8})(?!\w)/, ld = Si.TAG_GLOBAL_ATTRIBUTES = {itemid: 1, itemprop: 1, itemref: 1, itemscope: 1, itemtype: 1, enterkeyhint: 1, autofocus: 1, autocapitalize: 1, autocomplete: 1, accesskey: 1, inputmode: 1, spellcheck: 1, translate: 1, is: 1}, cd = Si.SYSVAR_PREFIX = {TAG: "\u03C4", FLIP: "\u03C9", VALUE: "\u03C5", CACHE: "\u03C1", KEY: "\u03BA", ANY: "\u03C6", B: "\u0398", T: "\u03C4", C: "\u03C1", V: "\u03C5", K: "\u03BA", D: "\u0394"}, g1 = Si.TAG_TYPES = {"": [-1, {id: 1, className: "class", slot: 1, part: 1, elementTiming: "elementtiming"}], HTML: [-1, {title: 1, lang: 1, translate: 1, dir: 1, accessKey: "accesskey", draggable: 1, spellcheck: 1, autocapitalize: 1, inputMode: "inputmode", style: 1, tabIndex: "tabindex", enterKeyHint: "enterkeyhint"}], HTMLAnchor: [1, {target: 1, download: 1, ping: 1, rel: 1, relList: "rel", hreflang: 1, type: 1, referrerPolicy: "referrerpolicy", coords: 1, charset: 1, name: 1, rev: 1, shape: 1, href: 1}], HTMLArea: [1, {alt: 1, coords: 1, download: 1, shape: 1, target: 1, ping: 1, rel: 1, relList: "rel", referrerPolicy: "referrerpolicy", href: 1}], HTMLMedia: [1, {src: 1, crossOrigin: "crossorigin", preload: 1, controlsList: "controlslist"}], HTMLAudio: [4, {}], HTMLBase: [1, {href: 1, target: 1}], HTMLQuote: [1, {cite: 1}], HTMLBody: [1, {text: 1, link: 1, vLink: "vlink", aLink: "alink", bgColor: "bgcolor", background: 1}], HTMLBR: [1, {clear: 1}], HTMLButton: [1, {formAction: "formaction", formEnctype: "formenctype", formMethod: "formmethod", formTarget: "formtarget", name: 1, type: 1, value: 1}], HTMLCanvas: [1, {width: 1, height: 1}], HTMLTableCaption: [1, {align: 1}], HTMLTableCol: [1, {span: 1, align: 1, ch: "char", chOff: "charoff", vAlign: "valign", width: 1}], HTMLData: [1, {value: 1}], HTMLDataList: [1, {}], HTMLMod: [1, {cite: 1, dateTime: "datetime"}], HTMLDetails: [1, {}], HTMLDialog: [1, {}], HTMLDiv: [1, {align: 1}], HTMLDList: [1, {}], HTMLEmbed: [1, {src: 1, type: 1, width: 1, height: 1, align: 1, name: 1}], HTMLFieldSet: [1, {name: 1}], HTMLForm: [1, {acceptCharset: "accept-charset", action: 1, autocomplete: 1, enctype: 1, encoding: "enctype", method: 1, name: 1, target: 1}], HTMLHeading: [1, {align: 1}], HTMLHead: [1, {}], HTMLHR: [1, {align: 1, color: 1, size: 1, width: 1}], HTMLHtml: [1, {version: 1}], HTMLIFrame: [1, {src: 1, srcdoc: 1, name: 1, sandbox: 1, width: 1, height: 1, referrerPolicy: "referrerpolicy", csp: 1, allow: 1, align: 1, scrolling: 1, frameBorder: "frameborder", longDesc: "longdesc", marginHeight: "marginheight", marginWidth: "marginwidth", loading: 1}], HTMLImage: [1, {alt: 1, src: 1, srcset: 1, sizes: 1, crossOrigin: "crossorigin", useMap: "usemap", width: 1, height: 1, referrerPolicy: "referrerpolicy", decoding: 1, name: 1, lowsrc: 1, align: 1, hspace: 1, vspace: 1, longDesc: "longdesc", border: 1, loading: 1}], HTMLInput: [1, {accept: 1, alt: 1, autocomplete: 1, dirName: "dirname", formAction: "formaction", formEnctype: "formenctype", formMethod: "formmethod", formTarget: "formtarget", height: 1, max: 1, maxLength: "maxlength", min: 1, minLength: "minlength", name: 1, pattern: 1, placeholder: 1, src: 1, step: 1, type: 1, defaultValue: "value", width: 1, align: 1, useMap: "usemap"}], HTMLLabel: [1, {htmlFor: "for"}], HTMLLegend: [1, {align: 1}], HTMLLI: [1, {value: 1, type: 1}], HTMLLink: [1, {href: 1, crossOrigin: "crossorigin", rel: 1, relList: "rel", media: 1, hreflang: 1, type: 1, as: 1, referrerPolicy: "referrerpolicy", sizes: 1, imageSrcset: "imagesrcset", imageSizes: "imagesizes", charset: 1, rev: 1, target: 1, integrity: 1}], HTMLMap: [1, {name: 1}], HTMLMenu: [1, {}], HTMLMeta: [1, {name: 1, httpEquiv: "http-equiv", content: 1, scheme: 1}], HTMLMeter: [1, {value: 1, min: 1, max: 1, low: 1, high: 1, optimum: 1}], HTMLObject: [1, {data: 1, type: 1, name: 1, useMap: "usemap", width: 1, height: 1, align: 1, archive: 1, code: 1, hspace: 1, standby: 1, vspace: 1, codeBase: "codebase", codeType: "codetype", border: 1}], HTMLOList: [1, {start: 1, type: 1}], HTMLOptGroup: [1, {label: 1}], HTMLOption: [1, {label: 1, value: 1}], HTMLOutput: [1, {htmlFor: "for", name: 1}], HTMLParagraph: [1, {align: 1}], HTMLParam: [1, {name: 1, value: 1, type: 1, valueType: "valuetype"}], HTMLPicture: [1, {}], HTMLPre: [1, {width: 1}], HTMLProgress: [1, {value: 1, max: 1}], HTMLScript: [1, {src: 1, type: 1, charset: 1, crossOrigin: "crossorigin", referrerPolicy: "referrerpolicy", event: 1, htmlFor: "for", integrity: 1}], HTMLSelect: [1, {autocomplete: 1, name: 1, size: 1}], HTMLSlot: [1, {name: 1}], HTMLSource: [1, {src: 1, type: 1, srcset: 1, sizes: 1, media: 1}], HTMLSpan: [1, {}], HTMLStyle: [1, {media: 1, type: 1}], HTMLTable: [1, {align: 1, border: 1, frame: 1, rules: 1, summary: 1, width: 1, bgColor: "bgcolor", cellPadding: "cellpadding", cellSpacing: "cellspacing"}], HTMLTableSection: [1, {align: 1, ch: "char", chOff: "charoff", vAlign: "valign"}], HTMLTableCell: [1, {colSpan: "colspan", rowSpan: "rowspan", headers: 1, align: 1, axis: 1, height: 1, width: 1, ch: "char", chOff: "charoff", vAlign: "valign", bgColor: "bgcolor", abbr: 1, scope: 1}], HTMLTemplate: [1, {}], HTMLTextArea: [1, {autocomplete: 1, cols: 1, dirName: "dirname", maxLength: "maxlength", minLength: "minlength", name: 1, placeholder: 1, rows: 1, wrap: 1}], HTMLTime: [1, {dateTime: "datetime"}], HTMLTitle: [1, {}], HTMLTableRow: [1, {align: 1, ch: "char", chOff: "charoff", vAlign: "valign", bgColor: "bgcolor"}], HTMLTrack: [1, {kind: 1, src: 1, srclang: 1, label: 1}], HTMLUList: [1, {type: 1}], HTMLVideo: [4, {width: 1, height: 1, poster: 1}], SVG: [-1, {}], SVGGraphics: [66, {transform: 1}], SVGA: [67, {}], SVGAnimation: [66, {}], SVGAnimate: [69, {}], SVGAnimateMotion: [69, {}], SVGAnimateTransform: [69, {}], SVGGeometry: [67, {}], SVGCircle: [73, {cx: 1, cy: 1, r: 1}], SVGClipPath: [67, {clipPathUnits: 1}], SVGDefs: [67, {}], SVGDesc: [66, {}], SVGDiscard: [66, {}], SVGEllipse: [73, {cx: 1, cy: 1, rx: 1, ry: 1}], SVGFEBlend: [66, {mode: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEColorMatrix: [66, {type: 1, values: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEComponentTransfer: [66, {x: 1, y: 1, width: 1, height: 1}], SVGFEComposite: [66, {operator: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEConvolveMatrix: [66, {orderX: 1, orderY: 1, kernelMatrix: 1, divisor: 1, edgeMode: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEDiffuseLighting: [66, {surfaceScale: 1, diffuseConstant: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEDisplacementMap: [66, {xChannelSelector: 1, yChannelSelector: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEDistantLight: [66, {}], SVGFEDropShadow: [66, {dx: 1, dy: 1, stdDeviationX: 1, stdDeviationY: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEFlood: [66, {x: 1, y: 1, width: 1, height: 1}], SVGComponentTransferFunction: [66, {type: 1, tableValues: 1, slope: 1, amplitude: 1, exponent: 1}], SVGFEFuncA: [90, {}], SVGFEFuncB: [90, {}], SVGFEFuncG: [90, {}], SVGFEFuncR: [90, {}], SVGFEGaussianBlur: [66, {x: 1, y: 1, width: 1, height: 1}], SVGFEImage: [66, {preserveAspectRatio: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEMerge: [66, {x: 1, y: 1, width: 1, height: 1}], SVGFEMergeNode: [66, {}], SVGFEMorphology: [66, {operator: 1, x: 1, y: 1, width: 1, height: 1}], SVGFEOffset: [66, {x: 1, y: 1, width: 1, height: 1}], SVGFEPointLight: [66, {}], SVGFESpecularLighting: [66, {surfaceScale: 1, specularConstant: 1, specularExponent: 1, x: 1, y: 1, width: 1, height: 1}], SVGFESpotLight: [66, {specularExponent: 1}], SVGFETile: [66, {x: 1, y: 1, width: 1, height: 1}], SVGFETurbulence: [66, {numOctaves: 1, stitchTiles: 1, type: 1, x: 1, y: 1, width: 1, height: 1}], SVGFilter: [66, {filterUnits: 1, primitiveUnits: 1, x: 1, y: 1, width: 1, height: 1}], SVGForeignObject: [67, {x: 1, y: 1, width: 1, height: 1}], SVGG: [67, {}], SVGImage: [67, {x: 1, y: 1, width: 1, height: 1, preserveAspectRatio: 1}], SVGLine: [73, {x1: 1, y1: 1, x2: 1, y2: 1}], SVGGradient: [66, {gradientUnits: 1, gradientTransform: 1, spreadMethod: 1}], SVGLinearGradient: [111, {x1: 1, y1: 1, x2: 1, y2: 1}], SVGMarker: [66, {refX: 1, refY: 1, markerUnits: 1, markerWidth: 1, markerHeight: 1, orientType: 1, orientAngle: 1, viewBox: 1, preserveAspectRatio: 1}], SVGMask: [66, {maskUnits: 1, maskContentUnits: 1, x: 1, y: 1, width: 1, height: 1}], SVGMetadata: [66, {}], SVGMPath: [66, {}], SVGPath: [73, {}], SVGPattern: [66, {patternUnits: 1, patternContentUnits: 1, patternTransform: 1, x: 1, y: 1, width: 1, height: 1, viewBox: 1, preserveAspectRatio: 1}], SVGPolygon: [73, {}], SVGPolyline: [73, {}], SVGRadialGradient: [111, {cx: 1, cy: 1, r: 1, fx: 1, fy: 1, fr: 1}], SVGRect: [73, {x: 1, y: 1, width: 1, height: 1, rx: 1, ry: 1}], SVGScript: [66, {}], SVGSet: [69, {}], SVGStop: [66, {}], SVGStyle: [66, {}], SVGSVG: [67, {x: 1, y: 1, width: 1, height: 1, viewBox: 1, preserveAspectRatio: 1}], SVGSwitch: [67, {}], SVGSymbol: [66, {viewBox: 1, preserveAspectRatio: 1}], SVGTextContent: [67, {textLength: 1, lengthAdjust: 1}], SVGTextPositioning: [130, {x: 1, y: 1, dx: 1, dy: 1, rotate: 1}], SVGText: [131, {}], SVGTextPath: [130, {startOffset: 1, method: 1, spacing: 1}], SVGTitle: [66, {}], SVGTSpan: [131, {}], SVGUse: [67, {x: 1, y: 1, width: 1, height: 1}], SVGView: [66, {viewBox: 1, preserveAspectRatio: 1}]}, $2 = Si.TAG_NAMES = {a: 2, abbr: 1, address: 1, area: 3, article: 1, aside: 1, audio: 5, b: 1, base: 6, bdi: 1, bdo: 1, blockquote: 7, body: 8, br: 9, button: 10, canvas: 11, caption: 12, cite: 1, code: 1, col: 13, colgroup: 13, data: 14, datalist: 15, dd: 1, del: 16, details: 17, dfn: 1, dialog: 18, div: 19, dl: 20, dt: 1, em: 1, embed: 21, fieldset: 22, figcaption: 1, figure: 1, footer: 1, form: 23, h1: 24, h2: 24, h3: 24, h4: 24, h5: 24, h6: 24, head: 25, header: 1, hgroup: 1, hr: 26, html: 27, i: 1, iframe: 28, img: 29, input: 30, ins: 16, kbd: 1, label: 31, legend: 32, li: 33, link: 34, main: 1, map: 35, mark: 1, menu: 36, meta: 37, meter: 38, nav: 1, noscript: 1, object: 39, ol: 40, optgroup: 41, option: 42, output: 43, p: 44, param: 45, picture: 46, pre: 47, progress: 48, q: 7, rp: 1, rt: 1, ruby: 1, s: 1, samp: 1, script: 49, section: 1, select: 50, slot: 51, small: 1, source: 52, span: 53, strike: 1, strong: 1, style: 54, sub: 1, summary: 1, sup: 1, table: 55, tbody: 56, td: 57, template: 58, textarea: 59, tfoot: 56, th: 57, thead: 56, time: 60, title: 61, tr: 62, track: 63, u: 1, ul: 64, var: 1, video: 65, wbr: 1, svg_a: 68, svg_animate: 70, svg_animateMotion: 71, svg_animateTransform: 72, svg_audio: 66, svg_canvas: 66, svg_circle: 74, svg_clipPath: 75, svg_defs: 76, svg_desc: 77, svg_discard: 78, svg_ellipse: 79, svg_feBlend: 80, svg_feColorMatrix: 81, svg_feComponentTransfer: 82, svg_feComposite: 83, svg_feConvolveMatrix: 84, svg_feDiffuseLighting: 85, svg_feDisplacementMap: 86, svg_feDistantLight: 87, svg_feDropShadow: 88, svg_feFlood: 89, svg_feFuncA: 91, svg_feFuncB: 92, svg_feFuncG: 93, svg_feFuncR: 94, svg_feGaussianBlur: 95, svg_feImage: 96, svg_feMerge: 97, svg_feMergeNode: 98, svg_feMorphology: 99, svg_feOffset: 100, svg_fePointLight: 101, svg_feSpecularLighting: 102, svg_feSpotLight: 103, svg_feTile: 104, svg_feTurbulence: 105, svg_filter: 106, svg_foreignObject: 107, svg_g: 108, svg_iframe: 66, svg_image: 109, svg_line: 110, svg_linearGradient: 112, svg_marker: 113, svg_mask: 114, svg_metadata: 115, svg_mpath: 116, svg_path: 117, svg_pattern: 118, svg_polygon: 119, svg_polyline: 120, svg_radialGradient: 121, svg_rect: 122, svg_script: 123, svg_set: 124, svg_stop: 125, svg_style: 126, svg_svg: 127, svg_switch: 128, svg_symbol: 129, svg_text: 132, svg_textPath: 133, svg_title: 134, svg_tspan: 135, svg_unknown: 66, svg_use: 136, svg_video: 66, svg_view: 137}, tl = Object.keys(g1);
    for (let t = 0, e = pf(tl), r = e.length, i; t < r; t++) {
      i = e[t];
      let s = g1[i];
      s.up = g1[tl[s[0]]], s.name = i + "Element";
    }
    for (let t, e = 0, r = Object.keys($2), i = r.length, s; e < i; e++)
      s = r[e], t = $2[s], $2[s] = g1[tl[t]];
  });
  var N1 = er((Rf) => {
    Hi(Rf);
    Fi(Rf, {basename: () => qh, default: () => Cf, delimiter: () => Yh, dirname: () => Kh, extname: () => Xh, isAbsolute: () => wl, join: () => Hh, normalize: () => Sl, relative: () => zh, resolve: () => R1, sep: () => Uh});
    function Bh(t, e) {
      for (var r = 0, i = t.length - 1; i >= 0; i--) {
        var s = t[i];
        s === "." ? t.splice(i, 1) : s === ".." ? (t.splice(i, 1), r++) : r && (t.splice(i, 1), r--);
      }
      if (e)
        for (; r--; r)
          t.unshift("..");
      return t;
    }
    var Nf = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/, kl = function(t) {
      return Nf.exec(t).slice(1);
    };
    function R1() {
      for (var t = "", e = false, r = arguments.length - 1; r >= -1 && !e; r--) {
        var i = r >= 0 ? arguments[r] : "/";
        if (typeof i != "string")
          throw new TypeError("Arguments to path.resolve must be strings");
        if (!i)
          continue;
        t = i + "/" + t, e = i.charAt(0) === "/";
      }
      return t = Bh(xl(t.split("/"), function(s) {
        return !!s;
      }), !e).join("/"), (e ? "/" : "") + t || ".";
    }
    function Sl(t) {
      var e = wl(t), r = Of(t, -1) === "/";
      return t = Bh(xl(t.split("/"), function(i) {
        return !!i;
      }), !e).join("/"), !t && !e && (t = "."), t && r && (t += "/"), (e ? "/" : "") + t;
    }
    function wl(t) {
      return t.charAt(0) === "/";
    }
    function Hh() {
      var t = Array.prototype.slice.call(arguments, 0);
      return Sl(xl(t, function(e, r) {
        if (typeof e != "string")
          throw new TypeError("Arguments to path.join must be strings");
        return e;
      }).join("/"));
    }
    function zh(t, e) {
      t = R1(t).substr(1), e = R1(e).substr(1);
      function r(p) {
        for (var c = 0; c < p.length && p[c] === ""; c++)
          ;
        for (var _ = p.length - 1; _ >= 0 && p[_] === ""; _--)
          ;
        return c > _ ? [] : p.slice(c, _ - c + 1);
      }
      for (var i = r(t.split("/")), s = r(e.split("/")), n = Math.min(i.length, s.length), o = n, a = 0; a < n; a++)
        if (i[a] !== s[a]) {
          o = a;
          break;
        }
      for (var l = [], a = o; a < i.length; a++)
        l.push("..");
      return l = l.concat(s.slice(o)), l.join("/");
    }
    var Uh = "/", Yh = ":";
    function Kh(t) {
      var e = kl(t), r = e[0], i = e[1];
      return !r && !i ? "." : (i && (i = i.substr(0, i.length - 1)), r + i);
    }
    function qh(t, e) {
      var r = kl(t)[2];
      return e && r.substr(-1 * e.length) === e && (r = r.substr(0, r.length - e.length)), r;
    }
    function Xh(t) {
      return kl(t)[3];
    }
    var Cf = {extname: Xh, basename: qh, dirname: Kh, sep: Uh, delimiter: Yh, relative: zh, join: Hh, isAbsolute: wl, normalize: Sl, resolve: R1};
    function xl(t, e) {
      if (t.filter)
        return t.filter(e);
      for (var r = [], i = 0; i < t.length; i++)
        e(t[i], i, t) && r.push(t[i]);
      return r;
    }
    var Of = "ab".substr(-1) === "b" ? function(t, e, r) {
      return t.substr(e, r);
    } : function(t, e, r) {
      return e < 0 && (e = t.length + e), t.substr(e, r);
    };
  });
  var Tl = er((Lf) => {
    Hi(Lf);
    Fi(Lf, {SourceMapper: () => Wh});
    var Wh = class {
      static strip(e) {
        return e.replace(/\/\*\%([\w\|]*)\$\*\//g, "");
      }
      static run(e, r = {}) {
        return {code: e.replace(/\/\*\%([\w\|]*)\$\*\//g, ""), map: null, toString: function() {
          return this.code;
        }};
      }
    };
  });
  var O1 = er((Df) => {
    Hi(Df);
    Fi(Df, {Compilation: () => Is, CompilationResult: () => $h});
    var Jh = N1(), El = Tl(), Zh = Symbol.for("#__init__"), f4 = Symbol.for("#__initor__"), _4 = Symbol.for("#__inited__"), Qh = Symbol.for("#doc"), Al = {TOKENIZE: 1, REWRITE: 2, PARSE: 4, TRAVERSE: 8, COMPILE: 16}, d4 = new WeakMap(), $h = class {
    }, Is = class {
      static [Zh]() {
        return this.current = void 0, this;
      }
      static error(e) {
        var r, i;
        return (i = (r = this.current) == null ? void 0 : r.addDiagnostic) == null ? void 0 : i.call(r, "error", e);
      }
      static warn(e) {
        var r, i;
        return (i = (r = this.current) == null ? void 0 : r.addDiagnostic) == null ? void 0 : i.call(r, "warning", e);
      }
      static info(e) {
        var r, i;
        return (i = (r = this.current) == null ? void 0 : r.addDiagnostic) == null ? void 0 : i.call(r, "info", e);
      }
      static deserialize(e, r = {}) {
        return new Is("", r).deserialize(e);
      }
      constructor(e, r) {
        this.sourceCode = e, this.sourcePath = r.sourcePath, this.options = r, this.flags = 0, this.js = "", this.css = "", this.result = {}, this.diagnostics = [], this.tokens = null, this.ast = null;
      }
      deserialize(e) {
        let r;
        try {
          r = JSON.parse(e);
        } catch (i) {
          throw console.log("failed", e, this.options), i;
        }
        return this.rawResult = r, this.deserialized = r, this;
      }
      serialize() {
        if (this.rawResult)
          return JSON.stringify(this.rawResult, null, 2);
      }
      tokenize() {
        var e;
        if ((this.flags & (e = Al.TOKENIZE)) == 0 ? (this.flags |= e, true) : false)
          try {
            Is.current = this, this.lexer.reset(), this.tokens = this.lexer.tokenize(this.sourceCode, this.options, this), this.tokens = this.rewriter.rewrite(this.tokens, this.options, this);
          } catch (r) {
          }
        return this.tokens;
      }
      parse() {
        var e;
        if (this.tokenize(), ((this.flags & (e = Al.PARSE)) == 0 ? (this.flags |= e, true) : false) && !this.errored\u03A6) {
          Is.current = this;
          try {
            this.ast = this.parser.parse(this.tokens, this);
          } catch (r) {
          }
        }
        return this;
      }
      compile() {
        var e;
        return this.parse(), ((this.flags & (e = Al.COMPILE)) == 0 ? (this.flags |= e, true) : false) && (this.errored\u03A6 || (Is.current = this, this.result = this.ast.compile(this.options, this)), this.options.raiseErrors && this.raiseErrors()), this;
      }
      recompile(e = {}) {
        if (this.deserialized) {
          let r = this.deserialized.js, i = {};
          return i.js = El.SourceMapper.run(r, e), i.css = El.SourceMapper.run(this.deserialized.css || "", e), e.styles == "import" && i.css.code && (i.js.code += `
import './` + Jh.default.basename(this.sourcePath) + ".css'"), i;
        }
        return {js: this.js};
      }
      addDiagnostic(e, r) {
        r.severity || (r.severity = e);
        let i = new el(r, this);
        return this.diagnostics.push(i), i;
      }
      get errored\u03A6() {
        return this.errors.length > 0;
      }
      get errors() {
        return this.diagnostics.filter(function(e) {
          return e.severity == ea.Error;
        });
      }
      get warnings() {
        return this.diagnostics.filter(function(e) {
          return e.severity == ea.Warning;
        });
      }
      get info() {
        return this.diagnostics.filter(function(e) {
          return e.severity == ea.Information;
        });
      }
      get doc() {
        return this[Qh] || (this[Qh] = new vn(null, "imba", 0, this.sourceCode));
      }
      positionAt(e) {
        return this.doc.positionAt(e);
      }
      offsetAt(e) {
        return this.doc.offsetAt(e);
      }
      rangeAt(e, r) {
        return this.doc.rangeAt(e, r);
      }
      toString() {
        return this.js;
      }
      raiseErrors() {
        if (this.errors.length)
          throw this.errors[0].toError();
        return this;
      }
    };
    Is[Zh]();
  });
  var C1 = er((Il) => {
    function tp(t, e) {
      for (var r in e)
        e.hasOwnProperty(r) && (t[r] = e[r]);
      t.prototype = Object.create(e.prototype), t.__super__ = t.prototype.__super__ = e.prototype, t.prototype.initialize = t.prototype.constructor = t;
    }
    var Rl = lo(), ep = new WeakMap();
    function Sr(t, e) {
      var r;
      this.error = t, this._options = e || {}, this.severity = this._options.severity || "error";
      let i = t.message;
      (r = i.match(/Unexpected '([\w\-]+)'/)) && r[1] == "TERMINATOR" && (i = "Unexpected newline"), this.message = i, this.sourcePath = t.sourcePath, this.line = t.line;
    }
    tp(Sr, Error);
    Il.ImbaParseError = Sr;
    Sr.wrap = function(t) {
      return new this(t);
    };
    Object.defineProperty(Sr.prototype, "_options", {get: function() {
      return ep.get(this);
    }, configurable: true});
    Object.defineProperty(Sr.prototype, "_options", {set: function(t) {
      return ep.set(this, t);
    }, configurable: true});
    Sr.prototype.set = function(t) {
      this._options || (this._options = {});
      for (let e, r = 0, i = Object.keys(t), s = i.length, n; r < s; r++)
        n = i[r], e = t[n], this._options[n] = e;
      return this;
    };
    Sr.prototype.start = function() {
      for (var t = this._options, e = t.pos - 1, r = t.tokens && t.tokens[e]; r && (r._loc == -1 || r._loc == 0 || r._len == 0); )
        r = t.tokens[--e];
      return r;
    };
    Object.defineProperty(Sr.prototype, "token", {get: function() {
      if (this._token)
        return this._token;
      for (var t = this._options, e = t.pos - 1, r = t.tokens && t.tokens[e]; r && (r._loc == -1 || r._loc == 0 || r._len == 0); )
        r = t.tokens[--e];
      return this._token = r;
    }, configurable: true});
    Sr.prototype.desc = function() {
      var t = this._options;
      let e = this.message;
      return t.token && t.token._loc == -1 ? "Syntax Error" : e;
    };
    Sr.prototype.loc = function() {
      var t;
      return this._loc || (t = this.start()) && t.region && t.region();
    };
    Sr.prototype.toJSON = function() {
      var t = this._options, e = this.start();
      return {warn: true, message: this.desc(), loc: this.loc()};
    };
    Sr.prototype.toNativeError = function() {
      let t = new SyntaxError("hello");
      return t.fileName = this._sourcePath, t.message = this.message, t.stack = this.excerpt({colors: false, details: true}), t.lineNumber = this.lineNumber, t.columnNumber = this.columnNumber, t;
    };
    Sr.prototype.excerpt = function(t) {
      (!t || t.constructor !== Object) && (t = {});
      var e = t.gutter !== void 0 ? t.gutter : true, r = t.colors !== void 0 ? t.colors : false, i = t.details !== void 0 ? t.details : true;
      try {
        var s = this._code, n = this.loc(), o = s.split(/\n/g), a = Rl.locationToLineColMap(s), l = a[n[0]] || [0, 0], p = l[0], c = l[1], _ = o[p];
        this.lineNumber = p + 1, this.columnNumber = c;
        var f = Math.max(0, p - 2), m = Math.min(f + 5, o.length);
        let v = p - f;
        var g = f, b = function(d) {
          return d;
        };
        if (r) {
          let d = this.severity == "warn" ? "yellow" : "red";
          (typeof r == "string" || r instanceof String) && (d = r), b = function(w) {
            return Rl.ansi[d](Rl.ansi.bold(w));
          };
        }
        for (var N = []; g < m; )
          N.push(_ = o[g++]);
        var y = N;
        return e && (y = y.map(function(d, w) {
          let k = "" + (f + w + 1);
          for (; k.length < String(m).length; )
            k = " " + k;
          return w == v ? "   -> " + k + " | " + d : "      " + k + " | " + d;
        })), y[v] = b(y[v]), i && y.unshift(b(this.message)), y.join(`
`) + `
`;
      } catch (v) {
        return "";
      }
    };
    Sr.prototype.prettyMessage = function() {
      var t;
      return t = this.excerpt();
    };
    function ha() {
      return Sr.apply(this, arguments);
    }
    tp(ha, Sr);
    Il.ImbaTraverseError = ha;
    ha.prototype.loc = function() {
      return this._loc;
    };
    ha.prototype.excerpt = function() {
      var t = ha.prototype.__super__.excerpt.apply(this, arguments);
      return t + `
---
` + this.error.stack;
    };
  });
  var pp = er((L1) => {
    function Ff(t) {
      return t && (t.len instanceof Function ? t.len() : t.length) || 0;
    }
    function gr(t, e) {
      return e && e.indexOf ? e.indexOf(t) : [].indexOf.call(t, e);
    }
    function bn(t) {
      return t ? t.toArray ? t.toArray() : t : [];
    }
    function Pf(t, e) {
      for (var r in e)
        e.hasOwnProperty(r) && (t[r] = e[r]);
      t.prototype = Object.create(e.prototype), t.__super__ = t.prototype.__super__ = e.prototype, t.prototype.initialize = t.prototype.constructor = t;
    }
    var _o = ta(), kn = _o.Token, Nl = v1().INVERSES, g4 = O1().Compilation, v4 = C1(), Mf = lo(), Vf = ["true", "false", "null", "this", "delete", "typeof", "in", "instanceof", "throw", "break", "continue", "debugger", "if", "else", "switch", "for", "while", "do", "try", "catch", "finally", "class", "extends", "super", "return"], rp = {",": 1, "\n": 1, ")": 1, "]": 1, "}": 1, ">": 1, " ": 1}, jf = ["extend", "local", "global", "prop", "lazy"], Gf = L1.ALL_KEYWORDS = ["true", "false", "null", "this", "delete", "typeof", "in", "instanceof", "throw", "break", "continue", "debugger", "if", "else", "switch", "for", "while", "do", "try", "catch", "finally", "class", "extends", "super", "return", "undefined", "then", "unless", "until", "loop", "of", "by", "when", "def", "tag", "do", "elif", "begin", "var", "let", "const", "await", "import", "and", "or", "is", "isnt", "not", "yes", "no", "isa", "case", "nil", "module", "export", "static", "extend"], Bf = ["case", "default", "function", "void", "with", "const", "enum", "native"], b4 = Vf.concat(Bf), Hf = /^((\$|##|#|@|\%)[\$\wA-Za-z_\-\x7f-\uffff][$\w\x7f-\uffff]*(\-[$\w\x7f-\uffff]+)*[\?]?|[$A-Za-z_][$\w\x7f-\uffff]*(\-[$\w\x7f-\uffff]+)*[\?]?)([^\n\S]*:)?/, zf = /^import\s+(\{?[^\"\'\}]+\}?)(?=\s+from\s+)/, Uf = /^(\<)(?=[A-Za-z\#\.\%\$\[\{\@\>\(])/, ip = /^(\w[\w\d]*:)?(\w[\w\d]*)(-[\w\d]+)*/, Yf = /^#((\w[\w\d]*)(-[\w\d]+)*)/, Kf = /^([%\$]{1,2})([\(])/, qf = /^\:((([\*\@$\w\x7f-\uffff]+)+([\-\\\:][\w\x7f-\uffff]+)*)|==|\<=\>)/, Xf = /^\#[0-9a-fA-F]{3,8}/, Wf = /^(\-?\d*\.?\d+)([A-Za-z]+|\%)?(?![\d\w])/, Jf = /^[\w\-\$]*\w[\w\-\$]*/, Zf = /^url\(([^\)]*)\)/, sp = /^([\w\-\$\@\.\!]+)(?=\:([^\:]|$))/, Qf = /^0x[\da-f_]+|^0b[01_]+|^0o[\d_]+|^\-?(?:\d[_\d]*)\.?\d[_\d]*(?:e[+-]?\d+)?|^\-?\d*\.?\d+(?:e[+-]?\d+)?/i, $f = /^("""|''')([\s\S]*?)(?:\n[^\n\S]*)?\1/, t0 = /^(?:[-=]=>|!&|[&|~^]?=\?|[&|~^]=|\?\?=|===|---|->|=>|\/>|!==|\*\*=?|[-+*\/%<>&|^!?=]=|=<|>>>=?|([-+:])\1|([&|<>])\2=?|\?\.|\?\?|\.{2,3}|\*(?=[a-zA-Z\_]))/, np = /^[^\n\S]+/, e0 = /^###([^#][\s\S]*?)(?:###[^\n\S]*|(?:###)?$)/, r0 = /^\/\*([\s\S]*?)\*\//, op = /^(\s*)((#[ \t\!]|\/\/(?!\/))(.*)|#[ \t]?(?=\n|$))+/, i0 = /^[-=]=>/, s0 = /^(?:\n[^\n\S]*)+/, n0 = /^'[^\\']*(?:\\.[^\\']*)*'/, ap = /^(\/(?![\s=])[^[\/\n\\]*(?:(?:\\[\s\S]|\[[^\]\n\\]*(?:\\[\s\S][^\]\n\\]*)*])[^[\/\n\\]*)*\/)([a-z]{0,8})(?!\w)/, lp = /^\/{3}([\s\S]+?)\/{3}([a-z]{0,8})(?!\w)/, cp = /\n/g, o0 = /\n+([^\n\S]*)/g, a0 = /\*\//, l0 = /^\s*(?:,|\??\.(?![.\d])|(?:&&|\|\||and|or)[\n\s])/, c0 = /^\$\w+\$/, u0 = /^\$\d$/, h0 = ["-=", "+=", "/=", "*=", "%=", "||=", "&&=", "?=", "??=", "<<=", ">>=", ">>>=", "&=", "^=", "|=", "~=", "=<", "**=", "=?", "~=?", "|=?", "&=?", "^=?"], up = ["!", "~", "NEW", "TYPEOF", "DELETE"], p0 = ["&&", "||", "??", "and", "or"], f0 = ["<<", ">>", ">>>"], _0 = ["===", "!==", "==", "!=", "<", ">", "<=", ">=", "===", "!==", "&", "|", "^", "!&"], d0 = ["*", "/", "%", "\u222A", "\u2229", "\u221A"], m0 = ["IN", "OF", "INSTANCEOF", "ISA"], y0 = ["NUMBER", "REGEX", "BOOL", "TRUE", "FALSE", "++", "--", "]"], g0 = ["NUMBER", "REGEX", "BOOL", "TRUE", "FALSE", "++", "--", "]", ")", "}", "THIS", "SELF", "IDENTIFIER", "STRING"], v0 = ["\\", ".", "UNARY", "MATH", "EXP", "+", "-", "SHIFT", "RELATION", "COMPARE", "THROW", "EXTENDS"], b0 = ["IDENTIFIER", "SYMBOLID", "STRING", "REGEX", ")", "]", "INDEX_END", "THIS", "SUPER", "TAG_END", "IVAR", "SELF", "NEW", "ARGVAR", "SYMBOL", "RETURN", "INDEX_END", "CALL_END"], k0 = ["IDENTIFIER", "SYMBOLID", "STRING", "REGEX", ")", "]", "THIS", "SUPER", "TAG_END", "IVAR", "SELF", "NEW", "ARGVAR", "SYMBOL", "RETURN", "BANG", "NUMBER", "BOOL", "TAG_SELECTOR", "ARGUMENTS", "}", "TAG_TYPE", "TAG_REF", "INDEX_END", "CALL_END"], x0 = ["INDENT", "OUTDENT", "TERMINATOR"];
    function hp(t, e, r) {
      return this.message = t, this.file = e, this.line = r, this;
    }
    Pf(hp, SyntaxError);
    L1.LexerError = hp;
    var $r = function(t, e) {
      return e === void 0 && (e = 0), t[t.length - e - 1];
    }, w0 = function(t, e) {
      return t.split(e).length - 1;
    }, S0 = function(t, e) {
      for (var r = ""; e > 0; )
        e % 2 == 1 && (r += t), t += t, e >>= 1;
      return r;
    }, Yi = _o.typ, mo = _o.val, Rs = _o.setTyp, D1 = _o.setVal;
    function Wt() {
      this.reset();
    }
    L1.Lexer = Wt;
    Wt.prototype.reset = function() {
      return this._code = null, this._chunk = null, this._opts = null, this._state = {}, this._indent = 0, this._indebt = 0, this._outdebt = 0, this._indents = [], this._ends = [], this._contexts = [], this._scopes = [], this._nextScope = null, this._context = null, this._indentStyle = "	", this._inTag = false, this._inStyle = 0, this._tokens = [], this._seenFor = false, this._loc = 0, this._locOffset = 0, this._end = null, this._char = null, this._bridge = null, this._last = null, this._lastTyp = "", this._lastVal = null, this._script = null, this;
    };
    Wt.prototype.jisonBridge = function(t) {
      return this._bridge = {lex: _o.lex, setInput: function(e) {
        return this.tokens = e, this.pos = 0;
      }, upcomingInput: function() {
        return "";
      }};
    };
    Wt.prototype.tokenize = function(t, e, r) {
      var i;
      if (r === void 0 && (r = null), t.length == 0)
        return [];
      if (!e.inline) {
        if (np.test(t) && (t = `
` + t, t.match(/^\s*$/g)))
          return [];
        t = t.replace(/\r/g, "").replace(/[\t ]+$/g, "");
      }
      if (this._last = null, this._lastTyp = null, this._lastVal = null, this._script = r, this._code = t, this._opts = e, this._locOffset = e.loc || 0, this._platform = e.platform || e.target, this._indentStyle = "	", (i = t.match(/^([\ \t]*)[^\n\s\t]/)) && (this._state.gutter = i[1]), e.gutter !== void 0 && (this._state.gutter = e.gutter), this._script && !e.inline && (this._script.tokens = this._tokens), this.parse(t), e.inline || this.closeIndentation(), this._ends.length && this.error("missing " + this._ends.pop()), this._platform == "tsc")
        for (let s = 0, n = bn(this._tokens), o = n.length, a; s < o; s++)
          a = n[s], a._type == "SYMBOLID" && (a._type = "IDENTIFIER");
      return this._tokens;
    };
    Wt.prototype.parse = function(t) {
      var e = 0, r = 0;
      for (this._loc = this._locOffset + e; this._chunk = t.slice(e); ) {
        let i = this._context;
        i && i.pop && i.pop.test(this._chunk) && this.popEnd(), r = i && i.lexer && i.lexer.call(this) || this._end == "TAG" && this.tagDefContextToken() || this._inTag && this.tagContextToken() || this._inStyle2 && this.lexStyleBody() || this.basicContext(), e += r, this._loc = this._locOffset + e;
      }
    };
    Wt.prototype.basicContext = function() {
      return this.selectorToken() || this.symbolToken() || this.identifierToken() || this.whitespaceToken() || this.lineToken() || this.commentToken() || this.heredocToken() || this.tagToken() || this.stringToken() || this.numberToken() || this.regexToken() || this.literalToken() || 0;
    };
    Wt.prototype.moveCaret = function(t) {
      return this._loc += t;
    };
    Wt.prototype.context = function() {
      return this._ends[this._ends.length - 1];
    };
    Wt.prototype.inContext = function(t) {
      var e = this._contexts[this._contexts.length - 1];
      return e && e[t];
    };
    Wt.prototype.pushEnd = function(t, e) {
      let r = this._context;
      return this._ends.push(t), this._contexts.push(this._context = e || {}), this._end = t, this.refreshScope(), e && (e.closeType == "STYLE_END" || e.style) && (e.lexer = this.lexStyleBody, e.style = true, this._inStyle++), r && r.style && t != "}" && (e.lexer = this.lexStyleBody, e.style = true), e && e.id && (e.start = new kn(e.id + "_START", t, this._last.region()[1], 0), this._tokens.push(e.start)), this;
    };
    Wt.prototype.popEnd = function(t) {
      var e = this._ends.pop();
      this._end = this._ends[this._ends.length - 1];
      var r = this._context;
      return r && r.start && (r.end = new kn(r.closeType || r.id + "_END", e, this._last.region()[1], 0), r.end._start = r.start, r.start._end = r.end, this._tokens.push(r.end)), r && (r.closeType == "STYLE_END" || r.style) && this._inStyle--, this._contexts.pop(), this._context = this._contexts[this._contexts.length - 1], this.refreshScope(), [e, r];
    };
    Wt.prototype.refreshScope = function() {
      var t = this._ends[this._ends.length - 1], e = this._ends[this._ends.length - 2];
      return this._inTag = t == "TAG_END" || e == "TAG_END" && t == "OUTDENT";
    };
    Wt.prototype.queueScope = function(t) {
      return this._scopes[this._indents.length] = t, this;
    };
    Wt.prototype.popScope = function(t) {
      return this._scopes.pop(), this;
    };
    Wt.prototype.getScope = function() {
      return this._scopes[this._indents.length - 1];
    };
    Wt.prototype.scope = function(t, e) {
      var r = this._ends.push(this._end = t);
      return this._contexts.push(e || null), t;
    };
    Wt.prototype.closeSelector = function() {
      if (this._end == "%")
        return this.token("SELECTOR_END", "%", 0), this.pair("%");
    };
    Wt.prototype.openDef = function() {
      return this.pushEnd("DEF");
    };
    Wt.prototype.closeDef = function() {
      if (this.context() == "DEF") {
        var t = $r(this._tokens);
        if (Yi(t) == "TERMINATOR") {
          let e = this._tokens.pop();
          this.token("DEF_BODY", "DEF_BODY", 0), this._tokens.push(e);
        } else
          this.token("DEF_BODY", "DEF_BODY", 0);
        this.pair("DEF");
      }
    };
    Wt.prototype.tagContextToken = function() {
      let t = this._chunk[0], e = this._chunk[1], r = /^([A-Za-z\_\-\$\%\#][\w\-\$]*(\:[A-Za-z\_\-\$]+)*)/.exec(this._chunk);
      if (r) {
        let i = r[1], s = "TAG_LITERAL", n = r[0].length;
        return i == "self" && this._lastVal == "<" && (s = "SELF"), t == "$" && (this._lastTyp == "TAG_TYPE" || this._lastTyp == "TAG_START") && (s = "TAG_REF"), t == "%" && (s = "MIXIN"), t == "#" && (s = "TAG_SYMBOL_ID", i.length == 1) ? 0 : (this.token(s, i, n), n);
      }
      if (t == "/" && e == ">")
        return this.token("TAG_END", "/>", 2), this.pair("TAG_END"), 2;
      if (t == "%" || t == ":" || t == "." || t == "@")
        return this.token("T" + t, t, 1), t == "." && (!e || rp[e]) && this._platform == "tsc" && this.token("TAG_LITERAL", "$CARET$", 0, 1), 1;
      if (t == " " || t == `
` || t == "	") {
        let i = /^[\n\s\t]+/.exec(this._chunk);
        return this.token("TAG_WS", i[0], i[0].length), i[0].length;
      } else if (t == "=" && this._chunk[1] != ">")
        return this.token("=", "=", 1), this.pushEnd("TAG_ATTR", {id: "VALUE", pop: /^([\s\n\>]|\/\>)/}), 1;
      return 0;
    };
    Wt.prototype.tagDefContextToken = function() {
      var t;
      if (t = ip.exec(this._chunk))
        return this.token("TAG_TYPE", t[0], t[0].length), t[0].length;
      if (t = Yf.exec(this._chunk)) {
        var e = t[0];
        return this.token("TAG_ID", e, e.length), e.length;
      }
      return this._chunk[0] == `
` && this.pair("TAG"), 0;
    };
    Wt.prototype.findTypeAnnotation = function(t) {
      for (var e = [], r = 0, i = [], s = /[\=\n\ \t\.\,\:\+]/; r < t.length; ) {
        var n = t.charAt(r);
        let o = e[0], a = o == '"' || o == "'";
        if (n && n == o)
          e.shift();
        else {
          if (!o && (n == ")" || n == "]" || n == "}" || n == ">"))
            break;
          if (n == "(")
            e.unshift(")");
          else if (n == "[")
            e.unshift("]");
          else if (n == "{")
            e.unshift("}");
          else if (n == "<")
            e.unshift(">");
          else if (n == '"')
            e.unshift('"');
          else if (n == "'")
            e.unshift("'");
          else if (!o && s.test(n))
            break;
        }
        r++;
      }
      return r == 0 ? null : t.slice(0, r);
    };
    Wt.prototype.findBalancedSelector = function(t) {
      for (var e = [], r = 0, i = []; r < t.length - 1; ) {
        var s = t.charAt(r);
        let o = e[0], a = o == '"' || o == "'";
        if (s && s == o)
          e.shift();
        else if (!a && (s == ")" || s == "]" || s == "}")) {
          console.log("out of balance!!");
          break;
        } else
          s == "/" ? i.unshift([r, 1, ":"]) : s == "(" && !a ? e.unshift(")") : s == "[" && !a ? e.unshift("]") : s == '"' ? e.unshift('"') : s == "'" && e.unshift("'");
        if (!o && (s == "=" || s == `
` || s == "{"))
          break;
        if (!o && s == " ") {
          let l = t.slice(r + 1);
          if (sp.exec(l) || op.exec(l))
            break;
        }
        r++;
      }
      if (r == 0)
        return null;
      let n = t.slice(0, r);
      if (i.length) {
        n = n.split("");
        for (let o = 0, a = i.length; o < a; o++)
          n.splice.apply(n, i[o]);
        n = n.join("");
      }
      return n;
    };
    Wt.prototype.lexStyleRule = function(t, e) {
      t === void 0 && (t = 0), e === void 0 && (e = false);
      let r = t ? this._chunk.slice(t) : this._chunk, i = this.findBalancedSelector(r);
      if (i || e) {
        let s = i ? i.length : 0;
        this.token("CSS_SEL", i || "", s, t);
        let n = this._last;
        return r[s] == "=" && s++, this._indents.push(1), this._outdebt = this._indebt = 0, this.token("INDENT", "1", 0, 1), this.pushEnd("OUTDENT", {lexer: this.lexStyleBody, opener: n, style: true}), this._indent++, s;
      }
      return 0;
    };
    Wt.prototype.lexStyleBody = function() {
      if (this._end == "%")
        return 0;
      let t = this._chunk[0];
      var e;
      let r = sp.exec(this._chunk), i = this._lastTyp;
      if (!r && this._chunk.match(/^([\%\*\w\&\$\>\/\.\[\@\!]|\#[\w\-]|\:\:)/) && (i == "TERMINATOR" || i == "INDENT") && this.findBalancedSelector(this._chunk))
        return this.lexStyleRule(0);
      if (r)
        return this.token("CSSPROP", r[0], r[0].length), r[0].length;
      if (t[0] == "#" && (e = Xf.exec(this._chunk)))
        return this.token("COLOR", e[0], e[0].length), e[0].length;
      if (t == "/" && !this._last.spaced)
        return this.token("/", t, 1), 1;
      if (e = Wf.exec(this._chunk)) {
        let s = e[0].length, n = "NUMBER";
        return e[2] == "%" ? n = "PERCENTAGE" : e[2] && (n = "DIMENSION"), this._lastTyp == "COMPARE" && !this._last.spaced, this.token(n, e[0], s), s;
      } else if (e = Zf.exec(this._chunk)) {
        let s = e[0].length;
        return this.token("CSSURL", e[0], s), e[0].length;
      } else if (e = Jf.exec(this._chunk)) {
        let s = "CSSIDENTIFIER", n = e[0], o = n.length;
        return e[0].match(/^\-\-/) ? s = "CSSVAR" : this._last && !this._last.spaced && (i == "}" || i == ")") && (s = "CSSUNIT"), this._chunk[o] == "(" && (s = "CSSFUNCTION"), this.token(s, n, o), o;
      } else if (this._last && !this._last.spaced && (i == "}" || i == ")") && t == "%")
        return this.token("CSSUNIT", t, 1), 1;
      return 0;
    };
    Wt.prototype.importsToken = function() {
      var t;
      return (t = zf.exec(this._chunk)) ? (this.token("IMPORTS", t[1], t[1].length, 7), t[0].length) : 0;
    };
    Wt.prototype.tagToken = function() {
      var t, e;
      if (!(t = Uf.exec(this._chunk)))
        return 0;
      var e = bn(t), r = e[0], i = e[1], s = e[2];
      if (i == "<") {
        if (this.token("TAG_START", "<", 1), this.pushEnd(Nl.TAG_START), t = ip.exec(this._chunk.substr(1, 40))) {
          let n = this._chunk[t[0].length + 1];
          if (t[0] != "self" && n != "{" && n != "-")
            return this.token("TAG_TYPE", t[0], t[0].length, 1), r.length + t[0].length;
        } else
          this._chunk[1] == ">" && this.token("TAG_TYPE", "fragment", 0, 0);
        if (s) {
          if (s.substr(0, 1) == "{")
            return i.length;
          this.token("TAG_NAME", r.substr(1), 0);
        }
      }
      return r.length;
    };
    Wt.prototype.selectorToken = function() {
      var t, e;
      if (this._end == "%") {
        for (var r = this._chunk[0], i = this._context, s = 0, n = "", o = false; r = this._chunk[s++]; )
          if (r == ")" && i.parens == 0) {
            o = true;
            break;
          } else if (r == "(")
            i.parens++, n += "(";
          else if (r == ")")
            i.parens--, n += ")";
          else {
            if (r == "{")
              break;
            n += r;
          }
        return n && this.token("SELECTOR_PART", n, s - 1), o ? (this.token("SELECTOR_END", ")", 1, s - 1), this.pair("%"), s) : s - 1;
      }
      if (!(e = Kf.exec(this._chunk)))
        return 0;
      var t = bn(e), a = t[0], l = t[1], p = t[2];
      return p == "(" ? (this.token("SELECTOR_START", l, l.length + 1), this.pushEnd("%", {parens: 0}), l.length + 1) : l == "%" ? this.context() == "%" ? 1 : (this.token("SELECTOR_START", l, l.length), this.pushEnd("%", {open: true}), l.length) : 0;
    };
    Wt.prototype.inTag = function() {
      var t = this._ends.length;
      if (t > 0) {
        var e = this._ends[t - 1], r = t > 1 ? this._ends[t - 2] : e;
        return e == "TAG_END" || r == "TAG_END" && e == "OUTDENT";
      }
      return false;
    };
    Wt.prototype.isKeyword = function(t) {
      var e;
      if (this._lastTyp == "ATTR" || this._lastTyp == "PROP" || this._lastTyp == "DEF" || t == "when" && this._lastTyp == "CONST")
        return false;
      if ((t == "get" || t == "set") && (e = this._chunk.match(/^[gs]et ([\$\w\-]+|\[)/))) {
        let s = this._contexts[this._contexts.length - 1] || {}, n = s.opener && this._tokens[this._tokens.indexOf(s.opener) - 1];
        if (gr(this._lastTyp, ["TERMINATOR", "INDENT"]) >= 0 && n && (n._type == "=" || n._type == "{"))
          return true;
      }
      if ((t == "guard" || t == "alter" || t == "watch") && this.getScope() == "PROP" || t == "css")
        return true;
      if (t == "attr" || t == "prop" || t == "get" || t == "set" || t == "lazy" || t == "css" || t == "constructor" || t == "declare") {
        var r = this.getScope(), i = r == "CLASS" || r == "TAG" || r == "EXTEND";
        if (t == "lazy" || t == "declare")
          return i && gr(this._lastTyp, ["INDENT", "TERMINATOR", "DECORATOR"]) >= 0;
        if (t == "constructor")
          return i && gr(this._lastTyp, ["INDENT", "TERMINATOR", "DECORATOR"]) >= 0;
        if (i)
          return true;
      }
      return Gf.indexOf(t) >= 0;
    };
    Wt.prototype.identifierToken = function() {
      var t, e, r = this._ends.length > 0 ? this._ends[this._ends.length - 1] : null, i = this._ends.length > 1 ? this._ends[this._ends.length - 2] : null, s = r, n, o = false, a = false, l = r == "TAG_END" || i == "TAG_END" && r == "OUTDENT";
      if (!(e = Hf.exec(this._chunk)))
        return 0;
      var t = bn(e), p = t[0], c = t[1], n = t[2], _ = t[3], f = t[4], m = t[5], g = c.length;
      if (c === "own" && this.lastTokenType() == "FOR")
        return this.token("OWN", c, c.length), c.length;
      var b = $r(this._tokens), N = this._lastTyp;
      if (N == "#")
        return this.token("IDENTIFIER", c, g), g;
      var y = m || N == "." || N == "?.";
      m && N == "?" && (y = false), c == "tag" && this._chunk.indexOf("tag(") == 0 && (y = true), c == "css" && /css\s\:\:/.exec(this._chunk) && (p = c + " ", m = null, y = false);
      var v = false;
      if (n == "$" && u0.test(c))
        n = "ARGVAR", c = c.substr(1);
      else if (n == "$" && c0.test(c))
        n = "ENV_FLAG", c = c.toUpperCase();
      else if (n == "@")
        N == "." ? n = "IDENTIFIER" : n = "DECORATOR";
      else if (n == "#")
        n = "SYMBOLID";
      else if (n == "##")
        n = "SYMBOLID";
      else if (n == "%")
        n = "MIXIN";
      else if (n == "$" && !m)
        n = "IDENTIFIER";
      else {
        if (c == "elif" && !y)
          return this.token("ELSE", "elif", c.length), this.token("IF", "if"), c.length;
        n = "IDENTIFIER";
      }
      if (!y && (v = this.isKeyword(c)))
        if (typeof v == "string" ? n = v : n = c.toUpperCase(), a = true, n == "MODULE" && (!/^module [a-zA-Z]/.test(this._chunk) || r == "TAG_ATTR") && (n = "IDENTIFIER"), n == "YES")
          n = "TRUE";
        else if (n == "NO")
          n = "FALSE";
        else if (n == "NIL")
          n = "NULL";
        else if (n == "VAR" || n == "CONST" || n == "LET") {
          let S = this._lastTyp;
        } else
          n == "IF" || n == "ELSE" || n == "TRUE" || n == "FALSE" || n == "NULL" || (n == "TAG" ? this.pushEnd("TAG") : n == "DEF" || n == "GET" || n == "SET" ? (n = "DEF", this.openDef()) : n == "CONSTRUCTOR" ? (this.token("DEF", "", 0), n = "IDENTIFIER", this.openDef()) : n == "DO" ? this.context() == "DEF" && this.closeDef() : n === "WHEN" && x0.indexOf(this.lastTokenType()) >= 0 ? n = "LEADING_WHEN" : n === "FOR" ? this._seenFor = true : n === "UNLESS" ? n = "IF" : up.indexOf(n) >= 0 ? n = "UNARY" : m0.indexOf(n) >= 0 && (n != "INSTANCEOF" && n != "ISA" && this._seenFor ? (n = "FOR" + n, this._seenFor = false) : (n = "RELATION", b._type == "UNARY" && (b._type = "NOT"))));
      if (!y)
        switch (this._lastVal == "export" && c == "default" && (Rs(b, "EXPORT"), n = "DEFAULT"), c) {
          case "!":
          case "not": {
            n = "UNARY";
            break;
          }
          case "==":
          case "!=":
          case "===":
          case "!==":
          case "is":
          case "isnt": {
            n = "COMPARE";
            break;
          }
          case "&&":
          case "||":
          case "and":
          case "or":
          case "??": {
            n = "LOGIC";
            break;
          }
          case "super":
          case "break":
          case "continue":
          case "debugger":
          case "arguments": {
            n = c.toUpperCase();
            break;
          }
        }
      var d = p.length;
      if (n == "CLASS" || n == "DEF" || n == "TAG" || n == "PROP" || n == "CSS") {
        this.queueScope(n);
        for (var w = this._tokens.length; w; ) {
          b = this._tokens[--w];
          var k = "" + mo(b);
          if (gr(k, jf) >= 0)
            Rs(b, k.toUpperCase());
          else
            break;
        }
      } else if (n == "IF")
        this.queueScope(n);
      else if (n == "EXTEND" && !this._chunk.match(/^extend (class|tag)(\s|\n|$)/))
        this.queueScope(n);
      else if (n == "IMPORT") {
        let S = this._chunk[g];
        if (N == "AWAIT" || S == "(" || S == ".")
          n = "IDENTIFIER";
        else
          return this.pushEnd("IMPORT"), this.token(n, c, g), d;
      } else {
        if (c == "type" && N == "IMPORT")
          return this.token("TYPEIMPORT", c, g), d;
        if (n == "EXPORT")
          return this.pushEnd("EXPORT"), this.token(n, c, g), d;
        c == "from" && r == "IMPORT" ? (n = "FROM", this.pair("IMPORT")) : c == "from" && r == "EXPORT" ? (n = "FROM", this.pair("EXPORT")) : c == "as" && (r == "IMPORT" || this._lastTyp == "IDENTIFIER" || r == "EXPORT") && (n = "AS");
      }
      if (c == "new" && this._lastTyp != "." && this._chunk.match(/^new\s+[\w\$\(\<\#]/) && (n = "NEW"), n == "IDENTIFIER" && N == "CATCH" && (n = "CATCH_VAR"), (N == "NUMBER" || N == ")") && !b.spaced && (n == "IDENTIFIER" || c == "%") && (n = "UNIT"), m) {
        this.token(n, c, g);
        var T = m.indexOf(":");
        this.moveCaret(g + T), this.token(":", ":", 1), this.moveCaret(-(g + T));
      } else
        this.token(n, c, g);
      return n == "CSS" ? d + this.lexStyleRule(d, true) : d;
    };
    Wt.prototype.numberToken = function() {
      var t, e, r, i;
      if (!(e = Qf.exec(this._chunk)))
        return 0;
      r = e[0], i = r.length, (t = /0b([01_]+)/.exec(r)) && (r = "" + parseInt(t[1].replace(/_/g, ""), 2));
      var s = $r(this._tokens);
      return e[0][0] == "." && s && !s.spaced && ["IDENTIFIER", ")", "}", "]", "NUMBER"].indexOf(Yi(s)) >= 0 && (this.token(".", "."), r = r.substr(1)), this.token("NUMBER", r, i), i;
    };
    Wt.prototype.symbolToken = function() {
      var t, e, r;
      if (!(t = qf.exec(this._chunk)))
        return 0;
      if (e = t[0], r = $r(this._tokens), !r || r.spaced || gr(this._prevVal, ["(", "[", "="]) >= 0) {
        let i = Mf.dashToCamelCase(e.slice(1));
        return this.token("STRING", '"' + i + '"', t[0].length), t[0].length;
      }
      return 0;
    };
    Wt.prototype.escapeStr = function(t, e, r) {
      if (t = t.replace(cp, e ? "\\n" : ""), r) {
        var i = RegExp("\\\\[" + r + "]", "g");
        t = t.replace(i, r), t = t.replace(RegExp("" + r, "g"), "\\$&");
      }
      return t;
    };
    Wt.prototype.stringToken = function() {
      var t, e;
      switch (this._chunk.charAt(0)) {
        case "'": {
          if (!(t = n0.exec(this._chunk)))
            return 0;
          e = t[0], this.token("STRING", this.escapeStr(e), e.length);
          break;
        }
        case '"': {
          if (!(e = this.balancedString(this._chunk, '"')))
            return 0;
          if (e.indexOf("{") >= 0) {
            var r = e.length;
            this.token("STRING_START", e.charAt(0), 1), this.interpolateString(e.slice(1, -1)), this.token("STRING_END", e.charAt(r - 1), 1, e.length - 1);
          } else
            r = e.length, this.token("STRING", this.escapeStr(e), r);
          break;
        }
        case "`": {
          if (!(e = this.balancedString(this._chunk, "`")))
            return 0;
          e.indexOf("{") >= 0 ? (r = e.length, this.token("STRING_START", e.charAt(0), 1), this.interpolateString(e.slice(1, -1), {heredoc: true}), this.token("STRING_END", e.charAt(r - 1), 1, e.length - 1)) : (r = e.length, this.token("STRING", this.escapeStr(e, true), r));
          break;
        }
        default:
          return 0;
      }
      return this.moveHead(e), e.length;
    };
    Wt.prototype.heredocToken = function() {
      var t, e, r, i;
      if (!(t = $f.exec(this._chunk)))
        return 0;
      e = t[0], r = e.charAt(0);
      var s = {quote: r, indent: null, offset: 0};
      if (i = this.sanitizeHeredoc(t[2], s), r == '"' && i.indexOf("{") >= 0) {
        var n = t[1];
        this.token("STRING_START", n, n.length), this.interpolateString(i, {heredoc: true, offset: n.length + s.offset, quote: r, indent: s.realIndent}), this.token("STRING_END", n, n.length, e.length - n.length);
      } else
        this.token("STRING", this.makeString(i, r, true), 0);
      return this.moveHead(e), e.length;
    };
    Wt.prototype.parseMagicalOptions = function(t) {
      var e = this;
      return t.indexOf("imba$") >= 0 && t.replace(/imba\$(\w+)\=(\S*)\b/g, function(r, i, s) {
        return /^\d+$/.test(s) && (s = parseInt(s)), e._opts[i] = s;
      }), e;
    };
    Wt.prototype.commentToken = function() {
      var t, e, r, i, s, n = "HERECOMMENT";
      if (t = r0.exec(this._chunk))
        return this.token("HERECOMMENT", t[1], t[1].length), this.token("TERMINATOR", `
`), t[0].length;
      if (t = op.exec(this._chunk)) {
        e = t[0].length, i = t[1], r = t[2];
        let p = t[4] || "";
        r[0] == "#" && (p = " " + p), s = $r(this._tokens);
        var o = s && Yi(s), a = "//" + p;
        return this.parseMagicalOptions(a), this._last && this._last.spaced && (a = " " + a), a.match(/^\/\/ \@(type|param)/) ? a = "/**" + p + "*/" : a.match(/^\/\/ \<(reference)/) && (a = "///" + p), o && o != "INDENT" && o != "TERMINATOR" || !o ? this.token("TERMINATOR", a, e) : o == "TERMINATOR" ? D1(s, mo(s) + a) : o == "INDENT" ? this.addLinebreaks(1, a) : this.token(n, r.substr(2), e), e;
      }
      if (!(t = e0.exec(this._chunk)))
        return 0;
      r = t[0];
      var l = t[1];
      return l ? (this.token("HERECOMMENT", this.sanitizeHeredoc(l, {herecomment: true, indent: Array(this._indent + 1).join(" ")}), r.length), this.token("TERMINATOR", `
`)) : (this.token("HERECOMMENT", r, r.length), this.token("TERMINATOR", `
`)), this.moveHead(r), r.length;
    };
    Wt.prototype.regexToken = function() {
      var t, e, r, i;
      if (this._chunk.charAt(0) != "/")
        return 0;
      if (e = lp.exec(this._chunk))
        return r = this.heregexToken(e), this.moveHead(e[0]), r;
      if (i = $r(this._tokens), i && gr(Yi(i), i.spaced ? y0 : g0) >= 0 || !(e = ap.exec(this._chunk)))
        return 0;
      var t = bn(e), s = t[0], n = t[1], o = t[2];
      return this.token("REGEX", "" + n + o, s.length), s.length;
    };
    Wt.prototype.heregexToken = function(t) {
      var e, e = bn(t), r = e[0], i = e[1], s = e[2];
      return this.token("REGEX", r, r.length), r.length;
    };
    Wt.prototype.lineToken = function() {
      var t, e;
      if (!(e = s0.exec(this._chunk)))
        return 0;
      var r = e[0], i = this.moveHead(r);
      this._seenFor = false;
      var s = $r(this._tokens, 1);
      let n = r.substr(r.lastIndexOf(`
`) + 1);
      var o = this.unfinished();
      if (/^\n#\s/.test(this._chunk))
        return this.addLinebreaks(1), 0;
      this._state.gutter == null && (this._state.gutter = n), (t = this._state.gutter || this._opts.gutter) && (n.indexOf(t) == 0 ? n = n.slice(t.length) : this._chunk[r.length] === void 0 || this.error("incorrect indentation"));
      var a = n.length;
      if (this._opts.dropIndentation)
        return a;
      if (a > 0) {
        this._indentStyle || (this._opts.indent = this._indentStyle = n, this._indentRegex = new RegExp(n, "g"));
        let _ = 0, f = 0, m = this._loc;
        for (; ; )
          if (n.indexOf(this._indentStyle, f) == f)
            _++, f += this._indentStyle.length;
          else {
            if (f == n.length)
              break;
            {
              this._loc += r.length - n.length;
              let b = this._loc;
              this.token("INDENT", n, n.length), this.error("Use tabs for indentation", {offset: b + f, length: n.length - f});
            }
          }
        a = _;
      }
      if (a - this._indebt == this._indent)
        return o ? this.suppressNewlines() : this.newlineToken(i, r), r.length;
      if (a > this._indent) {
        if (o)
          return this._indebt = a - this._indent, this.suppressNewlines(), r.length;
        if (this.inTag())
          return r.length;
        var l = a - this._indent + this._outdebt;
        this.closeDef();
        var p = this._scopes[this._indents.length], c = $r(this._tokens);
        c && Yi(c) == "TERMINATOR" ? (Rs(c, "INDENT"), c._meta || (c._meta = {pre: mo(c), post: ""}), c.scope = p) : (this.token("INDENT", "" + l, 0), this._last.scope = p), this._indents.push(l), this.pushEnd("OUTDENT", {opener: this._last}), this._outdebt = this._indebt = 0, this.addLinebreaks(i);
      } else {
        this._indebt = 0;
        let _ = this._indent - a, f = this._indent, m = this._indentStyle == "	", g = r.replace().split(`
`), b = [], N = g.length, y = 0;
        for (; N > 0; ) {
          let k = g[--N], T = m ? k.length : k.replace(this._indentRegex, "	").length;
          T > y && (y = T), b[N] = y;
        }
        b[0] = f;
        let v = 0, d = [], w = "";
        for (let k = 0, T = bn(g), S = T.length; k < S; k++) {
          let C = b[k];
          for (; f > C; )
            w ? (this.terminatorToken(w), w = "") : this.terminatorToken(""), _--, this.outdentToken(1, true), f--;
          w += `
` + T[k];
        }
        for (w && this.terminatorToken(w); _ > 0; )
          this.outdentToken(1, true), _--;
      }
      return this._indent = a, r.length;
    };
    Wt.prototype.outdentToken = function(t, e, r) {
      for (var i = 0; t > 0; ) {
        var s = this._indents.length - 1;
        if (this._indents[s] == null)
          t = 0;
        else if (this._indents[s] == this._outdebt)
          t -= this._outdebt, this._outdebt = 0;
        else if (this._indents[s] < this._outdebt)
          this._outdebt -= this._indents[s], t -= this._indents[s];
        else {
          i = this._indents.pop() - this._outdebt, t -= i, this._outdebt = 0, e || this.addLinebreaks(1);
          let o = this.pair("OUTDENT");
          if (this.token("OUTDENT", "" + i, 0), o[1] && o[1].opener) {
            let a = o[1].opener;
            this._last._opener = a, a._closer = this._last, a._type == "CSS_SEL" && this.token("CSS_END", "", 0);
          }
        }
      }
      for (i && (this._outdebt -= t); this.lastTokenValue() == ";"; )
        this._tokens.pop();
      this.lastTokenType() == "TERMINATOR" || e || this.token("TERMINATOR", `
`, 0), this._scopes.length = this._indents.length, this.closeDef();
      var n = this.context();
      return (n == "%" || n == "TAG" || n == "IMPORT" || n == "EXPORT") && this.pair(n), this;
    };
    Wt.prototype.whitespaceToken = function(t) {
      var e, r, i;
      if (!((e = np.exec(this._chunk)) || (r = this._chunk.charAt(0) === `
`)))
        return 0;
      if (i = $r(this._tokens), i)
        return e ? (i.spaced = true, e[0].length) : (i.newLine = true, 0);
    };
    Wt.prototype.moveHead = function(t) {
      var e = w0(t, `
`);
      return e;
    };
    Wt.prototype.terminatorToken = function(t, e) {
      return this._lastTyp == "TERMINATOR" ? this._last._value += t : this.token("TERMINATOR", t, e);
    };
    Wt.prototype.addLinebreaks = function(t, e) {
      var r;
      if (!e && t == 0)
        return this;
      var i = this._last;
      if (e || (t == 1 ? r = `
` : t == 2 ? r = `

` : t == 3 ? r = `


` : r = S0(`
`, t)), i) {
        var s = i._type, n = mo(i);
        if (s == "INDENT") {
          var o = i._meta || (i._meta = {pre: "", post: ""});
          return o.post += e || r, this;
        } else if (s == "TERMINATOR")
          return D1(i, n + (e || r)), this;
      }
      this.token("TERMINATOR", e || r, 0);
    };
    Wt.prototype.newlineToken = function(t, e) {
      this.addLinebreaks(t, e), this.closeDef();
      var r = this.context();
      return (r == "TAG" || r == "IMPORT" || r == "EXPORT") && this.pair(r), this;
    };
    Wt.prototype.suppressNewlines = function() {
      return this.value() === "\\" && this._tokens.pop(), this;
    };
    Wt.prototype.literalToken = function() {
      var t, e;
      (t = t0.exec(this._chunk)) ? (e = t[0], i0.test(e) && this.tagParameters()) : e = this._chunk.charAt(0);
      var r = this._ends[this._ends.length - 1], i = this._ends[this._ends.length - 2], s = r == "TAG_END" || r == "OUTDENT" && i == "TAG_END", n = e, o = $r(this._tokens), a = o && Yi(o), l = o && mo(o), p = e.length;
      if (e == "=" && o && (l == "||" || l == "&&"))
        return Rs(o, "COMPOUND_ASSIGN"), D1(o, l + "="), o._len = this._loc - o._loc + e.length, e.length;
      if (e == "\u0192" && (n = "DO"), e == "|") {
        if (l == "(")
          return this.token("DO", "DO", 0), this.pushEnd("|"), this.token("BLOCK_PARAM_START", e, 1), p;
        if (a == "DO")
          return this.pushEnd("|"), this.token("BLOCK_PARAM_START", e, 1), p;
        if (r == "|")
          return this.token("BLOCK_PARAM_END", e, 1), this.pair("|"), p;
      }
      e === ";" && (this._seenFor = false, n = "TERMINATOR"), e == "(" && a == "T." || e == "[" && s ? n = "STYLE_START" : e === "(" && s && a != "=" && o.spaced ? this.token(",", ",") : e === "->" && s ? (n = "TAG_END", this.pair("TAG_END")) : e === "=>" && s ? (n = "TAG_END", this.pair("TAG_END")) : e === "/>" && s ? (n = "TAG_END", this.pair("TAG_END")) : e === ">" && s ? (n = "TAG_END", this.pair("TAG_END")) : e === "TERMINATOR" && r === "DEF" ? this.closeDef() : e === "&" && this.context() == "DEF" ? n = "BLOCK_ARG" : e == "---" || e == "-" && a == "TERMINATOR" && this._chunk.match(/^\-\s*\n/) ? n = "SEPARATOR" : e == "*" && this._chunk.charAt(1).match(/[A-Za-z\_\@\[]/) && (o.spaced || [",", "(", "[", "{", "|", `
`, "	"].indexOf(l) >= 0) ? n = "SPLAT" : e == "*" && (this.context() == "IMPORT" || this.context() == "EXPORT") ? n = "" + this.context() + "_ALL" : e == "," && this.context() == "IMPORT" ? n = "IMPORT_COMMA" : e == "!" && o && !o.spaced && (["]", ")"].indexOf(l) >= 0 || a == "IDENTIFIER" || a == "SYMBOLID" || a == "SUPER") ? n = "BANG" : e == "&" && this._chunk.match(/^\&\s*[,\)\}\]]/) ? n = "DO_PLACEHOLDER" : e == "**" ? n = "EXP" : e == "%" && (a == "NUMBER" || a == ")") && !o.spaced ? n = "UNIT" : gr(e, d0) >= 0 ? n = "MATH" : gr(e, _0) >= 0 ? n = "COMPARE" : gr(e, h0) >= 0 ? n = "COMPOUND_ASSIGN" : gr(e, up) >= 0 ? n = "UNARY" : gr(e, f0) >= 0 ? n = "SHIFT" : gr(e, p0) >= 0 ? n = "LOGIC" : o && !o.spaced && (e == "{" && a == "IDENTIFIER" && (n = "{{"), e === "(" && gr(a, b0) >= 0 ? n = "CALL_START" : e === "(" && a == "DO" ? n = "BLOCK_PARAM_START" : e === "[" && gr(a, k0) >= 0 && (n = "INDEX_START", a == "?" && Rs(o, "INDEX_SOAK")));
      let c = null;
      switch (e) {
        case "(":
        case "{":
        case "[": {
          this.pushEnd(Nl[e], {closeType: Nl[n], i: this._tokens.length});
          break;
        }
        case ")":
        case "}":
        case "]": {
          let _ = this.pair(e);
          if (_ && _[1].closeType) {
            n = _[1].closeType;
            let f = this._tokens[_[1].i];
            c = this._tokens[_[1].i];
          }
          break;
        }
      }
      if (e == "\\") {
        n = "TYPE";
        let _ = this.findTypeAnnotation(this._chunk.slice(1));
        _ && (e = e + _);
      }
      if (e == ".." && !o.spaced && (n = "?.", e = "?."), e == ":" && r == "TAG_RULE" && (n = "T:"), (n == "-" || n == "+") && /\w|\(|\$/.test(this._chunk[1]) && (!o || o.spaced) && (n = n + n + n), this.token(n, e, e.length), c && (c._closer = this._last), this._platform == "tsc") {
        let _ = this._chunk[1] || "";
        e == "." && (!_ || rp[_]) ? this.token("IDENTIFIER", "$CARET$", 0, 1) : e == "@" && (!_ || /[^\$\@\-\.\w]/.test(_)) && this.token("IDENTIFIER", "$CARET$", 0, 1);
      }
      return e.length;
    };
    Wt.prototype.sanitizeHeredoc = function(t, e) {
      var r, i = e.indent, s = e.herecomment;
      if (s) {
        if (a0.test(t) && this.error("block comment cannot contain '*/' starting"), t.indexOf(`
`) <= 0)
          return t;
      } else
        for (var n; r = o0.exec(t); ) {
          var o = r[1];
          (i === null || 0 < (n = o.length) && n < i.length) && (i = o);
        }
      return i && (t = t.replace(RegExp("\\n" + i, "g"), `
`)), s || (t[0] == `
` && (e.offset = i.length + 1), t = t.replace(/^\n/, "")), e.realIndent = i, t;
    };
    Wt.prototype.tagParameters = function() {
      var t;
      if (this.lastTokenType() != ")")
        return this;
      var e = [], r = this._tokens, i = r.length;
      for (Rs(r[--i], "PARAM_END"); t = r[--i]; ) {
        var s = Yi(t);
        switch (s) {
          case ")": {
            e.push(t);
            break;
          }
          case "(":
          case "CALL_START": {
            if (e.length)
              e.pop();
            else
              return s === "(" ? (Rs(t, "PARAM_START"), this) : this;
            break;
          }
        }
      }
      return this;
    };
    Wt.prototype.closeIndentation = function() {
      for (; ; ) {
        var t = this.context();
        if (t == "TAG" || t == "IMPORT" || t == "EXPORT")
          this.pair(t);
        else
          break;
      }
      return this.closeDef(), this.closeSelector(), this.outdentToken(this._indent, false, 0);
    };
    Wt.prototype.balancedString = function(t, e) {
      for (var r, i, s, n = [e], o = 0; o < t.length - 1; ) {
        switch (o++, i = t.charAt(o), i) {
          case "\\": {
            o++;
            continue;
          }
          case e: {
            if (n.pop(), !n.length) {
              var a = t.slice(0, o + 1);
              return a;
            }
            e = n[n.length - 1];
            continue;
          }
        }
        e === "}" && (i == '"' || i == "'") ? n.push(e = i) : e === "}" && i === "/" && (r = lp.exec(t.slice(o)) || ap.exec(t.slice(o))) ? o += r[0].length - 1 : (e === "}" && i === "{" || e === '"' && i === "{") && n.push(e = "}"), s = i;
      }
      return this.error("missing " + n.pop() + ", starting");
    };
    Wt.prototype.interpolateString = function(t, e) {
      e === void 0 && (e = {});
      for (var r = e.heredoc, i = e.quote, s = e.regex, n = e.prefix, o = e.indent, a = this._loc, l = [], p = 0, c = -1, _ = e.offset || 1, f = t.length, m, g, b = false; m = t[c += 1]; ) {
        if (m === "\\") {
          c += 1;
          continue;
        }
        if (m === `
` && o && (_ += o.length), !!(t[c] == "{" && (g = this.balancedString(t.slice(c), "}")))) {
          if (b = true, p < c) {
            var N = new kn("NEOSTRING", this.escapeStr(t.slice(p, c), r, i), this._loc + p + _, c - p);
            l.push(N);
          }
          l.push(new kn("{{", "{", this._loc + c + _, 1));
          var y = g.slice(1, -1);
          if (y = y.replace(/^[^\n\S]+/, ""), y.length) {
            var v = 0, d = this._loc + c + (g.length - y.length) - 1, w = new Wt().tokenize(y, {inline: true, rewrite: false, loc: d + _}, this._script);
            w[0] && Yi(w[0]) == "TERMINATOR" && w.shift(), w.length && l.push.apply(l, w);
          }
          c += g.length - 1, l.push(new kn("}}", "}", this._loc + c + _, 1)), p = c + 1;
        }
      }
      if (c >= p && p < t.length && l.push(new kn("NEOSTRING", this.escapeStr(t.slice(p), r, i), this._loc + p + _, t.length - p)), s)
        return l;
      if (!l.length)
        return this.token("NEOSTRING", '""');
      for (let k = 0, T = l.length; k < T; k++)
        this._tokens.push(l[k]);
      return l;
    };
    Wt.prototype.balancedSelector = function(t, e) {
      var r, i, s = [e];
      for (let n = t.length, o = 1, a = n - o; a > 0 ? o < n : o > n; a > 0 ? o++ : o--) {
        switch (i = t.charAt(o)) {
          case "\\": {
            o++;
            continue;
          }
          case e: {
            if (s.pop(), !s.length)
              return t.slice(0, o + 1);
            e = s[s.length - 1];
            continue;
          }
        }
        e === "}" && i === ")" ? s.push(e = i) : (e === "}" && i === "{" || e === ")" && i === "{") && s.push(e = "}"), r = i;
      }
      return this.error("missing " + s.pop() + ", starting");
    };
    Wt.prototype.pair = function(t) {
      var e = $r(this._ends);
      if (t != e) {
        e !== "OUTDENT" && this.error("unmatched " + t, {length: t.length});
        var r = $r(this._indents);
        return this._indent -= r, this.outdentToken(r, true, 0), this.pair(t);
      }
      return this.popEnd();
    };
    Wt.prototype.token = function(t, e, r, i) {
      this._lastTyp = t, this._lastVal = e;
      var s = this._last = new kn(t, e, this._loc + (i || 0), r || 0);
      this._tokens.push(s);
    };
    Wt.prototype.lastTokenType = function() {
      var t = this._tokens[this._tokens.length - 1];
      return t ? Yi(t) : "NONE";
    };
    Wt.prototype.lastTokenValue = function() {
      var t = this._tokens[this._tokens.length - 1];
      return t ? t._value : "";
    };
    Wt.prototype.tokid = function(t, e) {
      var r;
      return (r = $r(this._tokens, t)) ? (e && Rs(r, e), Yi(r)) : null;
    };
    Wt.prototype.value = function(t, e) {
      var r;
      return (r = $r(this._tokens, t)) ? (e && D1(r, e), mo(r)) : null;
    };
    Wt.prototype.unfinished = function() {
      return l0.test(this._chunk) && (!this._context || !this._context.style) ? true : v0.indexOf(this._lastTyp) >= 0 && this._platform != "tsc";
    };
    Wt.prototype.escapeLines = function(t, e) {
      return t.replace(cp, e ? "\\n" : "");
    };
    Wt.prototype.makeString = function(t, e, r) {
      return t ? (t = t.replace(/\\([\s\S])/g, function(i, s) {
        return s == `
` || s == e ? s : i;
      }), t = t.replace(RegExp("" + e, "g"), "\\$&"), e + this.escapeLines(t, r) + e) : e + e;
    };
    Wt.prototype.error = function(t, e) {
      e === void 0 && (e = {});
      let r = e.offset || this._loc;
      throw this._script.addDiagnostic("error", {message: t, source: e.source || "imba-lexer", range: e.range || this._script.rangeAt(r, r + (e.length || Ff(this)))}).toError();
    };
  });
  var vp = er((fp) => {
    function Ol(t, e) {
      return e && e.indexOf ? e.indexOf(t) : [].indexOf.call(t, e);
    }
    function T0(t) {
      return t ? t.toArray ? t.toArray() : t : [];
    }
    var Tr = ta(), F1 = Tr.Token, Cl = v1(), P1 = Cl.INVERSES, _p = Cl.BALANCED_PAIRS, x4 = Cl.TOK, hi = "TERMINATOR", vr = "INDENT", yo = "OUTDENT", Ll = "THEN", E0 = "CATCH", dp = {_type: "EOF", _value: ""}, Dl = function(t) {
      var e = {};
      for (let r = 0, i = T0(t), s = i.length; r < s; r++)
        e[i[r]] = 1;
      return e;
    }, A0 = [")", "]", "}", "STYLE_END", "OUTDENT", "CALL_END", "PARAM_END", "INDEX_END", "BLOCK_PARAM_END", "STRING_END", "}}", "TAG_END", "CATCH", "WHEN", "ELSE", "FINALLY"], I0 = Dl(A0), mp = {"(": 1, "[": 1, "{": 1, "{{": 1, INDENT: 1, CALL_START: 1, PARAM_START: 1, INDEX_START: 1, BLOCK_PARAM_START: 1, STRING_START: 1, TAG_START: 1}, yp = {")": 1, "]": 1, "}": 1, "}}": 1, OUTDENT: 1, CALL_END: 1, PARAM_END: 1, INDEX_END: 1, BLOCK_PARAM_END: 1, STRING_END: 1, TAG_END: 1}, R0 = ["STYLE_START"], N0 = ["STYLE_START"], O0 = {ELSE: 1, TRY: 1, FINALLY: 1, THEN: 1, BLOCK_PARAM_END: 1, DO: 1, BEGIN: 1, CATCH_VAR: 1}, C0 = {TERMINATOR: true, CATCH: true, FINALLY: true, ELSE: true, OUTDENT: true, LEADING_WHEN: true}, Fl = {IDENTIFIER: 1, TYPE: 1, SYMBOLID: 1, SUPER: 1, THIS: 1, SELF: 1, TAG_END: 1, IVAR: 1, CVAR: 1, ARGVAR: 1, BREAK: 1, CONTINUE: 1, RETURN: 1, INDEX_END: 1, "]": 1, BANG: 1}, Pl = {SELECTOR: 1, IDENTIFIER: 1, SYMBOLID: 1, NUMBER: 1, STRING: 1, SYMBOL: 1, JS: 1, REGEX: 1, NEW: 1, CLASS: 1, IF: 1, AWAIT: 1, UNLESS: 1, TRY: 1, SWITCH: 1, THIS: 1, BOOL: 1, TRUE: 1, FALSE: 1, NULL: 1, UNDEFINED: 1, UNARY: 1, SUPER: 1, IVAR: 1, ARGVAR: 1, SELF: 1, "[": 1, "(": 1, "{": 1, "--": 1, "++": 1, "---": 1, "+++": 1, "#": 1, TAG_START: 1, PARAM_START: 1, SELECTOR_START: 1, STRING_START: 1, IDREF: 1, SPLAT: 1, DO: 1, BLOCK_ARG: 1, FOR: 1, CONTINUE: 1, BREAK: 1, LET: 1, VAR: 1, CONST: 1, CSS: 1, ENV_FLAG: 1}, L0 = ["+", "-"], D0 = ["{", "[", ",", "BLOCK_PARAM_END", "DO"], F0 = Dl(D0), P0 = ["CLASS", "IF", "UNLESS", "TAG", "WHILE", "FOR", "UNTIL", "CATCH", "FINALLY", "MODULE", "LEADING_WHEN", "STRUCT"], M0 = Dl(P0), V0 = {POST_IF: true, POST_UNLESS: true, POST_FOR: true, WHILE: true, UNTIL: true, WHEN: true, BY: true, LOOP: true, TERMINATOR: true, DEF_BODY: true}, gp = 0;
    function Me() {
      this._tokens = [], this._options = {}, this._len = 0, this._starter = null;
    }
    fp.Rewriter = Me;
    Me.prototype.reset = function() {
      return this._starter = null, this._len = 0, this;
    };
    Me.prototype.tokens = function() {
      return this._tokens;
    };
    Me.prototype.rewrite = function(t, e) {
      e === void 0 && (e = {}), this.reset(), this._tokens = t, this._options = e, this._platform = e.platform || e.target;
      for (var r = 0, i = t.length; r < i - 1; ) {
        var s = t[r];
        if (s._type == "DEF_BODY") {
          var n = t[r + 1];
          n && n._type == hi && (s._type = "DEF_EMPTY");
        }
        r++;
      }
      return this.step("all"), gp && console.log(gp), this._tokens;
    };
    Me.prototype.all = function() {
      return this.step("ensureFirstLine"), this.step("removeLeadingNewlines"), this._platform == "tsc" && this.step("addPlaceholderIdentifiers"), this.step("removeMidExpressionNewlines"), this.step("tagDefArguments"), this.step("closeOpenTags"), this.step("addImplicitIndentation"), this.step("tagPostfixConditionals"), this.step("addImplicitBraces"), this.step("addImplicitParentheses");
    };
    Me.prototype.step = function(t) {
      this[t]();
    };
    Me.prototype.scanTokens = function(t) {
      for (var e = this._tokens, r = 0; r < e.length; )
        r += t.call(this, e[r], r, e);
      return true;
    };
    Me.prototype.detectEnd = function(t, e, r, i) {
      i === void 0 && (i = {});
      for (var s = this._tokens, n = 0, o, a, l; t < s.length; ) {
        if (o = s[t], n == 0 && e.call(this, o, t, s, i))
          return r.call(this, o, t, s, i);
        if (!o || n < 0)
          return r.call(this, o, t - 1, s, i);
        a = o._type, mp[a] ? n += 1 : yp[a] && (n -= 1), t += 1;
      }
      return t - 1;
    };
    Me.prototype.ensureFirstLine = function() {
      var t = this._tokens[0];
      (!t || t._type === hi) && this._tokens.unshift(Tr.token("BODYSTART", "BODYSTART"));
    };
    Me.prototype.addPlaceholderIdentifiers = function() {
      let t = /^([\,\]\)\}]|\}\})$/;
      return this.scanTokens(function(e, r, i) {
        var s = i[r - 1] || dp, n = i[r + 1] || dp;
        if (s._type == "=" || s._type == ":") {
          if (e._type === hi && n._type != "INDENT" || e._type == "," || e._type == "DEF_BODY")
            return i.splice(r, 0, new F1("IDENTIFIER", "$CARET$", e._loc, 0)), 2;
        } else if (s._type == "." && (e._type === hi && n._type != "INDENT" || t.test(e._value)))
          return i.splice(r, 0, new F1("IDENTIFIER", "$CARET$", e._loc, 0)), 2;
        return 1;
      });
    };
    Me.prototype.removeLeadingNewlines = function() {
      for (var t = 0, e = 0, r = this._tokens, i, s = r.length; e < s; ) {
        if (i = r[e], i._type !== hi) {
          t = e;
          break;
        }
        e++;
      }
      t && r.splice(0, t);
    };
    Me.prototype.removeMidExpressionNewlines = function() {
      return this.scanTokens(function(t, e, r) {
        var i = r.length > e + 1 ? r[e + 1] : null;
        return !(t._type === hi && i && I0[i._type]) || i && i._type == yo ? 1 : (r.splice(e, 1), 0);
      });
    };
    Me.prototype.tagDefArguments = function() {
      return true;
    };
    Me.prototype.closeOpenTags = function() {
      var t = this, e = function(i, s) {
        return i._type == ">" || i._type == "TAG_END";
      }, r = function(i, s) {
        return i._type = "TAG_END";
      };
      return t.scanTokens(function(i, s, n) {
        return i._type === "TAG_START" && t.detectEnd(s + 1, e, r), 1;
      });
    };
    Me.prototype.addImplicitBlockCalls = function() {
      for (var t = 1, e = this._tokens; t < e.length; ) {
        var r = e[t], i = r._type, s = r._value;
        i == "DO" && (s == "INDEX_END" || s == "IDENTIFIER" || s == "NEW") && (e.splice(t + 1, 0, Tr.token("CALL_END", ")")), e.splice(t + 1, 0, Tr.token("CALL_START", "(")), t++), t++;
      }
    };
    Me.prototype.addLeftBrace = function() {
      return this;
    };
    Me.prototype.addImplicitBraces = function() {
      var t = this, e = [], r = null, i = null, s = 0, n = null, o = ["ROOT", 0], a = "DEF", l = ["IF", "TERNARY", "FOR", a], p = false, c = function(N, y) {
        return t._tokens.splice(y, 0, Tr.RBRACKET);
      }, _ = function(N, y, v) {
        let d = new F1("{", "{", 0, 0, 0);
        return d.generated = true, d.scope = v, t._tokens.splice(y, 0, d);
      }, f = function(N, y, v) {
        let d = new F1("}", "}", 0, 0, 0);
        return d.generated = true, d.scope = v, t._tokens.splice(y, 0, d);
      }, m = function(N, y) {
        return [N, y];
      }, g = [], b = [];
      return t.scanTokens(function(N, y, v) {
        var d = N._type, w = N._value;
        if (d == "CSS_SEL" && N._closer)
          return v.indexOf(N._closer) - y + 1;
        if (d == "STYLE_START" && N._closer)
          return v.indexOf(N._closer) - y;
        if (_p[d] ? b.unshift(d) : P1[d] && P1[d] == b[0] && b.shift(), N0.indexOf(b[0]) >= 0)
          return 1;
        var k = e.length ? e[e.length - 1] : o, T;
        if (d == "INDENT" ? g.unshift(N.scope) : d == "OUTDENT" && g.shift(), l.indexOf(d) >= 0 && d != a)
          return e.push(m(d, y)), 1;
        if (w == "?")
          return e.push(m("TERNARY", y)), 1;
        if (mp[d]) {
          d === vr && l.indexOf(k[0]) >= 0 && e.pop();
          let q = t.tokenType(y - 1);
          return d === vr && (q == "{" || q == "STYLE_START") ? e.push(m("{", y)) : e.push(m(d, y)), 1;
        }
        if (yp[d])
          return k[0] == "TERNARY" && e.pop(), i = e.pop(), i[2] = y, i[0] == "{" && i.generated && f(N, y), 1;
        if (k[0] == "TERNARY" && (d === hi || d === yo) || l.indexOf(k[0]) >= 0 && d === vr)
          return e.pop(), 1;
        if (d == ",")
          return k[0] == "{" && k.generated ? (f(N, y, e.pop()), 2) : 1;
        let S = d == a && Ol(g[0], ["CLASS", "DEF", "MODULE", "TAG", "STRUCT"]) == -1;
        if ((d == ":" || S) && k[0] != "{" && k[0] != "TERNARY" && (l.indexOf(k[0]) == -1 || k[0] == a)) {
          var C = v[y - 2];
          let q = false;
          for (d == a ? (T = y - 1, C = v[T]) : i && i[2] == y - 1 ? T = i[1] - 1 : T = y - 2; t.tokenType(T - 1) === "HERECOMMENT"; )
            T -= 2;
          var L = v[T - 1], D = v[T];
          if ((!C || Ol(C._type, ["INDENT", "TERMINATOR"]) == -1) && (q = true), g[0] && Ol(g[0], ["CLASS", "DEF", "MODULE", "TAG", "STRUCT"]) >= 0 && (q = true), L && Tr.typ(L) == "}" && L.generated && (D._type == "," && !D.generated || !(L.scope && L.scope.autoClose))) {
            v.splice(T - 1, 1);
            var I = m("{", y - 1);
            return I.generated = true, e.push(I), d == a ? (e.push(m(a, y)), 1) : 0;
          } else
            return L && Tr.typ(L) == "," && t.tokenType(T - 2) == "}" ? (v.splice(T - 2, 1), I = m("{"), I.generated = true, e.push(I), d == a ? (e.push(m(a, y)), 1) : 0) : d == a && (!L || L._type != "=") ? (e.push(m(a, y)), 1) : (I = m("{"), I.generated = true, I.autoClose = q, e.push(I), _(N, T + 1), d == a ? (e.push(m(a, y)), 3) : 2);
        }
        if (d == "DO") {
          var U = Tr.typ(v[y - 1]);
          if (["NUMBER", "STRING", "REGEX", "SYMBOL", "]", "}", ")", "STRING_END"].indexOf(U) >= 0) {
            var B = Tr.token(",", ",");
            if (B.generated = true, v.splice(y, 0, B), k.generated)
              return f(N, y), e.pop(), 2;
          }
        }
        return k.generated && (d === hi || d === yo || d === "DEF_BODY") ? (r = e.pop(), f(N, y, r), 2) : 1;
      });
    };
    Me.prototype.generateToken = function(t, e) {
      let r = Tr.token(t, e);
      return r.generated = true, r;
    };
    Me.prototype.addImplicitParentheses = function() {
      var t = this, e = t._tokens, r = false, i = false, s = false, n = false, o = false, a = false, l = false, p = false, c = 0;
      let _ = [], f = null;
      for (var m = function(S, C, L) {
        return L.splice(C, 0, t.generateToken("CALL_END", ")"));
      }, g = function(S, C, L) {
        var D = S._type;
        if (!o && S.fromThen)
          return true;
        var I = D == "IF" || D == "UNLESS" || D == "ELSE";
        (I || D === "CATCH") && (o = true), (I || D === "SWITCH" || D == "TRY") && (a = true);
        var U = t.tokenType(C - 1);
        if ((D == "." || D == "?." || D == "::") && U === yo || D == ":" && _[_.length - 1] == "?" && L[C - 1].spaced || n && (D === vr || D === hi))
          return true;
        if ((D == "WHEN" || D == "BY") && !i)
          return false;
        var B = L.length > C + 1 ? L[C + 1] : null, q = B && B._type;
        if (S.generated || U === ",")
          return false;
        var K = V0[D] || D == vr && !a || D == "DOS" && U != "=";
        return K ? D !== vr || !F0[U] && t.tokenType(C - 2) != "CLASS" && !(B && (B.generated && q == "{" || Pl[q])) : false;
      }; e.length > c + 1; ) {
        var b = e[c], N = b._type;
        if (N == "?" && _.push(N), (N == "STYLE_START" || N == "CSS_SEL") && b._closer) {
          c = e.indexOf(b._closer) + 1;
          continue;
        }
        if (_p[N] ? _.push(f = N) : P1[N] && P1[N] == f && (_.pop(), f = _[_.length - 1]), R0.indexOf(f) >= 0) {
          c++;
          continue;
        }
        N == ":" && e[c - 1].spaced && _[_.length - 1] == "?" && _.pop();
        var y = c > 0 ? e[c - 1] : null, v = e[c + 1], d = y && y._type, w = v && v._type;
        if (N === vr && (d == ")" || d == "]") && (r = true), d == vr && (s = false), d == "TAG_END" && (s = y), M0[d] && (n = true, r = true, d == "FOR" && (i = true)), l = false, p = false, !r && N == vr && v) {
          var k = d && Fl[d], T = w && Pl[w];
          l = (v.generated && w == "{" || T) && k, p = T && k, w == "TAG_START" && d != "TAG_END" && T && (p = false);
        }
        if (o = false, a = false, (N == hi || N == yo || N == vr) && (n = false, r = false), N == hi && (s = false), N == "?" && y && !y.spaced && (b.call = true), b.fromThen) {
          c += 1;
          continue;
        }
        if (!(l || p || y && y.spaced && (y.call || Fl[d]) && (Pl[N] || !(b.spaced || b.newLine) && L0.indexOf(N) >= 0))) {
          c += 1;
          continue;
        }
        if (N === vr && w == "TAG_START" && Fl[d] && d != "TAG_END") {
          c += 1;
          continue;
        }
        if (s && w !== "TAG_START" && d !== "TAG_END") {
          if (N === vr) {
            c += 1;
            continue;
          }
          n = true;
        }
        e.splice(c, 0, t.generateToken("CALL_START", "(")), t.detectEnd(c + 1, g, m), y._type == "?" && (y._type = "FUNC_EXIST"), c += 2, n = false, r = false, i = false;
      }
    };
    Me.prototype.indentCondition = function(t, e, r) {
      var i = t._type;
      return C0[i] && t._value !== ";" && !(i == "ELSE" && this._starter != "IF" && this._starter != "THEN");
    };
    Me.prototype.indentAction = function(t, e, r) {
      var i = this.tokenType(e - 1) === "," ? e - 1 : e;
      r.splice(i, 0, Tr.OUTDENT);
    };
    Me.prototype.addImplicitIndentation = function() {
      for (var t = {OUTDENT: 1, TERMINATOR: 1, FINALLY: 1}, e = 0, r = this._tokens, i; e < r.length; ) {
        var s = r[e], n = s._type, o = this.tokenType(e + 1);
        if (n === hi && o === Ll) {
          r.splice(e, 1);
          continue;
        }
        if (n === E0 && t[this.tokenType(e + 2)]) {
          r.splice(e + 2, 0, Tr.token(vr, "2"), Tr.token(yo, "2")), e += 4;
          continue;
        }
        if (O0[n] && o != vr && o != "BLOCK_PARAM_START" && !(n == "ELSE" && o == "IF") && n != "ELIF") {
          this._starter = i = n;
          var a = Tr.token(vr, "2");
          i === Ll && (a.fromThen = true), a.generated = true, r.splice(e + 1, 0, a), this.detectEnd(e + 2, this.indentCondition, this.indentAction), n === Ll && r.splice(e, 1);
        }
        e++;
      }
    };
    Me.prototype.tagPostfixConditionals = function() {
      var t = this, e = function(i, s, n) {
        return i._type === hi || i._type === vr;
      }, r = function(i, s, n, o) {
        if (i._type != vr)
          if (o.unfinished) {
            let a = Tr.token("EMPTY_BLOCK", "");
            return n.splice(s, 0, a);
          } else
            return Tr.setTyp(o.original, "POST_" + o.original._type);
      };
      return t.scanTokens(function(i, s, n) {
        var o = i._type;
        if (!(o == "IF" || o == "FOR"))
          return 1;
        let a = n[s - 1] && e(n[s - 1]);
        return t.detectEnd(s + 1, e, r, {original: i, unfinished: a}), 1;
      });
    };
    Me.prototype.type = function(t) {
      throw "deprecated";
      var e;
    };
    Me.prototype.injectToken = function(t, e) {
      return this;
    };
    Me.prototype.tokenType = function(t) {
      if (t < 0 || t >= this._tokens.length)
        return null;
      var e = this._tokens[t];
      return e && e._type;
    };
  });
  var bp = er((pa) => {
    var M1 = function() {
      var t = function(io, x, Di, R) {
        for (Di = Di || {}, R = io.length; R--; Di[io[R]] = x)
          ;
        return Di;
      }, e = [1, 4], r = [1, 6], i = [1, 7], s = [1, 39], n = [1, 40], o = [1, 41], a = [1, 42], l = [1, 80], p = [1, 45], c = [1, 126], _ = [1, 44], f = [1, 128], m = [1, 106], g = [1, 134], b = [1, 135], N = [1, 125], y = [1, 132], v = [1, 138], d = [1, 101], w = [1, 127], k = [1, 139], T = [1, 94], S = [1, 95], C = [1, 96], L = [1, 97], D = [1, 98], I = [1, 99], U = [1, 100], B = [1, 87], q = [1, 105], K = [1, 83], Q = [1, 46], Dt = [1, 17], Zt = [1, 18], F = [1, 69], H = [1, 68], Y = [1, 64], P = [1, 104], M = [1, 124], X = [1, 102], ee = [1, 35], oe = [1, 36], tt = [1, 110], $ = [1, 109], et = [1, 108], W = [1, 131], rt = [1, 84], it = [1, 85], ut = [1, 86], at = [1, 111], lt = [1, 92], ht = [1, 47], ct = [1, 53], st = [1, 123], ot = [1, 103], nt = [1, 133], pt = [1, 75], ft = [1, 88], V = [1, 118], j = [1, 119], _t = [1, 120], G = [1, 136], z = [1, 137], dt = [1, 79], mt = [1, 117], yt = [1, 63], gt = [1, 65], vt = [1, 66], bt = [1, 67], kt = [1, 70], xt = [1, 71], Ye = [1, 141], ye = [1, 6, 14], Ua = [1, 6, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 291, 292, 296, 297, 298, 302, 304, 305, 313, 317, 320, 321, 322, 329, 330, 331, 332], Bt = [1, 149], Yt = [1, 146], Kt = [1, 147], Jt = [1, 151], Qt = [1, 152], ae = [1, 155], $t = [1, 156], Vt = [1, 148], qt = [1, 150], Ot = [1, 153], Xt = [1, 154], Nc = [1, 159], Oc = [1, 160], ys = [1, 168], gs = [1, 169], Ct = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], Cc = [2, 430], Lc = [1, 180], Dc = [1, 177], Fc = [1, 178], Pc = [1, 173], Mc = [1, 179], Gi = [1, 185], Vc = [1, 6, 13, 14, 27, 28, 38, 60, 87, 95, 96, 124, 168, 169, 170, 171, 172, 173, 174, 176, 177, 178, 182, 183, 184, 207, 208, 209], yi = [1, 6, 14, 296, 298, 304, 305, 321], jc = [1, 6, 14, 83, 85, 86, 218, 219, 268, 275, 276], Gc = [1, 188], Te = [1, 194], Bc = [1, 196], wt = [1, 213], St = [1, 212], ue = [1, 6, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], Hc = [2, 355], wr = [1, 216], A2 = [1, 6, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 184, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], Or = [2, 349], Po = [6, 27, 87, 95, 124, 167, 168, 169, 170, 171, 172, 173, 174, 176, 177, 178, 182, 183, 184, 208, 209], zn = [1, 254], Un = [1, 253], I2 = [36, 83, 206], zc = [1, 257], Ya = [1, 6, 14, 83, 85, 86, 98, 218, 219, 268, 275, 276], R2 = [1, 263], Zi = [1, 268], ai = [1, 269], Uc = [1, 265], tr = [1, 273], li = [1, 271], Ka = [1, 6, 12, 13, 14, 27, 28, 36, 38, 60, 86, 96, 98, 108, 120, 121, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], gi = [1, 6, 11, 12, 13, 14, 27, 28, 38, 57, 60, 86, 96, 98, 103, 108, 142, 146, 147, 148, 166, 179, 184, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 273, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 327, 328, 329, 330, 331, 332], nn = [1, 303], Yc = [1, 305], Kc = [2, 370], Mo = [1, 319], Vo = [1, 314], jo = [1, 308], Go = [1, 313], qc = [1, 321], Xc = [1, 323], Wc = [1, 324], Jc = [1, 332], Zc = [36, 83, 206, 254, 309], Yn = [1, 6, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 104, 106, 107, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], N2 = [2, 8], Qc = [83, 85], Bo = [1, 6, 14, 184], Kn = [1, 369], Qi = [1, 373], $i = [1, 374], Ho = [1, 383], on = [1, 385], vi = [1, 387], an = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 332], O2 = [1, 6, 11, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], qa = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 330, 332], $c = [1, 399], Xa = [1, 404], Ne = [6, 27, 87, 95, 124, 168, 169, 170, 171, 172, 173, 174, 176, 177, 178, 182, 183, 184, 208, 209], qn = [1, 427], Xn = [1, 426], Wa = [6, 27, 36, 87, 95, 124, 167, 168, 169, 170, 171, 172, 173, 174, 176, 177, 178, 180, 182, 183, 184, 208, 209], C2 = [1, 6, 11, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 184, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 311, 312, 313, 321, 322, 329, 330, 331, 332], Li = [6, 13], qe = [2, 299], L2 = [1, 434], zo = [6, 13, 14, 60, 96], tu = [2, 450], vs = [1, 441], bi = [6, 13, 14, 28, 60, 96, 207], Ja = [2, 303], Uo = [1, 450], Yo = [1, 451], eu = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 305, 313, 321], D2 = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 297, 305, 313, 321], Wn = [311, 312], Za = [60, 311, 312], ru = [1, 6, 12, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], Qa = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], $a = [1, 475], t1 = [1, 476], ln = [1, 481], cn = [1, 482], iu = [1, 488], Ge = [6, 13, 14, 38, 60], e1 = [6, 13, 14, 38, 60, 142], Ko = [6, 13, 14, 38, 60, 142, 184], su = [60, 225, 226], nu = [1, 503], ou = [2, 296], au = [98, 182], qo = [11, 27, 36, 60, 83, 98, 182, 194, 206, 225, 226, 236], lu = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 330, 332], cu = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 297, 313], un = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321], Jn = [1, 521], hn = [6, 14, 134, 144, 175], r1 = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 302, 304, 305, 313, 320, 321, 322, 329, 330, 331, 332], i1 = [14, 302, 317], uu = [1, 6, 12, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], ki = [6, 13, 14], Xo = [2, 300], F2 = [1, 581], s1 = [25, 26, 29, 30, 32, 36, 57, 65, 83, 85, 91, 93, 95, 100, 103, 109, 110, 111, 112, 113, 114, 115, 116, 119, 122, 135, 136, 147, 148, 181, 182, 199, 206, 213, 214, 218, 219, 239, 240, 241, 244, 252, 254, 256, 262, 281, 282, 288, 294, 296, 298, 300, 304, 305, 314, 319, 323, 324, 325, 326, 327, 328], Wo = [1, 586], Jo = [1, 587], P2 = [1, 591], xi = [28, 60, 217, 225, 226], hu = [28, 60, 184, 217, 225, 226], pu = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 296, 298, 304, 305, 313, 321], Cr = [6, 14], n1 = [1, 617], o1 = [1, 616], Zn = [6, 14, 86, 179], Qn = [6, 11, 14, 86, 179, 184, 273], fu = [1, 627], _u = [83, 85, 86, 206], du = [1, 638], mu = [1, 639], yu = [225, 226], Lr = [1, 645], gu = [1, 654], M2 = [1, 655], Br = [1, 683], Hr = [1, 682], zr = [1, 675], Ur = [1, 671], Yr = [1, 672], Kr = [1, 673], qr = [1, 674], Xr = [1, 678], Wr = [1, 679], Jr = [1, 680], Zr = [1, 681], vu = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 146, 147, 148, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 291, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], bu = [12, 13, 60], a1 = [1, 696], bs = [1, 704], ks = [1, 698], xs = [1, 700], $n = [1, 753], ku = [1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 134, 142, 144, 146, 147, 148, 166, 175, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], xu = [6, 14, 60, 134, 144, 175], to = [1, 770], eo = [1, 771], ro = [1, 772], wu = [1, 769], l1 = [6, 14, 36, 57, 60, 95, 100, 134, 144, 146, 147, 148, 151, 159, 160, 161, 162, 163, 164, 165, 166, 175], Dr = [6, 14, 36, 57, 60, 95, 96, 100, 134, 144, 146, 147, 148, 151, 159, 160, 161, 162, 163, 164, 165, 166, 175], c1 = [1, 786], ci = [6, 13, 14, 28, 60], V2 = [6, 13, 14, 27, 28, 60, 98], u1 = [6, 14, 36, 57, 60, 95, 96, 100, 134, 144, 146, 147, 148, 151, 157, 159, 160, 161, 162, 163, 164, 165, 166, 175], j2 = [1, 822], G2 = [1, 823], Su = [60, 96], Tu = [1, 840], h1 = [36, 57, 60, 95, 96, 100, 146, 147, 148, 151, 159, 160, 161, 162, 163, 164, 165, 166], Eu = [96, 146, 147, 148], Au = {trace: function() {
      }, yy: {}, symbols_: {error: 2, Root: 3, Body: 4, Block: 5, TERMINATOR: 6, BODYSTART: 7, Line: 8, Terminator: 9, Type: 10, TYPE: 11, EMPTY_BLOCK: 12, INDENT: 13, OUTDENT: 14, CSSDeclaration: 15, Expression: 16, VarDecl: 17, Comment: 18, Statement: 19, Decorators: 20, ImportDeclaration: 21, ExportDeclaration: 22, Return: 23, Throw: 24, STATEMENT: 25, BREAK: 26, CALL_START: 27, CALL_END: 28, CONTINUE: 29, DEBUGGER: 30, ExtendObject: 31, EXTEND: 32, Identifier: 33, ClassBody: 34, EXPORT: 35, "{": 36, ImportSpecifierList: 37, "}": 38, FROM: 39, String: 40, EXPORT_ALL: 41, AS: 42, Exportable: 43, DEFAULT: 44, DefaultExportable: 45, MethodDeclaration: 46, Class: 47, TagDeclaration: 48, VarAssign: 49, ImportOrExport: 50, IMPORT: 51, ImportDefaultSpecifier: 52, TYPEIMPORT: 53, ImportNamespaceSpecifier: 54, IMPORT_COMMA: 55, ImportFrom: 56, STRING: 57, IMPORT_ALL: 58, ImportSpecifier: 59, ",": 60, OptComma: 61, DecoratorIdentifier: 62, MixinIdentifier: 63, Require: 64, REQUIRE: 65, RequireArg: 66, Literal: 67, Parenthetical: 68, Await: 69, Value: 70, Code: 71, Operation: 72, Assign: 73, If: 74, Ternary: 75, Try: 76, While: 77, For: 78, Switch: 79, Tag: 80, ExpressionBlock: 81, Outdent: 82, IDENTIFIER: 83, SymbolIdentifier: 84, SYMBOLID: 85, DECORATOR: 86, MIXIN: 87, Key: 88, KEY: 89, Argvar: 90, ARGVAR: 91, Symbol: 92, SYMBOL: 93, Decorator: 94, "(": 95, ")": 96, ArgList: 97, ".": 98, AlphaNumeric: 99, NUMBER: 100, UNIT: 101, InterpolatedString: 102, STRING_START: 103, NEOSTRING: 104, Interpolation: 105, STRING_END: 106, "{{": 107, "}}": 108, JS: 109, REGEX: 110, BOOL: 111, TRUE: 112, FALSE: 113, NULL: 114, UNDEFINED: 115, RETURN: 116, Arguments: 117, Selector: 118, SELECTOR_START: 119, SELECTOR_PART: 120, SELECTOR_END: 121, TAG_START: 122, TagOptions: 123, TAG_END: 124, TagBody: 125, TagTypeName: 126, Self: 127, TAG_TYPE: 128, TagIdentifier: 129, StyleBlockDeclaration: 130, CSS: 131, CSS_SEL: 132, StyleBody: 133, CSS_END: 134, GLOBAL: 135, LOCAL: 136, StyleBlockBody: 137, OptStyleBody: 138, StyleNode: 139, StyleDeclaration: 140, StyleProperty: 141, ":": 142, StyleExpressions: 143, CSSPROP: 144, StyleOperator: 145, MATH: 146, "+": 147, "-": 148, StyleExpression: 149, StyleTerm: 150, "/": 151, StyleValue: 152, StyleOperation: 153, StyleFunctionArgs: 154, StyleFunctionArg: 155, StyleTermPlaceholder: 156, CSSUNIT: 157, StyleParens: 158, CSSVAR: 159, DIMENSION: 160, COLOR: 161, PERCENTAGE: 162, CSSURL: 163, CSSFUNCTION: 164, CSSIDENTIFIER: 165, COMPARE: 166, TAG_REF: 167, TAG_ID: 168, TAG_SYMBOL_ID: 169, SYMBOL_ID: 170, TAG_FLAG: 171, TAG_ATTR: 172, TAG_ON: 173, STYLE_START: 174, STYLE_END: 175, "T.": 176, "T:": 177, "T@": 178, "@": 179, TAG_LITERAL: 180, UNARY: 181, "#": 182, TAG_WS: 183, "=": 184, TagAttrValue: 185, TagFlag: 186, "%": 187, TagPartIdentifier: 188, VALUE_START: 189, VALUE_END: 190, TagBodyList: 191, TagBodyItem: 192, SEPARATOR: 193, "...": 194, Splat: 195, LOGIC: 196, TagHandler: 197, TagDeclarationBlock: 198, TAG: 199, TagType: 200, TagId: 201, Assignable: 202, AssignObj: 203, ObjAssignable: 204, SimpleObjAssignable: 205, "[": 206, "]": 207, HERECOMMENT: 208, COMMENT: 209, Method: 210, Do: 211, Begin: 212, BEGIN: 213, DO: 214, BLOCK_PARAM_START: 215, ParamList: 216, BLOCK_PARAM_END: 217, STATIC: 218, DEF: 219, MethodScope: 220, MethodScopeType: 221, MethodIdentifier: 222, MethodParams: 223, MethodBody: 224, DEF_BODY: 225, DEF_EMPTY: 226, This: 227, OptSemicolon: 228, ";": 229, Param: 230, ParamExpression: 231, ParamValue: 232, Object: 233, Array: 234, ParamVar: 235, BLOCK_ARG: 236, SPLAT: 237, VarKeyword: 238, VAR: 239, LET: 240, CONST: 241, VarAssignable: 242, SimpleAssignable: 243, ENV_FLAG: 244, Access: 245, SoakableOp: 246, INDEX_START: 247, IndexValue: 248, INDEX_END: 249, "?.": 250, Super: 251, SUPER: 252, TaggedTemplate: 253, AWAIT: 254, Range: 255, ARGUMENTS: 256, Invocation: 257, BANG: 258, AssignList: 259, ExpressionList: 260, ClassStart: 261, CLASS: 262, ClassName: 263, ClassBodyBlock: 264, ClassBodyLine: 265, ClassDeclLine: 266, ClassFieldDeclaration: 267, DECLARE: 268, ClassField: 269, ClassFieldOp: 270, WatchBody: 271, ClassFieldDecoration: 272, COMPOUND_ASSIGN: 273, ClassFieldIdentifier: 274, PROP: 275, ATTR: 276, ClassFieldBody: 277, WATCH: 278, OptFuncExist: 279, FUNC_EXIST: 280, THIS: 281, SELF: 282, RangeDots: 283, "..": 284, Arg: 285, DO_PLACEHOLDER: 286, SimpleArgs: 287, TRY: 288, Catch: 289, Finally: 290, FINALLY: 291, CATCH: 292, CATCH_VAR: 293, THROW: 294, WhileSource: 295, WHILE: 296, WHEN: 297, UNTIL: 298, Loop: 299, LOOP: 300, ForBody: 301, ELSE: 302, ForKeyword: 303, FOR: 304, POST_FOR: 305, ForStart: 306, ForSource: 307, ForVariables: 308, OWN: 309, ForValue: 310, FORIN: 311, FOROF: 312, BY: 313, SWITCH: 314, Whens: 315, When: 316, LEADING_WHEN: 317, IfBlock: 318, IF: 319, ELIF: 320, POST_IF: 321, "?": 322, NEW: 323, SQRT: 324, "---": 325, "+++": 326, "--": 327, "++": 328, EXP: 329, SHIFT: 330, NOT: 331, RELATION: 332, $accept: 0, $end: 1}, terminals_: {2: "error", 6: "TERMINATOR", 7: "BODYSTART", 11: "TYPE", 12: "EMPTY_BLOCK", 13: "INDENT", 14: "OUTDENT", 25: "STATEMENT", 26: "BREAK", 27: "CALL_START", 28: "CALL_END", 29: "CONTINUE", 30: "DEBUGGER", 32: "EXTEND", 35: "EXPORT", 36: "{", 38: "}", 39: "FROM", 41: "EXPORT_ALL", 42: "AS", 44: "DEFAULT", 51: "IMPORT", 53: "TYPEIMPORT", 55: "IMPORT_COMMA", 57: "STRING", 58: "IMPORT_ALL", 60: ",", 65: "REQUIRE", 83: "IDENTIFIER", 85: "SYMBOLID", 86: "DECORATOR", 87: "MIXIN", 89: "KEY", 91: "ARGVAR", 93: "SYMBOL", 95: "(", 96: ")", 98: ".", 100: "NUMBER", 101: "UNIT", 103: "STRING_START", 104: "NEOSTRING", 106: "STRING_END", 107: "{{", 108: "}}", 109: "JS", 110: "REGEX", 111: "BOOL", 112: "TRUE", 113: "FALSE", 114: "NULL", 115: "UNDEFINED", 116: "RETURN", 119: "SELECTOR_START", 120: "SELECTOR_PART", 121: "SELECTOR_END", 122: "TAG_START", 124: "TAG_END", 128: "TAG_TYPE", 131: "CSS", 132: "CSS_SEL", 134: "CSS_END", 135: "GLOBAL", 136: "LOCAL", 142: ":", 144: "CSSPROP", 146: "MATH", 147: "+", 148: "-", 151: "/", 157: "CSSUNIT", 159: "CSSVAR", 160: "DIMENSION", 161: "COLOR", 162: "PERCENTAGE", 163: "CSSURL", 164: "CSSFUNCTION", 165: "CSSIDENTIFIER", 166: "COMPARE", 167: "TAG_REF", 168: "TAG_ID", 169: "TAG_SYMBOL_ID", 170: "SYMBOL_ID", 171: "TAG_FLAG", 172: "TAG_ATTR", 173: "TAG_ON", 174: "STYLE_START", 175: "STYLE_END", 176: "T.", 177: "T:", 178: "T@", 179: "@", 180: "TAG_LITERAL", 181: "UNARY", 182: "#", 183: "TAG_WS", 184: "=", 187: "%", 188: "TagPartIdentifier", 189: "VALUE_START", 190: "VALUE_END", 193: "SEPARATOR", 194: "...", 196: "LOGIC", 199: "TAG", 206: "[", 207: "]", 208: "HERECOMMENT", 209: "COMMENT", 213: "BEGIN", 214: "DO", 215: "BLOCK_PARAM_START", 217: "BLOCK_PARAM_END", 218: "STATIC", 219: "DEF", 225: "DEF_BODY", 226: "DEF_EMPTY", 229: ";", 236: "BLOCK_ARG", 237: "SPLAT", 239: "VAR", 240: "LET", 241: "CONST", 244: "ENV_FLAG", 247: "INDEX_START", 249: "INDEX_END", 250: "?.", 252: "SUPER", 254: "AWAIT", 256: "ARGUMENTS", 258: "BANG", 262: "CLASS", 268: "DECLARE", 273: "COMPOUND_ASSIGN", 275: "PROP", 276: "ATTR", 278: "WATCH", 280: "FUNC_EXIST", 281: "THIS", 282: "SELF", 284: "..", 286: "DO_PLACEHOLDER", 288: "TRY", 291: "FINALLY", 292: "CATCH", 293: "CATCH_VAR", 294: "THROW", 296: "WHILE", 297: "WHEN", 298: "UNTIL", 300: "LOOP", 302: "ELSE", 304: "FOR", 305: "POST_FOR", 309: "OWN", 311: "FORIN", 312: "FOROF", 313: "BY", 314: "SWITCH", 317: "LEADING_WHEN", 319: "IF", 320: "ELIF", 321: "POST_IF", 322: "?", 323: "NEW", 324: "SQRT", 325: "---", 326: "+++", 327: "--", 328: "++", 329: "EXP", 330: "SHIFT", 331: "NOT", 332: "RELATION"}, productions_: [0, [3, 0], [3, 1], [3, 2], [4, 1], [4, 1], [4, 3], [4, 2], [9, 1], [10, 1], [5, 1], [5, 2], [5, 3], [5, 4], [8, 1], [8, 1], [8, 1], [8, 1], [8, 1], [8, 1], [8, 1], [8, 1], [19, 1], [19, 1], [19, 1], [19, 1], [19, 4], [19, 1], [19, 4], [19, 1], [31, 3], [22, 4], [22, 6], [22, 4], [22, 6], [22, 2], [22, 3], [43, 1], [43, 1], [43, 1], [43, 1], [43, 1], [45, 1], [50, 1], [50, 1], [52, 1], [21, 2], [21, 4], [21, 5], [21, 4], [21, 5], [21, 6], [21, 7], [21, 6], [21, 8], [56, 1], [54, 3], [37, 1], [37, 3], [37, 4], [37, 4], [37, 5], [37, 6], [59, 1], [59, 1], [59, 1], [59, 3], [59, 1], [59, 3], [64, 2], [66, 1], [66, 1], [66, 0], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [16, 1], [81, 1], [81, 3], [33, 1], [84, 1], [62, 1], [63, 1], [88, 1], [90, 1], [92, 1], [94, 1], [94, 3], [94, 4], [94, 3], [20, 1], [20, 2], [99, 2], [99, 1], [99, 1], [99, 1], [99, 1], [40, 1], [102, 1], [102, 2], [102, 2], [102, 2], [105, 2], [105, 3], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [23, 2], [23, 2], [23, 1], [118, 1], [118, 2], [118, 4], [118, 2], [80, 3], [80, 4], [126, 1], [126, 1], [126, 1], [126, 1], [126, 0], [130, 4], [15, 1], [15, 2], [15, 2], [137, 3], [137, 3], [138, 0], [138, 1], [133, 1], [133, 2], [133, 3], [133, 3], [139, 1], [139, 3], [140, 3], [141, 1], [145, 1], [145, 1], [145, 1], [143, 1], [143, 3], [149, 1], [149, 2], [149, 2], [149, 3], [152, 1], [152, 1], [153, 3], [153, 3], [154, 1], [154, 3], [155, 1], [155, 2], [155, 2], [155, 3], [156, 3], [156, 2], [158, 3], [158, 2], [150, 1], [150, 1], [150, 1], [150, 1], [150, 1], [150, 1], [150, 1], [150, 1], [150, 1], [150, 4], [150, 1], [150, 2], [123, 2], [123, 1], [123, 2], [123, 2], [123, 2], [123, 2], [123, 2], [123, 2], [123, 3], [123, 4], [123, 5], [123, 2], [123, 3], [123, 3], [123, 4], [123, 4], [123, 3], [123, 3], [123, 3], [123, 3], [123, 4], [123, 3], [123, 4], [123, 2], [123, 2], [123, 2], [123, 3], [129, 1], [129, 3], [129, 2], [129, 4], [186, 1], [186, 2], [185, 3], [125, 2], [125, 3], [125, 3], [125, 1], [191, 1], [191, 3], [191, 4], [191, 6], [191, 4], [191, 6], [192, 1], [192, 2], [192, 1], [192, 1], [192, 1], [192, 1], [192, 1], [197, 1], [197, 3], [197, 4], [48, 1], [48, 2], [48, 2], [48, 2], [198, 2], [198, 3], [198, 4], [198, 5], [200, 1], [201, 2], [73, 1], [73, 3], [73, 5], [203, 2], [203, 1], [203, 1], [203, 3], [203, 5], [203, 3], [203, 5], [203, 1], [205, 1], [205, 2], [205, 1], [205, 1], [204, 1], [204, 3], [204, 3], [204, 1], [18, 1], [18, 1], [71, 1], [71, 1], [71, 1], [212, 2], [211, 2], [211, 5], [210, 1], [210, 2], [210, 2], [46, 6], [46, 4], [223, 1], [223, 3], [221, 1], [221, 1], [222, 1], [222, 1], [222, 1], [222, 3], [222, 2], [224, 2], [224, 3], [224, 1], [220, 1], [220, 1], [220, 1], [61, 0], [61, 1], [228, 0], [228, 1], [216, 0], [216, 1], [216, 3], [231, 1], [231, 1], [231, 1], [231, 1], [231, 1], [231, 1], [232, 1], [230, 1], [230, 1], [230, 1], [230, 2], [230, 2], [230, 3], [230, 3], [230, 3], [230, 1], [235, 1], [235, 2], [195, 2], [238, 1], [238, 1], [238, 1], [242, 1], [242, 2], [242, 1], [242, 1], [17, 2], [49, 3], [49, 5], [243, 1], [243, 1], [243, 1], [243, 1], [243, 1], [243, 1], [243, 2], [245, 3], [245, 3], [245, 4], [245, 5], [246, 1], [246, 1], [251, 1], [202, 1], [202, 1], [202, 1], [253, 2], [253, 2], [69, 2], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 1], [70, 2], [248, 1], [233, 4], [259, 0], [259, 1], [259, 3], [259, 4], [259, 6], [260, 1], [260, 3], [260, 4], [260, 4], [260, 6], [47, 1], [47, 2], [47, 2], [47, 2], [261, 3], [261, 2], [261, 2], [261, 4], [261, 5], [261, 4], [263, 1], [263, 1], [263, 3], [263, 3], [34, 2], [34, 3], [34, 4], [264, 1], [264, 3], [264, 2], [265, 1], [265, 1], [265, 2], [265, 1], [265, 1], [265, 1], [266, 2], [266, 3], [266, 2], [266, 2], [266, 1], [266, 1], [267, 3], [267, 1], [267, 3], [267, 3], [272, 3], [271, 1], [271, 1], [270, 1], [270, 1], [269, 1], [269, 2], [269, 2], [269, 2], [274, 1], [274, 1], [277, 3], [257, 3], [257, 2], [279, 0], [279, 1], [117, 2], [117, 4], [227, 1], [127, 1], [234, 2], [234, 4], [234, 2], [283, 1], [283, 1], [255, 5], [97, 1], [97, 3], [97, 4], [97, 6], [97, 4], [97, 6], [82, 2], [82, 1], [285, 1], [285, 2], [285, 1], [285, 1], [285, 1], [287, 1], [287, 3], [76, 2], [76, 3], [76, 3], [76, 4], [290, 2], [289, 3], [289, 2], [24, 2], [68, 3], [68, 4], [68, 2], [295, 2], [295, 4], [295, 2], [295, 4], [77, 2], [77, 2], [77, 2], [77, 1], [299, 2], [299, 2], [78, 2], [78, 2], [78, 2], [78, 4], [303, 1], [303, 1], [301, 2], [301, 2], [306, 2], [306, 3], [306, 3], [310, 1], [310, 2], [310, 1], [310, 1], [308, 1], [308, 3], [308, 5], [307, 2], [307, 2], [307, 4], [307, 4], [307, 4], [307, 6], [307, 6], [79, 5], [79, 7], [79, 4], [79, 6], [315, 1], [315, 2], [316, 3], [316, 4], [318, 3], [318, 5], [318, 4], [318, 3], [74, 1], [74, 3], [74, 3], [75, 5], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 2], [72, 3], [72, 3], [72, 3], [72, 3], [72, 3], [72, 3], [72, 3], [72, 4], [72, 3], [72, 3], [72, 5]], performAction: function(x, Di, R, ir, h) {
        var u = h.length - 1;
        switch (ir) {
          case 1:
            return x.$ = new R.Root([]);
          case 2:
            return x.$ = new R.Root(h[u]);
          case 3:
            return x.$ = h[u - 1];
          case 4:
          case 10:
            x.$ = new R.Block([]);
            break;
          case 5:
            x.$ = new R.Block([]).add(h[u]);
            break;
          case 6:
          case 398:
            x.$ = h[u - 2].break(h[u - 1]).add(h[u]);
            break;
          case 7:
          case 399:
            x.$ = h[u - 1].break(h[u]);
            break;
          case 8:
            x.$ = new R.Terminator(h[u]);
            break;
          case 9:
            x.$ = new R.TypeAnnotation(h[u]);
            break;
          case 11:
            x.$ = new R.Block([]).indented(h[u - 1], h[u]);
            break;
          case 12:
          case 89:
          case 142:
          case 148:
          case 223:
          case 395:
            x.$ = h[u - 1].indented(h[u - 2], h[u]);
            break;
          case 13:
          case 396:
            x.$ = h[u - 1].prebreak(h[u - 2]).indented(h[u - 3], h[u]);
            break;
          case 14:
          case 15:
          case 17:
          case 18:
          case 19:
          case 20:
          case 21:
          case 22:
          case 23:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case 55:
          case 70:
          case 71:
          case 72:
          case 73:
          case 74:
          case 75:
          case 76:
          case 77:
          case 78:
          case 79:
          case 80:
          case 81:
          case 82:
          case 83:
          case 84:
          case 85:
          case 86:
          case 87:
          case 88:
          case 106:
          case 107:
          case 115:
          case 132:
          case 144:
          case 149:
          case 153:
          case 154:
          case 155:
          case 162:
          case 163:
          case 176:
          case 182:
          case 183:
          case 232:
          case 234:
          case 235:
          case 236:
          case 237:
          case 242:
          case 252:
          case 262:
          case 263:
          case 265:
          case 266:
          case 267:
          case 270:
          case 273:
          case 274:
          case 275:
          case 279:
          case 284:
          case 288:
          case 289:
          case 290:
          case 293:
          case 294:
          case 296:
          case 297:
          case 298:
          case 299:
          case 300:
          case 301:
          case 302:
          case 306:
          case 307:
          case 308:
          case 309:
          case 310:
          case 311:
          case 312:
          case 315:
          case 325:
          case 326:
          case 327:
          case 328:
          case 330:
          case 331:
          case 336:
          case 337:
          case 340:
          case 349:
          case 350:
          case 351:
          case 355:
          case 356:
          case 357:
          case 358:
          case 359:
          case 361:
          case 362:
          case 363:
          case 364:
          case 365:
          case 366:
          case 380:
          case 400:
          case 401:
          case 403:
          case 404:
          case 405:
          case 410:
          case 411:
          case 413:
          case 417:
          case 418:
          case 425:
          case 426:
          case 449:
          case 450:
          case 452:
          case 454:
          case 455:
          case 475:
          case 482:
          case 483:
          case 489:
          case 491:
          case 492:
          case 507:
          case 515:
            x.$ = h[u];
            break;
          case 16:
            x.$ = h[u].option("block", true);
            break;
          case 24:
          case 116:
            x.$ = new R.Literal(h[u]);
            break;
          case 25:
            x.$ = new R.BreakStatement(h[u]);
            break;
          case 26:
            x.$ = new R.BreakStatement(h[u - 3], h[u - 1]);
            break;
          case 27:
            x.$ = new R.ContinueStatement(h[u]);
            break;
          case 28:
            x.$ = new R.ContinueStatement(h[u - 3], h[u - 1]);
            break;
          case 29:
            x.$ = new R.DebuggerStatement(h[u]);
            break;
          case 30:
            x.$ = new R.ExtendDeclaration(h[u - 1], null, h[u]).set({instanceOnly: true, extension: h[u - 2]});
            break;
          case 31:
            x.$ = new R.ExportNamedDeclaration(h[u - 3], [h[u - 1]]);
            break;
          case 32:
            x.$ = new R.ExportNamedDeclaration(h[u - 5], [h[u - 3]], h[u]);
            break;
          case 33:
            x.$ = new R.ExportAllDeclaration(h[u - 3], [new R.ExportAllSpecifier(h[u - 2])], h[u]);
            break;
          case 34:
            x.$ = new R.ExportAllDeclaration(h[u - 5], [new R.ExportAllSpecifier(h[u - 4], h[u - 2])], h[u]);
            break;
          case 35:
            x.$ = new R.Export(h[u]).set({keyword: h[u - 1]});
            break;
          case 36:
            x.$ = new R.Export(h[u]).set({keyword: h[u - 2], default: h[u - 1]});
            break;
          case 45:
            x.$ = new R.ImportDefaultSpecifier(h[u]);
            break;
          case 46:
            x.$ = new R.ImportDeclaration(h[u - 1], null, h[u]);
            break;
          case 47:
          case 49:
            x.$ = new R.ImportDeclaration(h[u - 3], [h[u - 2]], h[u]);
            break;
          case 48:
            x.$ = new R.ImportTypeDeclaration(h[u - 4], [h[u - 2]], h[u]);
            break;
          case 50:
            x.$ = new R.ImportDeclaration(h[u - 4], null, h[u]);
            break;
          case 51:
            x.$ = new R.ImportDeclaration(h[u - 5], [h[u - 3]], h[u]);
            break;
          case 52:
            x.$ = new R.ImportTypeDeclaration(h[u - 6], [h[u - 3]], h[u]);
            break;
          case 53:
            x.$ = new R.ImportDeclaration(h[u - 5], [h[u - 4], h[u - 2]], h[u]);
            break;
          case 54:
            x.$ = new R.ImportDeclaration(h[u - 7], [h[u - 6], h[u - 3]], h[u]);
            break;
          case 56:
            x.$ = new R.ImportNamespaceSpecifier(new R.Literal(h[u - 2]), h[u]);
            break;
          case 57:
            x.$ = new R.ESMSpecifierList([]).add(h[u]);
            break;
          case 58:
          case 100:
          case 147:
          case 157:
          case 167:
          case 227:
          case 240:
          case 372:
          case 376:
          case 443:
            x.$ = h[u - 2].add(h[u]);
            break;
          case 59:
            x.$ = h[u - 3].add(h[u]);
            break;
          case 60:
          case 196:
            x.$ = h[u - 2];
            break;
          case 61:
            x.$ = h[u - 3];
            break;
          case 62:
          case 231:
          case 379:
          case 447:
            x.$ = h[u - 5].concat(h[u - 2]);
            break;
          case 63:
          case 64:
          case 65:
            x.$ = new R.ImportSpecifier(h[u]);
            break;
          case 66:
            x.$ = new R.ImportSpecifier(h[u - 2], h[u]);
            break;
          case 67:
            x.$ = new R.ImportSpecifier(new R.Literal(h[u]));
            break;
          case 68:
            x.$ = new R.ImportSpecifier(new R.Literal(h[u - 2]), h[u]);
            break;
          case 69:
            x.$ = new R.Require(h[u]).set({keyword: h[u - 1]});
            break;
          case 90:
          case 94:
            x.$ = new R.Identifier(h[u]);
            break;
          case 91:
            x.$ = new R.SymbolIdentifier(h[u]);
            break;
          case 92:
            x.$ = new R.DecoratorIdentifier(h[u]);
            break;
          case 93:
            x.$ = new R.MixinIdentifier(h[u]);
            break;
          case 95:
            x.$ = new R.Argvar(h[u]);
            break;
          case 96:
            x.$ = new R.Symbol(h[u]);
            break;
          case 97:
            x.$ = new R.Decorator(h[u]);
            break;
          case 98:
            x.$ = new R.Decorator(h[u - 2]);
            break;
          case 99:
            x.$ = new R.Decorator(h[u - 3]).set({params: h[u - 1]});
            break;
          case 101:
          case 304:
          case 493:
            x.$ = [h[u]];
            break;
          case 102:
          case 508:
            x.$ = h[u - 1].concat(h[u]);
            break;
          case 103:
            x.$ = new R.NumWithUnit(h[u - 1], h[u]);
            break;
          case 104:
            x.$ = new R.Num(h[u]);
            break;
          case 105:
          case 108:
            x.$ = new R.Str(h[u]);
            break;
          case 109:
            x.$ = new R.InterpolatedString([], {open: h[u]});
            break;
          case 110:
          case 127:
          case 146:
          case 159:
          case 160:
          case 169:
          case 170:
          case 217:
          case 220:
            x.$ = h[u - 1].add(h[u]);
            break;
          case 111:
            x.$ = h[u] ? h[u - 1].add(h[u]) : h[u - 1];
            break;
          case 112:
          case 129:
            x.$ = h[u - 1].option("close", h[u]);
            break;
          case 113:
            x.$ = null;
            break;
          case 114:
          case 212:
          case 213:
          case 221:
          case 224:
          case 285:
          case 448:
            x.$ = h[u - 1];
            break;
          case 117:
            x.$ = new R.RegExp(h[u]);
            break;
          case 118:
            x.$ = new R.Bool(h[u]);
            break;
          case 119:
            x.$ = new R.True(h[u]);
            break;
          case 120:
            x.$ = new R.False(h[u]);
            break;
          case 121:
            x.$ = new R.Nil(h[u]);
            break;
          case 122:
            x.$ = new R.Undefined(h[u]);
            break;
          case 123:
          case 124:
            x.$ = new R.Return(h[u]).set({keyword: h[u - 1]});
            break;
          case 125:
            x.$ = new R.Return().set({keyword: h[u]});
            break;
          case 126:
            x.$ = new R.Selector([], {type: h[u], open: h[u]});
            break;
          case 128:
          case 218:
            x.$ = h[u - 3].add(h[u - 1]);
            break;
          case 130:
            x.$ = h[u - 1].set({open: h[u - 2], close: h[u]});
            break;
          case 131:
            x.$ = h[u - 2].set({body: h[u], open: h[u - 3], close: h[u - 1]});
            break;
          case 133:
          case 134:
          case 250:
            x.$ = new R.TagTypeIdentifier(h[u]);
            break;
          case 135:
            x.$ = new R.ExpressionNode(h[u]);
            break;
          case 136:
            x.$ = new R.TagTypeIdentifier("div");
            break;
          case 137:
          case 150:
            x.$ = new R.StyleRuleSet(h[u - 2], h[u - 1]);
            break;
          case 138:
            x.$ = h[u].set({toplevel: true});
            break;
          case 139:
          case 245:
          case 280:
          case 383:
            x.$ = h[u].set({global: h[u - 1]});
            break;
          case 140:
          case 382:
            x.$ = h[u].set({local: h[u - 1]});
            break;
          case 141:
            x.$ = new R.StyleBody([]).indented(h[u - 2], h[u]);
            break;
          case 143:
            x.$ = new R.StyleBody([]);
            break;
          case 145:
            x.$ = new R.StyleBody([h[u]]);
            break;
          case 151:
            x.$ = new R.StyleDeclaration(h[u - 2], h[u].set({parens: false}));
            break;
          case 152:
            x.$ = new R.StyleProperty([h[u]]);
            break;
          case 156:
          case 166:
            x.$ = new R.StyleExpressions([h[u]]);
            break;
          case 158:
          case 168:
            x.$ = new R.StyleExpression().add(h[u]);
            break;
          case 161:
          case 171:
            x.$ = h[u - 2].addParam(h[u], h[u - 1]);
            break;
          case 164:
            x.$ = new R.StyleOperation([h[u - 2], h[u - 1], h[u]]);
            break;
          case 165:
            x.$ = h[u - 2].add([h[u - 1], h[u]]);
            break;
          case 172:
            x.$ = new R.StyleInterpolationExpression(h[u - 1]).setEnds(h[u - 2], h[u]);
            break;
          case 173:
          case 175:
            x.$ = h[u - 1].set({unit: h[u]});
            break;
          case 174:
            x.$ = new R.StyleParens(h[u - 1]).setEnds(h[u - 2], h[u]);
            break;
          case 177:
            x.$ = new R.StyleVar(h[u]);
            break;
          case 178:
          case 180:
            x.$ = new R.StyleDimension(h[u]);
            break;
          case 179:
            x.$ = new R.StyleColor(h[u]);
            break;
          case 181:
            x.$ = new R.StyleNumber(h[u]);
            break;
          case 184:
            x.$ = new R.StyleURL(h[u]);
            break;
          case 185:
            x.$ = new R.StyleFunction(h[u - 3], h[u - 1]);
            break;
          case 186:
            x.$ = new R.StyleIdentifier(h[u]);
            break;
          case 187:
            x.$ = h[u].set({op: h[u - 1]});
            break;
          case 188:
            x.$ = new R.Tag({type: h[u - 1], reference: h[u]});
            break;
          case 189:
            x.$ = new R.Tag({type: h[u]});
            break;
          case 190:
            x.$ = h[u - 1].addPart(h[u], R.TagId);
            break;
          case 191:
          case 192:
            x.$ = h[u - 1].addPart(new R.IdentifierExpression(h[u].cloneSlice(1)), R.TagId);
            break;
          case 193:
            x.$ = h[u - 1].addPart(h[u], R.TagFlag);
            break;
          case 194:
            x.$ = h[u - 1].addPart(h[u], R.TagAttr);
            break;
          case 195:
            x.$ = h[u - 1].addPart(h[u], R.TagHandler);
            break;
          case 197:
            x.$ = h[u - 3].addPart(new R.StyleRuleSet(null, h[u - 1]), R.TagFlag);
            break;
          case 198:
            x.$ = h[u - 4].addPart(new R.StyleRuleSet(null, h[u - 1]), R.TagFlag);
            break;
          case 199:
            x.$ = h[u - 1].addPart(new R.MixinIdentifier(h[u]), R.TagFlag);
            break;
          case 200:
          case 201:
            x.$ = h[u - 2].addPart(h[u], R.TagHandler);
            break;
          case 202:
            x.$ = h[u - 3].addPart(h[u].prepend("_"), R.TagFlag);
            break;
          case 203:
            x.$ = h[u - 3].addPart(h[u].prepend("!"), R.TagFlag);
            break;
          case 204:
            x.$ = h[u - 2].addPart(h[u], R.TagFlag);
            break;
          case 205:
            x.$ = h[u - 2].addPart(h[u], R.TagId);
            break;
          case 206:
            x.$ = h[u - 2].addPart(h[u - 1], R.TagSep).addPart(h[u], R.TagAttr);
            break;
          case 207:
            x.$ = h[u - 2].addPart(new R.ArgList([]), R.TagArgList);
            break;
          case 208:
          case 210:
            x.$ = h[u - 3].addPart(h[u - 1], R.TagArgList);
            break;
          case 209:
            x.$ = h[u - 2].addPart(null, R.TagArgList);
            break;
          case 211:
            x.$ = h[u - 1].addPart(h[u], R.TagSep);
            break;
          case 214:
            x.$ = h[u - 2].addPart(h[u], R.TagAttrValue, h[u - 1]);
            break;
          case 215:
            x.$ = new R.IdentifierExpression(h[u]);
            break;
          case 216:
          case 268:
          case 269:
            x.$ = new R.IdentifierExpression(h[u - 1]);
            break;
          case 219:
            x.$ = new R.TagFlag();
            break;
          case 222:
            x.$ = new R.TagBody([]).indented(h[u - 1], h[u]);
            break;
          case 225:
            x.$ = new R.TagBody([h[u]]);
            break;
          case 226:
            x.$ = new R.TagBody([]).add(h[u]);
            break;
          case 228:
          case 373:
          case 377:
          case 444:
            x.$ = h[u - 3].add(h[u - 1]).add(h[u]);
            break;
          case 229:
          case 445:
            x.$ = h[u - 5].add(h[u - 1]).add(h[u]);
            break;
          case 230:
          case 378:
          case 446:
            x.$ = h[u - 2].indented(h[u - 3], h[u]);
            break;
          case 233:
          case 451:
            x.$ = new R.Splat(h[u]).set({keyword: h[u - 1]});
            break;
          case 238:
            x.$ = h[u].set({inTagTree: true});
            break;
          case 239:
            x.$ = new R.TagHandler(new R.IdentifierExpression(h[u].cloneSlice(1, "TAG_LITERAL")));
            break;
          case 241:
            x.$ = h[u - 3].add(h[u - 1], h[u - 2].generated ? R.TagHandlerCallback : R.TagArgList, h[u - 2], h[u]);
            break;
          case 243:
            x.$ = h[u].set({extension: true});
            break;
          case 244:
            x.$ = h[u].set({local: true});
            break;
          case 246:
            x.$ = new R.TagDeclaration(h[u]).set({keyword: h[u - 1]});
            break;
          case 247:
            x.$ = new R.TagDeclaration(h[u - 1], null, h[u]).set({keyword: h[u - 2]});
            break;
          case 248:
            x.$ = new R.TagDeclaration(h[u - 2], h[u]).set({keyword: h[u - 3]});
            break;
          case 249:
            x.$ = new R.TagDeclaration(h[u - 3], h[u - 1], h[u]).set({keyword: h[u - 4]});
            break;
          case 251:
            x.$ = new R.TagIdRef(h[u]);
            break;
          case 253:
          case 333:
            x.$ = new R.Assign(h[u - 1], h[u - 2], h[u]);
            break;
          case 254:
          case 334:
            x.$ = new R.Assign(h[u - 3], h[u - 4], h[u - 1].indented(h[u - 2], h[u]));
            break;
          case 255:
            x.$ = new R.ObjRestAttr(h[u]).set({spread: h[u - 1]});
            break;
          case 256:
            x.$ = h[u].set({inObject: true});
            break;
          case 257:
            x.$ = new R.ObjAttr(h[u]);
            break;
          case 258:
            x.$ = new R.ObjAttr(h[u - 2], h[u]);
            break;
          case 259:
            x.$ = new R.ObjAttr(h[u - 4], h[u - 1].indented(h[u - 2], h[u]));
            break;
          case 260:
            x.$ = new R.ObjAttr(h[u - 2], null, h[u]);
            break;
          case 261:
            x.$ = new R.ObjAttr(h[u - 4], null, h[u - 1].indented(h[u - 2], h[u]));
            break;
          case 264:
          case 292:
          case 329:
          case 341:
          case 424:
          case 438:
          case 467:
          case 490:
            x.$ = h[u - 1].set({datatype: h[u]});
            break;
          case 271:
            x.$ = new R.Comment(h[u], true);
            break;
          case 272:
            x.$ = new R.Comment(h[u], false);
            break;
          case 276:
            x.$ = new R.Begin(h[u]);
            break;
          case 277:
            x.$ = new R.Lambda([], h[u], null, null, {bound: true, keyword: h[u - 1]});
            break;
          case 278:
            x.$ = new R.Lambda(h[u - 2], h[u], null, null, {bound: true, keyword: h[u - 4]});
            break;
          case 281:
          case 406:
          case 409:
            x.$ = h[u].set({static: h[u - 1]});
            break;
          case 282:
            x.$ = new R.MethodDeclaration(h[u - 1], h[u], h[u - 2], h[u - 4], h[u - 3]).set({def: h[u - 5], keyword: h[u - 5], datatype: h[u - 2].option("datatype")});
            break;
          case 283:
            x.$ = new R.MethodDeclaration(h[u - 1], h[u], h[u - 2], null).set({def: h[u - 3], keyword: h[u - 3], datatype: h[u - 2].option("datatype")});
            break;
          case 286:
            x.$ = {static: true};
            break;
          case 287:
            x.$ = {};
            break;
          case 291:
            x.$ = new R.InterpolatedIdentifier(h[u - 1]);
            break;
          case 295:
            x.$ = new R.Block([]).set({end: h[u]._loc});
            break;
          case 303:
            x.$ = [];
            break;
          case 305:
            x.$ = h[u - 2].concat(h[u]);
            break;
          case 313:
          case 314:
          case 322:
            x.$ = new R.Param(h[u]);
            break;
          case 316:
            x.$ = h[u].set({splat: h[u - 1]});
            break;
          case 317:
            x.$ = h[u].set({blk: h[u - 1]});
            break;
          case 318:
            x.$ = new R.Param(h[u - 2].value(), h[u]).set({datatype: h[u - 2].option("datatype")});
            break;
          case 319:
          case 320:
            x.$ = new R.Param(h[u - 2], h[u]);
            break;
          case 321:
            x.$ = new R.RestParam(h[u]);
            break;
          case 323:
            x.$ = new R.Param(h[u - 1]).set({datatype: h[u]});
            break;
          case 324:
            x.$ = R.SPLAT(h[u]);
            break;
          case 332:
            x.$ = new R.VarReference(h[u], h[u - 1]);
            break;
          case 335:
            x.$ = new R.EnvFlag(h[u]);
            break;
          case 338:
          case 390:
            x.$ = new R.VarOrAccess(h[u]);
            break;
          case 339:
          case 391:
            x.$ = new R.Access(".", null, h[u]);
            break;
          case 342:
          case 392:
          case 532:
          case 533:
          case 534:
          case 535:
          case 536:
          case 538:
          case 539:
            x.$ = R.OP(h[u - 1], h[u - 2], h[u]);
            break;
          case 343:
          case 393:
            x.$ = new R.IndexAccess(h[u - 1], h[u - 2], h[u]);
            break;
          case 344:
            x.$ = new R.IndexAccess(".", h[u - 3], h[u - 1]);
            break;
          case 345:
            x.$ = R.OP(h[u - 3], h[u - 4], h[u - 1]);
            break;
          case 348:
            x.$ = new R.Super(h[u]);
            break;
          case 352:
          case 353:
            x.$ = new R.TaggedTemplate(h[u - 1], h[u]);
            break;
          case 354:
            x.$ = new R.Await(h[u]).set({keyword: h[u - 1]});
            break;
          case 360:
            x.$ = R.ARGUMENTS;
            break;
          case 367:
            x.$ = new R.BangCall(h[u - 1]).set({keyword: h[u]});
            break;
          case 368:
            x.$ = new R.Index(h[u]);
            break;
          case 369:
            x.$ = new R.Obj(h[u - 2], h[u - 3].generated).setEnds(h[u - 3], h[u]);
            break;
          case 370:
            x.$ = new R.AssignList([]);
            break;
          case 371:
            x.$ = new R.AssignList([h[u]]);
            break;
          case 374:
            x.$ = h[u - 5].concat(h[u - 2].indented(h[u - 3], h[u]));
            break;
          case 375:
            x.$ = new R.ExpressionList([]).add(h[u]);
            break;
          case 381:
            x.$ = h[u].set({extension: h[u - 1]});
            break;
          case 384:
            x.$ = new R.ClassDeclaration(h[u - 1], null, h[u]).set({keyword: h[u - 2]});
            break;
          case 385:
            x.$ = new R.ClassDeclaration(h[u], null, []).set({keyword: h[u - 1]});
            break;
          case 386:
            x.$ = new R.ClassDeclaration(null, null, h[u]).set({keyword: h[u - 1]});
            break;
          case 387:
            x.$ = new R.ClassDeclaration(h[u - 2], h[u], []).set({keyword: h[u - 3]});
            break;
          case 388:
            x.$ = new R.ClassDeclaration(h[u - 3], h[u - 1], h[u]).set({keyword: h[u - 4]});
            break;
          case 389:
            x.$ = new R.ClassDeclaration(null, h[u - 1], h[u]).set({keyword: h[u - 3]});
            break;
          case 394:
            x.$ = new R.ClassBody([]).indented(h[u - 1], h[u]);
            break;
          case 397:
            x.$ = new R.ClassBody([]).add(h[u]);
            break;
          case 402:
            x.$ = h[u - 1].concat([h[u]]);
            break;
          case 407:
            x.$ = h[u].set({static: h[u - 1], declareOnly: h[u - 2]});
            break;
          case 408:
            x.$ = h[u].set({declareOnly: h[u - 1]});
            break;
          case 412:
            x.$ = h[u - 2].set({value: h[u], op: h[u - 1]});
            break;
          case 414:
          case 415:
          case 416:
            x.$ = h[u - 2].set({watch: h[u]});
            break;
          case 421:
            x.$ = new R.ClassField(h[u]);
            break;
          case 422:
            x.$ = new R.ClassProperty(h[u]).set({keyword: h[u - 1]});
            break;
          case 423:
            x.$ = new R.ClassAttribute(h[u]).set({keyword: h[u - 1]});
            break;
          case 427:
            x.$ = [h[u - 2], h[u - 1]];
            break;
          case 428:
            x.$ = new R.Call(h[u - 2], h[u], h[u - 1]);
            break;
          case 429:
            x.$ = h[u - 1].addBlock(h[u]);
            break;
          case 430:
            x.$ = false;
            break;
          case 431:
            x.$ = true;
            break;
          case 432:
            x.$ = new R.ArgList([]).setEnds(h[u - 1], h[u]);
            break;
          case 433:
            x.$ = h[u - 2].setEnds(h[u - 3], h[u]);
            break;
          case 434:
            x.$ = new R.This(h[u]);
            break;
          case 435:
            x.$ = new R.Self(h[u]);
            break;
          case 436:
            x.$ = new R.Arr(new R.ArgList([])).setEnds(h[u - 1], h[u]);
            break;
          case 437:
            x.$ = new R.Arr(h[u - 2]).setEnds(h[u - 3], h[u - 2]);
            break;
          case 439:
            x.$ = "..";
            break;
          case 440:
            x.$ = "...";
            break;
          case 441:
            x.$ = R.OP(h[u - 2], h[u - 3], h[u - 1]);
            break;
          case 442:
            x.$ = new R.ArgList([h[u]]);
            break;
          case 453:
            x.$ = new R.DoPlaceholder(h[u]);
            break;
          case 456:
            x.$ = [].concat(h[u - 2], h[u]);
            break;
          case 457:
            x.$ = new R.Try(h[u]);
            break;
          case 458:
            x.$ = new R.Try(h[u - 1], h[u]);
            break;
          case 459:
            x.$ = new R.Try(h[u - 1], null, h[u]);
            break;
          case 460:
            x.$ = new R.Try(h[u - 2], h[u - 1], h[u]);
            break;
          case 461:
            x.$ = new R.Finally(h[u]);
            break;
          case 462:
            x.$ = new R.Catch(h[u], h[u - 1]);
            break;
          case 463:
            x.$ = new R.Catch(h[u], null);
            break;
          case 464:
            x.$ = new R.Throw(h[u]);
            break;
          case 465:
            x.$ = new R.Parens(h[u - 1], h[u - 2], h[u]);
            break;
          case 466:
            x.$ = new R.ExpressionWithUnit(new R.Parens(h[u - 2], h[u - 3], h[u - 1]), h[u]);
            break;
          case 468:
            x.$ = new R.While(h[u], {keyword: h[u - 1]});
            break;
          case 469:
            x.$ = new R.While(h[u - 2], {guard: h[u], keyword: h[u - 3]});
            break;
          case 470:
            x.$ = new R.While(h[u], {invert: true, keyword: h[u - 1]});
            break;
          case 471:
            x.$ = new R.While(h[u - 2], {invert: true, guard: h[u], keyword: h[u - 3]});
            break;
          case 472:
          case 480:
            x.$ = h[u - 1].addBody(h[u]);
            break;
          case 473:
          case 474:
            x.$ = h[u].addBody(R.Block.wrap([h[u - 1]]));
            break;
          case 476:
            x.$ = new R.While(new R.Literal("true", {keyword: h[u - 1]})).addBody(h[u]);
            break;
          case 477:
            x.$ = new R.While(new R.Literal("true", {keyword: h[u - 1]})).addBody(R.Block.wrap([h[u]]));
            break;
          case 478:
          case 479:
            x.$ = h[u].addBody([h[u - 1]]);
            break;
          case 481:
            x.$ = h[u - 3].addBody(h[u - 2]).addElse(h[u]);
            break;
          case 484:
            x.$ = {source: new R.ValueNode(h[u])};
            break;
          case 485:
            x.$ = h[u].configure({own: h[u - 1].own, await: h[u - 1].await, name: h[u - 1][0], index: h[u - 1][1], keyword: h[u - 1].keyword, params: h[u - 1]});
            break;
          case 486:
            x.$ = (h[u].keyword = h[u - 1]) && h[u];
            break;
          case 487:
            x.$ = (h[u].await = h[u - 1]) && (h[u].keyword = h[u - 2]) && h[u];
            break;
          case 488:
            x.$ = (h[u].own = true) && (h[u].keyword = h[u - 2]) && h[u];
            break;
          case 494:
            x.$ = [h[u - 2], h[u]];
            break;
          case 495:
            x.$ = [h[u - 4], h[u - 2], h[u]];
            break;
          case 496:
            x.$ = new R.ForIn({source: h[u]});
            break;
          case 497:
            x.$ = new R.ForOf({source: h[u], object: true});
            break;
          case 498:
            x.$ = new R.ForIn({source: h[u - 2], guard: h[u]});
            break;
          case 499:
            x.$ = new R.ForOf({source: h[u - 2], guard: h[u], object: true});
            break;
          case 500:
            x.$ = new R.ForIn({source: h[u - 2], step: h[u]});
            break;
          case 501:
            x.$ = new R.ForIn({source: h[u - 4], guard: h[u - 2], step: h[u]});
            break;
          case 502:
            x.$ = new R.ForIn({source: h[u - 4], step: h[u - 2], guard: h[u]});
            break;
          case 503:
            x.$ = new R.Switch(h[u - 3], h[u - 1]);
            break;
          case 504:
            x.$ = new R.Switch(h[u - 5], h[u - 3], h[u - 1]);
            break;
          case 505:
            x.$ = new R.Switch(null, h[u - 1]);
            break;
          case 506:
            x.$ = new R.Switch(null, h[u - 3], h[u - 1]);
            break;
          case 509:
            x.$ = [new R.SwitchCase(h[u - 1], h[u])];
            break;
          case 510:
            x.$ = [new R.SwitchCase(h[u - 2], h[u - 1])];
            break;
          case 511:
            x.$ = new R.If(h[u - 1], h[u], {type: h[u - 2]});
            break;
          case 512:
            x.$ = h[u - 4].addElse(new R.If(h[u - 1], h[u], {type: h[u - 2]}));
            break;
          case 513:
            x.$ = h[u - 3].addElse(new R.If(h[u - 1], h[u], {type: h[u - 2]}));
            break;
          case 514:
            x.$ = h[u - 2].addElse(h[u].set({keyword: h[u - 1]}));
            break;
          case 516:
            x.$ = new R.If(h[u], new R.Block([h[u - 2]]), {type: h[u - 1], statement: true});
            break;
          case 517:
            x.$ = new R.If(h[u], new R.Block([h[u - 2]]), {type: h[u - 1]});
            break;
          case 518:
            x.$ = R.If.ternary(h[u - 4], h[u - 2], h[u]);
            break;
          case 519:
            x.$ = R.Instantiation.for(h[u], h[u - 1]);
            break;
          case 520:
          case 521:
          case 522:
          case 523:
          case 524:
          case 525:
            x.$ = R.OP(h[u - 1], h[u]);
            break;
          case 526:
          case 527:
            x.$ = new R.UnaryOp(h[u - 1], null, h[u]);
            break;
          case 528:
          case 529:
            x.$ = new R.UnaryOp(h[u], h[u - 1], null, true);
            break;
          case 530:
          case 531:
            x.$ = new R.Op(h[u - 1], h[u - 2], h[u]);
            break;
          case 537:
            x.$ = R.OP(h[u - 1], h[u - 3], h[u]).invert(h[u - 2]);
            break;
          case 540:
            x.$ = R.OP(h[u - 3], h[u - 4], h[u - 1].indented(h[u - 2], h[u]));
            break;
        }
      }, table: [{1: [2, 1], 3: 1, 4: 2, 5: 3, 7: e, 8: 5, 12: r, 13: i, 15: 8, 16: 9, 17: 10, 18: 11, 19: 12, 20: 13, 21: 14, 22: 15, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 35: p, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 51: _, 57: f, 62: 89, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: N, 90: 112, 91: y, 92: 129, 93: v, 94: 43, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 16, 131: Q, 135: Dt, 136: Zt, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {1: [3]}, {1: [2, 2], 6: Ye, 9: 140}, {6: [1, 142]}, t(ye, [2, 4]), t(ye, [2, 5]), t(Ua, [2, 10]), {4: 144, 6: [1, 145], 7: e, 8: 5, 14: [1, 143], 15: 8, 16: 9, 17: 10, 18: 11, 19: 12, 20: 13, 21: 14, 22: 15, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 35: p, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 51: _, 57: f, 62: 89, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: N, 90: 112, 91: y, 92: 129, 93: v, 94: 43, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 16, 131: Q, 135: Dt, 136: Zt, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ye, [2, 14]), t(ye, [2, 15], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(ye, [2, 16], {184: Nc}), t(ye, [2, 17]), t(ye, [2, 18], {303: 121, 306: 122, 295: 161, 301: 162, 296: V, 298: j, 304: G, 305: z, 321: Oc}), t(ye, [2, 19], {62: 89, 94: 163, 86: N}), t(ye, [2, 20]), t(ye, [2, 21]), t(ye, [2, 138]), {15: 164, 46: 167, 130: 16, 131: Q, 135: ys, 136: gs, 198: 166, 199: M, 219: W, 261: 165, 262: st}, {15: 170, 130: 16, 131: Q, 135: ys, 136: gs, 198: 172, 199: M, 261: 171, 262: st}, t(Ct, [2, 73]), t(Ct, [2, 74], {279: 174, 211: 175, 246: 176, 27: Cc, 98: Lc, 214: $, 247: Dc, 250: Fc, 258: Pc, 280: Mc}), t(Ct, [2, 75]), t(Ct, [2, 76]), t(Ct, [2, 77]), t(Ct, [2, 78]), t(Ct, [2, 79]), t(Ct, [2, 80]), t(Ct, [2, 81]), t(Ct, [2, 82]), t(Ct, [2, 83]), t(Ct, [2, 84]), t(Ct, [2, 85]), t(Ct, [2, 86]), t(Ct, [2, 87]), {33: 182, 36: c, 83: g, 206: Gi, 233: 184, 234: 183, 242: 181}, t(Vc, [2, 271]), t(Vc, [2, 272]), t(yi, [2, 22]), t(yi, [2, 23]), t(yi, [2, 24]), t(yi, [2, 25], {27: [1, 186]}), t(yi, [2, 27], {27: [1, 187]}), t(yi, [2, 29]), t(jc, [2, 101], {98: Gc}), {33: 195, 36: [1, 193], 40: 189, 52: 190, 53: [1, 191], 54: 192, 57: Te, 58: Bc, 83: g}, {15: 203, 17: 208, 32: [1, 206], 36: [1, 197], 41: [1, 198], 43: 199, 44: [1, 200], 46: 201, 47: 202, 48: 204, 49: 205, 130: 16, 131: Q, 135: [1, 207], 136: Zt, 198: 82, 199: M, 219: W, 238: 34, 239: rt, 240: it, 241: ut, 261: 81, 262: st}, {132: [1, 209]}, {16: 210, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ue, Hc, {184: [1, 214]}), t(ue, [2, 356]), t(ue, [2, 357]), t(ue, [2, 358], {10: 215, 11: wr}), t(ue, [2, 359]), t(ue, [2, 360]), t(ue, [2, 361]), t(ue, [2, 362]), t(ue, [2, 363], {36: [1, 218], 120: [1, 217], 121: [1, 219]}), t(ue, [2, 364]), t(ue, [2, 365]), t(ue, [2, 366]), t(Ct, [2, 273]), t(Ct, [2, 274]), t(Ct, [2, 275]), {16: 220, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 221, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 222, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 223, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 224, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 225, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 226, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {33: 114, 36: c, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 70: 228, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 118: 56, 119: q, 127: 113, 182: P, 201: 55, 202: 229, 206: X, 227: 54, 233: 91, 234: 90, 243: 227, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 255: 52, 256: ct, 257: 57, 281: ot, 282: nt}, {33: 114, 36: c, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 70: 228, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 118: 56, 119: q, 127: 113, 182: P, 201: 55, 202: 229, 206: X, 227: 54, 233: 91, 234: 90, 243: 230, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 255: 52, 256: ct, 257: 57, 281: ot, 282: nt}, t(A2, Or, {102: 234, 40: 235, 10: 236, 11: wr, 57: Te, 103: k, 273: [1, 233], 327: [1, 231], 328: [1, 232]}), t(Ct, [2, 252]), t(Ct, [2, 515], {302: [1, 237], 320: [1, 238]}), {5: 239, 12: r, 13: i}, {5: 240, 12: r, 13: i}, t(Ct, [2, 475]), {5: 241, 12: r, 13: i}, {13: [1, 243], 16: 242, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {33: 244, 83: g, 198: 246, 199: M, 261: 245, 262: st}, t(Ct, [2, 380]), t(Ct, [2, 242]), t(Po, [2, 136], {123: 247, 126: 248, 127: 249, 129: 252, 36: zn, 83: [1, 250], 128: [1, 251], 180: Un, 282: nt}), t(I2, [2, 325]), t(I2, [2, 326]), t(I2, [2, 327]), t(yi, [2, 125], {69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 31: 30, 47: 31, 48: 32, 80: 33, 238: 34, 23: 37, 24: 38, 202: 48, 251: 49, 67: 50, 68: 51, 255: 52, 227: 54, 201: 55, 118: 56, 257: 57, 253: 58, 64: 59, 210: 60, 211: 61, 212: 62, 243: 72, 49: 73, 318: 74, 295: 76, 299: 77, 301: 78, 261: 81, 198: 82, 234: 90, 233: 91, 99: 93, 46: 107, 90: 112, 127: 113, 33: 114, 84: 115, 245: 116, 303: 121, 306: 122, 92: 129, 102: 130, 17: 208, 19: 211, 16: 255, 117: 256, 25: s, 26: n, 27: zc, 29: o, 30: a, 32: l, 36: c, 57: f, 65: m, 83: g, 85: b, 91: y, 93: v, 95: d, 100: w, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 119: q, 122: K, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 199: M, 206: X, 213: tt, 214: $, 218: et, 219: W, 239: rt, 240: it, 241: ut, 244: at, 252: lt, 254: ht, 256: ct, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 300: _t, 314: dt, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}), {16: 258, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ya, [2, 97], {95: [1, 259]}), t(A2, [2, 350], {10: 260, 11: wr}), t(A2, [2, 351]), t(ue, [2, 348]), t(ue, [2, 115]), t(ue, [2, 116]), t(ue, [2, 117]), t(ue, [2, 118]), t(ue, [2, 119]), t(ue, [2, 120]), t(ue, [2, 121]), t(ue, [2, 122]), {13: R2, 16: 262, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 260: 261, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {13: Zi, 16: 264, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 266, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 207: Uc, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t([1, 6, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 182, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], [2, 434]), {83: [1, 274]}, t(Ka, [2, 126]), t(ue, [2, 72], {99: 93, 92: 129, 102: 130, 66: 275, 67: 276, 68: 277, 57: f, 93: v, 95: d, 100: w, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U}), t(Ct, [2, 279]), {46: 278, 219: W}, {5: 279, 12: r, 13: i, 215: [1, 280]}, {5: 281, 12: r, 13: i}, t(gi, [2, 335]), t(gi, [2, 336]), t(gi, [2, 337]), t(gi, [2, 338]), t(gi, [2, 339]), t(gi, [2, 340]), {16: 282, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 283, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 284, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {5: 285, 12: r, 13: i, 16: 286, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {33: 292, 36: c, 83: g, 206: X, 233: 294, 234: 293, 254: [1, 289], 255: 287, 308: 288, 309: [1, 290], 310: 291}, {307: 295, 311: [1, 296], 312: [1, 297]}, {13: nn, 33: 301, 34: 299, 83: g, 84: 302, 85: b, 166: [1, 300], 263: 298}, {128: Yc, 200: 304}, t([1, 6, 11, 13, 14, 27, 36, 38, 60, 83, 85, 86, 95, 98, 182, 194, 206, 218, 219, 225, 226, 236, 268, 275, 276], [2, 92]), t([6, 13, 38, 60], Kc, {92: 129, 102: 130, 259: 306, 203: 307, 46: 309, 204: 310, 205: 311, 18: 312, 99: 315, 33: 316, 84: 317, 88: 318, 57: f, 83: g, 85: b, 89: Mo, 93: v, 95: Vo, 100: w, 103: k, 194: jo, 206: Go, 208: ee, 209: oe, 219: W}), t(ue, [2, 104], {101: [1, 320]}), t(ue, [2, 105]), t(ue, [2, 106]), t(ue, [2, 107], {105: 322, 104: qc, 106: Xc, 107: Wc}), {33: 329, 62: 330, 83: g, 84: 331, 85: b, 86: N, 127: 328, 206: Jc, 220: 325, 222: 326, 227: 327, 281: ot, 282: nt}, t(gi, [2, 95]), t([1, 6, 11, 12, 13, 14, 27, 28, 38, 57, 60, 86, 87, 95, 96, 98, 103, 108, 124, 142, 146, 147, 148, 166, 167, 168, 169, 170, 171, 172, 173, 174, 176, 177, 178, 179, 182, 183, 184, 190, 194, 196, 207, 208, 209, 214, 217, 225, 226, 247, 249, 250, 258, 273, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 327, 328, 329, 330, 331, 332], [2, 435]), t([1, 6, 11, 12, 13, 14, 27, 28, 36, 38, 39, 42, 55, 57, 60, 83, 85, 86, 96, 98, 103, 108, 142, 146, 147, 148, 166, 179, 182, 184, 190, 194, 196, 206, 207, 214, 217, 218, 219, 225, 226, 236, 247, 249, 250, 258, 268, 273, 275, 276, 280, 284, 296, 297, 298, 304, 305, 311, 312, 313, 321, 322, 327, 328, 329, 330, 331, 332], [2, 90]), t([1, 6, 11, 12, 13, 14, 27, 28, 36, 38, 57, 60, 83, 86, 96, 98, 103, 108, 142, 146, 147, 148, 166, 179, 182, 184, 190, 194, 196, 206, 207, 214, 217, 225, 226, 236, 247, 249, 250, 258, 273, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 327, 328, 329, 330, 331, 332], [2, 91]), t(Zc, [2, 482]), t(Zc, [2, 483]), t(ue, [2, 96]), t(Yn, [2, 109]), t(ye, [2, 7], {15: 8, 16: 9, 17: 10, 18: 11, 19: 12, 20: 13, 21: 14, 22: 15, 130: 16, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 31: 30, 47: 31, 48: 32, 80: 33, 238: 34, 23: 37, 24: 38, 94: 43, 202: 48, 251: 49, 67: 50, 68: 51, 255: 52, 227: 54, 201: 55, 118: 56, 257: 57, 253: 58, 64: 59, 210: 60, 211: 61, 212: 62, 243: 72, 49: 73, 318: 74, 295: 76, 299: 77, 301: 78, 261: 81, 198: 82, 62: 89, 234: 90, 233: 91, 99: 93, 46: 107, 90: 112, 127: 113, 33: 114, 84: 115, 245: 116, 303: 121, 306: 122, 92: 129, 102: 130, 8: 333, 25: s, 26: n, 29: o, 30: a, 32: l, 35: p, 36: c, 51: _, 57: f, 65: m, 83: g, 85: b, 86: N, 91: y, 93: v, 95: d, 100: w, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 119: q, 122: K, 131: Q, 135: Dt, 136: Zt, 147: F, 148: H, 181: Y, 182: P, 199: M, 206: X, 208: ee, 209: oe, 213: tt, 214: $, 218: et, 219: W, 239: rt, 240: it, 241: ut, 244: at, 252: lt, 254: ht, 256: ct, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 296: V, 298: j, 300: _t, 304: G, 305: z, 314: dt, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}), t([1, 6, 14, 25, 26, 29, 30, 32, 35, 36, 51, 57, 65, 83, 85, 86, 89, 91, 93, 95, 100, 103, 109, 110, 111, 112, 113, 114, 115, 116, 119, 122, 131, 132, 135, 136, 144, 147, 148, 181, 182, 194, 196, 199, 206, 208, 209, 213, 214, 218, 219, 237, 239, 240, 241, 244, 252, 254, 256, 262, 268, 275, 276, 281, 282, 286, 288, 294, 296, 298, 300, 304, 305, 314, 319, 323, 324, 325, 326, 327, 328], N2), {1: [2, 3]}, t(Ua, [2, 11]), {6: Ye, 9: 140, 14: [1, 334]}, {4: 335, 7: e, 8: 5, 15: 8, 16: 9, 17: 10, 18: 11, 19: 12, 20: 13, 21: 14, 22: 15, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 35: p, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 51: _, 57: f, 62: 89, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: N, 90: 112, 91: y, 92: 129, 93: v, 94: 43, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 16, 131: Q, 135: Dt, 136: Zt, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 336, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 337, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 338, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 339, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 340, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 341, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 342, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {332: [1, 343]}, {16: 344, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 345, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 346, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 474]), t(Ct, [2, 479]), {13: [1, 348], 16: 347, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 349, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 473]), t(Ct, [2, 478]), t(jc, [2, 102], {98: Gc}), t(ye, [2, 139]), t(Ct, [2, 383]), t(Ct, [2, 245]), t(Ct, [2, 280]), {15: 164, 130: 16, 131: Q, 135: ys, 136: gs}, {15: 170, 130: 16, 131: Q, 135: ys, 136: gs}, t(ye, [2, 140]), t(Ct, [2, 382]), t(Ct, [2, 244]), t(ue, [2, 367]), {27: zc, 117: 350}, t(ue, [2, 429]), {33: 351, 83: g, 84: 352, 85: b}, {16: 354, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 248: 353, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Qc, [2, 347], {206: [1, 355]}), {27: [2, 431]}, t(Qc, [2, 346]), t(Bo, [2, 332]), t(Bo, [2, 328], {10: 356, 11: wr}), t(Bo, [2, 330], {10: 260, 11: wr}), t(Bo, [2, 331]), {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 266, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 207: Uc, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 358, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 359, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {33: 360, 83: g}, t(ye, [2, 46]), {39: [1, 361], 55: [1, 362]}, {33: 195, 36: [1, 364], 52: 363, 83: g}, {39: [1, 365]}, {13: Kn, 33: 370, 37: 367, 38: [1, 366], 44: Qi, 59: 368, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, t([1, 6, 12, 13, 14, 27, 28, 36, 38, 57, 60, 86, 95, 96, 98, 100, 108, 134, 142, 144, 146, 147, 148, 151, 159, 160, 161, 162, 163, 164, 165, 166, 175, 179, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 313, 321, 322, 329, 330, 331, 332], [2, 108]), t([39, 55], [2, 45]), {42: [1, 375]}, {13: Kn, 33: 370, 37: 376, 44: Qi, 59: 368, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, {39: [1, 377], 42: [1, 378]}, t(ye, [2, 35]), {16: 380, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 45: 379, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ye, [2, 37]), t(ye, [2, 38]), t(ye, [2, 39]), t(ye, [2, 40]), t(ye, [2, 41]), {198: 246, 199: M, 261: 245, 262: st}, {15: 164, 130: 16, 131: Q, 135: ys, 136: gs, 198: 166, 199: M, 261: 165, 262: st}, {184: Nc}, {13: Ho, 132: on, 133: 381, 139: 382, 140: 384, 141: 386, 144: vi}, t(an, [2, 354], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), {295: 161, 296: V, 298: j, 301: 162, 303: 121, 304: G, 305: z, 306: 122, 321: Oc}, {198: 172, 199: M, 261: 171, 262: st}, {46: 167, 198: 166, 199: M, 219: W, 261: 165, 262: st}, {13: [1, 389], 16: 388, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(O2, [2, 467]), t([1, 6, 11, 12, 13, 14, 27, 28, 36, 38, 57, 60, 83, 86, 96, 98, 103, 108, 142, 146, 147, 148, 166, 179, 182, 184, 190, 194, 196, 206, 207, 214, 217, 225, 226, 236, 247, 249, 250, 258, 273, 280, 284, 296, 297, 298, 304, 305, 311, 312, 313, 321, 322, 327, 328, 329, 330, 331, 332], [2, 9]), t(Ka, [2, 127]), {16: 390, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ka, [2, 129]), t(an, [2, 519], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), t(an, [2, 520], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), t(an, [2, 521], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), t(qa, [2, 522], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 329: Vt, 331: Ot}), t(qa, [2, 523], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 329: Vt, 331: Ot}), t(an, [2, 524], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), t(an, [2, 525], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), t(Ct, [2, 526], {102: 234, 40: 235, 10: 236, 11: wr, 27: Or, 98: Or, 214: Or, 247: Or, 250: Or, 258: Or, 280: Or, 57: Te, 103: k}), {27: Cc, 98: Lc, 211: 175, 214: $, 246: 176, 247: Dc, 250: Fc, 258: Pc, 279: 174, 280: Mc}, t([27, 98, 214, 247, 250, 258, 280], Hc), t(Ct, [2, 527], {102: 234, 40: 235, 10: 236, 11: wr, 27: Or, 98: Or, 214: Or, 247: Or, 250: Or, 258: Or, 280: Or, 57: Te, 103: k}), t(Ct, [2, 528]), t(Ct, [2, 529]), {13: [1, 392], 16: 391, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ue, [2, 352], {105: 322, 104: qc, 106: Xc, 107: Wc}), t(ue, [2, 353]), t(gi, [2, 341]), {5: 394, 12: r, 13: i, 319: [1, 393]}, {16: 395, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 457], {289: 396, 290: 397, 291: $c, 292: [1, 398]}), t(Ct, [2, 472]), t(Ct, [2, 480], {302: [1, 400]}), {13: [1, 401], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {315: 402, 316: 403, 317: Xa}, {13: nn, 34: 405}, t(Ct, [2, 381]), t(Ct, [2, 243]), {6: [1, 423], 18: 422, 27: [1, 421], 87: [1, 415], 95: [1, 420], 124: [1, 406], 168: [1, 407], 169: [1, 408], 170: [1, 409], 171: [1, 410], 172: [1, 411], 173: [1, 412], 174: [1, 413], 176: [1, 414], 177: [1, 416], 178: [1, 417], 182: [1, 418], 183: [1, 419], 184: [1, 424], 208: ee, 209: oe}, t(Ne, [2, 189], {167: [1, 425]}), t(Po, [2, 132]), t(Po, [2, 133]), t(Po, [2, 134]), t(Po, [2, 135], {36: qn, 180: Xn}), t(Wa, [2, 215]), {16: 428, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(yi, [2, 123], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(yi, [2, 124]), {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 28: [1, 429], 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 430, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(yi, [2, 464], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 96: [1, 431], 97: 432, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(C2, [2, 438]), t(Li, qe, {61: 435, 60: L2, 96: [1, 433]}), t(zo, [2, 375], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {13: R2, 16: 262, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 260: 436, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t([6, 13, 60, 207], tu, {303: 121, 306: 122, 295: 157, 301: 158, 283: 437, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 194: [1, 439], 196: Qt, 284: [1, 438], 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(C2, [2, 436]), t([6, 13, 207], qe, {61: 440, 60: vs}), t(bi, [2, 442]), {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 442, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 443, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(bi, [2, 452]), t(bi, [2, 453]), t(bi, [2, 454]), {16: 444, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ue, [2, 251]), t(ue, [2, 69]), t(ue, [2, 70]), t(ue, [2, 71], {10: 215, 11: wr}), t(Ct, [2, 281]), t(ue, [2, 277]), t([60, 217], Ja, {216: 445, 230: 446, 233: 447, 234: 448, 235: 449, 33: 452, 36: c, 83: g, 194: Uo, 206: Gi, 236: Yo}), t(Ct, [2, 276]), {5: 453, 12: r, 13: i, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(eu, [2, 468], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 297: [1, 454], 298: j, 304: G, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(eu, [2, 470], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 297: [1, 455], 298: j, 304: G, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 476]), t(D2, [2, 477], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 484]), t(Wn, [2, 486]), {33: 292, 36: c, 83: g, 206: Gi, 233: 294, 234: 293, 308: 456, 310: 291}, {33: 292, 36: c, 83: g, 206: Gi, 233: 294, 234: 293, 308: 457, 310: 291}, t(Wn, [2, 493], {60: [1, 458]}), t(Za, [2, 489], {10: 459, 11: wr}), t(Za, [2, 491], {10: 260, 11: wr}), t(Za, [2, 492]), t(Ct, [2, 485]), {16: 460, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 461, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ru, [2, 385], {34: 462, 13: nn, 98: [1, 464], 166: [1, 463]}), t(Ct, [2, 386]), {16: 465, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Qa, [2, 390]), t(Qa, [2, 391]), {6: [1, 468], 14: [1, 466], 15: 472, 18: 473, 20: 470, 33: 483, 46: 477, 62: 89, 80: 474, 83: g, 84: 484, 85: b, 86: N, 94: 43, 122: K, 130: 16, 131: Q, 135: ys, 136: gs, 208: ee, 209: oe, 218: $a, 219: W, 264: 467, 265: 469, 266: 471, 267: 478, 268: t1, 269: 479, 274: 480, 275: ln, 276: cn}, t(ru, [2, 246], {34: 485, 13: nn, 166: [1, 486]}), t(Ct, [2, 250]), t([6, 13, 38], qe, {61: 487, 60: iu}), t(Ge, [2, 371]), {16: 489, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ge, [2, 256]), t(Ge, [2, 257], {142: [1, 490]}), t(e1, [2, 267], {184: [1, 491]}), t(Ge, [2, 262]), {16: 492, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 493, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(e1, [2, 270]), t(Ko, [2, 263], {10: 494, 11: wr}), t(Ko, [2, 265]), t(Ko, [2, 266]), t(Ko, [2, 94]), t(ue, [2, 103]), t(Yn, [2, 110]), t(Yn, [2, 111]), t(Yn, [2, 112]), {16: 496, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 108: [1, 495], 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {98: [1, 498], 182: [1, 499], 221: 497}, t(su, Ja, {230: 446, 233: 447, 234: 448, 235: 449, 33: 452, 223: 500, 10: 501, 216: 502, 11: wr, 27: nu, 36: c, 83: g, 98: ou, 182: ou, 194: Uo, 206: Gi, 236: Yo}), t(au, [2, 297]), t(au, [2, 298]), t(qo, [2, 288]), t(qo, [2, 289]), t(qo, [2, 290]), {16: 504, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ye, [2, 6]), t(Ua, [2, 12]), {6: Ye, 9: 140, 14: [1, 505]}, t(qa, [2, 530], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 329: Vt, 331: Ot}), t(qa, [2, 531], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 329: Vt, 331: Ot}), t(lu, [2, 532], {303: 121, 306: 122, 295: 157, 301: 158, 329: Vt, 331: Ot}), t(lu, [2, 533], {303: 121, 306: 122, 295: 157, 301: 158, 329: Vt, 331: Ot}), t([1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 330, 332], [2, 534], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 329: Vt, 331: Ot}), t([1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322], [2, 535], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t([1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322], [2, 536], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 506, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t([1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 166, 179, 190, 194, 196, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 313, 321, 322, 332], [2, 538], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 329: Vt, 330: qt, 331: Ot}), t(cu, [2, 517], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {142: [1, 507], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(un, [2, 333], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 508, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(cu, [2, 516], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(ue, [2, 428]), t(gi, [2, 342]), t(gi, [2, 343]), {249: [1, 509]}, t([207, 249], [2, 368], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 354, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 248: 510, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Bo, [2, 329]), t(bi, tu, {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {28: [1, 511], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {28: [1, 512], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Ya, [2, 100]), {40: 513, 57: Te}, {36: [1, 515], 54: 514, 58: Bc}, {39: [1, 516]}, {13: Kn, 33: 370, 37: 517, 44: Qi, 59: 368, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, {40: 518, 57: Te}, {39: [1, 519]}, t(Li, qe, {61: 522, 38: [1, 520], 60: Jn}), t(Ge, [2, 57]), {13: Kn, 33: 370, 37: 523, 44: Qi, 59: 368, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, t(Ge, [2, 63], {42: [1, 524]}), t(Ge, [2, 64]), t(Ge, [2, 65]), t(Ge, [2, 67], {42: [1, 525]}), t(Ge, [2, 93]), {33: 526, 83: g}, t(Li, qe, {61: 522, 38: [1, 527], 60: Jn}), {40: 528, 57: Te}, {33: 529, 83: g}, t(ye, [2, 36]), t(ye, [2, 42], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {6: Ye, 9: 532, 134: [1, 530], 140: 531, 141: 386, 144: vi}, t(hn, [2, 145]), {13: Ho, 132: on, 133: 533, 139: 382, 140: 384, 141: 386, 144: vi}, t(hn, [2, 149]), {13: [1, 535], 137: 534}, {142: [1, 536]}, {142: [2, 152]}, t(un, [2, 253], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 537, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {38: [1, 538], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(un, [2, 539], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 539, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 540, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(r1, [2, 514]), {5: 541, 12: r, 13: i, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Ct, [2, 458], {290: 542, 291: $c}), t(Ct, [2, 459]), {5: 544, 12: r, 13: i, 293: [1, 543]}, {5: 545, 12: r, 13: i}, {5: 546, 12: r, 13: i}, {315: 547, 316: 403, 317: Xa}, {14: [1, 548], 302: [1, 549], 316: 550, 317: Xa}, t(i1, [2, 507]), {16: 552, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 287: 551, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 30]), t(uu, [2, 130], {125: 553, 80: 556, 13: [1, 554], 27: [1, 555], 122: K}), t(Ne, [2, 190]), t(Ne, [2, 191]), t(Ne, [2, 192]), t(Ne, [2, 193]), t(Ne, [2, 194]), t(Ne, [2, 195]), {13: Ho, 132: on, 133: 558, 139: 382, 140: 384, 141: 386, 144: vi, 175: [1, 557]}, {36: zn, 129: 562, 174: [1, 559], 179: [1, 560], 180: Un, 181: [1, 561]}, t(Ne, [2, 199]), {36: zn, 129: 563, 180: Un}, {36: zn, 129: 564, 180: Un}, {36: zn, 129: 565, 180: Un}, t(Ne, [2, 211], {129: 566, 36: zn, 180: Un}), {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 96: [1, 567], 97: 568, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 28: [1, 569], 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 570, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ne, [2, 212]), t(Ne, [2, 213]), {185: 571, 189: [1, 572]}, t(Ne, [2, 188]), t(Wa, [2, 217]), {16: 573, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {38: [1, 574], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(ue, [2, 432]), t([6, 13, 28], qe, {61: 575, 60: vs}), t(Ya, [2, 98]), t(Li, qe, {61: 577, 60: vs, 96: [1, 576]}), t(O2, [2, 465], {101: [1, 578]}), t(ki, Xo, {69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 31: 30, 47: 31, 48: 32, 80: 33, 238: 34, 23: 37, 24: 38, 202: 48, 251: 49, 67: 50, 68: 51, 255: 52, 227: 54, 201: 55, 118: 56, 257: 57, 253: 58, 64: 59, 210: 60, 211: 61, 212: 62, 243: 72, 49: 73, 318: 74, 295: 76, 299: 77, 301: 78, 261: 81, 198: 82, 234: 90, 233: 91, 99: 93, 46: 107, 90: 112, 127: 113, 33: 114, 84: 115, 245: 116, 303: 121, 306: 122, 92: 129, 102: 130, 17: 208, 19: 211, 16: 579, 25: s, 26: n, 29: o, 30: a, 32: l, 36: c, 57: f, 65: m, 83: g, 85: b, 91: y, 93: v, 95: d, 100: w, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 119: q, 122: K, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 199: M, 206: X, 213: tt, 214: $, 218: et, 219: W, 239: rt, 240: it, 241: ut, 244: at, 252: lt, 254: ht, 256: ct, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 296: V, 298: j, 300: _t, 304: G, 305: z, 314: dt, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}), {6: Ye, 9: 580, 13: F2}, t(ki, qe, {61: 582, 60: L2}), {16: 583, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(s1, [2, 439]), t(s1, [2, 440]), {6: Wo, 9: 585, 13: Jo, 207: [1, 584]}, t([6, 13, 14, 28, 207], Xo, {69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 31: 30, 47: 31, 48: 32, 80: 33, 238: 34, 23: 37, 24: 38, 202: 48, 251: 49, 67: 50, 68: 51, 255: 52, 227: 54, 201: 55, 118: 56, 257: 57, 253: 58, 64: 59, 210: 60, 211: 61, 212: 62, 243: 72, 49: 73, 318: 74, 295: 76, 299: 77, 301: 78, 261: 81, 198: 82, 234: 90, 233: 91, 99: 93, 46: 107, 90: 112, 127: 113, 33: 114, 84: 115, 245: 116, 303: 121, 306: 122, 92: 129, 102: 130, 17: 208, 19: 211, 195: 270, 18: 272, 16: 357, 285: 588, 25: s, 26: n, 29: o, 30: a, 32: l, 36: c, 57: f, 65: m, 83: g, 85: b, 91: y, 93: v, 95: d, 100: w, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 119: q, 122: K, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 199: M, 206: X, 208: ee, 209: oe, 213: tt, 214: $, 218: et, 219: W, 237: tr, 239: rt, 240: it, 241: ut, 244: at, 252: lt, 254: ht, 256: ct, 262: st, 281: ot, 282: nt, 286: li, 288: pt, 294: ft, 296: V, 298: j, 300: _t, 304: G, 305: z, 314: dt, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}), t(ki, qe, {61: 589, 60: vs}), t(bi, [2, 451], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(bi, [2, 324], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {60: P2, 217: [1, 590]}, t(xi, [2, 304]), t(xi, [2, 313], {184: [1, 592]}), t(xi, [2, 314], {10: 260, 11: wr, 184: [1, 593]}), t(xi, [2, 315], {184: [1, 594]}), t(xi, [2, 321], {33: 452, 235: 595, 83: g}), {33: 452, 83: g, 235: 596}, t(hu, [2, 322], {10: 597, 11: wr}), t(r1, [2, 511]), {16: 598, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 599, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Wn, [2, 487]), t(Wn, [2, 488]), {33: 292, 36: c, 83: g, 206: Gi, 233: 294, 234: 293, 310: 600}, t(Za, [2, 490]), t([1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 296, 298, 304, 305, 321], [2, 496], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 297: [1, 601], 313: [1, 602], 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(pu, [2, 497], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 297: [1, 603], 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 384]), {16: 604, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {33: 605, 83: g, 84: 606, 85: b}, {13: nn, 34: 607, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Ct, [2, 394]), {6: Ye, 9: 609, 14: [1, 608]}, {15: 472, 18: 473, 20: 470, 33: 483, 46: 477, 62: 89, 80: 474, 83: g, 84: 484, 85: b, 86: N, 94: 43, 122: K, 130: 16, 131: Q, 135: ys, 136: gs, 208: ee, 209: oe, 218: $a, 219: W, 264: 610, 265: 469, 266: 471, 267: 478, 268: t1, 269: 479, 274: 480, 275: ln, 276: cn}, t(Cr, [2, 397]), t(Cr, [2, 400], {62: 89, 94: 163, 46: 477, 267: 478, 269: 479, 274: 480, 33: 483, 84: 484, 266: 611, 83: g, 85: b, 86: N, 218: $a, 219: W, 268: t1, 275: ln, 276: cn}), t(Cr, [2, 401]), t(Cr, [2, 403]), t(Cr, [2, 404]), t(Cr, [2, 405]), {33: 483, 46: 613, 83: g, 84: 484, 85: b, 219: W, 267: 612, 269: 479, 274: 480, 275: ln, 276: cn}, {33: 483, 83: g, 84: 484, 85: b, 218: [1, 614], 267: 615, 269: 479, 274: 480, 275: ln, 276: cn}, t(Cr, [2, 410]), t(Cr, [2, 411], {86: n1, 179: o1}), t(Zn, [2, 413], {270: 618, 10: 619, 11: wr, 184: [1, 620], 273: [1, 621]}), t(Qn, [2, 421]), {33: 483, 83: g, 84: 484, 85: b, 274: 622}, {33: 483, 83: g, 84: 484, 85: b, 274: 623}, t(Qn, [2, 425]), t(Qn, [2, 426]), t(Ct, [2, 247]), {128: Yc, 200: 624}, {6: Ye, 9: 626, 13: fu, 38: [1, 625]}, t([6, 13, 14, 38], Xo, {92: 129, 102: 130, 46: 309, 204: 310, 205: 311, 18: 312, 99: 315, 33: 316, 84: 317, 88: 318, 203: 628, 57: f, 83: g, 85: b, 89: Mo, 93: v, 95: Vo, 100: w, 103: k, 194: jo, 206: Go, 208: ee, 209: oe, 219: W}), t(Ge, [2, 255], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {13: [1, 630], 16: 629, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {13: [1, 632], 16: 631, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 207: [1, 633], 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {96: [1, 634], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Ko, [2, 264]), t(Yn, [2, 113]), {108: [1, 635], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {33: 329, 62: 330, 83: g, 84: 331, 85: b, 86: N, 206: Jc, 222: 636}, t(_u, [2, 286]), t(_u, [2, 287]), {224: 637, 225: du, 226: mu}, t(qo, [2, 292]), t(yu, [2, 284], {60: P2}), t([28, 60], Ja, {230: 446, 233: 447, 234: 448, 235: 449, 33: 452, 216: 640, 36: c, 83: g, 194: Uo, 206: Gi, 236: Yo}), {146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 207: [1, 641], 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Ua, [2, 13]), t(an, [2, 537], {303: 121, 306: 122, 295: 157, 301: 158, 331: Ot}), {16: 642, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {6: Ye, 9: 644, 14: Lr, 82: 643, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(gi, [2, 344]), {207: [1, 646]}, t(yi, [2, 26]), t(yi, [2, 28]), t(ye, [2, 47]), {39: [1, 647]}, {13: Kn, 33: 370, 37: 648, 44: Qi, 59: 368, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, {40: 649, 57: Te}, t(Li, qe, {61: 522, 38: [1, 650], 60: Jn}), t(ye, [2, 49]), {40: 651, 57: Te}, {39: [1, 652]}, t(ki, Xo, {33: 370, 62: 371, 63: 372, 59: 653, 44: Qi, 83: g, 86: N, 87: $i}), {6: gu, 13: M2}, t(ki, qe, {61: 656, 60: Jn}), {33: 657, 83: g}, {33: 658, 83: g}, {39: [2, 56]}, t(ye, [2, 31], {39: [1, 659]}), t(ye, [2, 33]), {39: [1, 660]}, t([1, 6, 13, 14, 28, 60], [2, 137]), t(hn, [2, 146]), {132: on, 139: 661, 140: 384, 141: 386, 144: vi}, {6: Ye, 9: 663, 14: Lr, 82: 662, 140: 531, 141: 386, 144: vi}, {134: [1, 664]}, {6: Ye, 9: 665, 13: Ho, 132: on, 133: 666, 139: 382, 140: 384, 141: 386, 144: vi}, {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 143: 667, 149: 668, 150: 669, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, {6: Ye, 9: 644, 14: Lr, 82: 684, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Ka, [2, 128]), {6: Ye, 9: 644, 14: Lr, 82: 685, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {5: 686, 12: r, 13: i, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(r1, [2, 513]), t(Ct, [2, 460]), {5: 687, 12: r, 13: i}, t(vu, [2, 463]), t(Ct, [2, 461]), t(Ct, [2, 481]), {14: [1, 688], 302: [1, 689], 316: 550, 317: Xa}, t(Ct, [2, 505]), {5: 690, 12: r, 13: i}, t(i1, [2, 508]), {5: 691, 12: r, 13: i, 60: [1, 692]}, t(bu, [2, 455], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 131]), {13: a1, 14: [1, 693], 16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 191: 694, 192: 695, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {13: a1, 16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 191: 705, 192: 695, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 225]), t(Ne, [2, 196]), {6: Ye, 9: 532, 140: 531, 141: 386, 144: vi, 175: [1, 706]}, {13: Ho, 132: on, 133: 707, 139: 382, 140: 384, 141: 386, 144: vi}, {180: [1, 708]}, {180: [1, 709]}, t(Ne, [2, 204], {36: qn, 180: Xn}), t(Ne, [2, 200], {36: qn, 180: Xn}), t(Ne, [2, 201], {36: qn, 180: Xn}), t(Ne, [2, 205], {36: qn, 180: Xn}), t(Ne, [2, 206], {36: qn, 180: Xn}), t(Ne, [2, 207]), t(Li, qe, {61: 577, 60: vs, 96: [1, 710]}), t(Ne, [2, 209]), t(Li, qe, {61: 577, 28: [1, 711], 60: vs}), t(Ne, [2, 214]), {16: 712, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {38: [1, 713], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Wa, [2, 216]), {6: Wo, 9: 585, 13: Jo, 28: [1, 714]}, t(Ya, [2, 99]), {6: Wo, 9: 585, 13: Jo}, t(O2, [2, 466]), t(zo, [2, 376], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 715, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {13: R2, 16: 262, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 260: 716, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {6: Ye, 9: 718, 13: F2, 14: Lr, 82: 717}, {146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 207: [1, 719], 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(C2, [2, 437]), {16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 720, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t([14, 25, 26, 29, 30, 32, 36, 57, 65, 83, 85, 91, 93, 95, 100, 103, 109, 110, 111, 112, 113, 114, 115, 116, 119, 122, 135, 136, 147, 148, 181, 182, 194, 199, 206, 208, 209, 213, 214, 218, 219, 237, 239, 240, 241, 244, 252, 254, 256, 262, 281, 282, 286, 288, 294, 296, 298, 300, 304, 305, 314, 319, 323, 324, 325, 326, 327, 328], N2, {193: [1, 721]}), {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 722, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(bi, [2, 443]), {6: Wo, 9: 724, 13: Jo, 14: Lr, 82: 723}, {5: 725, 12: r, 13: i}, {33: 452, 36: c, 83: g, 194: Uo, 206: Gi, 230: 726, 233: 447, 234: 448, 235: 449, 236: Yo}, {16: 728, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 232: 727, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 728, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 232: 729, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 728, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 232: 730, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(xi, [2, 316]), t(xi, [2, 317]), t(hu, [2, 323]), t(D2, [2, 469], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(D2, [2, 471], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Wn, [2, 494], {60: [1, 731]}), {16: 732, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 733, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 734, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t([1, 6, 12, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 297, 305, 313, 321], [2, 387], {303: 121, 306: 122, 295: 157, 301: 158, 34: 735, 13: nn, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Qa, [2, 392]), t(Qa, [2, 393]), t(Ct, [2, 389]), t(Ct, [2, 395]), t(Cr, [2, 399], {130: 16, 94: 43, 62: 89, 20: 470, 266: 471, 15: 472, 18: 473, 80: 474, 46: 477, 267: 478, 269: 479, 274: 480, 33: 483, 84: 484, 265: 736, 83: g, 85: b, 86: N, 122: K, 131: Q, 135: ys, 136: gs, 208: ee, 209: oe, 218: $a, 219: W, 268: t1, 275: ln, 276: cn}), {6: Ye, 9: 609, 14: [1, 737]}, t(Cr, [2, 402]), t(Cr, [2, 406], {86: n1, 179: o1}), t(Cr, [2, 409]), {33: 483, 83: g, 84: 484, 85: b, 267: 738, 269: 479, 274: 480, 275: ln, 276: cn}, t(Cr, [2, 408], {86: n1, 179: o1}), {5: 740, 12: r, 13: i, 16: 741, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 271: 739, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {5: 740, 12: r, 13: i, 16: 741, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 271: 742, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 743, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Qn, [2, 424]), t(s1, [2, 419]), t(s1, [2, 420]), t(Qn, [2, 422]), t(Qn, [2, 423]), t(uu, [2, 248], {34: 744, 13: nn}), t([1, 6, 12, 13, 14, 27, 28, 38, 60, 86, 96, 98, 108, 142, 146, 147, 148, 166, 179, 184, 190, 194, 196, 207, 214, 217, 225, 226, 247, 249, 250, 258, 280, 284, 296, 297, 298, 304, 305, 311, 312, 313, 321, 322, 329, 330, 331, 332], [2, 369]), {18: 312, 33: 316, 46: 309, 57: f, 83: g, 84: 317, 85: b, 88: 318, 89: Mo, 92: 129, 93: v, 95: Vo, 99: 315, 100: w, 102: 130, 103: k, 194: jo, 203: 745, 204: 310, 205: 311, 206: Go, 208: ee, 209: oe, 219: W}, t([6, 13, 14, 60], Kc, {92: 129, 102: 130, 203: 307, 46: 309, 204: 310, 205: 311, 18: 312, 99: 315, 33: 316, 84: 317, 88: 318, 259: 746, 57: f, 83: g, 85: b, 89: Mo, 93: v, 95: Vo, 100: w, 103: k, 194: jo, 206: Go, 208: ee, 209: oe, 219: W}), t(Ge, [2, 372]), t(Ge, [2, 258], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 747, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ge, [2, 260], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 748, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(e1, [2, 268]), t(e1, [2, 269]), t(Yn, [2, 114]), t(su, Ja, {230: 446, 233: 447, 234: 448, 235: 449, 33: 452, 10: 501, 216: 502, 223: 749, 11: wr, 27: nu, 36: c, 83: g, 194: Uo, 206: Gi, 236: Yo}), t(Ct, [2, 283]), {5: 750, 12: r, 13: i, 214: [1, 751]}, t(Ct, [2, 295]), {28: [1, 752], 60: P2}, t(qo, [2, 291]), t(un, [2, 518], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 334]), {14: $n}, t(ku, [2, 449]), t(gi, [2, 345]), {40: 754, 57: Te}, t(Li, qe, {61: 522, 38: [1, 755], 60: Jn}), t(ye, [2, 48]), {39: [1, 756]}, t(ye, [2, 50]), {40: 757, 57: Te}, t(Ge, [2, 58]), {33: 370, 44: Qi, 59: 758, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, {13: Kn, 33: 370, 37: 759, 44: Qi, 59: 368, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, {6: [1, 761], 13: M2, 14: [1, 760]}, t(Ge, [2, 66]), t(Ge, [2, 68]), {40: 762, 57: Te}, {40: 763, 57: Te}, t(hn, [2, 147]), t(hn, [2, 148]), {14: $n, 132: on, 139: 661, 140: 384, 141: 386, 144: vi}, t(hn, [2, 150]), {14: [1, 764]}, {6: Ye, 9: 663, 14: Lr, 82: 765, 140: 531, 141: 386, 144: vi}, t(hn, [2, 151], {60: [1, 766]}), t(xu, [2, 156], {158: 670, 40: 676, 156: 677, 145: 767, 150: 768, 36: Br, 57: Te, 95: Hr, 100: zr, 146: to, 147: eo, 148: ro, 151: wu, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}), t(l1, [2, 158]), t(Dr, [2, 176], {157: [1, 773]}), t(Dr, [2, 177]), t(Dr, [2, 178]), t(Dr, [2, 179]), t(Dr, [2, 180]), t(Dr, [2, 181]), t(Dr, [2, 182]), t(Dr, [2, 183], {157: [1, 774]}), t(Dr, [2, 184]), {95: [1, 775]}, t(Dr, [2, 186]), {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 776, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 778, 152: 777, 153: 779, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, {16: 780, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 254]), t(Ct, [2, 540]), t(r1, [2, 512]), t(vu, [2, 462]), t(Ct, [2, 503]), {5: 781, 12: r, 13: i}, {14: [1, 782]}, t(i1, [2, 509], {6: [1, 783]}), {16: 784, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 222]), t(Li, qe, {61: 787, 14: [1, 785], 60: c1}), t(ci, [2, 226]), {13: a1, 16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 191: 788, 192: 695, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ci, [2, 232], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {16: 789, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ci, [2, 234]), t(ci, [2, 235]), t(ci, [2, 236]), t(ci, [2, 237], {27: [1, 791], 98: [1, 790]}), t(ci, [2, 238]), t(V2, [2, 239]), t(Li, qe, {61: 787, 28: [1, 792], 60: c1}), t(Ne, [2, 197]), {6: Ye, 9: 532, 140: 531, 141: 386, 144: vi, 175: [1, 793]}, t(Ne, [2, 202]), t(Ne, [2, 203]), t(Ne, [2, 208]), t(Ne, [2, 210]), {146: Bt, 147: Yt, 148: Kt, 166: Jt, 190: [1, 794], 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, t(Wa, [2, 218]), t(ue, [2, 433]), t(zo, [2, 377], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(ki, qe, {61: 795, 60: L2}), t(zo, [2, 378]), {14: $n, 16: 715, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ue, [2, 441]), t(bi, [2, 444]), {6: Ye, 9: 796}, t(ki, qe, {61: 797, 60: vs}), t(bi, [2, 446]), {14: $n, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 720, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(ue, [2, 278]), t(xi, [2, 305]), t(xi, [2, 319]), t(xi, [2, 312], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(xi, [2, 320]), t(xi, [2, 318]), {33: 292, 36: c, 83: g, 206: Gi, 233: 294, 234: 293, 310: 798}, t([1, 6, 12, 13, 14, 28, 38, 60, 86, 96, 108, 142, 179, 190, 194, 207, 217, 225, 226, 249, 284, 296, 297, 298, 304, 305, 321], [2, 498], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 313: [1, 799], 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(pu, [2, 500], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 297: [1, 800], 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(un, [2, 499], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 388]), t(Cr, [2, 398]), t(Ct, [2, 396]), t(Cr, [2, 407], {86: n1, 179: o1}), t(Zn, [2, 414]), t(Zn, [2, 417]), t(Zn, [2, 418], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Zn, [2, 415]), t(Zn, [2, 412], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 249]), t(Ge, [2, 373]), t(ki, qe, {61: 801, 60: iu}), {6: Ye, 9: 644, 14: Lr, 82: 802, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {6: Ye, 9: 644, 14: Lr, 82: 803, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {224: 804, 225: du, 226: mu}, t(Ct, [2, 293]), {5: 805, 12: r, 13: i}, t(yu, [2, 285]), t(ku, [2, 448]), t(ye, [2, 53]), {39: [1, 806]}, {40: 807, 57: Te}, t(ye, [2, 51]), t(Ge, [2, 59]), t(ki, qe, {61: 808, 60: Jn}), t(Ge, [2, 60]), {14: [1, 809], 33: 370, 44: Qi, 59: 758, 62: 371, 63: 372, 83: g, 86: N, 87: $i}, t(ye, [2, 32]), t(ye, [2, 34]), {134: [2, 141]}, {134: [2, 142]}, {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 149: 810, 150: 669, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, t(l1, [2, 159]), t(l1, [2, 160]), {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 811, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, t(Dr, [2, 153]), t(Dr, [2, 154]), t(Dr, [2, 155]), t(u1, [2, 175]), t(u1, [2, 173]), {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 814, 154: 812, 155: 813, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, t(Dr, [2, 187]), {96: [1, 815]}, {96: [2, 162], 145: 816, 146: to, 147: eo, 148: ro}, {96: [2, 163], 145: 817, 146: to, 147: eo, 148: ro}, {38: [1, 818], 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 295: 157, 296: V, 298: j, 301: 158, 303: 121, 304: G, 305: z, 306: 122, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}, {6: Ye, 9: 644, 14: Lr, 82: 819}, t(Ct, [2, 506]), t(i1, [2, 510]), t(bu, [2, 456], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ct, [2, 223]), t(ki, Xo, {69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 31: 30, 47: 31, 48: 32, 80: 33, 238: 34, 23: 37, 24: 38, 202: 48, 251: 49, 67: 50, 68: 51, 255: 52, 227: 54, 201: 55, 118: 56, 257: 57, 253: 58, 64: 59, 210: 60, 211: 61, 212: 62, 243: 72, 49: 73, 318: 74, 295: 76, 299: 77, 301: 78, 261: 81, 198: 82, 234: 90, 233: 91, 99: 93, 46: 107, 90: 112, 127: 113, 33: 114, 84: 115, 245: 116, 303: 121, 306: 122, 92: 129, 102: 130, 17: 208, 19: 211, 16: 697, 195: 699, 18: 701, 197: 702, 130: 703, 192: 820, 25: s, 26: n, 29: o, 30: a, 32: l, 36: c, 57: f, 65: m, 83: g, 85: b, 86: bs, 91: y, 93: v, 95: d, 100: w, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 119: q, 122: K, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ks, 196: xs, 199: M, 206: X, 208: ee, 209: oe, 213: tt, 214: $, 218: et, 219: W, 237: tr, 239: rt, 240: it, 241: ut, 244: at, 252: lt, 254: ht, 256: ct, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 296: V, 298: j, 300: _t, 304: G, 305: z, 314: dt, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}), {6: j2, 9: 821, 13: G2}, t(ki, qe, {61: 824, 60: c1}), t(ci, [2, 233], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 296: V, 298: j, 304: G, 305: z, 321: ae, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), {83: [1, 825]}, {13: Zi, 16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 97: 826, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 267, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(Ct, [2, 224]), t(Ne, [2, 198]), t(Ne, [2, 221]), {6: Ye, 9: 718, 13: F2, 14: Lr, 82: 827}, {16: 357, 17: 208, 18: 272, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 194: ai, 195: 270, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 285: 828, 286: li, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {6: Wo, 9: 724, 13: Jo, 14: Lr, 82: 829}, t(Wn, [2, 495]), {16: 830, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {16: 831, 17: 208, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {6: Ye, 9: 833, 13: fu, 14: Lr, 82: 832}, t(Ge, [2, 259]), t(Ge, [2, 261]), t(Ct, [2, 282]), t(Ct, [2, 294]), {40: 834, 57: Te}, t(ye, [2, 52]), {6: gu, 13: M2, 14: [1, 835]}, t(Ge, [2, 61]), t(xu, [2, 157], {158: 670, 40: 676, 156: 677, 145: 767, 150: 768, 36: Br, 57: Te, 95: Hr, 100: zr, 146: to, 147: eo, 148: ro, 151: wu, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}), t(l1, [2, 161]), {60: [1, 837], 96: [1, 836]}, t(Su, [2, 166], {158: 670, 40: 676, 156: 677, 145: 838, 150: 839, 36: Br, 57: Te, 95: Hr, 100: zr, 146: to, 147: eo, 148: ro, 151: Tu, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}), t(h1, [2, 168]), t(u1, [2, 174]), {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 841, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 842, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, t(u1, [2, 172]), t(Ct, [2, 504]), t(ci, [2, 227]), {16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 192: 843, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t([14, 25, 26, 29, 30, 32, 36, 57, 65, 83, 85, 86, 91, 93, 95, 100, 103, 109, 110, 111, 112, 113, 114, 115, 116, 119, 122, 131, 135, 136, 147, 148, 181, 182, 194, 196, 199, 206, 208, 209, 213, 214, 218, 219, 237, 239, 240, 241, 244, 252, 254, 256, 262, 281, 282, 288, 294, 296, 298, 300, 304, 305, 314, 319, 323, 324, 325, 326, 327, 328], N2, {193: [1, 844]}), {13: a1, 16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 191: 845, 192: 695, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {6: j2, 9: 847, 13: G2, 14: Lr, 82: 846}, t(V2, [2, 240]), t(Li, qe, {61: 577, 28: [1, 848], 60: vs}), t(zo, [2, 379]), t(bi, [2, 445]), t(bi, [2, 447]), t(un, [2, 501], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(un, [2, 502], {303: 121, 306: 122, 295: 157, 301: 158, 146: Bt, 147: Yt, 148: Kt, 166: Jt, 196: Qt, 322: $t, 329: Vt, 330: qt, 331: Ot, 332: Xt}), t(Ge, [2, 374]), {14: $n, 18: 312, 33: 316, 46: 309, 57: f, 83: g, 84: 317, 85: b, 88: 318, 89: Mo, 92: 129, 93: v, 95: Vo, 99: 315, 100: w, 102: 130, 103: k, 194: jo, 203: 745, 204: 310, 205: 311, 206: Go, 208: ee, 209: oe, 219: W}, t(ye, [2, 54]), t(Ge, [2, 62]), t(Dr, [2, 185]), {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 814, 155: 849, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, t(h1, [2, 169]), t(h1, [2, 170]), {36: Br, 40: 676, 57: Te, 95: Hr, 100: zr, 150: 850, 156: 677, 158: 670, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}, t(Eu, [2, 164]), t(Eu, [2, 165]), t(ci, [2, 228]), {6: Ye, 9: 851}, t(ki, qe, {61: 852, 60: c1}), t(ci, [2, 230]), {14: $n, 16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 192: 843, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, t(V2, [2, 241]), t(Su, [2, 167], {158: 670, 40: 676, 156: 677, 145: 838, 150: 839, 36: Br, 57: Te, 95: Hr, 100: zr, 146: to, 147: eo, 148: ro, 151: Tu, 159: Ur, 160: Yr, 161: Kr, 162: qr, 163: Xr, 164: Wr, 165: Jr, 166: Zr}), t(h1, [2, 171]), {16: 697, 17: 208, 18: 701, 19: 211, 23: 37, 24: 38, 25: s, 26: n, 29: o, 30: a, 31: 30, 32: l, 33: 114, 36: c, 46: 107, 47: 31, 48: 32, 49: 73, 57: f, 64: 59, 65: m, 67: 50, 68: 51, 69: 19, 70: 20, 71: 21, 72: 22, 73: 23, 74: 24, 75: 25, 76: 26, 77: 27, 78: 28, 79: 29, 80: 33, 83: g, 84: 115, 85: b, 86: bs, 90: 112, 91: y, 92: 129, 93: v, 95: d, 99: 93, 100: w, 102: 130, 103: k, 109: T, 110: S, 111: C, 112: L, 113: D, 114: I, 115: U, 116: B, 118: 56, 119: q, 122: K, 127: 113, 130: 703, 131: Q, 135: wt, 136: St, 147: F, 148: H, 181: Y, 182: P, 192: 853, 194: ks, 195: 699, 196: xs, 197: 702, 198: 82, 199: M, 201: 55, 202: 48, 206: X, 208: ee, 209: oe, 210: 60, 211: 61, 212: 62, 213: tt, 214: $, 218: et, 219: W, 227: 54, 233: 91, 234: 90, 237: tr, 238: 34, 239: rt, 240: it, 241: ut, 243: 72, 244: at, 245: 116, 251: 49, 252: lt, 253: 58, 254: ht, 255: 52, 256: ct, 257: 57, 261: 81, 262: st, 281: ot, 282: nt, 288: pt, 294: ft, 295: 76, 296: V, 298: j, 299: 77, 300: _t, 301: 78, 303: 121, 304: G, 305: z, 306: 122, 314: dt, 318: 74, 319: mt, 323: yt, 324: gt, 325: vt, 326: bt, 327: kt, 328: xt}, {6: j2, 9: 847, 13: G2, 14: Lr, 82: 854}, t(ci, [2, 229]), t(ci, [2, 231])], defaultActions: {142: [2, 3], 179: [2, 431], 387: [2, 152], 526: [2, 56], 764: [2, 141], 765: [2, 142]}, parseError: function(x, Di) {
        if (Di.recoverable)
          this.trace(x);
        else
          throw new Error(x);
      }, parse: function(x, Di = null) {
        var R = this, ir = [0], h = [], u = [null], so = this.table, H2 = "", j_ = 0, G_ = 0, Zo = 0, p1 = 2, Qo = 1, ui = Object.create(this.lexer), f1 = this.yy;
        ui.setInput(x, f1), typeof f1.parseError == "function" ? this.parseError = f1.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
        function j3(Ss) {
          ir.length = ir.length - 2 * Ss, u.length = u.length - Ss;
        }
        var Qr, no, ws, Bi, B_, z2, U2 = {}, H_, _1, Iu, Y2;
        function G3() {
          var Ss, oo = "";
          function Nu($o) {
            for (var wi = ir.length - 1, W2 = 0; ; ) {
              if (p1.toString() in so[$o])
                return W2;
              if ($o === 0 || wi < 2)
                return false;
              wi -= 2, $o = ir[wi], ++W2;
            }
          }
          if (Zo)
            no !== Qo && (Ss = Nu(ws));
          else {
            Ss = Nu(ws), Y2 = [];
            var K2 = ui.yytext, z_ = K2, q2 = R.terminals_[Qr] || Qr;
            let $o = ui.tokens.indexOf(K2), wi = K2;
            for (; wi && wi._loc == -1; )
              wi = ui.tokens[--$o];
            var pn = wi ? wi._loc : -1, X2 = pn > -1 ? pn + (wi._len || 0) : -1, H3 = pn != -1 ? "[" + wi._loc + ":" + wi._len + "]" : "[0:0]";
            ui.showPosition ? oo = "Parse error at " + H3 + `:
` + ui.showPosition() + `
Expecting ` + Y2.join(", ") + ", got '" + q2 + "'" : oo = "Unexpected " + (Qr == Qo ? "end of input" : "'" + q2 + "'"), Di && Di.addDiagnostic("error", {message: oo, source: "imba-parser", range: Di.rangeAt(pn, X2)}).raise(), R.parseError(oo, {lexer: ui, text: ui.match, token: q2, offset: pn, length: X2 - pn, start: {offset: pn}, end: {offset: X2}, line: ui.yylineno, expected: Y2, recoverable: Ss !== false});
          }
          if (Zo == 3) {
            if (Qr === Qo || no === Qo)
              throw new Error(oo || "Parsing halted while starting to recover from another error.");
            H2 = ui.yytext;
          }
          if (Ss === false)
            throw new Error(oo || "Parsing halted. No suitable error recovery rule available.");
          j3(Ss), no = Qr == p1 ? null : Qr, Qr = p1, ws = ir[ir.length - 1], Bi = so[ws] && so[ws][p1], Zo = 3;
        }
        for (var B3 = this.symbols_, Ru = this.productions_; ; ) {
          ws = ir[ir.length - 1], (Qr === null || typeof Qr == "undefined") && (Qr = B3[ui.lex()] || Qo), Bi = so[ws] && so[ws][Qr];
          t:
            (typeof Bi == "undefined" || !Bi.length || !Bi[0]) && G3();
          switch (Bi[0]) {
            case 1:
              ir.push(Qr), ir.push(Bi[1]), u.push(ui.yytext), Qr = null, no ? (Qr = no, no = null) : (H2 = ui.yytext, Zo > 0 && Zo--);
              break;
            case 2:
              if (_1 = Ru[Bi[1]][1], U2.$ = u[u.length - _1], z2 = this.performAction(U2, H2, f1, Bi[1], u), typeof z2 != "undefined")
                return z2;
              for (; _1 > 0; )
                ir.pop(), ir.pop(), u.pop(), _1--;
              ir.push(Ru[Bi[1]][0]), Iu = so[ir[ir.length - 2]][ir[ir.length - 1]], ir.push(Iu), u.push(U2.$);
              break;
            case 3:
              return true;
          }
        }
        return true;
      }};
      function B2() {
        this.yy = {};
      }
      return B2.prototype = Au, Au.Parser = B2, new B2();
    }();
    typeof pa != "undefined" && (pa.parser = M1, pa.Parser = M1.Parser, pa.parse = function() {
      return M1.parse.apply(M1, arguments);
    });
  });
  var Ml = er((j0) => {
    Hi(j0);
    Fi(j0, {extractDependencies: () => xp, resolveDependencies: () => B0});
    function G0(t) {
      let e;
      return t ? (e = t.toIterable) ? e.call(t) : t : [];
    }
    var kp = Symbol.for("#locations");
    function xp(t, e = null) {
      let r = {}, i = 0, s = r[kp] = [];
      for (; ; ) {
        let n = t.indexOf("/*$path$*/", i);
        if (n == -1)
          break;
        let o = n - 1, a = o - 1, l = t[o], p = l == ")" ? "(" : l;
        for (; a > 0 && t[a - 1] != p; )
          --a;
        l == ")" && (t[a] == '"' || t[a] == "'") && (a += 1, o -= 1);
        let c = t.slice(a, o);
        s.push([a, o, c]), r[c] = c, i = n + 3;
      }
      return r;
    }
    function B0(t, e, r, i = {}) {
      let s = i.importer || (i.importer = t);
      i.resolveDir || (i.resolveDir = s.slice(0, s.lastIndexOf("/") + 1));
      let n = e, o = xp(e), a = o[kp].slice(0).reverse(), l = Object.assign({}, o);
      for (let p = 0, c = Object.keys(o), _ = c.length, f, m; p < _; p++) {
        f = c[p], m = o[f];
        let g = null;
        r instanceof Function ? g = r(Object.assign({path: f}, i)) : r[f] && (g = r[f]), g != null && (l[f] = g);
      }
      for (let p = 0, c = G0(a), _ = c.length; p < _; p++) {
        let [f, m, g] = c[p], b = l[g];
        n = n.slice(0, f) + b + n.slice(m);
      }
      return n;
    }
  });
  var Ep = er((wp) => {
    function V1(t) {
      return t ? t.toArray ? t.toArray() : t : [];
    }
    var j1 = N1(), H0 = lo(), Sp = 5, Tp = 1 << Sp, z0 = Tp - 1, U0 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
    function Pr(t, e) {
      this._script = t, this._options = e || {}, this._sourcePath = this._options.sourcePath, this._sourceRoot = this._options.sourceRoot, this._targetPath = this._options.targetPath, this._maps = [], this._map = "", this._js = "";
    }
    wp.SourceMap = Pr;
    Pr.prototype.result = function(t) {
      return this._result;
    };
    Pr.prototype.setResult = function(t) {
      return this._result = t, this;
    };
    Pr.prototype.source = function() {
      return this._source;
    };
    Pr.prototype.options = function() {
      return this._options;
    };
    Pr.prototype.sourceCode = function() {
      return this._script.sourceCode;
    };
    Pr.prototype.sourceName = function() {
      return j1.basename(this._sourcePath);
    };
    Pr.prototype.targetName = function() {
      return j1.basename(this._targetPath);
    };
    Pr.prototype.sourceFiles = function() {
      return [this.sourceName()];
    };
    Pr.prototype.parse = function() {
      var t = this, e = /\/\*\%([\w\|]*)?\$\*\//, r = /^(.*?)\/\*\%([\w\|]*)\$\*\//, i = t._script.js, s = t._script.js.split(/\n/g), n = t._options.debug, o = t.sourceCode(), a = H0.locationToLineColMap(o), l = "";
      t._locs = [], t._maps = [], t._names = [];
      var p = [], c = {}, _ = {}, f, m = 0;
      for (let N = 0, y = V1(s), v = y.length, d; N < v; N++) {
        d = y[N];
        var g = 0, b = -1;
        for (t._maps[N] = []; d.match(e); )
          d = d.replace(r, function(w, k, T) {
            var S;
            if (T == "")
              return k;
            let C = T.split("|"), L = parseInt(C[0]), D = C[1] && parseInt(C[1]);
            var I = a[L];
            if (!I)
              return k;
            let U = I[0] + 1, B = I[1] + 1;
            if (b != k.length) {
              b = k.length;
              var q = [[U, B], [N + 1, b + 1]];
              t._maps[N].push(q);
            }
            let K = [m + b, L];
            if (t._locs.push(K), D)
              if (S = c[D]) {
                S[1] = K[0], S[3] = K[1];
                let Q = S.join("|");
                if (_[Q])
                  c[D] = [];
                else {
                  _[Q] = true;
                  let Dt = o.slice(S[2], S[3]);
                  S.START && (S.START[2] = Dt, t._names.indexOf(Dt) < 0 && t._names.push(Dt));
                }
              } else
                c[D] = [K[0], null, K[1], null];
            return k;
          });
        m += d.length + 1, s[N] = d;
      }
      if (t._script.js = s.join(`
`), t._script.locs = {map: a, generated: t._locs, spans: Object.values(c)}, n) {
        for (let v = 0, d = V1(t._script.locs.spans), w = d.length, k; v < w; v++)
          if (k = d[v], k[1] != null) {
            let T = t._script.js.slice(k[0], k[1]).split(`
`), S = o.slice(k[2], k[3]).split(`
`);
            k.push(T[0]), k.push(S[0]);
          }
        let N = {0: "\u2080", 1: "\u2081", 2: "\u2082", 3: "\u2083", 4: "\u2084", 5: "\u2085", 6: "\u2086", 7: "\u2087", 8: "\u2088", 9: "\u2089", "|": "\u208C"}, y = function(v, d) {
          return "[" + d + "]";
        };
        t._script.js = t._script.js + `
/*
` + i.replace(/\/\*\%([\w\|]*)?\$\*\//g, y).replace(/\/\*/g, "**").replace(/\*\//g, "**") + `
*/`;
      }
      return t;
    };
    Pr.prototype.generate = function() {
      this.parse();
      var t = 1, e = 1, r = 1, i = "";
      for (let l = 0, p = V1(this._maps), c = p.length, _; l < c; l++) {
        _ = p[l], t = 1;
        for (let f = 0, m = V1(_), g = m.length, b; f < g; f++) {
          b = m[f], f != 0 && (i += ",");
          var s = b[0], n = b[1];
          i += this.encodeVlq(n[1] - t), t = n[1], i += this.encodeVlq(0), i += this.encodeVlq(s[0] - e), e = s[0], i += this.encodeVlq(s[1] - r), r = s[1];
        }
        i += ";";
      }
      var o = this._targetPath && j1.relative(j1.dirname(this._targetPath), this._sourcePath), a = {version: 3, file: this.sourceName().replace(/\.imba/, ".js") || "", sourceRoot: this._sourceRoot || "", sources: [o || this._sourcePath], sourcesContent: [this.sourceCode()], names: [], mappings: i};
      return this._options.sourcemap == "inline" && (a.file = this.sourceName(), a.sources = [this.sourceName()]), this._result = a, this;
    };
    Pr.prototype.inlined = function() {
      try {
        var t = JSON.stringify(this._result);
        if (globalThis.Buffer)
          t = Buffer.from(t, "utf-8").toString("base64");
        else if (typeof btoa == "function")
          t = btoa(t);
        else
          return;
        return `
//# sourceMappingURL=data:application/json;charset=utf-8;base64,` + t;
      } catch (e) {
      }
      return console.warn("base64 encoding not supported - skipping inline sourceMapping"), "";
    };
    Pr.prototype.encodeVlq = function(t) {
      for (var e = "", r = t < 0 ? 1 : 0, i, s = (Math.abs(t) << 1) + r; s || !e; )
        i = s & z0, s = s >> Sp, s && (i |= Tp), e += this.encodeBase64(i);
      return e;
    };
    Pr.prototype.toJSON = function() {
      return this._result;
    };
    Pr.prototype.encodeBase64 = function(t) {
      return U0[t];
    };
  });
  var jp = er((O4, Vp) => {
    var te = {rgb: {channels: 3, labels: "rgb"}, hsl: {channels: 3, labels: "hsl"}, hsv: {channels: 3, labels: "hsv"}, hwb: {channels: 3, labels: "hwb"}, cmyk: {channels: 4, labels: "cmyk"}, xyz: {channels: 3, labels: "xyz"}, lab: {channels: 3, labels: "lab"}, lch: {channels: 3, labels: "lch"}, hex: {channels: 1, labels: ["hex"]}, ansi16: {channels: 1, labels: ["ansi16"]}, ansi256: {channels: 1, labels: ["ansi256"]}, hcg: {channels: 3, labels: ["h", "c", "g"]}, apple: {channels: 3, labels: ["r16", "g16", "b16"]}, gray: {channels: 1, labels: ["gray"]}};
    Vp.exports = {conv: te};
    for (let t of Object.keys(te)) {
      if (!("channels" in te[t]))
        throw new Error("missing channels property: " + t);
      if (!("labels" in te[t]))
        throw new Error("missing channel labels property: " + t);
      if (te[t].labels.length !== te[t].channels)
        throw new Error("channel and label counts mismatch: " + t);
      let {channels: e, labels: r} = te[t];
      delete te[t].channels, delete te[t].labels, Object.defineProperty(te[t], "channels", {value: e}), Object.defineProperty(te[t], "labels", {value: r});
    }
    te.rgb.hsl = function(t) {
      let e = t[0] / 255, r = t[1] / 255, i = t[2] / 255, s = Math.min(e, r, i), n = Math.max(e, r, i), o = n - s, a, l;
      n === s ? a = 0 : e === n ? a = (r - i) / o : r === n ? a = 2 + (i - e) / o : i === n && (a = 4 + (e - r) / o), a = Math.min(a * 60, 360), a < 0 && (a += 360);
      let p = (s + n) / 2;
      return n === s ? l = 0 : p <= 0.5 ? l = o / (n + s) : l = o / (2 - n - s), [a, l * 100, p * 100];
    };
    te.rgb.hsv = function(t) {
      let e, r, i, s, n, o = t[0] / 255, a = t[1] / 255, l = t[2] / 255, p = Math.max(o, a, l), c = p - Math.min(o, a, l), _ = function(f) {
        return (p - f) / 6 / c + 1 / 2;
      };
      return c === 0 ? (s = 0, n = 0) : (n = c / p, e = _(o), r = _(a), i = _(l), o === p ? s = i - r : a === p ? s = 1 / 3 + e - i : l === p && (s = 2 / 3 + r - e), s < 0 ? s += 1 : s > 1 && (s -= 1)), [s * 360, n * 100, p * 100];
    };
    te.rgb.hwb = function(t) {
      let e = t[0], r = t[1], i = t[2], s = te.rgb.hsl(t)[0], n = 1 / 255 * Math.min(e, Math.min(r, i));
      return i = 1 - 1 / 255 * Math.max(e, Math.max(r, i)), [s, n * 100, i * 100];
    };
    te.rgb.cmyk = function(t) {
      let e = t[0] / 255, r = t[1] / 255, i = t[2] / 255, s = Math.min(1 - e, 1 - r, 1 - i), n = (1 - e - s) / (1 - s) || 0, o = (1 - r - s) / (1 - s) || 0, a = (1 - i - s) / (1 - s) || 0;
      return [n * 100, o * 100, a * 100, s * 100];
    };
    te.rgb.xyz = function(t) {
      let e = t[0] / 255, r = t[1] / 255, i = t[2] / 255;
      e = e > 0.04045 ? ((e + 0.055) / 1.055) ** 2.4 : e / 12.92, r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92, i = i > 0.04045 ? ((i + 0.055) / 1.055) ** 2.4 : i / 12.92;
      let s = e * 0.4124564 + r * 0.3575761 + i * 0.1804375, n = e * 0.2126729 + r * 0.7151522 + i * 0.072175, o = e * 0.0193339 + r * 0.119192 + i * 0.9503041;
      return [s * 100, n * 100, o * 100];
    };
    te.rgb.lab = function(t) {
      let e = te.rgb.xyz(t), r = e[0], i = e[1], s = e[2];
      r /= 95.047, i /= 100, s /= 108.883, r = r > 8856e-6 ? r ** (1 / 3) : 7.787 * r + 16 / 116, i = i > 8856e-6 ? i ** (1 / 3) : 7.787 * i + 16 / 116, s = s > 8856e-6 ? s ** (1 / 3) : 7.787 * s + 16 / 116;
      let n = 116 * i - 16, o = 500 * (r - i), a = 200 * (i - s);
      return [n, o, a];
    };
    te.hsl.rgb = function(t) {
      let e = t[0] / 360, r = t[1] / 100, i = t[2] / 100, s, n, o;
      if (r === 0)
        return o = i * 255, [o, o, o];
      i < 0.5 ? s = i * (1 + r) : s = i + r - i * r;
      let a = 2 * i - s, l = [0, 0, 0];
      for (let p = 0; p < 3; p++)
        n = e + 1 / 3 * -(p - 1), n < 0 && n++, n > 1 && n--, 6 * n < 1 ? o = a + (s - a) * 6 * n : 2 * n < 1 ? o = s : 3 * n < 2 ? o = a + (s - a) * (2 / 3 - n) * 6 : o = a, l[p] = o * 255;
      return l;
    };
    te.hsl.hsv = function(t) {
      let e = t[0], r = t[1] / 100, i = t[2] / 100, s = r, n = Math.max(i, 0.01);
      i *= 2, r *= i <= 1 ? i : 2 - i, s *= n <= 1 ? n : 2 - n;
      let o = (i + r) / 2, a = i === 0 ? 2 * s / (n + s) : 2 * r / (i + r);
      return [e, a * 100, o * 100];
    };
    te.hsv.rgb = function(t) {
      let e = t[0] / 60, r = t[1] / 100, i = t[2] / 100, s = Math.floor(e) % 6, n = e - Math.floor(e), o = 255 * i * (1 - r), a = 255 * i * (1 - r * n), l = 255 * i * (1 - r * (1 - n));
      switch (i *= 255, s) {
        case 0:
          return [i, l, o];
        case 1:
          return [a, i, o];
        case 2:
          return [o, i, l];
        case 3:
          return [o, a, i];
        case 4:
          return [l, o, i];
        case 5:
          return [i, o, a];
      }
    };
    te.hsv.hsl = function(t) {
      let e = t[0], r = t[1] / 100, i = t[2] / 100, s = Math.max(i, 0.01), n, o;
      o = (2 - r) * i;
      let a = (2 - r) * s;
      return n = r * s, n /= a <= 1 ? a : 2 - a, n = n || 0, o /= 2, [e, n * 100, o * 100];
    };
    te.hwb.rgb = function(t) {
      let e = t[0] / 360, r = t[1] / 100, i = t[2] / 100, s = r + i, n;
      s > 1 && (r /= s, i /= s);
      let o = Math.floor(6 * e), a = 1 - i;
      n = 6 * e - o, (o & 1) != 0 && (n = 1 - n);
      let l = r + n * (a - r), p, c, _;
      switch (o) {
        default:
        case 6:
        case 0:
          p = a, c = l, _ = r;
          break;
        case 1:
          p = l, c = a, _ = r;
          break;
        case 2:
          p = r, c = a, _ = l;
          break;
        case 3:
          p = r, c = l, _ = a;
          break;
        case 4:
          p = l, c = r, _ = a;
          break;
        case 5:
          p = a, c = r, _ = l;
          break;
      }
      return [p * 255, c * 255, _ * 255];
    };
    te.cmyk.rgb = function(t) {
      let e = t[0] / 100, r = t[1] / 100, i = t[2] / 100, s = t[3] / 100, n = 1 - Math.min(1, e * (1 - s) + s), o = 1 - Math.min(1, r * (1 - s) + s), a = 1 - Math.min(1, i * (1 - s) + s);
      return [n * 255, o * 255, a * 255];
    };
    te.xyz.rgb = function(t) {
      let e = t[0] / 100, r = t[1] / 100, i = t[2] / 100, s, n, o;
      return s = e * 3.2404542 + r * -1.5371385 + i * -0.4985314, n = e * -0.969266 + r * 1.8760108 + i * 0.041556, o = e * 0.0556434 + r * -0.2040259 + i * 1.0572252, s = s > 31308e-7 ? 1.055 * s ** (1 / 2.4) - 0.055 : s * 12.92, n = n > 31308e-7 ? 1.055 * n ** (1 / 2.4) - 0.055 : n * 12.92, o = o > 31308e-7 ? 1.055 * o ** (1 / 2.4) - 0.055 : o * 12.92, s = Math.min(Math.max(0, s), 1), n = Math.min(Math.max(0, n), 1), o = Math.min(Math.max(0, o), 1), [s * 255, n * 255, o * 255];
    };
    te.xyz.lab = function(t) {
      let e = t[0], r = t[1], i = t[2];
      e /= 95.047, r /= 100, i /= 108.883, e = e > 8856e-6 ? e ** (1 / 3) : 7.787 * e + 16 / 116, r = r > 8856e-6 ? r ** (1 / 3) : 7.787 * r + 16 / 116, i = i > 8856e-6 ? i ** (1 / 3) : 7.787 * i + 16 / 116;
      let s = 116 * r - 16, n = 500 * (e - r), o = 200 * (r - i);
      return [s, n, o];
    };
    te.lab.xyz = function(t) {
      let e = t[0], r = t[1], i = t[2], s, n, o;
      n = (e + 16) / 116, s = r / 500 + n, o = n - i / 200;
      let a = n ** 3, l = s ** 3, p = o ** 3;
      return n = a > 8856e-6 ? a : (n - 16 / 116) / 7.787, s = l > 8856e-6 ? l : (s - 16 / 116) / 7.787, o = p > 8856e-6 ? p : (o - 16 / 116) / 7.787, s *= 95.047, n *= 100, o *= 108.883, [s, n, o];
    };
    te.lab.lch = function(t) {
      let e = t[0], r = t[1], i = t[2], s;
      s = Math.atan2(i, r) * 360 / 2 / Math.PI, s < 0 && (s += 360);
      let o = Math.sqrt(r * r + i * i);
      return [e, o, s];
    };
    te.lch.lab = function(t) {
      let e = t[0], r = t[1], s = t[2] / 360 * 2 * Math.PI, n = r * Math.cos(s), o = r * Math.sin(s);
      return [e, n, o];
    };
    te.rgb.ansi16 = function(t, e = null) {
      let [r, i, s] = t, n = e === null ? te.rgb.hsv(t)[2] : e;
      if (n = Math.round(n / 50), n === 0)
        return 30;
      let o = 30 + (Math.round(s / 255) << 2 | Math.round(i / 255) << 1 | Math.round(r / 255));
      return n === 2 && (o += 60), o;
    };
    te.hsv.ansi16 = function(t) {
      return te.rgb.ansi16(te.hsv.rgb(t), t[2]);
    };
    te.rgb.ansi256 = function(t) {
      let e = t[0], r = t[1], i = t[2];
      return e === r && r === i ? e < 8 ? 16 : e > 248 ? 231 : Math.round((e - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(e / 255 * 5) + 6 * Math.round(r / 255 * 5) + Math.round(i / 255 * 5);
    };
    te.ansi16.rgb = function(t) {
      let e = t % 10;
      if (e === 0 || e === 7)
        return t > 50 && (e += 3.5), e = e / 10.5 * 255, [e, e, e];
      let r = (~~(t > 50) + 1) * 0.5, i = (e & 1) * r * 255, s = (e >> 1 & 1) * r * 255, n = (e >> 2 & 1) * r * 255;
      return [i, s, n];
    };
    te.ansi256.rgb = function(t) {
      if (t >= 232) {
        let n = (t - 232) * 10 + 8;
        return [n, n, n];
      }
      t -= 16;
      let e, r = Math.floor(t / 36) / 5 * 255, i = Math.floor((e = t % 36) / 6) / 5 * 255, s = e % 6 / 5 * 255;
      return [r, i, s];
    };
    te.rgb.hex = function(t) {
      let r = (((Math.round(t[0]) & 255) << 16) + ((Math.round(t[1]) & 255) << 8) + (Math.round(t[2]) & 255)).toString(16).toUpperCase();
      return "000000".substring(r.length) + r;
    };
    te.hex.rgb = function(t) {
      let e = t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
      if (!e)
        return [0, 0, 0];
      let r = e[0];
      e[0].length === 3 && (r = r.split("").map((a) => a + a).join(""));
      let i = parseInt(r, 16), s = i >> 16 & 255, n = i >> 8 & 255, o = i & 255;
      return [s, n, o];
    };
    te.hex.hsl = function(t) {
      return te.rgb.hsl(te.hex.rgb(t));
    };
    te.rgb.hcg = function(t) {
      let e = t[0] / 255, r = t[1] / 255, i = t[2] / 255, s = Math.max(Math.max(e, r), i), n = Math.min(Math.min(e, r), i), o = s - n, a, l;
      return o < 1 ? a = n / (1 - o) : a = 0, o <= 0 ? l = 0 : s === e ? l = (r - i) / o % 6 : s === r ? l = 2 + (i - e) / o : l = 4 + (e - r) / o, l /= 6, l %= 1, [l * 360, o * 100, a * 100];
    };
    te.hsl.hcg = function(t) {
      let e = t[1] / 100, r = t[2] / 100, i = r < 0.5 ? 2 * e * r : 2 * e * (1 - r), s = 0;
      return i < 1 && (s = (r - 0.5 * i) / (1 - i)), [t[0], i * 100, s * 100];
    };
    te.hsv.hcg = function(t) {
      let e = t[1] / 100, r = t[2] / 100, i = e * r, s = 0;
      return i < 1 && (s = (r - i) / (1 - i)), [t[0], i * 100, s * 100];
    };
    te.hcg.rgb = function(t) {
      let e = t[0] / 360, r = t[1] / 100, i = t[2] / 100;
      if (r === 0)
        return [i * 255, i * 255, i * 255];
      let s = [0, 0, 0], n = e % 1 * 6, o = n % 1, a = 1 - o, l = 0;
      switch (Math.floor(n)) {
        case 0:
          s[0] = 1, s[1] = o, s[2] = 0;
          break;
        case 1:
          s[0] = a, s[1] = 1, s[2] = 0;
          break;
        case 2:
          s[0] = 0, s[1] = 1, s[2] = o;
          break;
        case 3:
          s[0] = 0, s[1] = a, s[2] = 1;
          break;
        case 4:
          s[0] = o, s[1] = 0, s[2] = 1;
          break;
        default:
          s[0] = 1, s[1] = 0, s[2] = a;
      }
      return l = (1 - r) * i, [(r * s[0] + l) * 255, (r * s[1] + l) * 255, (r * s[2] + l) * 255];
    };
    te.hcg.hsv = function(t) {
      let e = t[1] / 100, r = t[2] / 100, i = e + r * (1 - e), s = 0;
      return i > 0 && (s = e / i), [t[0], s * 100, i * 100];
    };
    te.hcg.hsl = function(t) {
      let e = t[1] / 100, i = t[2] / 100 * (1 - e) + 0.5 * e, s = 0;
      return i > 0 && i < 0.5 ? s = e / (2 * i) : i >= 0.5 && i < 1 && (s = e / (2 * (1 - i))), [t[0], s * 100, i * 100];
    };
    te.hcg.hwb = function(t) {
      let e = t[1] / 100, r = t[2] / 100, i = e + r * (1 - e);
      return [t[0], (i - e) * 100, (1 - i) * 100];
    };
    te.hwb.hcg = function(t) {
      let e = t[1] / 100, r = t[2] / 100, i = 1 - r, s = i - e, n = 0;
      return s < 1 && (n = (i - s) / (1 - s)), [t[0], s * 100, n * 100];
    };
    te.apple.rgb = function(t) {
      return [t[0] / 65535 * 255, t[1] / 65535 * 255, t[2] / 65535 * 255];
    };
    te.rgb.apple = function(t) {
      return [t[0] / 255 * 65535, t[1] / 255 * 65535, t[2] / 255 * 65535];
    };
    te.gray.rgb = function(t) {
      return [t[0] / 100 * 255, t[0] / 100 * 255, t[0] / 100 * 255];
    };
    te.gray.hsl = function(t) {
      return [0, 0, t[0]];
    };
    te.gray.hsv = te.gray.hsl;
    te.gray.hwb = function(t) {
      return [0, 100, t[0]];
    };
    te.gray.cmyk = function(t) {
      return [0, 0, 0, t[0]];
    };
    te.gray.lab = function(t) {
      return [t[0], 0, 0];
    };
    te.gray.hex = function(t) {
      let e = Math.round(t[0] / 100 * 255) & 255, i = ((e << 16) + (e << 8) + e).toString(16).toUpperCase();
      return "000000".substring(i.length) + i;
    };
    te.rgb.gray = function(t) {
      return [(t[0] + t[1] + t[2]) / 3 / 255 * 100];
    };
  });
  var Wp = er(($0) => {
    Hi($0);
    Fi($0, {Calc: () => zp, Color: () => Ai, Length: () => Os, StyleExtenders: () => qp, StyleRule: () => ss, StyleSheet: () => Xp, StyleTheme: () => Kp, Tint: () => wn, TransformMixin: () => n_, Var: () => bo, abbreviations: () => Kl, aliases: () => vo, layouts: () => Hp, validTypes: () => fa});
    var Hl = Ou(jp());
    function Ar(t) {
      let e;
      return t ? (e = t.toIterable) ? e.call(t) : t : [];
    }
    var F4 = Symbol.for("#__initor__"), P4 = Symbol.for("#__inited__"), zl = Symbol.for("#stack"), Ul = Symbol.for("#parts"), Yl = Symbol.for("#apply"), H1 = Symbol.for("#register"), xn = Symbol.for("#string"), t_ = Symbol.for("#media"), e_ = Symbol.for("#rules"), Gp = null, Bp = new WeakMap(), Hp = {group: function(t) {
      return t.display = "flex", t.jc = "flex-start", t.flw = "wrap", t["--u_sx"] = "calc(var(--u_cg,0) * 0.5)", t["--u_sy"] = "calc(var(--u_rg,0) * 0.5)", t.margin = "calc(var(--u_sy) * -1) calc(var(--u_sx) * -1)", t["&>*"] = {margin: "var(--u_sy) var(--u_sx)"};
    }, vflex: function(t) {
      return t.display = "flex", t.fld = "column";
    }, hflex: function(t) {
      return t.display = "flex", t.fld = "row";
    }, hgrid: function(t) {
      return t.display = "grid", t.gaf = "column", t.gac = "1fr";
    }, vgrid: function(t) {
      return t.display = "grid", t.gaf = "row";
    }}, fa = {ease: "linear|ease|ease-in|ease-out|ease-in-out|step-start|step-end|steps\u0192|cubic-bezier\u0192"};
    for (let t = 0, e = Object.keys(fa), r = e.length, i, s; t < r; t++) {
      i = e[t], s = fa[i];
      let n = {};
      for (let o = 0, a = Ar(s.split("|")), l = a.length; o < l; o++) {
        let p = a[o];
        n[p] = 1;
      }
      fa[i] = n;
    }
    var vo = {c: "color", d: "display", pos: "position", p: "padding", pl: "padding-left", pr: "padding-right", pt: "padding-top", pb: "padding-bottom", px: ["pl", "pr"], py: ["pt", "pb"], m: "margin", ml: "margin-left", mr: "margin-right", mt: "margin-top", mb: "margin-bottom", mx: ["ml", "mr"], my: ["mt", "mb"], w: "width", h: "height", t: "top", b: "bottom", l: "left", r: "right", size: ["width", "height"], ji: "justify-items", jc: "justify-content", js: "justify-self", j: ["justify-content", "justify-items"], ai: "align-items", ac: "align-content", as: "align-self", a: ["align-content", "align-items"], jai: ["justify-items", "align-items"], jac: ["justify-content", "align-content"], jas: ["justify-self", "align-self"], ja: ["justify-content", "align-content", "justify-items", "align-items"], fl: "flex", flf: "flex-flow", fld: "flex-direction", flb: "flex-basis", flg: "flex-grow", fls: "flex-shrink", flw: "flex-wrap", ff: "font-family", fs: "font-size", fw: "font-weight", ts: "text-shadow", td: "text-decoration", tdl: "text-decoration-line", tdc: "text-decoration-color", tds: "text-decoration-style", tdt: "text-decoration-thickness", tdsi: "text-decoration-skip-ink", te: "text-emphasis", tec: "text-emphasis-color", tes: "text-emphasis-style", tep: "text-emphasis-position", tet: "text-emphasis-thickness", tt: "text-transform", ta: "text-align", va: "vertical-align", ls: "letter-spacing", lh: "line-height", bd: "border", bdr: "border-right", bdl: "border-left", bdt: "border-top", bdb: "border-bottom", bs: "border-style", bsr: "border-right-style", bsl: "border-left-style", bst: "border-top-style", bsb: "border-bottom-style", bw: "border-width", bwr: "border-right-width", bwl: "border-left-width", bwt: "border-top-width", bwb: "border-bottom-width", bc: "border-color", bcr: "border-right-color", bcl: "border-left-color", bct: "border-top-color", bcb: "border-bottom-color", rd: "border-radius", rdtl: "border-top-left-radius", rdtr: "border-top-right-radius", rdbl: "border-bottom-left-radius", rdbr: "border-bottom-right-radius", rdt: ["border-top-left-radius", "border-top-right-radius"], rdb: ["border-bottom-left-radius", "border-bottom-right-radius"], rdl: ["border-top-left-radius", "border-bottom-left-radius"], rdr: ["border-top-right-radius", "border-bottom-right-radius"], bg: "background", bgp: "background-position", bgc: "background-color", bgr: "background-repeat", bgi: "background-image", bga: "background-attachment", bgs: "background-size", bgo: "background-origin", bgclip: "background-clip", g: "gap", rg: "row-gap", cg: "column-gap", gtr: "grid-template-rows", gtc: "grid-template-columns", gta: "grid-template-areas", gar: "grid-auto-rows", gac: "grid-auto-columns", gaf: "grid-auto-flow", gcg: "grid-column-gap", grg: "grid-row-gap", ga: "grid-area", gr: "grid-row", gc: "grid-column", gt: "grid-template", grs: "grid-row-start", gcs: "grid-column-start", gre: "grid-row-end", gce: "grid-column-end", bxs: "box-shadow", shadow: "box-shadow", of: "overflow", ofx: "overflow-x", ofy: "overflow-y", ofa: "overflow-anchor", prefix: "content@before", suffix: "content@after", x: "x", y: "y", z: "z", rotate: "rotate", scale: "scale", "scale-x": "scale-x", "scale-y": "scale-y", "skew-x": "skew-x", "skew-y": "skew-y", origin: "transform-origin", ws: "white-space", zi: "z-index", pe: "pointer-events", us: "user-select", o: "opacity", tween: "transition", e: "ease", eo: "ease-opacity", et: "ease-transform", ec: "ease-colors"}, Kl = {};
    for (let t = 0, e = Object.keys(vo), r = e.length, i, s; t < r; t++)
      i = e[t], s = vo[i], typeof s == "string" && (Kl[s] = i);
    function r_(t) {
      return !!(t._value && t._value._type == "NUMBER" && !t._unit);
    }
    var Ai = class {
      constructor(e, r, i, s, n = 1) {
        this.name = e, this.h = r, this.s = i, this.l = s, this.a = n;
      }
      alpha(e = 1) {
        return new Ai(this.name, this.h, this.s, this.l, e);
      }
      clone() {
        return new Ai(this.name, this.h, this.s, this.l, this.a);
      }
      mix(e, r = 0.5, i = 0.5, s = 0.5) {
        let n = this.h + (e.h - this.h) * r, o = this.s + (e.s - this.s) * i, a = this.l + (e.l - this.l) * s;
        return new Ai(this.name + e.name, n, o, a);
      }
      toString(e = this.a) {
        return typeof e == "string" && e[0] == "$" && (e = "var(--" + e.slice(1) + ",100%)"), "hsla(" + this.h.toFixed(2) + "," + this.s.toFixed(2) + "%," + this.l.toFixed(2) + "%," + e + ")";
      }
      toVar(e = 2) {
        return "" + Math.round(this.h) + "," + Math.round(this.s) + "%," + Math.round(this.l) + "%";
      }
      c() {
        return this.toString();
      }
    }, wn = class extends Ai {
      alpha(e = 1) {
        return new wn(this.name, this.h, this.s, this.l, e);
      }
      clone() {
        return new wn(this.name, this.h, this.s, this.l, this.a);
      }
      toString(e = this.a) {
        return typeof e == "string" && e[0] == "$" && (e = "var(--" + e.slice(1) + ",100%)"), "hsla(var(--" + this.name + ")," + e + ")";
      }
    }, Os = class {
      static parse(e) {
        let r = String(e).match(/^(\-?[\d\.]+)(\w+|%)?$/);
        return r ? new this(parseFloat(r[1]), r[2]) : null;
      }
      constructor(e, r) {
        this.number = e, this.unit = r;
      }
      valueOf() {
        return this.number;
      }
      toString() {
        return this.number + (this.unit || "");
      }
      clone(e = this.number, r = this.unit) {
        return new Os(e, r);
      }
      rounded() {
        return this.clone(Math.round(this.number));
      }
      c() {
        return this.toString();
      }
      get _unit() {
        return this.unit;
      }
      get _number() {
        return this.number;
      }
    }, bo = class {
      constructor(e, r) {
        this.name = e, this.fallback = r;
      }
      c() {
        return this.fallback ? "var(--" + this.name + "," + (this.fallback.c ? this.fallback.c() : String(this.fallback)) + ")" : "var(--" + this.name + ")";
      }
    }, zp = class {
      constructor(e) {
        this.expr = e;
      }
      cpart(e) {
        let r = "(";
        for (let i = 0, s = Ar(e), n = s.length; i < n; i++) {
          let o = s[i];
          typeof o == "string" ? r += " " + o + " " : typeof o == "number" ? r += o : o.c instanceof Function ? r += o.c() : o instanceof Array && (r += this.cpart(o));
        }
        return r += ")", r;
      }
      c() {
        return "calc" + this.cpart(this.expr);
      }
    }, Up = {current: {string: "currentColor", c: function() {
      return "currentColor";
    }}, transparent: new Ai("transparent", 0, 0, 100, "0%"), clear: new Ai("transparent", 100, 100, 100, "0%"), black: new Ai("black", 0, 0, 0, "100%"), white: new Ai("white", 0, 0, 100, "100%")};
    function i_(t) {
      let e;
      if (e = t.match(/hsl\((\d+), *(\d+\%), *(\d+\%?)/)) {
        let r = parseInt(e[1]), i = parseInt(e[2]), s = parseInt(e[3]);
        return [r, i, s];
      } else if (t[0] == "#")
        return Hl.conv.rgb.hsl(Hl.conv.hex.rgb(t));
    }
    function Yp(t, e) {
      for (let r = 0, i = Object.keys(e), s = i.length, n, o; r < s; r++) {
        if (n = i[r], o = e[n], typeof o == "string") {
          t[n] = o;
          continue;
        }
        for (let a = 0, l = Object.keys(o), p = l.length, c, _; a < p; a++) {
          c = l[a], _ = o[c];
          let f = n + c;
          if (t[_])
            t[f] = t[_];
          else {
            let [m, g, b] = i_(_), N = t[f] = new Ai(f, m, g, b, "100%");
          }
        }
      }
      return t;
    }
    Yp(Up, Gl);
    var s_ = "cm mm Q in pc pt px em ex ch rem vw vh vmin vmax % s ms fr deg rad grad turn Hz kHz".split(" "), Kp = class {
      static instance() {
        return Gp || (Gp = new this());
      }
      static propAbbr(e) {
        return Kl[e] || e;
      }
      static wrap(e) {
        if (!e)
          return this.instance();
        let r = Bp.get(e);
        return r || Bp.set(e, r = new this(e)), r;
      }
      constructor(e = {}) {
        this.options = Vl, this.palette = Object.assign({}, Up), e.theme && (e = e.theme), e && e.colors && Yp(this.palette, e.colors);
      }
      expandProperty(e) {
        return vo[e] || void 0;
      }
      expandValue(e, r) {
        if (e == null && (e = r.default), r.hasOwnProperty(e) && (e = r[e]), typeof e == "number" && r.NUMBER) {
          let [i, s, n] = r.NUMBER.match(/^(\-?[\d\.]+)(\w+|%)?$/);
          return e * parseFloat(s) + n;
        }
        return e;
      }
      padding_x([e, r = e]) {
        return {"padding-left": e, "padding-right": r};
      }
      padding_y([e, r = e]) {
        return {"padding-top": e, "padding-bottom": r};
      }
      margin_x([e, r = e]) {
        return {"margin-left": e, "margin-right": r};
      }
      margin_y([e, r = e]) {
        return {"margin-top": e, "margin-bottom": r};
      }
      ease(e) {
        return this.$ease(e, "");
      }
      ease_opacity(e) {
        return this.$ease(e, "o");
      }
      ease_transform(e) {
        return this.$ease(e, "t");
      }
      ease_colors(e) {
        return this.$ease(e, "c");
      }
      $ease(e, r = "") {
        e = e.slice(0);
        let i = {__ease__: ""}, s = /^[\-\+]?(\d*\.)?(\d+)(s|ms)?$/;
        if (String(e[0]).match(s) && (i["--e_d" + r] = e[0], e.shift()), e[0] && !String(e[0]).match(s)) {
          let n = this.$varFallback("ease", [e[0]]);
          i["--e_f" + r] = n, e.shift();
        }
        return String(e[0]).match(s) && (i["--e_w" + r] = e[0], e.shift()), i;
      }
      inset([e, r = e, i = e, s = r]) {
        return {position: "absolute", top: e, right: r, bottom: i, left: s};
      }
      size([e, r = e]) {
        return {width: e, height: r};
      }
      grid(e) {
        let r;
        if (r = this.$varFallback("grid", e))
          return r;
      }
      animation(...e) {
        let r = {normal: 1, reverse: 1, alternate: 1, "alternate-reverse": 1, infinite: 2, none: 3, forwards: 3, backwards: 3, both: 3, running: 4, paused: 4}, i = {};
        for (let s = 0, n = Ar(e), o = n.length; s < o; s++) {
          let a = n[s], l = null, p = null;
          for (let c = 0, _ = Ar(a), f = _.length; c < f; c++) {
            let m = _[c], g = String(m), b = r[g];
            fa.ease[g] && !p ? p = true : b ? (i[b] && (l = [c, g]), i[b] = true) : g.match(/^[^\d\.]/) && g.indexOf("(") == -1 && (l ? p = [c, g] : l = [c, g]);
          }
          if (l && (a[l[0]] = new bo("animation-" + l[1], l[1])), p instanceof Array) {
            let c = this.options.variants.easings[p[1]];
            a[p[0]] = new bo("ease-" + p[1], c);
          }
        }
        return {animation: e};
      }
      animation_timing_function(...e) {
        for (let r = 0, i = Ar(e), s = i.length; r < s; r++) {
          let n = i[r], o = this.$varFallback("ease", n);
          o && (e[r] = o);
        }
        return e;
      }
      animation_name(...e) {
        let r;
        for (let i = 0, s = Ar(e), n = s.length; i < n; i++) {
          let o = s[i], a = this.$varFallback("animation", o);
          a && (e[i] = a);
        }
        return e;
      }
      display(e) {
        let r = {display: e};
        for (let i = 0, s = Ar(e), n = s.length, o; i < n; i++) {
          let a = s[i];
          (o = Hp[String(a)]) && o.call(this, r, a, e);
        }
        return r;
      }
      position(e) {
        let r = {position: e}, i = String(e[0]);
        return i == "abs" ? r.position = "absolute" : i == "rel" && (r.position = "relative"), r;
      }
      width([...e]) {
        let r = {};
        for (let i = 0, s = Ar(e), n = s.length; i < n; i++) {
          let o = s[i], a = o._options || {}, l = o._unit;
          l == "c" || l == "col" || l == "cols" ? r["grid-column-end"] = "span " + o._number : a.op && String(a.op) == ">" ? r["min-width"] = o : a.op && String(a.op) == "<" ? r["max-width"] = o : r.width = o;
        }
        return r;
      }
      height([...e]) {
        let r = {};
        for (let i = 0, s = Ar(e), n = s.length; i < n; i++) {
          let o = s[i], a = o._options || {}, l = o._unit;
          l == "r" || l == "row" || l == "rows" ? r["grid-row-end"] = "span " + o._number : a.op && String(a.op) == ">" ? r["min-height"] = o : a.op && String(a.op) == "<" ? r["max-height"] = o : r.height = o;
        }
        return r;
      }
      transition(...e) {
        let r = {}, i = {}, s = ["name | duration", "name | duration | delay", "name | duration | ease", "name | duration | ease | delay"], n = {styles: ["background-color", "border-color", "color", "fill", "stroke", "opacity", "box-shadow", "transform"], sizes: ["width", "height", "left", "top", "right", "bottom", "margin", "padding"], colors: ["background-color", "border-color", "color", "fill", "stroke"]}, o = 0;
        for (; o < e.length; ) {
          let a = e[o], l = String(a[0]);
          l.match(/^[\-\+]?\d?(\.?\d+)(s|ms)?$/) && a.unshift(l = "styles");
          let p = a[2], c = n[l];
          if (c && e.length == 1)
            a[0] = "none", Object.assign(i, {"transition-property": c.join(",")});
          else if (c && e.length > 1) {
            let _ = c.map(function(f) {
              return [f].concat(a.slice(1));
            });
            e.splice(o, 1, ..._);
            continue;
          }
          o++;
        }
        return Object.assign(r, {transition: e}, i), r;
      }
      font(e, ...r) {
        for (let i = 0, s = Ar(e), n = s.length; i < n; i++) {
          let o = s[i];
        }
      }
      font_family(e) {
        let r;
        if (r = this.$varFallback("font", e))
          return r;
      }
      text_shadow(e) {
        let r;
        if (r = this.$varFallback("text-shadow", e))
          return r;
      }
      grid_template(e) {
        for (let r = 0, i = Ar(e), s = i.length; r < s; r++) {
          let n = i[r];
          r_(n) && (n._resolvedValue = "repeat(" + n._value + ",1fr)");
        }
      }
      grid_template_columns(e) {
        return this.grid_template(e);
      }
      grid_template_rows(e) {
        return this.grid_template(e);
      }
      font_size([e]) {
        let r = this.options.variants["font-size"], i = String(e), s = e, n, o = {};
        if (r[i] && ([s, n] = r[i], s = Os.parse(s), n = Os.parse(n || "")), e.param && e.param && (n = e.param), o["font-size"] = s, n) {
          let a = n._unit, l = n._number;
          if (o.lh = n, a == "fs")
            o.lh = new Os(l);
          else if (a)
            o.lh = n;
          else if (l == 0)
            o.lh = "inherit";
          else if (l && s._unit == "px") {
            let p = Math.round(s._number * l);
            p % 2 == 1 && p++, o.lh = new Os(p, "px");
          }
        }
        return o;
      }
      line_height([e]) {
        let r = e;
        return e._number && !e._unit && (r = e.clone(e._number, "em")), {"line-height": e, "--u_lh": r};
      }
      text_decoration(e) {
        for (let r = 0, i = Ar(e), s = i.length; r < s; r++) {
          let n = i[r], o = String(n);
          o == "u" ? n._resolvedValue = "underline" : o == "s" && (n._resolvedValue = "line-through");
        }
        return [e];
      }
      border([...e]) {
        if (e.length == 1 && this.$parseColor(e[0]))
          return [["1px", "solid", e[0]]];
      }
      border_left(e) {
        return this.border(e);
      }
      border_right(e) {
        return this.border(e);
      }
      border_top(e) {
        return this.border(e);
      }
      border_bottom(e) {
        return this.border(e);
      }
      border_x(e) {
        return {"border-left": this.border(e) || e, "border-right": this.border(e) || e};
      }
      border_y(e) {
        return {"border-top": this.border(e) || e, "border-bottom": this.border(e) || e};
      }
      border_x_width([e, r = e]) {
        return {blw: e, brw: r};
      }
      border_y_width([e, r = e]) {
        return {btw: e, bbw: r};
      }
      border_x_style([e, r = e]) {
        return {bls: e, brs: r};
      }
      border_y_style([e, r = e]) {
        return {bts: e, bbs: r};
      }
      border_x_color([e, r = e]) {
        return {blc: e, brc: r};
      }
      border_y_color([e, r = e]) {
        return {btc: e, bbc: r};
      }
      gap([e]) {
        return {gap: e, "--u_rg": e, "--u_cg": e};
      }
      row_gap([e]) {
        return {"row-gap": e, "--u_rg": e};
      }
      column_gap([e]) {
        return {"column-gap": e, "--u_cg": e};
      }
      tint([e]) {
        let r = {"--hue": e};
        for (let i = 0; i < 10; i++)
          r["--hue" + i] = "/*##*/" + e + i;
        return r;
      }
      hue([e]) {
        let r = {"--hue": e};
        for (let i = 0; i < 10; i++)
          r["--hue" + i] = "/*##*/" + e + i;
        return r;
      }
      $color(e) {
        let r = e.match(/^(\w+)(\d)(?:\-(\d+))?$/), i = r && r[1];
        if (i && typeof this.palette[i] == "string")
          return this.$color(this.palette[i] + e.slice(i.length));
        if (i == "tint") {
          let s = "hue" + e.slice(4);
          return console.warn("" + e + " renamed to " + s), new wn(s);
        }
        if (i == "hue")
          return new wn(e);
        if (this.palette[e])
          return this.palette[e];
        if (r) {
          let s = parseInt(r[2]), n = parseInt(r[3]) || 0, o = null, a = null, l = s + 1, p = s;
          if (typeof this.palette[i] == "string")
            return this.$color(this.palette[i] + e.slice(i.length));
          for (; l > 1 && !o; )
            o = this.palette[i + --l];
          for (; p < 9 && !a; )
            a = this.palette[i + ++p];
          let c = (s - l + n / 10) / (p - l), _ = c, f = c, m = c;
          if (a || (a = this.palette.blue9, _ = 0), o || (o = this.palette.blue1, _ = 1), o && a)
            return this.palette[e] = o.mix(a, _, f, m);
        }
        return null;
      }
      $parseColor(e) {
        let r, i = String(e);
        return (r = this.$color(i)) ? r : i.match(/^#[a-fA-F0-9]{3,8}/) || i.match(/^(rgb|hsl)/) || i == "currentColor" ? e : null;
      }
      $varFallback(e, r, i = []) {
        if (r.length == 1) {
          let s = String(r[0]), n = r[0];
          if (i.push("none", "initial", "unset", "inherit"), i.indexOf(s) == -1 && s.match(/^[\w\-]+$/))
            return e == "font" && B1[s] && (n = B1[s]), e == "ease" && this.options.variants.easings[s] && (n = this.options.variants.easings[s]), [new bo("" + e + "-" + s, n)];
        }
      }
      $value(e, r, i) {
        let s, n = i, o = e, a = e && e.toRaw ? e.toRaw() : String(e), l = String(e), p = false, c = null, _ = o._unit;
        if (typeof i == "string") {
          if (vo[i] && (i = vo[i], i instanceof Array && (i = i[0])), i.match(/^((min-|max-)?(width|height)|top|left|bottom|right|padding|margin|sizing|inset|spacing|sy$|s$|\-\-s[xy])/))
            i = "sizing";
          else if (i.match(/^\-\-[gs][xy]_/))
            i = "sizing";
          else if (i.match(/^(row-|column-)?gap/))
            i = "sizing";
          else if (i.match(/^[mps][trblxy]?$/))
            i = "sizing";
          else if (i.match(/^[trblwh]$/))
            i = "sizing";
          else if (i.match(/^border-.*radius/) || i.match(/^rd[tlbr]{0,2}$/))
            i = "radius", p = "border-radius";
          else if (i.match(/^box-shadow/))
            p = i = "box-shadow";
          else if (i.match(/^tween|transition/) && this.options.variants.easings[a])
            return this.options.variants.easings[a];
          i = this.options.variants[i] || {};
        }
        if (e == null && (e = i.default), i.hasOwnProperty(a) && (e = i[e]), typeof a == "number" && i.NUMBER) {
          let [f, m, g] = i.NUMBER.match(/^(\-?[\d\.]+)(\w+|%)?$/);
          return e * parseFloat(m) + g;
        } else if (typeof a == "string" && (s = this.$parseColor(a)))
          return s;
        if (p) {
          let f = l.match(/^[a-zA-Z\-][\w\-]*$/) && !l.match(/^(none|inherit|unset|initial)$/), m = _ && s_.indexOf(_) == -1;
          if ((f || m) && e.alone)
            return new bo("" + p + "-" + l, o != e ? e : a);
        }
        return e;
      }
      transformColors(e, {prefix: r}) {
        var i = this;
        return e = e.replace(/\/\*(##?)\*\/(\w+)(?:\/(\d+%?|\$[\w\-]+))?/g, function(s, n, o, a) {
          let l;
          return (l = i.$color(o)) ? n == "##" ? "" + l.toVar(a) : "" + (r ? "PREFIX" : "") + l.toString(a) : s;
        }), e;
      }
    }, qp = {transform: `--t_x:0;--t_y:0;--t_z:0;--t_rotate:0;
--t_scale:1;--t_scale-x:1;--t_scale-y:1;
--t_skew-x:0;--t_skew-y:0;
transform: translate3d(var(--t_x),var(--t_y),var(--t_z))
           rotate(var(--t_rotate))
           skewX(var(--t_skew-x)) skewY(var(--t_skew-y)) 
           scaleX(var(--t_scale-x)) scaleY(var(--t_scale-y)) scale(var(--t_scale));`, transition: `transition:      all var(--e_d) var(--e_f) var(--e_w),
	       transform var(--e_dt,var(--e_d)) var(--e_ft,var(--e_f)) var(--e_wt,var(--e_w)),
	           color var(--e_dc,var(--e_d)) var(--e_fc,var(--e_f)) var(--e_wc,var(--e_w)),
	background-color var(--e_dc,var(--e_d)) var(--e_fc,var(--e_f)) var(--e_wc,var(--e_w)),
	         opacity var(--e_do,var(--e_d)) var(--e_fo,var(--e_f)) var(--e_wo,var(--e_w));`}, n_ = `--t_x:0;--t_y:0;--t_z:0;--t_rotate:0;--t_scale:1;--t_scale-x:1;--t_scale-y:1;--t_skew-x:0;--t_skew-y:0;
transform: translate3d(var(--t_x),var(--t_y),var(--t_z)) rotate(var(--t_rotate)) skewX(var(--t_skew-x)) skewY(var(--t_skew-y)) scaleX(var(--t_scale-x)) scaleY(var(--t_scale-y)) scale(var(--t_scale));`, Xp = class {
      constructor(e) {
        this[zl] = e, this[Ul] = [], this[Yl] = {}, this[H1] = {}, this.transforms = null;
      }
      get transitions() {
        return this[H1].transition;
      }
      add(e, r = {}) {
        var i;
        if (this[Ul].push(e), r.apply)
          for (let s = r.apply, n = 0, o = Object.keys(s), a = o.length, l, p; n < a; n++) {
            l = o[n], p = s[l];
            let c = (i = this[Yl])[l] || (i[l] = []);
            for (let _ = 0, f = Ar(p), m = f.length; _ < m; _++) {
              let g = f[_];
              c.indexOf(g) < 0 && c.push(g);
            }
          }
      }
      js(e, r) {
        let i = [];
        for (let s = this[H1], n = 0, o = Object.keys(s), a = o.length, l, p; n < a; n++)
          l = o[n], p = s[l], i.push(e.runtime().transitions + (".addSelectors(" + JSON.stringify(p) + ",'" + l + "')"));
        return i.join(`
`);
      }
      parse() {
        if (this[xn])
          return this[xn];
        let e = [], r = this[Ul].slice(0);
        for (let i = this[Yl], s = 0, n = Object.keys(i), o = n.length, a, l; s < o; s++) {
          a = n[s], l = i[a];
          let p = qp[a], c = {}, _ = {}, f = {"": c}, m = a == "transition" || a.match(/^_(off|out|in)_sized/);
          for (let b = 0, N = Ar(l), y = N.length; b < y; b++) {
            let v = N[b];
            for (let d = 0, w = Ar(v[e_]), k = w.length; d < k; d++) {
              let T = w[d], S = T[t_], C = T[xn].replace(/:not\((#_|\._0?)+\)/g, "");
              m && (C = C.replace(/\._(off|out|in|on)_\b/g, ""));
              let L = f[S] || (f[S] = {});
              L[C] = T, _[C] = true;
            }
          }
          if (p)
            for (let b = 0, N = Object.keys(f), y = N.length, v, d; b < y; b++) {
              v = N[b], d = f[v];
              let w = Object.keys(d);
              if (v != "" && (w = w.filter(function(T) {
                return !c[T];
              })), w.length == 0)
                continue;
              a == "transition" && w.unshift("._ease_");
              let k = w.join(", ") + ` {
` + p + `
}`;
              v && (k = v + ` {
` + k + `
}`), r.unshift(k);
            }
          let g = Object.keys(_);
          a == "transition" && g.length && (r.unshift("._easing_ {--e_d:300ms;}"), r.unshift("._instant_ { transition-duration:0ms !important; }"), r.unshift(":root {--e_d:0ms;--e_f:ease-in-out;--e_w:0ms}")), m && (this[H1][a] = g), a == "ease" && g.length && r.unshift(":root {--e_d:0ms;--e_f:ease-in-out;--e_w:0ms}");
        }
        return this[xn] = r.join(`

`), this[zl].resolveColors() && (this[xn] = this[zl].theme().transformColors(this[xn], {prefix: false})), this[xn];
      }
      toString() {
        return this.parse();
      }
    }, ss = class {
      constructor(e, r, i, s = {}) {
        this.parent = e, this.selector = r, this.content = i, this.options = s, this.isKeyFrames = !!r.match(/\@keyframes \w/), this.isKeyFrame = e && e.isKeyFrames, this.meta = {};
      }
      root() {
        return this.parent ? this.parent.root : this;
      }
      apply(e, r) {
        var i;
        return ((i = this.options.apply)[e] || (i[e] = [])).push(r);
      }
      register(e, r) {
        var i;
        return ((i = this.options.register)[e] || (i[e] = [])).push(r);
      }
      toString(e = {}) {
        let r = [], i = [];
        if (this.isKeyFrames) {
          let [o, a] = this.selector.split(/\s*\@keyframes\s*/);
          o = o.trim(), a = a.trim();
          let l = [a, o, this.options.ns].filter(function(c) {
            return c;
          }).join("-");
          this.meta.name = a, this.meta.uniqueName = l.replace(/[\s\.\,]+/g, "").replace(/[^\w\-]/g, "_"), this.options.global && !o && (this.meta.uniqueName = this.meta.name);
          let p = {};
          p["--animation-" + a] = "" + this.meta.uniqueName, o ? i.push(new ss(null, o, p, this.options)) : this.options.ns && !this.options.global && i.push(new ss(null, "." + this.options.ns, p, {}));
        }
        for (let o = this.content, a = 0, l = Object.keys(o), p = l.length, c, _; a < p; a++) {
          if (c = l[a], _ = o[c], _ == null)
            continue;
          let f = null;
          if (c.indexOf("&") >= 0) {
            if (this.isKeyFrames) {
              let g = c.replace(/&/g, ""), b = new ss(this, g, _, this.options);
              r.push(b.toString({indent: true}));
              continue;
            }
            let m = Bl(this.selector, c);
            i.push(new ss(this, m, _, this.options));
            continue;
          } else if (c.indexOf("\xA7") >= 0) {
            let m = c.split("\xA7"), g = Bl(this.selector, m.slice(1).join(" ")), b = {};
            b[m[0]] = _, i.push(new ss(this, g, b, this.options));
            continue;
          } else if (c[0] == "[") {
            console.warn("DEPRECATED", c, this);
            let m = JSON.parse(c);
            i.push(new ss(this, this.selector, _, this.options));
            continue;
          } else
            c.match(/^(x|y|z|scale|scale-x|scale-y|skew-x|skew-y|rotate)$/) ? (this.meta.transform || (this.meta.transform = true), r.push("--t_" + c + ": " + _ + " !important;")) : c.match(/^__ease__$/) ? this.meta.ease = true : (c.match(/^(width|height)$/) && (this.meta.size = true), r.push("" + c + ": " + _ + ";"));
        }
        let s = r.join(`
`), n = "";
        if ((e.indent || this.isKeyFrames) && (s = `
` + s + `
`), this.isKeyFrame)
          n = "" + this.selector + " {" + s + "}";
        else if (this.isKeyFrames)
          n = "@keyframes " + this.meta.uniqueName + " {" + s + "}";
        else {
          let o = this.isKeyFrame ? this.selector : Mp(this.selector, this.options);
          if (this.meta.transform && this.apply("transform", o), this.meta.ease && this.apply("ease", o), o && o.hasTransitionStyles && this.apply("transition", o), this.meta.size)
            for (let a = 0, l = ["_off_", "_out_", "_in_"], p = l.length; a < p; a++) {
              let c = l[a];
              o[c] && this.apply("" + c + "sized", o);
            }
          n = s.match(/[^\n\s]/) ? Pp(o, s, this.options) : "";
        }
        for (let o = 0, a = Ar(i), l = a.length; o < l; o++) {
          let p = a[o];
          n += `
` + p.toString();
        }
        return n;
      }
    };
  });
  var Zp = er((o_) => {
    Hi(o_);
    Fi(o_, {parseAsset: () => a_, parseHTML: () => l_});
    function z1(t) {
      let e;
      return t ? (e = t.toIterable) ? e.call(t) : t : [];
    }
    var _a = Symbol.for("#attributes");
    function a_(t, e) {
      var r, i;
      let s = t.body, n = s.indexOf("<svg");
      n > 0 && (s = s.slice(n));
      let o = ko.getTokenizer("xml"), a = o.getInitialState(), l = o.tokenize(s, a, 0), p = {}, c = {attributes: p, flags: []}, _, f = 0;
      for (let m = 0, g = z1(l.tokens), b = g.length; m < b; m++) {
        let N = g[m], y = N.value;
        if (N.type == "attribute.name.xml" && (_ = N, p[y] = true), N.type == "attribute.value.xml") {
          let v = y.length;
          v > 2 && y[0] == y[v - 1] && (y[0] == '"' || y[0] == "'") && (y = y.slice(1, -1)), p[_.value] = y;
        }
        if (N.type == "delimiter.xml" && y == ">") {
          f = N.offset + 1;
          break;
        }
      }
      return c.content = s.slice(f).replace("</svg>", ""), p.class && (c.flags = p.class.split(/\s+/g), r = p.class, delete p.class), e && c.flags.push("asset-" + e.toLowerCase()), i = p.xmlns, delete p.xmlns, c;
    }
    function l_(t) {
      var b;
      let e = t.body, r = ko.getTokenizer("xml"), i = r.getInitialState(), s = r.tokenize(e, i, 0), n, o = 0, a = {attributes: {}, [_a]: {}}, l = [], p = {text: t}, c = p.imports = [], _ = "", f = new Set(), m = s.tokens.slice(0);
      for (let N = 0, y = z1(m), v = y.length; N < v; N++) {
        let d = y[N], w = d.type, k = d.value, T = s.tokens[N - 1];
        if (w == "tag.xml" && (T.value == "<" ? (l.push(a = d), d.attributes = {}, d[_a] = {}, l[k] || (l[k] = []), l[k].push(d)) : T.value == "</" && (a.closer || (a.closer = d))), w == "delimiter.xml" && k == ">") {
          let S = a == null ? void 0 : a.value;
          (S == "head" || S == "body") && (d.value += "<!--$" + S + "$-->");
        }
        if (w == "attribute.name.xml" && (a[_a][k] = d, n = k), w == "attribute.value.xml") {
          let S = k;
          k.length > 2 && k[0] == k[k.length - 1] && (k[0] == '"' || k[0] == "'") && (S = k.slice(1, -1)), d.raw = S, a.attributes[n] = d;
        }
      }
      for (let N = 0, y = z1(l), v = y.length; N < v; N++) {
        let d = y[N], w = null, k = d.attributes.src;
        if (d.value == "script" && k)
          w = {path: k.raw, tagType: "script"};
        else if (d.value == "img" && k)
          w = {path: k.raw, tagType: "img"};
        else if (d.value == "link") {
          let T = (b = d.attributes.rel) == null ? void 0 : b.raw;
          k = d.attributes.href;
          let S = (k == null ? void 0 : k.raw) || "";
          if (T == "stylesheet")
            w = {path: S, tagType: "style"};
          else if (k && S.match(/^\.\.?\//)) {
            let C = k.raw;
            C.match(/\.json$/) && (C = C += "?as=file"), w = {path: C, tagType: "link"};
          }
        } else
          d.value == "style" && k && (w = {path: k.raw, tagType: "style"}, d.value = "link rel='stylesheet'", d.closer && (d.closer.value = "link"), d[_a].src && (d[_a].src.value = "href"));
        if (k && w && !w.path.match(/^(\/|https?\:\/\/)/)) {
          let T = c.push(w);
          k.value = "'ASSET_REF_" + (T - 1) + "'";
        }
      }
      let g = "";
      for (let N = 0, y = z1(m), v = y.length; N < v; N++)
        g += y[N].value;
      return p.contents = g.replace(/<\/link>/g, ""), p;
    }
  });
  var I3 = er((E) => {
    function Xl(t) {
      return t && (t.len instanceof Function ? t.len() : t.length) || 0;
    }
    function da(t, e) {
      return e && e.indexOf ? e.indexOf(t) : [].indexOf.call(t, e);
    }
    function A(t, e) {
      for (var r in e)
        e.hasOwnProperty(r) && (t[r] = e[r]);
      t.prototype = Object.create(e.prototype), t.__super__ = t.prototype.__super__ = e.prototype, t.prototype.initialize = t.prototype.constructor = t;
    }
    function It(t) {
      return t ? t.toArray ? t.toArray() : t : [];
    }
    var c_ = {}, be = lo(), U1 = v1(), Y1 = N1(), Qp = Ml(), $p = C1(), Y4 = $p.ImbaParseError, u_ = $p.ImbaTraverseError, br = ta().Token, h_ = Ep().SourceMap, ns = Wp(), p_ = ns.StyleRule, t3 = ns.StyleTheme, K4 = ns.Color, f_ = ns.StyleSheet, ns = J2(), __ = ns.ReservedIdentifierRegex, K1 = ns.InternalPrefixes, d_ = ns.toJSIdentifier, q4 = ns.toCustomTagIdentifier, X4 = Zp().parseAsset, e3 = O1().Compilation, ma = Tl().SourceMapper, r3 = U1.TAG_NAMES, i3 = U1.TAG_GLOBAL_ATTRIBUTES, ya = {}, s3 = {}, m_ = {svg: "image", png: "image", apng: "image", jpg: "image", jpeg: "image", gif: "image", tiff: "image", bmp: "image"};
    ya.HTML = "a abbr address area article aside audio b base bdi bdo big blockquote body br button canvas caption cite code col colgroup data datalist dd del details dfn div dl dt em embed fieldset figcaption figure footer form h1 h2 h3 h4 h5 h6 head header hr html i iframe img input ins kbd keygen label legend li link main map mark menu menuitem meta meter nav noscript object ol optgroup option output p param pre progress q rp rt ruby s samp script section select small source span strong strike style sub summary sup table tbody td textarea tfoot th thead time title tr track u ul var video wbr".split(" ");
    ya.SVG = "circle defs ellipse g line linearGradient mask path pattern polygon polyline radialGradient rect stop svg text tspan".split(" ");
    s3.HTML = "accept accessKey action allowFullScreen allowTransparency alt async autoComplete autoFocus autoPlay cellPadding cellSpacing charSet checked className cols colSpan content contentEditable contextMenu controls coords crossOrigin data dateTime defer dir disabled download draggable encType form formNoValidate frameBorder height hidden href hrefLang htmlFor httpEquiv icon id label lang list loop max maxLength mediaGroup method min multiple muted name noValidate pattern placeholder poster preload radioGroup readOnly rel required role rows rowSpan sandbox scope scrollLeft scrolling scrollTop seamless selected shape size span spellCheck src srcDoc srcSet start step style tabIndex target title type useMap value width wmode";
    s3.SVG = "cx cy d dx dy fill fillOpacity fontFamily fontSize fx fy gradientTransform gradientUnits markerEnd markerMid markerStart offset opacity patternContentUnits patternUnits points preserveAspectRatio r rx ry spreadMethod stopColor stopOpacity stroke strokeDasharray strokeLinecap strokeOpacity strokeWidth textAnchor transform version viewBox x1 x2 x y1 y2 y";
    var n3 = {intersect: "events_intersect", selection: "events_selection", resize: "events_resize", hotkey: "events_hotkey", touch: "events_touch", pointer: "events_pointer", pointerdown: "events_pointer", pointermove: "events_pointer", pointerover: "events_pointer", pointerout: "events_pointer", pointerup: "events_pointer", pointercancel: "events_pointer", lostpointercapture: "events_pointer", click: "events_mouse", mousedown: "events_mouse", mouseup: "events_mouse", mouseenter: "events_mouse", mouseleave: "events_mouse", mousemove: "events_mouse", mouseout: "events_mouse", mouseover: "events_mouse", mousewheel: "events_mouse", keydown: "events_keyboard", keyup: "events_keyboard", keypress: "events_keyboard"}, Pt = E.AST = {}, Se = E.F = {TAG_INITED: 2 ** 0, TAG_BUILT: 2 ** 1, TAG_CUSTOM: 2 ** 2, TAG_AWAKENED: 2 ** 3, TAG_MOUNTED: 2 ** 4, TAG_SCHEDULE: 2 ** 5, TAG_SCHEDULED: 2 ** 6, TAG_FIRST_CHILD: 2 ** 7, TAG_LAST_CHILD: 2 ** 8, TAG_HAS_DYNAMIC_FLAGS: 2 ** 9, TAG_HAS_BRANCHES: 2 ** 10, TAG_HAS_LOOPS: 2 ** 11, TAG_HAS_DYNAMIC_CHILDREN: 2 ** 12, TAG_IN_BRANCH: 2 ** 13, TAG_BIND_MODEL: 2 ** 14, TAG_INDEXED: 2 ** 15, TAG_KEYED: 2 ** 16, EL_INITED: 2 ** 0, EL_HYDRATED: 2 ** 1, EL_HYDRATING: 2 ** 2, EL_AWAKENED: 2 ** 3, EL_MOUNTING: 2 ** 4, EL_MOUNTED: 2 ** 5, EL_SCHEDULE: 2 ** 6, EL_SCHEDULED: 2 ** 7, EL_RENDERING: 2 ** 8, EL_RENDERED: 2 ** 9, EL_SSR: 2 ** 10, EL_TRACKED: 2 ** 11, EL_SUSPENDED: 2 ** 12, EL_UNRENDERED: 2 ** 13, DIFF_BUILT: 2 ** 0, DIFF_FLAGS: 2 ** 1, DIFF_ATTRS: 2 ** 2, DIFF_CHILDREN: 2 ** 3, DIFF_MODIFIERS: 2 ** 4, DIFF_INLINE: 2 ** 5}, J = E.OP = function(t, e, r) {
      var i = String(t);
      switch (i) {
        case ".":
        case "?.": {
          if (e instanceof Xe)
            return e.setMember(r), e;
          return (typeof r == "string" || r instanceof String) && (r = new At(r)), new se(t, e, r);
          break;
        }
        case "=":
          return new Ve(t, e, r);
        case "~=":
          return J("&=", e, J("~", r));
        case "?=":
        case "||=":
        case "&&=":
        case "??=":
          return new Cs(t, e, r);
        case "+=":
        case "-=":
        case "*=":
        case "/=":
        case "^=":
        case "%=":
        case "**=":
          return new Ls(t, e, r);
        case "instanceof":
        case "isa":
          return new q1(t, e, r);
        case "in":
          return new va(t, e, r);
        case "typeof":
          return new X1(t, e, r);
        case "delete":
          return new ga(t, e, r);
        case "--":
        case "++":
        case "!":
        case "\u221A":
        case "not":
        case "!!":
          return new ti(t, e, r);
        case ">":
        case "<":
        case ">=":
        case "<=":
        case "==":
        case "===":
        case "!=":
        case "!==":
          return new os(t, e, r);
        case "..":
        case "...":
          return new Sn(t, e, r);
        default:
          return new re(t, e, r);
      }
    }, o3 = function(t) {
      for (t instanceof Ds && (t = t.value()), t instanceof ar && (t = t.values()[0]); t instanceof Ae; )
        t = t.value();
      if (t instanceof he && (t = t._variable || t.value()), t instanceof se) {
        let e = t.left(), r = t.right() instanceof as ? t.right().value() : t.right();
        return e instanceof he && (e = e._variable || e.value()), r instanceof he && (r = r._variable || r.value()), t instanceof Tn && (e || (e = t.scope__().context())), r instanceof ei || r instanceof At && (r = be.singlequote(String(r.js())), r = new de(r)), [e, r];
      }
      return t;
    }, ls = {}, W1 = null, W4 = E.NODES = [], Fs = function(t, e) {
      return typeof t == "string" || typeof t == "number" ? t : t.c(e);
    }, xo = function(t, e) {
      return e === void 0 && (e = "path"), O.tsc() ? t : "" + t + "/*$" + e + "$*/";
    }, Wl = function(t, e) {
      return e == null && (e = t), {startLoc: function() {
        return t;
      }, endLoc: function() {
        return e;
      }};
    }, Tt = function(t, e, r) {
      if (e == null && (e = t), e && e.startLoc) {
        t = Fs(t, r);
        let i = O.incr("sourcePair"), s = e.startLoc(), n = e.endLoc(), o = "", a = "";
        return (s == 0 || s > 0) && (o = n >= s ? "/*%" + s + "|" + i + "$*/" : "/*%" + s + "$*/"), (n == 0 || n > 0) && (a = s >= 0 ? "/*%" + n + "|" + i + "$*/" : "/*%" + n + "$*/"), r && r.locRef && (t = xo(t, r.locRef)), o + t + a;
      }
      return Fs(t, r);
    }, y_ = function() {
      for (var t = arguments, e = t.length, r = new Array(e > 0 ? e : 0); e > 0; )
        r[e - 1] = t[--e];
      for (let i = 0, s = It(r), n = s.length, o; i < n; i++) {
        if (o = s[i], typeof o == "number" || o instanceof Number)
          return o;
        if (o && o.startLoc instanceof Function)
          return o.startLoc();
      }
      return null;
    }, g_ = function() {
      for (var t = arguments, e = t.length, r = new Array(e > 0 ? e : 0); e > 0; )
        r[e - 1] = t[--e];
      for (let i = 0, s = It(r), n = s.length, o; i < n; i++) {
        if (o = s[i], typeof o == "number" || o instanceof Number)
          return o;
        if (o && o.endLoc instanceof Function)
          return o.endLoc();
      }
      return null;
    }, Rt = function(t) {
      return new ba(t);
    }, a3 = function(t) {
      return t instanceof br && (t = t.value()), (typeof t == "string" || t instanceof String) && (t.match(/^[a-zA-Z\$\_]+[\d\w\$\_]*$/) ? t = new At(t) : t = new de(be.singlequote(String(t)))), t;
    }, Ze = function(t) {
      return t instanceof de ? t : new de(be.singlequote(String(t)));
    }, J1 = function(t, e, r, i) {
      i === void 0 && (i = {});
      var s = new pe(t, e, i);
      return r && s.addElse(r), s;
    }, v_ = function(t) {
      return t == null ? new Ps() : t == false ? new Vs() : t == true ? new Ms() : typeof t == "string" || t instanceof String ? Ze(t) : typeof t == "number" || t instanceof Number ? new Ie(t) : t;
    }, js = function(t, e, r) {
      let i = new ie(t, e);
      return r && (i._scope._systemscope = r), i;
    }, He = function(t, e) {
      return e === void 0 && (e = []), new ke(t, e);
    }, En = function(t, e) {
      return J(".", t, e);
    }, J4 = E.SPLAT = function(t) {
      return new An(t);
    }, b_ = /;(\s*\/\/.*)?[\n\s\t]*$/, k_ = /^(default|char|for)$/;
    E.parseError = c_.parseError = function(t, e) {
      var r = e3.error({category: "parser", severity: "error", offset: e.offset, length: e.length, message: t});
      return r.raise();
    };
    Pt.c = function(t) {
      return typeof t == "string" ? t : t.c();
    };
    Pt.compileRaw = function(t) {
      let e = "";
      if (t instanceof Array) {
        e = "[";
        for (let r = 0, i = It(t), s = i.length; r < s; r++)
          e += Pt.compileRaw(i[r]) + ",";
        e = e.slice(0, -1) + "]";
      } else if (t instanceof Object) {
        e = "{";
        for (let r, i = 0, s = Object.keys(t), n = s.length, o; i < n; i++)
          o = s[i], r = t[o], e = +("" + o + ":" + Pt.compileRaw(r) + ",");
        e = e.slice(0, -1) + "}";
      } else
        e = JSON.stringify(t);
      return e;
    };
    Pt.blk = function(t) {
      return t instanceof Array ? Lt.wrap(t) : t;
    };
    Pt.sym = function(t) {
      return be.symbolize(String(t), O);
    };
    Pt.cary = function(t, e) {
      return e === void 0 && (e = null), t.map(function(r) {
        return typeof r == "string" ? r : r && r.c ? e ? r.c(e) : r.c() : (console.warn("could not compile", r), String(r));
      });
    };
    Pt.dump = function(t, e) {
      if (t instanceof Array)
        return t.map(function(r) {
          return r && r.dump ? r.dump(e) : r;
        });
      if (t && t.dump)
        return t.dump();
    };
    Pt.compact = function(t) {
      return t instanceof jt ? t.compact() : t.filter(function(e) {
        return e != null && e != null;
      });
    };
    Pt.reduce = function(t, e) {
      for (let r = 0, i = It(e), s = i.length, n; r < s; r++)
        n = i[r], n instanceof Array ? Pt.reduce(t, n) : t.push(n);
    };
    Pt.flatten = function(t, e) {
      e === void 0 && (e = false);
      var r = [];
      for (let i = 0, s = It(t), n = s.length, o; i < n; i++)
        o = s[i], o instanceof Array ? Pt.reduce(r, o) : r.push(o);
      return r;
    };
    Pt.loc = function(t) {
      if (t) {
        if (t instanceof br)
          return t.region();
        if (t instanceof Z)
          return t.loc();
      } else
        return [0, 0];
    };
    Pt.parse = function(t, e) {
      e === void 0 && (e = {});
      var r = t.match(/\t+/)[0];
      return Imbac.parse(t, e);
    };
    Pt.inline = function(t, e) {
      return e === void 0 && (e = {}), this.parse(t, e).body();
    };
    Pt.node = function(t, e) {
      if (t == "call")
        return e[0].c() == "return" && (e[0] = "tata"), new ke(e[0], e[1], e[2]);
    };
    Pt.escapeComments = function(t) {
      return t || "";
    };
    var Z1 = [];
    Pt.counterToShortRef = function(t) {
      var e = "A".charCodeAt(0);
      for (t += 30; Z1.length <= t; ) {
        for (var r = Z1.length + 1, i = ""; r -= 1, i = String.fromCharCode(e + r % 26) + i, r = Math.floor(r / 26), !(r <= 0); )
          ;
        Z1.push(i.toLowerCase());
      }
      return Z1[t];
    };
    Pt.truthy = function(t) {
      if (t instanceof Ms)
        return true;
      if (t instanceof Vs)
        return false;
      if (t.isTruthy)
        return t.isTruthy();
    };
    function Ir(t, e) {
      this._open = t, this._close = e;
    }
    E.Indentation = Ir;
    Ir.prototype.open = function(t) {
      return this._open;
    };
    Ir.prototype.setOpen = function(t) {
      return this._open = t, this;
    };
    Ir.prototype.close = function(t) {
      return this._close;
    };
    Ir.prototype.setClose = function(t) {
      return this._close = t, this;
    };
    Ir.prototype.isGenerated = function() {
      return this._open && this._open.generated;
    };
    Ir.prototype.aloc = function() {
      return this._open && this._open._loc || 0;
    };
    Ir.prototype.bloc = function() {
      return this._close && this._close._loc || 0;
    };
    Ir.prototype.startLoc = function() {
      return this.aloc();
    };
    Ir.prototype.endLoc = function() {
      return this.bloc();
    };
    Ir.prototype.wrap = function(t) {
      var e = this._open && this._open._meta, r = e && e.pre || "", i = e && e.post || "", s = Pt.escapeComments, n = this._close;
      return t = i.replace(/^\n/, "") + t, t = t.replace(/^/g, "	").replace(/\n/g, `
	`).replace(/\n\t$/g, `
`), t = r + `
` + t, n instanceof ri && (t += n.c()), t[t.length - 1] != `
` && (t = t + `
`), t;
    };
    var Jl = new Ir({}, {});
    function Zl() {
      this._entities = [];
    }
    Zl.prototype.add = function(t) {
      return this._entities.unshift(t), this;
    };
    Zl.prototype.pluck = function(t) {
      var e = null;
      for (let r = 0, i = It(this._entities), s = i.length, n; r < s; r++)
        if (n = i[r], n == t || n instanceof t)
          return e = n, this._entities.splice(r, 1), e;
      return null;
    };
    function Gt() {
      this.reset();
    }
    E.Stack = Gt;
    Gt.prototype.loglevel = function(t) {
      return this._loglevel;
    };
    Gt.prototype.setLoglevel = function(t) {
      return this._loglevel = t, this;
    };
    Gt.prototype.nodes = function(t) {
      return this._nodes;
    };
    Gt.prototype.setNodes = function(t) {
      return this._nodes = t, this;
    };
    Gt.prototype.scopes = function(t) {
      return this._scopes;
    };
    Gt.prototype.setScopes = function(t) {
      return this._scopes = t, this;
    };
    Gt.prototype.root = function(t) {
      return this._root;
    };
    Gt.prototype.setRoot = function(t) {
      return this._root = t, this;
    };
    Gt.prototype.state = function(t) {
      return this._state;
    };
    Gt.prototype.setState = function(t) {
      return this._state = t, this;
    };
    Gt.prototype.semanticTokens = function(t) {
      return this._semanticTokens;
    };
    Gt.prototype.setSemanticTokens = function(t) {
      return this._semanticTokens = t, this;
    };
    Gt.prototype.meta = function(t) {
      return this._meta;
    };
    Gt.prototype.setMeta = function(t) {
      return this._meta = t, this;
    };
    Gt.prototype.theme = function(t) {
      return this._theme;
    };
    Gt.prototype.setTheme = function(t) {
      return this._theme = t, this;
    };
    Gt.prototype.css = function(t) {
      return this._css;
    };
    Gt.prototype.setCss = function(t) {
      return this._css = t, this;
    };
    Gt.prototype.reset = function() {
      return this._nodes = [], this._scoping = [], this._scopes = [], this._stash = new Zl(this), this._loglevel = 3, this._counter = 0, this._counters = {}, this._options = {}, this._state = {}, this._tag = null, this._sourceId = null, this._semanticTokens = [], this._symbols = {}, this._css = new f_(this), this._theme = null, this._meta = {}, this._runtime, this;
    };
    Gt.prototype.runtime = function() {
      return this._root.runtime();
    };
    Gt.prototype.cssns = function() {
      return this._root.cssns();
    };
    Gt.prototype.registerSemanticToken = function(t, e, r) {
      return t instanceof Z && (e || (e = t._variable), t = t._value), typeof t != "string" && (e instanceof Ft ? (t._kind = e.type(), t._level = e.scope().level(), t._scope = e.scope().kind()) : t._kind = e), this._semanticTokens.push(t);
    };
    Gt.prototype.use = function(t) {
      return this._root.use(t);
    };
    Gt.prototype.incr = function(t) {
      return this._counters[t] || (this._counters[t] = 0), this._counters[t] += 1;
    };
    Gt.prototype.decr = function(t) {
      return this._counters[t] || (this._counters[t] = 0), this._counters[t] -= 1;
    };
    Gt.prototype.generateId = function(t) {
      return t === void 0 && (t = "oid"), Pt.counterToShortRef(O.incr(t));
    };
    Gt.prototype.getSymbol = function(t, e) {
      e === void 0 && (e = null);
      let r = t || this.incr("symbols");
      return this._symbols[r] || (this._symbols[r] = this._root.declare(e || t, Rt("Symbol()"), {system: true, alias: e || t}).resolve().c());
    };
    Gt.prototype.symbolFor = function(t) {
      return this._root.symbolRef(t);
    };
    Gt.prototype.domCall = function(t) {
      return t = {start: "beforeVisit", end: "afterVisit", open: "beforeReconcile", close: "afterReconcile", insert: "placeChild"}[t] || t, "[" + this.symbolFor("#" + t) + "]";
    };
    Gt.prototype.sourceId = function() {
      if (this._sourceId || (this._sourceId = this._options.sourceId))
        return this._sourceId;
      let t = this.sourcePath(), e = this.cwd();
      return this._options.path && e && (t = this._options.path.relative(e, t)), this._sourceId = be.identifierForPath(t), this._sourceId;
    };
    Gt.prototype.theme = function() {
      return this._theme || (this._theme = t3.wrap(this._options.config));
    };
    Gt.prototype.stash = function() {
      return this._stash;
    };
    Gt.prototype.set = function(t) {
      this._options || (this._options = {});
      for (let e, r = 0, i = Object.keys(t), s = i.length, n; r < s; r++)
        n = i[r], e = t[n], this._options[n] = e;
      return this;
    };
    Gt.prototype.option = function(t, e) {
      return e != null ? (this._options || (this._options = {}), this._options[t] = e, this) : this._options && this._options[t];
    };
    Gt.prototype.platform = function() {
      return this._options.platform || "browser";
    };
    Gt.prototype.format = function() {
      return this._options.format;
    };
    Gt.prototype.sourcePath = function() {
      return this._options.sourcePath;
    };
    Gt.prototype.imbaPath = function() {
      return this._options.imbaPath;
    };
    Gt.prototype.resolveColors = function() {
      return this._options.styles !== "extern";
    };
    Gt.prototype.config = function() {
      return this._options.config || {};
    };
    Gt.prototype.cwd = function() {
      return this.config() && this.config().cwd;
    };
    Gt.prototype.tsc = function() {
      return this.platform() == "tsc" || this._options.tsc;
    };
    Gt.prototype.hmr = function() {
      return !!this._options.hmr;
    };
    Gt.prototype.isStdLib = function() {
      return !!this._options.stdlib;
    };
    Gt.prototype.isWeb = function() {
      return this.platform() == "browser" || this.platform() == "web";
    };
    Gt.prototype.isWorker = function() {
      return this.platform() == "worker";
    };
    Gt.prototype.isNode = function() {
      return this.platform() == "node";
    };
    Gt.prototype.cjs = function() {
      return this.format() == "cjs";
    };
    Gt.prototype.esm = function() {
      return !this.cjs();
    };
    Gt.prototype.env = function(t) {
      var e, r = this._options["ENV_" + t];
      if (r != null)
        return r;
      if (Se[t] !== void 0)
        return Se[t];
      var i = t.toLowerCase();
      if (this._options[i] != null)
        return this._options[i];
      if (t == "WEB" || t == "BROWSER")
        return this._meta.universal = false, this.isWeb();
      if (t == "NODE")
        return this._meta.universal = false, this.isNode();
      if (t == "WORKER" || t == "WEBWORKER")
        return this._meta.universal = false, this.isWorker();
      if (t == "HMR")
        return !!this._options.hmr;
      if (e = this._options.env) {
        if (e.hasOwnProperty(t))
          return e[t];
        if (e.hasOwnProperty(t.toLowerCase()))
          return e[t.toLowerCase()];
      }
    };
    Gt.prototype.addScope = function(t) {
      return this._scopes.push(t), this;
    };
    Gt.prototype.traverse = function(t) {
      return this;
    };
    Gt.prototype.push = function(t) {
      return this._nodes.push(t), this;
    };
    Gt.prototype.pop = function(t) {
      return this._nodes.pop(), this;
    };
    Gt.prototype.parent = function() {
      return this._nodes[this._nodes.length - 2];
    };
    Gt.prototype.current = function() {
      return this._nodes[this._nodes.length - 1];
    };
    Gt.prototype.up = function(t) {
      if (t || (t = function(i) {
        return !(i instanceof he);
      }), typeof t == "number")
        return this._nodes[this._nodes.length - (1 + t)];
      var e = this._nodes.length - 2;
      if (t.prototype instanceof Z) {
        for (; e >= 0; ) {
          var r = this._nodes[e--];
          if (r instanceof t)
            return r;
        }
        return null;
      }
      for (; e >= 0; ) {
        if (r = this._nodes[e], t(r))
          return r;
        e -= 1;
      }
      return null;
    };
    Gt.prototype.parents = function(t) {
      if (t || (t = function(e) {
        return !(e instanceof he);
      }), t.prototype instanceof Z) {
        let e = t;
        t = function(r) {
          return r instanceof e;
        };
      }
      return this._nodes.filter(t);
    };
    Gt.prototype.relative = function(t, e) {
      e === void 0 && (e = 0);
      var r = this._nodes.indexOf(t);
      return r >= 0 ? this._nodes[r + e] : null;
    };
    Gt.prototype.scope = function(t) {
      if (t === void 0 && (t = 0), this._withScope)
        return this._withScope;
      for (var e = this._nodes.length - 1 - t; e >= 0; ) {
        var r = this._nodes[e];
        if (r._scope)
          return r._scope;
        e -= 1;
      }
      return null;
    };
    Gt.prototype.withScope = function(t, e) {
      let r = this._withScope;
      this._withScope = t, e(), this._withScope = r;
    };
    Gt.prototype.scopes = function() {
      for (var t = [], e = this._nodes.length - 1; e >= 0; ) {
        var r = this._nodes[e];
        r._scope && t.push(r._scope), e -= 1;
      }
      return t;
    };
    Gt.prototype.closures = function() {
      return this.scopes().filter(function(t) {
        return t.closure() == t;
      });
    };
    Gt.prototype.method = function() {
      return this.up(Re);
    };
    Gt.prototype.block = function() {
      return this.up(Lt);
    };
    Gt.prototype.blockpart = function() {
      let t = this._nodes.length - 1;
      for (; t; ) {
        if (this._nodes[t - 1] instanceof Lt)
          return this._nodes[t];
        t--;
      }
    };
    Gt.prototype.lastImport = function() {
      let t = this.scopes();
      for (let e = 0, r = It(t), i = r.length, s; e < i; e++)
        if (s = r[e], s._lastImport)
          return s._lastImport;
      return null;
    };
    Gt.prototype.isExpression = function() {
      for (var t = this._nodes.length - 1; t >= 0; ) {
        var e = this._nodes[t];
        if (e instanceof fr || e instanceof De || e.isStatementLike())
          return false;
        if (e.isExpression())
          return true;
        t -= 1;
      }
      return false;
    };
    Gt.prototype.toString = function() {
      return "Stack(" + this._nodes.join(" -> ") + ")";
    };
    Gt.prototype.isAnalyzing = function() {
      return this._analyzing;
    };
    Gt.prototype.scoping = function() {
      return this._nodes.filter(function(t) {
        return t._scope;
      }).map(function(t) {
        return t._scope;
      });
    };
    Gt.prototype.currentRegion = function() {
      let t = this._nodes.length, e = this._nodes[--t];
      return e && [e.startLoc(), e.endLoc()];
    };
    var O = E.STACK = new Gt();
    function Z() {
      this.setup();
    }
    E.Node = Z;
    Z.prototype.o = function(t) {
      return this._o;
    };
    Z.prototype.setO = function(t) {
      return this._o = t, this;
    };
    Z.prototype.options = function(t) {
      return this._options;
    };
    Z.prototype.setOptions = function(t) {
      return this._options = t, this;
    };
    Z.prototype.traversed = function(t) {
      return this._traversed;
    };
    Z.prototype.setTraversed = function(t) {
      return this._traversed = t, this;
    };
    Z.prototype.script = function() {
      return e3.current;
    };
    Z.prototype.safechain = function() {
      return false;
    };
    Z.prototype.oid = function() {
      return this._oid || (this._oid = O.generateId(""));
    };
    Z.prototype.osym = function(t) {
      return t === void 0 && (t = ""), O.getSymbol(this.oid() + t);
    };
    Z.prototype.symbolRef = function(t) {
      return O.root().symbolRef(t);
    };
    Z.prototype.domCall = function(t) {
      return O.domCall(t);
    };
    Z.prototype.gsym = function(t) {
      return O.root().symbolRef(t);
    };
    Z.prototype.sourceId = function() {
      return O.sourceId();
    };
    Z.prototype.slf = function() {
      return this.scope__().context();
    };
    Z.prototype.p = function() {
      return O.loglevel() > 0 && console.log.apply(console, arguments), this;
    };
    Z.prototype.runtime = function() {
      return O.runtime();
    };
    Z.prototype.typeName = function() {
      return this.constructor.name;
    };
    Z.prototype.namepath = function() {
      return this.typeName();
    };
    Z.prototype.setup = function() {
      return this._expression = false, this._traversed = false, this._parens = false, this._cache = null, this._value = null, this;
    };
    Z.prototype.setStartLoc = function(t) {
      return this._startLoc = t, this;
    };
    Z.prototype.setEndLoc = function(t) {
      return this._endLoc = t, this;
    };
    Z.prototype.setRegion = function(t) {
      return t instanceof Z && (t = t.region()), t instanceof Array && (this._startLoc = t[0], this._endLoc = t[1]), this;
    };
    Z.prototype.setEnds = function(t, e) {
      return e && e.endLoc && (this._endLoc = e.endLoc()), t && t.startLoc && (this._startLoc = t.startLoc()), this;
    };
    Z.prototype.startLoc = function() {
      return this._startLoc;
    };
    Z.prototype.endLoc = function() {
      return this._endLoc;
    };
    Z.prototype.set = function(t) {
      this._options || (this._options = {});
      for (let e, r = 0, i = Object.keys(t), s = i.length, n; r < s; r++)
        n = i[r], e = t[n], this._options[n] = e;
      return this;
    };
    Z.prototype.option = function(t, e) {
      return e != null ? (this._options || (this._options = {}), this._options[t] = e, this) : this._options && this._options[t];
    };
    Z.prototype.o = function() {
      return this._options || (this._options = {});
    };
    Z.prototype.keyword = function() {
      return this._keyword || this._options && this._options.keyword;
    };
    Z.prototype.datatype = function() {
      return this._options ? this._options.datatype : null;
    };
    Z.prototype.configure = function(t) {
      return this.set(t);
    };
    Z.prototype.region = function() {
      return [0, 0];
    };
    Z.prototype.loc = function() {
      return [this.startLoc() || 0, this.endLoc() || 0];
    };
    Z.prototype.token = function() {
      return null;
    };
    Z.prototype.compile = function() {
      return this;
    };
    Z.prototype.visit = function() {
      return this;
    };
    Z.prototype.stack = function() {
      return O;
    };
    Z.prototype.isString = function() {
      return false;
    };
    Z.prototype.isPrimitive = function(t) {
      return false;
    };
    Z.prototype.isReserved = function() {
      return false;
    };
    Z.prototype.isGlobal = function(t) {
      return false;
    };
    Z.prototype.isConstant = function() {
      return false;
    };
    Z.prototype.traverse = function(t) {
      if (this._traversed)
        return this;
      this._traversed = true;
      let e;
      return t && (e = O.state(), O.setState(t)), O.push(this), this.visit(O, O.state()), O.pop(this), t && O.setState(e), this;
    };
    Z.prototype.inspect = function() {
      return {type: this.constructor.toString()};
    };
    Z.prototype.js = function(t) {
      return "NODE";
    };
    Z.prototype.toString = function() {
      return "" + this.constructor.name;
    };
    Z.prototype.consume = function(t) {
      return t instanceof Et ? t.register(this) : t instanceof ii ? (t.register(this), new ii(t.op(), t.left(), this)) : t instanceof Ve ? J(t.op(), t.left(), this) : t instanceof Ke ? J("=", t.left(), this) : t instanceof re ? J(t.op(), t.left(), this) : t instanceof Qe ? new Qe(this) : this;
    };
    Z.prototype.toExpression = function() {
      return this._expression = true, this;
    };
    Z.prototype.forceExpression = function() {
      return this._expression = true, this;
    };
    Z.prototype.isExpressable = function() {
      return true;
    };
    Z.prototype.isExpression = function() {
      return this._expression || false;
    };
    Z.prototype.isStatementLike = function() {
      return false;
    };
    Z.prototype.isRuntimeReference = function() {
      return false;
    };
    Z.prototype.hasSideEffects = function() {
      return true;
    };
    Z.prototype.isUsed = function() {
      return true;
    };
    Z.prototype.shouldParenthesize = function() {
      return false;
    };
    Z.prototype.shouldParenthesizeInTernary = function() {
      return true;
    };
    Z.prototype.block = function() {
      return Lt.wrap([this]);
    };
    Z.prototype.node = function() {
      return this;
    };
    Z.prototype.unwrappedNode = function() {
      return this;
    };
    Z.prototype.scope__ = function() {
      return O.scope();
    };
    Z.prototype.up = function() {
      return O.parent();
    };
    Z.prototype.util = function() {
      return Ht;
    };
    Z.prototype.receiver = function() {
      return this;
    };
    Z.prototype.indented = function(t, e) {
      return t instanceof Ir ? (this._indentation = t, this) : (e instanceof Array && (this.add(e[0]), e = e[1]), this._indentation || (this._indentation = t && e ? new Ir(t, e) : Jl), this);
    };
    Z.prototype.prebreak = function(t) {
      return t === void 0 && (t = `
`), this;
    };
    Z.prototype.invert = function() {
      return J("!", this);
    };
    Z.prototype.cache = function(t) {
      return t === void 0 && (t = {}), this._cache = t, t.var = (t.scope || this.scope__()).temporary(this, t), t.lookups = 0, this;
    };
    Z.prototype.cachevar = function() {
      return this._cache && this._cache.var;
    };
    Z.prototype.decache = function() {
      return this._cache && (this.cachevar().free(), this._cache = null), this;
    };
    Z.prototype.alias = function() {
      return null;
    };
    Z.prototype.warn = function(t, e) {
      e === void 0 && (e = {});
      let r = e.loc || this.loc() || [0, 0];
      return r instanceof Z && (r = [r.startLoc(), r.endLoc()]), r instanceof br && (r = r.loc()), this.script().addDiagnostic(e.severity || "warning", {message: t, range: this.script().rangeAt(r[0], r[1])});
    };
    Z.prototype.error = function(t, e) {
      return e === void 0 && (e = {}), e.severity = "error", this.warn(t, e);
    };
    Z.prototype.c = function(t) {
      var e, r = O, i = this._cache;
      if (i && i.cached)
        return this.c_cached(i);
      r.push(this), t && t.expression && this.forceExpression(), t && t.indent && (this._indentation || (this._indentation = Jl));
      var s = this.js(r, t), n = this.shouldParenthesize();
      if (r.pop(this), s == null)
        return s;
      if ((e = this._indentation) && (s = e.wrap(s, t)), n && (s = "(" + s + ")"), (t && t.braces || this._options && this._options.braces) && (e ? s = "{" + s + "}" : s = "{ " + s + " }"), i = this._cache) {
        i.manual || (s = "" + i.var.c() + " = " + s);
        var o = r.current();
        o instanceof Ut && (o = o.node()), (o instanceof se || o instanceof re) && (s = "(" + s + ")"), i.cached = true;
      }
      return ls.sourcemap && (!t || t.mark !== false) && (s = Tt(s, this)), s;
    };
    Z.prototype.c_cached = function(t) {
      return t.lookups++, t.uses == t.lookups && t.var.free(), t.var.c();
    };
    function Ut(t) {
      this.setup(), this._value = this.load(t);
    }
    A(Ut, Z);
    E.ValueNode = Ut;
    Ut.prototype.value = function(t) {
      return this._value;
    };
    Ut.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    Ut.prototype.startLoc = function() {
      return this._value && this._value.startLoc && this._value.startLoc();
    };
    Ut.prototype.endLoc = function() {
      return this._value && this._value.endLoc && this._value.endLoc();
    };
    Ut.prototype.load = function(t) {
      return t;
    };
    Ut.prototype.js = function(t) {
      return typeof this._value == "string" ? this._value : this._value.c();
    };
    Ut.prototype.visit = function() {
      return this._value instanceof Z && this._value.traverse(), this;
    };
    Ut.prototype.region = function() {
      return [this._value._loc, this._value._loc + this._value._len];
    };
    function pi(t, e) {
      this.setup(), this._value = t, this._orig = e || t;
    }
    A(pi, Z);
    E.ValueReferenceNode = pi;
    pi.prototype.value = function(t) {
      return this._value;
    };
    pi.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    pi.prototype.orig = function(t) {
      return this._orig;
    };
    pi.prototype.setOrig = function(t) {
      return this._orig = t, this;
    };
    pi.prototype.startLoc = function() {
      return this._orig && this._orig.startLoc && this._orig.startLoc();
    };
    pi.prototype.endLoc = function() {
      return this._orig && this._orig.endLoc && this._orig.endLoc();
    };
    pi.prototype.load = function(t) {
      return t;
    };
    pi.prototype.js = function(t) {
      return Tt(this._value.c({mark: false}), this);
    };
    pi.prototype.visit = function() {
      return this._value instanceof Z && this._value.traverse(), this;
    };
    pi.prototype.region = function() {
      return [this._orig._loc, this._orig._loc + this._orig._len];
    };
    function Q1() {
      return Ut.apply(this, arguments);
    }
    A(Q1, Ut);
    E.ExpressionNode = Q1;
    function Ql() {
      return Ut.apply(this, arguments);
    }
    A(Ql, Ut);
    E.AssertionNode = Ql;
    Ql.prototype.js = function(t) {
      let e = this._value, r = [];
      if (e instanceof re && !(e instanceof se)) {
        let i = e.left(), s = e.right();
        r.push(i.cache().c(t)), r.push(be.singlequote(e._op)), r.push(s.cache().c(t)), r = ["imba.$a=[" + r.join(",") + "]"], r.push(e.c(t));
      } else
        r.push("imba.$a=null"), r.push(e.c(t));
      return "(" + r.join(",") + ")";
    };
    function Pi() {
      return Ut.apply(this, arguments);
    }
    A(Pi, Ut);
    E.Statement = Pi;
    Pi.prototype.isExpressable = function() {
      return false;
    };
    function Mr() {
      return Ut.apply(this, arguments);
    }
    A(Mr, Ut);
    E.Meta = Mr;
    Mr.prototype.isPrimitive = function(t) {
      return true;
    };
    function In() {
      return Mr.apply(this, arguments);
    }
    A(In, Mr);
    E.Comment = In;
    In.prototype.visit = function() {
      var t, e;
      if (t = this.up()) {
        var r = t.indexOf(this) + 1;
        t.index(r) instanceof ri && (r += 1), (e = t.index(r)) && (e._desc = this);
      }
      return this;
    };
    In.prototype.toDoc = function() {
      return be.normalizeIndentation("" + this._value._value);
    };
    In.prototype.toJSON = function() {
      return be.normalizeIndentation("" + this._value._value);
    };
    In.prototype.toString = function() {
      return this._value._value;
    };
    In.prototype.c = function(t) {
      if (O.option("comments") == false || this._skip)
        return "";
      var e = this._value._value;
      if (t && t.expression || e.match(/\n/) || this._value.type() == "HERECOMMENT") {
        var r = e.replace(/\*\//g, "\\*\\/").replace(/\/\*/g, "\\/\\*");
        return "/*" + r + "*/";
      } else
        return e.match(/\@(type|param)/) ? "/** " + e + " */" : "// " + e;
    };
    function ri(t) {
      this._value = t;
    }
    A(ri, Mr);
    E.Terminator = ri;
    ri.prototype.traverse = function() {
      return this;
    };
    ri.prototype.loc = function() {
      return [this._value._loc, this._value._loc + this._value._value.length];
    };
    ri.prototype.startLoc = function() {
      return this._value.startLoc ? this._value.startLoc() : -1;
    };
    ri.prototype.endLoc = function() {
      return this._value._value ? this.startLoc() + this._value._value.length : -1;
    };
    ri.prototype.c = function() {
      let t = this._value.c();
      return O.option("comments") == false && (t = t.replace(/\/\/.*$/gm, "")), O.tsc() && (t = t.replace(/\/\/(.*)$/gm, "/**$1 */ ")), O.tsc() && (t.length > 1 || this._first) ? Tt(t.replace(/^[\t ]+/gm, ""), this) : t.replace(/^[\t ]+/gm, "");
    };
    function wo(t) {
      this._traversed = false, this._value = t || `
`;
    }
    A(wo, ri);
    E.Newline = wo;
    wo.prototype.c = function() {
      return this._value;
    };
    function as() {
      return Ut.apply(this, arguments);
    }
    A(as, Ut);
    E.Index = as;
    as.prototype.cache = function(t) {
      return t === void 0 && (t = {}), this._value.cache(t);
    };
    as.prototype.js = function(t) {
      return this._value.c();
    };
    function jt(t) {
      this.setup(), this._nodes = this.load(t || []), this._indentation = null;
    }
    A(jt, Z);
    E.ListNode = jt;
    jt.prototype.nodes = function(t) {
      return this._nodes;
    };
    jt.prototype.setNodes = function(t) {
      return this._nodes = t, this;
    };
    jt.prototype.list = function() {
      return this._nodes;
    };
    jt.prototype.compact = function() {
      return this._nodes = Pt.compact(this._nodes), this;
    };
    jt.prototype.load = function(t) {
      return t;
    };
    jt.prototype.concat = function(t) {
      return this._nodes = this.nodes().concat(t instanceof Array ? t : t.nodes()), this;
    };
    jt.prototype.swap = function(t, e) {
      var r = this.indexOf(t);
      return r >= 0 && (this.nodes()[r] = e), this;
    };
    jt.prototype.push = function(t) {
      return this._nodes.push(t), this;
    };
    jt.prototype.pop = function() {
      var t = this._nodes.pop();
      return t;
    };
    jt.prototype.add = function(t, e) {
      let r = null;
      if (e && e.before)
        r = this._nodes.indexOf(e.before), r == -1 && (r = null);
      else if (e && e.after) {
        if (r = this._nodes.indexOf(e.after) + 1, r == 0 && (r = null), r >= 1)
          for (; this._nodes[r] instanceof Mr; )
            r++;
      } else
        (typeof e == "number" || e instanceof Number) && (r = e);
      return r !== null ? t instanceof Array ? this._nodes.splice.apply(this._nodes, [].concat([r, 0], Array.from(t))) : this._nodes.splice(r, 0, t) : t instanceof Array ? this._nodes.push.apply(this._nodes, t) : this._nodes.push(t), this;
    };
    jt.prototype.unshift = function(t, e) {
      return e && this._nodes.unshift(Fe), this._nodes.unshift(t), this;
    };
    jt.prototype.slice = function(t, e) {
      return new this.constructor(this._nodes.slice(t, e));
    };
    jt.prototype.break = function(t, e) {
      return e === void 0 && (e = false), typeof t == "string" && (t = new ri(t)), e ? this.unshift(t) : this.push(t), this;
    };
    jt.prototype.some = function(t) {
      for (let e = 0, r = It(this._nodes), i = r.length, s; e < i; e++)
        if (s = r[e], t(s))
          return true;
      return false;
    };
    jt.prototype.every = function(t) {
      for (let e = 0, r = It(this._nodes), i = r.length, s; e < i; e++)
        if (s = r[e], !t(s))
          return false;
      return true;
    };
    jt.prototype.values = function() {
      return this._nodes.filter(function(t) {
        return !(t instanceof Mr);
      });
    };
    jt.prototype.filter = function(t) {
      return this._nodes.filter(t);
    };
    jt.prototype.pluck = function(t) {
      var e = this.filter(t)[0];
      return e && this.remove(e), e;
    };
    jt.prototype.indexOf = function(t) {
      return this._nodes.indexOf(t);
    };
    jt.prototype.index = function(t) {
      return this._nodes[t];
    };
    jt.prototype.remove = function(t) {
      var e = this._nodes.indexOf(t);
      return e >= 0 && this._nodes.splice(e, 1), this;
    };
    jt.prototype.removeAt = function(t) {
      var e = this._nodes[t];
      return t >= 0 && this._nodes.splice(t, 1), e;
    };
    jt.prototype.replace = function(t, e) {
      var r = this._nodes.indexOf(t);
      return r >= 0 && (e instanceof Array ? this._nodes.splice.apply(this._nodes, [].concat([r, 1], Array.from(e))) : this._nodes[r] = e), this;
    };
    jt.prototype.first = function() {
      return this._nodes[0];
    };
    jt.prototype.last = function() {
      for (var t = this._nodes.length; t; ) {
        t = t - 1;
        var e = this._nodes[t];
        if (!(e instanceof Mr))
          return e;
      }
      return null;
    };
    jt.prototype.map = function(t) {
      return this._nodes.map(t);
    };
    jt.prototype.forEach = function(t) {
      return this._nodes.forEach(t);
    };
    jt.prototype.remap = function(t) {
      return this._nodes = this.map(t), this;
    };
    jt.prototype.count = function() {
      return this._nodes.length;
    };
    jt.prototype.len = function() {
      return this._nodes.length;
    };
    jt.prototype.realCount = function() {
      var t = 0;
      for (let e = 0, r = It(this._nodes), i = r.length, s; e < i; e++)
        s = r[e], s && !(s instanceof Mr) && t++;
      return t;
    };
    jt.prototype.isEmpty = function() {
      return this.realCount() == 0;
    };
    jt.prototype.visit = function() {
      let t = this._nodes, e = 0;
      for (; e < t.length; ) {
        let r = t[e];
        if (r.traverse) {
          let i = r.traverse();
          if (i != r && i instanceof Array) {
            t.splice.apply(t, [].concat([e, 1], Array.from(i)));
            continue;
          }
        }
        e++;
      }
      return this;
    };
    jt.prototype.isExpressable = function() {
      for (let t = 0, e = It(this.nodes()), r = e.length, i; t < r; t++)
        if (i = e[t], i && !i.isExpressable())
          return false;
      return true;
    };
    jt.prototype.toArray = function() {
      return this._nodes;
    };
    jt.prototype.delimiter = function() {
      return this._delimiter || ",";
    };
    jt.prototype.js = function(t, e) {
      (!e || e.constructor !== Object) && (e = {});
      var r = e.nodes !== void 0 ? e.nodes : this._nodes, i = ",", s = i != ";", n = this.last(), o = 0, a = r.length, l = "";
      for (let c = 0, _ = It(r), f = _.length, m; c < f; c++) {
        m = _[c];
        var p = typeof m == "string" ? m : m ? m.c({expression: s}) : "";
        l += p, p && (!s || m != n) && !(m instanceof Mr) && (l += i);
      }
      return l;
    };
    jt.prototype.indented = function(t, e) {
      return t instanceof Ir ? (this._indentation = t, this) : (this._indentation || (this._indentation = t && e ? new Ir(t, e) : Jl), this);
    };
    jt.prototype.endLoc = function() {
      var t;
      if (this._endLoc)
        return this._endLoc;
      var e = this._nodes.length;
      return (t = this._nodes[e - 1]) && t.endLoc && t.endLoc();
    };
    function ar() {
      return jt.apply(this, arguments);
    }
    A(ar, jt);
    E.ArgList = ar;
    ar.prototype.startLoc = function() {
      var t;
      return typeof this._startLoc == "number" ? this._startLoc : (t = this.first()) && t.startLoc && t.startLoc();
    };
    ar.prototype.consume = function(t) {
      return t instanceof Et ? (this._nodes = this._nodes.map(function(e) {
        return e instanceof Mr ? e : e.consume(t);
      }), this) : ar.prototype.__super__.consume.apply(this, arguments);
    };
    ar.prototype.setEnds = function(t, e) {
      return e && e.endLoc && e.endLoc() != -1 && (this._endLoc = e.endLoc()), t && t.startLoc && t.startLoc() != -1 && (this._startLoc = t.startLoc()), this;
    };
    function So() {
      return ar.apply(this, arguments);
    }
    A(So, ar);
    E.AssignList = So;
    So.prototype.concat = function(t) {
      return this._nodes.length == 0 && t instanceof So ? t : (So.prototype.__super__.concat.call(this, t), this);
    };
    function Lt(t) {
      this.setup(), this._nodes = t || [], this._head = null, this._indentation = null;
    }
    A(Lt, jt);
    E.Block = Lt;
    Lt.prototype.head = function(t) {
      return this._head;
    };
    Lt.prototype.setHead = function(t) {
      return this._head = t, this;
    };
    Lt.prototype.startLoc = function() {
      return this._indentation ? this._indentation.startLoc() : Lt.prototype.__super__.startLoc.apply(this, arguments);
    };
    Lt.prototype.endLoc = function() {
      return this._indentation ? this._indentation.endLoc() : Lt.prototype.__super__.endLoc.apply(this, arguments);
    };
    Lt.wrap = function(t) {
      if (!(t instanceof Array))
        throw new SyntaxError("what");
      return t.length == 1 && t[0] instanceof Lt ? t[0] : new Lt(t);
    };
    Lt.prototype.visit = function(t) {
      this._scope && this._scope.visit(), t && t._tag && (this._tag = t._tag), this._traversing = true;
      for (let e = 0, r = It(this._nodes.slice(0)), i = r.length, s; e < i; e++)
        s = r[e], s && s.traverse();
      return this._traversing = false, this;
    };
    Lt.prototype.block = function() {
      return this;
    };
    Lt.prototype.collectDecorators = function() {
      var t;
      return (t = this._decorators) ? (this._decorators = null, t) : null;
    };
    Lt.prototype.loc = function() {
      var t, e;
      if (t = this.option("ends")) {
        var r = t[0].loc(), i = t[1].loc();
        return r || this.p("no loc for " + t[0]), i || this.p("no loc for " + t[1]), [r[0], i[1]];
      }
      return (e = this._indentation) && e.aloc() != -1 ? [e.aloc(), e.bloc()] : (r = this._nodes[0], i = this._nodes[this._nodes.length - 1], [r && r.loc()[0] || 0, i && i.loc()[1] || 0]);
    };
    Lt.prototype.unwrap = function() {
      var t = [];
      for (let e = 0, r = It(this.nodes()), i = r.length, s; e < i; e++)
        s = r[e], s instanceof Lt ? t.push.apply(t, s.unwrap()) : t.push(s);
      return t;
    };
    Lt.prototype.compile = function(t) {
      t === void 0 && (t = {});
      var e = new cs(this, t);
      return e.compile(t);
    };
    Lt.prototype.analyze = function(t) {
      return t === void 0 && (t = {}), this;
    };
    Lt.prototype.cpart = function(t) {
      if (t === x_)
        return "";
      var e = typeof t == "string" ? t : t ? t.c() : "";
      if (e == null || e == null || e == "")
        return "";
      if (e instanceof Array) {
        for (var r = "", i = e.length, s = 0; s < i; )
          r += this.cpart(e[s++]);
        return r;
      }
      var n = b_.test(e);
      return n || t instanceof Mr || (e += this.delimiter()), e;
    };
    Lt.prototype.delimiter = function() {
      return this._delimiter == null ? ";" : this._delimiter;
    };
    Lt.prototype.js = function(t, e) {
      var r = this._nodes, i = r.length, s = this.isExpression() || t.isExpression() || this.option("express") && this.isExpressable();
      if (r.length == 0 && (!this._head || this._head.length == 0))
        return "";
      if (s)
        return Lt.prototype.__super__.js.call(this, t, {nodes: r});
      var n = "";
      let o = false;
      for (let p = 0, c = It(r), _ = c.length; p < _; p++) {
        let f = this.cpart(c[p]);
        if (f[0] == `
` && /^\n+$/.test(f)) {
          if (o)
            continue;
          o = true;
        } else
          f && (o = false);
        n += f;
      }
      if (this._head && this._head.length > 0) {
        var a = "";
        for (let p = 0, c = It(this._head), _ = c.length; p < _; p++) {
          var l = this.cpart(c[p]);
          l && (a += l + `
`);
        }
        n = a + n;
      }
      return this.option("strict") && (n = this.cpart(`"use strict";
`) + n), n;
    };
    Lt.prototype.defers = function(t, e) {
      var r = this._nodes.indexOf(t);
      r >= 0 && (this._nodes[r] = e);
      var i = this._nodes.splice(r + 1);
      return i;
    };
    Lt.prototype.expressions = function() {
      var t = [];
      for (let e = 0, r = It(this.nodes()), i = r.length, s; e < i; e++)
        s = r[e], s instanceof ri || t.push(s);
      return t;
    };
    Lt.prototype.consume = function(t) {
      var e;
      if (t instanceof Et) {
        let i = this.expressions();
        return this._nodes = this._nodes.map(function(s) {
          return da(s, i) >= 0 && !(s instanceof Ve) ? s.consume(t) : s;
        }), this;
      }
      if (e = this.last()) {
        var r = e.consume(t);
        r != e && (r instanceof Lt && (r = r.nodes()), this.replace(e, r));
      }
      return this;
    };
    Lt.prototype.isExpressable = function() {
      return !!this._nodes.every(function(t) {
        return t.isExpressable();
      });
    };
    Lt.prototype.isExpression = function() {
      return this.option("express") || this._expression;
    };
    Lt.prototype.shouldParenthesizeInTernary = function() {
      return this.count() == 1 ? this.first().shouldParenthesizeInTernary() : true;
    };
    Lt.prototype.indented = function(t, e) {
      var r;
      if (Lt.prototype.__super__.indented.apply(this, arguments), t instanceof br && t._type == "INDENT" && (r = t._meta && t._meta.post)) {
        let i = new br("TERMINATOR", r);
        this._nodes.unshift(new ri(i)), t._meta.post = "";
      }
      return this;
    };
    function $1() {
      return Lt.apply(this, arguments);
    }
    A($1, Lt);
    function ka() {
      return Lt.apply(this, arguments);
    }
    A(ka, Lt);
    function $l() {
      return ka.apply(this, arguments);
    }
    A($l, ka);
    function xe(t) {
      xe.prototype.__super__.constructor.apply(this, arguments), this._name = t;
    }
    A(xe, Z);
    E.ClassField = xe;
    xe.prototype.name = function(t) {
      return this._name;
    };
    xe.prototype.setName = function(t) {
      return this._name = t, this;
    };
    xe.prototype.visit = function() {
      var t;
      return this._decorators = (t = this.up()) && t.collectDecorators && t.collectDecorators(), this._classdecl = O.up(_e), this._name && this._name.traverse && this._name.traverse(), this.value() && (this.value()._scope = this._vscope = new xa(this.value()), this.value()._scope._parent = this.scope__(), this.value().traverse()), this.watchBody() && (this._descriptor = O.root().declare("" + this.oid() + "$Prop", this.util().watcher(this.storageSymbol(), this.watcherSymbol()), {type: "const", system: true})), this;
    };
    xe.prototype.value = function() {
      return this.option("value");
    };
    xe.prototype.target = function() {
      return this.option("static") ? Rt("this") : Rt("this.prototype");
    };
    xe.prototype.storageSymbol = function() {
      return this.symbolRef("#" + this.name().c({as: "symbolpart"}));
    };
    xe.prototype.watcherSymbol = function() {
      return this.symbolRef("#" + this.name().c({as: "symbolpart"}) + "DidSet");
    };
    xe.prototype.storageKey = function() {
      return this._storageKey || (this._storageKey = Ze(this.name().c() + "$$"));
    };
    xe.prototype.storageMap = function() {
      return this._storageMap || (this._storageMap = this.scope__().root().declare(null, Rt("new WeakMap()")));
    };
    xe.prototype.isPlain = function() {
      return !this._decorators && (!this._value || this._value.isPrimitive());
    };
    xe.prototype.isMember = function() {
      return !this.option("static");
    };
    xe.prototype.isLazy = function() {
      return false;
    };
    xe.prototype.hasStaticInits = function() {
      return this.isStatic() || this._decorators;
    };
    xe.prototype.hasConstructorInits = function() {
      return !this.isStatic();
    };
    xe.prototype.isStatic = function() {
      return this.option("static");
    };
    xe.prototype.watchBody = function() {
      return this.option("watch");
    };
    xe.prototype.loc = function() {
      return [this._name._loc, this._name.region()[1]];
    };
    xe.prototype.c = function() {
      var t, e;
      if (this.option("struct"))
        return;
      let r = O.current(), i;
      if (r instanceof us) {
        let s = this.isStatic() ? "" + Tt("static", this.option("static")) + " " : "", n = this.name() instanceof Pe ? this.name().asObjectKey() : this.name().c({as: "field"});
        if (O.tsc()) {
          i = "" + s + Tt(n, this._name), this.value() && (i += " = " + this.value().c() + ";");
          let o = this.datatype();
          o && (i = "" + o.c() + " " + i);
        } else if (this instanceof Rn || this._decorators && this._decorators.length > 0 && false) {
          let o = "" + s + "set " + n + this.setter().c({keyword: ""}), a = "" + s + "get " + n + this.getter().c({keyword: ""});
          i = "" + o + `
` + a;
        }
        return i;
      }
      if (!O.tsc()) {
        if (this.isStatic() && r instanceof $1)
          this._vscope && (t = O.up(ie)) && this._vscope.mergeScopeInto(t._scope), i = J("=", J(".", kr, this.name()), this.value() || To).c() + `;
`;
        else {
          if (!this.isStatic() && r instanceof $1)
            return "";
          if (!this.isStatic() && r instanceof ka) {
            this._vscope && (e = O.up(ie)) && this._vscope.mergeScopeInto(e._scope);
            let s = this.name();
            this.name() instanceof At && (s = this.name().toStr());
            let n = r.option("ctor"), o = r.option("opts"), a = this.value() || To, l = this.option("paramIndex"), p = this.option("restIndex"), c;
            if (r instanceof $l) {
              let _ = n._params.at(p, true, "$$", Rt("{}"));
              c = J(".", _, this.name()), c.cache({reuse: true, name: "v"});
              let f = J("=", J(".", kr, this.name()), c);
              i = J("&&", J("!==", c, To), f);
            } else if (l != null) {
              let _ = this.option("paramName");
              c = n._params.at(l, true, _), this.value() ? a = pe.ternary(J("!==", c, To), c, a) : a = c;
            } else if (p != null) {
              let _ = n._params.at(p, true, "$$", Rt("null"));
              c = J(".", _, this.name()), this.value() ? (c.cache({reuse: true, name: "v"}), a = pe.ternary(J("&&", _, J("!==", c, To)), c, a)) : a = pe.ternary(_, c, To);
            }
            if (this instanceof Rn && !this.value())
              return;
            i || (i = J("=", J(".", kr, this.name()), a)), i = i.c() + `;
`, this.watchBody() && (this._descriptor || (this._descriptor = O.root().declare("" + this.oid() + "$Prop", this.util().watcher(this.storageSymbol(), this.watcherSymbol()), {type: "const", system: true})), i = "Object.defineProperty(this," + s.c() + "," + this._descriptor.c() + `);
` + i);
          }
        }
        return i;
      }
    };
    xe.prototype.getter = function() {
      return this._getter ? this._getter : this.parseTemplate("(){ return $get$; }");
    };
    xe.prototype.setterForValue = function(t) {
      return J("=", J(".", kr, this.storageKey()), t);
    };
    xe.prototype.parseTemplate = function(t) {
      var e = this;
      return t = t.replace(/\$(\w+)\$/g, function(r, i) {
        return i == "get" ? En(kr, e.storageSymbol()).c() : i == "set" ? J("=", En(kr, e.storageSymbol()), Rt("value")).c() : i == "watcher" ? En(kr, e.watcherSymbol()).c() : "";
      }), Rt(t);
    };
    xe.prototype.setter = function() {
      return this._setter || (this._setter = this.parseTemplate("(value){ $set$; }"));
    };
    xe.prototype.decorater = function() {
      return this._decorater || (this._decorater = this.util().decorate(new je(this._decorators), this.target(), this.name(), Rt("null")));
    };
    function l3() {
      return xe.apply(this, arguments);
    }
    A(l3, xe);
    E.ClassProperty = l3;
    function Rn() {
      return xe.apply(this, arguments);
    }
    A(Rn, xe);
    E.ClassAttribute = Rn;
    Rn.prototype.hasConstructorInits = function() {
      return !this.isStatic() && this.value();
    };
    Rn.prototype.getter = function() {
      var t;
      return this._getter || (this._getter = (t = He(En(kr, "getAttribute"), [this.name().toAttrString()]), js([], [t])));
    };
    Rn.prototype.setter = function() {
      var t;
      return this._setter || (this._setter = (t = He(En(kr, "setAttribute"), [this.name().toAttrString(), Rt("value")]), js([Rt("value")], [t]).set({noreturn: true})));
    };
    function us() {
      return Lt.apply(this, arguments);
    }
    A(us, Lt);
    E.ClassBody = us;
    us.prototype.setup = function() {
      return us.prototype.__super__.setup.apply(this, arguments), this._fields = [], this._staticFields = [];
    };
    us.prototype.visit = function(t) {
      this._scope && this._scope.visit(), t && t._tag && (this._tag = t._tag);
      for (let e = 0, r = It(this._nodes), i = r.length, s; e < i; e++) {
        if (s = r[e], s instanceof ne) {
          s.tagName() != "self" && (s._options.type || s).error("only <self> tag allowed here");
          let n = new Re([], [s], new At("render"), null, {});
          this._nodes[e] = s = n;
        }
        s && s.traverse();
      }
      return this;
    };
    function c3() {
      return Lt.apply(this, arguments);
    }
    A(c3, Lt);
    E.ExpressionList = c3;
    function wa() {
      return Lt.apply(this, arguments);
    }
    A(wa, Lt);
    E.VarDeclList = wa;
    wa.prototype.type = function() {
      return this.option("type") || "var";
    };
    wa.prototype.add = function(t) {
      this._nodes.length && this.push(Fe);
      let e = new Ke(t[0], t[1], this.type()).set({decl: this, datatype: t[0].option("datatype")});
      return this._firstDeclaration || (this._firstDeclaration = e, e.set({keyword: this.keyword()})), this.push(e), this;
    };
    wa.prototype.consume = function(t) {
      return this._nodes.length == 1 ? this._nodes[0].consume(t) : this;
    };
    function Ae(t, e, r) {
      this.setup(), this._open = e, this._close = r, this._value = this.load(t);
    }
    A(Ae, Ut);
    E.Parens = Ae;
    Ae.prototype.unwrappedNode = function() {
      return this._value.unwrappedNode();
    };
    Ae.prototype.loc = function() {
      try {
        let t = this._open.loc(), e = this._close.loc();
        return [t[0], e[1]];
      } catch (t) {
        return [0, 0];
      }
    };
    Ae.prototype.load = function(t) {
      return this._noparen = false, t instanceof Lt && t.count() == 1 ? t.first() : t;
    };
    Ae.prototype.isString = function() {
      return this._open && String(this._open) == '("' || this.value().isString();
    };
    Ae.prototype.js = function(t) {
      var e = this.up(), r = this._value, i = null;
      return r instanceof ie && (this._noparen = true), e instanceof Lt ? (t.isExpression() || (this._noparen = true), i = r instanceof Array ? Pt.cary(r) : r.c({expression: t.isExpression()})) : i = r instanceof Array ? Pt.cary(r) : r.c({expression: true}), this.datatype() && O.tsc() && (i = this.datatype().c() + "(" + i + ")"), i;
    };
    Ae.prototype.set = function(t) {
      return Ae.prototype.__super__.set.call(this, t);
    };
    Ae.prototype.shouldParenthesize = function() {
      return !this._noparen;
    };
    Ae.prototype.prebreak = function(t) {
      return Ae.prototype.__super__.prebreak.call(this, t), console.log("PREBREAK"), this._value && this._value.prebreak(t), this;
    };
    Ae.prototype.isExpressable = function() {
      return this._value.isExpressable();
    };
    Ae.prototype.consume = function(t) {
      return this._value.consume(t);
    };
    function u3() {
      return Ae.apply(this, arguments);
    }
    A(u3, Ae);
    E.PureExpression = u3;
    function Sa() {
      return jt.apply(this, arguments);
    }
    A(Sa, jt);
    E.ExpressionBlock = Sa;
    Sa.prototype.c = function(t) {
      return this.map(function(e) {
        return e.c(t);
      }).join(",");
    };
    Sa.prototype.consume = function(t) {
      return this.value().consume(t);
    };
    function Qe(t) {
      return this._traversed = false, this._value = t instanceof ar && t.count() == 1 ? t.last() : t, this;
    }
    A(Qe, Pi);
    E.Return = Qe;
    Qe.prototype.value = function(t) {
      return this._value;
    };
    Qe.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    Qe.prototype.visit = function() {
      if (this._value instanceof Oe && this._value.option("virtualize", true), this._value && this._value.traverse)
        return this._value.traverse();
    };
    Qe.prototype.startLoc = function() {
      let t = this.keyword() || this._value;
      return t ? t.startLoc() : null;
    };
    Qe.prototype.js = function(t) {
      var e = this._value;
      let r = Tt("return", this.keyword());
      return e instanceof ar ? "" + r + " [" + e.c({expression: true}) + "]" : e ? "" + r + " " + e.c({expression: true}) : r;
    };
    Qe.prototype.c = function() {
      return !this.value() || this.value().isExpressable() ? Qe.prototype.__super__.c.apply(this, arguments) : this.value().consume(this).c();
    };
    Qe.prototype.consume = function(t) {
      return this;
    };
    function Nn() {
      return Qe.apply(this, arguments);
    }
    A(Nn, Qe);
    E.ImplicitReturn = Nn;
    function tc() {
      return Nn.apply(this, arguments);
    }
    A(tc, Nn);
    E.GreedyReturn = tc;
    function t2() {
      return Pi.apply(this, arguments);
    }
    A(t2, Pi);
    E.Throw = t2;
    t2.prototype.js = function(t) {
      return "throw " + this.value().c();
    };
    t2.prototype.consume = function(t) {
      return this;
    };
    function Rr(t, e) {
      this.setLiteral(t), this.setExpression(e);
    }
    A(Rr, Pi);
    E.LoopFlowStatement = Rr;
    Rr.prototype.literal = function(t) {
      return this._literal;
    };
    Rr.prototype.setLiteral = function(t) {
      return this._literal = t, this;
    };
    Rr.prototype.expression = function(t) {
      return this._expression;
    };
    Rr.prototype.setExpression = function(t) {
      return this._expression = t, this;
    };
    Rr.prototype.visit = function() {
      if (this.expression())
        return this.expression().traverse();
    };
    Rr.prototype.consume = function(t) {
      return this;
    };
    Rr.prototype.c = function() {
      if (!this.expression())
        return Rr.prototype.__super__.c.apply(this, arguments);
      var t = O.up(De), e = this.expression();
      if (t.catcher()) {
        e = e.consume(t.catcher());
        var r = new this.constructor(this.literal());
        return new Lt([e, r]).c();
      } else
        return e ? (r = new this.constructor(this.literal()), new Lt([e, r]).c()) : Rr.prototype.__super__.c.apply(this, arguments);
    };
    function Ta() {
      return Rr.apply(this, arguments);
    }
    A(Ta, Rr);
    E.BreakStatement = Ta;
    Ta.prototype.js = function(t) {
      return "break";
    };
    function e2() {
      return Rr.apply(this, arguments);
    }
    A(e2, Rr);
    E.ContinueStatement = e2;
    e2.prototype.js = function(t) {
      return "continue";
    };
    function ec() {
      return Pi.apply(this, arguments);
    }
    A(ec, Pi);
    E.DebuggerStatement = ec;
    ec.prototype.consume = function(t) {
      return this;
    };
    function fe(t, e, r) {
      typeof t == "string" && (t = new At(t)), this._traversed = false, this._name = t, this._value = t, this._defaults = e, this._typ = r, this._variable = null;
    }
    A(fe, Z);
    E.Param = fe;
    fe.prototype.name = function(t) {
      return this._name;
    };
    fe.prototype.setName = function(t) {
      return this._name = t, this;
    };
    fe.prototype.index = function(t) {
      return this._index;
    };
    fe.prototype.setIndex = function(t) {
      return this._index = t, this;
    };
    fe.prototype.defaults = function(t) {
      return this._defaults;
    };
    fe.prototype.setDefaults = function(t) {
      return this._defaults = t, this;
    };
    fe.prototype.splat = function(t) {
      return this._splat;
    };
    fe.prototype.setSplat = function(t) {
      return this._splat = t, this;
    };
    fe.prototype.variable = function(t) {
      return this._variable;
    };
    fe.prototype.setVariable = function(t) {
      return this._variable = t, this;
    };
    fe.prototype.value = function(t) {
      return this._value;
    };
    fe.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    fe.prototype.varname = function() {
      return this._variable ? this._variable.c() : this.name();
    };
    fe.prototype.datatype = function() {
      return fe.prototype.__super__.datatype.apply(this, arguments) || this._value.datatype();
    };
    fe.prototype.type = function() {
      return "param";
    };
    fe.prototype.jsdoc = function() {
      let t = this.datatype();
      return t && this.name() ? t.asParam(this.name()) : "";
    };
    fe.prototype.js = function(t, e) {
      return !e || e.as != "declaration" ? "" + this._value.c() : this._defaults ? "" + this._value.c() + " = " + this._defaults.c() : this.option("splat") ? "..." + this._value.c() : this._value.c();
    };
    fe.prototype.visit = function(t) {
      return this._defaults && this._defaults.traverse(), this._value && this._value.traverse({declaring: "param"}), this._value instanceof At && (this._value._variable || (this._value._variable = this.scope__().register(this._value.symbol(), this._value, {type: this.type()})), t.registerSemanticToken(this._value)), this;
    };
    fe.prototype.assignment = function() {
      return J("=", this.variable().accessor(), this.defaults());
    };
    fe.prototype.isExpressable = function() {
      return !this.defaults() || this.defaults().isExpressable();
    };
    fe.prototype.dump = function() {
      return {loc: this.loc()};
    };
    fe.prototype.loc = function() {
      return this._name && this._name.region();
    };
    fe.prototype.toJSON = function() {
      return {type: this.typeName(), name: this.name(), defaults: this.defaults()};
    };
    function rc() {
      return fe.apply(this, arguments);
    }
    A(rc, fe);
    E.RestParam = rc;
    function Eo() {
      return fe.apply(this, arguments);
    }
    A(Eo, fe);
    E.BlockParam = Eo;
    Eo.prototype.c = function() {
      return "blockparam";
    };
    Eo.prototype.loc = function() {
      var t = this.name().region();
      return [t[0] - 1, t[1]];
    };
    function ic() {
      return fe.apply(this, arguments);
    }
    A(ic, fe);
    E.OptionalParam = ic;
    function h3() {
      return fe.apply(this, arguments);
    }
    A(h3, fe);
    E.NamedParam = h3;
    function p3() {
      return fe.apply(this, arguments);
    }
    A(p3, fe);
    E.RequiredParam = p3;
    function Vr() {
      return jt.apply(this, arguments);
    }
    A(Vr, jt);
    E.ParamList = Vr;
    Vr.prototype.splat = function(t) {
      return this._splat;
    };
    Vr.prototype.setSplat = function(t) {
      return this._splat = t, this;
    };
    Vr.prototype.block = function(t) {
      return this._block;
    };
    Vr.prototype.setBlock = function(t) {
      return this._block = t, this;
    };
    Vr.prototype.at = function(t, e, r, i) {
      if (e === void 0 && (e = false), r === void 0 && (r = null), i === void 0 && (i = null), e)
        for (; t >= this.count(); ) {
          let s = this.count() == t, n = s ? i : null;
          this.add(new fe(s && r || "_" + this.count(), n));
        }
      return this.list()[t];
    };
    Vr.prototype.metadata = function() {
      return this.filter(function(t) {
        return !(t instanceof Mr);
      });
    };
    Vr.prototype.toJSON = function() {
      return this.metadata();
    };
    Vr.prototype.jsdoc = function() {
      let t = [];
      for (let r = 0, i = It(this.nodes()), s = i.length, n; r < s; r++)
        n = i[r], n instanceof fe && n.datatype() && t.push(n.jsdoc());
      let e = t.join(`
`);
      return e ? `/**
` + e + `
*/
` : "";
    };
    Vr.prototype.visit = function() {
      var t = this.filter(function(e) {
        return e instanceof Eo;
      });
      return t.length > 1 ? t[1].warn("a method can only have one &block parameter") : t[0] && t[0] != this.last() && t[0].warn("&block must be the last parameter of a method"), Vr.prototype.__super__.visit.apply(this, arguments);
    };
    Vr.prototype.js = function(t) {
      if (this.count() == 0)
        return sc;
      if (t.parent() instanceof Lt)
        return this.head(t);
      if (t.parent() instanceof fr) {
        let i = !(t.parent() instanceof Re);
        var e = this.nodes(), r = {as: "declaration", typed: i};
        return Pt.compact(this.nodes().map(function(s) {
          let n = s.c(r), o = i && s.datatype();
          return o && (n = o.c() + n), n;
        })).join(",");
      } else
        throw "not implemented paramlist js";
    };
    Vr.prototype.head = function(t) {
      var e = [], r = [], i = null, s = null, n = null, o = [], a = [], l = 0;
      if (this.nodes().forEach(function(S, C) {
        if (!(S instanceof ba))
          return S.setIndex(l), S instanceof ic ? (a.push("opt"), r.push(S)) : S instanceof Eo ? (a.push("blk"), i = S) : (a.push("reg"), e.push(S)), l++;
      }), n)
        var p = n.variable();
      var c = [], _ = function(S) {
        return "typeof " + S + " == 'function'";
      }, f = function(S) {
        return "" + S + ".constructor === Object";
      }, m = function(S) {
        return "" + S + ".constructor !== Object";
      };
      if (!n && !s && !i && r.length > 0 && a.join(" ").match(/opt$/))
        for (let S = 0, C = r.length, L; S < C; S++)
          L = r[S], c.push("if(" + L.name().c() + " === undefined) " + L.name().c() + " = " + L.defaults().c());
      else if (n && !s && !i && r.length == 0)
        c.push("if(!" + p.c() + "||" + m(p.c()) + ") " + p.c() + " = {}");
      else if (i && r.length == 1 && !s && !n) {
        var g = r[0], b = g.name().c(), N = i.name().c();
        c.push("if(" + N + "==undefined && " + _(b) + ") " + N + " = " + b + "," + b + " = " + g.defaults().c()), c.push("if(" + b + "==undefined) " + b + " = " + g.defaults().c());
      } else if (i && n && r.length == 0 && !s)
        N = i.name().c(), c.push("if(" + N + "==undefined && " + _(p.c()) + ") " + N + " = " + p.c() + "," + p.c() + " = {}"), c.push("else if(!" + p.c() + "||" + m(p.c()) + ") " + p.c() + " = {}");
      else if (r.length > 0 || s) {
        var y = this.scope__().temporary(this, {pool: "arguments"}).predeclared().c(), v = this.scope__().temporary(this, {pool: "counter"}).predeclared().c(), d = "" + y + "[" + v + "-1]", w = "" + y + "[--" + v + "]";
        c.push("var " + y + " = arguments, " + v + " = " + y + ".length"), i && (N = i.name().c(), s ? c.push("var " + N + " = " + _(d) + " ? " + w + " : null") : e.length > 0 ? c.push("var " + N + " = " + v + " > " + e.length + " && " + _(d) + " ? " + w + " : null") : c.push("var " + N + " = " + _(d) + " ? " + w + " : null")), n && c.push("var " + p.c() + " = " + d + "&&" + f(d) + " ? " + w + " : {}");
        for (let S = 0, C = r.length, L; S < C; S++)
          L = r[S], c.push("if(" + v + " < " + (L.index() + 1) + ") " + L.name().c() + " = " + L.defaults().c());
        if (s) {
          var k = s.name().c(), T = s.index();
          T == 0 ? (c.push("var " + k + " = new Array(" + v + ">" + T + " ? " + v + " : 0)"), c.push("while(" + v + ">" + T + ") " + k + "[" + v + "-1] = " + w)) : (c.push("var " + k + " = new Array(" + v + ">" + T + " ? " + v + "-" + T + " : 0)"), c.push("while(" + v + ">" + T + ") " + k + "[--" + v + " - " + T + "] = " + y + "[" + v + "]"));
        }
      } else if (r.length > 0)
        for (let S = 0, C = r.length, L; S < C; S++)
          L = r[S], c.push("if(" + L.name().c() + " === undefined) " + L.name().c() + " = " + L.defaults().c());
      if (n)
        for (let S = 0, C = It(n.nodes()), L = C.length, D; S < L; S++)
          D = C[S], g = J(".", p, D.c()).c(), c.push("var " + D.c() + " = " + g + " !== undefined ? " + g + " : " + D.defaults().c());
      if (o.length)
        for (let S = 0, C = o.length; S < C; S++)
          o[S].head(t, c, this);
      return c.length > 0 ? c.join(`;
`) + ";" : sc;
    };
    function Mi() {
      return jt.apply(this, arguments);
    }
    A(Mi, jt);
    E.ScopeVariables = Mi;
    Mi.prototype.kind = function(t) {
      return this._kind;
    };
    Mi.prototype.setKind = function(t) {
      return this._kind = t, this;
    };
    Mi.prototype.split = function(t) {
      return this._split;
    };
    Mi.prototype.setSplit = function(t) {
      return this._split = t, this;
    };
    Mi.prototype.add = function(t, e, r) {
      r === void 0 && (r = -1);
      var i = new hs(t, e);
      return t instanceof Ft && i.setVariable(t), r == 0 ? this.unshift(i) : this.push(i), i;
    };
    Mi.prototype.load = function(t) {
      return t.map(function(e) {
        return new hs(e.name(), e.defaults(), e.splat());
      });
    };
    Mi.prototype.isExpressable = function() {
      return this.nodes().every(function(t) {
        return t.isExpressable();
      });
    };
    Mi.prototype.js = function(t) {
      if (this.count() == 0)
        return sc;
      if (this.count() == 1 && !this.isExpressable())
        return this.first().variable().autodeclare(), this.first().assignment().c();
      var e = "var", r = {};
      if (this.nodes().forEach(function(s) {
        let n = s._variable || s, o = n instanceof Ft && n.type();
        if (o)
          return r[o] || (r[o] = []), r[o].push(s);
      }), r.let && (r.var || r.const) ? r.let.forEach(function(s) {
        return (s._variable || s)._virtual = true;
      }) : r.let && (e = "let"), this.split()) {
        let s = [];
        for (let n, o = 0, a = Object.keys(r), l = a.length, p; o < l; o++)
          p = a[o], n = r[p], s.push("" + p + " " + Pt.cary(n, {as: "declaration"}).join(", ") + ";");
        return s.join(`
`);
      }
      var i = Pt.compact(Pt.cary(this.nodes(), {as: "declaration"})).join(", ");
      return i ? "" + e + " " + i : "";
    };
    function hs() {
      return fe.apply(this, arguments);
    }
    A(hs, fe);
    E.VariableDeclarator = hs;
    hs.prototype.type = function(t) {
      return this._type;
    };
    hs.prototype.setType = function(t) {
      return this._type = t, this;
    };
    hs.prototype.visit = function() {
      var t, e;
      return (t = this.variable()) || this.setVariable(e = this.scope__().register(this.name(), null, {type: this._type || "var"})), this.defaults() && this.defaults().traverse(), this.variable().setDeclarator(this), this.variable().addReference(this.name()), this;
    };
    hs.prototype.js = function(t) {
      if (this.variable()._proxy)
        return null;
      var e = this.defaults();
      let r = this.variable().datatype();
      return e != null && e != null ? (e instanceof Z && (e = e.c({expression: true})), r && (e = "" + r.c() + "(" + e + ")"), "" + this.variable().c() + " = " + e) : r ? "" + this.variable().c() + " = " + r.c() + "(undefined)" : "" + this.variable().c();
    };
    hs.prototype.accessor = function() {
      return this;
    };
    function Ke(t, e, r, i) {
      i === void 0 && (i = "="), this._op = i, this._left = t, this._right = e, this._kind = r;
    }
    A(Ke, Z);
    E.VarDeclaration = Ke;
    Ke.prototype.kind = function(t) {
      return this._kind;
    };
    Ke.prototype.setKind = function(t) {
      return this._kind = t, this;
    };
    Ke.prototype.left = function(t) {
      return this._left;
    };
    Ke.prototype.setLeft = function(t) {
      return this._left = t, this;
    };
    Ke.prototype.right = function(t) {
      return this._right;
    };
    Ke.prototype.setRight = function(t) {
      return this._right = t, this;
    };
    Ke.prototype.op = function() {
      return this._op;
    };
    Ke.prototype.type = function() {
      return this._kind;
    };
    Ke.prototype.visit = function(t) {
      var e = this;
      return e._left instanceof At && e._right instanceof ie || e._right && e._right.traverse(), e._variables = e.scope__().captureVariableDeclarations(function() {
        if (e._left && e._left.traverse({declaring: e.type()}), e._left instanceof At)
          return e._left._variable || (e._left._variable = e.scope__().register(e._left.symbol(), e._left, {type: e.type()})), t.registerSemanticToken(e._left);
      }), e._right && e._right.traverse(), e;
    };
    Ke.prototype.isExpressable = function() {
      return false;
    };
    Ke.prototype.consume = function(t) {
      if (t instanceof Et)
        return this;
      if (t instanceof ii || t instanceof Qe) {
        let e = this;
        if (this.right() && !this.right().isExpressable()) {
          let r = this.scope__().temporary(this), i = this.right().consume(J("=", r, Gs));
          return this.setRight(r), new Lt([i, Fe, this.consume(t)]);
        }
        return new Lt([e, Fe, this._left.consume(t)]);
      }
      return t instanceof Qe ? new Lt([this, Fe, this._left.consume(t)]) : Ke.prototype.__super__.consume.call(this, t);
    };
    Ke.prototype.c = function(t) {
      if (this.right() && !this.right().isExpressable()) {
        let e = this.scope__().temporary(this), r = this.right().consume(J("=", e, Gs));
        return this.setRight(e), new Lt([r, Fe, this]).c(t);
      }
      return Ke.prototype.__super__.c.call(this, t);
    };
    Ke.prototype.js = function() {
      let t = "", e = this.kind(), r = this.datatype() || this._left && this._left.datatype();
      if (O.tsc() && this._variables.length > 1 && this._variables.some(function(i) {
        return i.vartype();
      })) {
        e = "let";
        for (let i = 0, s = It(this._variables), n = s.length, o; i < n; i++)
          o = s[i], o.vartype() && (t += o.vartype().c() + " "), t += "" + Tt(e, this.keyword()) + " " + o.c() + `;
`;
        t += "(" + this.left().c(), this.right() && (t += " = " + this.right().c({expression: true})), t += ")";
      } else
        t += "" + Tt(e, this.keyword()) + " " + this.left().c(), this.right() && (t += " = " + this.right().c({expression: true}));
      return this.option("export") && (O.cjs() ? t = "" + t + `;
exports.` + this.left().c() + " = " + this.left().c() : t = Tt("export", this.option("export")) + (" " + t)), r && (t = r.c() + `
` + t), t;
    };
    function Ki(t, e) {
      Ki.prototype.__super__.constructor.apply(this, arguments), this._splat = e;
    }
    A(Ki, Ut);
    E.VarName = Ki;
    Ki.prototype.variable = function(t) {
      return this._variable;
    };
    Ki.prototype.setVariable = function(t) {
      return this._variable = t, this;
    };
    Ki.prototype.splat = function(t) {
      return this._splat;
    };
    Ki.prototype.setSplat = function(t) {
      return this._splat = t, this;
    };
    Ki.prototype.visit = function() {
      var t, e;
      return (t = this.variable()) || this.setVariable(e = this.scope__().register(this.value().c(), null)), this.variable().setDeclarator(this), this.variable().addReference(this.value()), this;
    };
    Ki.prototype.js = function(t) {
      return this.variable().c();
    };
    Ki.prototype.c = function() {
      return this.variable().c();
    };
    function fr() {
      return Z.apply(this, arguments);
    }
    A(fr, Z);
    E.Code = fr;
    fr.prototype.head = function(t) {
      return this._head;
    };
    fr.prototype.setHead = function(t) {
      return this._head = t, this;
    };
    fr.prototype.body = function(t) {
      return this._body;
    };
    fr.prototype.setBody = function(t) {
      return this._body = t, this;
    };
    fr.prototype.scope = function(t) {
      return this._scope;
    };
    fr.prototype.setScope = function(t) {
      return this._scope = t, this;
    };
    fr.prototype.params = function(t) {
      return this._params;
    };
    fr.prototype.setParams = function(t) {
      return this._params = t, this;
    };
    fr.prototype.isStatementLike = function() {
      return true;
    };
    fr.prototype.scopetype = function() {
      return Nt;
    };
    fr.prototype.visit = function() {
      return this._scope && this._scope.visit(), this;
    };
    function cs(t, e) {
      this._traversed = false, this._body = Pt.blk(t), this._scope = new le(this, null), this._options = {};
    }
    A(cs, fr);
    E.Root = cs;
    cs.prototype.loc = function() {
      return this._body.loc();
    };
    cs.prototype.visit = function() {
      W1 = O.ROOT = this._scope;
      try {
        if (this.scope().visit(), this.body().traverse(), this.body().first() instanceof ri)
          return this.body().first()._first = true;
      } catch (t) {
        let e = u_.wrap(t);
        throw e._sourcePath = ls.sourcePath, e._loc = O.currentRegion(), e;
      }
    };
    cs.prototype.compile = function(t, e) {
      if (e === void 0 && (e = {}), O.reset(), this._scope.setOptions(ls = O._options = this._options = t || {}), O.setRoot(this._scope), this._scope._imba.configure(t), this.traverse(), O.setRoot(this._scope), t.bundle)
        if (t.cwd && O.isNode()) {
          let n = Y1.resolve(t.cwd, t.sourcePath), o = Y1.relative(t.cwd, n).split(Y1.sep).join("/"), a = this._scope.importProxy("path").proxy();
          this._scope.lookup("__filename").c = function() {
            return Rt("" + a.resolve + "(" + Ze(o).c() + ")").c();
          }, this._scope.lookup("__dirname").c = function() {
            return Rt("" + a.dirname + "(" + a.resolve + "(" + Ze(o).c() + "))").c();
          };
        } else
          this._scope.lookup("__filename")._c = Ze(t.sourcePath).c(), this._scope.lookup("__dirname")._c = Ze(Y1.dirname(t.sourcePath)).c();
      t.onTraversed instanceof Function && t.onTraversed(this, O);
      let r = O.css(), i = r.toString();
      r.transitions && this.runtime().transitions, i && (!t.styles || t.styles == "inline") && this.runtime().styles;
      var s = this.c(t);
      if (O.tsc() && (s = `export {};String();
` + s + `
`), e.rawResult = {js: s, css: i}, e.js = s, e.css = i || "", e.sourceId = this.sourceId(), e.assets = this.scope().assets(), e.dependencies = Object.keys(this.scope()._dependencies), e.universal = O.meta().universal !== false, e.imports = Qp.extractDependencies(e.js), t.resolve && (e.js = Qp.resolveDependencies(t.sourcePath, e.js, t.resolve)), !O.tsc() && e.css && (!t.styles || t.styles == "inline")) {
        let n = "`\n" + e.css + "\n`";
        e.js = "" + e.js + `
` + this.runtime().styles + ".register('" + e.sourceId + "'," + n + ");", t.debug && (e.js += `
/*
` + e.css + `
*/
`);
      }
      if (t.sourcemap || O.tsc()) {
        let n = new h_(e, t).generate();
        e.sourcemap = n.result(), t.sourcemap == "inline" && (e.js += n.inlined());
      }
      return t.raw || (e.css && (e.css = ma.strip(e.css)), e.js = ma.strip(e.js), O.tsc() && (e.js = e.js.replace(/\*\/\s[\r\n]+(\t*)\/\*\*/gm, function(n) {
        return n.replace(/[^\n\t]/g, " ");
      }))), e;
    };
    cs.prototype.js = function(t) {
      var e = this.scope().c(), r = [];
      return e = e.replace(/^[ \t]*\/\/(\!.+)$/mg, function(i, s) {
        return s = s.replace(/\bimba\b/g, "node"), r.push("#" + s + `
`), "";
      }), e = r.join("") + e, e;
    };
    cs.prototype.analyze = function(t) {
      return t === void 0 && (t = {}), O.setLoglevel(t.loglevel || 0), O._analyzing = true, W1 = O.ROOT = this._scope, ls = O._options = {platform: t.platform, loglevel: t.loglevel || 0, analysis: {entities: t.entities || false, scopes: t.scopes == null ? t.scopes = true : t.scopes}}, this.traverse(), O._analyzing = false, this.scope().dump();
    };
    cs.prototype.inspect = function() {
      return true;
    };
    function _e(t, e, r) {
      this._traversed = false, t instanceof he && (t = t._value), this._name = t, this._superclass = e, this._scope = this.isTag() ? new r2(this) : new Ii(this), this._body = Pt.blk(r) || new us([]), this._entities = {};
    }
    A(_e, fr);
    E.ClassDeclaration = _e;
    _e.prototype.name = function(t) {
      return this._name;
    };
    _e.prototype.setName = function(t) {
      return this._name = t, this;
    };
    _e.prototype.superclass = function(t) {
      return this._superclass;
    };
    _e.prototype.setSuperclass = function(t) {
      return this._superclass = t, this;
    };
    _e.prototype.initor = function(t) {
      return this._initor;
    };
    _e.prototype.setInitor = function(t) {
      return this._initor = t, this;
    };
    _e.prototype.consume = function(t) {
      return t instanceof Qe ? (this.option("return", t), this) : _e.prototype.__super__.consume.apply(this, arguments);
    };
    _e.prototype.namepath = function() {
      return this._namepath || (this._namepath = "" + (this.name() ? this.name().c() : "--"));
    };
    _e.prototype.metadata = function() {
      var t;
      return {type: "class", namepath: this.namepath(), inherits: (t = this.superclass()) && t.namepath && t.namepath(), path: this.name() && this.name().c().toString(), desc: this._desc, loc: this.loc(), symbols: this._scope.entities()};
    };
    _e.prototype.loc = function() {
      var t;
      return (t = this.option("keyword")) ? [t._loc, this.body().loc()[1]] : _e.prototype.__super__.loc.apply(this, arguments);
    };
    _e.prototype.startLoc = function() {
      return this._startLoc == null ? this._startLoc = y_(this.option("export"), this.option("keyword")) : this._startLoc;
    };
    _e.prototype.endLoc = function() {
      return this._endLoc == null ? this._endLoc = g_(this.body()) : this._endLoc;
    };
    _e.prototype.toJSON = function() {
      return this.metadata();
    };
    _e.prototype.isStruct = function() {
      return this.keyword() && String(this.keyword()) == "struct";
    };
    _e.prototype.isExtension = function() {
      return this.option("extension");
    };
    _e.prototype.isTag = function() {
      return false;
    };
    _e.prototype.staticInit = function() {
      return this._staticInit || (this._staticInit = this.addMethod(this.initKey(), [], "this").set({static: true}));
    };
    _e.prototype.initKey = function() {
      return this._initKey || (this._initKey = O.tsc() ? O.root().symbolRef("#__init__") : new ei("#__init__"));
    };
    _e.prototype.patchKey = function() {
      return this._patchKey || (this._patchKey = O.tsc() ? O.root().symbolRef("#__patch__") : new ei("#__patch__"));
    };
    _e.prototype.initPath = function() {
      return this._initPath || (this._initPath = J(".", Rt("super"), this.initKey()));
    };
    _e.prototype.virtualSuper = function() {
      return this._virtualSuper || (this._virtualSuper = this._scope.parent().declare("tmp", null, {system: true, type: "let"}));
    };
    _e.prototype.instanceInit = function() {
      if (this._instanceInit)
        return this._instanceInit;
      let t = Xe.callOp(this.initKey());
      this._superclass && (t = J("&&", Rt("deep"), J("&&", J(".", Rt("super"), this.initKey()), t)));
      let e = this.addMethod(this.initKey(), [], this.isTag() || this._superclass ? [t, Fe] : "", {}, function(r) {
        return true;
      });
      return e.set({noreturn: true}), e.params().at(0, true, "$$", Rt("null")), e.params().at(1, true, "deep", Rt("true")), this._instanceInit = e;
    };
    _e.prototype.instancePatch = function() {
      if (this._instancePatch)
        return this._instancePatch;
      let t = [], e = this.addMethod(this.patchKey(), [], t, {}, function(i) {
        return true;
      }), r = e._params.at(0, true, "$$", Rt("{}"));
      if (this._superclass) {
        let i = Xe.callOp(this.patchKey(), [r]);
        i = J("&&", J(".", Rt("super"), this.patchKey()), i), e.inject(i);
      }
      return e.set({noreturn: true}), this._instancePatch = e;
    };
    _e.prototype.isInitingFields = function() {
      return this._inits || this._supernode && this._supernode.isInitingFields && this._supernode.isInitingFields();
    };
    _e.prototype.visit = function() {
      this._body._delimiter = "";
      let t = O.up(Lt);
      this._decorators = t && t.collectDecorators(), O.pop(this);
      let e = this._superclass;
      if (e && (e.traverse(), e instanceof he)) {
        if (e._variable) {
          let N = e._variable.value();
          N instanceof _e && (this._supernode = N);
        } else if (e.symbol() == "Object")
          if (!O.tsc())
            e = this._superclass = null;
          else {
            this._autosuper = true;
            try {
              e._identifier._symbol = "\u03A4Object";
            } catch (N) {
            }
          }
      }
      this.isExtension() && this._name ? (this._name.traverse(), this._name instanceof At && this._name.resolveVariable(), this.isTag() ? this._className = Rt(this._name.toClassName()) : (this._className = this._name, this._name = this.scope__().register("\u03A9" + this._name.value() + "\u03A9" + this.oid(), null), O.tsc() && this.option("export", true))) : this._name instanceof At ? (!this.isTag() || this._name.isCapitalized()) && (this._name.registerVariable("const"), this._name._variable.setValue(this)) : this._name && !(this._name instanceof se) ? this._name.traverse({declaring: this}) : this._name && this._name.traverse(), O.push(this), W1.entities().add(this.namepath(), this), this.scope().visit(), this.set({iife: O.up() instanceof Ea});
      var r = true, i = [], s = [], n = [], o = {}, a = void 0, l = {};
      for (let N = 0, y = It(this.body()), v = y.length, d; N < v; N++) {
        if (d = y[N], d instanceof xe && !d.isStatic()) {
          let w = String(d.name());
          o[w] = d, r && d.set({restIndex: 0});
        }
        if (d instanceof Re) {
          let w = d.rawName();
          d.isMember() && (l[w] = d);
        }
      }
      if (this.option("params")) {
        let N = [];
        for (let y = 0, v = It(this.option("params")), d = v.length, w; y < d; y++) {
          if (w = v[y], w instanceof rc) {
            a = y;
            continue;
          }
          let k = String(w.name()), T = o[k], S = w.option("datatype");
          T ? (S && !T.datatype() && T.set({datatype: S}), w.defaults() && !T.value() && T.set({value: w.defaults()})) : (T = i[k] = new xe(w.name()).set({datatype: S, value: w.defaults()}), N.push(T), n.push(w)), T && T.set({paramIndex: y, paramName: k});
        }
        for (let y = 0, v = It(N.reverse()), d = v.length; y < d; y++)
          this.body().unshift(v[y]);
      }
      this.body().traverse();
      var p = this.body().option("ctor");
      let c = O.tsc();
      var _ = new ka(), f = new $1(), m = new $l();
      p = this.body().option("ctor");
      let g = this.body().filter(function(N) {
        return N instanceof xe;
      }), b = [];
      for (let N = 0, y = It(g), v = y.length, d; N < v; N++)
        d = y[N], d.watchBody() && this.addMethod(d.watcherSymbol(), [], [d.watchBody()], {}, function(w) {
          return d._watchMethod = w, d._watchParam = w.params().at(0, true, "e");
        }), d.hasStaticInits() && !d.option("declareOnly") && f.add(d), d.hasConstructorInits() && (this.isExtension() ? d.value() && d._name.warn("field with value not supported in class extension") : d.option("declareOnly") || (_.add(d), m.add(d))), !d.isStatic() && a != null && d.set({restIndex: a});
      if (!c && this._decorators) {
        let N = this.util().decorate(new je(this._decorators), kr);
        f.add([N, Fe]), b.push(this._decorators);
      }
      for (let N = 0, y = It(this.body()), v = y.length, d; N < v; N++)
        if (d = y[N], d._decorators) {
          let w = d.option("static") ? kr : w_, k = Rt("null"), T = this.util().decorate(new je(d._decorators), w, d.name(), k);
          b.push(d._decorators), f.add([T, Fe]);
        }
      if (!_.isEmpty() && !c && (this._inits = _, this.instanceInit(), _.set({ctor: this.instanceInit()}), this.instanceInit().inject(_), !this.isTag()))
        if (this._superclass) {
          if (!this._supernode || !this._supernode.isInitingFields()) {
            let N = J("||", this.initPath(), He(J(".", kr, this.initKey()), []));
            if (!p)
              p = this.addMethod("constructor", [], [new Xe(), Fe, N], {});
            else {
              let y = p.option("injectInitAfter");
              p.inject(N, y ? {after: y} : 0);
            }
          }
        } else {
          let N = J(".", kr, this.initKey());
          if (p) {
            let y = p.option("supr");
            y ? y.real.set({target: N, args: []}) : p.body().add([He(N, []), Fe], 0);
          } else {
            p = this.addMethod("constructor", [], [], {});
            let y = p.params().at(0, true, "$$", Rt("null")), v = He(N, [y]);
            c || p.body().add([v, Fe], 0);
          }
        }
      if (!m.isEmpty() && !c && (this.instancePatch(), m.set({ctor: this.instancePatch()}), this.instancePatch().inject(m)), c && p && this._autosuper && p.body().add([Rt("super()"), Fe], 0), !f.isEmpty() && !c && this.staticInit().inject(f, 0), !O.tsc()) {
        let N = !!l["#__inited__"], y = b.length > 0;
        if (y) {
          O.use("hooks");
          let v = O.symbolFor("#__hooks__");
          this.staticInit().inject(Rt("this.prototype[" + v + "] = " + this.runtime().hooks), 0);
        }
        if (!this.isTag() && !p && (N || y)) {
          let v = e ? [new Xe(), Fe] : [Fe];
          p = this.addMethod("constructor", [], v, {});
        }
        if (p && !this.isTag() && !O.isStdLib()) {
          let v = O.symbolFor("#__initor__"), d = O.symbolFor("#__inited__"), w = O.symbolFor("#__hooks__"), k = Rt("this[" + w + "]&&this[" + w + "].inited(this)");
          if (e) {
            let T = O.getSymbol();
            this.staticInit().inject(Rt("this.prototype[" + v + "] = " + T), 0), N ? p.inject(Rt("if(this[" + v + "]===" + T + ") (" + k + ",this[" + d + "]());")) : p.inject(Rt("this[" + v + "]===" + T + " && (" + k + ",this[" + d + "] && this[" + d + "]())"));
          } else
            N ? p.inject(Rt("if(!this[" + v + "]) (" + k + ",this[" + d + "]());")) : y && p.inject(Rt("!this[" + v + "] && this[" + w + "].inited(this);"));
        }
      }
      return this;
    };
    _e.prototype.addMethod = function(t, e, r, i, s) {
      (typeof r == "string" || r instanceof String) && (r = [Rt(r)]), (typeof t == "string" || t instanceof String) && (t = new At(t));
      let n = new Re(e, r || [], t, null, i || {});
      return this.body().unshift(n, true), s instanceof Function && s(n), n.traverse(), n;
    };
    _e.prototype.js = function(t) {
      this.scope().virtualize(), this.scope().context().setValue(this.name()), this.scope().context().setReference(this.name());
      var e = O.up(), t = this._options || {}, r = this.name() instanceof se ? this.name().right() : this.name(), i = null, s = this.superclass();
      typeof r != "string" && r && (r = r.c({mark: true})), this._cname = r;
      var n = Rt(r), o = null;
      let a = this.body().c(), l = Tt("class", this.keyword());
      if (this.name())
        l += " " + Tt(r, this.name());
      else if (e instanceof Oe)
        try {
          l += " " + e._value._symbol;
        } catch (c) {
        }
      s && (o = Tt(s), l += " extends " + o), this.name() instanceof se && (this._staticInit && (n = this.scope().root().declare(null), l = "" + n.c() + " = " + l), l = "" + this.name().c() + " = " + l), this.option("export") && !O.cjs() && (this.option("default") ? l = "" + Tt("export", this.option("export")) + " " + Tt("default", this.option("default")) + " " + l : l = "" + Tt("export", this.option("export")) + " " + l), this.isExtension() && O.tsc() && (a = `
__extends__=` + this._className.c() + `;
` + a);
      let p = "" + l + " {" + a + "}";
      if (this.option("export") && O.cjs()) {
        let c = this.option("default") ? "default" : r;
        p = "" + p + `;
` + Tt("exports", t.export) + "." + c + " = " + r;
      }
      if (this._staticInit && (e instanceof Lt || e instanceof Ri ? p = "" + p + "; " + J(".", n, this.initKey()).c() + "();" : p = "((" + p + ")[" + this.initKey().c() + "]())"), this.isExtension() && !O.tsc()) {
        let c = this instanceof nc ? Rt(this._className.c()) : Rt("" + this._className.c() + ".prototype");
        if (this._virtualSuper) {
          let _ = J("=", this._virtualSuper, this.util().virtualSuper(c));
          c = Rt("(" + _.c() + "," + c.c() + ")");
        }
        p += `;
` + this.util().extend(c, Rt("" + n + ".prototype")).c() + `;
`;
      }
      return this.option("global") && (p = "" + p + "; " + this.scope__().root().globalRef() + "." + this._cname + " = " + this._cname), p;
    };
    function nc() {
      return _e.apply(this, arguments);
    }
    A(nc, _e);
    E.ExtendDeclaration = nc;
    function sr() {
      return _e.apply(this, arguments);
    }
    A(sr, _e);
    E.TagDeclaration = sr;
    sr.prototype.isTag = function() {
      return true;
    };
    sr.prototype.isInitingFields = function() {
      return true;
    };
    sr.prototype.namepath = function() {
      return "<" + this.name() + ">";
    };
    sr.prototype.metadata = function() {
      return Object.assign(sr.prototype.__super__.metadata.apply(this, arguments), {type: "tag"});
    };
    sr.prototype.cssns = function() {
      return this._cssns || (this._cssns = this._scope.cssns());
    };
    sr.prototype.cssid = function() {
      return this._cssid || (this._cssid = this._scope.cssid());
    };
    sr.prototype.cssref = function(t) {
      if (this.isNeverExtended() && !this.superclass())
        return this._cssns;
      if (t) {
        let e = t.closure();
        return e.memovar("_ns_", J("||", J(".", e.context(), "_ns_"), Ze("")));
      } else
        return J("||", J(".", kr, "_ns_"), Ze(""));
    };
    sr.prototype.isNeverExtended = function() {
      return this.name() && this.name().isClass() ? !this.option("export") && !this.option("extended") : false;
    };
    sr.prototype.visit = function() {
      this.scope__().imbaDependency("core"), O.hmr() && (this.cssid(), this.cssns()), sr.prototype.__super__.visit.apply(this, arguments);
      let t = this.superclass();
      if (this._config = {}, t && !O.tsc()) {
        if (t.isNative() || t.isNativeSVG()) {
          let e = t.nativeCreateNode();
          e = this.util().extendTag(e, kr), this.addMethod("create$", [], [e]).set({static: true}), this.set({extends: ze.wrap({extends: t.name()})}), this._config.extends = t.name();
        } else if (t.isClass()) {
          t.resolveVariable(this.scope__().parent());
          let e = t._variable && t._variable.value();
          e && e.set({extended: this});
        }
      }
      if (this._elementReferences) {
        for (let e = this._elementReferences, r, i = 0, s = Object.keys(e), n = s.length, o; i < n; i++)
          if (o = s[i], r = e[o], O.tsc()) {
            let a = r.option("reference"), l = r.type(), p = "" + Tt(Pt.sym(a), a);
            l && l.toClassName && (p += " = new " + l.toClassName()), this.body().unshift(Rt(p + ";"), true);
          }
      }
      if (!O.tsc() && this.name() && this.name().toNodeName && !this.option("extension")) {
        let e = this.name().toNodeName();
        e.indexOf("-") == -1 && (e = e + "-tag"), O.css().add(e + " { display:block; }");
      }
      this.option("export") && this.name() && this.name().isLowerCase && this.name().isLowerCase() && this.warn("Lowercased tags are globally available - not exportable", {loc: this.option("export")});
    };
    sr.prototype.addElementReference = function(t, e) {
      let r = this._elementReferences || (this._elementReferences = {});
      return r[t] && r[t] != e ? e.warn("Duplicate elements with same reference", {loc: t}) : (r[t] = e, e.set({tagdeclbody: this._body})), e;
    };
    sr.prototype.js = function(t) {
      this.scope().virtualize(), this.scope().context().setValue(this.name()), this.scope().context().setReference(this.name());
      let e = this.name().toClassName(), r = this.superclass(), i = !this.option("extension") && !this.name().isClass() && O.tsc();
      if (r && r._variable ? r = r._variable : r ? r = He(this.runtime().getSuperTagType, [r, Ze(r.toClassName()), this.runtime().Component]) : r = this.runtime().Component, O.tsc())
        if (r = this.superclass() ? this.superclass().toClassName() : Rt("imba.Component"), this.option("extension")) {
          let l = "class \u03A9" + e.replace(/\./g, "__") + "\u03A9" + this.oid(), p = this.body().c();
          return l = "" + l + " {" + p + "}", this._name._variable || (l = "export " + l), l;
        } else
          this.body().unshift(Rt(`static $$TAG$$
`));
      else if (this.option("extension")) {
        let p = this._name._variable || He(this.runtime().getTagType, [this.name(), Ze(this.name().toClassName())]);
        (e == "ImbaElement" || e == "imba.Component") && (p = this.runtime().Component);
        let c = new ce(this.name()), _ = "(class {" + this.body().c() + "}).prototype";
        return this.util().extend("" + p.c() + ".prototype", Rt(_)).c();
      } else
        this.name().isNative() && this.name().error("tag " + this.name().symbol() + " already exists");
      let s = this.scope__().parent(), n = this.body().c(), o = "" + Tt("class", this.keyword()) + " " + Tt(e, this.name()) + " extends " + Tt(r, this.superclass());
      this.option("export") && !O.cjs() && (this.option("default") ? o = "" + Tt("export", this.option("export")) + " " + Tt("default", this.option("default")) + " " + o : o = "" + Tt("export", this.option("export")) + " " + o), i && (o = "globalThis[" + Tt("'" + Tt(this.name().toNodeName(), this.name()) + " tag'", this.name()) + "] = " + Tt("class", this.keyword()) + " extends " + Tt(r, this.superclass()), o = "globalThis." + Tt(e, this.name()) + " = " + Tt("class", this.keyword()) + " extends " + Tt(r, this.superclass()));
      let a = "" + o + " {" + n + "}";
      if (this.option("export") && O.cjs()) {
        let l = this.option("default") ? "default" : e;
        a = "" + a + `;
` + Tt("exports", this.o().export) + "." + l + " = " + e;
      }
      if (this._cssns && (this._config.cssns = this.cssns()), this._cssid && (this._config.cssid = this.cssid()), !O.tsc()) {
        this._staticInit && (a += "; " + J(".", Rt(e), this.initKey()).c() + "()");
        let l = ze.wrap(this._config).c();
        this.name().isClass() && (this._config.name = this.name().symbol()), a += "; " + this.runtime().defineTag + "(" + this.name().c() + "," + e + "," + l + ")";
      }
      return O.tsc() && this.option("global") && this.name().isClass() && (a += "; globalThis." + e + " = " + e), a;
    };
    function ie(t, e, r, i, s) {
      this._options = s;
      var n = this.scopetype();
      this._traversed = false, this._body = Pt.blk(e), this._scope || (this._scope = s && s.scope || new n(this)), this._scope.setParams(this._params = new Vr(t)), this._name = r || "", this._target = i, this._type = "function", this._variable = null;
    }
    A(ie, fr);
    E.Func = ie;
    ie.prototype.name = function(t) {
      return this._name;
    };
    ie.prototype.setName = function(t) {
      return this._name = t, this;
    };
    ie.prototype.params = function(t) {
      return this._params;
    };
    ie.prototype.setParams = function(t) {
      return this._params = t, this;
    };
    ie.prototype.target = function(t) {
      return this._target;
    };
    ie.prototype.setTarget = function(t) {
      return this._target = t, this;
    };
    ie.prototype.options = function(t) {
      return this._options;
    };
    ie.prototype.setOptions = function(t) {
      return this._options = t, this;
    };
    ie.prototype.type = function(t) {
      return this._type;
    };
    ie.prototype.setType = function(t) {
      return this._type = t, this;
    };
    ie.prototype.context = function(t) {
      return this._context;
    };
    ie.prototype.setContext = function(t) {
      return this._context = t, this;
    };
    ie.prototype.scopetype = function() {
      return Aa;
    };
    ie.prototype.inject = function(t, e) {
      return this._body.add([t, Fe], e);
    };
    ie.prototype.nonlocals = function() {
      return this._scope._nonlocals;
    };
    ie.prototype.returnType = function() {
      return this.datatype();
    };
    ie.prototype.visit = function(t, e) {
      return this.scope().visit(), this._context = this.scope().parent(), this._params.traverse({declaring: "arg"}), this._body.traverse();
    };
    ie.prototype.funcKeyword = function() {
      let t = "function";
      return this.option("async") && (t = "async " + t), t;
    };
    ie.prototype.jsdoc = function() {
      let t = [];
      this._desc && (this._desc._skip = true, t.push(this._desc.toString()));
      for (let r = 0, i = It(this._params.nodes()), s = i.length, n; r < s; r++)
        n = i[r], n instanceof fe && n.datatype() && t.push(n.jsdoc());
      if (this.option("inExtension") && this._target) {
        let r = this._context.node(), i = this._context.node()._className;
        if (i && O.tsc()) {
          let s = i.c();
          r.option("instanceOnly") && (s = "typeof " + s), t.push("@this { " + s + " }");
        }
      } else
        this.option("jsdocthis") && t.push("@this { " + this.option("jsdocthis") + " }");
      this.returnType() && t.push("@returns { " + this.returnType().asRawType() + " }");
      let e = t.join(`
`);
      return e ? `/**
` + e + `
*/
` : "";
    };
    ie.prototype.js = function(t, e) {
      this.option("noreturn") || this.body().consume(new Nn());
      var r = this.body()._indentation;
      r && r.isGenerated() && (this.body()._indentation = null);
      var i = this.scope().c({indent: !r || !r.isGenerated(), braces: true}), s = typeof this._name == "string" ? this._name : this._name.c();
      s = s ? " " + s.replace(/\./g, "_") : "";
      var n = e && e.keyword != null ? e.keyword : this.funcKeyword(), o = "" + Tt(n, this.option("def") || this.option("keyword")) + be.toValidIdentifier(s) + "(" + this.params().c() + ") " + i;
      return this.option("eval") && (o = "(" + o + ")()"), o;
    };
    ie.prototype.shouldParenthesize = function(t) {
      return t === void 0 && (t = this.up()), t instanceof ke && t.callee() == this;
    };
    function Ni() {
      return ie.apply(this, arguments);
    }
    A(Ni, ie);
    E.IsolatedFunc = Ni;
    Ni.prototype.leaks = function(t) {
      return this._leaks;
    };
    Ni.prototype.setLeaks = function(t) {
      return this._leaks = t, this;
    };
    Ni.prototype.scopetype = function() {
      return i2;
    };
    Ni.prototype.isStatic = function() {
      return true;
    };
    Ni.prototype.isPrimitive = function() {
      return true;
    };
    Ni.prototype.visit = function(t) {
      var e = this, r;
      if (Ni.prototype.__super__.visit.apply(e, arguments), !t.tsc())
        return (r = e._scope._leaks) && (e._leaks = [], r.forEach(function(i, s) {
          return i._proxy = e._params.at(e._params.count(), true), e._leaks.push(s);
        })), e;
    };
    function s2() {
      return ie.apply(this, arguments);
    }
    A(s2, ie);
    E.Lambda = s2;
    s2.prototype.scopetype = function() {
      var t = this.option("keyword");
      return t && t._value == "\u0192" ? Bs : Ao;
    };
    function oc() {
      return ie.apply(this, arguments);
    }
    A(oc, ie);
    E.ClosedFunc = oc;
    oc.prototype.scopetype = function() {
      return Bs;
    };
    function ac() {
      return ie.apply(this, arguments);
    }
    A(ac, ie);
    E.TagFragmentFunc = ac;
    ac.prototype.scopetype = function() {
      return this.option("closed") ? Bs : Ao;
    };
    function Re() {
      return ie.apply(this, arguments);
    }
    A(Re, ie);
    E.MethodDeclaration = Re;
    Re.prototype.variable = function(t) {
      return this._variable;
    };
    Re.prototype.setVariable = function(t) {
      return this._variable = t, this;
    };
    Re.prototype.decorators = function(t) {
      return this._decorators;
    };
    Re.prototype.setDecorators = function(t) {
      return this._decorators = t, this;
    };
    Re.prototype.scopetype = function() {
      return Bs;
    };
    Re.prototype.consume = function(t) {
      return t instanceof Qe ? (this.option("return", true), this) : Re.prototype.__super__.consume.apply(this, arguments);
    };
    Re.prototype.identifier = function() {
      return this._name;
    };
    Re.prototype.rawName = function() {
      return this._name instanceof At ? this._name.toRaw() : "";
    };
    Re.prototype.metadata = function() {
      return {type: "method", name: "" + this.name(), namepath: this.namepath(), params: this._params.metadata(), desc: this._desc, scopenr: this.scope()._nr, loc: this.loc()};
    };
    Re.prototype.loc = function() {
      var t;
      if (t = this.option("def")) {
        let e = this.body().option("end") || this.body().loc()[1];
        return [t._loc, e];
      } else
        return [0, 0];
    };
    Re.prototype.isGetter = function() {
      return this._type == "get";
    };
    Re.prototype.isSetter = function() {
      return this._type == "set";
    };
    Re.prototype.isConstructor = function() {
      return String(this.name()) == "constructor";
    };
    Re.prototype.isMember = function() {
      return !this.option("static");
    };
    Re.prototype.toJSON = function() {
      return this.metadata();
    };
    Re.prototype.namepath = function() {
      if (this._namepath)
        return this._namepath;
      var t = String(this.name().c()), e = this.option("static") ? "." : "#";
      if (this.target()) {
        let r = this.target();
        return r.namepath() == "ValueNode" && (r = this._context.node()), this._namepath = r.namepath() + e + t;
      } else
        return this._namepath = "&" + t;
    };
    Re.prototype.visit = function() {
      var t, e, r;
      this._type = this.option("type") || (t = this.option("def")) && t._value || "def", this._decorators = (e = this.up()) && e.collectDecorators && e.collectDecorators();
      var i = this._options;
      if (this.scope().visit(), this.option("inObject"))
        return this._params.traverse(), this._body.traverse(), this;
      var s = this._context = this.scope().parent().closure();
      if (s instanceof le && !this.target() ? this.scope()._context = s.context() : s instanceof Bs && !this.target() && (this.scope()._selfless = true), this._params.traverse(), this._name.isPredicate && this._name.isPredicate() && !this.isSetter() && !this.isGetter() && this._name.warn("Only getters/setters should end with ?"), this.target() instanceof At && (r = this.scope().lookup(this.target().toString())) && this.setTarget(r), String(this.name()) == "initialize" && s instanceof Ii && !(s instanceof r2) && this.setType("constructor"), (String(this.name()) == "constructor" || this.isConstructor()) && (this.up().set({ctor: this}), this.set({noreturn: true})), s instanceof Ii && !this.target() && (this._target = s.prototype(), this.set({prototype: this._target, inClassBody: true, inExtension: s.node().option("extension")}), s.annotate(this)), this.target() instanceof si ? (this._target = s.context(), s.annotate(this), this.set({static: true})) : i.variable ? (this._variable = this.scope().parent().register(this.name(), this, {type: String(i.variable)}), this.target() && this.warn("" + String(i.variable) + " def cannot have a target")) : this.target() || (this._variable = this.scope().parent().register(this.name(), this, {type: "const"})), i.export && !(s instanceof le) && this.warn("cannot export non-root method", {loc: i.export.loc()}), W1.entities().add(this.namepath(), this), this._body.traverse(), this.isConstructor() && this.option("supr")) {
        let n = this.scope__().context()._reference, o = this.option("supr"), a = o.node, l = o.block;
        if (n) {
          n.declarator()._defaults = null;
          let p = J("=", n, new ps());
          l.replace(a, [a, p]);
        }
      }
      return this;
    };
    Re.prototype.supername = function() {
      return this.type() == "constructor" ? this.type() : this.name();
    };
    Re.prototype.js = function(t) {
      var t = this._options;
      this.type() == "constructor" || this.option("noreturn") || this.isSetter() || (this.option("chainable") ? this.body().add(new Nn(this.scope().context())) : this.option("greedy") ? this.body().consume(new tc()) : this.body().consume(new Nn()));
      var e = this.scope().c({indent: true, braces: true}), r = typeof this._name == "string" ? this._name : this._name.c({as: "field"}), i = "";
      if (this.option("inClassBody") || this.option("inObject")) {
        let a = "";
        return this.isGetter() ? a = Tt("get", this.option("keyword")) + " " : this.isSetter() && (a = Tt("set", this.option("keyword")) + " "), this.option("async") && (a = "async " + a), this.option("static") && (a = "" + Tt("static", this.option("static")) + " " + a), i = "" + a + Tt(r, null, {as: "field"}) + "(" + this.params().c() + ")" + e, i = this.jsdoc() + i, i;
      }
      var s = "(" + this.params().c() + ")" + e, n = this.context(), o = be.toValidIdentifier(Pt.sym(this.name()));
      if (this.target()) {
        if (o[0] == "[" ? o = o.slice(1, -1) : o = "'" + o + "'", this.isGetter())
          i = "Object.defineProperty(" + this.target().c() + ",'" + o + "',{get: " + this.funcKeyword() + s + ", configurable: true})";
        else if (this.isSetter())
          i = "Object.defineProperty(" + this.target().c() + ",'" + o + "',{set: " + this.funcKeyword() + s + ", configurable: true})";
        else {
          O.tsc() && this.set({jsdocthis: this.target().c()});
          let a = J(".", this.target(), this._name);
          i = "" + a.c() + " = " + this.funcKeyword() + " " + s;
        }
        t.export && (i = "exports." + (t.default ? "default" : o) + " = " + i);
      } else if (i = "" + Tt(this.funcKeyword(), this.keyword()) + " " + Tt(o, this._name) + s, t.export)
        if (O.cjs()) {
          let a = t.default ? "default" : o;
          i = "" + i + `;
` + Tt("exports", t.export) + "." + a + " = " + o;
        } else
          i = "" + Tt("export", t.export) + " " + (t.default ? Tt("default ", t.default) : "") + i;
      return t.global && (i = "" + i + "; " + this.scope__().root().globalRef() + "." + o + " = " + o + ";"), this.option("return") && (i = "return " + i), i = this.jsdoc() + i, i;
    };
    function Ce(t) {
      this._traversed = false, this._expression = true, this._cache = null, this._raw = null, this._value = this.load(t);
    }
    A(Ce, Ut);
    E.Literal = Ce;
    Ce.prototype.isConstant = function() {
      return true;
    };
    Ce.prototype.load = function(t) {
      return t;
    };
    Ce.prototype.toString = function() {
      return "" + this.value();
    };
    Ce.prototype.hasSideEffects = function() {
      return false;
    };
    Ce.prototype.shouldParenthesizeInTernary = function() {
      return false;
    };
    Ce.prototype.startLoc = function() {
      return this._startLoc || this._value && this._value.startLoc && this._value.startLoc();
    };
    Ce.prototype.endLoc = function() {
      return this._endLoc || this._value && this._value.endLoc && this._value.endLoc();
    };
    function ba() {
      return Ce.apply(this, arguments);
    }
    A(ba, Ce);
    E.RawScript = ba;
    ba.prototype.c = function() {
      return this._value;
    };
    function fi(t) {
      this._value = t, this._raw = String(t) == "true";
    }
    A(fi, Ce);
    E.Bool = fi;
    fi.prototype.cache = function() {
      return this;
    };
    fi.prototype.isPrimitive = function() {
      return true;
    };
    fi.prototype.truthy = function() {
      return String(this.value()) == "true";
    };
    fi.prototype.js = function(t) {
      return String(this._value);
    };
    fi.prototype.c = function() {
      return O._counter += 1, String(this._value);
    };
    fi.prototype.toJSON = function() {
      return {type: "Bool", value: this._value};
    };
    fi.prototype.loc = function() {
      return this._value.region ? this._value.region() : [0, 0];
    };
    function On() {
      return Ce.apply(this, arguments);
    }
    A(On, Ce);
    E.Undefined = On;
    On.prototype.isPrimitive = function() {
      return true;
    };
    On.prototype.isTruthy = function() {
      return false;
    };
    On.prototype.cache = function() {
      return this;
    };
    On.prototype.c = function() {
      return Tt("undefined", this._value);
    };
    function Ps() {
      return Ce.apply(this, arguments);
    }
    A(Ps, Ce);
    E.Nil = Ps;
    Ps.prototype.isPrimitive = function() {
      return true;
    };
    Ps.prototype.isTruthy = function() {
      return false;
    };
    Ps.prototype.cache = function() {
      return this;
    };
    Ps.prototype.c = function() {
      return Tt("null", this._value);
    };
    function Ms() {
      return fi.apply(this, arguments);
    }
    A(Ms, fi);
    E.True = Ms;
    Ms.prototype.raw = function() {
      return true;
    };
    Ms.prototype.isTruthy = function() {
      return true;
    };
    Ms.prototype.c = function() {
      return Tt("true", this._value);
    };
    function Vs() {
      return fi.apply(this, arguments);
    }
    A(Vs, fi);
    E.False = Vs;
    Vs.prototype.raw = function() {
      return false;
    };
    Vs.prototype.isTruthy = function() {
      return false;
    };
    Vs.prototype.c = function() {
      return Tt("false", this._value);
    };
    function Ie(t) {
      this._traversed = false, this._value = t;
    }
    A(Ie, Ce);
    E.Num = Ie;
    Ie.prototype.toString = function() {
      return String(this._value).replace(/\_/g, "");
    };
    Ie.prototype.toNumber = function() {
      return this._number == null ? this._number = parseFloat(this.toString()) : this._number;
    };
    Ie.prototype.isPrimitive = function(t) {
      return true;
    };
    Ie.prototype.isTruthy = function() {
      return this.toNumber() != 0;
    };
    Ie.prototype.negate = function() {
      return this._value = -this.toNumber(), this;
    };
    Ie.prototype.shouldParenthesize = function(t) {
      return t === void 0 && (t = this.up()), t instanceof se && t.left() == this;
    };
    Ie.prototype.js = function(t) {
      return this.toString();
    };
    Ie.prototype.c = function(t) {
      if (this._cache)
        return Ie.prototype.__super__.c.call(this, t);
      var e = Tt(this.toString(), this._value), r = O.current(), i = r instanceof se && r.left() == this;
      return i ? "(" + e + ")" : e;
    };
    Ie.prototype.cache = function(t) {
      return t && (t.cache || t.pool) ? Ie.prototype.__super__.cache.call(this, t) : this;
    };
    Ie.prototype.raw = function() {
      return JSON.parse(this.toString());
    };
    Ie.prototype.toJSON = function() {
      return {type: this.typeName(), value: this.raw()};
    };
    function Ia(t, e) {
      this._traversed = false, this._value = t, this._unit = e;
    }
    A(Ia, Ce);
    E.NumWithUnit = Ia;
    Ia.prototype.negate = function() {
      return this.set({negate: true}), this;
    };
    Ia.prototype.c = function(t) {
      let e = String(this._unit), r = String(this._value);
      return this.option("negate") && (r = "-" + r), e == "s" ? r = "(" + r + " * 1000)" : e == "ms" ? r = "" + r : e == "n" ? r = "" + r + "n" : e == "fps" ? r = "(1000 / " + r + ")" : (r = "" + r + e, t && t.unqouted || (r = "'" + r + "'")), ls.sourcemap && (!t || t.mark !== false) && (r = Tt(r, this)), r;
    };
    Ia.prototype.endLoc = function() {
      return this._unit.endLoc();
    };
    function lc(t, e) {
      this._value = t, this._unit = e;
    }
    A(lc, Ut);
    E.ExpressionWithUnit = lc;
    lc.prototype.js = function(t) {
      let e = String(this._unit);
      return "(" + this.value().c() + "+" + Ze(this._unit).c() + ")";
    };
    function de(t) {
      this._traversed = false, this._expression = true, this._cache = null, this._value = t;
    }
    A(de, Ce);
    E.Str = de;
    de.prototype.isString = function() {
      return true;
    };
    de.prototype.isPrimitive = function(t) {
      return true;
    };
    de.prototype.raw = function() {
      return this._raw || (this._raw = String(this.value()).slice(1, -1));
    };
    de.prototype.isValidIdentifier = function() {
      return !!this.raw().match(/^[a-zA-Z\$\_]+[\d\w\$\_]*$/);
    };
    de.prototype.isTemplate = function() {
      return String(this._value)[0] == "`";
    };
    de.prototype.js = function(t) {
      return String(this._value);
    };
    de.prototype.c = function(t) {
      return this._cache ? de.prototype.__super__.c.call(this, t) : Tt(this.js(), this._value, t);
    };
    function cc() {
      return jt.apply(this, arguments);
    }
    A(cc, jt);
    E.TemplateString = cc;
    cc.prototype.js = function() {
      let t = this._nodes.map(function(r) {
        return typeof r == "string" || r instanceof String ? r : r.c();
      });
      return "`" + t.join("") + "`";
    };
    function f3() {
      return Ut.apply(this, arguments);
    }
    A(f3, Ut);
    E.Interpolation = f3;
    function _i(t, e) {
      e === void 0 && (e = {}), this._nodes = t, this._options = e;
    }
    A(_i, Z);
    E.InterpolatedString = _i;
    _i.prototype.add = function(t) {
      return t && this._nodes.push(t), this;
    };
    _i.prototype.visit = function() {
      for (let t = 0, e = It(this._nodes), r = e.length; t < r; t++)
        e[t].traverse();
      return this;
    };
    _i.prototype.startLoc = function() {
      return this.option("open").startLoc();
    };
    _i.prototype.endLoc = function() {
      return this.option("close").endLoc();
    };
    _i.prototype.isString = function() {
      return true;
    };
    _i.prototype.isTemplate = function() {
      return String(this.option("open")) == "`";
    };
    _i.prototype.escapeString = function(t) {
      return t = t.replace(/\n/g, `\\
`);
    };
    _i.prototype.toArray = function() {
      return this._nodes.map(function(e, r) {
        return e instanceof br && e._type == "NEOSTRING" ? new de('"' + e._value + '"') : e;
      });
    };
    _i.prototype.js = function(t, e) {
      var r = this, i = String(r.option("open") || '"');
      if (i.length == 3 && (i = i[0]), e && e.as == "template") {
        var s = [];
        return r._nodes.map(function(a, l) {
          if (a instanceof br && a._type == "NEOSTRING")
            return s.push(r.escapeString(a._value));
          if (a)
            return s.push("${", a.c({expression: true}), "}");
        }), "`" + s.join("") + "`";
      } else {
        var n = r._noparen;
        s = [];
        var o = n ? "" : "(";
        r._nodes.map(function(a, l) {
          if (a instanceof br && a._type == "NEOSTRING")
            return s.push(i + r.escapeString(a._value) + i);
          if (a)
            return l == 0 && s.push('""'), a._parens = true, s.push(a.c({expression: true}));
        }), o += s.join(" + "), n || (o += ")");
      }
      return o;
    };
    function Hs() {
      return Ce.apply(this, arguments);
    }
    A(Hs, Ce);
    E.Symbol = Hs;
    Hs.prototype.isValidIdentifier = function() {
      return !!this.raw().match(/^[a-zA-Z\$\_]+[\d\w\$\_]*$/);
    };
    Hs.prototype.isPrimitive = function(t) {
      return true;
    };
    Hs.prototype.raw = function() {
      return this._raw || (this._raw = Pt.sym(this.value().toString().replace(/^\:/, "")));
    };
    Hs.prototype.js = function(t) {
      return "'" + Pt.sym(this.raw()) + "'";
    };
    function Ra() {
      return Ce.apply(this, arguments);
    }
    A(Ra, Ce);
    E.RegExp = Ra;
    Ra.prototype.isPrimitive = function() {
      return true;
    };
    Ra.prototype.js = function() {
      var t, e = Ra.prototype.__super__.js.apply(this, arguments);
      if (t = U1.HEREGEX.exec(e)) {
        var r = t[1].replace(U1.HEREGEX_OMIT, "").replace(/\//g, "\\/");
        return "/" + (r || "(?:)") + "/" + t[2];
      }
      return e == "//" ? "/(?:)/" : e;
    };
    function je() {
      return Ce.apply(this, arguments);
    }
    A(je, Ce);
    E.Arr = je;
    je.prototype.load = function(t) {
      return t instanceof Array ? new ar(t) : t;
    };
    je.prototype.push = function(t) {
      return this.value().push(t), this;
    };
    je.prototype.count = function() {
      return this.value().length;
    };
    je.prototype.nodes = function() {
      var t = this.value();
      return t instanceof Array ? t : t.nodes();
    };
    je.prototype.splat = function() {
      return this.value().some(function(t) {
        return t instanceof An;
      });
    };
    je.prototype.visit = function() {
      return this._value && this._value.traverse && this._value.traverse(), this;
    };
    je.prototype.isPrimitive = function(t) {
      return !this.value().some(function(e) {
        return !e.isPrimitive(true);
      });
    };
    je.prototype.js = function(t) {
      var e = this._value;
      if (!e)
        return "[]";
      var r = e instanceof Array ? e : e.nodes(), i = e instanceof Array ? Pt.cary(e) : e.c();
      return i = "[" + i + "]", this.datatype() && O.tsc() && (i = this.datatype().c() + "(" + i + ")"), i;
    };
    je.prototype.hasSideEffects = function() {
      return this.value().some(function(t) {
        return t.hasSideEffects();
      });
    };
    je.prototype.toString = function() {
      return "Arr";
    };
    je.prototype.indented = function(t, e) {
      return this._value.indented(t, e), this;
    };
    je.wrap = function(t) {
      return new je(t);
    };
    function ze() {
      return Ce.apply(this, arguments);
    }
    A(ze, Ce);
    E.Obj = ze;
    ze.prototype.load = function(t) {
      return t instanceof Array ? new So(t) : t;
    };
    ze.prototype.visit = function() {
      return this._value && this._value.traverse(), this;
    };
    ze.prototype.isPrimitive = function(t) {
      return !this.value().some(function(e) {
        return !e.isPrimitive(true);
      });
    };
    ze.prototype.js = function(t) {
      return "{" + this.value().c() + "}";
    };
    ze.prototype.add = function(t, e) {
      (typeof t == "string" || t instanceof String || t instanceof br) && (t = new At(t));
      var r = new _r(t, e);
      return this.value().push(r), r;
    };
    ze.prototype.remove = function(t) {
      for (let e = 0, r = It(this.value()), i = r.length, s; e < i; e++)
        s = r[e], s.key().symbol() == t && this.value().remove(s);
      return this;
    };
    ze.prototype.keys = function() {
      return Object.keys(this.hash());
    };
    ze.prototype.hash = function() {
      var t = {};
      for (let e = 0, r = It(this.value()), i = r.length, s; e < i; e++)
        s = r[e], s instanceof _r && (t[s.key().symbol()] = s.value());
      return t;
    };
    ze.prototype.key = function(t) {
      for (let e = 0, r = It(this.value()), i = r.length, s; e < i; e++)
        if (s = r[e], s instanceof _r && s.key().symbol() == t)
          return s;
      return null;
    };
    ze.prototype.indented = function(t, e) {
      return this._value.indented(t, e), this;
    };
    ze.prototype.hasSideEffects = function() {
      return this.value().some(function(t) {
        return t.hasSideEffects();
      });
    };
    ze.wrap = function(t) {
      var e = [];
      for (let r, i = 0, s = Object.keys(t), n = s.length, o; i < n; i++)
        o = s[i], r = t[o], r instanceof Array ? r = je.wrap(r) : r.constructor == Object && (r = ze.wrap(r)), r = v_(r), (typeof o == "string" || o instanceof String) && (o = new At(o)), e.push(new _r(o, r));
      return new ze(e);
    };
    ze.prototype.toString = function() {
      return "Obj";
    };
    function _r(t, e, r) {
      this._traversed = false, this._key = t, this._value = e, this._dynamic = t instanceof re, this._defaults = r;
    }
    A(_r, Z);
    E.ObjAttr = _r;
    _r.prototype.key = function(t) {
      return this._key;
    };
    _r.prototype.setKey = function(t) {
      return this._key = t, this;
    };
    _r.prototype.value = function(t) {
      return this._value;
    };
    _r.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    _r.prototype.options = function(t) {
      return this._options;
    };
    _r.prototype.setOptions = function(t) {
      return this._options = t, this;
    };
    _r.prototype.visit = function(t, e) {
      this.key().traverse(), this.value() && this.value().traverse(), this._defaults && this._defaults.traverse();
      let r = e && e.declaring;
      return this.key() instanceof Cn ? this.value() || (this.setKey(new At(this.key().value())), this.setValue(J(".", this.scope__().context(), this.key())), this._defaults && (this.setValue(J("=", this.value(), this._defaults)), this._defaults = null)) : this.key() instanceof Na ? this.value() || (this.setValue(J(".", this.scope__().context(), this.key())), this.setKey(new At(this.key().value()))) : this.key() instanceof At && (this.value() || (r ? (this.setValue(this.scope__().register(this.key().symbol(), this.key(), {type: r})), t.registerSemanticToken(this.key(), this.value()), this.setValue(this.value().via(this.key())), this._defaults && (this.setValue(J("=", this.value(), this._defaults)), this._defaults = null)) : (this.setValue(this.scope__().lookup(this.key().symbol())), this.value() || this.setValue(J(".", this.scope__().context(), this.key()))))), this;
    };
    _r.prototype.js = function(t) {
      let e = this.key(), r;
      return e instanceof Pe || e instanceof ei ? r = e.asObjectKey() : e instanceof _i ? r = "[" + e.c() + "]" : e.isReserved() ? r = "'" + e.c() + "'" : e instanceof de && e.isValidIdentifier() ? r = e.raw() : r = e.c({as: "key"}), this._defaults ? "" + r + " = " + this._defaults.c() : this.value() ? "" + r + ": " + this.value().c() : "" + r;
    };
    _r.prototype.hasSideEffects = function() {
      return true;
    };
    _r.prototype.isPrimitive = function(t) {
      return !this._value || this._value.isPrimitive(t);
    };
    function uc() {
      return _r.apply(this, arguments);
    }
    A(uc, _r);
    E.ObjRestAttr = uc;
    uc.prototype.js = function(t) {
      let e = this.key();
      return this.value() ? "..." + this.value().c() : "..." + e.c();
    };
    function n2() {
      return Z.apply(this, arguments);
    }
    A(n2, Z);
    E.ArgsReference = n2;
    n2.prototype.c = function() {
      return "arguments";
    };
    function si(t) {
      this._value = t;
    }
    A(si, Ce);
    E.Self = si;
    si.prototype.cache = function() {
      return this;
    };
    si.prototype.reference = function() {
      return this;
    };
    si.prototype.visit = function() {
      return this.scope__().context(), this;
    };
    si.prototype.js = function() {
      var t = this.scope__();
      return t ? t.context().c() : "this";
    };
    si.prototype.c = function() {
      let t = Tt(this.js(), this._value), e = O.tsc() && this.option("datatype");
      return e && (t = "" + e.c() + "(" + t + ")"), t;
    };
    function ps() {
      return si.apply(this, arguments);
    }
    A(ps, si);
    E.This = ps;
    ps.prototype.cache = function() {
      return this;
    };
    ps.prototype.reference = function() {
      return this;
    };
    ps.prototype.visit = function() {
      return this;
    };
    ps.prototype.js = function() {
      return "this";
    };
    function re(t, e, r) {
      return this._expression = false, this._traversed = false, this._parens = false, this._cache = null, this._invert = false, this._opToken = t, this._op = t && t._value || t, this._op == "and" ? this._op = "&&" : this._op == "or" ? this._op = "||" : this._op == "is" ? this._op = "===" : this._op == "isnt" ? this._op = "!==" : this._op == "not" && (this._op = "!"), this._left = e, this._right = r, this;
    }
    A(re, Z);
    E.Op = re;
    re.prototype.op = function(t) {
      return this._op;
    };
    re.prototype.setOp = function(t) {
      return this._op = t, this;
    };
    re.prototype.left = function(t) {
      return this._left;
    };
    re.prototype.setLeft = function(t) {
      return this._left = t, this;
    };
    re.prototype.right = function(t) {
      return this._right;
    };
    re.prototype.setRight = function(t) {
      return this._right = t, this;
    };
    re.prototype.visit = function() {
      return this._right && this._right.traverse && this._right.traverse(), this._left && this._left.traverse && this._left.traverse(), this;
    };
    re.prototype.hasTagRight = function() {
      if (this.isLogical()) {
        let t = this._left.unwrappedNode(), e = this._right.unwrappedNode();
        if (e instanceof Et || e instanceof re && e.hasTagRight() || e instanceof re && e.hasTagRight())
          return true;
      }
      return false;
    };
    re.prototype.opToIfTree = function() {
      if (this.hasTagRight()) {
        let t = this._left.unwrappedNode(), e = this._right.unwrappedNode();
        if (this._op == "&&")
          return t instanceof re && t.hasTagRight() && this._left.warn("Tag not allowed here"), t instanceof re && (t = t.opToIfTree()), e instanceof re && (e = e.opToIfTree()), e instanceof pe ? (e.setTest(J("&&", t, e.test())), e) : new pe(t, new Lt([e])).traverse();
        if (this._op == "||")
          return t instanceof re && (t = t.opToIfTree()), t instanceof pe ? t.addElse(new Lt([e])) : new pe(t, new Lt([])).addElse(new Lt([e])).traverse();
      }
      return this;
    };
    re.prototype.isExpressable = function() {
      return !this.right() || this.right().isExpressable();
    };
    re.prototype.startLoc = function() {
      let t = this._left;
      return t && t.startLoc ? t.startLoc() : re.prototype.__super__.startLoc.apply(this, arguments);
    };
    re.prototype.js = function(t) {
      var e = null, r = this._op;
      let i = r;
      var s = this._left, n = this._right;
      if (r == "!&")
        return "(" + Fs(s) + " " + Tt("&", this._opToken) + " " + Fs(n) + ")==0";
      if (r == "??") {
        let o = J1(J("!=", s.cache(), Gs), s, n, {type: "?"});
        return o._scope._systemscope = this.stack().scope(), o.c({expression: true});
      } else {
        if (r == "|=?")
          return pe.ternary(J("!&", s, n.cache()), new Ae([J("|=", s, n), hc]), pc).c();
        if (r == "~=?")
          return pe.ternary(J("&", s, n.cache()), new Ae([J("~=", s, n), hc]), pc).c();
        if (r == "^=?")
          return J("!!", J("&", J("^=", s, n.cache()), n)).c();
        if (r == "=?")
          return n.cache(), pe.ternary(J("!=", s, n), new Ae([J("=", s, n), hc]), pc).c();
      }
      if (s instanceof Z && (s = s.c()), n instanceof Z && (n = n.c()), s && n)
        e || (e = "" + s + " " + Tt(r, this._opToken) + " " + n);
      else if (s) {
        let o = this._opToken && this._opToken.spaced ? " " : "";
        e || (e = "" + Tt(r, this._opToken) + o + s);
      }
      return e;
    };
    re.prototype.isString = function() {
      return this._op == "+" && this._left && this._left.isString();
    };
    re.prototype.isLogical = function() {
      return this._op == "&&" || this._op == "||";
    };
    re.prototype.shouldParenthesize = function() {
      return this._parens;
    };
    re.prototype.precedence = function() {
      return 10;
    };
    re.prototype.consume = function(t) {
      if (this.isExpressable())
        return re.prototype.__super__.consume.apply(this, arguments);
      var e = this.scope__().declare("tmp", null, {system: true}), r = J(this.op(), this.left(), null), i = this.right().consume(r);
      return t && i.consume(t), i;
    };
    function os() {
      return re.apply(this, arguments);
    }
    A(os, re);
    E.ComparisonOp = os;
    os.prototype.invert = function() {
      var t = this._op, e = ["==", "!=", "===", "!==", ">", "<=", "<", ">="], r = e.indexOf(t);
      return r += r % 2 ? -1 : 1, this.setOp(e[r]), this._invert = !this._invert, this;
    };
    os.prototype.c = function() {
      return this.left() instanceof os ? (this.left().right().cache(), J("&&", this.left(), J(this.op(), this.left().right(), this.right())).c()) : os.prototype.__super__.c.apply(this, arguments);
    };
    os.prototype.js = function(t) {
      var e = this._op, r = this._left, i = this._right;
      return r instanceof Z && (r = r.c()), i instanceof Z && (i = i.c()), "" + r + " " + Tt(e, this._opToken) + " " + i;
    };
    function ti() {
      return re.apply(this, arguments);
    }
    A(ti, re);
    E.UnaryOp = ti;
    ti.prototype.invert = function() {
      return this.op() == "!" ? this.left() : ti.prototype.__super__.invert.apply(this, arguments);
    };
    ti.prototype.isTruthy = function() {
      var t = Pt.truthy(this.left());
      return t !== void 0 ? !t : void 0;
    };
    ti.prototype.startLoc = function() {
      let t = this._left || this._op;
      return t && t.startLoc ? t.startLoc() : this._startLoc;
    };
    ti.prototype.js = function(t) {
      var e = this._left, r = this._right, i = this.op(), s = this._opToken && this._opToken.spaced ? " " : "";
      if (i == "not" && (i = "!"), i == "!" || i == "!!") {
        var n = e.c(), o = e.shouldParenthesize(this);
        return (n.match(/^\!?([\w\.]+)$/) || e instanceof Ae || o || e instanceof se || e instanceof ke) && !n.match(/[\s\&\|]/) || (n = "(" + n + ")"), "" + i + n;
      } else
        return this.left() ? "" + e.c() + s + i : "" + i + s + r.c();
    };
    ti.prototype.normalize = function() {
      if (this.op() == "!")
        return this;
      var t = (this.left() || this.right()).node();
      return this;
    };
    ti.prototype.consume = function(t) {
      var e = this.normalize();
      return e == this ? ti.prototype.__super__.consume.apply(this, arguments) : e.consume(t);
    };
    ti.prototype.c = function() {
      var t = this.normalize();
      return t == this ? ti.prototype.__super__.c.apply(this, arguments) : t.c();
    };
    function q1() {
      return re.apply(this, arguments);
    }
    A(q1, re);
    E.InstanceOf = q1;
    q1.prototype.js = function(t) {
      if (this.right() instanceof At || this.right() instanceof he) {
        var e = Pt.c(this.right().value()), r = this.left().node();
        if (da(e, ["String", "Number", "Boolean"]) >= 0)
          return O.tsc() ? "(typeof " + r.c() + "=='" + e.toLowerCase() + "')" : (r instanceof Oi || r.cache(), "(typeof " + r.c() + "=='" + e.toLowerCase() + "'||" + r.c() + " instanceof " + e + ")");
      }
      var i = "" + this.left().c() + " instanceof " + this.right().c();
      return t.parent() instanceof re && (i = be.parenthesize(i)), i;
    };
    function X1() {
      return re.apply(this, arguments);
    }
    A(X1, re);
    E.TypeOf = X1;
    X1.prototype.js = function(t) {
      return "typeof " + this.left().c();
    };
    function ga() {
      return re.apply(this, arguments);
    }
    A(ga, re);
    E.Delete = ga;
    ga.prototype.js = function(t) {
      var e = this.left(), r = this.scope__().temporary(this, {pool: "val"}), t = J("=", r, e);
      return "(" + t.c() + ",delete " + e.c() + ", " + r.c() + ")";
    };
    ga.prototype.shouldParenthesize = function() {
      return true;
    };
    function va() {
      return re.apply(this, arguments);
    }
    A(va, re);
    E.In = va;
    va.prototype.invert = function() {
      return this._invert = !this._invert, this;
    };
    va.prototype.js = function(t) {
      var e = this.util().contains(this.left(), this.right());
      return "" + (this._invert ? "!" : "") + e.c();
    };
    function se(t, e, r) {
      return this._expression = false, this._traversed = false, this._parens = false, this._cache = null, this._invert = false, this._op = t && t._value || t, this._left = e, this._right = r, this;
    }
    A(se, re);
    E.Access = se;
    se.prototype.startLoc = function() {
      return (this._left || this._right).startLoc();
    };
    se.prototype.endLoc = function() {
      return this._right && this._right.endLoc();
    };
    se.prototype.clone = function(t, e) {
      var r = this.constructor;
      return new r(this.op(), t, e);
    };
    se.prototype.isRuntimeReference = function() {
      return this.left() instanceof he && this.left()._variable instanceof zs ? this.right() instanceof At ? this.right().toString() : true : false;
    };
    se.prototype.js = function(t) {
      var e, r = null, i = this.left(), s = this.right(), n = null;
      if (i instanceof he && i._variable instanceof xr)
        return i._variable.access(s, i).c();
      s instanceof br && (s = new At(s));
      var o = i || this.scope__().context(), a = "", l = "";
      let p = this.safechain() ? "?" : "";
      if (this._startLoc || (this._startLoc = (i || s).startLoc()), i instanceof Xe && t.method() && t.method().option("inExtension"), s instanceof as && s.value() instanceof Ie && (s = s.value()), s instanceof Ie)
        return s.toNumber() < 0 ? p ? this.util().optNegIndex(o, s).c() : this.util().negIndex(o, s).c() : o.c() + ("" + (p ? "?." : "") + "[") + s.c() + "]";
      s instanceof as && (s.value() instanceof de || s.value() instanceof Hs) && (s = s.value()), s instanceof de && s.isValidIdentifier() || s instanceof Hs && s.isValidIdentifier() ? r = s.raw() : s instanceof o2 ? s = s.value() : s instanceof ei || s instanceof At && s.isValidIdentifier() && (r = s.c());
      var c = r ? o ? "" + p + "." + r : r : (e = s instanceof Z ? s.c({expression: true, as: "value"}) : s, "" + (p ? "?." : "") + "[" + e + "]");
      let _ = t.up(), f = this.option("datatype");
      return o && (this instanceof Us && f && t.tsc() && _ instanceof Lt, c = o.c() + c), this instanceof Us && (c = Tt(c, s._token || s._value)), f && (!(_ instanceof Ve) || _.right().node() == this) && (_ instanceof Lt && (this instanceof Us || i instanceof si) ? c = f.c() + " " + c : c = f.c() + "(" + c + ")"), c = a + c, a && (c = "(" + c + ")"), c;
    };
    se.prototype.visit = function() {
      let t = this.left();
      this.left() && this.left().traverse(), this.right() && this.right().traverse(), this._left || (this._left = this.scope__().context());
    };
    se.prototype.isExpressable = function() {
      return true;
    };
    se.prototype.alias = function() {
      return this.right() instanceof At ? this.right().alias() : se.prototype.__super__.alias.call(this);
    };
    se.prototype.safechain = function() {
      return String(this._op) == "?.";
    };
    se.prototype.cache = function(t) {
      return this.right() instanceof Cn && !this.left() ? this : se.prototype.__super__.cache.call(this, t);
    };
    se.prototype.shouldParenthesizeInTernary = function() {
      return this._parens || this._cache;
    };
    function Us() {
      return se.apply(this, arguments);
    }
    A(Us, se);
    E.ImplicitAccess = Us;
    Us.prototype.datatype = function() {
      return Us.prototype.__super__.datatype.apply(this, arguments) || this._right.datatype();
    };
    function Oi() {
      return se.apply(this, arguments);
    }
    A(Oi, se);
    E.LocalVarAccess = Oi;
    Oi.prototype.safechain = function(t) {
      return this._safechain;
    };
    Oi.prototype.setSafechain = function(t) {
      return this._safechain = t, this;
    };
    Oi.prototype.js = function(t) {
      return this.right() instanceof Ft && this.right().type() == "meth" && !(this.up() instanceof ke) ? "" + this.right().c() + "()" : this.right().c();
    };
    Oi.prototype.variable = function() {
      return this.right();
    };
    Oi.prototype.cache = function(t) {
      return t === void 0 && (t = {}), t.force && Oi.prototype.__super__.cache.call(this, t), this;
    };
    Oi.prototype.alias = function() {
      return this.variable()._alias || Oi.prototype.__super__.alias.call(this);
    };
    function qi(t, e, r) {
      return this._traversed = false, this._invert = false, this._parens = false, this._expression = false, this._cache = null, this._op = t, this._left = e, this._right = r, this;
    }
    A(qi, se);
    E.PropertyAccess = qi;
    qi.prototype.visit = function() {
      return this._right && this._right.traverse(), this._left && this._left.traverse(), this;
    };
    qi.prototype.js = function(t) {
      var e = this.up(), r = "" + qi.prototype.__super__.js.call(this, t);
      return r;
    };
    qi.prototype.receiver = function() {
      return this.left() instanceof Xe ? S_ : null;
    };
    function Tn() {
      return se.apply(this, arguments);
    }
    A(Tn, se);
    E.IvarAccess = Tn;
    Tn.prototype.visit = function() {
      return this._right && this._right.traverse(), this._left ? this._left.traverse() : this.scope__().context(), this;
    };
    Tn.prototype.cache = function() {
      return this;
    };
    function Oa() {
      return se.apply(this, arguments);
    }
    A(Oa, se);
    E.IndexAccess = Oa;
    Oa.prototype.cache = function(t) {
      return t === void 0 && (t = {}), t.force ? Oa.prototype.__super__.cache.apply(this, arguments) : (this.right().cache(), this);
    };
    function fc() {
      return Ut.apply(this, arguments);
    }
    A(fc, Ut);
    E.VarAccess = fc;
    function he(t) {
      this._traversed = false, this._parens = false, this._value = t, this._identifier = t, this._token = t._value, this._variable = null;
    }
    A(he, Ut);
    E.VarOrAccess = he;
    he.prototype.isGlobal = function(t) {
      return this._variable && this._variable.isGlobal(t);
    };
    he.prototype.startLoc = function() {
      return this._token.startLoc();
    };
    he.prototype.endLoc = function() {
      return this._token.endLoc();
    };
    he.prototype.visit = function(t, e) {
      var r, i = this.scope__(), s = this.value().symbol();
      if (e && e.declaring && (r = i.register(this.value(), this, {type: e.declaring})), r || (r = i.lookup(this.value().symbol())), r && r instanceof Ln) {
        let n = r.name();
        r instanceof Dn && !t.tsc() ? this._value = r.forScope(i) : t.tsc() ? this._value = Rt(n) : t.isNode() ? (this._value = Rt(i.imba().c()), n != "imba" && (this._value = Rt("" + i.imba().c() + "." + n))) : this._value = Rt(n);
      } else if (r && r.declarator()) {
        let n = r.scope();
        if (n == i && !r._initialized) {
          let o = i.parent().lookup(this.value());
          o && (r._virtual = true, r._shadowing = o, r = o);
        }
        if (r && r._initialized || i.closure() != n.closure())
          return this._variable = r, r.addReference(this), this._value = r, this._token._variable = r, t.registerSemanticToken(this._token, r), this;
      } else if (this.value().symbol() == "self")
        this._value = i.context();
      else if (!this._identifier.isCapitalized()) {
        let n = i.lookup("self"), o = i.context();
        !n && o.isGlobalContext() ? this._includeType = true : (o = n || o, this._value = new Us(".", o, this._value).set({datatype: this.datatype()}), t.registerSemanticToken(this._token, "accessor"));
      }
      return this;
    };
    he.prototype.js = function(t) {
      if (this._tagref)
        return this._tagref.ref();
      let e = this._variable || this._value;
      if (this._variable && this._variable.declarator() != this) {
        if (O.tsc() && e._typedAlias)
          return e._typedAlias.c();
        let r = this.datatype();
        if (r)
          return r.c() + "(" + this._variable.c() + ")";
      }
      return e.c();
    };
    he.prototype.node = function() {
      return this._variable ? this : this.value();
    };
    he.prototype.datatype = function() {
      return he.prototype.__super__.datatype.apply(this, arguments) || this._identifier.datatype();
    };
    he.prototype.symbol = function() {
      return this._identifier.symbol();
    };
    he.prototype.cache = function(t) {
      return t === void 0 && (t = {}), this._variable ? t.force ? he.prototype.__super__.cache.call(this, t) : this : this.value().cache(t);
    };
    he.prototype.decache = function() {
      return this._variable ? he.prototype.__super__.decache.call(this) : this.value().decache(), this;
    };
    he.prototype.dom = function() {
      return this.value().dom();
    };
    he.prototype.safechain = function() {
      return this._identifier.safechain();
    };
    he.prototype.dump = function() {
      return {loc: this.loc()};
    };
    he.prototype.loc = function() {
      var t = this._identifier.region();
      return t || [0, 0];
    };
    he.prototype.region = function() {
      return this._identifier.region();
    };
    he.prototype.shouldParenthesizeInTernary = function() {
      return this._cache || this._value && this._value._cache || this._parens;
    };
    he.prototype.toString = function() {
      return "VarOrAccess(" + this.value() + ")";
    };
    he.prototype.toJSON = function() {
      return {type: this.typeName(), value: this._identifier.toString()};
    };
    function Oe(t, e) {
      t instanceof he ? (t = t.value(), this._variable = null) : t instanceof Ft && (this._variable = t, t = ""), Oe.prototype.__super__.constructor.call(this, t), this._export = false, this._type = e && String(e), this._declared = true;
    }
    A(Oe, Ut);
    E.VarReference = Oe;
    Oe.prototype.variable = function(t) {
      return this._variable;
    };
    Oe.prototype.setVariable = function(t) {
      return this._variable = t, this;
    };
    Oe.prototype.declared = function(t) {
      return this._declared;
    };
    Oe.prototype.setDeclared = function(t) {
      return this._declared = t, this;
    };
    Oe.prototype.type = function(t) {
      return this._type;
    };
    Oe.prototype.setType = function(t) {
      return this._type = t, this;
    };
    Oe.prototype.datatype = function() {
      return Oe.prototype.__super__.datatype.apply(this, arguments) || (this._value.datatype ? this._value.datatype() : null);
    };
    Oe.prototype.loc = function() {
      return this._value.region();
    };
    Oe.prototype.declare = function() {
      return this;
    };
    Oe.prototype.consume = function(t) {
      return this.forceExpression(), this;
    };
    Oe.prototype.forceExpression = function() {
      if (this._expression != true) {
        this._expression = true;
        for (let t = 0, e = It(this._variables), r = e.length, i; t < r; t++)
          i = e[t], i._type = "let", i._virtual = true, i.autodeclare();
      }
      return this;
    };
    Oe.prototype.visit = function(t, e) {
      var r = this, i = [], s = t;
      let n = r.scope__();
      return r._variables = n.captureVariableDeclarations(function() {
        if (r._value.traverse({declaring: r._type, variables: i}), r._value instanceof At)
          return r._value._variable || (r._value._variable = n.register(r._value.symbol(), r._value, {type: r._type, datatype: r.datatype()})), t.registerSemanticToken(r._value, r._variable);
      }), r;
    };
    Oe.prototype.js = function(t, e) {
      let r = this._value.c(), i = O.tsc() && this.datatype();
      if (this._right) {
        let s = this._right.c({expression: true});
        i && (s = "" + i.c() + "(" + s + ")"), r += " = " + s;
      }
      if (this._expression)
        this._value instanceof ze && (r = "(" + r + ")");
      else {
        if (O.tsc() && this._variables.length > 1 && this._variables.some(function(s) {
          return s.vartype();
        })) {
          let s = this._type, n = "";
          for (let o = 0, a = It(this._variables), l = a.length, p; o < l; o++)
            p = a[o], p.vartype() && (n += p.vartype().c() + " "), n += "" + Tt(s, this._keyword) + " " + p.c() + `;
`;
          return this._value instanceof ze && (r = "(" + r + ")"), n += "" + r, n;
        }
        r = "" + this._type + " " + r, this.option("export") && (r = "" + Tt("export", this.option("export")) + " " + r), !this._right && i && (r = i.c() + " " + r);
      }
      return r;
    };
    function Ve(t, e, r) {
      return this._expression = false, this._traversed = false, this._parens = false, this._cache = null, this._invert = false, this._opToken = t, this._op = t && t._value || t, this._left = e, this._right = r, this;
    }
    A(Ve, re);
    E.Assign = Ve;
    Ve.prototype.isExpressable = function() {
      return !this.right() || this.right().isExpressable();
    };
    Ve.prototype.isUsed = function() {
      return !(this.up() instanceof Lt);
    };
    Ve.prototype.visit = function() {
      var t = this._left, e = this._right;
      t instanceof he && e instanceof he && t._identifier.symbol() == e._identifier.symbol() && (this._left = t = new se(".", this.scope__().context(), t._value)), t instanceof Oe && e instanceof s2 && t.traverse(), e && e.traverse({assignment: true}), t && t.traverse();
      let r = O.up();
      return t instanceof Oe && !(r instanceof Lt) && !(r instanceof Ri) && !(r instanceof fs) && t.forceExpression(), this;
    };
    Ve.prototype.c = function(t) {
      return this.right().isExpressable() ? Ve.prototype.__super__.c.call(this, t) : (this.left() instanceof Oe && (!(this.right() instanceof De) || this._expression) && this.left().forceExpression(), this.right().consume(this).c(t));
    };
    Ve.prototype.js = function(t) {
      var e, r;
      if (!this.right().isExpressable())
        return this.p("Assign#js right is not expressable "), this.left() instanceof Oe && this.left().forceExpression(), this.right().consume(this).c();
      this._expression && this.left().forceExpression();
      var i = this.left().node(), s = this.right();
      if (i instanceof se && i.left() instanceof Xe && (e = O.method()) && e.option("inExtension")) {
        let l = i.right();
        return l instanceof At && (l = l.toStr()), He(J(".", this.scope__().context(), "super$set"), [l, this.right()]).c({expression: true});
      }
      if (i instanceof si) {
        var n = this.scope__().context();
        i = n.reference();
      }
      if (i instanceof Oe)
        return i._right = s, i.c();
      var o = i.c(), a = "" + o + " " + this.op() + " " + this.right().c({expression: true});
      return (r = this.datatype() || i && !(i instanceof Oe) && i.datatype()) && (a = r.c() + " " + a), i instanceof ze && (a = "(" + a + ")"), a;
    };
    Ve.prototype.shouldParenthesize = function(t) {
      return t === void 0 && (t = this.up()), this._parens || t instanceof re && t.op() != "=";
    };
    Ve.prototype.consume = function(t) {
      if (t instanceof Et)
        return this.right() instanceof Et ? (this.right().set({assign: this.left()}), this.right().consume(t)) : this;
      if (t instanceof Qe && this.left() instanceof Oe) {
        if (O.tsc()) {
          let r = this._right, i = this._left._variables, s = i[0] ? new fc(i[0]).consume(t) : t;
          return new Lt([this, Fe, s]);
        }
        this.left().forceExpression();
      }
      if (this.isExpressable())
        return this.forceExpression(), Ve.prototype.__super__.consume.call(this, t);
      var e = this.right().consume(this);
      return e.consume(t);
    };
    function ii() {
      return Ve.apply(this, arguments);
    }
    A(ii, Ve);
    E.PushAssign = ii;
    ii.prototype.consumed = function(t) {
      return this._consumed;
    };
    ii.prototype.setConsumed = function(t) {
      return this._consumed = t, this;
    };
    ii.prototype.register = function(t) {
      return this._consumed || (this._consumed = []), this._consumed.push(t), this;
    };
    ii.prototype.js = function(t) {
      return "" + this.left().c() + ".push(" + this.right().c() + ")";
    };
    ii.prototype.consume = function(t) {
      return this;
    };
    function Ca() {
      return ii.apply(this, arguments);
    }
    A(Ca, ii);
    E.TagPushAssign = Ca;
    Ca.prototype.js = function(t) {
      return "" + this.left().c() + ".push(" + this.right().c() + ")";
    };
    Ca.prototype.consume = function(t) {
      return this;
    };
    function Cs() {
      return Ve.apply(this, arguments);
    }
    A(Cs, Ve);
    E.ConditionalAssign = Cs;
    Cs.prototype.consume = function(t) {
      return this.normalize().consume(t);
    };
    Cs.prototype.normalize = function() {
      var t = this.left().node(), e = t;
      t instanceof se && (t.left() && t.left().cache(), e = t.clone(t.left(), t.right()), t instanceof qi && t.cache(), (t instanceof Oa || t.right() instanceof Pe) && t.right().cache());
      var r = this.right().isExpressable(), i = null;
      return r && this.op() == "||=" ? i = J("||", t, J("=", e, this.right())) : r && this.op() == "&&=" ? i = J("&&", t, J("=", e, this.right())) : (i = J1(this.condition(), J("=", e, this.right()), t), i.setScope(null)), i.isExpressable() && i.toExpression(), i;
    };
    Cs.prototype.c = function() {
      return this.normalize().c();
    };
    Cs.prototype.condition = function() {
      return this.op() == "?=" || this.op() == "??=" ? J("==", this.left(), Gs) : this.op() == "||=" ? J("!", this.left()) : this.op() == "&&=" ? this.left() : this.op() == "!?=" ? J("!=", this.left(), Gs) : this.left();
    };
    Cs.prototype.js = function(t) {
      var e = J1(this.condition(), J("=", this.left(), this.right()), this.left());
      return e.setScope(null), e.isExpressable() && e.toExpression(), e.c();
    };
    function Ls() {
      return Ve.apply(this, arguments);
    }
    A(Ls, Ve);
    E.CompoundAssign = Ls;
    Ls.prototype.consume = function(t) {
      if (this.isExpressable())
        return Ls.prototype.__super__.consume.apply(this, arguments);
      var e = this.normalize();
      return e != this || (e = this.right().consume(this)), e.consume(t);
    };
    Ls.prototype.normalize = function() {
      var t = this.left().node();
      if (!(t instanceof qi))
        return this;
      t.left() && t.left().cache();
      var e = J("=", this.left(), J(this.op()[0], this.left(), this.right()));
      return e.isExpressable() && e.toExpression(), e;
    };
    Ls.prototype.c = function() {
      var t = this.normalize();
      if (t == this)
        return Ls.prototype.__super__.c.apply(this, arguments);
      var e = O.current();
      return e instanceof Lt && e.replace(this, t), t.c();
    };
    function Xi(t) {
      this._value = t;
    }
    A(Xi, Z);
    E.TypeAnnotation = Xi;
    Xi.prototype.add = function(t) {
      return this._parts.push(t);
    };
    Xi.prototype.startLoc = function() {
      return this._value.startLoc() + 1;
    };
    Xi.prototype.endLoc = function() {
      return this._value.endLoc();
    };
    Xi.prototype.asParam = function(t) {
      return "@param {" + this.asRawType() + "} " + t;
    };
    Xi.prototype.asRawType = function() {
      let t = String(this._value).slice(1);
      return t = t.replace(/(^|[\[\,])\<([a-z\-\d]+)\>/g, function(e, r, i) {
        return r + new ce(i).toClassName();
      }), Tt(t, this);
    };
    Xi.prototype.asIteratorValue = function() {
      return console.log("asInteratorValue"), this.wrapDoc(this.asRawType() + "[]");
    };
    Xi.prototype.wrapDoc = function(t) {
      return "/**@type {" + t + "}*/";
    };
    Xi.prototype.c = function() {
      return "/**@type {" + this.asRawType() + "}*/";
    };
    function At(t) {
      t instanceof br && (this._startLoc = t.startLoc()), this._value = this.load(t), this._symbol = null, ("" + t).indexOf("?") >= 0 && (this._safechain = true);
    }
    A(At, Z);
    E.Identifier = At;
    At.prototype.safechain = function(t) {
      return this._safechain;
    };
    At.prototype.setSafechain = function(t) {
      return this._safechain = t, this;
    };
    At.prototype.value = function(t) {
      return this._value;
    };
    At.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    At.prototype.variable = function(t) {
      return this._variable;
    };
    At.prototype.setVariable = function(t) {
      return this._variable = t, this;
    };
    At.prototype.isStatic = function() {
      return true;
    };
    At.prototype.toRaw = function() {
      return this._value._value || this._value;
    };
    At.prototype.add = function(t) {
      return new Pe(this).add(t);
    };
    At.prototype.references = function(t) {
      return this._value && (this._value._variable = t), this._value && O.registerSemanticToken(this._value, t), this;
    };
    At.prototype.load = function(t) {
      return t instanceof At ? t.value() : t;
    };
    At.prototype.traverse = function() {
      return this;
    };
    At.prototype.visit = function() {
      return this._value instanceof Z && this._value.traverse(), this;
    };
    At.prototype.region = function() {
      return [this._value._loc, this._value._loc + this._value._len];
    };
    At.prototype.startLoc = function() {
      return this._value && this._value.startLoc ? this._value.startLoc() : null;
    };
    At.prototype.endLoc = function() {
      return this._value && this._value.endLoc ? this._value.endLoc() : null;
    };
    At.prototype.loc = function() {
      return [this.startLoc(), this.endLoc()];
    };
    At.prototype.isValidIdentifier = function() {
      return be.isValidIdentifier(this.symbol());
    };
    At.prototype.isReserved = function() {
      return this._value.reserved || k_.test(String(this._value));
    };
    At.prototype.isPredicate = function() {
      return /\?$/.test(String(this._value));
    };
    At.prototype.isCapitalized = function() {
      return /^[A-Z]/.test(String(this._value));
    };
    At.prototype.isInternal = function() {
      return /^\$/.test(String(this._value));
    };
    At.prototype.symbol = function() {
      return this._symbol || (this._symbol = Pt.sym(this.value()));
    };
    At.prototype.toString = function() {
      return String(this._value);
    };
    At.prototype.toStr = function() {
      return new de("'" + this.symbol() + "'");
    };
    At.prototype.toAttrString = function() {
      return new de("'" + String(this._value) + "'");
    };
    At.prototype.toJSON = function() {
      return this.toString();
    };
    At.prototype.alias = function() {
      return Pt.sym(this._value);
    };
    At.prototype.js = function(t) {
      return this._variable ? this._variable.c() : this.symbol();
    };
    At.prototype.c = function(t) {
      if (t) {
        if (t.as == "value")
          return "'" + this.symbol() + "'";
        if (t.as == "field" && !this.isValidIdentifier())
          return Tt("['" + this.symbol() + "']", this._token || this._value);
        if (t.as == "key" && !this.isValidIdentifier())
          return "'" + this.symbol() + "'";
      }
      let e = O.current();
      if (e instanceof Ht && !(e instanceof Ht.Iterable))
        return this.toStr().c();
      let r = this.js();
      return ls.sourcemap && (!t || t.mark !== false) && (r = Tt(r, this._token || this._value)), r;
    };
    At.prototype.dump = function() {
      return {loc: this.region()};
    };
    At.prototype.namepath = function() {
      return this.toString();
    };
    At.prototype.shouldParenthesizeInTernary = function() {
      return this._parens || this._cache;
    };
    At.prototype.registerVariable = function(t, e) {
      return e === void 0 && (e = this.scope__()), this._variable = e.register(this.symbol(), this, {type: t}), this.stack().registerSemanticToken(this._value, this._variable), this;
    };
    At.prototype.resolveVariable = function(t) {
      t === void 0 && (t = this.scope__());
      let e = t.lookup(this.symbol());
      return this._variable = e, this.stack().registerSemanticToken(this._value, this._variable), this;
    };
    function a2() {
      return At.apply(this, arguments);
    }
    A(a2, At);
    E.DecoratorIdentifier = a2;
    a2.prototype.symbol = function() {
      return be.toValidIdentifier(String(this._value));
    };
    a2.prototype.toString = function() {
      return this.symbol();
    };
    function ei() {
      return At.apply(this, arguments);
    }
    A(ei, At);
    E.SymbolIdentifier = ei;
    ei.prototype.c = function(t) {
      if (t === void 0 && (t = {}), O.tsc())
        return this.variable().c();
      let e = this.variable().c();
      return t.as == "field" ? "[" + e + "]" : e;
    };
    ei.prototype.variable = function() {
      return this._variable || (this._variable = this.scope__().root().symbolRef(this._value.slice(0)));
    };
    ei.prototype.isConstant = function() {
      return true;
    };
    ei.prototype.asObjectKey = function() {
      return "[" + this.c() + "]";
    };
    ei.prototype.toString = function() {
      return this.c();
    };
    ei.prototype.resolveVariable = function() {
      return this;
    };
    ei.prototype.registerVariable = function() {
      return this;
    };
    function Ci() {
      return At.apply(this, arguments);
    }
    A(Ci, At);
    E.MixinIdentifier = Ci;
    Ci.prototype.symbol = function() {
      return "mixin$" + this._value.slice(1);
    };
    Ci.prototype.traverse = function(t) {
      return this._traversed ? this : (this._variable || this.resolveVariable(), this._traversed = true);
    };
    Ci.prototype.c = function(t) {
      if (t && (t.as == "string" || t.as == "substr")) {
        let s = this.toFlags().map(function(n) {
          return n instanceof Ft ? "${" + n.c() + "}" : n.raw();
        }).join(" ");
        return t.as == "string" ? "`" + s + "`" : s;
      }
      let e = O.current();
      if (e instanceof Ht && !(e instanceof Ht.Iterable))
        return this.toStr().c();
      let r = this.js();
      return ls.sourcemap && (!t || t.mark !== false) && (r = Tt(r, this._token || this._value)), r;
    };
    Ci.prototype.toString = function() {
      return this.symbol();
    };
    Ci.prototype.toFlagName = function() {
      return this.symbol();
    };
    Ci.prototype.toFlags = function() {
      if (this._parts)
        return this._parts;
      this.traverse();
      let t = this._variable, e = [], r = t;
      for (; r; )
        r._declarator instanceof dr ? e.push(Ze(r._declarator._name)) : e.push(r), r = r._parent;
      return this._parts = e;
    };
    function Na() {
      return At.apply(this, arguments);
    }
    A(Na, At);
    E.Private = Na;
    Na.prototype.symbol = function() {
      return this._symbol || (this._symbol = Pt.sym("__" + this.value()));
    };
    Na.prototype.add = function(t) {
      return new Pe(this.value()).add(t).set({prefix: "__", private: true});
    };
    function _c(t) {
      this._value = t instanceof At ? t.value() : t;
    }
    A(_c, Ut);
    E.TagIdRef = _c;
    _c.prototype.js = function() {
      return "" + this.scope__().imba().c() + ".getElementById('" + this.value().c() + "')";
    };
    function Cn(t) {
      this._value = t instanceof At ? t.value() : t;
    }
    A(Cn, At);
    E.Ivar = Cn;
    Cn.prototype.name = function() {
      return be.dashToCamelCase(this._value).replace(/^[\#]/, "");
    };
    Cn.prototype.alias = function() {
      return this.name();
    };
    Cn.prototype.js = function(t) {
      return this.symbol();
    };
    function Io() {
      return Ut.apply(this, arguments);
    }
    A(Io, Ut);
    E.Decorator = Io;
    Io.prototype.name = function() {
      return this._name || (this._name = this._value.js());
    };
    Io.prototype.visit = function() {
      var t;
      if (this._variable = this.scope__().lookup(this.name()), this._value._variable || (this._value._variable = this._variable), this._variable || (this._value = this.runtime()[this.name()]), this._call && this._call.traverse(), this.option("params") && (this._params = this.option("params"), this._params.traverse()), t = this.up())
        return t._decorators || (t._decorators = []), t._decorators.push(this);
    };
    Io.prototype.c = function() {
      if (O.current() instanceof us)
        return;
      let t = this._value.c();
      return this._params ? t += ".bind([" + this._params.c({expression: true}) + "])" : t += ".bind([])", t;
    };
    function Ys() {
      return At.apply(this, arguments);
    }
    A(Ys, At);
    E.Const = Ys;
    Ys.prototype.symbol = function() {
      return this._symbol || (this._symbol = Pt.sym(this.value()));
    };
    Ys.prototype.js = function(t) {
      return this._variable ? this._variable.c() : this.symbol();
    };
    Ys.prototype.traverse = function() {
      if (this._traversed)
        return this;
      this._traversed = true;
      var t = O.current();
      return (!(t instanceof se) || t.left() == this) && (this.symbol() == "Imba" ? this._variable = this.scope__().imba() : this._variable = this.scope__().lookup(this.value())), this;
    };
    Ys.prototype.c = function() {
      return this.option("export") ? "exports." + this._value + " = " + this.js() : Ys.prototype.__super__.c.apply(this, arguments);
    };
    function ce(t) {
      this._token = t, this._value = this.load(t);
    }
    A(ce, At);
    E.TagTypeIdentifier = ce;
    ce.prototype.name = function(t) {
      return this._name;
    };
    ce.prototype.setName = function(t) {
      return this._name = t, this;
    };
    ce.prototype.ns = function(t) {
      return this._ns;
    };
    ce.prototype.setNs = function(t) {
      return this._ns = t, this;
    };
    ce.prototype.startLoc = function() {
      return this._token && this._token.startLoc && this._token.startLoc();
    };
    ce.prototype.endLoc = function() {
      return this._token && this._token.endLoc && this._token.endLoc();
    };
    ce.prototype.toFunctionalType = function() {
      let t = new At(this._token);
      return this.isClass() || (t = new he(t)), t;
    };
    ce.prototype.load = function(t) {
      this._str = "" + t;
      var e = this._str.split(":");
      return this._raw = t, this._name = e.pop(), this._ns = e.shift(), this._str;
    };
    ce.prototype.traverse = function(t) {
      return this._traversed ? this : (this._traversed = true, this.isClass() && (t && t.declaring ? (this.registerVariable("const", t.declscope || O.scope()), this._variable && this._variable.setValue(t.declaring)) : this.resolveVariable()), this);
    };
    ce.prototype.js = function(t) {
      return "'" + this.toNodeName() + "'";
    };
    ce.prototype.c = function() {
      return this.js();
    };
    ce.prototype.func = function() {
      var t = this._name.replace(/-/g, "_").replace(/\#/, "");
      return this._ns && (t += "$" + this._ns.toLowerCase()), t;
    };
    ce.prototype.nativeCreateNode = function() {
      let t = this.scope__().root().document().c();
      return this.isSVG() ? He(Rt("" + t + ".createElementNS"), [Ze("http://www.w3.org/2000/svg"), Ze(this.name())]) : He(Rt("" + t + ".createElement"), [Ze(this.name())]);
    };
    ce.prototype.isClass = function() {
      return !!this._str.match(/^[A-Z]/);
    };
    ce.prototype.isLowerCase = function() {
      return !this._name.match(/^[A-Z]/);
    };
    ce.prototype.isNative = function() {
      return !this._ns && ya.HTML.indexOf(this._str) >= 0;
    };
    ce.prototype.isNativeHTML = function() {
      return (!this._ns || this._ns == "html") && ya.HTML.indexOf(this._name) >= 0;
    };
    ce.prototype.isNativeSVG = function() {
      return this._ns == "svg" && ya.SVG.indexOf(this._str) >= 0;
    };
    ce.prototype.isSVG = function() {
      return this._ns == "svg" || !this.isNative() && !this._ns && r3["svg_" + this._str];
    };
    ce.prototype.isAsset = function() {
      return false;
    };
    ce.prototype.toAssetName = function() {
      return this.isAsset() ? this._str : null;
    };
    ce.prototype.symbol = function() {
      return this._str;
    };
    ce.prototype.isCustom = function() {
      return !this.isNative() && !this.isNativeSVG();
    };
    ce.prototype.isComponent = function() {
      return !this.isNative() && !this.isNativeSVG();
    };
    ce.prototype.toSelector = function() {
      return this.toNodeName();
    };
    ce.prototype.resolveVariable = function(t) {
      t === void 0 && (t = this.scope__());
      let e = this.scope__().lookup(this._str);
      return (this._variable = e) && this.stack().registerSemanticToken(this._value, this._variable), this;
    };
    ce.prototype.toVarPrefix = function() {
      return this._str.replace(/[\:\-]/g, "");
    };
    ce.prototype.toClassName = function() {
      let t = this._str;
      if (t == "element")
        return "Element";
      if (t == "component")
        return "imba.Component";
      if (t == "svg:element")
        return "SVGElement";
      if (t == "htmlelement")
        return "HTMLElement";
      if (t == "fragment")
        return "DocumentFragment";
      let e = r3[this.isSVG() ? "svg_" + this._name : this._name];
      return e ? e.name : this._str == "fragment" ? "DocumentFragment" : this.isClass() ? this._str : O.tsc() ? "\u0393" + be.toValidIdentifier(this._str) : be.pascalCase(this._str + "-component");
    };
    ce.prototype.toTscName = function() {
      return this._str.replace(/\-/g, "_") + "$$TAG$$";
    };
    ce.prototype.sourceId = function() {
      return this._sourceId || (this._sourceId = O.sourceId() + "-" + O.generateId("tag"));
    };
    ce.prototype.toNodeName = function() {
      return this.isClass() ? this._nodeName || (this._nodeName = be.dasherize(this._str + "-" + this.sourceId())) : this._str;
    };
    ce.prototype.toTypeArgument = function() {
      return this._variable ? this._variable.c() : this.name();
    };
    ce.prototype.id = function() {
      var t = this._str.match(/\#([\w\-\d\_]+)\b/);
      return t ? t[1] : null;
    };
    ce.prototype.flag = function() {
      return "_" + this.name().replace(/--/g, "_").toLowerCase();
    };
    ce.prototype.sel = function() {
      return "." + this.flag();
    };
    ce.prototype.string = function() {
      return this.value();
    };
    ce.prototype.toString = function() {
      return this.value();
    };
    function o2() {
      return Ut.apply(this, arguments);
    }
    A(o2, Ut);
    E.InterpolatedIdentifier = o2;
    o2.prototype.js = function() {
      return "[" + this.value().c() + "]";
    };
    function dc() {
      return Ut.apply(this, arguments);
    }
    A(dc, Ut);
    E.Argvar = dc;
    dc.prototype.c = function() {
      var t = parseInt(String(this.value())), e = "arguments";
      if (t > 0) {
        var r = this.scope__(), i = r.params().at(t - 1, true);
        e = "" + Pt.c(i.name());
      }
      return Tt(e, this._token || this._value);
    };
    function mc() {
      return Z.apply(this, arguments);
    }
    A(mc, Z);
    E.DoPlaceholder = mc;
    function Ks(t, e) {
      this._value = t, this._string = e;
    }
    A(Ks, Z);
    E.TaggedTemplate = Ks;
    Ks.prototype.value = function(t) {
      return this._value;
    };
    Ks.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    Ks.prototype.string = function(t) {
      return this._string;
    };
    Ks.prototype.setString = function(t) {
      return this._string = t, this;
    };
    Ks.prototype.visit = function() {
      return this._value instanceof Z && this._value.traverse(), this._string.traverse(), this._string.isTemplate() || this._string.warn("Only `` strings allowed in template literals"), this;
    };
    Ks.prototype.js = function() {
      return this._value.c() + this._string.c({as: "template"});
    };
    function ke(t, e, r) {
      if (this._traversed = false, this._expression = false, this._parens = false, this._cache = null, this._receiver = null, this._opexists = r, t instanceof qs && (t = t._callee), t instanceof Xe)
        return t.setArgs(this instanceof qs ? [] : e), t;
      if (t instanceof he) {
        var i = t.value().symbol();
        if (i == "new" && console.log("calling"), i == "extern")
          return t.value().value()._type = "EXTERN", new La(e);
        if (i == "tag")
          return new Da(e && e.index ? e.index(0) : e[0]);
        if (i == "export")
          return new Ri(e);
      }
      return this._callee = t, this._args = e || new ar([]), e instanceof Array && (this._args = new ar(e)), t instanceof Io ? (t._call = this, t) : this;
    }
    A(ke, Z);
    E.Call = ke;
    ke.prototype.callee = function(t) {
      return this._callee;
    };
    ke.prototype.setCallee = function(t) {
      return this._callee = t, this;
    };
    ke.prototype.receiver = function(t) {
      return this._receiver;
    };
    ke.prototype.setReceiver = function(t) {
      return this._receiver = t, this;
    };
    ke.prototype.args = function(t) {
      return this._args;
    };
    ke.prototype.setArgs = function(t) {
      return this._args = t, this;
    };
    ke.prototype.block = function(t) {
      return this._block;
    };
    ke.prototype.setBlock = function(t) {
      return this._block = t, this;
    };
    ke.prototype.loc = function() {
      return this._callee.loc();
    };
    ke.prototype.visit = function() {
      this.args().traverse(), this.callee().traverse();
      let t = this.callee().isRuntimeReference();
      if (this.callee() instanceof se && this.callee().left().isGlobal("import")) {
        let e = this.args().first(), r = this.callee().right().toString();
        if (this.setCallee(this.runtime().asset), e instanceof de) {
          let i = O.root().registerAsset(e.raw(), "" + r, this);
          this.args().replace(e, i.ref);
        }
      } else if (this.callee().isGlobal("import")) {
        let e = this.args().first(), r = e instanceof de && e.raw();
        if (r) {
          let i = r.split(".").pop();
          (m_[i] || r.indexOf("?as=") >= 0) && (this._asset = O.root().registerAsset(r, "", this), this.args().replace(e, this._asset.ref));
        }
      } else if (this.callee().isGlobal("require")) {
        let e = this.args().first();
        e instanceof de && e.raw() && this.args().replace(e, Rt(xo(e.c())));
      }
      if (t == "asset") {
        let e = this.args().first();
        if (e instanceof de) {
          let r = O.root().registerAsset(e.raw(), "asset", this);
          this.args().replace(e, r.ref);
        }
      }
      if (this._block && this._block.traverse(), this instanceof qs && this._args.count() == 0 && this.option("keyword")) {
        let e = this.option("keyword");
        this._args.setEnds(e, e);
      }
      return this;
    };
    ke.prototype.addBlock = function(t) {
      var e = this._args.filter(function(r, i) {
        return r instanceof mc;
      })[0];
      return e ? this.args().replace(e, t) : this.args().push(t), this;
    };
    ke.prototype.receiver = function() {
      return this._receiver || (this._receiver = this.callee() instanceof se && this.callee().left() || Gs);
    };
    ke.prototype.safechain = function() {
      return this.callee().safechain();
    };
    ke.prototype.shouldParenthesizeInTernary = function() {
      return this._parens || this.safechain() || this._cache;
    };
    ke.prototype.startLoc = function() {
      return this._startLoc || this._callee && this._callee.startLoc ? this._callee.startLoc() : 0;
    };
    ke.prototype.endLoc = function() {
      return this._endLoc || this._args && this._args.endLoc() || this._callee.endLoc();
    };
    ke.prototype.js = function(t) {
      var e;
      if (this._asset)
        return this._asset.ref.c();
      var r = {expression: true}, i = null, s = this.args(), n = s.some(function(f) {
        return f instanceof An;
      }), o = null, a = null, l = null, p = null, c = this._callee = this._callee.node();
      c instanceof se && (a = c.left(), l = c.right()), c instanceof Xe && (e = O.method()) && e.option("inExtension") && (c = J(".", c, e.name()), this._receiver = this.scope__().context()), c instanceof qi && (this._receiver = c.receiver(), c = this._callee = new se(c.op(), c.left(), c.right())), l instanceof At && l.value() == "assert";
      let _ = "";
      if (c instanceof se && c.op() == "?." && (_ = "?."), this._receiver)
        this._receiver instanceof rr || this._receiver.cache(), s.unshift(this.receiver()), o = "" + c.c({expression: true}) + ".call(" + s.c({expression: true, mark: false}) + ")";
      else {
        let f = "(" + s.c({expression: true, mark: false}) + ")";
        o = "" + c.c({expression: true}) + _ + Tt(f, this._args);
      }
      return p && (this._cache && (this._cache.manual = true, o = "(" + this.cachevar().c() + "=" + o + ")"), o = [p[0], o, p[1]].join("")), o;
    };
    function qs() {
      return ke.apply(this, arguments);
    }
    A(qs, ke);
    E.BangCall = qs;
    function Ea() {
      return Ut.apply(this, arguments);
    }
    A(Ea, Ut);
    E.Instantiation = Ea;
    Ea.for = function(t, e) {
      return t instanceof ne ? t.set({unmemoized: e}) : new this(t).set({keyword: e});
    };
    Ea.prototype.js = function(t) {
      return "" + Tt("new", this.keyword()) + " " + this.value().c();
    };
    function Xs() {
      return ke.apply(this, arguments);
    }
    A(Xs, ke);
    E.New = Xs;
    Xs.prototype.visit = function() {
      return this.keyword().warn("Value.new is deprecated - use new Value"), Xs.prototype.__super__.visit.apply(this, arguments);
    };
    Xs.prototype.endLoc = function() {
      return this.keyword() && this.keyword().endLoc() || Xs.prototype.__super__.endLoc.apply(this, arguments);
    };
    Xs.prototype.startLoc = function() {
      return null;
    };
    Xs.prototype.js = function(t) {
      for (var e = this.callee(); e instanceof se; ) {
        let i = e.left();
        if (i instanceof qi || i instanceof he) {
          this.callee()._parens = true;
          break;
        }
        e = i;
      }
      var r = "" + Tt("new", this.keyword()) + " " + Tt(this.callee().c(), this.callee());
      return t.parent() instanceof ke || t.parent() instanceof qs || (r += "()"), r;
    };
    function La() {
      return jt.apply(this, arguments);
    }
    A(La, jt);
    E.ExternDeclaration = La;
    La.prototype.visit = function() {
      this.setNodes(this.map(function(r) {
        return r.node();
      }));
      var t = this.scope__();
      for (let r = 0, i = It(this.nodes()), s = i.length, n; r < s; r++) {
        n = i[r];
        var e = t.register(n.symbol(), n, {type: "global"});
        e.addReference(n);
      }
      return this;
    };
    La.prototype.c = function() {
      return "// externs";
    };
    function Ro() {
      return Z.apply(this, arguments);
    }
    A(Ro, Z);
    E.ControlFlow = Ro;
    Ro.prototype.loc = function() {
      return this._body ? this._body.loc() : [0, 0];
    };
    function Ws() {
      return Ro.apply(this, arguments);
    }
    A(Ws, Ro);
    E.ControlFlowStatement = Ws;
    Ws.prototype.isExpressable = function() {
      return false;
    };
    function pe(t, e, r) {
      r === void 0 && (r = {}), this.setup(), this._test = t, this._body = e, this._alt = null, this._type = r.type, this._type == "unless" && this.invert(), this._scope = new yc(this);
    }
    A(pe, Ro);
    E.If = pe;
    pe.prototype.test = function(t) {
      return this._test;
    };
    pe.prototype.setTest = function(t) {
      return this._test = t, this;
    };
    pe.prototype.body = function(t) {
      return this._body;
    };
    pe.prototype.setBody = function(t) {
      return this._body = t, this;
    };
    pe.prototype.alt = function(t) {
      return this._alt;
    };
    pe.prototype.setAlt = function(t) {
      return this._alt = t, this;
    };
    pe.prototype.scope = function(t) {
      return this._scope;
    };
    pe.prototype.setScope = function(t) {
      return this._scope = t, this;
    };
    pe.prototype.prevIf = function(t) {
      return this._prevIf;
    };
    pe.prototype.setPrevIf = function(t) {
      return this._prevIf = t, this;
    };
    pe.ternary = function(t, e, r) {
      var i = new pe(t, new Lt([e]), {type: "?"});
      return i.addElse(new Lt([r])), i;
    };
    pe.prototype.addElse = function(t) {
      return this.alt() && this.alt() instanceof pe ? this.alt().addElse(t) : (this.setAlt(t), t instanceof pe && t.setPrevIf(this)), this;
    };
    pe.prototype.loc = function() {
      return this._loc || (this._loc = [this._type ? this._type._loc : 0, this.body().loc()[1]]);
    };
    pe.prototype.invert = function() {
      return this._test instanceof os ? this._test = this._test.invert() : this._test = new ti("!", this._test, null);
    };
    pe.prototype.visit = function(t) {
      var e = this.alt(), r = this._scope;
      r && r.visit(), this.test() && (this._scope = null, this.test().traverse(), this._scope = r), this._tag = t._tag;
      for (let i = this._scope.varmap(), s, n = 0, o = Object.keys(i), a = o.length, l; n < a; n++)
        l = o[n], s = i[l], s.type() == "let" && (s._virtual = true, s.autodeclare());
      return !t.isAnalyzing() && !t.tsc() && (this._pretest = Pt.truthy(this.test()), this._pretest === true ? (e = this._alt = null, this.test() instanceof Js && (this._preunwrap = true)) : this._pretest === false && (this.loc(), this.setBody(null))), this.body() && this.body().traverse(), e && (O.pop(this), e._scope || (e._scope = new Fa(e)), e.traverse(), O.push(this)), this._type == "?" && this.isExpressable() && this.toExpression(), this;
    };
    pe.prototype.js = function(t) {
      var e, r, i = this.body(), s = {braces: true, indent: true};
      if (this._pretest === true && this._preunwrap) {
        let p = i ? i.c({braces: !!this.prevIf()}) : "true";
        return this.prevIf() || (p = be.normalizeIndentation(p)), t.isExpression() && (p = "(" + p + ")"), p;
      } else
        this._pretest;
      if (t.isExpression()) {
        (r = this.test()) && r.shouldParenthesizeInTernary && r.shouldParenthesizeInTernary() && (this.test()._parens = true);
        var n = this.test().c({expression: true}), o = i ? i.c() : "true";
        if (i && i.shouldParenthesizeInTernary() && (o = "(" + o + ")"), this.alt()) {
          var a = this.alt().c();
          return this.alt().shouldParenthesizeInTernary() && (a = "(" + a + ")"), "" + n + " ? " + o + " : " + a;
        } else
          return this._tag ? "" + n + " ? " + o + " : void(0)" : "" + n + " && " + o;
      } else {
        o = null, n = this.test().c({expression: true}), i instanceof Lt && i.count() == 1 && !(i.first() instanceof Rr) && (i = i.first()), o = i ? i.c({braces: true}) : "{}";
        var l = "" + Tt("if", this._type) + " (" + n + ") " + o;
        return this.alt() && (l += " else " + this.alt().c(this.alt() instanceof pe ? {} : s)), l;
      }
    };
    pe.prototype.shouldParenthesize = function() {
      return !!this._parens;
    };
    pe.prototype.consume = function(t) {
      if (t instanceof Et) {
        if (t.flag(Se.TAG_HAS_BRANCHES), t.body() == this) {
          let r = this._body ? [this._body] : [], i = this._alt;
          for (; i instanceof pe; )
            i._body && r.push(i._body), i = i._alt;
          i && r.push(i);
          for (let s = 0, n = It(r), o = n.length; s < o; s++)
            t._branches.push([]), n[s].consume(t);
          return this;
        }
        return t instanceof Nr ? (this._body && (this._body = this._body.consume(t)), this._alt && (this._alt = this._alt.consume(t)), this) : t.register(this);
      }
      if (t instanceof Ca || t instanceof gc)
        return t.register(this), this._body && (this._body = this._body.consume(t)), this._alt && (this._alt = this._alt.consume(t)), this;
      var e = t instanceof Qe;
      return this._expression || (!e || this._type == "?") && this.isExpressable() ? (this.toExpression(), pe.prototype.__super__.consume.call(this, t)) : (this._body && (this._body = this._body.consume(t)), this._alt && (this._alt = this._alt.consume(t)), this);
    };
    pe.prototype.isExpressable = function() {
      var t = (!this.body() || this.body().isExpressable()) && (!this.alt() || this.alt().isExpressable());
      return t;
    };
    function De(t) {
      t === void 0 && (t = {}), this._traversed = false, this._options = t, this._body = null;
    }
    A(De, Pi);
    E.Loop = De;
    De.prototype.scope = function(t) {
      return this._scope;
    };
    De.prototype.setScope = function(t) {
      return this._scope = t, this;
    };
    De.prototype.options = function(t) {
      return this._options;
    };
    De.prototype.setOptions = function(t) {
      return this._options = t, this;
    };
    De.prototype.body = function(t) {
      return this._body;
    };
    De.prototype.setBody = function(t) {
      return this._body = t, this;
    };
    De.prototype.catcher = function(t) {
      return this._catcher;
    };
    De.prototype.setCatcher = function(t) {
      return this._catcher = t, this;
    };
    De.prototype.elseBody = function(t) {
      return this._elseBody;
    };
    De.prototype.setElseBody = function(t) {
      return this._elseBody = t, this;
    };
    De.prototype.loc = function() {
      var t = this._options.keyword, e = this._body;
      return t && e ? [t._loc, e.loc()[1]] : [0, 0];
    };
    De.prototype.set = function(t) {
      this._options || (this._options = {});
      var e = Object.keys(t);
      for (let r = 0, i = It(e), s = i.length, n; r < s; r++)
        n = i[r], this._options[n] = t[n];
      return this;
    };
    De.prototype.addBody = function(t) {
      return this.setBody(Pt.blk(t)), this;
    };
    De.prototype.addElse = function(t) {
      return this.setElseBody(t), this;
    };
    De.prototype.isReactive = function() {
      return this._tag && this._tag.fragment().isReactive();
    };
    De.prototype.isStatementLike = function() {
      return true;
    };
    De.prototype.c = function(t) {
      var e = this.stack(), r = e.current();
      if (this.stack().isExpression() || this.isExpression()) {
        this.scope().closeScope();
        var i = He(js([], [this]), []);
        return i.c(t);
      } else
        return this.stack().current() instanceof Lt || e.up() instanceof Lt && e.current()._consumer == this ? De.prototype.__super__.c.call(this, t) : this._tag ? De.prototype.__super__.c.call(this, 0) : (this.scope().closeScope(), i = He(js([], [this]), []), i.c(t));
    };
    function _s(t, e) {
      this._traversed = false, this._test = t, this._options = e || {}, this._scope = new l2(this), this.option("invert") && (this._test = t.invert());
    }
    A(_s, De);
    E.While = _s;
    _s.prototype.test = function(t) {
      return this._test;
    };
    _s.prototype.setTest = function(t) {
      return this._test = t, this;
    };
    _s.prototype.visit = function() {
      if (this.scope().visit(), this.test() && this.test().traverse(), this.body())
        return this.body().traverse();
    };
    _s.prototype.loc = function() {
      var t = this._options;
      return be.unionOfLocations(t.keyword, this._body, t.guard, this._test);
    };
    _s.prototype.consume = function(t) {
      if (this.isExpressable())
        return _s.prototype.__super__.consume.apply(this, arguments);
      var e = false, r = this.scope().declare("res", new je([]), {system: true});
      this._catcher = new ii("push", r, null), this.body().consume(this._catcher);
      var i = new Lt([this, r.accessor()]);
      return i.consume(t);
    };
    _s.prototype.js = function(t) {
      var e = "while (" + this.test().c({expression: true}) + ")" + this.body().c({braces: true, indent: true});
      return this.scope().vars().count() > 0 && (e = this.scope().vars().c() + ";" + e), e;
    };
    function ni(t) {
      t === void 0 && (t = {}), this._traversed = false, this._options = t, this._scope = new c2(this), this._catcher = null;
    }
    A(ni, De);
    E.For = ni;
    ni.prototype.loc = function() {
      var t = this._options;
      return be.unionOfLocations(t.keyword, this._body, t.guard, t.step, t.source);
    };
    ni.prototype.ref = function() {
      return this._ref || "" + this._tag.fragment().cvar() + "." + this.oid();
    };
    ni.prototype.visit = function(t) {
      this.scope().visit();
      var e = t._tag;
      if (this.options().source.traverse(), this.options().guard) {
        var r = J1(this.options().guard.invert(), Lt.wrap([new e2("continue")]));
        this.body().unshift(r, Fe);
      }
      if (this.declare(), this.options().await) {
        var i = t.up(ie);
        i && (this.set({native: true}), i.set({async: true}));
      }
      return e && (this._tag = e, t._tag = this, this._level = (this._tag && this._tag._level || 0) + 1), this.body().traverse(), t._tag = e, this;
    };
    ni.prototype.isBare = function(t) {
      return t && t._variable && t._variable._isArray;
    };
    ni.prototype.declare = function() {
      var t = this.options(), e = this.scope(), r = t.source, i = t.vars = {}, s = t.index, n = t.params, o = this.isBare(r);
      if (r instanceof Sn) {
        let a = r.left(), l = r.right(), p = !(a instanceof Ie) || !(l instanceof Ie);
        l instanceof Ie ? i.len = l : i.len = e.declare("len", l, {type: "let"}), i.value = e.declare(t.name, a, {type: "let"}), t.name && i.value.addReference(t.name), t.index ? (i.index = e.declare(t.index, 0, {type: "let"}), i.index.addReference(t.index)) : i.index = i.value, p && (i.diff = e.declare("rd", J("-", i.len, i.value), {type: "let"}));
      } else {
        if (s ? i.index = e.declare(s, 0, {type: "let"}) : i.index = e.declare("i", new Ie(0), {system: true, type: "let", pool: "counter"}), i.source = o ? r : e.declare("items", this.util().iterable(r), {system: true, type: "let", pool: "iter"}), n[2] ? i.len = e.declare(n[2], this.util().len(i.source), {type: "let"}) : i.len = e.declare("len", this.util().len(i.source), {type: "let", pool: "len", system: true}), t.name) {
          let a = J(".", i.source, i.index).set({datatype: t.name.datatype()});
          t.name.set({datatype: void 0});
          let l = new Ke(t.name, a, "let");
          this.body().unshift(l, Fe);
        }
        s && i.index.addReference(s);
      }
      return this;
    };
    ni.prototype.consume = function(t) {
      if (t instanceof Et)
        return t.register(this);
      if (this.isExpressable())
        return ni.prototype.__super__.consume.apply(this, arguments);
      if (this._resvar) {
        var e = new Lt([this, Fe, this._resvar.accessor()]);
        return e.consume(t), e;
      }
      var r = null, i = false, s = null;
      r = this._resvar || (this._resvar = this.scope().register("res", null, {system: true, type: "var"})), this._catcher = new ii("push", r, null);
      let n = new je([]);
      if (this.body().consume(this._catcher), r.autodeclare(), t instanceof Ke || t instanceof Ve)
        return t.setRight(r.accessor()), new Lt([J("=", r, n), Fe, this, Fe, t]);
      if (t) {
        let o = [J("=", r, n), Fe, this, Fe, r.accessor().consume(t)];
        return new Lt(o);
      }
      return this;
    };
    ni.prototype.js = function(t) {
      var e = this.options().vars, r = e.index, i = e.value, s = this.options().source, n, o;
      if (s instanceof Sn) {
        let _ = s.left(), f = s.right(), m = s.inclusive();
        n = J(m ? "<=" : "<", i, e.len), o = J("++", i), e.diff && (n = pe.ternary(J(">", e.diff, new Ie(0)), n, J(m ? ">=" : ">", i, e.len)), o = pe.ternary(J(">", e.diff, new Ie(0)), J("++", i), J("--", i))), r && r != i && (o = new Sa([o, J("++", r)]));
      } else
        n = J("<", r, e.len), this.options().step ? o = J("=", r, J("+", r, this.options().step)) : o = J("++", r);
      var a = "", l = "", p = this.body().c({braces: true, indent: true}), c = "" + Tt("for", this.keyword()) + " (" + this.scope().vars().c() + "; " + n.c({expression: true}) + "; " + o.c({expression: true}) + ") ";
      return a + c + p + l;
    };
    function _3() {
      return ni.apply(this, arguments);
    }
    A(_3, ni);
    E.ForIn = _3;
    function Fn() {
      return ni.apply(this, arguments);
    }
    A(Fn, ni);
    E.ForOf = Fn;
    Fn.prototype.source = function(t) {
      return this._source;
    };
    Fn.prototype.setSource = function(t) {
      return this._source = t, this;
    };
    Fn.prototype.declare = function() {
      var t = this, e = t.options(), r = e.vars = {}, i = e.params, s, n;
      if (e.own) {
        r.source = e.source._variable || t.scope().declare("o", e.source, {system: true, type: "let"}), e.value = e.index;
        var o = r.index = t.scope().declare("i", new Ie(0), {system: true, type: "let", pool: "counter"}), a = r.keys = t.scope().declare("keys", Ht.keys(r.source.accessor()), {system: true, type: "let"}), l = r.len = t.scope().declare("l", Ht.len(a.accessor()), {system: true, type: "let"});
        s = r.key = t.scope().declare(e.name, null, {type: "let"}), e.value instanceof ze || e.value instanceof je ? (t.body().unshift(new Ke(e.value, J(".", r.source, s), "let"), Fe), r.value = null) : e.value && (n = r.value = t.scope().declare(e.value, null, {let: true, type: "let"}));
      } else {
        t.setSource(r.source = O.tsc() ? e.source : t.util().iterable(e.source)), r.value = e.value = e.name;
        let p = t.scope__().captureVariableDeclarations(function() {
          var c;
          if (e.value.traverse({declaring: "let"}), e.value instanceof At)
            return (c = e.value)._variable || (c._variable = t.scope__().register(e.value.symbol(), e.value, {type: "let"})), O.registerSemanticToken(e.value);
        });
        t._declvars = p, e.index && (r.counter = t.scope().parent().temporary(null, {}, "" + e.index + "$"), t.body().unshift(new Ke(e.index, J("++", r.counter), "let"), Fe)), i[2] && i[2].warn("Length parameter only allowed on for-in loops");
      }
      return n && e.index && n.addReference(e.index), s && e.name && s.addReference(e.name), t;
    };
    Fn.prototype.js = function(t) {
      var e = this.options().vars, r = this.options().source, i = e.source, s = e.key, n = e.value, o = e.index, a;
      if (this.options().own) {
        n && n.refcount() > 0 && this.body().unshift(J("=", n, J(".", i, s))), this.body().unshift(J("=", s, J(".", e.keys, o))), a = this.body().c({indent: true, braces: true});
        var l = "" + Tt("for", this.keyword()) + " (" + this.scope().vars().c() + "; " + J("<", o, e.len).c() + "; " + J("++", o).c() + ")";
        return l + a;
      } else {
        if (O.tsc()) {
          for (let _ = 0, f = It(this._declvars), m = f.length, g; _ < m; _++)
            if (g = f[_], g.vartype()) {
              let b = g.c(), N = g._declarator, y = Rt("let " + Tt(g.typedAlias().c(), N) + " = " + g.vartype().c() + "(" + b + ")");
              this.body().unshift(y);
            }
        }
        a = this.scope().c({braces: true, indent: true});
        let p = i.c({expression: true}), c = "(let " + n.c() + " of " + p + ")" + a;
        return this.options().await && (c = "" + Tt("await", this.options().await) + " " + c), c = "" + Tt("for", this.keyword()) + " " + c, e.counter && (c = "" + e.counter + " = 0; " + c), c;
      }
    };
    Fn.prototype.head = function() {
      var t = this.options().vars;
      return [J("=", t.key, J(".", t.keys, t.index)), t.value && J("=", t.value, J(".", t.source, t.key))];
    };
    function vc(t) {
      this._nodes = Pt.blk(t).nodes();
    }
    A(vc, Lt);
    E.Begin = vc;
    vc.prototype.shouldParenthesize = function() {
      return this.isExpression();
    };
    function oi(t, e, r) {
      this._traversed = false, this._source = t, this._cases = e, this._fallback = r;
    }
    A(oi, Ws);
    E.Switch = oi;
    oi.prototype.source = function(t) {
      return this._source;
    };
    oi.prototype.setSource = function(t) {
      return this._source = t, this;
    };
    oi.prototype.cases = function(t) {
      return this._cases;
    };
    oi.prototype.setCases = function(t) {
      return this._cases = t, this;
    };
    oi.prototype.fallback = function(t) {
      return this._fallback;
    };
    oi.prototype.setFallback = function(t) {
      return this._fallback = t, this;
    };
    oi.prototype.visit = function() {
      for (let t = 0, e = It(this.cases()), r = e.length; t < r; t++)
        e[t].traverse();
      this.fallback() && this.fallback().traverse(), this.source() && this.source().traverse();
    };
    oi.prototype.consume = function(t) {
      if (t instanceof Et) {
        if (t.body() == this) {
          let e = this._cases.slice(0).concat([this._fallback]);
          for (let r = 0, i = It(e), s = i.length, n; r < s; r++)
            n = i[r], !!n && (t._branches.push([]), n.consume(t));
          return this;
        }
        return t.register(this);
      }
      return this._cases = this._cases.map(function(e) {
        return e.consume(t);
      }), this._fallback && (this._fallback = this._fallback.consume(t)), this;
    };
    oi.prototype.c = function(t) {
      if (this.stack().isExpression() || this.isExpression()) {
        var e = He(js([], [this]), []);
        return e.c(t);
      }
      return oi.prototype.__super__.c.call(this, t);
    };
    oi.prototype.js = function(t) {
      var e = [];
      for (let r = 0, i = It(this.cases()), s = i.length, n; r < s; r++)
        n = i[r], n.autobreak(), e.push(n);
      return this.fallback() && e.push(`default:
` + this.fallback().c({indent: true})), "switch (" + this.source().c() + ") " + be.bracketize(Pt.cary(e).join(`
`), true);
    };
    function Wi(t, e) {
      this._traversed = false, this._test = t, this._body = Pt.blk(e), this._scope = new Fa(this);
    }
    A(Wi, Ws);
    E.SwitchCase = Wi;
    Wi.prototype.test = function(t) {
      return this._test;
    };
    Wi.prototype.setTest = function(t) {
      return this._test = t, this;
    };
    Wi.prototype.body = function(t) {
      return this._body;
    };
    Wi.prototype.setBody = function(t) {
      return this._body = t, this;
    };
    Wi.prototype.visit = function() {
      return this.scope__().visit(), this.body().traverse();
    };
    Wi.prototype.consume = function(t) {
      return this.body().consume(t), this;
    };
    Wi.prototype.autobreak = function() {
      return this.body().last() instanceof Ta || this.body().push(new Ta()), this;
    };
    Wi.prototype.js = function(t) {
      this._test instanceof Array || (this._test = [this._test]);
      var e = this._test.map(function(r) {
        return "case " + r.c() + ": ";
      });
      return e.join(`
`) + this.body().c({indent: true, braces: true});
    };
    function Pn(t, e, r) {
      this._traversed = false, this._body = Pt.blk(t), this._catch = e, this._finally = r;
    }
    A(Pn, Ws);
    E.Try = Pn;
    Pn.prototype.body = function(t) {
      return this._body;
    };
    Pn.prototype.setBody = function(t) {
      return this._body = t, this;
    };
    Pn.prototype.consume = function(t) {
      return this._body = this._body.consume(t), this._catch && (this._catch = this._catch.consume(t)), this._finally && (this._finally = this._finally.consume(t)), this;
    };
    Pn.prototype.visit = function() {
      if (this._body.traverse(), this._catch && this._catch.traverse(), this._finally)
        return this._finally.traverse();
    };
    Pn.prototype.js = function(t) {
      var e = "try " + this.body().c({braces: true, indent: true});
      return this._catch && (e += " " + this._catch.c()), this._finally && (e += " " + this._finally.c()), this._catch || this._finally || (e += " catch (e) { }"), e += ";", e;
    };
    function Mn(t, e) {
      this._traversed = false, this._body = Pt.blk(t || []), this._scope = new bc(this), this._varname = e;
    }
    A(Mn, Ws);
    E.Catch = Mn;
    Mn.prototype.body = function(t) {
      return this._body;
    };
    Mn.prototype.setBody = function(t) {
      return this._body = t, this;
    };
    Mn.prototype.consume = function(t) {
      return this._body = this._body.consume(t), this;
    };
    Mn.prototype.visit = function() {
      return this._scope.visit(), this._variable = this._scope.register(this._varname, this, {type: "let", pool: "catchvar"}), this._body.traverse();
    };
    Mn.prototype.js = function(t) {
      return "catch (" + this._variable.c() + ") " + this._body.c({braces: true, indent: true});
    };
    function Pa(t) {
      this._traversed = false, this._body = Pt.blk(t || []);
    }
    A(Pa, Ws);
    E.Finally = Pa;
    Pa.prototype.visit = function() {
      return this._body.traverse();
    };
    Pa.prototype.consume = function(t) {
      return this;
    };
    Pa.prototype.js = function(t) {
      return "finally " + this._body.c({braces: true, indent: true});
    };
    function Sn() {
      return re.apply(this, arguments);
    }
    A(Sn, re);
    E.Range = Sn;
    Sn.prototype.inclusive = function() {
      return this.op() == "..";
    };
    Sn.prototype.c = function() {
      return "range";
    };
    function An() {
      return Ut.apply(this, arguments);
    }
    A(An, Ut);
    E.Splat = An;
    An.prototype.js = function(t) {
      return "..." + this.value().c();
      var e;
    };
    An.prototype.node = function() {
      return this.value();
    };
    function Pe(t) {
      Pe.prototype.__super__.constructor.apply(this, arguments), this._static = true, this._nodes = [this._single = t];
    }
    A(Pe, Z);
    E.IdentifierExpression = Pe;
    Pe.prototype.single = function(t) {
      return this._single;
    };
    Pe.prototype.setSingle = function(t) {
      return this._single = t, this;
    };
    Pe.wrap = function(t) {
      return t;
    };
    Pe.prototype.add = function(t) {
      return this._nodes.push(t), this._single = null, this;
    };
    Pe.prototype.isPrimitive = function() {
      return this._single && this._single instanceof br;
    };
    Pe.prototype.isStatic = function() {
      return this.isPrimitive();
    };
    Pe.prototype.visit = function() {
      for (let t = 0, e = It(this._nodes), r = e.length, i; t < r; t++)
        i = e[t], i instanceof Z && i.traverse();
      return this;
    };
    Pe.prototype.asObjectKey = function() {
      return this.isPrimitive() ? "" + this._single.c() : this._single ? "[" + this._single.c() + "]" : "[" + this.asString() + "]";
    };
    Pe.prototype.startLoc = function() {
      var t;
      return (t = this._nodes[0]) && t.startLoc && t.startLoc();
    };
    Pe.prototype.endLoc = function() {
      var t;
      return (t = this._nodes[this._nodes.length - 1]) && t.endLoc && t.endLoc();
    };
    Pe.prototype.asIdentifier = function() {
      return this._single ? "[" + this._single.c() + "]" : "[" + this.asString() + "]";
    };
    Pe.prototype.asString = function() {
      let t = "`";
      this.option("prefix") && (t += this.option("prefix"));
      for (let e = 0, r = It(this._nodes), i = r.length, s; e < i; e++)
        s = r[e], s instanceof br ? t += s.value() : (t += "${", t += s.c(), t += "}");
      return t += "`", t;
    };
    Pe.prototype.toRaw = function() {
      return this._single ? this._single.c() : "";
    };
    Pe.prototype.toString = function() {
      return this.toRaw();
    };
    Pe.prototype.js = function(t, e) {
      return e === void 0 && (e = {}), e.as == "string" || t.parent() instanceof Ht ? this.asString() : e.as == "key" ? this.asObjectKey() : e.as == "access" ? true : this._single && this._single instanceof Z ? this._single.c(e) : this.asString();
    };
    function me(t, e) {
      this._name = this.load(t), this._tag = e, this._chain = [], this._special = false, this._params = null;
    }
    A(me, Z);
    E.TagPart = me;
    me.prototype.name = function(t) {
      return this._name;
    };
    me.prototype.setName = function(t) {
      return this._name = t, this;
    };
    me.prototype.value = function(t) {
      return this._value;
    };
    me.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    me.prototype.params = function(t) {
      return this._params;
    };
    me.prototype.setParams = function(t) {
      return this._params = t, this;
    };
    me.prototype.load = function(t) {
      return t;
    };
    me.prototype.isSpecial = function() {
      return this._special;
    };
    me.prototype.visit = function() {
      return this._chain.map(function(t) {
        return t.traverse();
      }), this._value && this._value.traverse(), this._name.traverse && this._name.traverse(), this;
    };
    me.prototype.quoted = function() {
      return this._quoted || (this._quoted = this._name instanceof Pe ? this._name.asString() : be.singlequote(this._name));
    };
    me.prototype.valueIsStatic = function() {
      return !this.value() || this.value().isPrimitive() || this.value() instanceof ie && !this.value().nonlocals();
    };
    me.prototype.isStatic = function() {
      return this.valueIsStatic();
    };
    me.prototype.isProxy = function() {
      return false;
    };
    me.prototype.add = function(t, e) {
      return e == u2 ? (this._last || this).setParams(t || new jt([])) : this._chain.push(this._last = new Vi(t)), this;
    };
    me.prototype.modifiers = function() {
      return this._modifiers || (this._modifiers = new Vn(this._chain).traverse());
    };
    me.prototype.js = function() {
      return "";
    };
    me.prototype.ref = function() {
      return "c$." + this.oid();
    };
    me.prototype.tagRef = function() {
      return this._tagRef || this._tag.ref();
    };
    function h2() {
      return me.apply(this, arguments);
    }
    A(h2, me);
    E.TagId = h2;
    h2.prototype.js = function() {
      return "" + this.tagRef() + ".id=" + this.quoted();
    };
    function mr() {
      return me.apply(this, arguments);
    }
    A(mr, me);
    E.TagFlag = mr;
    mr.prototype.condition = function(t) {
      return this._condition;
    };
    mr.prototype.setCondition = function(t) {
      return this._condition = t, this;
    };
    mr.prototype.rawClassName = function() {
      return this.name().toRaw();
    };
    mr.prototype.value = function() {
      return this._name;
    };
    mr.prototype.visit = function() {
      if (this._chain.map(function(t) {
        return t.traverse();
      }), this._condition && this._condition.traverse(), this._name.traverse)
        return this._name.traverse();
    };
    mr.prototype.isStatic = function() {
      return !this.isConditional() && (this._name instanceof br || this._name.isStatic() || this._name instanceof Ci);
    };
    mr.prototype.isConditional = function() {
      return !!this.condition();
    };
    mr.prototype.js = function() {
      if (O.tsc()) {
        let e = this.value().c();
        return this.condition() ? "[" + e + "," + this.condition().c() + "]" : "[" + e + "]";
      }
      let t = this.value().c({as: "string"});
      return this.condition() ? "" + this.tagRef() + ".flags.toggle(" + t + "," + this.condition().c() + ")" : "" + this.tagRef() + ".classList.add(" + t + ")";
    };
    function kc() {
      return me.apply(this, arguments);
    }
    A(kc, me);
    E.TagSep = kc;
    function u2() {
      return me.apply(this, arguments);
    }
    A(u2, me);
    E.TagArgList = u2;
    function nr() {
      return me.apply(this, arguments);
    }
    A(nr, me);
    E.TagAttr = nr;
    nr.prototype.isSpecial = function() {
      return String(this._name) == "value";
    };
    nr.prototype.startLoc = function() {
      return this._name && this._name.startLoc && this._name.startLoc();
    };
    nr.prototype.endLoc = function() {
      return this._value && this._value.endLoc && this._value.endLoc();
    };
    nr.prototype.isStatic = function() {
      return nr.prototype.__super__.isStatic.apply(this, arguments) && this._chain.every(function(t) {
        let e = t instanceof Ae ? t.value() : t;
        return e instanceof ie ? !e.nonlocals() : e.isPrimitive();
      });
    };
    nr.prototype.visit = function() {
      this._chain.map(function(i) {
        return i.traverse();
      }), this._value && this._value.traverse(), this._name.traverse && this._name.traverse();
      let t = this._key = String(this._name), e = t.indexOf(":");
      if (e >= 0 && (this._ns = t.slice(0, e), this._key = t.slice(e + 1)), this._value || (this._autovalue = true, this._value = Ze(t)), this._chain.length) {
        this._mods = {};
        for (let i = 0, s = It(this._chain), n = s.length; i < n; i++)
          this._mods[s[i].name()] = 1;
      }
      if (this._ns == "bind" && O.use("dom_bind"), !this._ns && this._key == "ease" && O.use("dom_transitions"), t == "asset" || t == "src" && this.value() instanceof de && /^(style|img|script|svg)$/.test(this._tag.tagName())) {
        let i = this._tag.tagName(), s = "asset";
        i == "img" || i == "svg" ? s = "img" : i == "script" ? s = "web" : i == "style" && (s = "css");
        let n = this.value() instanceof de && this.value().raw();
        n && !n.match(/^(\/|https?\:\/\/)/) && (O.tsc() || (this._asset = O.root().registerAsset(n, s, this)));
      }
      return this;
    };
    nr.prototype.ns = function() {
      return this._ns;
    };
    nr.prototype.key = function() {
      return this._key;
    };
    nr.prototype.mods = function() {
      return this._mods;
    };
    nr.prototype.nameIdentifier = function() {
      return this._nameIdentifier || (this._nameIdentifier = new At(this.key()));
    };
    nr.prototype.modsIdentifier = function() {
      return this._modsIdentifier || (this._modsIdentifier = new At(this.key() + "__"));
    };
    nr.prototype.js = function(t) {
      let e = this.value().c(t), r = e, i = Tt("=", this.option("op")), s = this.key().match(/^(aria-|data-)/) || this.key() == "style" || this._tag && this._tag.isSVG() || this.ns() == "html", n = this._tag && this._tag._tagName, o = this._tag.ref(), a = this.key() == "asset" || this.key() == "src" && this.value() instanceof de && (n == "style" || n == "img" || n == "script" || n == "svg");
      if (this._asset && !O.tsc() && (e = this._asset.ref.c()), O.tsc() && (s || i3[this.key()]))
        return "" + o + ".setAttribute('" + this.key() + "',String(" + e + "))";
      if (s && (O.isNode() || this.ns() == "html") && !this._asset)
        return O.meta().universal = false, "" + o + ".setAttribute('" + this.key() + "'," + e + ")";
      if (O.tsc()) {
        let p = this.nameIdentifier().c();
        p == "value" && da(this._tag._tagName, ["input", "textarea", "select", "option", "button"]) >= 0 && (e = "/**@type {any}*/(" + e + ")");
        let c = "" + o + "." + Tt(p, this._name);
        return "" + Tt(c, this._name) + i + (this._autovalue ? Tt("true", this._value) : e);
      }
      let l = this.key();
      if (l == "tabindex" && (l = "tabIndex"), l == "value" && da(this._tag._tagName, ["input", "textarea", "select", "option", "button"]) >= 0 && !O.isNode() && (l = "richValue"), this.ns() == "css")
        return "" + o + ".css$('" + l + "'," + e + ")";
      if (this.ns() == "bind") {
        let p = o3(this.value());
        if (p instanceof Ft) {
          let c = "function(){ return " + e + " }", _ = "function(v$){ " + e + " = v$ }";
          r = "{get:" + c + ",set:" + _ + "}";
        } else
          p instanceof Array && (r = "[" + e[0].c(t) + "," + e[1].c(t) + "]");
        return "" + o + ".bind$('" + l + "'," + r + ")";
      } else if (l.indexOf("--") == 0) {
        let p = ["'" + l + "'", e], c = this.option("unit"), _ = t3.propAbbr(this.option("propname"));
        (c || _) && (p.push(c ? Ze(c) : Gs), _ && p.push(Ze(_))), O.use("styles");
        let f = this.option("styleterm");
        if (f && f.param) {
          for (; p.length < 4; )
            p.push(Gs);
          p.push(f.param);
        }
        return "" + o + ".css$var(" + Pt.cary(p, {as: "js"}).join(",") + ")";
      } else
        return l.indexOf("aria-") == 0 || this._tag && this._tag.isSVG() || l == "for" || i3[l] ? this.ns() ? "" + o + ".setns$('" + this.ns() + "','" + l + "'," + e + ")" : "" + o + ".set$('" + l + "'," + e + ")" : l.indexOf("data-") == 0 ? "" + o + ".setAttribute('" + l + "'," + e + ")" : J(".", Rt(o), l).c() + ("" + i + e);
    };
    function p2() {
      return nr.apply(this, arguments);
    }
    A(p2, nr);
    E.TagStyleAttr = p2;
    function Ds() {
      return me.apply(this, arguments);
    }
    A(Ds, me);
    E.TagAttrValue = Ds;
    Ds.prototype.isPrimitive = function() {
      return this.value().isPrimitive();
    };
    Ds.prototype.value = function() {
      return this.name();
    };
    Ds.prototype.js = function() {
      return this.value().c();
    };
    Ds.prototype.toRaw = function() {
      return this.value() instanceof de ? this.value().raw() : null;
    };
    function f2() {
      return Ut.apply(this, arguments);
    }
    A(f2, Ut);
    E.TagHandlerSpecialArg = f2;
    f2.prototype.isPrimitive = function() {
      return true;
    };
    f2.prototype.c = function() {
      return "'~$" + this.value() + "'";
    };
    function Vn() {
      return jt.apply(this, arguments);
    }
    A(Vn, jt);
    E.TagModifiers = Vn;
    Vn.prototype.isStatic = function() {
      return this._nodes.every(function(t) {
        let e = t instanceof Ae ? t.value() : t;
        return e instanceof ie ? !e.nonlocals() : e.isPrimitive();
      });
    };
    Vn.prototype.visit = function() {
      var t = {FUNC: 0};
      for (let e = 0, r = It(this.nodes()), i = r.length, s; e < i; e++) {
        s = r[e];
        let n = String(s.name());
        t[n] ? s.setName(n + "~" + t[n]++) : t[n] = 1;
      }
      return this;
    };
    Vn.prototype.extractDynamics = function() {
      if (this._dynamics)
        return this._dynamics;
      this._dynamics = [];
      for (let t = 0, e = It(this.nodes()), r = e.length, i; t < r; t++)
        if (i = e[t], i instanceof Vi) {
          for (let s = 0, n = It(i.params()), o = n.length, a; s < o; s++)
            if (a = n[s], !a.isPrimitive()) {
              let l = new _2(a).set({key: a3(i.name()), index: s});
              i.params().swap(a, Rt("null")), this._dynamics.push(l);
            }
        }
      return this._dynamics;
    };
    Vn.prototype.c = function() {
      if (O.tsc())
        return "[" + this.nodes().map(function(e) {
          return e.c();
        }).join(",") + "]";
      let t = new ze([]);
      for (let e = 0, r = It(this.nodes()), i = r.length, s; e < i; e++) {
        s = r[e];
        let n = s.params() ? new je(s.params()) : Rt("true");
        t.add(a3(s.name()), n);
      }
      return t.c();
    };
    function Vi() {
      return me.apply(this, arguments);
    }
    A(Vi, me);
    E.TagModifier = Vi;
    Vi.prototype.params = function(t) {
      return this._params;
    };
    Vi.prototype.setParams = function(t) {
      return this._params = t, this;
    };
    Vi.prototype.load = function(t) {
      return t instanceof Pe ? t._single : t;
    };
    Vi.prototype.isPrimitive = function() {
      return !this.params() || this.params().every(function(t) {
        return t.isPrimitive();
      });
    };
    Vi.prototype.visit = function() {
      if (this._name instanceof jn && (this._name.traverse(), this._name = this._name.value()), this._name instanceof ie) {
        let t = this._name.params().at(0, true, "e"), e = this._name.params().at(1, true, "$");
        this._name.traverse();
      }
      return this._name instanceof Ni && (this._value = this._name, this._name = Ze("$_"), this._params = new jt([this._value].concat(this._value.leaks() || []))), this._params && this._params.traverse(), this;
    };
    Vi.prototype.js = function() {
      if (O.tsc()) {
        if (this._name instanceof ie)
          return "(" + this._name.c() + ")(e,{})";
        let t = this.quoted().slice(1, -1).split("-"), e = false;
        t[0][0] == "!" && (e = true, t[0] = t[0].slice(1));
        let r = t[0];
        t.length > 1 && (r == "emit" || r == "flag" || r == "css" ? r = "" + r + "-name" : r = t.join("-")), r = be.toValidIdentifier("\u03B1" + r);
        let i = this.params() ? this.params().c() : "";
        this.params() && i == "" && (r == "\u03B1options" ? i = Tt("", Wl(this._handlerName.endLoc() + 1)) : i = Tt("", Wl(this._name.endLoc() + 1)));
        let s = "" + Tt(r, this._name) + "(" + i + ")";
        if ((!this.params() || this.params().count() == 0) && (s = Tt(s, this._name)), e) {
          let n = Wl(this._name.startLoc() - 1, this._name.startLoc());
          return Tt("e." + s + "===true", n);
        }
        return "e." + s;
      }
      return this.params() && this.params().count() > 0 ? "[" + this.quoted() + "," + this.params().c() + "]" : this.params() ? "[" + this.quoted() + "]" : this.quoted();
    };
    function Zs() {
      return me.apply(this, arguments);
    }
    A(Zs, me);
    E.TagData = Zs;
    Zs.prototype.value = function() {
      return this.name();
    };
    Zs.prototype.isStatic = function() {
      return !this.value() || this.value().isPrimitive();
    };
    Zs.prototype.isSpecial = function() {
      return true;
    };
    Zs.prototype.isProxy = function() {
      return this.proxyParts() instanceof Array;
    };
    Zs.prototype.proxyParts = function() {
      var t = this.value();
      if (t instanceof ar && (t = t.values()[0]), t instanceof Ae && (t = t.value()), t instanceof he && (t = t._variable || t.value()), t instanceof se) {
        let e = t.left(), r = t.right() instanceof as ? t.right().value() : t.right();
        return t instanceof Tn && (e || (e = t.scope__().context())), [e, r];
      }
      return t;
    };
    Zs.prototype.js = function() {
      var t = this.value();
      if (t instanceof ar && (t = t.values()[0]), t instanceof Ae && (t = t.value()), t instanceof he && (t = t._variable || t.value()), t instanceof se) {
        let e = t.left(), r = t.right() instanceof as ? t.right().value() : t.right();
        t instanceof Tn && (e || (e = t.scope__().context()));
        let i = [e.c(), r.c()];
        return r instanceof At && (i[1] = "'" + i[1] + "'"), "bind$('data',[" + i.join(",") + "])";
      } else
        return "data=(" + t.c() + ")";
    };
    function _2() {
      return Ut.apply(this, arguments);
    }
    A(_2, Ut);
    E.TagDynamicArg = _2;
    _2.prototype.c = function() {
      return this.value().c();
    };
    function lr() {
      return me.apply(this, arguments);
    }
    A(lr, me);
    E.TagHandler = lr;
    lr.prototype.__params = {watch: "paramsDidSet", name: "params"};
    lr.prototype.params = function(t) {
      return this._params;
    };
    lr.prototype.setParams = function(t) {
      var e = this.params();
      return t != e && (this._params = t), t != e && this.paramsDidSet && this.paramsDidSet(t, e, this.__params), this;
    };
    lr.prototype.paramsDidSet = function(t) {
      return this._chain.push(this._last = new Vi("options")), this._last._handlerName = this._name, this._last.setParams(t), t;
    };
    lr.prototype.add = function(t, e, r, i) {
      return e == jn && (t instanceof ar && (t = t.first()), t = new jn(t)), lr.prototype.__super__.add.call(this, t, e);
    };
    lr.prototype.visit = function() {
      if (lr.prototype.__super__.visit.apply(this, arguments), O.use("events"), this._name && n3[String(this._name)] && O.isWeb())
        return O.use(n3[String(this._name)]);
    };
    lr.prototype.isStatic = function() {
      return (!this.value() || this.value().isPrimitive() || this.value() instanceof ie && !this.value().nonlocals()) && this._chain.every(function(e) {
        let r = e instanceof Ae ? e.value() : e;
        return r instanceof ie ? !r.nonlocals() : r.isPrimitive();
      });
    };
    lr.prototype.modsIdentifier = function() {
      return null;
    };
    lr.prototype.js = function(t) {
      if (O.tsc()) {
        let e = "" + this.tagRef() + ".addEventListener(" + this.quoted() + `,(e)=>{
`;
        for (let r = 0, i = It(this.modifiers()), s = i.length; r < s; r++)
          e += i[r].c() + `;
`;
        return e += "})", e;
      }
      if (this._standalone) {
        let e = this._tag, r = "" + e.cvar() + "[" + this.osym() + "]", i = this.modifiers(), s = i.extractDynamics(), n = false, o = [], a = function(p) {
          return o.push(p);
        }, l = e.hvar();
        a("" + e.hvar() + " = " + r + " || (" + r + "=" + i.c(t) + ")");
        for (let p = 0, c = It(s), _ = c.length, f; p < _; p++) {
          f = c[p];
          let m = f.option("key"), g = f.option("index"), b = "" + J(".", l, m).c() + "[" + g + "]";
          m == "options" ? (n = true, a("(" + this.vvar() + "=" + f.c(t) + "," + this.vvar() + "===" + b + " || (" + b + "=" + this.vvar() + "," + this.dvar() + "|=" + Se.DIFF_MODIFIERS + "|" + Se.DIFF_INLINE + "))")) : a("" + b + "=" + f.c(t));
        }
        return a("" + e.bvar() + " || " + e.ref() + ".on$(" + this.quoted() + "," + l.c() + "," + this.scope__().context().c() + ")"), n && a("" + e.dvar() + "&" + Se.DIFF_INLINE + " && (" + e.dvar() + "^=" + Se.DIFF_INLINE + "," + l + "[" + this.gsym("#visit") + "]?.())"), "(" + o.join(`,
`) + ")";
      }
      return "" + this.tagRef() + ".on$(" + this.quoted() + "," + this.modifiers().c() + "," + this.scope__().context().c() + ")";
    };
    lr.prototype.consume = function(t) {
      return t instanceof Et && (this._tag = t, this._standalone = true), this;
    };
    function jn() {
      return Ut.apply(this, arguments);
    }
    A(jn, Ut);
    E.TagHandlerCallback = jn;
    jn.prototype.visit = function() {
      let t = this.value();
      if (t instanceof Ae && (t = t.value()), t instanceof ie && (t = t.body()), t instanceof se || t instanceof he) {
        let e = t;
        t = He(t, [Rt("e")]), t._args._startLoc = e.endLoc(), t._args._endLoc = e.endLoc();
      }
      if (this.setValue(new (O.tsc() ? ie : Ni)([], [t], null, {})), this.value() instanceof ie) {
        let e = this.value().params().at(0, true, "e"), r = this.value().params().at(1, true, "$$");
      }
      this.value().traverse();
    };
    function fs() {
      return jt.apply(this, arguments);
    }
    A(fs, jt);
    E.TagBody = fs;
    fs.prototype.add = function(t, e) {
      return t instanceof _i && (t = t.toArray(), t.length == 1 && (t = new No(t[0]))), fs.prototype.__super__.add.call(this, t, e);
    };
    fs.prototype.consume = function(t) {
      return t instanceof Et ? (this._nodes = this._nodes.map(function(e) {
        return e instanceof Mr ? e : e.consume(t);
      }), this) : fs.prototype.__super__.consume.apply(this, arguments);
    };
    function Et(t) {
      t === void 0 && (t = {}), this._options = t, this._flags = 0, this._tagvars = {}, this.setup(t);
    }
    A(Et, Z);
    Et.prototype.isIndexableInLoop = function() {
      return false;
    };
    Et.prototype.sourceId = function() {
      return this._sourceId || (this._sourceId = O.sourceId() + "-" + this.oid());
    };
    Et.prototype.body = function() {
      return this._body || this._options.body;
    };
    Et.prototype.value = function() {
      return this._options.value;
    };
    Et.prototype.isReactive = function() {
      return true;
    };
    Et.prototype.isDetached = function() {
      return this.option("detached");
    };
    Et.prototype.isSVG = function() {
      return this._isSVG == null ? this._isSVG = this._parent ? this._parent.isSVG() : false : this._isSVG;
    };
    Et.prototype.parentTag = function() {
      let t = this._parent;
      for (; t && !(t instanceof ne); )
        t = t._parent;
      return t;
    };
    Et.prototype.tagLikeParents = function() {
      let t = [], e = this._parent;
      for (; e instanceof Et; )
        t.push(e), e = e.parent();
      return t;
    };
    Et.prototype.setup = function() {
      return this._traversed = false, this._consumed = [], this;
    };
    Et.prototype.osym = function(t) {
      return t === void 0 && (t = ""), O.getSymbol(this.oid() + t, K1.SYM + (this.tagvarprefix() || "") + t);
    };
    Et.prototype.root = function() {
      return this._parent ? this._parent.root() : this;
    };
    Et.prototype.register = function(t) {
      return t instanceof pe || t instanceof oi ? (this.flag(Se.TAG_HAS_BRANCHES), t = new Ue({body: t})) : t instanceof De ? (this.flag(Se.TAG_HAS_LOOPS), t = new Nr({body: t.body(), value: t})) : t instanceof ne ? t.isSlot() && this.flag(Se.TAG_HAS_DYNAMIC_CHILDREN) : t instanceof re ? (t = t.opToIfTree(), t instanceof pe ? (this.flag(Se.TAG_HAS_BRANCHES), t = new Ue({body: t})) : (this.flag(Se.TAG_HAS_DYNAMIC_CHILDREN), t = new ji({value: t}))) : t instanceof dr || (t instanceof de || this.flag(Se.TAG_HAS_DYNAMIC_CHILDREN), t = new ji({value: t})), this._consumed.push(t), t._consumedBy = this, t._parent = this, t;
    };
    Et.prototype.flag = function(t) {
      return this._flags |= t;
    };
    Et.prototype.type = function() {
      return "frag";
    };
    Et.prototype.unflag = function(t) {
      return this._flags = this._flags & ~t;
    };
    Et.prototype.hasFlag = function(t) {
      return this._flags & t;
    };
    Et.prototype.isAbstract = function() {
      return true;
    };
    Et.prototype.isOnlyChild = function() {
      return this.isFirstChild() && this.isLastChild();
    };
    Et.prototype.isFirstChild = function() {
      return this.hasFlag(Se.TAG_FIRST_CHILD);
    };
    Et.prototype.isLastChild = function() {
      return this.hasFlag(Se.TAG_LAST_CHILD);
    };
    Et.prototype.isIndexed = function() {
      return this.option("indexed");
    };
    Et.prototype.isComponent = function() {
      return this._kind == "component";
    };
    Et.prototype.isSelf = function() {
      return this.type() instanceof si || this.type() instanceof ps;
    };
    Et.prototype.isShadowRoot = function() {
      return this._tagName && this._tagName == "shadow-root";
    };
    Et.prototype.isSlot = function() {
      return this._kind == "slot";
    };
    Et.prototype.isFragment = function() {
      return this._kind == "fragment";
    };
    Et.prototype.isMemoized = function() {
      return !this.option("unmemoized");
    };
    Et.prototype.hasLoops = function() {
      return this.hasFlag(Se.TAG_HAS_LOOPS);
    };
    Et.prototype.hasBranches = function() {
      return this.hasFlag(Se.TAG_HAS_BRANCHES);
    };
    Et.prototype.hasDynamicChildren = function() {
      return this.hasFlag(Se.TAG_HAS_DYNAMIC_CHILDREN);
    };
    Et.prototype.hasDynamicFlags = function() {
      return this.hasFlag(Se.TAG_HAS_DYNAMIC_FLAGS);
    };
    Et.prototype.hasNonTagChildren = function() {
      return this.hasLoops() || this.hasBranches() || this.hasDynamicChildren();
    };
    Et.prototype.hasDynamicDescendants = function() {
      if (this.hasNonTagChildren())
        return true;
      for (let t = 0, e = It(this._consumed), r = e.length, i; t < r; t++)
        if (i = e[t], i instanceof ne && i.hasDynamicDescendants())
          return true;
      return false;
    };
    Et.prototype.hasChildren = function() {
      return this._consumed.length > 0;
    };
    Et.prototype.tagvar = function(t) {
      return t = K1[t] || t, this._tagvars[t] || (this._tagvars[t] = this.scope__().closure().temporary(null, {reuse: false, alias: "" + t + this.tagvarprefix()}, "" + t + this.tagvarprefix()));
    };
    Et.prototype.tagvarprefix = function() {
      return "";
    };
    Et.prototype.level = function() {
      return this._level;
    };
    Et.prototype.parent = function() {
      return this._parent || (this._parent = this.option("parent"));
    };
    Et.prototype.fragment = function() {
      return this._fragment || this.parent();
    };
    Et.prototype.tvar = function() {
      return this._tvar || this.tagvar("T");
    };
    Et.prototype.parentRef = function() {
      return this._parentRef || (this._parentRef = this.parent() ? this.parent().ref() : "" + this.parentCache() + "._");
    };
    Et.prototype.parentCache = function() {
      return this._parentCache || (this._parentCache = this.parent() ? this.parent().cvar() : this.isMemoized() ? this.scope__().closure().tagCache() : this.scope__().closure().tagTempCache());
    };
    Et.prototype.renderContextFn = function() {
      return "" + this.parentCache() + "[" + this.gsym("#getRenderContext") + "]";
    };
    Et.prototype.dynamicContextFn = function() {
      return "" + this.parentCache() + "[" + this.gsym("#getDynamicContext") + "]";
    };
    Et.prototype.bvar = function() {
      return this._bvar || (this._parent ? this._parent.bvar() : this.tagvar("B"));
    };
    Et.prototype.cvar = function() {
      return this._cvar || (this._parent ? this._parent.cvar() : this.tagvar("C"));
    };
    Et.prototype.owncvar = function() {
      return this.tagvar("C");
    };
    Et.prototype.vvar = function() {
      return this.tagvar("V");
    };
    Et.prototype.hvar = function() {
      return this.tagvar("H");
    };
    Et.prototype.kvar = function() {
      return this.tagvar("K");
    };
    Et.prototype.dvar = function() {
      return this.tagvar("D");
    };
    Et.prototype.ref = function() {
      return this._ref || (this._cachedRef = "" + (this.parent() ? this.parent().cvar() : "") + "[" + this.osym() + "]");
    };
    Et.prototype.visit = function(t) {
      var e = this._options, r = this._tagScope = this.scope__();
      this.up() instanceof re && this.set({detached: true});
      let i = this._parent = t._tag;
      this._level = (this._parent && this._parent._level || 0) + 1, t._tag = null;
      for (let s = 0, n = It(this._attributes), o = n.length; s < o; s++)
        n[s].traverse();
      return t._tag = this, e.key && e.key.traverse(), this.visitBeforeBody(t), this.body() && this.body().traverse(), this.visitAfterBody(t), t._tag = this._parent, this._parent || (this._level = 0, this.consumeChildren(), this.visitAfterConsumed()), this;
    };
    Et.prototype.visitBeforeBody = function() {
      return this;
    };
    Et.prototype.visitAfterBody = function() {
      return this;
    };
    Et.prototype.consumeChildren = function() {
      if (this._consumed.length)
        return;
      this.body() && this.body().consume(this);
      let t = this._consumed[0], e = this._consumed[this._consumed.length - 1];
      this.isAbstract() || (t instanceof Et && t.flag(Se.TAG_FIRST_CHILD), e instanceof Et && e.flag(Se.TAG_LAST_CHILD));
      for (let r = 0, i = It(this._consumed), s = i.length, n; r < s; r++)
        n = i[r], n instanceof Et && (n._consumedBy = this, n._parent = this, n._level = this._level + 1, n.visitAfterConsumed(), n.consumeChildren());
      return this.visitAfterConsumedChildren(), this;
    };
    Et.prototype.visitAfterConsumedChildren = function() {
      return this;
    };
    Et.prototype.visitAfterConsumed = function() {
      return this;
    };
    Et.prototype.consume = function(t) {
      return t instanceof Et ? t.register(this) : t instanceof Ft ? (this.option("assignToVar", t), this) : t instanceof Ve ? J(t.op(), t.left(), this) : t instanceof Ke ? J("=", t.left(), this) : t instanceof re ? J(t.op(), t.left(), this) : t instanceof Qe ? (this.option("return", true), this) : this;
    };
    function No() {
      return Ut.apply(this, arguments);
    }
    A(No, Ut);
    E.TagTextContent = No;
    function ji() {
      return Et.apply(this, arguments);
    }
    A(ji, Et);
    E.TagContent = ji;
    ji.prototype.vvar = function() {
      return this.parent().vvar();
    };
    ji.prototype.bvar = function() {
      return this.parent().bvar();
    };
    ji.prototype.ref = function() {
      return this.fragment().tvar();
    };
    ji.prototype.key = function() {
      return this._key || (this._key = "" + this.parent().cvar() + "[" + this.osym() + "]");
    };
    ji.prototype.isStatic = function() {
      return this.value() instanceof de || this.value() instanceof Ie;
    };
    ji.prototype.js = function() {
      let t = this.value(), e = [], r = t instanceof de || t instanceof Ie || t instanceof No, i = this.isStatic();
      if (O.tsc())
        return t.c(this.o());
      if (this.parent() instanceof Ue || this._tvar && this.parent() instanceof ne && (this.parent().isSlot() || this.isDetached())) {
        if (e.push("" + this._tvar + "=" + t.c(this.o())), t instanceof ke || t instanceof qs) {
          let s = "" + this.parent().cvar() + "[" + this.osym("$") + "]";
          e.unshift("" + this.runtime().renderContext + ".context=(" + s + " || (" + s + "={_:" + this.fragment().tvar() + "}))"), e.push("" + this.runtime().renderContext + ".context=null");
        }
      } else {
        if (this.isOnlyChild() && (t instanceof de || t instanceof Ie))
          return "" + this.bvar() + " || " + this.ref() + ".text$(" + t.c(this.o()) + ")";
        if (i)
          return "" + this.bvar() + " || " + this.ref() + this.domCall("insert") + "(" + t.c(this.o()) + ")";
        if (t instanceof No && this.isOnlyChild() && !(this.parent() instanceof Ue))
          return "(" + this.vvar() + "=" + t.c(this.o()) + "," + this.vvar() + "===" + this.key() + " || " + this.ref() + ".text$(String(" + this.key() + "=" + this.vvar() + ")))";
        {
          e.push("" + this.vvar() + "=" + t.c(this.o()));
          let s = "" + this.parent().cvar() + "[" + this.osym("i") + "]";
          if (t instanceof ke || t instanceof qs) {
            let n = "" + this.parent().cvar() + "[" + this.osym("$") + "]";
            e.unshift("" + this.runtime().renderContext + ".context=(" + n + " || (" + n + "={_:" + this.fragment().tvar() + "}))"), e.push("" + this.runtime().renderContext + ".context=null");
          }
          t instanceof No ? e.push("(" + this.vvar() + "===" + this.key() + "&&" + this.bvar() + ") || (" + s + " = " + this.ref() + this.domCall("insert") + "(String(" + this.key() + "=" + this.vvar() + ")," + this._flags + "," + s + "))") : e.push("(" + this.vvar() + "===" + this.key() + "&&" + this.bvar() + ") || (" + s + " = " + this.ref() + this.domCall("insert") + "(" + this.key() + "=" + this.vvar() + "," + this._flags + "," + s + "))");
        }
      }
      return "(" + e.join(",") + ")";
    };
    function gc() {
      return Et.apply(this, arguments);
    }
    A(gc, Et);
    E.TagFragment = gc;
    function Ue() {
      return Et.apply(this, arguments);
    }
    A(Ue, Et);
    E.TagSwitchFragment = Ue;
    Ue.prototype.setup = function() {
      return Ue.prototype.__super__.setup.apply(this, arguments), this._branches = [], this._inserts = [], this._styles = [];
    };
    Ue.prototype.getInsertVar = function(t) {
      return this._inserts[t] || (this._inserts[t] = this.tagvar("\u03C4" + t + "if"));
    };
    Ue.prototype.getStyleVar = function(t) {
      return this._styles[t] || (this._styles[t] = this.tagvar("\u03C4" + t + "css"));
    };
    Ue.prototype.tvar = function() {
      return this.fragment().tvar();
    };
    Ue.prototype.register = function(t) {
      let e = Ue.prototype.__super__.register.apply(this, arguments);
      if (this._branches) {
        let r = this._branches[this._branches.length - 1];
        r && r.push(e);
      }
      return e;
    };
    Ue.prototype.visitAfterConsumedChildren = function() {
      if (!(this._parent instanceof Ue)) {
        let t = this.assignChildIndices(0, 0, this);
      }
      return this;
    };
    Ue.prototype.assignChildIndices = function(t, e, r) {
      let i = t, s = t, n = e, o = e;
      for (let a = 0, l = It(this._branches), p = l.length, c; a < p; a++) {
        c = l[a], i = t;
        for (let _ = 0, f = It(c), m = f.length, g; _ < m; _++)
          if (g = f[_], g instanceof Ue) {
            let b = g.assignChildIndices(i, n, r);
            i = b[0], n = b[1];
          } else
            g instanceof dr ? (g._tvar = r.getStyleVar(n), g._tvar._stylerule = g, n++) : (g._tvar = r.getInsertVar(i), g.set({detached: true}), i++);
        i > s && (s = i), n > o && (o = n);
      }
      return [s, o];
    };
    Ue.prototype.js = function(t) {
      var e = [], r = "";
      let i = this._inserts.concat(this._styles);
      Xl(i) && (r = i.join(" = ") + " = null");
      let s = t.inline;
      this.body().isExpression() && (t.inline = true);
      var n = this.body().c(t);
      if (t.inline = s, O.tsc())
        return n;
      r && e.push(r), e.push(n);
      for (let o = 0, a = It(this._inserts), l = a.length; o < l; o++) {
        let p = "" + this.cvar() + "[" + this.osym(o) + "]";
        e.push("(" + p + " = " + this.tvar() + this.domCall("insert") + "(" + a[o] + ",0," + p + "))");
      }
      for (let o = 0, a = It(this._styles), l = a.length, p; o < l; o++) {
        p = a[o];
        let c = p._stylerule._name;
        e.push("" + this.tvar() + ".flags.toggle('" + c + "',!!" + p + ")");
      }
      return t.inline ? e.join(",") : e.join(`;
`);
    };
    function Nr() {
      return Et.apply(this, arguments);
    }
    A(Nr, Et);
    E.TagLoopFragment = Nr;
    Nr.prototype.isKeyed = function() {
      return this.option("keyed") || this.hasFlag(Se.TAG_HAS_BRANCHES);
    };
    Nr.prototype.isIndexableInLoop = function() {
      return true;
    };
    Nr.prototype.consumeChildren = function() {
      return Nr.prototype.__super__.consumeChildren.apply(this, arguments), this.hasFlag(Se.TAG_HAS_BRANCHES) ? this.set({keyed: true}) : this._consumed.every(function(t) {
        return t instanceof Et && t.isIndexableInLoop();
      }) ? this.set({indexed: true}) : this.set({keyed: true});
    };
    Nr.prototype.cvar = function() {
      return this._cvar || this.tagvar("C");
    };
    Nr.prototype.js = function(t) {
      if (this.stack().isExpression())
        return He(js([], [this], this.stack().scope()), []).c();
      if (O.tsc())
        return "" + this.tvar() + ` = new DocumentFragment;
` + this.value().c(t);
      this.parent() instanceof Nr && this.parent().isKeyed() && this.set({detached: true}), this.parent() instanceof Ue && this.set({detached: true}), this.parent() && !this._consumedBy && this.set({detached: true});
      let e = this.option("indexed") ? this.runtime().createIndexedList : this.runtime().createKeyedList, r = this.parent().cvar(), i = this.isDetached() ? Rt("null") : this.fragment().tvar(), s = "", n;
      return this.parent() instanceof Nr ? this.parent().isKeyed() ? (this.option("key", J("+", Rt("'" + this.oid() + "$'"), this.parent().kvar())), s += "" + this.hvar() + "=" + this.option("key").c() + `;
`, n = this._ref = "" + this.parent().cvar() + "[" + this.hvar() + "]") : n = this._ref = "" + this.parent().cvar() + "[" + this.parent().kvar() + "]" : n = "" + r + "[" + this.osym() + "]", s += "(" + this.tvar() + " = " + n + ") || (" + n + "=" + this.tvar() + "=" + e + "(" + this._flags + "," + i + `));
`, this._ref = "" + this.tvar(), this.isDetached() && (s += "" + this.tvar() + "[" + this.gsym("##up") + "] = " + this.fragment().tvar() + `;
`), s += "" + this.kvar() + ` = 0;
`, s += "" + this.cvar() + "=" + this.tvar() + `.$;
`, s += this.value().c(t), s += ";" + this.tvar() + this.domCall("end") + "(" + this.kvar() + ");", this.parent() instanceof Nr && (this.parent().isKeyed() ? s += "" + this.parent().ref() + ".push(" + this.tvar() + "," + this.parent().kvar() + "++," + this.hvar() + ");" : this.parent().isIndexed() && (s += "" + this.parent().kvar() + "++;")), s;
    };
    function d3() {
      return Et.apply(this, arguments);
    }
    A(d3, Et);
    E.TagIndexedFragment = d3;
    function m3() {
      return Et.apply(this, arguments);
    }
    A(m3, Et);
    E.TagKeyedFragment = m3;
    function Oo() {
      return Et.apply(this, arguments);
    }
    A(Oo, Et);
    E.TagSlotProxy = Oo;
    Oo.prototype.ref = function() {
      return this.tvar();
    };
    Oo.prototype.tagvarprefix = function() {
      return this.oid() + "S";
    };
    function ne() {
      return Et.apply(this, arguments);
    }
    A(ne, Et);
    E.Tag = ne;
    ne.prototype.attrmap = function(t) {
      return this._attrmap;
    };
    ne.prototype.setAttrmap = function(t) {
      return this._attrmap = t, this;
    };
    ne.prototype.setup = function() {
      return ne.prototype.__super__.setup.apply(this, arguments), this._attributes = this._options.attributes || [], this._attrmap = {}, this._classNames = [], this._className = null;
    };
    ne.prototype.isAbstract = function() {
      return this.isSlot() || this.isFragment();
    };
    ne.prototype.attrs = function() {
      return this._attributes;
    };
    ne.prototype.cssns = function() {
      return this._cssns || (this._cssns = ("" + this.sourceId()).replace("-", "_"));
    };
    ne.prototype.cssid = function() {
      return this._cssid || (this._cssid = ("" + this.sourceId()).replace("_", "-"));
    };
    ne.prototype.cssflag = function() {
      return this._cssflag || (this._cssflag = "" + this.sourceId());
    };
    ne.prototype.tagvarprefix = function() {
      return this.isSelf() ? "SELF" : "T";
    };
    ne.prototype.isStatementLike = function() {
      return this.option("iife");
    };
    ne.prototype.isIndexableInLoop = function() {
      return !this.option("key") && !this.isDynamicType();
    };
    ne.prototype.traverse = function() {
      if (this._traversed)
        return this;
      this._tid = O.generateId("tag"), this.scope__().imbaDependency("core"), this._tagDeclaration = O.up(sr);
      let t = this._options.close, e = this._options.body || [], r = this;
      return t && t._value == "/>" && Xl(e) && (r = [this].concat(e._nodes), this._options.body = new ar([])), ne.prototype.__super__.traverse.apply(this, arguments), r;
    };
    ne.prototype.visitBeforeBody = function(t) {
      var e = this;
      e.oid();
      let r = e._options.type;
      r && r.traverse(), O.hmr() && e.cssid(), e.isSelf() || e.tagName().indexOf("-") >= 0 || e.isDynamicType() || r && r.isComponent() ? (e._options.custom = true, e._kind = "component") : e._kind = "element", e.attrs().length == 0 && !e._options.type && (e._options.type = "fragment");
      let i = e.tagName();
      if (i == "slot" ? e._kind = "slot" : i == "fragment" && (e._kind = "fragment"), i == "shadow-root" && (e._kind = "shadow-root"), e.isSelf()) {
        let n = t.up(sr);
        n && n.set({self: e, sourceId: e.sourceId()});
      }
      e._tagName = i, e._dynamics = [];
      let s = 0;
      for (; s < e._attributes.length; ) {
        let n = e._attributes[s++];
        if (n instanceof mr && n.name() instanceof dr && n.name().placeholders().length)
          for (let o = 0, a = It(n.name().placeholders()), l = a.length, p; o < l; o++) {
            p = a[o];
            let c = new p2(p.name());
            c._tag = e, c.setValue(p.runtimeValue()), c.set({propname: p._propname, unit: p.option("unit"), styleterm: p}), e._attributes.splice(s++, 0, c), c.traverse();
          }
      }
      if (e._attributes = e._attributes.filter(function(n) {
        if (n instanceof mr && n.isStatic())
          return e._classNames.push(n), false;
        if (!O.tsc()) {
          if (n == e._attrmap.$key)
            return n.warn("$key= is deprecated, use key=", {loc: n._name}), e.set({key: n.value()}), false;
          if (n == e._attrmap.key)
            return e.set({key: n.value()}), false;
        }
        return n.isStatic() || e._dynamics.push(n), true;
      }), e.isSlot()) {
        let n = e._attrmap.name ? e._attrmap.name.value() : "__";
        n instanceof de && (n = n.raw()), e.set({name: n}), e._attributes = [];
      }
      return e._scope = new xc(e), e._scope.visit(), ne.prototype.__super__.visitBeforeBody.apply(e, arguments);
    };
    ne.prototype.register = function(t) {
      if (t = ne.prototype.__super__.register.call(this, t), t instanceof Et && this.isComponent() && !this.isSelf()) {
        let e = t instanceof ne ? t._attrmap.slot : null, r = "__";
        e && e.value() instanceof de && (r = e.value().raw());
        let i = this.getSlot(r);
        t._fragment = i;
      }
      return t;
    };
    ne.prototype.visitAfterBody = function(t) {
      return this;
    };
    ne.prototype.visitAfterConsumed = function() {
      if (this.isSVG() && (this._kind = "svg"), this._options.reference) {
        let t = this.stack().up(Re), e = this.stack().up(sr), r;
        if (this._options.key && (r = "Named element cannot be keyed at the same time"), e && t && String(t.name()) == "render") {
          for (let i = 0, s = It(this.tagLikeParents()), n = s.length, o; i < n; i++)
            o = s[i], o instanceof Nr && (r = "Named tags not allowed inside loops"), o instanceof ne && o.isDynamicType() && (r = "Named tags not allowed inside dynamic parent");
          r || e.addElementReference(this._options.reference, this);
        } else
          r = "Named tags are only allowed inside render method";
        r && this.warn(r, {loc: this._options.reference});
      }
      return this;
    };
    ne.prototype.visitAfterConsumedChildren = function() {
      this.isSlot() && this._consumed.length > 1 && this.set({markWhenBuilt: true, reactive: true});
    };
    ne.prototype.hasBlockScopedVariables = function() {
      return Object.keys(this._scope.varmap()).length > 0;
    };
    ne.prototype.getSlot = function(t) {
      return this._slots || (this._slots = {}), this._slots[t] || (this._slots[t] = new Oo({parent: this, name: t}));
    };
    ne.prototype.addPart = function(t, e, r) {
      let i = this._attributes, s = i.CURRENT, n = s;
      if (e == h2 && this.set({id: t}), e == u2 && i.length == 0) {
        let o = this.option("type");
        o._token == "div" && (o = null), this.set({dynamic: true});
        let a = t.nodes()[0];
        return o && (a = He(o.toFunctionalType(), t.nodes())), this.set({type: a, functional: a}), this;
      }
      if (e == kc)
        n = null;
      else if (e == Ds)
        t instanceof Ae && (t = t.value()), s instanceof mr ? (s.setCondition(t), this.flag(Se.TAG_HAS_DYNAMIC_FLAGS), s.set({op: r})) : s instanceof lr ? t && s.add(new jn(t), e) : s && (s.setValue(t), s.set({op: r}));
      else if (s instanceof lr)
        t instanceof Pe && t.single() && !t.isPrimitive() && (t = new (O.tsc() ? ie : Ni)([], [t.single()], null, {})), s.add(t, e);
      else if (s instanceof nr)
        s.add(t, e);
      else if (e == mr && t instanceof Pe && !t.isPrimitive() && this.flag(Se.TAG_HAS_DYNAMIC_FLAGS), t instanceof e ? t._tag = this : t = new e(t, this), i.push(n = t), n instanceof nr && n.name().isPrimitive()) {
        let o = String(n.name().toRaw());
        o.match(/^bind(?=\:|$)/) && this.isFunctional() && n._name.error("bind not supported for functional fragments"), o == "bind" && ((n._name._single || n._name)._value = "bind:data", o = "bind:data"), this._attrmap[o] = n;
      }
      return n != s && (i.CURRENT = n), this;
    };
    ne.prototype.type = function() {
      return this._options.type || (this._attributes.length == 0 ? "fragment" : "div");
    };
    ne.prototype.tagName = function() {
      return this._tagName || String(this._options.type);
    };
    ne.prototype.isDynamicType = function() {
      return this.type() instanceof Q1 || this._options.dynamic;
    };
    ne.prototype.isFunctional = function() {
      return !!this._options.functional;
    };
    ne.prototype.isSVG = function() {
      return this._isSVG == null ? this._isSVG = this.type() instanceof ce && this.type().isSVG() || this._parent && this._parent.isSVG() : this._isSVG;
    };
    ne.prototype.isAsset = function() {
      return this._isAsset || false;
    };
    ne.prototype.create_ = function() {
      return this.isFragment() || this.isSlot() ? this.runtime().createLiveFragment : this.isAsset() ? this.runtime().createAssetElement : this.isSVG() ? this.runtime().createSVGElement : this.isDynamicType() ? this.runtime().createDynamic : this.isComponent() ? this.runtime().createComponent : this.runtime().createElement;
    };
    ne.prototype.isReactive = function() {
      return this.option("reactive") || (this._parent ? this._parent.isReactive() : !(this.scope__() instanceof le));
    };
    ne.prototype.isDetached = function() {
      return this.option("detached");
    };
    ne.prototype.hasDynamicParts = function() {
      return this._dynamics.length == 0 && !this.hasDynamicFlags() && !(this.type() instanceof Q1) && (this.body() ? this.body().values() : []).every(function(e) {
        return e instanceof de || e instanceof ne && !e.isDynamicType();
      }) && !this.hasNonTagChildren() && !this.isSlot() && !this.option("dynamic") && this.setHasDynamicParts(false), true;
    };
    ne.prototype.js = function(t) {
      var e, r = O, i = r.isExpression(), s = [], n = [], o = [], a = function(Q) {
        return Q instanceof Ft && (Q = Q.toString()), n.push(Q);
      }, l = this.parent(), p = this.fragment(), c = this._tagDeclaration;
      let _ = this._tagDeclaration ? this._tagDeclaration.scope() : null, f = this.isSelf() ? "self" : this.isFragment() ? "'fragment'" : this.type().isClass && this.type().isClass() ? this.type().toTypeArgument() : "'" + this.type()._value + "'";
      (this.type()._value == "global" || this.type()._value == "teleport") && (f = "'i-" + this.type()._value + "'", O.use("dom_teleport")), l && !this._consumedBy && this.set({detached: true});
      var m = t.inline, g = this.isSVG(), b = this.isReactive(), N = false, y = true, v = this._attrmap.route || this._attrmap.routeTo || this._attrmap["route-to"], d = this.isComponent() || v;
      v && r.use("router");
      var w = null, k = false;
      this._asset && (f = this._assetRef.c());
      var T = "";
      if (this.isSlot())
        if (this.root().isSelf())
          T = J(".", J(".", this.root().tvar(), Ze("__slots")), Ze(this.option("name"))).c();
        else {
          let Q = J(".", this.root().tvar(), this.gsym("#registerFunctionalSlot")).c();
          T = "" + Q + "(" + Ze(this.option("name")).c() + ")";
        }
      if (r.tsc()) {
        this.type() instanceof ce && !this.isSelf() ? this.type().isAsset() ? a("" + this.tvar() + " = new " + Tt("SVGSVGElement", this.type())) : a("" + this.tvar() + " = new " + Tt(this.type().toClassName(), this.type())) : this.isSelf() ? a("" + this.tvar() + " = " + this.type().c()) : this.isDynamicType() ? this._options.dynamic ? (a("" + this.tvar() + " = new \u0393any"), a("" + this.type().c())) : (a("" + this.tvar() + " = new " + Tt("\u0393any", this.type())), a("" + this.type().c())) : (a("" + this.tvar() + " = new " + Tt("HTMLElement", this.type())), a("" + this.type().c()));
        for (let Dt = 0, Zt = It(this._attributes), F = Zt.length, H; Dt < F; Dt++)
          H = Zt[Dt], this._ref = this.tvar(), (H instanceof nr || H instanceof lr || H instanceof mr) && a(H.c(t));
        let Q = this.body() ? this.body().values() : [];
        for (let Dt = 0, Zt = It(Q), F = Zt.length; Dt < F; Dt++)
          a(Zt[Dt].c());
        if (t.inline || i)
          return a(this.option("return") ? "return " + this.tvar() : "" + this.tvar()), "(" + n.join(`,
`) + ")";
        {
          this.option("return") && a("return " + this.tvar());
          let Dt = n.join(`;
`);
          return this.hasBlockScopedVariables() && (Dt = "{" + Dt + "}"), Dt;
        }
      }
      var S = d || this.hasDynamicFlags() || this.attrs().length || this.option("markWhenBuilt") || this.isDetached() || this.isDynamicType() || !!this.option("key"), C = l && l.option("condition");
      this.isDynamicType() && (k = true, f = "" + this.owncvar() + ".value"), this._cssid && this._classNames.unshift(this.cssid());
      for (let Q = 0, Dt = It(O.closures()), Zt = Dt.length, F; Q < Zt; Q++)
        F = Dt[Q], F._cssns && (!this.isSelf() || F != _) && this._classNames.push(F._cssns);
      for (let Q = 0, Dt = It(this.tagLikeParents()), Zt = Dt.length, F; Q < Zt; Q++)
        F = Dt[Q], F._cssns && this._classNames.push(F._cssns);
      if (c && !this.isSelf() && (e = c.cssref(this.option("reference") ? null : this.scope__()))) {
        let Q = c._cssns;
        this._classNames.indexOf(Q) >= 0 && this._classNames.splice(this._classNames.indexOf(Q), 1), this._classNames.push(e);
      }
      if (this.option("reference") && _) {
        let Q = String(this.option("reference")).slice(1);
        this._classNames.push("ref--" + Q);
      }
      if (this.option("key") && this.set({detached: true}), this._classNames.length) {
        let Q = [], Dt = false;
        for (let F = 0, H = It(this._classNames), Y = H.length, P; F < Y; F++)
          P = H[F], P instanceof mr ? P.name() instanceof Ci ? (Q.push(P.name().c({as: "substr"})), Dt = true) : Q.push(P.rawClassName()) : P instanceof Z ? (Dt = true, Q.push("${" + P.c() + "}")) : Q.push(P);
        Q = Q.filter(function(F, H) {
          return Q.indexOf(F) == H;
        });
        let Zt = Dt ? "`" : "'";
        this._className = Zt + Q.join(" ") + Zt;
      }
      var L = [f, p && !this.option("detached") ? p.tvar() : "null", this._className || "null", "null"], D = this.body() ? this.body().values() : [];
      D.length == 1 && D[0] instanceof ji && D[0].isStatic() && !this.isSelf() && !this.isSlot() && (L[3] = D[0].value().c(), D = []), this._dynamics.length == 0 && !this.hasDynamicFlags() && !w && !this.isDynamicType() && D.every(function(Q) {
        return Q instanceof de || Q instanceof ne && !Q.isDynamicType() && !Q.option("key");
      }) && !d && !this.hasNonTagChildren() && !this.isSlot() && !this.option("dynamic") && !this.option("reference") && (y = false, l instanceof ne && !(this.up() instanceof re) && (N = true)), (this.isFragment() || this.isSlot()) && (L = [this._flags].concat(L.slice(1, 2))), this.isSlot() && (L[1] = "null");
      var I = Tt("" + this.create_() + "(" + L.join(",") + ")", this.type());
      if (this.option("reference")) {
        let Q = L[1];
        L[1] = "null", I = Tt("" + this.create_() + "(" + L.join(",") + ")", this.type()), this.set({ctor: I}), I = J(".", this.scope__().context(), this.option("reference")).c(), I = "(" + this.tvar() + "=" + I + "," + this.tvar() + "[" + this.gsym("##up") + "]=" + Q + "," + this.tvar() + ")";
        let Dt = this.option("tagdeclbody");
        if (Dt && !O.tsc()) {
          let Zt = Dt._head || (Dt._head = []), F = be.toValidIdentifier(this.option("reference").c()), H = this.option("ctor"), Y = "let el=" + H + `;
	return (Object.defineProperty(this,'` + F + "',{value:el}),el);", P = "get " + F + `(){
	` + Y + `
}`;
          Zt.push(P);
        }
      } else
        I = "" + this.tvar() + "=" + I;
      this.option("assign") && (I = J("=", this.option("assign"), Rt(I)).c());
      let U = this.hasDynamicDescendants();
      if (this._consumedBy) {
        if (t.inline && !N && (this.option("iife", true), t.inline = false), this.isShadowRoot()) {
          let Q = "" + this.cvar() + "[" + this.osym() + "]";
          a("" + this.tvar() + "=" + Q + " || (" + Q + "=" + p.tvar() + ".attachShadow({mode:'open'}))");
        } else if (this.isSlot() && !this.hasChildren()) {
          if (a("" + this.tvar() + "=" + T), !(l instanceof Ue)) {
            let Q = "" + this.cvar() + "[" + this.osym() + "]";
            a("(" + Q + " = " + p.tvar() + this.domCall("insert") + "(" + this.tvar() + "," + this._flags + "," + Q + "))");
          }
        } else if (this.isSlot() && this._consumed.length == 1)
          this._consumed[0].set({dynamic: true, detached: true}), this._consumed[0]._tvar = this.tvar(), this._consumed[0]._parent = l;
        else if (l instanceof Nr) {
          this._bvar = this.tagvar("B");
          let Q = this.option("key");
          if (this.option("key"))
            if (this.isDynamicType()) {
              a("" + this.owncvar() + "=" + this.renderContextFn() + "(" + this.option("key").c() + ")");
              let Dt = "" + this.owncvar() + ".run(" + this.type().c() + ")";
              a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Dt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.owncvar() + ".cache(" + I + "))");
            } else {
              let Dt = "" + this.parentCache() + ".get(" + this.kvar() + "=" + this.option("key").c() + ")";
              a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Dt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.parentCache() + ".set(" + this.kvar() + "," + I + "))");
            }
          else if (l.isIndexed()) {
            let Dt = "" + this.parentCache() + "[" + l.kvar() + "]";
            a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Dt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + Dt + "=" + I + ")");
          } else if (l.isKeyed())
            if (this.isDynamicType()) {
              let Dt = "(" + this.owncvar() + "=" + this.dynamicContextFn() + "(" + this.type().osym() + "," + l.kvar() + ")).run(" + this.type().c() + ")";
              a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Dt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.owncvar() + ".cache(" + I + "))");
            } else {
              let Dt = "(" + this.kvar() + "=" + this.renderContextFn() + "(" + this.osym() + ")).get(" + l.kvar() + ")";
              a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Dt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.kvar() + ".set(" + l.kvar() + "," + I + "))");
            }
          this._ref = "" + this.tvar(), a("" + this.bvar() + "||(" + this.tvar() + "[" + this.gsym("##up") + "]=" + p.tvar() + ")"), (this._dynamics.length || this._consumed.length && D.length) && (k = true);
        } else if (!b)
          a("(" + I + ")");
        else if (N)
          this._ref = this.tvar(), this._bvar = l.bvar(), a("" + l.bvar() + " || (" + I + ")");
        else {
          let Q = this.option("key"), Dt = this._cref || (this._cref = "" + this.cvar() + "[" + this.osym() + "]");
          if (S && (this._bvar = this.tagvar("B")), this.isDynamicType()) {
            a(Q ? "" + this.owncvar() + "=" + this.dynamicContextFn() + "(" + Q.osym() + "," + Q.c() + ")" : "" + this.owncvar() + "=" + this.renderContextFn() + "(" + this.type().osym() + ")");
            let Zt = "" + this.owncvar() + ".run(" + this.type().c() + ")";
            a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Zt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.owncvar() + ".cache(" + I + "))");
          } else if (Q) {
            a("" + this.owncvar() + "=" + this.renderContextFn() + "(" + Q.osym() + ")");
            let Zt = "" + this.owncvar() + ".run(" + Q.c() + ")";
            a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Zt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.owncvar() + ".cache(" + I + "))");
          } else {
            let Zt = "" + this.parentCache() + "[" + this.osym() + "]";
            a(S ? "(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Zt + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + Zt + "=" + I + ")" : "(" + this.tvar() + "=" + Zt + ") || (" + Zt + "=" + I + ")");
          }
          this.isDetached() && a("" + this.bvar() + "||(" + this.tvar() + "[" + this.gsym("##up") + "]=" + p.tvar() + ")"), this._ref = this.tvar(), w && (k = true), l instanceof Ue && (k = true);
        }
        k && (this._cvar = this.tvar());
      } else if (this._ref = "" + this.tvar(), this.isSelf())
        a("" + this.tvar() + "=this"), a("" + this.tvar() + this.domCall("open") + "()"), a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "[" + this.osym() + "] === 1) || (" + this.bvar() + "=" + this.dvar() + "=0," + this.tvar() + "[" + this.osym() + "]=1)"), this._cvar = this.tvar();
      else if (b) {
        let Q = "" + this.parentCache() + "[" + this.osym() + "]";
        this.isDynamicType() ? (this.option("key") ? a("" + this.owncvar() + "=" + this.dynamicContextFn() + "(" + this.osym() + "," + this.option("key").c() + ")") : a("" + this.owncvar() + "=" + this.renderContextFn() + "(" + this.osym() + ")"), I = "" + this.owncvar() + ".cache(" + I + ")", a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + this.owncvar() + ".run(" + this.type().c() + ")) || (" + this.bvar() + "=" + this.dvar() + "=0," + I + ")")) : this.option("key") ? (a("" + this.cvar() + "=(" + Q + "=" + Q + "||new Map())"), a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + this.cvar() + ".get(" + this.kvar() + "=" + this.option("key").c() + ")) || (" + this.bvar() + "=" + this.dvar() + "=0," + this.cvar() + ".set(" + this.kvar() + "," + I + "))")) : this.isMemoized() ? a("(" + this.bvar() + "=" + this.dvar() + "=1," + this.tvar() + "=" + Q + ") || (" + this.bvar() + "=" + this.dvar() + "=0," + this.tvar() + "=" + Q + "=" + I + ")") : a("(" + this.bvar() + "=" + this.dvar() + "=0," + this.tvar() + "=" + I + ")"), a("" + this.bvar() + " || (" + this.tvar() + "[" + this.gsym("##up") + "]=" + this.parentRef() + ")"), this._cvar = this.tvar(), this._ref = this.tvar(), i && !U ? (this.option("inline", N = true), t.inline = true) : (i && this.option("iife", true), t.inline = false);
      } else
        a("(" + I + ")"), this._cvar = this.tvar(), i && !y ? (this.option("inline", N = true), t.inline = true) : (this.option("iife", true), t.inline = false);
      if (this.isDynamicType() && a({if: "" + this.tvar() + "[" + this.gsym("#isRichElement") + "]"}), this._slots)
        for (let Q = this._slots, Dt, Zt = 0, F = Object.keys(Q), H = F.length, Y; Zt < H; Zt++) {
          Y = F[Zt], Dt = Q[Y], O.use("slots");
          let P = this.isDynamicType() ? this.gsym("#getFunctionalSlot") : this.gsym("#getSlot");
          a("" + Dt.tvar() + " = " + J(".", this.tvar(), P).c() + "('" + Y + "'," + this.cvar() + ")");
        }
      let B = [];
      for (let Q = 0, Dt = It(this._attributes), Zt = Dt.length, F; Q < Zt; Q++) {
        if (F = Dt[Q], F._chain && F._chain.length && !(F instanceof lr)) {
          let H = F.modifiers(), Y = !H.isStatic(), P = H.extractDynamics(), M = F.modsIdentifier(), X = M ? J(".", this.tvar(), M).c() : "" + this.cvar() + "[" + H.osym() + "]";
          if (Y) {
            a("" + this.vvar() + " = " + X + " || (" + H.c(t) + ")");
            for (let ee = 0, oe = It(P), tt = oe.length, $; ee < tt; ee++) {
              $ = oe[ee];
              let et = $.option("key"), W = $.option("index");
              a("" + J(".", this.vvar(), et).c() + "[" + W + "]=" + $.c(t));
            }
            a("" + this.bvar() + " || (" + X + "=" + this.vvar() + ")");
          } else
            a("" + this.bvar() + " || (" + X + "=" + H.c(t) + ")");
        }
        if (!b)
          a(F.c(t));
        else if (F.isStatic())
          a("" + this.bvar() + " || (" + F.c(t) + ")");
        else {
          let H = "" + this.cvar() + "[" + F.osym() + "]";
          if (F instanceof mr) {
            let Y = F.condition(), P = F.name(), M, X, ee = !this.isDynamicType();
            Y && !Y.isPrimitive() && (M = "" + this.cvar() + "[" + Y.osym() + "]", a("(" + this.vvar() + "=(" + Y.c(t) + "||undefined)," + this.vvar() + "===" + M + "||(" + this.dvar() + "|=" + Se.DIFF_FLAGS + "," + M + "=" + this.vvar() + "))")), P && !(P instanceof br) && !P.isPrimitive() && !(P instanceof Ci) && !(P instanceof dr) && (X = "" + this.cvar() + "[" + P.osym() + "]", a("(" + this.vvar() + "=" + P.c(t) + "," + this.vvar() + "===" + X + "||(" + this.dvar() + "|=" + Se.DIFF_FLAGS + "," + X + "=" + this.vvar() + "))")), M && X ? B.push("(" + M + " ? (" + X + "||'') : '')") : M ? B.push("(" + M + " ? " + P.c({as: "string"}) + " : '')") : X ? B.push("(" + X + "||'')") : P instanceof Ci ? B.push(P.c({as: "string"})) : B.push("'" + P.c({as: "substring"}) + "'");
          } else if (F instanceof lr) {
            let Y = F.modifiers(), P = Y.extractDynamics(), M = false;
            a("" + this.hvar() + " = " + H + " || (" + H + "=" + Y.c(t) + ")");
            for (let X = 0, ee = It(P), oe = ee.length, tt; X < oe; X++) {
              tt = ee[X];
              let $ = tt.option("key"), et = tt.option("index"), W = "" + J(".", this.hvar(), $).c() + "[" + et + "]";
              $ == "options" ? (M = true, a("(" + this.vvar() + "=" + tt.c(t) + "," + this.vvar() + "===" + W + " || (" + W + "=" + this.vvar() + "," + this.dvar() + "|=" + Se.DIFF_MODIFIERS + "|" + Se.DIFF_INLINE + "))")) : a("" + W + "=" + tt.c(t));
            }
            a("" + this.bvar() + " || " + this.ref() + ".on$(" + F.quoted() + "," + this.hvar().c() + "," + this.scope__().context().c() + ")"), M && a("" + this.dvar() + "&" + Se.DIFF_INLINE + " && (" + this.dvar() + "^=" + Se.DIFF_INLINE + "," + this.hvar() + "[" + this.gsym("#visit") + "]?.())");
          } else if (F instanceof nr && F.ns() == "bind") {
            let Y = F.value(), P = o3(Y);
            if (d = true, P instanceof Array) {
              let M = P[0], X = P[1], ee = "[]", oe = M && M.isConstant(), tt = X && X.isConstant();
              oe && tt ? ee = "[" + M.c(t) + "," + X.c(t) + "]" : tt && (ee = "[null," + X.c(t) + "]"), a("" + this.vvar() + "=" + H + " || (" + H + "=" + this.ref() + ".bind$('" + F.key() + "'," + ee + "))");
              for (let $ = 0, et = It(P), W = et.length, rt; $ < W; $++)
                rt = et[$], rt && rt.isConstant() || a("" + this.vvar() + "[" + $ + "]=" + rt.c(t));
            } else if (P instanceof Ft) {
              let M = "function(){ return " + P.c(t) + " }", X = "function(v$){ " + P.c(t) + " = v$ }", ee = "{get:" + M + ",set:" + X + "}";
              a("" + this.bvar() + " || " + this.ref() + ".bind$('" + F.key() + "'," + ee + ")");
            }
          } else {
            g && F.option({svg: true});
            let Y = F.value();
            if (F.valueIsStatic())
              a("" + this.bvar() + " || (" + Tt(F.js(t), F) + ")");
            else if (Y instanceof ie)
              a("(" + F.js(t) + ")");
            else if (Y._variable) {
              let P = Y.c(t);
              F.setValue(Rt("" + H + "=" + P)), a("(" + P + "===" + H + " || (" + Tt(F.js(t), F) + "))");
            } else
              F.setValue(Rt("" + H + "=" + this.vvar())), a("(" + this.vvar() + "=" + Y.c(t) + "," + this.vvar() + "===" + H + " || (" + Tt(F.js(t), F) + "))");
          }
        }
      }
      if (B.length || (this.isSelf() || this.isDynamicType()) && this._className) {
        this._className && B.unshift(this._className);
        let Q = "" + this.dvar() + "&" + Se.DIFF_FLAGS, Dt = this.isSelf() ? "flagSelf$" : "flag$";
        (this.isSelf() || this.isDynamicType()) && (Q = "(!" + this.bvar() + "||" + Q + ")"), this.isDynamicType() ? a("(" + Q + " && " + this.tvar() + ".flags.reconcile(" + this.osym() + "," + B.join("+' '+") + "))") : a("(" + Q + " && " + this.tvar() + "." + Dt + "(" + B.join("+' '+") + "))");
      }
      let q = D.length;
      for (let Q = 0, Dt = D.length, Zt; Q < Dt; Q++)
        if (Zt = D[Q], Zt instanceof de)
          a(b ? "" + this.bvar() + " || " + this.tvar() + this.domCall("insert") + "(" + Zt.c(t) + ")" : "" + this.tvar() + this.domCall("insert") + "(" + Zt.c(t) + ")");
        else if (Zt instanceof dr)
          for (let F = 0, H = It(Zt.placeholders()), Y = H.length; F < Y; F++) {
            let P = H[F]._setter, M = "" + this.cvar() + "[" + P.osym() + "]", X = P.value();
            if (P.valueIsStatic())
              a("" + this.bvar() + " || (" + Tt(P.js(t), P) + ")");
            else if (X instanceof ie)
              a("(" + P.js(t) + ")");
            else if (X._variable) {
              let ee = X.c(t);
              P.setValue(Rt("" + M + "=" + ee)), a("(" + ee + "===" + M + " || (" + Tt(P.js(t), P) + "))");
            } else
              P.setValue(Rt("" + M + "=" + this.vvar())), a("(" + this.vvar() + "=" + X.c(t) + "," + this.vvar() + "===" + M + " || (" + Tt(P.js(t), P) + "))");
          }
        else
          a(Zt.c(t));
      if (d && (!l && !this.isSelf() ? (o.push("" + this.bvar() + " || " + this.parentCache() + ".sym || !" + this.tvar() + ".setup || " + this.tvar() + ".setup(" + this.dvar() + ")"), o.push("" + this.parentCache() + ".sym || " + this.tvar() + this.domCall("end") + "(" + this.dvar() + ")")) : this.isSelf() ? o.push("" + this.tvar() + this.domCall("close") + "(" + this.dvar() + ")") : (o.push("" + this.bvar() + " || !" + this.tvar() + ".setup || " + this.tvar() + ".setup(" + this.dvar() + ")"), o.push("" + this.tvar() + this.domCall("end") + "(" + this.dvar() + ")"))), this.isDynamicType() && o.push({endif: true}), l instanceof Nr)
        l.isKeyed() ? o.push("" + l.ref() + ".push(" + this.tvar() + "," + l.kvar() + "++," + this.kvar() + ")") : l.isIndexed() && o.push("" + l.kvar() + "++");
      else if (!(this.isFragment() && l && !(l instanceof Ue))) {
        if (l && !(l instanceof Ue) && (this.isComponent() || w || this.option("reference"))) {
          let Q = p.ref(), Dt = this._cref;
          w || this.isDynamicType() || this.isDetached() ? p instanceof Oo ? o.push("(" + this.tvar() + "==" + Dt + ") || (!" + Dt + " && " + Q + this.domCall("appendChild") + "(" + Dt + "=" + this.tvar() + ")) || (" + Q + this.domCall("replaceChild") + "(" + this.tvar() + "," + Dt + ")," + Dt + "=" + this.tvar() + ")") : o.push("(" + this.tvar() + "==" + Dt + ") || (!" + Dt + " && (" + Dt + "=" + this.tvar() + ")" + this.domCall("insertInto") + "(" + Q + ")) || " + Dt + this.domCall("replaceWith") + "(" + Dt + "=" + this.tvar() + "," + Q + ")") : this.isDetached() || o.push("" + this.bvar() + " || " + Q + this.domCall("appendChild") + "(" + this.tvar() + ")");
        }
      }
      if (this.option("fragmented") && a("" + this.runtime().renderContext + ".context=null"), this._consumedBy || (this.option("return") || this.option("iife") ? o.push("return " + this.tvar()) : (!b || t.inline) && o.push("" + this.tvar())), n = n.concat(o), t.inline) {
        t.inline = m;
        let Q = "(", Dt = n.length - 1;
        for (let Zt = 0, F = It(n), H = F.length, Y; Zt < H; Zt++)
          Y = F[Zt], Y.if ? Q += "(" + Y.if + ` && (
` : (Q += Y.endif ? "))" : Y, Zt == Dt || n[Zt + 1].endif || (Q += `,
`));
        if (Q += ")", this.isSlot() && this.hasChildren()) {
          let Zt = "";
          if (!(l instanceof Ue)) {
            let F = "" + this.cvar() + "[" + this.osym() + "]", H = "" + this.cvar() + "[" + this.osym("_") + "]", Y = "" + this.cvar() + "[" + this.osym("__") + "]", P = "" + this.tvar() + "===" + Y + " || (" + H + " = " + p.tvar() + this.domCall("insert") + "(" + Y + "=" + this.tvar() + "," + this._flags + "," + H + "))";
          }
          Q = "(" + this.tvar() + "=" + T + "),(!" + this.tvar() + " || !" + this.tvar() + ".hasChildNodes() && " + Q + "),(" + Zt + ")";
        }
        return Q;
      }
      t.inline = m;
      let K = "";
      for (let Q = 0, Dt = It(n), Zt = Dt.length, F; Q < Zt; Q++)
        F = Dt[Q], F.if ? K += "if(" + F.if + `){
` : F.endif ? K += `};
` : K += F + `;
`;
      if (this.isSlot() && this.hasChildren()) {
        let Q = "";
        if (!(l instanceof Ue)) {
          let Dt = "" + this.cvar() + "[" + this.osym() + "]", Zt = "" + this.cvar() + "[" + this.osym("_") + "]", F = "" + this.cvar() + "[" + this.osym("__") + "]";
          Q = "" + this.tvar() + "===" + F + " || (" + Zt + " = " + p.tvar() + this.domCall("insert") + "(" + F + "=" + this.tvar() + "," + this._flags + "," + Zt + "))";
        }
        K = "" + this.tvar() + "=" + T + `;
if(!` + this.tvar() + " || !" + this.tvar() + `.hasChildNodes()){
` + K + `
}
` + Q;
      }
      return this.option("iife") ? (K = "(()=>{" + K + ";})()", this.option("return") && (K = "return " + K)) : this.hasBlockScopedVariables() && (K = "{" + K + "}"), K;
    };
    function Da() {
      return Ut.apply(this, arguments);
    }
    A(Da, Ut);
    E.TagWrapper = Da;
    Da.prototype.visit = function() {
      return this.value() instanceof Array ? this.value().map(function(t) {
        return t.traverse();
      }) : this.value().traverse(), this;
    };
    Da.prototype.c = function() {
      return "" + this.scope__().imba().c() + ".getTagForDom(" + this.value().c({expression: true}) + ")";
    };
    function Qs(t, e) {
      this._nodes = t || [], this._options = e;
    }
    A(Qs, jt);
    E.Selector = Qs;
    Qs.prototype.add = function(t, e) {
      return this.push(t), this;
    };
    Qs.prototype.isExpressable = function() {
      return true;
    };
    Qs.prototype.visit = function() {
      let t = [];
      for (let e = 0, r = It(this._nodes), i = r.length, s; e < i; e++)
        s = r[e], t.push(!(s instanceof br) && s.traverse());
      return t;
    };
    Qs.prototype.query = function() {
      var t = "", e = [];
      for (let i = 0, s = It(this.nodes()), n = s.length, o; i < n; i++) {
        o = s[i];
        var r = o.c();
        o instanceof br ? e.push("'" + r.replace(/\'/g, '"') + "'") : e.push(r);
      }
      return e.join(" + ");
    };
    Qs.prototype.toString = function() {
      return Pt.cary(this.nodes()).join("");
    };
    Qs.prototype.js = function(t) {
      var e = this.option("type"), r = Pt.c(this.query()), i = this.scope__().imba().c();
      return e == "%" ? "" + i + ".q$(" + r + "," + t.scope().context().c({explicit: true}) + ")" : e == "%%" ? "" + i + ".q$$(" + r + "," + t.scope().context().c({explicit: true}) + ")" : "" + i + ".q" + e + "(" + r + ")";
    };
    function y3() {
      return Ut.apply(this, arguments);
    }
    A(y3, Ut);
    E.SelectorPart = y3;
    function Co() {
      return Ut.apply(this, arguments);
    }
    A(Co, Ut);
    E.Await = Co;
    Co.prototype.func = function(t) {
      return this._func;
    };
    Co.prototype.setFunc = function(t) {
      return this._func = t, this;
    };
    Co.prototype.js = function(t) {
      return "await " + this.value().c();
    };
    Co.prototype.visit = function(t) {
      this.value().traverse();
      var e = t.up(ie);
      return e && e.set({async: true}), this;
      this.warn("toplevel await not allowed");
      var r = t.up(Lt), i = t.relative(r, 1), s = t.relative(this, -1);
      if (this.setFunc(new Ma([], [])), this.func().body().setNodes(r.defers(i, this)), this.func().scope().visit(), s instanceof Ve) {
        s.left().traverse();
        var n = s.left().node();
        n instanceof Oe ? this.func().params().at(0, true, n.variable().name()) : (s.setRight(this.func().params().at(0, true)), this.func().body().unshift(s), this.func().scope().context());
      }
      return this.func().traverse(), this;
    };
    function Ma(t, e, r, i, s) {
      Ma.prototype.__super__.constructor.call(this, t, e, r, i, s);
    }
    A(Ma, ie);
    E.AsyncFunc = Ma;
    Ma.prototype.scopetype = function() {
      return Ao;
    };
    function cr(t, e) {
      this._name = t, this._alias = e;
    }
    A(cr, Z);
    E.ESMSpecifier = cr;
    cr.prototype.alias = function(t) {
      return this._alias;
    };
    cr.prototype.setAlias = function(t) {
      return this._alias = t, this;
    };
    cr.prototype.name = function(t) {
      return this._name;
    };
    cr.prototype.setName = function(t) {
      return this._name = t, this;
    };
    cr.prototype.loc = function() {
      return this._alias ? this._alias.loc() : this._name.loc();
    };
    cr.prototype.visit = function(t) {
      return this._declaration = t.up(jr), this._declaration instanceof Gn ? this._importer = this._declaration : this._exporter = this._declaration, this._cname = be.clearLocationMarkers(this._name.c()), this._key = this._alias ? be.clearLocationMarkers(this._alias.c()) : this._cname, this._exporter ? this._exporter.source() || (this._variable = this.scope__().root().lookup(this._cname)) : (this._variable = this.scope__().root().register(this._key, this, {type: "imported"}), t.registerSemanticToken(this._alias || this._name, this._variable)), this;
    };
    cr.prototype.js = function() {
      let t = be.toValidIdentifier(this._name.c()), e = this._alias && be.toValidIdentifier(this._alias.c());
      return e ? "" + t + " as " + e : "" + t;
    };
    function d2() {
      return cr.apply(this, arguments);
    }
    A(d2, cr);
    E.ImportSpecifier = d2;
    d2.prototype.visit = function() {
      if (d2.prototype.__super__.visit.apply(this, arguments), this._importer && O.cjs())
        return this._variable._c = J(".", this._importer.variable(), this._name).c();
    };
    function m2() {
      return cr.apply(this, arguments);
    }
    A(m2, cr);
    E.ImportNamespaceSpecifier = m2;
    m2.prototype.visit = function() {
      if (m2.prototype.__super__.visit.apply(this, arguments), this._importer && O.cjs())
        return this._variable._c = this._importer.variable().c();
    };
    function g3() {
      return cr.apply(this, arguments);
    }
    A(g3, cr);
    E.ExportSpecifier = g3;
    function v3() {
      return cr.apply(this, arguments);
    }
    A(v3, cr);
    E.ExportAllSpecifier = v3;
    function Va() {
      return cr.apply(this, arguments);
    }
    A(Va, cr);
    E.ImportDefaultSpecifier = Va;
    Va.prototype.visit = function() {
      if (Va.prototype.__super__.visit.apply(this, arguments), O.cjs() && this._importer)
        return this._variable._c = "" + this._importer.variable().c() + ".default";
    };
    function y2() {
      return jt.apply(this, arguments);
    }
    A(y2, jt);
    E.ESMSpecifierList = y2;
    y2.prototype.js = function() {
      return "{" + y2.prototype.__super__.js.apply(this, arguments) + "}";
    };
    function jr(t, e, r) {
      this.setup(), this._keyword = t, this._specifiers = e, this._source = r, this._defaults = e && e.find(function(i) {
        return i instanceof Va;
      });
    }
    A(jr, Pi);
    E.ESMDeclaration = jr;
    jr.prototype.variable = function(t) {
      return this._variable;
    };
    jr.prototype.setVariable = function(t) {
      return this._variable = t, this;
    };
    jr.prototype.source = function(t) {
      return this._source;
    };
    jr.prototype.setSource = function(t) {
      return this._source = t, this;
    };
    jr.prototype.isExport = function() {
      return String(this.keyword()) == "export";
    };
    jr.prototype.js = function() {
      let t = Tt(this.keyword().c(), this.keyword());
      if (this._specifiers && this._source)
        return "" + t + " " + Pt.cary(this._specifiers).join(",") + " from " + this._source.c();
      if (this._specifiers)
        return "" + t + " " + Pt.cary(this._specifiers).join(",");
      if (this._source)
        return "" + t + " " + this._source.c();
    };
    function Lo() {
      return Ut.apply(this, arguments);
    }
    A(Lo, Ut);
    E.AssetReference = Lo;
    Lo.prototype.setup = function() {
      return this;
    };
    Lo.prototype.asset = function() {
      return this._value;
    };
    Lo.prototype.c = function() {
      let t = "", e = this.value().ref.c(), r = this.value().path;
      return this.asset().kind && r.indexOf("?as=") == -1 && (r += "?as=" + this.asset().kind), O.tsc() ? t = "const " + e + " = /** @type{ImbaAsset} */({path:'" + r + "'})" : t = "import " + e + " from " + xo("'" + r + "'"), t;
    };
    function Gn() {
      return jr.apply(this, arguments);
    }
    A(Gn, jr);
    E.ImportDeclaration = Gn;
    Gn.prototype.ownjs = function() {
      var t, e = this._source && this._source.c({locRef: "path"});
      if (O.tsc()) {
        var t = It(this._source.raw().split("?"));
        let i = t[0], s = t[1];
        (i.match(/\.(html|svg|png|jpe?g|gif)$/) || s && s.match(/^as=/)) && (e = Tt("'data:text/asset;charset=utf-8," + this._source.raw() + "'", this._source));
      }
      if (O.cjs()) {
        let r = "require(" + e + ")";
        return this._specifiers ? this._defaults && this._specifiers.length == 1 ? "var " + this._variable.c() + " = " + this.util().requireDefault(Rt(r)).c() : "var " + this._variable.c() + " = " + r : r;
      }
      return this._specifiers && this._source ? "" + Tt(this.keyword().c(), this.keyword()) + " " + Pt.cary(this._specifiers).join(",") + " from " + e : "" + Tt(this.keyword().c(), this.keyword()) + " " + e;
    };
    Gn.prototype.js = function() {
      return this.ownjs();
    };
    Gn.prototype.push = function(t) {
      let e = this._next || this;
      return this._up.replace(e, [e, Fe, this._next = t]);
    };
    Gn.prototype.visit = function() {
      var t;
      if (O.cjs() && this._specifiers) {
        var e = this._source.c(), r = be.clearLocationMarkers(e).match(/([\w\_\-]+)(\.js|imba)?[\"\']$/);
        this._alias = r ? "_$" + r[1].replace(/[\/\-]/g, "_") : "mod$", this._variable = this.scope__().register(this._alias, null, {system: true});
      }
      for (let i = 0, s = It(this._specifiers), n = s.length; i < n; i++)
        (t = s[i]) && t.traverse && t.traverse();
      this.scope__()._lastImport = this, this._up = this.up();
    };
    function wc() {
      return jr.apply(this, arguments);
    }
    A(wc, jr);
    E.ImportTypeDeclaration = wc;
    wc.prototype.js = function() {
      if (!O.tsc())
        return "";
      let t = this._source.c();
      if (this._defaults) {
        let e = "/** @typedef {import(SOURCE).default} NAME */true";
        return e = e.replace("SOURCE", t).replace("NAME", this._defaults.c()), e;
      } else {
        let e = [];
        for (let r = 0, i = It(this._specifiers[0].nodes()), s = i.length, n; r < s; r++) {
          n = i[r];
          let o = n._name.c(), a = n._alias ? n._alias.c() : n._name.c(), l = "/** @typedef {import(" + t + ")." + o + "} " + a + " */true";
          e.push(l);
        }
        return e.join(`;
`);
      }
    };
    function $s() {
      return jr.apply(this, arguments);
    }
    A($s, jr);
    E.ExportDeclaration = $s;
    $s.prototype.visit = function() {
      var t;
      this.scope__().root().activateExports();
      for (let e = 0, r = It(this._specifiers), i = r.length; e < i; e++)
        (t = r[e]) && t.traverse && t.traverse();
      return this;
    };
    $s.prototype.js = function() {
      let t = Tt(this.keyword().c(), this.keyword());
      if (O.cjs()) {
        let r = [];
        if (this._source) {
          this._variable || (this._variable = this.scope__().register(null, null, {system: true}));
          let i = "var " + this._variable.c() + " = require(" + this._source.c() + ")";
          r.push(i);
          let s = `Object.defineProperty(exports, $name$, {
	enumerable: true, get: function get() { return $path$; }
});`;
          for (let n = 0, o = It(this._specifiers[0]), a = o.length, l; n < a; n++) {
            l = o[n];
            let p = s.replace("$name$", (l.alias() || l.name()).toStr().c());
            p = p.replace("$path$", J(".", this._variable, l.name()).c()), r.push(p);
          }
        } else
          for (let i = 0, s = It(this._specifiers[0]), n = s.length, o; i < n; i++) {
            o = s[i];
            let a = J("=", J(".", Rt("exports"), o.alias() || o.name()), o._variable);
            r.push(a.c());
          }
        return r.join(`;
`);
      }
      if (this._specifiers && this._source)
        return "" + t + " " + Pt.cary(this._specifiers).join(",") + " from " + this._source.c();
      if (this._specifiers)
        return "" + t + " " + Pt.cary(this._specifiers).join(",");
      if (this._source)
        return "" + t + " " + this._source.c();
    };
    function b3() {
      return $s.apply(this, arguments);
    }
    A(b3, $s);
    E.ExportAllDeclaration = b3;
    function k3() {
      return $s.apply(this, arguments);
    }
    A(k3, $s);
    E.ExportNamedDeclaration = k3;
    function Ri() {
      return Ut.apply(this, arguments);
    }
    A(Ri, Ut);
    E.Export = Ri;
    Ri.prototype.loc = function() {
      let t = this.option("keyword");
      return t && t.region ? t.region() : Ri.prototype.__super__.loc.apply(this, arguments);
    };
    Ri.prototype.consume = function(t) {
      return t instanceof Qe ? (this.option("return", true), this) : Ri.prototype.__super__.consume.apply(this, arguments);
    };
    Ri.prototype.visit = function() {
      return this.scope__().root().activateExports(), this.value().set({export: this.option("keyword") || this, return: this.option("return"), default: this.option("default")}), Ri.prototype.__super__.visit.apply(this, arguments);
    };
    Ri.prototype.js = function(t) {
      var e = this;
      let r = e.option("default");
      if (e.value() instanceof jt && e.value().map(function(i) {
        return i.set({export: e});
      }), e.value() instanceof Re || e.value() instanceof _e)
        return e.value().c();
      if (e.value() instanceof Ve && e.value().left() instanceof Oe)
        if (O.cjs()) {
          let i = e.value().left().value(), s = r ? "default" : e.value().left().value().symbol();
          return e.value().setRight(J("=", Rt("exports." + s), e.value().right())), e.value().c();
        } else {
          let i = Tt("export", e.option("keyword")), s = r && Tt("default", e.option("default"));
          return r ? "" + i + " " + s + " " + e.value().c() : "" + i + " " + e.value().c();
        }
      if (r) {
        let i = e.value().c();
        return O.cjs() ? "exports.default = " + i : "export default " + i;
      }
      return e.value().c();
    };
    function g2() {
      return Ut.apply(this, arguments);
    }
    A(g2, Ut);
    E.Require = g2;
    g2.prototype.js = function(t) {
      var e = this.value() instanceof Ae ? this.value().value() : this.value(), r = e.c({locRef: "path"});
      return r == "require" ? "require" : "require(" + r + ")";
    };
    function Js() {
      Js.prototype.__super__.constructor.apply(this, arguments), this._key = String(this._value).slice(1, -1);
    }
    A(Js, Ut);
    E.EnvFlag = Js;
    Js.prototype.raw = function() {
      return this._raw == null ? this._raw = O.env("" + this._key) : this._raw;
    };
    Js.prototype.isTruthy = function() {
      var t = this.raw();
      if (t !== void 0)
        return !!t;
    };
    Js.prototype.loc = function() {
      return [0, 0];
    };
    Js.prototype.c = function() {
      var t = this.raw(), e = t;
      return t !== void 0 ? typeof t == "string" || t instanceof String ? t.match(/^\d+(\.\d+)?$/) ? e = String(parseFloat(t)) : e = "'" + t + "'" : e = "" + t : e = "ENV_" + this._key, Tt(e, this._value);
    };
    function ds() {
      return Z.apply(this, arguments);
    }
    A(ds, Z);
    E.StyleNode = ds;
    function x3() {
      return ds.apply(this, arguments);
    }
    A(x3, ds);
    E.StyleSelector = x3;
    function dr(t, e) {
      this._placeholders = [], this._selectors = t, this._body = e;
    }
    A(dr, ds);
    E.StyleRuleSet = dr;
    dr.prototype.isStatic = function() {
      return true;
    };
    dr.prototype.isGlobal = function() {
      return !!this.option("global");
    };
    dr.prototype.addPlaceholder = function(t) {
      return this._placeholders.push(t), this;
    };
    dr.prototype.placeholders = function() {
      return this._placeholders;
    };
    dr.prototype.cssid = function() {
      return this._cssid || (this._cssid = "" + O.root().sourceId() + "-" + this.oid());
    };
    dr.prototype.visit = function(t, e) {
      let r = this._tagDeclaration = t.up(sr);
      this._css = {}, this._flag = t.up(mr), this._tag = this._flag && this._flag._tag;
      let i = String(this._selectors).trim();
      if (t.parent() instanceof us)
        if (t.up(2) instanceof sr)
          this._css.type = "component", this._variable || (this._sel = i || "&", this._css.scope = r);
        else
          throw "css not allowed in class declaration";
      else
        t.parent() instanceof fs ? (this._tag = t.up(Et), this._sel = i || "&", this._css.type = "scoped", this._css.scope = this._tag) : this.option("toplevel") ? t.up(fs) ? (this._tag = t.up(Et), this._sel = i || "&", this._css.scope = this._tag, this._css.ns = this.cssid(), this._css.id = this.cssid(), this._css.type = "scoped", this._name = this.cssid(), this.set({inTagTree: true})) : (this._css.scope = this.isGlobal() ? null : this.scope__().closure(), this._sel || (this._sel = i)) : e.rule ? (this._sel || (this._sel = this._selectors && this._selectors.toString && this._selectors.toString().trim()), this._sel.indexOf("&") == -1 && (this._sel = "& " + this._sel)) : !this._name && this._tag && this._flag && !this._flag._condition ? (this._css.scope = this._tag, this._name = this._tag.cssid(), this._sel = "&") : this._name || (this._name = this.cssid(), this._sel = "." + this._name);
      if (this._selectors && this._selectors.traverse && this._selectors.traverse(), this._styles = {}, this._body && this._body.traverse && this._body.traverse({rule: this, styles: this._styles, rootRule: e.rule || this}), this._placeholders.length) {
        if (this.option("inTagTree"))
          for (let s = 0, n = It(this._placeholders), o = n.length, a; s < o; s++) {
            a = n[s];
            let l = new p2(a.name());
            l._tag = this._tag, l.setValue(a.runtimeValue()), l.set({propname: a._propname, unit: a.option("unit"), styleterm: a}), a._setter = l, l.traverse();
          }
        else if (!this._flag)
          for (let s = 0, n = It(this._placeholders), o = n.length, a; s < o; s++)
            a = n[s], console.log("" + a), a.warn("Only allowed inside tag tree");
      }
      if (e.rule && e.styles)
        e.styles[this._sel] ? Object.assign(e.styles[this._sel], this._styles) : e.styles[this._sel] = this._styles;
      else {
        let s = this._tagDeclaration, n = {selectors: [], ns: this._css.ns, id: this._css.id, type: this._css.type, scope: this._css.scope, component: r, inline: !!this._flag, global: !!this.isGlobal(), mixins: {}, apply: {}, depth: this._tag ? this._tag._level : 0};
        this._css = new p_(null, this._sel, this._styles, n).toString(), O.css().add(this._css, n);
      }
      return this;
    };
    dr.prototype.toRaw = function() {
      return "" + this._name;
    };
    dr.prototype.c = function() {
      if (this.option("toplevel") && this.option("export"))
        return O.cjs() ? "exports." + this._identifier.c() + " = '" + this._name + "'" : Tt("export", this.option("export")) + (" const " + this._identifier.c() + " = '" + this._name + "'");
      if (this._tvar) {
        let e = ["" + this._tvar + " = '" + this._name + "'"], r = function(o) {
          return e.push(o);
        }, i = this._tag.cvar(), s = this._tag.bvar();
        for (let o = 0, a = It(this._placeholders), l = a.length; o < l; o++) {
          let p = a[o]._setter, c = "" + i + "[" + p.osym() + "]", _ = p.value();
          r("" + Tt(p.js(this.o()), p));
        }
        return O.isExpression() ? "(" + e.join(",") + ")" : e.join(`;
`);
      }
      if (O.tsc() && this._placeholders.length) {
        let e = [];
        for (let i = 0, s = It(this.placeholders()), n = s.length; i < n; i++)
          e.push(s[i].runtimeValue().c());
        return O.isExpression() ? "(" + e.join(",") + ")" : e.join(`;
`);
      }
      return this.option("inClassBody") || this.option("inTagTree") || this.option("toplevel") ? "" : "'" + this._name + "'";
    };
    function ja() {
      return jt.apply(this, arguments);
    }
    A(ja, jt);
    E.StyleBody = ja;
    ja.prototype.visit = function() {
      let t = this._nodes, e = 0, r;
      for (let i = 0, s = It(t), n = s.length, o; i < n; i++)
        o = s[i], o instanceof tn && (o._property._name || o._property.setName(r), r = o._property._name);
      for (; e < t.length; ) {
        let i = t[e], s = i.traverse();
        if (s != i && s instanceof Array) {
          t.splice.apply(t, [].concat([e, 1], Array.from(s)));
          continue;
        }
        i == t[e] && e++;
      }
      return this;
    };
    ja.prototype.toJSON = function() {
      return this.values();
    };
    function tn(t, e) {
      this._property = t, this._expr = e instanceof Ji ? e : new Ji(e);
    }
    A(tn, ds);
    E.StyleDeclaration = tn;
    tn.prototype.clone = function(t, e) {
      return e || (e = this._expr.clone()), (typeof e == "string" || typeof e == "number") && (e = [e]), !(e instanceof Array) && (!(e instanceof jt) || e instanceof v2) && (e = [e]), new tn(this._property.clone(t), e);
    };
    tn.prototype.visit = function(t, e) {
      var r = this, i;
      let s = t.theme(), n = t.parent(), o = String(r._property.name()), a = s.expandProperty(o);
      if (r._expr && r._expr.traverse({rule: e.rule, rootRule: e.rootRule, decl: r, property: r._property}), a instanceof Array) {
        n.replace(r, a.map(function(p) {
          return r.clone(p);
        }));
        return;
      } else
        a && a != o && (r._property = r._property.clone(a));
      let l = String(a || o).replace(/-/g, "_");
      if (r._expr && r._expr.traverse({decl: r, property: r._property}), s[l] && !r.option("plain")) {
        let p = s[l].apply(s, r._expr.toArray()), c = [];
        if (p instanceof Array)
          r._expr = new Ji(p);
        else if (p instanceof Object) {
          for (let _, f = 0, m = Object.keys(p), g = m.length, b; f < g; f++)
            if (b = m[f], _ = p[b], b.indexOf("&") >= 0) {
              let N = new ja([]), y = new dr(Rt(b), N);
              c.push(y);
              for (let v, d = 0, w = Object.keys(_), k = w.length, T; d < k; d++)
                T = w[d], v = _[T], N.add(r.clone(T, v));
            } else
              c.push(r.clone(b, _).set({plain: b == o}));
          n.replace(r, c);
          return;
        }
      }
      if (r._expr && (r._expr.traverse({decl: r, property: r._property}), r._expr.set({parens: false})), e.styles) {
        let p = r._property.toKey(), c = r._expr;
        e.selector && (p = JSON.stringify([e.selector, p])), r._property.isUnit() && r._property.number() != 1 && (c = Rt("calc(" + c.c() + " / " + r._property.number() + ")")), e.styles[p] && (i = e.styles[p], delete e.styles[p]), e.styles[p] = c.c({property: r._property});
      }
      return r;
    };
    tn.prototype.toCSS = function() {
      return "" + this._property.c() + ": " + Pt.cary(this._expr).join(" ");
    };
    tn.prototype.toJSON = function() {
      return this.toCSS();
    };
    function ur(t) {
      var e;
      this._token = t, this._parts = String(this._token).replace(/(^|\b)\$/g, "--").split(/\b(?=[\.\@])/g);
      for (let r = 0, i = It(this._parts), s = i.length; r < s; r++)
        this._parts[r] = i[r].replace(/^\./, "@.");
      this._name = String(this._parts[0]), (e = this._name.match(/^(\d+)([a-zA-Z]+)$/)) && (this._number = parseInt(e[1]), this._unit = e[2]), this._name.match(/^[\w\-]/) || this._parts.unshift(this._name = null);
    }
    A(ur, ds);
    E.StyleProperty = ur;
    ur.prototype.name = function(t) {
      return this._name;
    };
    ur.prototype.setName = function(t) {
      return this._name = t, this;
    };
    ur.prototype.number = function(t) {
      return this._number;
    };
    ur.prototype.setNumber = function(t) {
      return this._number = t, this;
    };
    ur.prototype.unit = function(t) {
      return this._unit;
    };
    ur.prototype.setUnit = function(t) {
      return this._unit = t, this;
    };
    ur.prototype.setName = function(t) {
      var e;
      return (e = t.match(/^(\d+)([a-zA-Z]+)$/)) ? (this._number = parseInt(e[1]), this._unit = e[2]) : this._number = this._unit = null, this._name = t, this;
    };
    ur.prototype.name = function() {
      return this._name || (this._name = String(this._parts[0]));
    };
    ur.prototype.clone = function(t) {
      return new ur([t || this.name()].concat(this.modifiers()).join(""));
    };
    ur.prototype.addModifier = function(t) {
      return this._parts.push(t), this;
    };
    ur.prototype.isUnit = function() {
      return this._unit;
    };
    ur.prototype.modifiers = function() {
      return this._parts.slice(1);
    };
    ur.prototype.toJSON = function() {
      return this.name() + this.modifiers().join("\xA7");
    };
    ur.prototype.toString = function() {
      return this.name() + this.modifiers().join("\xA7");
    };
    ur.prototype.toKey = function() {
      return [this.isUnit() ? "--u_" + this._unit : this.name()].concat(this.modifiers()).join("\xA7");
    };
    ur.prototype.c = function() {
      return this.toString();
    };
    function b2(t) {
      this._name = t, String(t)[0] == "$" && (this._name = "--" + String(t).slice(1));
    }
    A(b2, ds);
    E.StylePropertyIdentifier = b2;
    b2.prototype.toJSON = function() {
      return String(this._name);
    };
    b2.prototype.toString = function() {
      return String(this._name);
    };
    function k2(t) {
      this._name = t;
    }
    A(k2, ds);
    E.StylePropertyModifier = k2;
    k2.prototype.toJSON = function() {
      return String(this._name);
    };
    k2.prototype.toString = function() {
      return String(this._name);
    };
    function Ji() {
      return jt.apply(this, arguments);
    }
    A(Ji, jt);
    E.StyleExpressions = Ji;
    Ji.prototype.load = function(t) {
      return t instanceof Array && (t = t.map(function(e) {
        return e instanceof hr ? e : new hr(e);
      })), [].concat(t);
    };
    Ji.prototype.c = function(t) {
      let e = Pt.cary(this._nodes, t).join(", ");
      return this.option("parens") && (e = "( " + e + " )"), e;
    };
    Ji.prototype.clone = function() {
      return new Ji(this._nodes.slice(0));
    };
    Ji.prototype.toArray = function() {
      return this._nodes.filter(function(t) {
        return t instanceof hr;
      }).map(function(t) {
        return t.toArray();
      });
    };
    function hr() {
      return jt.apply(this, arguments);
    }
    A(hr, jt);
    E.StyleExpression = hr;
    hr.prototype.load = function(t) {
      return [].concat(t);
    };
    hr.prototype.toString = function() {
      return Pt.cary(this._nodes).join(" ");
    };
    hr.prototype.toArray = function() {
      return this._nodes.slice(0);
    };
    hr.prototype.clone = function() {
      return new hr(this._nodes.slice(0));
    };
    hr.prototype.c = function(t) {
      return t && t.as == "js" ? Pt.cary(this._nodes, t).join(" ") : this.toString();
    };
    hr.prototype.toJSON = function() {
      return this.toString();
    };
    hr.prototype.toArray = function() {
      return this._nodes;
    };
    hr.prototype.toIterable = function() {
      return this._nodes;
    };
    hr.prototype.addParam = function(t, e) {
      return t._op = e, this.last().addParam(t), this;
    };
    hr.prototype.reclaimParams = function() {
      let t = this.filter(function(e) {
        return e.param;
      });
      for (let e = 0, r = It(t), i = r.length, s; e < i; e++) {
        s = r[e];
        let n = s.param, o = n._op;
        this.add([o, n], {after: s}), s._params = [];
      }
    };
    hr.prototype.visit = function(t, e) {
      if (e && e.property) {
        let r = e.property._name;
        (r == "gt" || r == "grid-template") && this.reclaimParams();
      }
      return hr.prototype.__super__.visit.apply(this, arguments);
    };
    function Bn() {
      return Ut.apply(this, arguments);
    }
    A(Bn, Ut);
    E.StyleParens = Bn;
    Bn.prototype.visit = function(t, e) {
      return Bn.prototype.__super__.visit.apply(this, arguments), this.set({calc: !t.up(Bn) && !t.up(en)});
    };
    Bn.prototype.c = function(t) {
      let e = this._value.c();
      return t && t.as == "js" ? e : this.option("calc") ? "calc(" + e + ")" : "(" + e + ")";
    };
    function v2() {
      return jt.apply(this, arguments);
    }
    A(v2, jt);
    E.StyleOperation = v2;
    v2.prototype.c = function(t) {
      return Pt.cary(this._nodes, t).join(" ");
    };
    function We() {
      return Ut.apply(this, arguments);
    }
    A(We, Ut);
    E.StyleTerm = We;
    We.prototype.valueOf = function() {
      return String(this._value);
    };
    We.prototype.toString = function() {
      return String(this._value);
    };
    We.prototype.toRaw = function() {
      return this.valueOf();
    };
    We.prototype.toAlpha = function() {
      return this.toString();
    };
    We.prototype.visit = function(t, e) {
      this._token = this._value, this._property = e.property, this._propname = e.property && e.property._name, this.alone = t.up() instanceof hr && t.up().values().length == 1;
      let r = t.theme().$value(this, 0, this._propname);
      return t.up(Bn) || t.up(en) || (this._resolvedValue = r), this;
    };
    Object.defineProperty(We.prototype, "param", {get: function() {
      return this._params && this._params[0];
    }, configurable: true});
    We.prototype.kind = function() {
      return this._kind;
    };
    We.prototype.runtimeValue = function() {
      return this.value();
    };
    We.prototype.addParam = function(t) {
      return this._params || (this._params = []), this._params.push(t), this;
    };
    We.prototype.c = function(t) {
      return this._resolvedValue && !(this._resolvedValue instanceof Z) ? Fs(this._resolvedValue) : this.valueOf();
    };
    function ms() {
      return We.apply(this, arguments);
    }
    A(ms, We);
    E.StyleInterpolationExpression = ms;
    ms.prototype.name = function(t) {
      return this._name;
    };
    ms.prototype.setName = function(t) {
      return this._name = t, this;
    };
    ms.prototype.loc = function() {
      return [this._startLoc, this._endLoc];
    };
    ms.prototype.visit = function(t, e) {
      return ms.prototype.__super__.visit.apply(this, arguments), e.rootRule && e.rootRule.addPlaceholder(this), this._id = "" + this.sourceId() + "_" + this.oid(), this._name = "--" + this._id, this._runtimeValue = this.value();
    };
    ms.prototype.runtimeValue = function() {
      return this._runtimeValue;
    };
    ms.prototype.c = function() {
      return "var(--" + this._id + ")";
    };
    function en(t, e) {
      this._name = t, this._params = e;
    }
    A(en, Z);
    E.StyleFunction = en;
    en.prototype.kind = function() {
      return "function";
    };
    en.prototype.visit = function(t, e) {
      return this._params && this._params.traverse && this._params.traverse(), this;
    };
    en.prototype.toString = function() {
      return this.c();
    };
    en.prototype.c = function(t) {
      let e = String(this._name), r = this._params.c();
      if (e == "url")
        return xo("" + e + "(" + ma.strip(r) + ")", "path");
      let i = "" + e + "(" + r + ")";
      return t && t.as == "js" && (i = be.singlequote(i)), i;
    };
    function Sc() {
      return Ut.apply(this, arguments);
    }
    A(Sc, Ut);
    E.StyleURL = Sc;
    Sc.prototype.c = function() {
      let t = String(this._value);
      return xo(ma.strip(t), "path");
    };
    function rn() {
      return We.apply(this, arguments);
    }
    A(rn, We);
    E.StyleIdentifier = rn;
    rn.prototype.color = function(t) {
      return this._color;
    };
    rn.prototype.setColor = function(t) {
      return this._color = t, this;
    };
    rn.prototype.visit = function(t) {
      var e;
      let r = this.toString();
      return r == "black" || r == "white" ? (e = t.theme().$color(r)) && this.setColor(this.param ? e.alpha(this.param.toAlpha()) : e) : r.match(/^[a-zA-Z]+\d$/) && (this.setColor("/*#*/" + r), this.param && this.setColor(this.color() + "/" + this.param.toAlpha())), rn.prototype.__super__.visit.apply(this, arguments);
    };
    rn.prototype.c = function(t) {
      if (this.color())
        return this.color().toString();
      let e = this.toString();
      return e[0] == "$" ? (e = "var(--" + e.slice(1) + ")", t && t.as == "js" && (e = be.singlequote(e)), e) : rn.prototype.__super__.c.apply(this, arguments);
    };
    function w3() {
      return We.apply(this, arguments);
    }
    A(w3, We);
    E.StyleString = w3;
    function S3() {
      return We.apply(this, arguments);
    }
    A(S3, We);
    E.StyleColor = S3;
    function Tc() {
      return We.apply(this, arguments);
    }
    A(Tc, We);
    E.StyleVar = Tc;
    Tc.prototype.c = function(t) {
      return this.toString();
    };
    var T_ = "cm mm Q in pc pt px em ex ch rem vw vh vmin vmax % s ms fr deg rad grad turn Hz kHz".split(" ");
    function Gr(t) {
      this._value = t;
      let e = String(t).match(/^([\-\+]?[\d\.]*)([a-zA-Z]+|%)?$/);
      this._number = parseFloat(e[1]), this._unit = e[2] || null;
    }
    A(Gr, We);
    E.StyleDimension = Gr;
    Gr.prototype.unit = function(t) {
      return this._unit;
    };
    Gr.prototype.setUnit = function(t) {
      return this._unit = t, this;
    };
    Gr.prototype.number = function(t) {
      return this._number;
    };
    Gr.prototype.setNumber = function(t) {
      return this._number = t, this;
    };
    Gr.prototype.clone = function(t, e) {
      t === void 0 && (t = this._number), e === void 0 && (e = this._unit);
      let r = new Gr(this.value());
      return r._unit = e, r._number = t, r;
    };
    Gr.prototype.toString = function() {
      return "" + this._number + (this._unit || "");
    };
    Gr.prototype.toRaw = function() {
      return this._unit ? this.toString() : this._number;
    };
    Gr.prototype.c = function(t) {
      let e = this._resolvedValue && !(this._resolvedValue instanceof Z) ? Fs(this._resolvedValue) : this.valueOf();
      return t && t.as == "js" && this._unit && (e = be.singlequote(e)), e;
    };
    Gr.prototype.valueOf = function() {
      return this.unit() == "u" ? this.number() * 4 + "px" : this.unit() == null ? this.number() : da(this.unit(), T_) >= 0 ? String(this._value) : "calc(var(--u_" + this.unit() + ",1" + this.unit() + ") * " + this._number + ")";
    };
    Gr.prototype.toAlpha = function() {
      return this.unit() ? this.valueOf() : this.number() + "%";
    };
    function T3() {
      return Gr.apply(this, arguments);
    }
    A(T3, Gr);
    E.StyleNumber = T3;
    function Ht(t) {
      this._args = t;
    }
    A(Ht, Z);
    E.Util = Ht;
    Ht.prototype.args = function(t) {
      return this._args;
    };
    Ht.prototype.setArgs = function(t) {
      return this._args = t, this;
    };
    Ht.extend = function(t, e) {
      return new Ht.Extend([t, e]);
    };
    Ht.callImba = function(t, e, r) {
      return He(J(".", t.imba(), new At(e)), r);
    };
    Ht.repeat = function(t, e) {
      for (var r = ""; e > 0; )
        e % 2 == 1 && (r += t), t += t, e >>= 1;
      return r;
    };
    Ht.keys = function(t) {
      var e = new Ys("Object"), r = new At("keys");
      return He(J(".", e, r), [t]);
    };
    Ht.len = function(t, e) {
      var r = new At("length"), i = J(".", t, r);
      return e && i.cache({force: true, pool: "len"}), i;
    };
    Ht.indexOf = function(t, e) {
      var r = new Ht.IndexOf([t, e]);
      return r;
    };
    Ht.slice = function(t, e, r) {
      var i = new At("slice");
      return console.log("slice " + e + " " + r), He(J(".", t, i), Pt.compact([e, r]));
    };
    Ht.iterable = function(t, e) {
      if (O.tsc())
        return t;
      var r = new Ht.Iterable([t]);
      return e && r.cache({force: true, pool: "iter"}), r;
    };
    Ht.counter = function(t, e) {
      var r = new Ie(t);
      return e && r.cache({force: true, pool: "counter"}), r;
    };
    Ht.array = function(t, e) {
      var r = new Ht.Array([t]);
      return e && r.cache({force: true, pool: "list"}), r;
    };
    Ht.prototype.name = function() {
      return "requireDefault$";
    };
    Ht.prototype.js = function() {
      return this.scope__().root().helper(this, this.helper()), "" + this.name() + "(" + this._args.map(function(t) {
        return t.c();
      }).join(",") + ")";
    };
    var E3 = {setField: `(target,key,value,o){
	Object.defineProperty(target,key,{value:value});
};`, unit: `(value,unit){
	return value + unit;
};`, optNegIndex: "(value,index){ return value ? value[value.length + index] : null };", negIndex: "(value,index){ return value[value.length + index] };", extendTag: `(el,cls){
	Object.defineProperties(el,Object.getOwnPropertyDescriptors(cls.prototype));
	return el;
};`, initField: `(target,key,o){
	Object.defineProperty(target,key,o);
};`, watcher: `(k,w){
	return { enumerable:true,
		set(v){var o=this[k]; (v===o)||(this[k]=v,this[w]({value:v,oldValue:o}));},
		get(){ return this[k] }
	};
};`, decorate: `(decorators,target,key,desc){
	var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
	if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
	else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
	return c > 3 && r && Object.defineProperty(target, key, r), r;
};`, contains: `(a,b){
	var res = (b && b.indexOf) ? b.indexOf(a) : [].indexOf.call(a,b);
	return res >= 0;
};`, requireDefault: `(obj){
	return obj && obj.__esModule ? obj : { default: obj };
};`, virtualSuper: `(target){
	var up = Object.getPrototypeOf(target);
	var supers = Object.getOwnPropertyDescriptors(target);
	
	const map = new WeakMap();
	const obj = Object.defineProperties(Object.create(up), supers);

	const proxy = {
		apply: (self, key, ...params) => { return obj[key].apply(self, params) },
		get: (self, key) => { return Reflect.get(obj, key, self); },
		set: (self, key, value, receiver) => { return Reflect.set(obj, key, value, self);}
	}

	return function (s) {
		return map.get(s) || map.set(s, new Proxy(s, proxy)) && map.get(s);
	}
};`};
    Ht.Helper = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.Helper, Ht);
    Ht.Helper.prototype.name = function() {
      return this.option("name");
    };
    Ht.Helper.prototype.helper = function() {
      return this.option("helper");
    };
    for (let t, e = 0, r = Object.keys(E3), i = r.length, s; e < i; e++)
      s = r[e], t = E3[s], Ht[s] = function() {
        for (var n = arguments, o = n.length, a = new Array(o > 0 ? o : 0); o > 0; )
          a[o - 1] = n[--o];
        let l = "function " + s + "$__" + t;
        return new Ht.Helper(a).set({name: s + "$__", helper: l});
      };
    Ht.Extend = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.Extend, Ht);
    Ht.Extend.prototype.helper = function() {
      return `function extend$__(target,ext){
	// @ts-ignore
	const descriptors = Object.getOwnPropertyDescriptors(ext);
	delete descriptors.constructor;
	// @ts-ignore
	Object.defineProperties(target,descriptors);
	return target;
};`;
    };
    Ht.Extend.prototype.js = function(t) {
      return this.scope__().root().helper(this, this.helper()), "extend$__(" + Pt.compact(Pt.cary(this.args())).join(",") + ")";
    };
    Ht.IndexOf = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.IndexOf, Ht);
    Ht.IndexOf.prototype.helper = function() {
      return `function idx$__(a,b){
	return (b && b.indexOf) ? b.indexOf(a) : [].indexOf.call(a,b);
};`;
    };
    Ht.IndexOf.prototype.js = function(t) {
      return this.scope__().root().helper(this, this.helper()), "idx$__(" + this.args().map(function(e) {
        return e.c();
      }).join(",") + ")";
    };
    Ht.Promisify = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.Promisify, Ht);
    Ht.Promisify.prototype.helper = function() {
      return `function promise$__(a){
	if(a instanceof Array){
		console.warn("await (Array) is deprecated - use await Promise.all(Array)");
		return Promise.all(a);
	} else {
		return (a && a.then ? a : Promise.resolve(a));
	}
}`;
    };
    Ht.Promisify.prototype.js = function(t) {
      return this.scope__().root().helper(this, this.helper()), "promise$__(" + this.args().map(function(e) {
        return e.c();
      }).join(",") + ")";
    };
    Ht.Iterable = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.Iterable, Ht);
    Ht.Iterable.prototype.helper = function() {
      return "function iter$__(a){ let v; return a ? ((v=a.toIterable) ? v.call(a) : a) : a; };";
    };
    Ht.Iterable.prototype.js = function(t) {
      return this.args()[0] instanceof je ? this.args()[0].c() : (this.scope__().root().helper(this, this.helper()), "iter$__(" + this.args()[0].c() + ")");
    };
    Ht.IsFunction = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.IsFunction, Ht);
    Ht.IsFunction.prototype.js = function(t) {
      return "" + this.args()[0].c();
    };
    Ht.Array = function() {
      return Ht.apply(this, arguments);
    };
    A(Ht.Array, Ht);
    Ht.Array.prototype.js = function(t) {
      return "new Array(" + this.args().map(function(e) {
        return e.c();
      }) + ")";
    };
    function Ga(t) {
      return this._root = t, this._map = [], this;
    }
    Ga.prototype.add = function(t, e) {
      return this._map[t] = e, this._map.indexOf(e) < 0 && this._map.push(e), this;
    };
    Ga.prototype.lookup = function(t) {
      return this._map[t];
    };
    Ga.prototype.plain = function() {
      return JSON.parse(JSON.stringify(this._map));
    };
    Ga.prototype.toJSON = function() {
      return this._map;
    };
    function Ba(t) {
      return this._root = t, this._map = {}, this;
    }
    Ba.prototype.add = function(t, e) {
      return this._map[t] = e, this;
    };
    Ba.prototype.register = function(t) {
      var e = t.namepath();
      return this._map[e] || (this._map[e] = t), this;
    };
    Ba.prototype.plain = function() {
      return JSON.parse(JSON.stringify(this._map));
    };
    Ba.prototype.toJSON = function() {
      return this._map;
    };
    function Nt(t, e) {
      this._nr = O.incr("scopes"), this._head = [], this._node = t, this._parent = e, this._vars = new Mi([]), this._entities = new Ga(this), this._meta = {}, this._annotations = [], this._closure = this, this._virtual = false, this._counter = 0, this._varmap = {}, this._counters = {}, this._varpool = [], this._refcounter = 0, this._declListeners = [], this._level = (e ? e._level : -1) + 1, this.setup();
    }
    E.Scope = Nt;
    Nt.prototype.level = function(t) {
      return this._level;
    };
    Nt.prototype.setLevel = function(t) {
      return this._level = t, this;
    };
    Nt.prototype.context = function(t) {
      return this._context;
    };
    Nt.prototype.setContext = function(t) {
      return this._context = t, this;
    };
    Nt.prototype.node = function(t) {
      return this._node;
    };
    Nt.prototype.setNode = function(t) {
      return this._node = t, this;
    };
    Nt.prototype.parent = function(t) {
      return this._parent;
    };
    Nt.prototype.setParent = function(t) {
      return this._parent = t, this;
    };
    Nt.prototype.varmap = function(t) {
      return this._varmap;
    };
    Nt.prototype.setVarmap = function(t) {
      return this._varmap = t, this;
    };
    Nt.prototype.varpool = function(t) {
      return this._varpool;
    };
    Nt.prototype.setVarpool = function(t) {
      return this._varpool = t, this;
    };
    Nt.prototype.params = function(t) {
      return this._params;
    };
    Nt.prototype.setParams = function(t) {
      return this._params = t, this;
    };
    Nt.prototype.head = function(t) {
      return this._head;
    };
    Nt.prototype.setHead = function(t) {
      return this._head = t, this;
    };
    Nt.prototype.vars = function(t) {
      return this._vars;
    };
    Nt.prototype.setVars = function(t) {
      return this._vars = t, this;
    };
    Nt.prototype.counter = function(t) {
      return this._counter;
    };
    Nt.prototype.setCounter = function(t) {
      return this._counter = t, this;
    };
    Nt.prototype.entities = function(t) {
      return this._entities;
    };
    Nt.prototype.setEntities = function(t) {
      return this._entities = t, this;
    };
    Nt.prototype.p = function() {
      return O.loglevel() > 0 && console.log.apply(console, arguments), this;
    };
    Nt.prototype.oid = function() {
      return this._oid || (this._oid = O.generateId(""));
    };
    Nt.prototype.stack = function() {
      return O;
    };
    Nt.prototype.kind = function() {
      return this._kind || (this._kind = this.constructor.name.replace("Scope", "").toLowerCase());
    };
    Nt.prototype.runtime = function() {
      return this.root().runtime();
    };
    Nt.prototype.setup = function() {
      return this._selfless = true;
    };
    Nt.prototype.incr = function(t) {
      t === void 0 && (t = "i");
      var e = this._counters[t] || (this._counters[t] = 0);
      return this._counters[t]++, e;
    };
    Nt.prototype.nextShortRef = function() {
      return Pt.counterToShortRef(this._refcounter++);
    };
    Nt.prototype.memovar = function(t, e) {
      this._memovars || (this._memovars = {});
      let r = this._memovars[t];
      return r || (r = this._memovars[t] = this.declare(r, e)), r;
    };
    Nt.prototype.captureVariableDeclarations = function(t) {
      let e = [];
      return this._declListeners.push(e), t(), this._declListeners.pop(), e;
    };
    Nt.prototype.meta = function(t, e) {
      return e != null ? (this._meta[t] = e, this) : this._meta[t];
    };
    Nt.prototype.namepath = function() {
      return "?";
    };
    Nt.prototype.cssid = function() {
      return this._cssid || (this._cssid = "" + this.root().sourceId() + "-" + this.oid());
    };
    Nt.prototype.cssns = function() {
      return this._cssns || (this._cssns = "" + this.root().sourceId() + "_" + this.oid());
    };
    Nt.prototype.tagCache = function() {
      return this._tagCache || (this._tagCache = this.declare("\u03F2\u03C4", Rt("" + this.runtime().getRenderContext + "()"), {system: true, temporary: true, alias: "\u03F2\u03C4"}));
    };
    Nt.prototype.tagTempCache = function() {
      return this._tagTempCache || (this._tagTempCache = this.declare("\u03F2\u03C4\u03C4", Rt("{}"), {system: true, temporary: true, alias: "\u03F2\u03C4\u03C4"}));
    };
    Nt.prototype.context = function() {
      return this._context || (this.selfless() ? this._context = this.parent().context().fromScope(this) : this._context = new rr(this)), this._context;
    };
    Nt.prototype.traverse = function() {
      return this;
    };
    Nt.prototype.visit = function() {
      return this._parent ? this : (this._parent = O.scope(1), this._level = O.scopes().length - 1, O.addScope(this), this.root().scopes().push(this), this);
    };
    Nt.prototype.wrap = function(t) {
      return this._parent = t._parent, t._parent = this, this;
    };
    Nt.prototype.virtualize = function() {
      return this;
    };
    Nt.prototype.root = function() {
      return O.ROOT;
      var t;
    };
    Nt.prototype.register = function(t, e, r) {
      if (e === void 0 && (e = null), r === void 0 && (r = {}), t || (r.system = true), r.system)
        return new (r.varclass || sn)(this, t, e, r);
      t = Pt.sym(t);
      var i = this._varmap.hasOwnProperty(t) && this._varmap[t];
      if (i && e && i.type() != "global" && e.error("Cannot redeclare variable"), i && !r.unique && i.type() != "global")
        return i;
      let s = r.lookup && this.parent() && this.parent().lookup(t);
      var n = new (r.varclass || Ft)(this, t, e, r);
      if (s && (n._parent = s), !r.system && (!i || i.type() == "global") && (this._varmap[t] = n), O.state() && O.state().variables instanceof Array && O.state().variables.push(n), this._declListeners.length)
        for (let o = 0, a = It(this._declListeners), l = a.length; o < l; o++)
          a[o].push(n);
      return n;
    };
    Nt.prototype.annotate = function(t) {
      return this._annotations.push(t), this;
    };
    Nt.prototype.declare = function(t, e, r) {
      var i;
      e === void 0 && (e = null), r === void 0 && (r = {});
      var s = t instanceof Ft ? t : this.register(t, null, r), n = this._vars.add(s, e);
      return (i = s.declarator()) || s.setDeclarator(n), s;
    };
    Nt.prototype.reusevar = function(t) {
      return this.temporary(null, {reuse: true}, t);
    };
    Nt.prototype.temporary = function(t, e, r) {
      if (e === void 0 && (e = {}), r === void 0 && (r = null), this._systemscope && this._systemscope != this)
        return this._systemscope.temporary(t, e, r);
      if (r || (r = e.name), e.temporary = true, r && e.reuse && this._vars["_temp_" + r])
        return this._vars["_temp_" + r];
      if (e.pool) {
        for (let s = 0, n = It(this._varpool), o = n.length, a; s < o; s++)
          if (a = n[s], a.pool() == e.pool && a.declarator() == null)
            return a.reuse(t);
      }
      var i = new sn(this, r, t, e);
      return this._varpool.push(i), this._vars.push(i), r && e.reuse && (this._vars["_temp_" + r] = i), i;
    };
    Nt.prototype.lookup = function(t) {
      this._lookups || (this._lookups = {});
      var e = null;
      return t = Pt.sym(t), this._varmap.hasOwnProperty(t) ? e = this._varmap[t] : (e = this.parent() && this.parent().lookup(t), e && (this._nonlocals || (this._nonlocals = {}), this._nonlocals[t] = e)), e;
    };
    Nt.prototype.requires = function(t, e) {
      return e === void 0 && (e = ""), this.root().requires(t, e);
    };
    Nt.prototype.imba = function() {
      return this._imba || this.imbaDependency("core"), O.meta().universal = false, this._imba || (this._imba = O.isNode() ? Rt("(this && this[" + this.root().symbolRef("#imba").c() + "] || globalThis[" + this.root().symbolRef("#imba").c() + "])") : Rt("imba"));
    };
    Nt.prototype.imbaDependency = function() {
      for (var t, e = arguments, r = e.length, i = new Array(r > 0 ? r : 0); r > 0; )
        i[r - 1] = e[--r];
      return (t = this.root()).imbaDependency.apply(t, i);
    };
    Nt.prototype.autodeclare = function(t) {
      return this.vars().add(t);
    };
    Nt.prototype.free = function(t) {
      return t.free(), this;
    };
    Nt.prototype.selfless = function() {
      return !!this._selfless;
    };
    Nt.prototype.closure = function() {
      return this._closure;
    };
    Nt.prototype.finalize = function() {
      return this;
    };
    Nt.prototype.klass = function() {
      for (var t = this; t; )
        if (t = t.parent(), t instanceof Ii)
          return t;
      return null;
    };
    Nt.prototype.head = function() {
      return [this._vars, this._params];
    };
    Nt.prototype.c = function(t) {
      var e;
      return t === void 0 && (t = {}), t.expression = false, this.node().body().setHead(this.head()), e = this.node().body().c(t);
    };
    Nt.prototype.region = function() {
      return this.node().body().region();
    };
    Nt.prototype.loc = function() {
      return this.node().loc();
    };
    Nt.prototype.dump = function() {
      var t = this, e = Object.keys(t._varmap).map(function(i) {
        var s = t._varmap[i];
        return s.references().length ? Pt.dump(s) : null;
      }), r = {nr: t._nr, type: t.constructor.name, level: t.level() || 0, vars: Pt.compact(e), loc: t.loc()};
      return r;
    };
    Nt.prototype.toJSON = function() {
      return this.dump();
    };
    Nt.prototype.toString = function() {
      return "" + this.constructor.name;
    };
    Nt.prototype.closeScope = function() {
      return this;
    };
    function le() {
      le.prototype.__super__.constructor.apply(this, arguments), this.register("global", this, {type: "global"})._c = "globalThis", this.REQUIRE = this.register("require", this, {type: "global"}), this.IMPORT = this.register("import", this, {type: "global"}), this.MODULE = this.register("module", this, {type: "global"}), this.register("window", this, {type: "global", varclass: x2}), this.setDocument(this.register("document", this, {type: "global", varclass: Ha})), this.register("exports", this, {type: "global"}), this.register("console", this, {type: "global"}), this.register("process", this, {type: "global"}), this.register("parseInt", this, {type: "global"}), this.register("parseFloat", this, {type: "global"}), this.register("setTimeout", this, {type: "global"}), this.register("setInterval", this, {type: "global"}), this.register("setImmediate", this, {type: "global"}), this.register("clearTimeout", this, {type: "global"}), this.register("clearInterval", this, {type: "global"}), this.register("clearImmediate", this, {type: "global"}), this.register("globalThis", this, {type: "global"}), this.register("isNaN", this, {type: "global"}), this.register("isFinite", this, {type: "global"}), this.register("__dirname", this, {type: "global"}), this.register("__filename", this, {type: "global"}), this.register("__realname", this, {type: "global"})._c = "__filename", this.register("__pure__", this, {type: "global", varclass: Ec})._c = "/* @__PURE__ */", this.register("_", this, {type: "global"}), this._requires = {}, this._warnings = [], this._scopes = [], this._helpers = [], this._assets = {}, this._selfless = true, this._implicitAccessors = [], this._entities = new Ba(this), this._object = ze.wrap({}), this._head = [this._vars], this._dependencies = {}, this._symbolRefs = {}, this._importProxies = {}, this._vars.setSplit(true), this._imba = this.register("imba", this, {type: "global", varclass: zs, path: "imba"}), this._runtime = this._imba.proxy();
    }
    A(le, Nt);
    E.RootScope = le;
    le.prototype.warnings = function(t) {
      return this._warnings;
    };
    le.prototype.setWarnings = function(t) {
      return this._warnings = t, this;
    };
    le.prototype.scopes = function(t) {
      return this._scopes;
    };
    le.prototype.setScopes = function(t) {
      return this._scopes = t, this;
    };
    le.prototype.entities = function(t) {
      return this._entities;
    };
    le.prototype.setEntities = function(t) {
      return this._entities = t, this;
    };
    le.prototype.object = function(t) {
      return this._object;
    };
    le.prototype.setObject = function(t) {
      return this._object = t, this;
    };
    le.prototype.options = function(t) {
      return this._options;
    };
    le.prototype.setOptions = function(t) {
      return this._options = t, this;
    };
    le.prototype.assets = function(t) {
      return this._assets;
    };
    le.prototype.setAssets = function(t) {
      return this._assets = t, this;
    };
    le.prototype.document = function(t) {
      return this._document;
    };
    le.prototype.setDocument = function(t) {
      return this._document = t, this;
    };
    le.prototype.importProxy = function(t, e) {
      return this._importProxies[t] || (this._importProxies[t] = this.register("$" + t + "$", this, {type: "global", varclass: xr, path: e || t}));
    };
    le.prototype.runtime = function() {
      return this._runtime;
    };
    le.prototype.use = function(t) {
      if (!O.tsc())
        return this._imba.touch("use_" + t);
    };
    le.prototype.sourceId = function() {
      return this._sourceId || (this._sourceId = O.sourceId());
    };
    le.prototype.cssns = function() {
      return this._cssns || (this._cssns = "" + this.sourceId() + "_");
    };
    le.prototype.sfco = function() {
      return this._sfco || (this._sfco = this.declare("sfc$", Rt("{/*$sfc$*/}")));
    };
    le.prototype.context = function() {
      return this._context || (this._context = new Do(this));
    };
    le.prototype.globalRef = function() {
      return this._globalRef || (this._globalRef = Rt("globalThis"));
    };
    le.prototype.activateExports = function() {
      if (O.cjs() && !this._hasExports)
        return this._hasExports = true, this._head.push(Rt('Object.defineProperty(exports, "__esModule", {value: true});'));
    };
    le.prototype.registerAsset = function(t, e, r) {
      let i = t + e;
      if (this._assets[i])
        return this._assets[i];
      let s = O.lastImport() || this.head(), n = this._assets[i] = {path: t, kind: e, external: true, context: r, ref: this.register("asset", null, {system: true})};
      return s.push(new Lo(n)), n;
    };
    le.prototype.lookup = function(t) {
      if (t = Pt.sym(t), this._varmap.hasOwnProperty(t))
        return this._varmap[t];
    };
    le.prototype.visit = function() {
      return O.addScope(this), this;
    };
    le.prototype.helper = function(t, e) {
      return this._helpers.indexOf(e) == -1 && this._helpers.push(e), this;
    };
    le.prototype.head = function() {
      return this._head;
    };
    le.prototype.dump = function() {
      var t = {autoself: this._implicitAccessors.map(function(r) {
        return r.dump();
      })};
      if (ls.analysis.scopes) {
        var e = this._scopes.map(function(r) {
          return r.dump();
        });
        e.unshift(le.prototype.__super__.dump.call(this)), t.scopes = e;
      }
      return ls.analysis.entities && (t.entities = this._entities), t;
    };
    le.prototype.requires = function(t, e) {
      var r, i;
      if (r = this.lookup(e))
        return r;
      if (r = this._requires[e]) {
        if (r._requirePath != t)
          throw new Error("" + e + " is already defined as require('" + r._requirePath + "')");
        return r;
      }
      var s = new g2(new de("'" + t + "'"));
      r = new Ft(this, e, null, {system: true});
      var n = this._vars.add(r, s);
      return (i = r.declarator()) || r.setDeclarator(n), r._requirePath = t, this._requires[e] = r, r;
    };
    le.prototype.imba = function() {
      return this._imba;
    };
    le.prototype.imbaDependency = function(t) {
    };
    le.prototype.symbolRef = function(t) {
      if (t = ma.strip(t), O.tsc())
        return this._symbolRefs[t] || (this._symbolRefs[t] = new At(t.slice(1) + "_$INTERNAL$_"));
      let e = this._symbolRefs, r = d_(t);
      return e[t] || (e[t] = this.declare(null, Rt("Symbol.for('" + t + "')"), {type: "const", system: true, alias: r, gsym: t}));
    };
    le.prototype.c = function(t) {
      t === void 0 && (t = {}), t.expression = false;
      let e = this.node().body().c(t), r = O.css(), i = new Lt([]);
      i.setHead(this.head()), i.add(Rt(r.js(this, O)));
      let s = i.c(t) + `
/*body*/
` + e;
      return Xl(this._helpers) && (s = Pt.cary(this._helpers).join(`;
`) + `
` + s), s;
    };
    function w2() {
      return Nt.apply(this, arguments);
    }
    A(w2, Nt);
    E.ModuleScope = w2;
    w2.prototype.setup = function() {
      return this._selfless = false;
    };
    w2.prototype.namepath = function() {
      return this._node.namepath();
    };
    function Ii() {
      return Nt.apply(this, arguments);
    }
    A(Ii, Nt);
    E.ClassScope = Ii;
    Ii.prototype.setup = function() {
      return this._selfless = false;
    };
    Ii.prototype.namepath = function() {
      return this._node.namepath();
    };
    Ii.prototype.virtualize = function() {
      var t = this.parent();
      for (let e = this._varmap, r, i = 0, s = Object.keys(e), n = s.length, o; i < n; i++)
        o = s[i], r = e[o], r.resolve(t, true);
      return this;
    };
    Ii.prototype.prototype = function() {
      return this._prototype || (this._prototype = new Ut(J(".", this.context(), "prototype")));
    };
    function r2() {
      return Ii.apply(this, arguments);
    }
    A(r2, Ii);
    E.TagScope = r2;
    function A3() {
      return Nt.apply(this, arguments);
    }
    A(A3, Nt);
    E.ClosureScope = A3;
    function Aa() {
      return Nt.apply(this, arguments);
    }
    A(Aa, Nt);
    E.FunctionScope = Aa;
    function i2() {
      return Aa.apply(this, arguments);
    }
    A(i2, Aa);
    E.IsolatedFunctionScope = i2;
    i2.prototype.lookup = function(t) {
      this._lookups || (this._lookups = {});
      var e = null;
      if (t = Pt.sym(t), this._varmap.hasOwnProperty(t))
        e = this._varmap[t];
      else if (e = this.parent() && this.parent().lookup(t), e && e.closure() == this.parent().closure()) {
        this._leaks || (this._leaks = new Map()), this._nonlocals || (this._nonlocals = {}), this._nonlocals[t] = e;
        let r = this._leaks.get(e);
        r || this._leaks.set(e, r = new Ac(this, t, e)), e = r;
      }
      return e;
    };
    function Bs() {
      return Nt.apply(this, arguments);
    }
    A(Bs, Nt);
    E.MethodScope = Bs;
    Bs.prototype.setup = function() {
      return this._selfless = false;
    };
    function xa() {
      return Nt.apply(this, arguments);
    }
    A(xa, Nt);
    E.FieldScope = xa;
    xa.prototype.setup = function() {
      return this._selfless = false;
    };
    xa.prototype.mergeScopeInto = function(t) {
      for (let e = this._varmap, r, i = 0, s = Object.keys(e), n = s.length, o; i < n; i++)
        o = s[i], r = e[o], o != "self" && (r.resolve(t, true), t.declare(r));
      return this._context && this._context._reference && (this._context._reference = t.context().reference()), true;
    };
    function Ao() {
      return Nt.apply(this, arguments);
    }
    A(Ao, Nt);
    E.LambdaScope = Ao;
    Ao.prototype.context = function() {
      return this._context || (this._context = this.parent().context().fromScope(this)), this._context;
    };
    function $e() {
      return Nt.apply(this, arguments);
    }
    A($e, Nt);
    E.FlowScope = $e;
    $e.prototype.params = function() {
      if (this._parent)
        return this._parent.params();
    };
    $e.prototype.register = function(t, e, r) {
      var i;
      return e === void 0 && (e = null), r === void 0 && (r = {}), r.type != "let" && r.type != "const" && this.closure() != this ? ((i = this.lookup(t)) && i.type() == "let" && e && e.warn("Variable already exists in block"), this.closure().register(t, e, r)) : $e.prototype.__super__.register.call(this, t, e, r);
    };
    $e.prototype.autodeclare = function(t) {
      return this.parent().autodeclare(t);
    };
    $e.prototype.closure = function() {
      return this._parent.closure();
    };
    $e.prototype.context = function() {
      return this._context || (this._context = this.parent().context());
    };
    $e.prototype.closeScope = function() {
      return this._context && this._context.reference(), this;
    };
    $e.prototype.temporary = function(t, e, r) {
      return e === void 0 && (e = {}), r === void 0 && (r = null), (this._systemscope || this.parent()).temporary(t, e, r);
    };
    function bc() {
      return $e.apply(this, arguments);
    }
    A(bc, $e);
    E.CatchScope = bc;
    function l2() {
      return $e.apply(this, arguments);
    }
    A(l2, $e);
    E.WhileScope = l2;
    l2.prototype.autodeclare = function(t) {
      return this.vars().add(t);
    };
    function c2() {
      return $e.apply(this, arguments);
    }
    A(c2, $e);
    E.ForScope = c2;
    c2.prototype.autodeclare = function(t) {
      return this.vars().add(t);
    };
    function yc() {
      return $e.apply(this, arguments);
    }
    A(yc, $e);
    E.IfScope = yc;
    function Fa() {
      return $e.apply(this, arguments);
    }
    A(Fa, $e);
    E.BlockScope = Fa;
    Fa.prototype.region = function() {
      return this.node().region();
    };
    function xc() {
      return $e.apply(this, arguments);
    }
    A(xc, $e);
    E.TagBodyScope = xc;
    function Ft(t, e, r, i) {
      this._ref = O._counter++, this._c = null, this._scope = t, this._name = e, this._alias = null, this._initialized = true, this._declarator = r, this._autodeclare = false, this._declared = i && i.declared || false, this._datatype = i && i.datatype, this._resolved = false, this._options = i || {}, this._type = i && i.type || "var", this._export = false, this._references = [], this._assignments = [];
    }
    A(Ft, Z);
    E.Variable = Ft;
    Ft.prototype.scope = function(t) {
      return this._scope;
    };
    Ft.prototype.setScope = function(t) {
      return this._scope = t, this;
    };
    Ft.prototype.name = function(t) {
      return this._name;
    };
    Ft.prototype.setName = function(t) {
      return this._name = t, this;
    };
    Ft.prototype.alias = function(t) {
      return this._alias;
    };
    Ft.prototype.setAlias = function(t) {
      return this._alias = t, this;
    };
    Ft.prototype.type = function(t) {
      return this._type;
    };
    Ft.prototype.setType = function(t) {
      return this._type = t, this;
    };
    Ft.prototype.options = function(t) {
      return this._options;
    };
    Ft.prototype.setOptions = function(t) {
      return this._options = t, this;
    };
    Ft.prototype.initialized = function(t) {
      return this._initialized;
    };
    Ft.prototype.setInitialized = function(t) {
      return this._initialized = t, this;
    };
    Ft.prototype.declared = function(t) {
      return this._declared;
    };
    Ft.prototype.setDeclared = function(t) {
      return this._declared = t, this;
    };
    Ft.prototype.declarator = function(t) {
      return this._declarator;
    };
    Ft.prototype.setDeclarator = function(t) {
      return this._declarator = t, this;
    };
    Ft.prototype.autodeclare = function(t) {
      return this._autodeclare;
    };
    Ft.prototype.setAutodeclare = function(t) {
      return this._autodeclare = t, this;
    };
    Ft.prototype.references = function(t) {
      return this._references;
    };
    Ft.prototype.setReferences = function(t) {
      return this._references = t, this;
    };
    Ft.prototype.export = function(t) {
      return this._export;
    };
    Ft.prototype.setExport = function(t) {
      return this._export = t, this;
    };
    Ft.prototype.value = function(t) {
      return this._value;
    };
    Ft.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    Ft.prototype.datatype = function(t) {
      return this._datatype;
    };
    Ft.prototype.setDatatype = function(t) {
      return this._datatype = t, this;
    };
    Ft.prototype.pool = function() {
      return null;
    };
    Ft.prototype.typedAlias = function() {
      return this._typedAlias || (this._typedAlias = new Ft(this._scope, this._name + "$TYPED$", this._declarator, this._options));
    };
    Ft.prototype.isGlobal = function(t) {
      return this._type == "global" && (!t || this._name == t);
    };
    Ft.prototype.closure = function() {
      return this._scope.closure();
    };
    Ft.prototype.assignments = function() {
      return this._assignments;
    };
    Ft.prototype.vartype = function() {
      return this._vartype || this._declarator && this._declarator.datatype && this._declarator.datatype();
    };
    Ft.prototype.assigned = function(t, e) {
      return this._assignments.push(t), t instanceof je ? this._isArray = true : this._isArray = false, this;
    };
    Ft.prototype.parents = function() {
      let t = [], e = this.closure().parent(), r = this;
      for (; e && r && t.length < 5; )
        if (console.log("get parents!!!"), r = e.lookup(this._name)) {
          t.unshift(r);
          let i = r.scope().parent();
          if (e == i)
            break;
          e = i;
        }
      return t;
    };
    Ft.prototype.resolve = function(t, e) {
      if (t === void 0 && (t = this.scope()), e === void 0 && (e = false), this._resolved && !e)
        return this;
      this._resolved = true;
      var r = this._scope.closure(), i = this._shadowing || t.lookup(this._name);
      if (this._scope != r && this._type == "let" && this._virtual && (i = r.lookup(this._name), t = r), i == this)
        return t.varmap()[this._name] = this, this;
      if (i) {
        if (i.scope() != t && (this.options().let || this._type == "let") && (t.varmap()[this._name] = this, !this._virtual && !this._shadowing))
          return this;
        if (!this._options.proxy)
          for (var s = 0, n = this._name; t.lookup(this._name); )
            this._name = "" + n + (s += 1);
      }
      return t.varmap()[this._name] = this, r.varmap()[this._name] = this, this;
    };
    Ft.prototype.reference = function() {
      return this;
    };
    Ft.prototype.node = function() {
      return this;
    };
    Ft.prototype.cache = function() {
      return this;
    };
    Ft.prototype.traverse = function() {
      return this;
    };
    Ft.prototype.free = function(t) {
      return this._declarator = null, this;
    };
    Ft.prototype.reuse = function(t) {
      return this._declarator = t, this;
    };
    Ft.prototype.proxy = function(t, e) {
      return this._proxy = [t, e], this;
    };
    Ft.prototype.refcount = function() {
      return this._references.length;
    };
    Ft.prototype.c = function(t) {
      if (t && t.as == "field")
        return "[" + this.c({}) + "]";
      if (this._c)
        return this._c;
      if (this._typedAlias && this._typedAlias.c(t), this._proxy)
        this._proxy instanceof Z ? this._c = this._proxy.c() : (this._c = this._proxy[0].c(), this._proxy[1] && (this._c += "[" + this._proxy[1].c() + "]"));
      else {
        this._resolved || this.resolve();
        var e = this.alias() || this.name();
        this._c = typeof e == "string" ? be.toValidIdentifier(e) : e.c({as: "variable"}), E_.test(this._c) && (this._c = "" + this.c() + "$");
      }
      return this._c;
    };
    Ft.prototype.js = function() {
      return this.c();
    };
    Ft.prototype.consume = function(t) {
      return this;
    };
    Ft.prototype.accessor = function(t) {
      var e = new Oi(".", null, this);
      return e;
    };
    Ft.prototype.assignment = function(t) {
      return new Ve("=", this, t);
    };
    Ft.prototype.addReference = function(t) {
      return t instanceof At && t.references(this), t.region && t.region() && (this._references.push(t), t.scope__() != this._scope && (this._noproxy = true)), this;
    };
    Ft.prototype.autodeclare = function() {
      return this._declared ? this : (this._autodeclare = true, this.scope().autodeclare(this), this._declared = true, this);
    };
    Ft.prototype.predeclared = function() {
      return this._declared = true, this;
    };
    Ft.prototype.toString = function() {
      return String(this.name());
    };
    Ft.prototype.dump = function(t) {
      var e = this.name();
      return e[0].match(/[A-Z]/) ? null : {type: this.type(), name: e, refs: Pt.dump(this._references, t)};
    };
    Ft.prototype.via = function(t) {
      return new pi(this, t);
    };
    function sn() {
      return Ft.apply(this, arguments);
    }
    A(sn, Ft);
    E.SystemVariable = sn;
    sn.prototype.pool = function() {
      return this._options.pool;
    };
    sn.prototype.predeclared = function() {
      return this.scope().vars().remove(this), this;
    };
    sn.prototype.resolve = function() {
      if (this._resolved)
        return this;
      this._resolved = true;
      let t = this._options;
      if (t.gsym)
        return this._name = "" + t.gsym.replace(/\#/g, "$") + "$", this;
      let e = O.incr("sysvar");
      return this._name = "$" + e, this;
      t = this._options;
      var r = t.alias || this._name, i = t.pool, s = [].concat(t.names), n = null, o = null;
      this._name = null;
      let a = r || K1.ANY;
      /\d/.test(a[0]) && (a = "_" + a), /\d$/.test(a) && (a = a + K1.SEP);
      let l = O.incr(a);
      return l == 1 && (l = ""), __.test(a) ? this._name = "" + a + l : this._name = "" + a + "\u03C6" + l, this;
    };
    sn.prototype.name = function() {
      return this.resolve(), this._name;
    };
    function Ac() {
      return Ft.apply(this, arguments);
    }
    A(Ac, Ft);
    E.ShadowedVariable = Ac;
    function Ln() {
      return Ft.apply(this, arguments);
    }
    A(Ln, Ft);
    E.GlobalReference = Ln;
    function Ec() {
      return Ft.apply(this, arguments);
    }
    A(Ec, Ft);
    E.PureReference = Ec;
    function Dn() {
      return Ln.apply(this, arguments);
    }
    A(Dn, Ln);
    E.ZonedVariable = Dn;
    Dn.prototype.forScope = function(t) {
      return new S2(this, t);
    };
    Dn.prototype.c = function() {
      return "" + this._name;
    };
    function Ha() {
      return Dn.apply(this, arguments);
    }
    A(Ha, Dn);
    E.DocumentReference = Ha;
    Ha.prototype.forScope = function(t) {
      return this;
    };
    Ha.prototype.c = function() {
      return O.isNode() ? "" + this.runtime().get_document + "()" : "globalThis.document";
    };
    function x2() {
      return Ln.apply(this, arguments);
    }
    A(x2, Ln);
    E.WindowReference = x2;
    x2.prototype.c = function() {
      return O.isNode() ? "" + this.runtime().get_window + "()" : "window";
    };
    function S2(t, e) {
      this._variable = t, this._scope = e;
    }
    A(S2, Z);
    E.ZonedVariableAccess = S2;
    S2.prototype.c = function() {
      let t = this._variable._name;
      return O.isNode() ? (O.use("" + t), "" + this.runtime().zone + ".get('" + t + "'," + this._scope.context().c() + ")") : "" + t;
    };
    function xr() {
      var t = this;
      xr.prototype.__super__.constructor.apply(t, arguments), t._path = t._options.path, t._exports = {}, t._touched = {}, t._head = Rt("import "), t._head.c = t.head.bind(t), t.scope()._head.push(t._head);
      var e = function(r, i, s) {
        return t.access(i);
      };
      t._proxy_ = new Proxy(t, {get: e});
    }
    A(xr, Ft);
    E.ImportProxy = xr;
    xr.prototype.proxy = function(t) {
      return this._proxy;
    };
    xr.prototype.setProxy = function(t) {
      return this._proxy = t, this;
    };
    xr.prototype.path = function(t) {
      return this._path;
    };
    xr.prototype.setPath = function(t) {
      return this._path = t, this;
    };
    xr.prototype.proxy = function() {
      return this._proxy_;
    };
    xr.prototype.touch = function(t) {
      return this._touched[t] || (this._touched[t] = this.access(t)), this;
    };
    xr.prototype.head = function() {
      var t = this;
      let e = Object.keys(t._exports), r = Object.values(t._touched), i = [], s = O.cjs(), n = t.path();
      n == "imba" && (n = O.imbaPath() || "imba");
      let o = xo("'" + n + "'");
      if (t._importAll && (s ? i.push("const " + t._name + " = require(" + o + ");") : i.push("import * as " + t._name + " from " + o + ";")), e.length > 0)
        if (s) {
          let a = e.map(function(l) {
            return "" + l + ": " + t._exports[l];
          }).join(", ");
          i.push("const {" + a + "} = require(" + o + ");");
        } else {
          let a = e.map(function(l) {
            return "" + l + " as " + t._exports[l];
          }).join(", ");
          i.push("import {" + a + "} from " + o + ";");
        }
      return r.length && i.push("(" + r.map(function(a) {
        return a.c() + "()";
      }).join(",") + ");"), i.length ? i.join(`
`) : "";
    };
    xr.prototype.access = function(t, e) {
      if (e === void 0 && (e = null), this._globalName)
        return Rt("" + Tt(this._globalName, e) + "." + Fs(t));
      let r = Fs(t, {mark: false});
      return this._exports[r] || (this._exports[r] = Rt("" + this._name + "_" + r));
    };
    xr.prototype.c = function() {
      return this._importAll || (this._importAll = true), xr.prototype.__super__.c.apply(this, arguments);
    };
    function zs() {
      return xr.apply(this, arguments);
    }
    A(zs, xr);
    E.ImbaRuntime = zs;
    zs.prototype.configure = function(t) {
      return t.runtime == "global" || O.tsc() ? this._globalName = "imba" : t.runtime && this.setPath(t.runtime), this;
    };
    zs.prototype.head = function() {
      return O.tsc() ? "" : zs.prototype.__super__.head.apply(this, arguments);
    };
    zs.prototype.c = function() {
      return this._importAll || (this._importAll = true, O.current().warn("Referencing imba directly disables efficient tree-shaking")), this._c = "imba";
    };
    function rr(t, e) {
      this._scope = t, this._value = e, this._reference = null;
    }
    A(rr, Z);
    E.ScopeContext = rr;
    rr.prototype.scope = function(t) {
      return this._scope;
    };
    rr.prototype.setScope = function(t) {
      return this._scope = t, this;
    };
    rr.prototype.value = function(t) {
      return this._value;
    };
    rr.prototype.setValue = function(t) {
      return this._value = t, this;
    };
    rr.prototype.reference = function(t) {
      return this._reference;
    };
    rr.prototype.setReference = function(t) {
      return this._reference = t, this;
    };
    rr.prototype.namepath = function() {
      return this._scope.namepath();
    };
    rr.prototype.reference = function() {
      return this._reference || (this._reference = this.scope().lookup("self") || this.scope().declare("self", new ps()));
    };
    rr.prototype.fromScope = function(t) {
      return new Fo(t, this);
    };
    rr.prototype.isConstant = function() {
      return true;
    };
    rr.prototype.c = function() {
      var t = this._value;
      return t ? t.c() : "this";
    };
    rr.prototype.cache = function() {
      return this;
    };
    rr.prototype.proto = function() {
      return "" + this.c() + ".prototype";
    };
    rr.prototype.isGlobalContext = function() {
      return false;
    };
    function Fo(t, e) {
      this._scope = t, this._parent = e, this._reference = e.reference();
    }
    A(Fo, rr);
    E.IndirectScopeContext = Fo;
    Fo.prototype.reference = function() {
      return this._reference;
    };
    Fo.prototype.c = function() {
      return this.reference().c();
    };
    Fo.prototype.isGlobalContext = function() {
      return this._parent.isGlobalContext();
    };
    function Do() {
      return rr.apply(this, arguments);
    }
    A(Do, rr);
    E.RootScopeContext = Do;
    Do.prototype.reference = function() {
      return this._reference || (this._reference = this.scope().lookup("global"));
    };
    Do.prototype.c = function(t) {
      return "globalThis";
      var e;
    };
    Do.prototype.isGlobalContext = function() {
      return true;
    };
    function Xe(t, e) {
      this._keyword = t, this._member = e, Xe.prototype.__super__.constructor.apply(this, arguments);
    }
    A(Xe, Z);
    E.Super = Xe;
    Xe.prototype.member = function(t) {
      return this._member;
    };
    Xe.prototype.setMember = function(t) {
      return this._member = t, this;
    };
    Xe.prototype.args = function(t) {
      return this._args;
    };
    Xe.prototype.setArgs = function(t) {
      return this._args = t, this;
    };
    Xe.prototype.visit = function() {
      var t;
      return this._method = O.method(), this._up = O.parent(), (t = O.method()) && (t.set({supr: {node: O.blockpart(), block: O.block(), real: this}}), t.set({injectInitAfter: O.blockpart()})), this._method && (this._class = O.up(_e)), this.args() && this.args().traverse(), this;
    };
    Xe.prototype.replaceWithInitor = function() {
      if (this.up() instanceof ke)
        return true;
    };
    Xe.prototype.startLoc = function() {
      return this._keyword && this._keyword.startLoc();
    };
    Xe.prototype.endLoc = function() {
      return this._keyword && this._keyword.endLoc();
    };
    Xe.callOp = function(t, e) {
      let r = J(".", Rt("super"), t);
      return He(r, e || [Rt("...arguments")]);
    };
    Xe.prototype.c = function() {
      let t = this._method, e = this._up, r = Rt("super"), i, s = this.option("top"), n = t && t.option("inExtension"), o = this.args();
      if (n && this._class && (r = He(this._class.virtualSuper(), [this.slf()])), !(e instanceof se || e instanceof ke)) {
        if (t && t.isConstructor() && !this.member()) {
          if (O.tsc() && this._class && !this._class.superclass())
            return o ? "[" + o.c() + "]" : "";
          let a = this.option("target") || Rt("super"), l = this.option("args") || [Rt("...arguments")];
          return Tt(He(a, o || l).c(), this._keyword);
        } else
          this.member() ? i = J(".", r, this.member()) : t && (i = J(".", r, t.name()), t.isSetter() ? i = J("=", i, t.params().at(0)) : t.isGetter() || o || (o = [Rt("...arguments")]));
        return o && (i = He(i, o)), i ? Tt(i.c({mark: false}), this._keyword) : "/**/";
      }
      return e instanceof ke && t && !t.isConstructor() ? J(".", r, t.name()).c() : "super";
    };
    var x_ = E.BR0 = new wo(`
`), Fe = E.BR = new wo(`
`), Z4 = E.BR2 = new wo(`

`), S_ = E.SELF = new si(), kr = E.THIS = Rt("this"), w_ = E.PROTO = Rt("this.prototype"), hc = E.TRUE = new Ms("true"), pc = E.FALSE = new Vs("false"), To = E.UNDEFINED = new On(), Q4 = E.NIL = new Ps(), $4 = E.ARGUMENTS = new n2("arguments"), sc = E.EMPTY = "", Gs = E.NULL = "null", t9 = E.RESERVED = ["default", "native", "enum", "with"], E_ = E.RESERVED_REGEX = /^(default|native|enum|with|new|char)$/;
  });
  var N3 = er((A_) => {
    Hi(A_);
    Fi(A_, {resolveConfigFile: () => R3});
    function I_(t) {
      let e;
      return t ? (e = t.toIterable) ? e.call(t) : t : [];
    }
    var za = {};
    function Ic(t, e) {
      var r;
      if (t instanceof Array)
        for (let i = 0, s = I_(t), n = s.length; i < n; i++) {
          let o = s[i];
          t[i] = Ic(o, e);
        }
      else {
        if (typeof t == "string")
          return t.replace(/^\.\//, e + "/");
        if (typeof t == "object")
          for (let i = 0, s = Object.keys(t), n = s.length, o, a; i < n; i++) {
            o = s[i], a = t[o];
            let l = o.replace(/^\.\//, e + "/");
            t[l] = Ic(a, e), l != o && (r = t[o], delete t[o]);
          }
      }
      return t;
    }
    function R3(t, {path: e, fs: r}) {
      if (!e || !r || !t || t == e.dirname(t))
        return null;
      let i = e.resolve(t, "package.json");
      if (za[i])
        return za[i];
      if (za[i] !== null && r.existsSync(i)) {
        let s = function(a, l) {
          return typeof l == "string" && l.match(/^\.\//) ? e.resolve(t, l) : l;
        }, n = JSON.parse(r.readFileSync(i, "utf8")), o = n.imba || (n.imba = {});
        return Ic(o, t), o.package = n, o.cwd || (o.cwd = t), za[i] = o;
      } else
        za[i] = null;
      return R3(e.dirname(t), {path: e, fs: r});
    }
  });
  var D3 = er((di) => {
    var mi = {}, i9 = ta(), R_ = lo(), N_ = pp(), T2 = vp(), E2 = di.parser = bp().parser, O_ = I3(), s9 = Ml(), C_ = N3().resolveConfigFile, O3 = C1().ImbaParseError, C3 = O1(), n9 = C3.Diagnostic, Hn = C3.Compilation, L3 = di.lex = new N_.Lexer(), L_ = di.Rewriter = T2.Rewriter, o9 = di.helpers = R_;
    T2 = new L_();
    E2.lexer = L3.jisonBridge();
    E2.yy = O_;
    Hn.prototype.lexer = L3;
    Hn.prototype.rewriter = T2;
    Hn.prototype.parser = E2;
    di.resolveConfig = mi.resolveConfig = function(t) {
      t === void 0 && (t = {});
      let e = t.sourcePath;
      return t.config || (t.config = C_(e, t) || {}), t;
    };
    di.deserialize = mi.deserialize = function(t, e) {
      return e === void 0 && (e = {}), Hn.deserialize(t, e);
    };
    di.tokenize = mi.tokenize = function(t, e) {
      return e === void 0 && (e = {}), new Hn(t, e).tokenize();
    };
    di.rewrite = mi.rewrite = function(t, e) {
      return e === void 0 && (e = {}), T2.rewrite(t, e);
    };
    di.parse = mi.parse = function(t, e) {
      e === void 0 && (e = {}), e = mi.resolveConfig(e);
      var r = t instanceof Array ? t : mi.tokenize(t, e);
      try {
        return E2.parse(r);
      } catch (i) {
        throw i._code = t, e.sourcePath && (i._sourcePath = e.sourcePath), i;
      }
    };
    di.compile = mi.compile = function(t, e) {
      return e === void 0 && (e = {}), new Hn(t, mi.resolveConfig(e)).compile();
    };
    di.resolve = mi.resolve = function(t, e) {
      return e === void 0 && (e = {}), new Hn(t, mi.resolveConfig(e)).compile();
    };
    di.analyze = mi.analyze = function(t, e) {
      e === void 0 && (e = {});
      var r;
      try {
        var i = mi.parse(t, e);
        r = i.analyze(e);
      } catch (s) {
        if (!(s instanceof O3))
          if (s.lexer)
            s = new O3(s, {tokens: s.lexer.tokens, pos: s.lexer.pos});
          else
            throw s;
        r = {warnings: [s]};
      }
      return r;
    };
  });
  var V3 = er((V_) => {
    Hi(V_);
    Fi(V_, {program: () => M3});
    fn(V_, Ou(D3()));
    var M3 = Rc;
  });
  var b1 = Symbol.for("#__init__");
  var pd = Symbol.for("#__initor__");
  var fd = Symbol.for("#__inited__");
  var co = Symbol.for("#source");
  var ff = Symbol.for("#lineText");
  var _f = Symbol.for("#version");
  var Gu = new WeakMap();
  var _n = class {
    [b1](e = null) {
      this.line = e ? e.line : void 0, this.character = e ? e.character : void 0, this.offset = e ? e.offset : void 0;
    }
    constructor(e, r, i, s = null) {
      this[b1](), this.line = e, this.character = r, this.offset = i, this[_f] = s;
    }
    toString() {
      return "" + this.line + ":" + this.character;
    }
    valueOf() {
      return this.offset;
    }
  };
  var ts = class {
    [b1](e = null) {
      this.start = e ? e.start : void 0, this.end = e ? e.end : void 0;
    }
    constructor(e, r) {
      this[b1](), this.start = e, this.end = r;
    }
    get offset() {
      return this.start.offset;
    }
    get length() {
      return this.end.offset - this.start.offset;
    }
    get ["0"]() {
      return this.start.offset;
    }
    get ["1"]() {
      return this.end.offset;
    }
    getText(e) {
      return e.slice(this.start, this.end);
    }
    equals(e) {
      return e.offset == this.offset && e.length == this.length;
    }
  };
  var ea = {Error: 1, Warning: 2, Information: 3, Hint: 4, error: 1, warning: 2, warn: 2, info: 3, hint: 4};
  var el = class {
    constructor(e, r = null) {
      this.range = e.range, this.severity = ea[e.severity] || e.severity, this.code = e.code, this.source = e.source, this.message = e.message, Gu.set(this, r);
    }
    get [co]() {
      return Gu.get(this);
    }
    get [ff]() {
      return this[co].doc.getLineText(this.range.start.line);
    }
    toSnippet() {
      let e = this.range.start, r = this.range.end, i = "" + this[co].sourcePath + ":" + (e.line + 1) + ":" + (e.character + 1) + ": " + this.message, s = this[co].doc.getLineText(e.line), n = [i, s];
      return n.push(s.replace(/[^\t]/g, " ").slice(0, e.character) + "^".repeat(r.character - e.character)), n.join(`
`).replace(/\t/g, "    ") + `
`;
    }
    toError() {
      let e = this.range.start, r = this.range.end, i = "" + this[co].sourcePath + ":" + (e.line + 1) + ":" + (e.character + 1) + ": " + this.message, s = new SyntaxError(i), n = this[co].doc.getLineText(e.line), o = [i, n];
      return o.push(n.replace(/[^\t]/g, " ").slice(0, e.character) + "^".repeat(r.character - e.character)), s.stack = `
` + o.join(`
`).replace(/\t/g, "    ") + `
`, s;
    }
    raise() {
      throw this.toError();
    }
  };
  function df(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var md = Symbol.for("#__initor__");
  var yd = Symbol.for("#__inited__");
  function k1(t, e, r = 1e5) {
    let i = t;
    for (; i && r > 0; ) {
      if (i.match(e))
        return i;
      r--, i = i.prev;
    }
    return null;
  }
  function rl(t, e, r) {
    r === void 0 && (r = 0);
    for (var i = e ? [r] : [], s = 0; s < t.length; ) {
      var n = t.charCodeAt(s);
      (n === 13 || n === 10) && (n === 13 && s + 1 < t.length && t.charCodeAt(s + 1) === 10 && s++, i.push(r + s + 1)), s++;
    }
    return i;
  }
  function Bu(t) {
    var e = t.start, r = t.end;
    return e.line > r.line || e.line === r.line && e.character > r.character ? new ts(r, e) : t instanceof ts ? t : new ts(e, r);
  }
  function Hu(t) {
    return t != null && typeof t.text == "string" && t.range === void 0;
  }
  function zu(t) {
    let e = t.split(/\n/), r = [], i = {indent: -1, children: []}, s = i, n, o = Date.now();
    for (let a = 0, l = df(e), p = l.length; a < p; a++) {
      let c = l[a];
      if (c.match(/^\s*$/))
        continue;
      let _ = c.match(/^\t*/)[0].length;
      for (; i.indent >= _; )
        i = i.parent || s;
      if (n = c.match(/^(\t*((?:export )?(?:static )?(?:extend )?)(class|tag|def|get|set|prop|attr) )(\@?[\w\-\$\:]+(?:\.[\w\-\$]+)?)/), n) {
        let f = n[3], m = n[4], g = i.name ? i.name + "." : "", b = n[2].trim().split(/\s+/), N = "", y = {start: {line: a, character: n[1].length}, end: {line: a, character: n[0].length}}, v = {kind: f, ownName: m, name: g + m, span: y, indent: _, modifiers: b, children: [], parent: i == s ? null : i, type: f, data: {}, static: b.indexOf("static") >= 0, extends: b.indexOf("extend") >= 0};
        v.static && (v.containerName = "static"), v.containerName = n[2] + n[3], f == "tag" && (n = c.match(/\<\s+([\w\-\$\:]+(?:\.[\w\-\$]+)?)/)) && (v.superclass = n[1]), i.type == "tag" && (N = "```html\n<" + i.name + " " + m + ">\n```\n", v.description = {kind: "markdown", value: N}), i.children.push(v), i = v, r.push(v);
      }
    }
    return s.all = r, console.log("fast outline", t.length, Date.now() - o), s;
  }
  function il(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var sl = [/^/, {token: "@rematch", next: "@pop"}];
  var Uu = {token: "@rematch", next: "@pop"};
  var Yu = {token: "white.indent", next: "@>illegal_indent"};
  function mf(t, e = "#") {
    typeof t == "string" && (t = t.split(" "));
    let r = t.slice().sort(function(i, s) {
      return s.length - i.length;
    });
    return r = r.map(function(i) {
      let s = i.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&");
      return e.replace("#", s);
    }), new RegExp("(?:" + r.join("|") + ")");
  }
  function ve(t, e, r, i = {}) {
    var s;
    t == null ? t = Yu : t == 1 ? t = {next: "@>"} : t == 2 ? t = {next: "@>_indent&-_indent"} : typeof t == "string" && (t = {next: t}), e == -1 && (e = Uu), r == -1 ? r = Uu : r == 0 && (i.comment == null ? i.comment = true : i.comment, r = {}), t = Object.assign({token: "white.tabs"}, t || {}), r = Object.assign({token: "white.tabs"}, r || {}), e = Object.assign({token: "@rematch", next: "@pop"}, e || {});
    let n = {"$1==$S2	": t, "$1==$S2": {cases: {"$1==$S6": r, "@default": {token: "@rematch", switchTo: "@*$1"}}}, "@default": e};
    s = 0;
    for (let a of ["next", "switchTo"]) {
      let l = s++;
      t[a] && t[a].indexOf("*") == -1 && (t[a] += "*$1");
    }
    let o = [/^(\t*)(?=[^ \t\n])/, {cases: n}];
    if (i.comment) {
      let a = {};
      for (let l = 0, p = Object.keys(n), c = p.length, _, f; l < c; l++) {
        _ = p[l], f = n[_];
        let m = Object.assign({}, f);
        !m.next && !m.switchTo && (m.next = "@>_comment"), a[_] = m;
      }
      return [[/^(\t*)(?=#\s|#$)/, {cases: a}], o];
    }
    return o;
  }
  var nl = {root: [[/^@comment/, "comment", "@>_comment"], [/^(\t+)(?=[^\t\n])/, {cases: {"$1==$S2	": {token: "white.indent", next: "@>_indent*$1"}, "@default": "white.indent"}}], "block_"], _comment: [[/^([\t\s\n]*)$/, "comment"], [/^(\t*)([\S\s]*)/, {cases: {"$1~$S2	*": {token: "comment"}, "@default": {token: "@rematch", next: "@pop"}}}], [/[\S\s]+/, "comment"]], illegal_indent: [ve()], identifier_: [[/\$\w+\$/, "identifier.env"], [/\$\d+/, "identifier.special"], [/\#+@id/, "identifier.symbol"], [/\¶@id/, "ivar"], [/@id\!?/, {cases: {this: "this", self: "self", "@keywords": "keyword.$#", "$0~[A-Z].*": "identifier.uppercase.$F", "@default": "identifier.$F"}}]], block_: [[/^(\t+)(?=[\r\n]|$)/, "white.tabs"], "class_", "tagclass_", "var_", "func_", "import_", "export_", "flow_", "for_", "try_", "catch_", "while_", "css_", "tag_", "do_", "block_comment_", "expr_", [/[ ]+/, "white"], "common_"], indentable_: [[/^[ ]+/, "white"], ve("@>_paren_indent&-_indent", null, null), [/^(\t+)(?=[\r\n]|$)/, "white.tabs"], "whitespace"], _indent: [ve(2, -1, 0), "block_"], _paren_indent: [ve(2, -1, 0), "block_", [/\)|\}|\]/, "@rematch", "@pop"]], block: [ve("@>", -1, 0), "block_"], bool_: [[/(true|false|yes|no|undefined|null)(?![\:\-\w\.\_])/, "boolean"]], op_: [[/\s+\:\s+/, "operator.ternary"], [/(@unspaced_ops)/, {cases: {"@spread": "operator.spread", "@access": "operator.access", "@default": "operator"}}], [/\/(?!\/)/, "operator.math"], [/\&(?=[,\)])/, "operator.special.blockparam"], [/(\s*)(@symbols)(\s*)/, {cases: {"$2@assignments": "operator.assign", "$2@math": "operator.math", "$2@operators": "operator", "$2@logic": "operator.logic", "$2@access": "operator.access", "@default": "delimiter"}}], [/\&\b/, "operator"]], keyword_: [[/new@B/, "keyword.new"], [/isa@B/, "keyword.isa"], [/is@B/, "keyword.is"], [/(switch|when|throw|continue|break|then|await|typeof|by)@B/, "keyword.$1"], [/delete@B/, "keyword.delete"], [/and@B|or@B/, "operator.flow"]], return_: [[/return@B/, "keyword.new"]], primitive_: ["string_", "number_", "regexp_", "bool_"], value_: ["primitive_", "keyword_", "implicit_call_", "parens_", "key_", "access_", "identifier_", "array_", "object_"], expr_: ["comment_", "inline_var_", "return_", "value_", "tag_", "op_", "type_", "spread_"], attr_expr_: ["primitive_", "parens_", "access_", "identifier_", "array_", "object_", "tag_", "op_"], access_: [[/(\.\.?)(@propid\!?)/, {cases: {"$2~[A-Z].*": ["operator.access", "accessor.uppercase"], "$2~#.*": ["operator.access", "accessor.symbol"], "@default": ["operator.access", "accessor"]}}]], call_: [[/\(/, "(", "@call_body"]], key_: [[/(\#+@id)(\:\s*)/, ["key.symbol", "operator.assign.key-value"]], [/(@propid)(\:\s*)/, {cases: {"@default": ["key", "operator.assign.key-value"]}}]], implicit_call_: [[/(\.\.?)(@propid)@implicitCall/, {cases: {"$2~[A-Z].*": ["operator.access", "accessor.uppercase", "@implicit_call_body"], "@default": ["operator.access", "accessor", "@implicit_call_body"]}}], [/(@propid)@implicitCall/, {cases: {"$2~[A-Z].*": ["identifier.uppercase", "@implicit_call_body"], "@default": ["identifier", "@implicit_call_body"]}}]], implicit_call_body: [sl, [/\)|\}|\]|\>/, "@rematch", "@pop"], "arglist_", "whitespace"], arglist_: ["do_", "expr_", [/\s*\,\s*/, "delimiter.comma"]], params_: [[/\[/, "array.[", "@array_var_body=decl-param"], [/\{/, "object.{", "@object_body=decl-param"], [/(@variable)/, "identifier.decl-param"], "spread_", "type_", [/\s*\=\s*/, "operator", "@var_value="], [/\s*\,\s*/, "separator"]], object_: [[/\{/, "object.{", "@object_body"]], parens_: [[/\(/, "parens.(", "@parens_body"]], parens_body: [[/\)/, ")", "@pop"], "indentable_", "arglist_"], array_: [[/\[/, "array.[", "@array_body"]], array_body: [[/\]@implicitCall/, {token: "]", switchTo: "@implicit_call_body="}], [/\]/, "]", "@pop"], [/\)|\}/, "invalid"], "indentable_", "expr_", [",", "delimiter"]], object_body: [[/\}/, "}", "@pop"], [/(@id)(\s*:\s*)/, ["key", "operator.assign.key-value", "@object_value"]], [/(@id)/, "identifier.$F"], [/\[/, "[", "@object_dynamic_key="], [/\s*=\s*/, "operator.assign", "@object_value="], [/:/, "operator.assign.key-value", "@object_value="], [/\,/, "delimiter.comma"], "indentable_", "expr_"], object_value: [sl, [/,|\}|\]|\)/, "@rematch", "@pop"], "expr_"], object_dynamic_key: [["]", "]", "@pop"], "expr_"], comment_: [[/#(\s.*)?(\n|$)/, "comment"]], block_comment_: [[/###/, "comment.start", "@_block_comment"]], _block_comment: [[/###/, "comment.end", "@pop"], [/[^#]+/, "comment"], [/#(?!##)/, "comment"]], try_: [[/try@B/, "keyword.try", "@>_try&try"]], catch_: [[/(catch\s+)(?=@id(\s|$))/, "keyword.catch", "@catch_start&catch"], [/catch@B/, "keyword.catch", "@catch_start&catch"]], catch_start: [[/@id/, "identifier.decl-const", {switchTo: "@>_catch"}], [/.?/, "@rematch", {switchTo: "@>_catch"}]], _catch: [ve("@>block", -1, 0), "block_"], _try: [ve("@>block", -1, 0), "block_"], do_: [[/do(?=\()/, "keyword.do", "@>do_start&do"], [/do(?=\s*\|)/, "keyword.do", "@>do_piped&do"], [/do@B/, "keyword.do", "@>_do&do"]], do_start: [ve(null, -1, -1), [/\(/, "(", {switchTo: "@_do_params"}], [/./, "@rematch", {switchTo: "@_do"}]], do_piped: [ve(null, -1, -1), [/\s*\|/, "args.open", {switchTo: "@_do_piped_params"}], [/./, "@rematch", {switchTo: "@_do"}]], _do_piped_params: [[/\|/, "args.close", {switchTo: "@_do"}], "params_"], _do_params: [[/\)/, ")", {switchTo: "@_do"}], "params_"], _do: [ve(2, -1, 0), [/(\}|\)|\])/, "@rematch", "@pop"], "block_"], class_: [[/(extend)(?=\s+class )/, "keyword.$1"], [/(global)(?=\s+class )/, "keyword.$1"], [/(class)(\s)(@id)/, ["keyword.$1", "white.$1name", "entity.name.class.decl-const", "@class_start="]], [/(class)(?=\n)/, "keyword.$1", "@>_class&class="]], class_start: [[/(\s+\<\s+)(@id)/, ["keyword.extends", "identifier.superclass"]], [/@comment/, "comment"], [/^/, "@rematch", {switchTo: "@>_class&class="}]], tagclass_: [[/(extend)(?=\s+tag )/, "keyword.$1"], [/(global)(?=\s+tag )/, "keyword.$1"], [/(tag)(\s)(@constant)/, ["keyword.tag", "white.tagname", "entity.name.component.local", "@tagclass_start="]], [/(tag)(\s)(@id)/, ["keyword.tag", "white.tagname", "entity.name.component.global", "@tagclass_start="]]], tagclass_start: [[/(\s+\<\s+)(@id)/, ["keyword.extends", "identifier.superclass"]], [/@comment/, "comment"], [/^/, "@rematch", {switchTo: "@>_tagclass&component="}]], import_: [[/(import)(?=\s+['"])/, "keyword.import", "@>import_source"], [/(import)(\s+type)(?=\s[\w\$\@\{])/, ["keyword.import", "keyword.type", "@>import_body&-_imports=decl-import/part"]], [/(import)@B/, "keyword.import", "@>import_body&-_imports=decl-import/part"]], import_body: [ve(null, -1, 0), [/(@esmIdentifier)( +from)/, ["identifier.$F.default", "keyword.from", {switchTo: "@import_source"}]], [/(\*)(\s+as\s+)(@esmIdentifier)(\s+from)/, ["keyword.star", "keyword.as", "identifier.$F.ns", "keyword.from", {switchTo: "@import_source"}]], [/(@esmIdentifier)(\s*,\s*)(\*)(\s+as\s+)(@esmIdentifier)(from)/, ["identifier.$F.default", "delimiter.comma", "keyword.star", "keyword.as", "identifier.$F.ns", "keyword.from", {switchTo: "@import_source"}]], [/\ *from/, "keyword.from", {switchTo: "@import_source"}], [/\{/, "specifiers.{", "@esm_specifiers/part"], [/(@esmIdentifier)/, "identifier.$F", {switchTo: "@/delim"}], [/\s*\,\s*/, "delimiter.comma", {switchTo: "@/part"}], "comma_", "common_"], import_source: [ve(null, -1, 0), [/["']/, "path.open", "@_path=$#"], sl], export_: [[/(export)( +)(default)@B/, ["keyword.export", "white", "keyword.default"]], [/(export)(?= +(let|const|var|class|tag)@B)/, "keyword.export"], [/(export)( +)(global)@B/, ["keyword.export", "white", "keyword.global"]], [/(export)(\s+\*\s+)(from)@B/, ["keyword.export", "operator.star", "keyword.from", "@>import_source"]], [/(export)@B/, "keyword.export", "@>export_body"]], export_body: [ve(null, -1, 0), [/(\*)(\s+as\s+)(@esmIdentifier)/, ["keyword.star", "keyword.as", "identifier.const.export"]], [/(@esmIdentifier)(\s+as\s+)(default)/, ["alias", "keyword.as", "alias.default"]], [/(@esmIdentifier)(\s+as\s+)(@esmIdentifier)/, ["alias", "keyword.as", "identifier.const.export"]], [/from/, "keyword.from", {switchTo: "@import_source"}], [/\{/, "{", "@esm_specifiers=export/part"], [/(@esmIdentifier)/, "identifier.const.export"], [/\*/, "operator.star"], "comma_", "common_"], esm_specifiers: [[/\}/, "}", "@pop"], [/(@esmIdentifier)(\s+as\s+)(@esmIdentifier)/, ["alias", "keyword.as", "identifier.const.$F", {switchTo: "@/delim"}]], [/@esmIdentifier/, {cases: {"$/==part": {token: "identifier.const.$S4", switchTo: "@/delim"}, "@default": {token: "invalid"}}}], [/\s*\,\s*/, "delimiter.comma", {switchTo: "@/part"}], "whitespace"], _path: [[/[^"'\`\{\\]+/, "path"], [/@escapes/, "path.escape"], [/\./, "path.escape.invalid"], [/\{/, "invalid"], [/["'`]/, {cases: {"$#==$F": {token: "path.close", next: "@pop"}, "@default": "path"}}]], member_: [[/(constructor)@B/, "entity.name.constructor", "@>def_params&def/def"], [/(def|get|set)(\s)(@defid)/, ["keyword.$1", "white.entity", "entity.name.$1", "@>def_params&$1/$1"]], [/(def|get|set)(\s)(\[)/, ["keyword.$1", "white.entity", "$$", "@>def_dynamic_name/$1"]]], func_: [[/export(?=\s+(get|set|def|global) )/, "keyword.export"], [/global(?=\s+(get|set|def) )/, "keyword.global"], [/(def)(\s)(@id)(\.)(@defid)/, ["keyword.$1", "white.entity", "identifier.target", "operator", "entity.name.def", "@>def_params&$1/$1"]], [/(def)(\s)(@defid)/, ["keyword.$1", "white.entity", "entity.name.function.decl-const-func", "@>def_params&$1/$1"]]], flow_: [[/(if|else|elif|unless)(?=\s|$)/, ["keyword.$1", "@flow_start=$1"]]], flow_start: [ve({switchTo: "@>_flow&$F"}, -1, -1), [/[ \t]+/, "white"], "expr_"], for_: [[/for(?: own)?@B/, "keyword.$#", "@for_start&forscope=decl-for"]], while_: [[/(while|until)@B/, "keyword.$#", "@>while_body"]], while_body: [ve(2, -1, 0), "block_"], for_start: [ve({switchTo: "@>for_body"}, -1, -1), [/\[/, "array.[", "@array_var_body"], [/\{/, "object.{", "@object_body"], [/(@variable)/, "identifier.$F"], [/(\s*\,\s*)/, "separator", "@=decl-for-index"], [/\s(in|of)@B/, "keyword.$1", {switchTo: "@>for_source="}], [/[ \t]+/, "white"], "type_"], for_source: [ve({switchTo: "@>for_body"}, -1, {switchTo: "@for_body"}), "expr_", [/[ \t]+/, "white"]], for_body: [ve(2, -1, 0), "block_"], decorator_: [[/(@decid)(\()/, ["decorator", "$2", "@_decorator_params"]], [/(@decid)/, "decorator"]], _decorator_params: [[/\)/, ")", "@pop"], "params_"], field_: [[/((?:lazy )?)((?:static )?)(const|let|attr)(?=\s|$)/, ["keyword.lazy", "keyword.static", "keyword.$1", "@_vardecl=field-$3"]], [/(static\s+)(?=@fieldid)/, "keyword.static"], [/(@fieldid)(?=$)/, "entity.name.field"], [/(@fieldid)/, ["entity.name.field", "@_field_1"]]], _field_1: [ve(null, -1, -1), "type_", [/(\s*=)(?!\=)/, ["operator.assign", "@>_field_value&field"]], [/(\s*(?:\@)set\s*)/, ["keyword.spy", "@>_def&spy"]]], _field_value: [ve(2, -1, 0), "block_", [/(\s*(?:\@)set\s*)/, ["@rematch", "@pop"]]], var_: [[/((?:export )?)(const|let)(?=\s[\[\{\$a-zA-Z]|\s*$)/, ["keyword.export", "keyword.$1", "@_vardecl=decl-$2"]], [/((?:export )?)(const|let)(?=\s|$)/, ["keyword.export", "keyword.$1"]]], inline_var_: [[/(const|let)(?=\s[\[\{\$a-zA-Z]|\s*$)/, ["keyword.$1", "@inline_var_body=decl-$1"]]], string_: [[/"""/, "string", '@_herestring="""'], [/'''/, "string", "@_herestring='''"], [/["'`]/, "string.open", "@_string=$#"]], number_: [[/0[xX][0-9a-fA-F_]+/, "number.hex"], [/0[b][01_]+/, "number.binary"], [/0[o][0-9_]+/, "number.octal"], [/(\d+)([a-z]+|\%)/, ["number", "unit"]], [/(\d*\.\d+(?:[eE][\-+]?\d+)?)([a-z]+|\%)/, ["number.float", "unit"]], [/\d+[eE]([\-+]?\d+)?/, "number.float"], [/\d[\d_]*\.\d[\d_]*([eE][\-+]?\d+)?/, "number.float"], [/\d[\d_]*/, "number.integer"], [/0[0-7]+(?!\d)/, "number.octal"], [/\d+/, "number"]], _string: [[/[^"'\`\{\\]+/, "string"], [/@escapes/, "string.escape"], [/\./, "string.escape.invalid"], [/\{/, {cases: {"$F=='": "string", "@default": {token: "string.bracket.open", next: "@interpolation_body"}}}], [/["'`]/, {cases: {"$#==$F": {token: "string.close", next: "@pop"}, "@default": "string"}}], [/#/, "string"]], _herestring: [[/("""|''')/, {cases: {"$1==$F": {token: "string", next: "@pop"}, "@default": "string"}}], [/[^#\\'"\{]+/, "string"], [/['"]+/, "string"], [/@escapes/, "string.escape"], [/\./, "string.escape.invalid"], [/\{/, {cases: {'$F=="""': {token: "string", next: "@interpolation_body"}, "@default": "string"}}], [/#/, "string"]], interpolation_body: [[/\}/, "string.bracket.close", "@pop"], "expr_"], _class: [ve(Yu, -1, 0), "css_", "member_", "comment_", "decorator_", [/(get|set|def|static|prop|attr)@B/, "keyword.$0"], "field_", "common_"], _tagclass: ["_class", [/(?=\<self)/, "entity.name.def.render", "@_render&def"]], def_params: [[/\(/, "(", "@def_parens"], [/^/, "@rematch", {switchTo: "@_def"}], [/do@B/, "keyword.do", {switchTo: "@_def"}], "params_", [/@comment/, "comment"]], def_parens: [[/\)/, ")", "@pop"], "params_"], def_dynamic_name: [["]", {token: "square.close", switchTo: "@def_params&$/"}], "expr_"], _render: [ve(2, -1, -1), "block_"], _def: [ve(2, -1, 0), "block_"], _flow: [ve(2, -1, 0), "block_"], _varblock: [ve(1, -1, -1), [/\[/, "array.[", "@array_var_body"], [/\{/, "object.{", "@object_body"], [/(@variable)/, "identifier.$F"], [/\s*\,\s*/, "separator"], [/(\s*\=\s*)(?=(for|while|until|if|unless|try)\s)/, "operator", "@pop"], [/(\s*\=\s*)/, "operator", "@var_value="], "type_", [/#(\s.*)?\n?$/, "comment"]], _vardecl: [ve(null, -1, -1), [/\[/, "array.[", "@array_var_body"], [/\{/, "object.{", "@object_body"], [/(@variable)(?=\n|,|$)/, "identifier.$F", "@pop"], [/(@variable)/, "identifier.$F"], [/(\s*\=\s*)/, "operator.declval", {switchTo: "@var_value&value="}], "type_"], array_var_body: [[/\]/, "]", "@pop"], [/\{/, "object.{", "@object_body"], [/\[/, "array.[", "@array_var_body"], "spread_", [/(@variable)/, "identifier.$F"], [/(\s*\=\s*)/, "operator.assign", "@array_var_body_value="], [",", "delimiter"]], array_var_body_value: [[/(?=,|\)|]|})/, "delimiter", "@pop"], "expr_"], inline_var_body: [[/\[/, "array.[", "@array_var_body"], [/\{/, "object.{", "@object_body"], [/(@variable)/, "identifier.$F"], [/(\s*\=\s*)/, "operator", "@pop"], "type_"], var_value: [[/(?=,|\)|]|})/, "delimiter", "@pop"], ve({switchTo: "@>block"}, -1, -1), "block_"], common_: [[/^(\t+)(?=\n|$)/, "white.tabs"], "whitespace"], comma_: [[/\s*,\s*/, "delimiter.comma"]], spread_: [[/\.\.\./, "operator.spread"]], type_: [[/\\/, "@rematch", "@_type&-_type/0"]], _type: [ve(-1, -1, -1), [/\\/, "delimiter.type.prefix"], [/\[/, "delimiter.type", "@/]"], [/\(/, "delimiter.type", "@/)"], [/\{/, "delimiter.type", "@/}"], [/\</, "delimiter.type", "@/>"], [/\|/, "delimiter.type.union"], [/\,|\s|\=|\./, {cases: {"$/==0": {token: "@rematch", next: "@pop"}, "@default": "type"}}], [/[\]\}\)\>]/, {cases: {"$#==$/": {token: "delimiter.type", next: "@pop"}, "@default": {token: "@rematch", next: "@pop"}}}], [/[\w\-\$]+/, "type"]], css_: [[/global(?=\s+css@B)/, "keyword.$#"], [/css(?:\s+)?/, "keyword.css", "@>css_selector&rule-_sel"]], sel_: [[/(\%)((?:@id)?)/, ["style.selector.mixin.prefix", "style.selector.mixin"]], [/(\@)(\.{0,2}[\w\-\<\>\!]*\+?)/, "style.selector.modifier"], [/(\@)(\.{0,2}[\w\-\<\>\!]*)/, "style.selector.modifier"], [/\.([\w\-]+)/, "style.selector.class-name"], [/\#([\w\-]+)/, "style.selector.id"], [/([\w\-]+)/, "style.selector.element"], [/(>+|~|\+)/, "style.selector.operator"], [/(\*+)/, "style.selector.element.any"], [/(\$)((?:@id)?)/, ["style.selector.reference.prefix", "style.selector.reference"]], [/\&/, "style.selector.context"], [/\(/, "delimiter.selector.parens.open", "@css_selector_parens"], [/\[/, "delimiter.selector.attr.open", "@css_selector_attr"], [/\s+/, "white"], [/,/, "style.selector.delimiter"], [/#(\s.*)?\n?$/, "comment"]], css_props: [ve(null, -1, 0), [/(?=@cssPropertyKey2)/, "", "@css_property&-_styleprop-_stylepropkey"], [/#(\s.*)?\n?$/, "comment"], [/(?=[\%\*\w\&\$\>\.\[\@\!]|\#[\w\-])/, "", "@>css_selector&rule-_sel"], [/\s+/, "white"]], css_selector: [ve({switchTo: "@css_props"}, -1, {token: "@rematch", switchTo: "@css_props&_props"}), [/(\}|\)|\])/, "@rematch", "@pop"], [/(?=\s*@cssPropertyKey2)/, "", {switchTo: "@css_props&_props"}], [/\s*#\s/, "@rematch", {switchTo: "@css_props&_props"}], "sel_"], css_inline: [[/\]/, "style.close", "@pop"], [/(?=@cssPropertyKey2)/, "", "@css_property&-_styleprop-_stylepropkey"], [/(?=@cssPropertyPath\])/, "", "@css_property&-_styleprop-_stylepropkey"]], css_selector_parens: [[/\)/, "delimiter.selector.parens.close", "@pop"], "sel_"], css_selector_attr: [[/\]/, "delimiter.selector.parens.close", "@pop"], "sel_"], css_property: [ve(null, -1, -1), [/\]/, "@rematch", "@pop"], [/(\d+)(@id)/, ["style.property.unit.number", "style.property.unit.name"]], [/((--|\$)@id)/, "style.property.var"], [/(-*@id)/, "style.property.name"], [/@cssModifier/, "style.property.modifier"], [/(\@+|\.+)(@id\-?)/, ["style.property.modifier.start", "style.property.modifier"]], [/\+(@id)/, "style.property.scope"], [/\s*([\:]\s*)(?=@br|$)/, "style.property.operator", {switchTo: "@>css_multiline_value&_stylevalue"}], [/\s*([\:]\s*)/, "style.property.operator", {switchTo: "@>css_value&_stylevalue"}]], css_value_: [[/(x?xs|sm\-?|md\-?|lg\-?|xx*l|\dxl|hg|x+h)\b/, "style.value.size"], [/\#[0-9a-fA-F]+/, "style.value.color.hex"], [/((--|\$)@id)/, "style.value.var"], [/(@optid)(\@+|\.+)(@optid)/, ["style.property.name", "style.property.modifier.prefix", "style.property.modifier"]], "op_", "string_", "number_", "comment_", [/\s+/, "style.value.white"], [/\(/, "delimiter.style.parens.open", "@css_expressions"], [/\{/, "delimiter.style.curly.open", "@css_interpolation&-_styleinterpolation"], [/(@id)/, "style.value"]], css_value: [ve({switchTo: "@>css_multiline_value"}, -1, -1), [/@cssPropertyKey2/, "@rematch", "@pop"], [/;/, "style.delimiter", "@pop"], [/(\}|\)|\])/, "@rematch", "@pop"], "css_value_"], css_multiline_value: [ve(null, -1, 0), [/@cssPropertyKey2/, "invalid"], "css_value_"], css_expressions: [[/\)/, "delimiter.style.parens.close", "@pop"], [/\(/, "delimiter.style.parens.open", "@css_expressions"], "css_value"], css_interpolation: [[/\}/, "delimiter.style.curly.close", "@pop"], "expr_"], expressions: [[/\,/, "delimiter.comma"]], whitespace: [[/[\r\n]+/, "br"], [/[ \t\r\n]+/, "white"]], space: [[/[ \t]+/, "white"]], tag_: [[/(\s*)(<)(?=\.)/, ["white", "tag.open", "@_tag/flag"]], [/(\s*)(<)(?=\w|\{|\[|\%|\#|>)/, ["white", "tag.open", "@_tag/name"]]], tag_content: [ve(2, -1, 0), [/\)|\}|\]/, "@rematch", "@pop"], "common_", "flow_", "var_", "for_", "css_", "expr_", "do_"], tag_children: [], _tag: [[/\/>/, "tag.close", "@pop"], [/>/, "tag.close", {switchTo: "@>tag_content=&-_tagcontent"}], [/>/, "tag.close", "@pop"], [/(\-?\d+)/, "tag.$S3"], [/(\%)(@id)/, ["tag.mixin.prefix", "tag.mixin"]], [/\#@id/, "tag.id"], [/\./, {cases: {"$/==event": {token: "tag.event-modifier.start", switchTo: "@/event-modifier"}, "$/==event-modifier": {token: "tag.event-modifier.start", switchTo: "@/event-modifier"}, "$/==modifier": {token: "tag.modifier.start", switchTo: "@/modifier"}, "$/==rule": {token: "tag.rule-modifier.start", switchTo: "@/rule-modifier"}, "$/==rule-modifier": {token: "tag.rule-modifier.start", switchTo: "@/rule-modifier"}, "@default": {token: "tag.flag.start", switchTo: "@/flag"}}}], [/(\$@id)/, {cases: {"$/==name": "tag.reference", "@default": "tag.$/"}}], [/\{/, "tag.$/.interpolation.open", "@_tag_interpolation"], [/\[/, "style.open", "@css_inline"], [/(\s*\=\s*)/, "operator.equals.tagop.tag-$/", "@_tag_value&-value"], [/\:/, {token: "tag.event.start", switchTo: "@/event"}], "tag_event_", [/(\-?@tagIdentifier)(\:@id)?/, {cases: {"$/==attr": {token: "@rematch", next: "@_tag_attr&-_tagattr"}, "@default": {token: "tag.$/"}}}], [/\(/, {token: "tag.$/.parens.open", next: "@_tag_parens/0"}], [/\s+/, {token: "tag.white", switchTo: "@/attr"}], "comment_"], tag_event_: [[/(?=\@@optid)/, "", "@_tag_event&-_listener"]], _tag_part: [[/\)|\}|\]|\>/, "@rematch", "@pop"]], _tag_event: ["_tag_part", [/(\@)(@optid)/, ["tag.event.start", "tag.event.name"]], [/(\.)(@optid)/, ["tag.event-modifier.start", "tag.event-modifier.name"]], [/\(/, {token: "tag.$/.parens.open", next: "@_tag_parens/0"}], [/(\s*\=\s*)/, "operator.equals.tagop.tag-$/", "@_tag_value&handler"], [/\s+/, "@rematch", "@pop"]], tag_attr_: [[/(?=@tagIdentifier(\:@id)?)/, "", "@_tag_attr&-_attribute"]], _tag_attr: ["_tag_part", [/(\-?@tagIdentifier)(\:@id)?/, "tag.attr"], [/\.(@optid)/, "tag.event-modifierzz"], [/\(/, {token: "tag.parens.open.$/", next: "@_tag_parens/0"}], [/(\s*\=\s*)/, "operator.equals.tagop.tag-$/", "@_tag_value&-tagattrvalue"], [/\s+/, "@rematch", "@pop"]], _tag_interpolation: [[/\}/, "tag.$/.interpolation.close", "@pop"], "expr_", [/\)|\]/, "invalid"]], _tag_parens: [[/\)/, "tag.$/.parens.close", "@pop"], "arglist_", [/\]|\}/, "invalid"]], _tag_value: [[/(?=(\/?\>|\s))/, "", "@pop"], "attr_expr_"], regexp_: [[/\/(?!\ )(?=([^\\\/]|\\.)+\/)/, {token: "regexp.slash.open", bracket: "@open", next: "@_regexp"}], [/\/\/\//, {token: "regexp.slash.open", bracket: "@open", next: "@_hereregexp"}], [/(\/)(\/)/, ["regexp.slash.open", "regexp.slash.close"]]], _regexp: [[/(\{)(\d+(?:,\d*)?)(\})/, ["regexp.escape.control", "regexp.escape.control", "regexp.escape.control"]], [/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/, ["regexp.escape.control", {token: "regexp.escape.control", next: "@_regexrange"}]], [/(\()(\?:|\?=|\?!)/, ["regexp.escape.control", "regexp.escape.control"]], [/[()]/, "regexp.escape.control"], [/@regexpctl/, "regexp.escape.control"], [/[^\\\/]/, "regexp"], [/@regexpesc/, "regexp.escape"], [/\\:/, "regexp.escape"], [/\\\./, "regexp.invalid"], [/(\/)(\w+)/, [{token: "regexp.slash.close"}, {token: "regexp.flags", next: "@pop"}]], ["/", {token: "regexp.slash.close", next: "@pop"}], [/./, "regexp.invalid"]], _regexrange: [[/-/, "regexp.escape.control"], [/\^/, "regexp.invalid"], [/@regexpesc/, "regexp.escape"], [/[^\]]/, "regexp"], [/\]/, "regexp.escape.control", "@pop"]], _hereregexp: [[/[^\\\/#]/, "regexp"], [/\\./, "regexp"], [/#.*$/, "comment"], ["///[igm]*", "regexp", "@pop"], [/\//, "regexp"], "comment_"]};
  function w1(t) {
    let e = ["$S1", "$S2", "$S3", "$S4", "$S5", "$S6"];
    if (t.match(/\@(pop|push|popall)/) || (t[0] == "@" && (t = t.slice(1)), t.indexOf(".") >= 0))
      return t;
    t = x1(t), t[0] == ">" && (e[1] = "$S6	", t = t.slice(1));
    for (let r = 0, i = il(t.split(/(?=[\/\&\=\*])/)), s = i.length; r < s; r++) {
      let n = i[r];
      n[0] == "&" ? n[1] == "-" || n[1] == "_" ? e[2] = "$S3" + n.slice(1) : e[2] = "$S3-" + n.slice(1) : n[0] == "+" ? e[3] = "$S4-" + n.slice(1) : n[0] == "=" ? e[3] = n.slice(1) : n[0] == "/" ? e[4] = n.slice(1) : n[0] == "*" ? e[5] = n.slice(1) : e[0] = n;
    }
    return e.join(".");
  }
  function x1(t) {
    let e = t;
    return t = t.replace("$/", "$S5"), t = t.replace("$F", "$S4"), t = t.replace("$&", "$S3"), t = t.replace("$I", "$S2"), t = t.replace("$T", "$S2"), t;
  }
  function ol(t, e) {
    if (typeof t == "string" && (t = {token: t}), t && t.token != null)
      t.token = x1(t.token), typeof e == "string" ? t.next = e : e && Object.assign(t, e), t.next && (t.next = w1(t.next)), t.switchTo && (t.switchTo = w1(t.switchTo));
    else if (t && t.cases) {
      let r = {};
      for (let i = t.cases, s = 0, n = Object.keys(i), o = n.length, a, l; s < o; s++) {
        a = n[s], l = i[a];
        let p = x1(a);
        r[p] = ol(l);
      }
      t.cases = r;
    } else if (t instanceof Array) {
      let r = [], i = null;
      for (let s = 0, n = il(t), o = n.length; s < o; s++) {
        let a = n[s];
        a[0] == "@" && s == t.length - 1 && i && (a = {next: a}), typeof a == "object" ? a.token != null || a.cases ? r.push(i = Object.assign({}, a)) : Object.assign(i, a) : typeof a == "string" && r.push(i = {token: x1(a)});
      }
      t = r;
    }
    if (t instanceof Array)
      for (let r = 0, i = il(t), s = i.length; r < s; r++) {
        let n = i[r];
        n.token && n.token.indexOf("$$") >= 0 && (n.token = n.token.replace("$$", "$" + (r + 1))), n.next && (n.next = w1(n.next)), n.switchTo && (n.switchTo = w1(n.switchTo));
      }
    return t;
  }
  for (let t = 0, e = Object.keys(nl), r = e.length, i, s; t < r; t++) {
    i = e[t], s = nl[i];
    let n = 0;
    for (; n < s.length; ) {
      let o = s[n];
      if (o[0] instanceof Array) {
        s.splice(n, 1, ...o);
        continue;
      } else
        typeof o == "string" ? s[n] = {include: o} : o[1] instanceof Array ? o[1] = ol(o[1]) : o instanceof Array && o.splice(1, 2, ol(o[1], o[2]));
      n++;
    }
  }
  var S1 = {defaultToken: "invalid", ignoreCase: false, tokenPostfix: "", brackets: [{open: "{", close: "}", token: "bracket.curly"}, {open: "[", close: "]", token: "bracket.square"}, {open: "(", close: ")", token: "bracket.parenthesis"}], keywords: ["def", "and", "or", "is", "isnt", "not", "on", "yes", "@", "no", "off", "true", "false", "null", "this", "self", "as", "new", "delete", "typeof", "in", "instanceof", "return", "throw", "break", "continue", "debugger", "if", "elif", "else", "switch", "for", "while", "do", "try", "catch", "finally", "class", "extends", "super", "undefined", "then", "unless", "until", "loop", "of", "by", "when", "tag", "prop", "attr", "export", "import", "extend", "var", "let", "const", "require", "isa", "await"], boolean: ["true", "false", "yes", "no", "undefined", "null"], operators: ["=", "!", "~", "?", ":", "!!", "??", "&", "|", "^", "%", "<<", "!&", ">>", ">>>", "+=", "-=", "*=", "/=", "&=", "|=", "?=", "??=", "^=", "%=", "~=", "<<=", ">>=", ">>>=", "..", "...", "||=", "&&=", "**=", "**", "|=?", "~=?", "^=?", "=?", "and", "or"], assignments: ["=", "|=?", "~=?", "^=?", "=?", "^=", "%=", "~=", "<<=", ">>=", ">>>=", "||=", "&&=", "?=", "??=", "+=", "-=", "*=", "/=", "&=", "|=", "**="], logic: [">", "<", "==", "<=", ">=", "!=", "&&", "||", "===", "!=="], ranges: ["..", "..."], spread: ["..."], dot: ["."], access: [".", ".."], math: ["+", "-", "*", "/", "++", "--"], unspaced_ops: mf("... . .. + * ++ --"), comment: /#(\s.*)?(\n|$)/, symbols: /[=><!~?&%|+\-*\^,]+/, escapes: /\\(?:[abfnrtv\\"'$]|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/, postaccess: /(:(?=\w))?/, ivar: /\@[a-zA-Z_]\w*/, B: /(?=\s|$)/, br: /[\r\n]+/, constant: /[A-Z][\w\$]*(?:\-+[\w\$]+)*/, id: /[A-Za-z_\$][\w\$]*(?:\-+[\w\$]+)*\??/, plainid: /[A-Za-z_\$][\w\$]*(?:\-+[\w\$]+)*\??/, fieldid: /[\@\#]*@plainid/, propid: /[\@\#]*@plainid/, defid: /[\@\#]*@plainid/, decid: /\@@plainid/, symid: /\#+@plainid/, symref: /\#\#@plainid/, optid: /(?:@id)?/, esmIdentifier: /[A-Za-z_\$\@][\w\$]*(?:\-+[\w\$]+)*\??/, propertyPath: /(?:[A-Za-z_\$][A-Za-z\d\-\_\$]*\.)?(?:[A-Za-z_\$][A-Za-z\d\-\_\$]*)/, tagNameIdentifier: /(?:[\w\-]+\:)?\w+(?:\-\w+)*/, variable: /[\w\$]+(?:-[\w\$]*)*\??/, varKeyword: /var|let|const/, tagIdentifier: /-*[a-zA-Z][\w\-]*/, implicitCall: /(?!\s(?:and|or|is|isa)\s)(?=\s[\w\'\"\/\[\{])/, cssModifier: /(?:\@+[\<\>\!]?[\w\-]+\+?|\.+@id\-?)/, cssPropertyPath: /[\@\.]*[\w\-\$]+(?:[\@\.]+[\w\-\$]+)*/, cssPropertyKey: /[\@\.]*[\w\-\$]+(?:[\@\.]+[\w\-\$]+)*(?:\s*\:)/, cssVariable: /(?:--|\$)[\w\-\$]+/, cssPropertyName: /[\w\-\$]+/, cssPropertyKey2: /(?:@cssPropertyName(?:@cssModifier)*|@cssModifier+)(?:\s*\:)/, cssUpModifier: /\.\.[\w\-\$]+/, cssIsModifier: /\.[\w\-\$]+/, regEx: /\/(?!\/\/)(?:[^\/\\]|\\.)*\/[igm]*/, regexpctl: /[(){}\[\]\$\^|\-*+?\.]/, regexpesc: /\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/, tokenizer: nl};
  var Es;
  (function(t) {
    t[t.None = 0] = "None", t[t.Open = 1] = "Open", t[t.Close = -1] = "Close";
  })(Es || (Es = {}));
  function yf(t) {
    return Array.isArray(t);
  }
  function Ku(t) {
    return !yf(t);
  }
  function al(t) {
    return typeof t == "string";
  }
  function qu(t) {
    return !al(t);
  }
  function Xu(t) {
    return !t;
  }
  function dn(t, e) {
    return t.ignoreCase && e ? e.toLowerCase() : e;
  }
  function ll(t) {
    return t.replace(/[&<>'"_]/g, "-");
  }
  function Wu(t, e) {
    console.log(`${t.languageId}: ${e}`);
  }
  function we(t, e) {
    return new Error(`${t.languageId}: ${e}`);
  }
  var Ju = {};
  function gf(t) {
    let e = [], r = 0, i = t.length, s = "", n = 0;
    for (; r < i; ) {
      let o = t[r++];
      if (o == "$") {
        let a = t[r++];
        if (a == "$") {
          s += "$";
          continue;
        }
        s && e.push(s), s = "", a == "#" ? e.push(0) : a == "S" ? e.push(parseInt(t[r++]) + 100) : e.push(parseInt(a) + 1);
      } else
        s += o;
    }
    return s && e.push(s), Ju[t] = e, e;
  }
  function es(t, e, r, i, s) {
    let n = null, o = Ju[e] || gf(e), a = "";
    for (let l = 0; l < o.length; l++) {
      let p = o[l];
      typeof p == "string" ? a += p : p > 100 ? (n === null && (n = s.split(".")), a += n[p - 101] || "") : p === 100 ? a += s : p === 0 ? a += r : p > 0 && (a += i[p - 1]);
    }
    return a;
  }
  var cl = {};
  function T1(t, e) {
    let r = e;
    if (cl[r])
      return t.tokenizer[cl[r]];
    for (; r && r.length > 0; ) {
      let i = t.tokenizer[r];
      if (i)
        return cl[e] = r, i;
      let s = r.lastIndexOf(".");
      s < 0 ? r = null : r = r.substr(0, s);
    }
    return null;
  }
  function Zu(t, e) {
    let r = e;
    for (; r && r.length > 0; ) {
      if (t.stateNames[r])
        return true;
      let s = r.lastIndexOf(".");
      s < 0 ? r = null : r = r.substr(0, s);
    }
    return false;
  }
  function vf(t, e) {
    if (!e || !Array.isArray(e))
      return false;
    for (let r of e)
      if (!t(r))
        return false;
    return true;
  }
  function Qu(t, e) {
    return typeof t == "boolean" ? t : e;
  }
  function $u(t, e) {
    return typeof t == "string" ? t : e;
  }
  function bf(t) {
    let e = {};
    for (let r of t)
      e[r] = true;
    return e;
  }
  function th(t, e = false) {
    e && (t = t.map(function(i) {
      return i.toLowerCase();
    }));
    let r = bf(t);
    return e ? function(i) {
      return r[i.toLowerCase()] !== void 0 && r.hasOwnProperty(i.toLowerCase());
    } : function(i) {
      return r[i] !== void 0 && r.hasOwnProperty(i);
    };
  }
  function ul(t, e) {
    let r = 0;
    for (; e.indexOf("@") >= 0 && r < 5; )
      r++, e = e.replace(/@(\w+)/g, function(i, s) {
        let n = "";
        if (typeof t[s] == "string")
          n = t[s];
        else if (t[s] && t[s] instanceof RegExp)
          n = t[s].source;
        else
          throw t[s] === void 0 ? we(t, "language definition does not contain attribute '" + s + "', used at: " + e) : we(t, "attribute reference '" + s + "' must be a string, used at: " + e);
        return Xu(n) ? "" : "(?:" + n + ")";
      });
    return new RegExp(e, t.ignoreCase ? "i" : "");
  }
  function kf(t, e, r, i) {
    if (i < 0)
      return t;
    if (i < e.length)
      return e[i];
    if (i >= 100) {
      i = i - 100;
      let s = r.split(".");
      if (s.unshift(r), i < s.length)
        return s[i];
    }
    return null;
  }
  function xf(t, e, r, i) {
    let s = -1, n = r, o = r.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);
    o && (o[3] && (s = parseInt(o[3]), o[2] && (s = s + 100)), n = o[4]);
    let a = "~", l = n;
    !n || n.length === 0 ? (a = "!=", l = "") : /^\w*$/.test(l) ? a = "==" : (o = n.match(/^(@|!@|~|!~|==|!=)(.*)$/), o && (a = o[1], l = o[2]));
    let p;
    if ((a === "~" || a === "!~") && /^(\w|\|)*$/.test(l)) {
      let c = th(l.split("|"), t.ignoreCase);
      p = function(_) {
        return a === "~" ? c(_) : !c(_);
      };
    } else if (a === "@" || a === "!@") {
      let c = t[l];
      if (!c)
        throw we(t, "the @ match target '" + l + "' is not defined, in rule: " + e);
      if (!vf(function(f) {
        return typeof f == "string";
      }, c))
        throw we(t, "the @ match target '" + l + "' must be an array of strings, in rule: " + e);
      let _ = th(c, t.ignoreCase);
      p = function(f) {
        return a === "@" ? _(f) : !_(f);
      };
    } else if (a === "~" || a === "!~")
      if (l.indexOf("$") < 0) {
        let c = ul(t, "^" + l + "$");
        p = function(_) {
          return a === "~" ? c.test(_) : !c.test(_);
        };
      } else
        p = function(c, _, f, m) {
          return ul(t, "^" + es(t, l, _, f, m) + "$").test(c);
        };
    else if (l.indexOf("$") < 0) {
      let c = dn(t, l);
      p = function(_) {
        return a === "==" ? _ === c : _ !== c;
      };
    } else {
      let c = dn(t, l);
      p = function(_, f, m, g, b) {
        let N = es(t, c, f, m, g);
        return a === "==" ? _ === N : _ !== N;
      };
    }
    return s === -1 ? {name: r, value: i, test: function(c, _, f, m) {
      return p(c, c, _, f, m);
    }} : {name: r, value: i, test: function(c, _, f, m) {
      let g = kf(c, _, f, s);
      return p(g || "", c, _, f, m);
    }};
  }
  function hl(t, e, r) {
    if (r) {
      if (typeof r == "string")
        return r;
      if (r.token || r.token === "") {
        if (typeof r.token != "string")
          throw we(t, "a 'token' attribute must be of type string, in rule: " + e);
        {
          let i = {token: r.token};
          if (r.token.indexOf("$") >= 0 && (i.tokenSubst = true), typeof r.bracket == "string")
            if (r.bracket === "@open")
              i.bracket = Es.Open;
            else if (r.bracket === "@close")
              i.bracket = Es.Close;
            else
              throw we(t, "a 'bracket' attribute must be either '@open' or '@close', in rule: " + e);
          if (r.next) {
            if (typeof r.next != "string")
              throw we(t, "the next state must be a string value in rule: " + e);
            {
              let s = r.next;
              if (!/^(@pop|@push|@popall)$/.test(s) && (s[0] === "@" && (s = s.substr(1)), s.indexOf("$") < 0 && !Zu(t, es(t, s, "", [], ""))))
                throw we(t, "the next state '" + r.next + "' is not defined in rule: " + e);
              i.next = s;
            }
          }
          return typeof r.goBack == "number" && (i.goBack = r.goBack), typeof r.switchTo == "string" && (i.switchTo = r.switchTo), typeof r.log == "string" && (i.log = r.log), typeof r._push == "string" && (i._push = r._push), typeof r._pop == "string" && (i._pop = r._pop), typeof r.mark == "string" && (i.mark = r.mark), typeof r.fn == "string" && (i.fn = r.fn), typeof r.nextEmbedded == "string" && (i.nextEmbedded = r.nextEmbedded, t.usesEmbedded = true), i;
        }
      } else if (Array.isArray(r)) {
        let i = [];
        for (let s = 0, n = r.length; s < n; s++)
          i[s] = hl(t, e, r[s]);
        return {group: i};
      } else if (r.cases) {
        let i = [];
        for (let n in r.cases)
          if (r.cases.hasOwnProperty(n)) {
            let o = hl(t, e, r.cases[n]);
            n === "@default" || n === "@" || n === "" ? i.push({test: void 0, value: o, name: n}) : n === "@eos" ? i.push({test: function(a, l, p, c) {
              return c;
            }, value: o, name: n}) : i.push(xf(t, e, n, o));
          }
        let s = t.defaultToken;
        return {test: function(n, o, a, l) {
          for (let p of i)
            if (!p.test || p.test(n, o, a, l))
              return p.value;
          return s;
        }};
      } else
        throw we(t, "an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: " + e);
    } else
      return {token: ""};
  }
  var eh = class {
    constructor(e) {
      this.regex = new RegExp("");
      this.action = {token: ""};
      this.matchOnlyAtLineStart = false;
      this.name = "";
      this.name = e, this.stats = {time: 0, count: 0, hits: 0};
    }
    setRegex(e, r) {
      let i;
      if (typeof r == "string")
        i = r;
      else if (r instanceof RegExp)
        i = r.source;
      else
        throw we(e, "rules must start with a match string or regular expression: " + this.name);
      i.length == 2 && i[0] == "\\" && /[\{\}\(\)\[\]]/.test(i[1]) && (this.string = i[1]), this.matchOnlyAtLineStart = i.length > 0 && i[0] === "^", this.name = this.name + ": " + i, this.regex = ul(e, "^(?:" + (this.matchOnlyAtLineStart ? i.substr(1) : i) + ")");
    }
    setAction(e, r) {
      this.action = hl(e, this.name, r);
    }
  };
  function E1(t, e) {
    if (!e || typeof e != "object")
      throw new Error("Monarch: expecting a language definition object");
    let r = {};
    r.languageId = t, r.noThrow = false, r.maxStack = 100, r.start = typeof e.start == "string" ? e.start : null, r.ignoreCase = Qu(e.ignoreCase, false), r.tokenPostfix = $u(e.tokenPostfix, "." + r.languageId), r.defaultToken = $u(e.defaultToken, "source"), r.usesEmbedded = false;
    let i = e;
    i.languageId = t, i.ignoreCase = r.ignoreCase, i.noThrow = r.noThrow, i.usesEmbedded = r.usesEmbedded, i.stateNames = e.tokenizer, i.defaultToken = r.defaultToken;
    function s(o, a, l) {
      for (let p of l) {
        let c = p.include;
        if (c) {
          if (typeof c != "string")
            throw we(r, "an 'include' attribute must be a string at: " + o);
          if (c[0] === "@" && (c = c.substr(1)), !e.tokenizer[c])
            throw we(r, "include target '" + c + "' is not defined at: " + o);
          s(o + "." + c, a, e.tokenizer[c]);
        } else {
          let _ = new eh(o);
          if (Array.isArray(p) && p.length >= 1 && p.length <= 3)
            if (_.setRegex(i, p[0]), p.length >= 3)
              if (typeof p[1] == "string")
                _.setAction(i, {token: p[1], next: p[2]});
              else if (typeof p[1] == "object") {
                let f = p[1];
                f.next = p[2], _.setAction(i, f);
              } else
                throw we(r, "a next state as the last element of a rule can only be given if the action is either an object or a string, at: " + o);
            else
              _.setAction(i, p[1]);
          else {
            if (!p.regex)
              throw we(r, "a rule must either be an array, or an object with a 'regex' or 'include' field at: " + o);
            p.name && typeof p.name == "string" && (_.name = p.name), p.matchOnlyAtStart && (_.matchOnlyAtLineStart = Qu(p.matchOnlyAtLineStart, false)), _.setRegex(i, p.regex), _.setAction(i, p.action);
          }
          a.push(_);
        }
      }
    }
    if (!e.tokenizer || typeof e.tokenizer != "object")
      throw we(r, "a language definition must define the 'tokenizer' attribute as an object");
    r.tokenizer = [];
    for (let o in e.tokenizer)
      if (e.tokenizer.hasOwnProperty(o)) {
        r.start || (r.start = o);
        let a = e.tokenizer[o];
        r.tokenizer[o] = new Array(), s("tokenizer." + o, r.tokenizer[o], a);
      }
    if (r.usesEmbedded = i.usesEmbedded, e.brackets) {
      if (!Array.isArray(e.brackets))
        throw we(r, "the 'brackets' attribute must be defined as an array");
    } else
      e.brackets = [{open: "{", close: "}", token: "delimiter.curly"}, {open: "[", close: "]", token: "delimiter.square"}, {open: "(", close: ")", token: "delimiter.parenthesis"}, {open: "<", close: ">", token: "delimiter.angle"}];
    let n = [];
    for (let o of e.brackets) {
      let a = o;
      if (a && Array.isArray(a) && a.length === 3 && (a = {token: a[2], open: a[0], close: a[1]}), a.open === a.close)
        throw we(r, "open and close brackets in a 'brackets' attribute must be different: " + a.open + `
 hint: use the 'bracket' attribute if matching on equal brackets is required.`);
      if (typeof a.open == "string" && typeof a.token == "string" && typeof a.close == "string")
        n.push({token: a.token + r.tokenPostfix, open: dn(r, a.open), close: dn(r, a.close)});
      else
        throw we(r, "every element in the 'brackets' array must be a '{open,close,token}' object or array");
    }
    return r.brackets = n, r.noThrow = true, r;
  }
  var Ti = class {
    constructor(e, r, i) {
      this.offset = e | 0, this.type = r, this.language = i, this.kind = 0, this.mods = 0, this.value = null, this.stack = null;
    }
    toString() {
      return this.value || "";
    }
    get span() {
      return {offset: this.offset, length: this.value ? this.value.length : 0};
    }
    get indent() {
      return 0;
    }
    get startOffset() {
      return this.offset;
    }
    get endOffset() {
      return this.offset + (this.value ? this.value.length : 0);
    }
    clone() {
      let e = new Ti(this.offset, this.type, this.language);
      return e.value = this.value, e.stack = this.stack, e;
    }
    match(e) {
      if (typeof e == "string")
        if (e.indexOf(" ") > 0)
          e = e.split(" ");
        else {
          let r = this.type.indexOf(e);
          return e[0] == "." ? r >= 0 : r == 0;
        }
      if (e instanceof Array)
        for (let r of e) {
          let i = this.type.indexOf(r);
          if (r[0] == "." ? i >= 0 : i == 0)
            return true;
        }
      return e instanceof RegExp ? e.test(this.type) : false;
    }
  };
  var pl = class {
    constructor(e, r) {
      this.tokens = e, this.endState = r;
    }
  };
  var rh = 10;
  function ra(t, e) {
    return t.split(".")[e];
  }
  var fl = class {
    static create(e, r) {
      return this._INSTANCE.create(e, r);
    }
    constructor(e) {
      this._maxCacheDepth = e, this._entries = Object.create(null);
    }
    create(e, r) {
      if (e !== null && e.depth >= this._maxCacheDepth)
        return new mn(e, r);
      let i = mn.getStackElementId(e);
      i.length > 0 && (i += "|"), i += r;
      let s = this._entries[i];
      return s || (s = new mn(e, r), this._entries[i] = s, s);
    }
  };
  var ia = fl;
  ia._INSTANCE = new fl(rh);
  var mn = class {
    constructor(e, r) {
      this.parent = e, this.state = r, this.depth = (this.parent ? this.parent.depth : 0) + 1;
    }
    static getStackElementId(e) {
      let r = "";
      for (; e !== null; )
        r.length > 0 && (r += "|"), r += e.state, e = e.parent;
      return r;
    }
    static _equals(e, r) {
      for (; e !== null && r !== null; ) {
        if (e === r)
          return true;
        if (e.state !== r.state)
          return false;
        e = e.parent, r = r.parent;
      }
      return e === null && r === null;
    }
    get indent() {
      return this.state.lastIndexOf("	") - this.state.indexOf("	");
    }
    get scope() {
      return this.part(2);
    }
    get detail() {
      return this.part(2);
    }
    part(e) {
      return this.state.split(".")[e];
    }
    equals(e) {
      return mn._equals(this, e);
    }
    push(e) {
      return ia.create(this, e);
    }
    pop() {
      return this.parent;
    }
    popall() {
      let e = this;
      for (; e.parent; )
        e = e.parent;
      return e;
    }
    switchTo(e) {
      return ia.create(this.parent, e);
    }
  };
  var _l = class {
    static create(e) {
      return this._INSTANCE.create(e);
    }
    constructor(e) {
      this._maxCacheDepth = e, this._entries = Object.create(null);
    }
    create(e) {
      if (e !== null && e.depth >= this._maxCacheDepth)
        return new na(e);
      let r = mn.getStackElementId(e), i = this._entries[r];
      return i || (i = new na(e), this._entries[r] = i, i);
    }
  };
  var sa = _l;
  sa._INSTANCE = new _l(rh);
  var na = class {
    constructor(e) {
      this.stack = e;
    }
    clone() {
      return sa.create(this.stack);
    }
    equals(e) {
      return !(!(e instanceof na) || !this.stack.equals(e.stack));
    }
  };
  var ih = class {
    constructor() {
      this._tokens = [], this._language = null, this._lastToken = new Ti(0, "start", "imba"), this._lastTokenType = null;
    }
    enterMode(e, r) {
      this._language = r;
    }
    emit(e, r, i) {
      this._lastTokenType;
      let s = new Ti(e, r, this._language);
      return this._lastTokenType = r, this._lastToken = s, this._tokens.push(s), s;
    }
    finalize(e) {
      return new pl(this._tokens, e);
    }
  };
  var oa = class {
    constructor(e, r) {
      this._modeId = e, this._lexer = r, this._profile = false;
    }
    dispose() {
    }
    getLoadStatus() {
      return {loaded: true};
    }
    getInitialState() {
      let e = ia.create(null, this._lexer.start);
      return sa.create(e);
    }
    tokenize(e, r, i) {
      let s = new ih(), n = this._tokenize(e, r, i, s);
      return s.finalize(n);
    }
    _tokenize(e, r, i, s) {
      return this._myTokenize(e, r, i, s);
    }
    _safeRuleName(e) {
      return e ? e.name : "(unknown)";
    }
    _rescope(e, r, i, s) {
      let n = (e || "").split("-"), o = (r || "").split("-");
      if (e == r)
        return;
      let a = 1;
      for (; n[a] && n[a] == o[a]; )
        a++;
      let l = n.length;
      for (; l > a; )
        i.push("pop." + n[--l] + "." + l);
      for (; o.length > a; ) {
        let p = "push." + o[a++] + "." + (a - 1);
        if (s) {
          let c = ra(s, 1);
          p += "." + c;
        }
        i.push(p);
      }
    }
    _myTokenize(e, r, i, s) {
      s.enterMode(i, this._modeId);
      let n = e.length, o = r.stack, a = null, l = 0, p = this._profile, c = null, _ = true, f = [], m = 0, g = [], b = null, N = -1;
      for (; _ || l < n; ) {
        if (m++, m > 1e3) {
          if (l == N)
            throw console.log("infinite recursion", l, n, o, s), "infinite recursion in tokenizer?";
          N = l, m = 0;
        }
        let y = l, v = o.depth, d = c ? c.groups.length : 0, w = o.state, k = null, T = null, S = null, C = null;
        if (c) {
          k = c.matches;
          let D = c.groups.shift();
          T = D.matched, S = D.action, C = c.rule, c.groups.length === 0 && (c = null);
        } else {
          if (!_ && l >= n)
            break;
          if (_ = false, g = this._lexer.tokenizer[w], !g && (g = T1(this._lexer, w), !g))
            throw we(this._lexer, "tokenizer state is not defined: " + w);
          let D = e.substr(l);
          for (let I of g)
            if (I.string !== void 0) {
              if (D[0] === I.string) {
                k = [I.string], T = I.string, S = I.action;
                break;
              }
            } else if (l === 0 || !I.matchOnlyAtLineStart) {
              if (p) {
                I.stats.count++;
                let U = performance.now();
                k = D.match(I.regex), I.stats.time += performance.now() - U, k && I.stats.hits++;
              } else
                k = D.match(I.regex);
              if (k) {
                T = k[0], S = I.action;
                break;
              }
            }
        }
        if (k || (k = [""], T = ""), S || (l < n && (k = [e.charAt(l)], T = k[0]), S = this._lexer.defaultToken), T === null)
          break;
        for (l += T.length; Ku(S) && qu(S) && S.test; )
          S = S.test(T, k, w, l === n);
        let L = null;
        if (typeof S == "string" || Array.isArray(S))
          L = S;
        else if (S.group)
          L = S.group;
        else if (S.token !== null && S.token !== void 0) {
          if (S.tokenSubst ? L = es(this._lexer, S.token, T, k, w) : L = S.token, S.goBack && (l = Math.max(0, l - S.goBack)), S.switchTo && typeof S.switchTo == "string") {
            let D = es(this._lexer, S.switchTo, T, k, w);
            if (D[0] === "@" && (D = D.substr(1)), T1(this._lexer, D)) {
              let I = o.scope, U = ra(D, 2);
              I !== U && this._rescope(I, U, f, D), o = o.switchTo(D);
            } else
              throw we(this._lexer, "trying to switch to a state '" + D + "' that is undefined in rule: " + this._safeRuleName(C));
          } else {
            if (S.transform && typeof S.transform == "function")
              throw we(this._lexer, "action.transform not supported");
            if (S.next)
              if (S.next === "@push") {
                if (o.depth >= this._lexer.maxStack)
                  throw we(this._lexer, "maximum tokenizer stack size reached: [" + o.state + "," + o.parent.state + ",...]");
                o = o.push(w);
              } else if (S.next === "@pop") {
                if (o.depth <= 1)
                  throw we(this._lexer, "trying to pop an empty stack in rule: " + this._safeRuleName(C));
                {
                  let D = o;
                  o = o.pop();
                  let I = ra(D.state, 2), U = ra(o.state, 2);
                  I !== U && this._rescope(I, U, f, o.state);
                }
              } else if (S.next === "@popall")
                o = o.popall();
              else {
                let D = es(this._lexer, S.next, T, k, w);
                D[0] === "@" && (D = D.substr(1));
                let I = ra(D, 2);
                if (T1(this._lexer, D))
                  I != o.scope && this._rescope(o.scope || "", I, f, D), o = o.push(D);
                else
                  throw we(this._lexer, "trying to set a next state '" + D + "' that is undefined in rule: " + this._safeRuleName(C));
              }
          }
          S.log && typeof S.log == "string" && Wu(this._lexer, this._lexer.languageId + ": " + es(this._lexer, S.log, T, k, w)), S.mark && s.emit(y + i, S.mark, o);
        }
        if (L === null)
          throw we(this._lexer, "lexer rule has no well-defined action in rule: " + this._safeRuleName(C));
        if (Array.isArray(L)) {
          if (c && c.groups.length > 0)
            throw we(this._lexer, "groups cannot be nested: " + this._safeRuleName(C));
          if (k.length !== L.length + 1)
            throw we(this._lexer, "matched number of groups does not match the number of actions in rule: " + this._safeRuleName(C));
          let D = 0;
          for (let I = 1; I < k.length; I++)
            D += k[I].length;
          if (D !== T.length)
            throw we(this._lexer, "with groups, all characters should be matched in consecutive groups in rule: " + this._safeRuleName(C));
          c = {rule: C, matches: k, groups: []};
          for (let I = 0; I < L.length; I++)
            c.groups[I] = {action: L[I], matched: k[I + 1]};
          l -= T.length;
          continue;
        } else {
          if (L === "@rematch" && (l -= T.length, T = "", k = null, L = ""), T.length === 0)
            if (n === 0 || v !== o.depth || w !== o.state || (c ? c.groups.length : 0) !== d) {
              for (typeof L == "string" && L && s.emit(l + i, L, o); f.length > 0; )
                s.emit(l + i, f.shift(), o);
              continue;
            } else
              throw we(this._lexer, "no progress in tokenizer in rule: " + this._safeRuleName(C));
          let D = null;
          if (al(L) && L.indexOf("@brackets") === 0) {
            let U = L.substr("@brackets".length), B = wf(this._lexer, T);
            if (!B)
              throw we(this._lexer, "@brackets token returned but no bracket defined as: " + T);
            D = ll(B.token + U);
          } else {
            let U = L === "" ? "" : L + this._lexer.tokenPostfix;
            D = ll(U);
          }
          let I = s.emit(y + i, D, o);
          for (I.stack = o, a && a != I && (a.value = e.slice(a.offset - i, y)), a = I; f.length > 0; )
            s.emit(l + i, f.shift(), o);
        }
      }
      return a && !a.value && (a.value = e.slice(a.offset - i)), sa.create(o);
    }
  };
  function wf(t, e) {
    if (!e)
      return null;
    e = dn(t, e);
    let r = t.brackets;
    for (let i of r) {
      if (i.open === e)
        return {token: i.token, bracketType: Es.Open};
      if (i.close === e)
        return {token: i.token, bracketType: Es.Close};
    }
    return null;
  }
  function Sf(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var sh = Symbol.for("#__init__");
  var Od = Symbol.for("#__initor__");
  var Cd = Symbol.for("#__inited__");
  var aa = class {
    constructor(e = null) {
      this[sh](e);
    }
    [sh](e = null) {
      this.offset = e ? e.offset : void 0, this.text = e ? e.text : void 0, this.tokens = e ? e.tokens : void 0, this.startState = e ? e.startState : void 0, this.endState = e ? e.endState : void 0;
    }
    clone(e = this.offset) {
      let r = [], i = e - this.offset;
      for (let s = 0, n = Sf(this.tokens), o = n.length; s < o; s++) {
        let a = n[s], l = a.clone();
        l.offset = a.offset + i, r.push(l);
      }
      return new aa({offset: e, startState: this.startState, endState: this.endState, text: this.text, tokens: r});
    }
  };
  var Tf = E1("imba", S1);
  var yn = new oa("imba", Tf);
  function nh(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var uo = ["comment", "string", "keyword", "number", "regexp", "operator", "namespace", "type", "struct", "class", "interface", "enum", "typeParameter", "function", "member", "macro", "variable", "parameter", "property", "label"];
  for (let t = 0, e = nh(uo), r = e.length; t < r; t++) {
    let i = e[t];
    uo[i] = t;
  }
  var Be = {Declaration: 1 << 0, Import: 1 << 1, Export: 1 << 2, Global: 1 << 3, ReadOnly: 1 << 4, Static: 1 << 5, Modification: 1 << 6, Deprecated: 1 << 7, Access: 1 << 8, Root: 1 << 9, Special: 1 << 10, Class: 1 << 11, Member: 1 << 12, Function: 1 << 13, Def: 1 << 14, Var: 1 << 15, Let: 1 << 16, Const: 1 << 17, Get: 1 << 18, Set: 1 << 19};
  var oh = Object.keys(Be).map(function(t) {
    return t.toLowerCase();
  });
  for (let t = 0, e = nh(Object.keys(Be)), r = e.length; t < r; t++) {
    let i = e[t];
    Be[i.toLowerCase()] = Be[i];
  }
  var Fr = {Keyword: 1 << 0, Access: 1 << 1, Key: 1 << 2, TagName: 1 << 3, TagEvent: 1 << 4, TagFlag: 1 << 5, TagProp: 1 << 6, TagEventModifier: 1 << 7, Value: 1 << 8, Path: 1 << 9, StyleProp: 1 << 10, StyleValue: 1 << 11, Type: 1 << 12, StyleModifier: 1 << 13, StyleSelector: 1 << 14, VarName: 1 << 15, ImportName: 1 << 16};
  var zt = {Keyword: 1 << 0, Root: 1 << 1, Class: 1 << 2, Block: 1 << 3};
  var la = {and: zt.Block, await: zt.Block, begin: zt.Block, break: zt.Block, by: zt.Block, case: zt.Block, catch: zt.Block, class: zt.Block, const: zt.Block, continue: zt.Block, css: zt.Class | zt.Root, debugger: zt.Block, def: zt.Class | zt.Block, get: zt.Class, set: zt.Class, delete: zt.Block, do: zt.Block, elif: zt.Block, else: zt.Block, export: zt.Root, extends: zt.Block, false: zt.Block, finally: zt.Block, for: zt.Block, if: zt.Block, import: zt.Root, in: zt.Block, instanceof: zt.Block, is: zt.Block, isa: zt.Block, isnt: zt.Block, let: zt.Block, loop: zt.Block, module: zt.Block, nil: zt.Block, no: zt.Block, not: zt.Block, null: zt.Block, of: zt.Block, or: zt.Block, require: zt.Block, return: zt.Block, self: zt.Block, static: zt.Block | zt.Class, super: zt.Block, switch: zt.Block, tag: zt.Root, then: zt.Block, this: zt.Block, throw: zt.Block, true: zt.Block, try: zt.Block, typeof: zt.Block, undefined: zt.Block, unless: zt.Block, until: zt.Block, var: zt.Block, when: zt.Block, while: zt.Block, yes: zt.Block};
  var pr = {File: 1, Module: 2, Namespace: 3, Package: 4, Class: 5, Method: 6, Property: 7, Field: 8, Constructor: 9, Enum: 10, Interface: 11, Function: 12, Variable: 13, Constant: 14, String: 15, Number: 16, Boolean: 17, Array: 18, Object: 19, Key: 20, Null: 21, EnumMember: 22, Struct: 23, Event: 24, Operator: 25, TypeParameter: 26};
  for (let t = 0, e = Object.keys(pr), r = e.length, i, s; t < r; t++)
    i = e[t], s = pr[i], pr[s] = i;
  function Ef(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var ah = Symbol.for("#__init__");
  var jd = Symbol.for("#__initor__");
  var Gd = Symbol.for("#__inited__");
  var A1 = Symbol.for("#datatype");
  var Mt = {None: 0, ConstVariable: 1 << 0, LetVariable: 1 << 1, Property: 1 << 2, EnumMember: 1 << 3, Function: 1 << 4, Class: 1 << 5, LocalComponent: 1 << 6, GlobalComponent: 1 << 7, RegularEnum: 1 << 8, ValueModule: 1 << 9, Parameter: 1 << 10, TypeLiteral: 1 << 11, ObjectLiteral: 1 << 12, Method: 1 << 13, Constructor: 1 << 14, GetAccessor: 1 << 15, SetAccessor: 1 << 16, Signature: 1 << 17, TypeParameter: 1 << 18, TypeAlias: 1 << 19, ExportValue: 1 << 20, Alias: 1 << 21, Prototype: 1 << 22, ExportStar: 1 << 23, Optional: 1 << 24, IsSpecial: 1 << 27, IsImport: 1 << 28, IsStatic: 1 << 29, IsGlobal: 1 << 30, IsRoot: 1 << 31};
  Mt.Component = Mt.LocalComponent | Mt.GlobalComponent;
  Mt.Variable = Mt.LetVariable | Mt.ConstVariable | Mt.Parameter;
  Mt.Accessor = Mt.GetAccessor | Mt.SetAccessor;
  Mt.ClassMember = Mt.Method | Mt.Accessor | Mt.Property;
  Mt.Scoped = Mt.Function | Mt.Variable | Mt.Class | Mt.Enum | Mt.LocalComponent;
  Mt.Type = Mt.Component | Mt.Class;
  Mt.GlobalVar = Mt.ConstVariable | Mt.IsGlobal;
  Mt.SpecialVar = Mt.ConstVariable | Mt.IsSpecial;
  var lh = [["entity.name.component.local", 0, Mt.LocalComponent], ["entity.name.component.global", 0, Mt.GlobalComponent], ["entity.name.function", 0, Mt.Function], ["entity.name.class", 0, Mt.Class], ["entity.name.constructor", 0, Mt.Method], ["entity.name.def", 0, Mt.Method], ["entity.name.get", 0, Mt.GetAccessor], ["entity.name.set", 0, Mt.SetAccessor], ["field", 0, Mt.Property], ["decl-let", 0, Mt.LetVariable], ["decl-for-index", 0, Mt.LetVariable, {datatype: "\\number"}], ["decl-for", 0, Mt.LetVariable, {kind: "for"}], ["decl-var", 0, Mt.LetVariable], ["decl-param", 0, Mt.Parameter], ["decl-const", 0, Mt.ConstVariable], ["decl-import", 0, Mt.ConstVariable | Mt.IsImport]];
  var dl = {};
  var rs = class {
    [ah](e = null) {
      var r;
      this.value = e ? e.value : void 0, this.body = e && (r = e.body) !== void 0 ? r : null;
    }
    static typeMatch(e) {
      if (dl[e] != null)
        return dl[e];
      for (let r = 0, i = Ef(lh), s = i.length; r < s; r++) {
        let [n, o, a, l] = i[r];
        if (e.indexOf(n) >= 0)
          return dl[e] = lh[r];
      }
      return null;
    }
    static forToken(e, r, i = 0) {
      let s = this.typeMatch(r);
      return s ? new this(s[2], e.value, e, s[3]) : null;
    }
    constructor(e, r, i, s = null) {
      this[ah](), this.flags = e, this.name = r, this.node = i, this.desc = s;
    }
    get importSource() {
      return this.imported\u03A6 ? this.node.context.closest("imports").sourcePath : null;
    }
    get exportName() {
      return this.node.prev.match("keyword.as") ? this.node.prev.prev.value : this.node.match(".default") ? "default" : this.node.value;
    }
    get importInfo() {
      if (!this.imported\u03A6)
        return null;
      let e = this.node.context.closest("imports");
      return {exportName: this.exportName, name: this.node.value, isTypeOnly: e.isTypeOnly, path: e.sourcePath};
    }
    get datatype() {
      var n;
      let e, r = this.desc && this.desc.datatype;
      if (r)
        return r;
      if (this[A1])
        return this[A1];
      let i = this.node && this.node.nextNode;
      if (i && i.type == "type")
        return i;
      let s = this.scope;
      if (s && ((n = this.desc) == null ? void 0 : n.kind) == "for") {
        let o = s.doc.getDestructuredPath(this.node, [[s.expression, "__@iterable"]]);
        return this[A1] || (this[A1] = o);
      }
      return (e = this.importInfo) ? e : null;
    }
    get static\u03A6() {
      return this.node && this.node.mods & Be.Static;
    }
    get itervar\u03A6() {
      return this.node && this.node.match(".decl-for");
    }
    get variable\u03A6() {
      return this.flags & Mt.Variable;
    }
    get parameter\u03A6() {
      return this.flags & Mt.Parameter;
    }
    get member\u03A6() {
      return this.flags & Mt.ClassMember;
    }
    get scoped\u03A6() {
      return this.flags & Mt.Scoped;
    }
    get type\u03A6() {
      return this.flags & Mt.Type;
    }
    get global\u03A6() {
      return this.flags & Mt.IsGlobal;
    }
    get imported\u03A6() {
      return this.flags & Mt.IsImport;
    }
    get component\u03A6() {
      return this.flags & Mt.Component;
    }
    get escapedName() {
      return this.name;
    }
    get scope() {
      var e, r;
      return (r = (e = this.node) == null ? void 0 : e.context) == null ? void 0 : r.scope;
    }
    addReference(e) {
      return this.references || (this.references = []), this.references.push(e), e.symbol = this, this;
    }
    dereference(e) {
      let r = this.references.indexOf(e);
      return r >= 0 && (e.symbol = null, this.references.splice(r, 1)), this;
    }
    get kind() {
      return this.variable\u03A6 ? pr.Variable : this.flags & Mt.Class ? pr.Class : this.flags & Mt.Component ? pr.Class : this.flags & Mt.Property ? pr.Field : this.flags & Mt.Method ? this.escapedName == "constructor" ? pr.Constructor : pr.Method : this.flags & Mt.Function ? pr.Function : pr.Method;
    }
    get semanticKind() {
      return this.flags & Mt.Parameter ? "parameter" : this.variable\u03A6 ? "variable" : this.type\u03A6 ? "type" : this.flags & Mt.Function ? "function" : this.member\u03A6 ? "member" : this.component\u03A6 ? "component" : "variable";
    }
    get semanticFlags() {
      let e = 0;
      return this.flags & Mt.ConstVariable && (e |= Be.ReadOnly), this.static\u03A6 && (e |= Be.Static), this.flags & Mt.IsImport && (e |= Be.Import), this.flags & Mt.IsGlobal && (e |= Be.Global), this.flags & Mt.IsRoot && (e |= Be.Root), this.flags & Mt.IsSpecial && (e |= Be.Special), e;
    }
  };
  function Af(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var As = Symbol.for("#__init__");
  var ho = Symbol.for("#__initor__");
  var po = Symbol.for("#__inited__");
  var ch = Symbol();
  var uh = Symbol();
  var hh = Symbol();
  var ph = {global: {datatype: "globalThis"}, imba: {datatype: "globalThis.imba"}, module: {}, window: {datatype: "globalThis.window"}, document: {datatype: "globalThis.document"}, exports: {}, console: {datatype: "globalThis.console"}, process: {datatype: "globalThis.process"}, parseInt: {datatype: "globalThis.parseInt"}, parseFloat: {datatype: "globalThis.parseFloat"}, setTimeout: {datatype: "globalThis.setTimeout"}, setInterval: {datatype: "globalThis.setInterval"}, setImmediate: {datatype: "globalThis.setImmediate"}, clearTimeout: {datatype: "globalThis.clearTimeout"}, clearInterval: {datatype: "globalThis.clearInterval"}, clearImmediate: {datatype: "globalThis.clearImmediate"}, globalThis: {datatype: "globalThis"}, isNaN: {datatype: "globalThis.isNaN"}, isFinite: {datatype: "globalThis.isFinite"}, __dirname: {datatype: "\\string"}, __filename: {datatype: "\\string"}, __realname: {datatype: "\\string"}};
  var ca = class {
    [As](e = null) {
      var r;
      this.type = e && (r = e.type) !== void 0 ? r : "", this.start = e ? e.start : void 0, this.end = e ? e.end : void 0, this.parent = e ? e.parent : void 0;
    }
    static build(e, r, i, s, n) {
      return new this(e, r, i, s, n);
    }
    constructor(e, r, i, s) {
      this[As](), this.doc = e, this.start = r, this.end = null, this.type = s, this.parent = i, this.$name = null, r.scope = this;
    }
    pop(e) {
      return this.end = e, e.start = this.start, e.pops = this, this.start.end = e, this.visit(), this.parent;
    }
    find(e) {
      return this.findChildren(e, true)[0];
    }
    get childNodes() {
      return this.doc.getNodesInScope(this);
    }
    findChildren(e, r = false) {
      let i = [], s = this.start;
      for (; s; ) {
        if (r && i.length)
          return i;
        if (s.scope && s.scope != this) {
          s.scope.match(e) && i.push(s.scope), s = s.scope.next;
          continue;
        }
        if (s.match(e) && i.push(s), s == this.end)
          break;
        s = s.next;
      }
      return i;
    }
    closest(e) {
      return this.match(e) ? this : this.parent ? this.parent.closest(e) : null;
    }
    visit() {
      return this;
    }
    get member\u03A6() {
      return false;
    }
    get top\u03A6() {
      return false;
    }
    get selfScope() {
      return this.member\u03A6 || this.top\u03A6 ? this : this.parent.selfScope;
    }
    get name() {
      return this.$name || "";
    }
    get value() {
      return this.doc.content.slice(this.start.offset, this.next ? this.next.offset : -1);
    }
    get next() {
      return this.end ? this.end.next : null;
    }
    get prev() {
      return this.start ? this.start.prev : null;
    }
    match(e) {
      return typeof e == "string" ? this.type == e : e instanceof RegExp ? e.test(this.type) : e instanceof Function ? e(this) : true;
    }
  };
  var Le = class extends ca {
    static [As]() {
      return this.prototype[ho] = ch, this;
    }
    constructor(e, r, i, s, n = []) {
      super(e, r, i, s);
      this[ho] === ch && this[po] && this[po]();
    }
    get scope() {
      return this.parent.scope;
    }
    get varmap() {
      return this.parent.varmap;
    }
    register(e) {
      return this.parent.register(e);
    }
    lookup(...e) {
      return this.parent.lookup(...e);
    }
  };
  Le[As]();
  var fh = class extends Le {
  };
  var _h = class extends Le {
  };
  var dh = class extends Le {
    get properties() {
      return this.findChildren("styleprop");
    }
  };
  var mh = class extends Le {
  };
  var Ui = class extends ca {
    static [As]() {
      return this.prototype[ho] = uh, this;
    }
    constructor(e, r, i, s, n = []) {
      super(e, r, i, s);
      if (this.children = [], this.entities = [], this.refs = [], this.varmap = Object.create(i ? i.varmap : {}), this instanceof fo)
        for (let o = 0, a = Object.keys(ph), l = a.length, p, c; o < l; o++) {
          p = a[o], c = ph[p];
          let _ = {value: p, offset: -1, mods: 0};
          this.varmap[p] = new rs(Mt.GlobalVar, p, _, c);
        }
      return this.indent = n[3] && n[3][0] == "	" ? n[3].length : 0, this.setup(), this;
      this[ho] === uh && this[po] && this[po]();
    }
    setup() {
      if (this.handler\u03A6 && (this.varmap.e = new rs(Mt.SpecialVar, "e", null, "eventReference")), (this.class\u03A6 || this.property\u03A6) && (this.ident = this.token = k1(this.start, "entity."), this.ident && (this.ident.body = this), this.ident && this.ident.type == "entity.name.def.render" && (this.$name = "render", this.ident.symbol)))
        return this.ident.symbol.name = "render";
    }
    get selfPath() {
      let e = this.path;
      return this.property\u03A6 ? e.slice(0, e.lastIndexOf(".")) : e;
    }
    get path() {
      let e = this.parent ? this.parent.path : "";
      if (this.property\u03A6) {
        let r = this.static\u03A6 ? "." : ".prototype.";
        return this.parent ? "" + this.parent.path + r + this.name : this.name;
      }
      return this.component\u03A6 ? this.name[0] == this.name[0].toLowerCase() ? this.name.replace(/\-/g, "_") + "$$TAG$$" : this.name : this.class\u03A6 ? this.name : e;
    }
    get allowedKeywordTypes() {
      return this.class\u03A6 ? zt.Class : this.root\u03A6 ? zt.Root | zt.Block : zt.Block;
    }
    get component\u03A6() {
      return !!this.type.match(/^component/);
    }
    get root\u03A6() {
      return this instanceof fo;
    }
    get top\u03A6() {
      return this instanceof fo;
    }
    get class\u03A6() {
      return !!this.type.match(/^class/) || this.component\u03A6;
    }
    get def\u03A6() {
      return !!this.type.match(/def|get|set/);
    }
    get static\u03A6() {
      return !!(this.ident && this.ident.mods & Be.Static);
    }
    get handler\u03A6() {
      return !!this.type.match(/handler|spy/);
    }
    get member\u03A6() {
      return !!this.type.match(/def|get|set/);
    }
    get property\u03A6() {
      return !!this.type.match(/def|get|set|field/);
    }
    get flow\u03A6() {
      return !!this.type.match(/if|else|elif|unless|for|while|until/);
    }
    get closure\u03A6() {
      return !!this.type.match(/class|component|def|get|set|do/);
    }
    get scope() {
      return this;
    }
    get name() {
      return this.$name || (this.ident ? this.ident.value : "");
    }
    visit() {
      return this;
    }
    register(e) {
      return e.scoped\u03A6 && (this.varmap[e.name] = e, this.root\u03A6 && (e.flags |= Mt.IsRoot)), e;
    }
    lookup(e, r = Mt.Scoped) {
      let i, s = e.value;
      return s[s.length - 1] == "!" && (s = s.slice(0, -1)), (i = this.varmap[s]) ? i : null;
    }
    toOutline() {
      return {kind: this.type, name: this.name, children: [], span: this.ident ? this.ident.span : this.start.span};
    }
  };
  Ui[As]();
  var fo = class extends Ui {
  };
  var yh = class extends Ui {
    get expression() {
      return this.find("keyword.in keyword.of").next.next;
    }
    get forvars() {
      return Object.values(this.varmap).filter(function(e) {
        return e.itervar\u03A6;
      });
    }
  };
  var gh = class extends Ui {
    register(e) {
      return this.parent.register(e);
    }
    lookup(...e) {
      return this.parent.lookup(...e);
    }
  };
  var vh = class extends Ui {
    get selfScope() {
      return this;
    }
  };
  var bh = class extends Le {
  };
  var kh = class extends Le {
    get propertyName() {
      var e;
      return this.start.next.match("style.property.name") ? this.start.next.value : (e = this.parent.prevProperty) == null ? void 0 : e.propertyName;
    }
    get modifier() {
      if (this.start.next.match("style.property.modifier"))
        return this.start.next.value;
    }
    get styleValue() {
      return true;
    }
  };
  var xh = class extends Le {
    get key() {
      return this.parent.key;
    }
    get propertyName() {
      return this.parent.propertyName;
    }
    get modifier() {
      return this.parent.modifier;
    }
  };
  var wh = class extends Le {
    get key() {
      return this.find("stylepropkey");
    }
    get prevProperty() {
      return this.start.prev.pops ? this.start.prev.pops : null;
    }
    get propertyName() {
      var e;
      return (e = this.key) == null ? void 0 : e.propertyName;
    }
    get modifier() {
      var e;
      return (e = this.key) == null ? void 0 : e.modifier;
    }
  };
  var Sh = class extends Le {
  };
  var Th = class extends Le {
    get innerText() {
      return this.value.slice(1, -1);
    }
  };
  var Eh = class extends Le {
    get name() {
      let e = this.findChildren("tag.name").join("");
      return e == "self" ? this.closest("component").name : e;
    }
    get local\u03A6() {
      return this.name[0] == this.name[0].toUpperCase();
    }
    get tagName() {
      return this.name;
    }
    get parentTag() {
      var e;
      return (e = this.closest("tagcontent")) == null ? void 0 : e.ownerTag;
    }
    get ancestorTags() {
      var e;
      return (e = this.closest("tagcontent")) == null ? void 0 : e.ownerTags;
    }
    get ancestorPath() {
      return this.ancestorTags.map(function(e) {
        return e.tagName;
      }).join(".");
    }
    get pathName() {
      return "<" + this.name + ">";
    }
    get outline() {
      return this.findChildren(/tag\.(reference|name|id|white|flag|event(?!\-))/).join("");
    }
  };
  var Ah = class extends Le {
    get propertyName() {
      return this.start.next.match("tag.attr") ? this.start.next.value : "";
    }
    get tagName() {
      return this.parent.name;
    }
  };
  var Ih = class extends Le {
    get propertyName() {
      return this.parent.propertyName;
    }
    get tagName() {
      return this.parent.tagName;
    }
  };
  var Rh = class extends gh {
    get ownerTag() {
      return this.start.prev.pops;
    }
    get ownerTags() {
      let e = [this.ownerTag], r;
      for (; r = e[0].parentTag; )
        e.unshift(r);
      return e;
    }
  };
  var Nh = class extends Le {
    get name() {
      return this.findChildren("tag.event.name").join("").replace("@", "");
    }
  };
  var ml = class extends Le {
  };
  var ua = class extends Le {
    static build(e, r, i, s, n) {
      let o = this, a = e.content[r.offset - 1];
      return !a || ` [{(|=&-;
	:/*%+-`.indexOf(a) >= 0 ? (s = "array", o = Oh) : (s = "index", o = Ch), new o(e, r, i, s, n);
    }
  };
  var I1 = class extends Le {
  };
  var Lh = class extends I1 {
  };
  var Oh = class extends ua {
    get delimiters() {
      return this.childNodes.filter(function(e) {
        return e.match("delimiter");
      });
    }
    indexOfNode(e) {
      var r;
      let i = this.delimiters, s = 0;
      r = 0;
      for (let n of Af(i)) {
        let o = r++;
        e.offset > n.offset && s++;
      }
      return s;
    }
  };
  var Ch = class extends ua {
  };
  var yl = class extends Le {
    static [As]() {
      return this.prototype[ho] = hh, this;
    }
    constructor() {
      super(...arguments);
      this.prev.datatype = this, this[ho] === hh && this[po] && this[po]();
    }
    toString() {
      return this.value;
    }
  };
  yl[As]();
  var Dh = class extends Le {
  };
  var Fh = class extends I1 {
  };
  var Ph = class extends Le {
    get isTypeOnly() {
      return this.start.prev.match("keyword.type");
    }
    get sourcePath() {
      let e = this.childNodes.find(function(r) {
        return r.match("path");
      });
      return e == null ? void 0 : e.innerText;
    }
    get specifiers() {
      return this.childNodes.find(function(e) {
        return e.match("specifiers");
      });
    }
    get default() {
      return this.childNodes.find(function(e) {
        return e.match(".default");
      });
    }
    get namespace() {
      return this.childNodes.find(function(e) {
        return e.match(".ns");
      });
    }
  };
  var is = {style: dh, array: ua, stylerule: mh, sel: bh, path: Th, value: fh, tag: Eh, forscope: yh, field: vh, type: yl, parens: ml, brackets: ua, object: Fh, braces: I1, specifiers: Lh, string: _h, tagattr: Ah, imports: Ph, interpolation: Dh, tagattrvalue: Ih, tagcontent: Rh, listener: Nh, styleinterpolation: Sh, styleprop: wh, stylepropkey: kh, stylevalue: xh, args: ml};
  function If(t, e) {
    let r = Object.getOwnPropertyDescriptors(e);
    return delete r.constructor, Object.defineProperties(t, r), t;
  }
  function yr(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var n4 = Symbol.for("#__initor__");
  var o4 = Symbol.for("#__inited__");
  var gl = Symbol.for("#ins");
  var vl = Symbol.for("#del");
  var Mh = Symbol.for("#version");
  var Vh = Symbol.for("#multiline");
  var jh = Symbol.for("#significant");
  var bl = Symbol.for("#body");
  var gn = Symbol.for("#lexed");
  var Gh = class {
    get node() {
      return this.scope && this.scope.start == this ? this.scope : this.pops ? this.pops : this;
    }
    get nextNode() {
      var e;
      return (e = this.next) == null ? void 0 : e.node;
    }
    get prevNode() {
      var e;
      return (e = this.prev) == null ? void 0 : e.node;
    }
  };
  If(Ti.prototype, Gh.prototype);
  var vn = class {
    static tmp(e) {
      return new this("file://temporary.imba", "imba", 0, e);
    }
    static from(e, r, i, s) {
      return new this(e, r, i, s);
    }
    constructor(e, r, i, s) {
      this.uri = e, this.languageId = r, this.version = i, this.content = s, this.connection = null, this.lineTokens = [], this.isLegacy = r == "imba1" || e && e.match(/\.imba1$/), this.head = this.seed = new Ti(0, "eol", "imba"), this.initialState = yn.getInitialState(), this.seed.stack = yn.getInitialState(), this.history = [], this.lexer = yn, this.versionToHistoryMap = {}, this.versionToHistoryMap[i] = -1, s && s.match(/^\#[^\n]+imba1/m) && (this.isLegacy = true);
    }
    log(...e) {
      return console.log(...e);
    }
    get lineCount() {
      return this.lineOffsets.length;
    }
    get lineOffsets() {
      return this._lineOffsets || (this._lineOffsets = rl(this.content, true));
    }
    getText(e = null) {
      if (e) {
        let r = this.offsetAt(e.start), i = this.offsetAt(e.end);
        return this.content.substring(r, i);
      }
      return this.content;
    }
    getLineText(e) {
      let r = this.lineOffsets[e], i = this.lineOffsets[e + 1];
      return this.content.substring(r, i).replace(/[\r\n]/g, "");
    }
    positionAt(e) {
      if (e instanceof _n)
        return e;
      typeof e == "object" && (e = e.offset), e = Math.max(Math.min(e, this.content.length), 0);
      let r = this.lineOffsets, i = 0, s = r.length;
      if (s === 0)
        return new _n(0, e, e, this.version);
      for (; i < s; ) {
        let o = Math.floor((i + s) / 2);
        r[o] > e ? s = o : i = o + 1;
      }
      let n = i - 1;
      return new _n(n, e - r[n], e, this.version);
    }
    offsetAt(e) {
      if (e.offset)
        return e.offset;
      let r = this.lineOffsets;
      if (e.line >= r.length)
        return this.content.length;
      if (e.line < 0)
        return 0;
      let i = r[e.line], s = e.line + 1 < r.length ? r[e.line + 1] : this.content.length;
      return e.offset = Math.max(Math.min(i + e.character, s), i);
    }
    rangeAt(e, r = e) {
      return new ts(this.positionAt(e), this.positionAt(r));
    }
    overwrite(e, r) {
      return this.version = r || this.version + 1, this.content = e, this._lineOffsets = null, this.invalidateFromLine(0), this;
    }
    update(e, r) {
      r == null && (r = this.version + 1);
      let i = [], s = false;
      i[gl] = "", i[vl] = "";
      for (let a = 0, l = yr(e), p = l.length; a < p; a++) {
        let c = l[a];
        if (Hu(c)) {
          this.overwrite(c.text, r), i.push([0, this.content.length, c.text]), s = true;
          continue;
        }
        let _ = Bu(c.range), f = this.offsetAt(_.start), m = this.offsetAt(_.end);
        c.range = _, c.offset = f, c.length = m - f, _.start.offset = f, _.end.offset = m;
        let b = m - f ? this.content.slice(f, m) : "";
        i[vl] += b, i[gl] += c.text || "", this.applyEdit(c, r, e), i.push([f, m - f, c.text || "", b]);
        let N = Math.max(_.start.line, 0), y = Math.max(_.end.line, 0), v = this.lineOffsets, d = rl(c.text, false, f);
        if (y - N === d.length)
          for (let k = 0, T = yr(d), S = T.length; k < S; k++) {
            let C = T[k];
            v[k + N + 1] = d[a];
          }
        else
          d.length < 1e4 ? v.splice.apply(v, [N + 1, y - N].concat(d)) : this._lineOffsets = v = v.slice(0, N + 1).concat(d, v.slice(y + 1));
        let w = c.text.length - (m - f);
        if (w !== 0) {
          let k = N + 1 + d.length;
          for (; k < v.length; )
            v[k] = v[k] + w, k++;
        }
      }
      this.history.push(i), i[Mh] = r;
      let n = this.history[this.history.length - 2];
      return (i[gl] + i[vl]).indexOf(`
`) >= 0 && (i[Vh] = true, n && !n[Vh] && (i[jh] = true, i[bl] = this.content)), this.versionToHistoryMap[r] = this.history.length - 1, this.updated(e, r);
    }
    get lastSignificantVersion() {
      let e = this.history.length;
      for (; e > 0; ) {
        let r = this.history[--e];
        if (r && r[jh])
          return r[Mh];
      }
      return null;
    }
    editsSinceVersion(e) {
      let r = this.versionToHistoryMap[e], i = [];
      for (let s = 0, n = yr(this.history.slice(r + 1)), o = n.length; s < o; s++) {
        let a = n[s];
        i.push(...a);
      }
      return i;
    }
    contentAtVersion(e) {
      let r = this.versionToHistoryMap[e], i = this.history[r];
      return i[bl] != null ? i[bl] : null;
    }
    offsetAtVersion(e, r, i = this.version, s = false) {
      let n = this.versionToHistoryMap[r], o = this.versionToHistoryMap[i], a = e, l = false;
      if (n < o)
        for (; n < o; ) {
          let p = this.history[++n];
          for (let c = 0, _ = yr(p), f = _.length; c < f; c++) {
            let [m, g, b] = _[c];
            m > a || (s && (m -= 1), a > m && a > m + g && (a += b.length - g));
          }
        }
      else if (o < n)
        for (; o < n; ) {
          let p = this.history[n--];
          for (let c = 0, _ = yr(p), f = _.length; c < f; c++) {
            let [m, g, b] = _[c];
            m > a || a > m && a > m + g && (a -= b.length - g);
          }
        }
      return a;
    }
    historicalOffset(e, r) {
      return this.offsetAtVersion(e, this.version, r, true);
    }
    applyEdit(e, r, i) {
      this.content = this.content.substring(0, e.range.start.offset) + e.text + this.content.substring(e.range.end.offset, this.content.length);
      let s = e.range.start.line;
      this.invalidateFromLine(s);
    }
    updated(e, r) {
      return this.version = r, this;
    }
    invalidateFromLine(e) {
      return this.head = this.seed, this;
    }
    after(e, r) {
      let i = this.tokens.indexOf(e);
      if (r) {
        for (; i < this.tokens.length; ) {
          let s = this.tokens[++i];
          if (s && this.matchToken(s, r))
            return s;
        }
        return null;
      }
      return this.tokens[i + 1];
    }
    matchToken(e, r) {
      return r instanceof RegExp ? e.type.match(r) : typeof r == "string" ? e.type == r : false;
    }
    before(e, r, i = 0) {
      let s = this.tokens.indexOf(e) + i;
      if (r) {
        for (; s > 0; ) {
          let n = this.tokens[--s];
          if (this.matchToken(n, r))
            return n;
        }
        return null;
      }
      return this.tokens[s - 1];
    }
    getTokenRange(e) {
      return {start: this.positionAt(e.offset), end: this.positionAt(e.offset + e.value.length)};
    }
    getTokensInScope(e) {
      let r = this.tokens.indexOf(e.start), i = e.end ? this.tokens.indexOf(e.end) : this.tokens.length, s = r, n = [];
      for (; s < i; ) {
        let o = this.tokens[s++];
        o.scope && o.scope != e ? (n.push(o.scope), s = o.scope.endIndex + 1) : n.push(o);
      }
      return n;
    }
    getSymbols() {
      var e;
      return this.astify(), (e = this[gn]).symbols || (e.symbols = this.tokens.map(function(r) {
        return r.symbol;
      }).filter(function(r) {
        return r;
      }).filter(function(r, i, s) {
        return s.indexOf(r) == i;
      }));
    }
    getImportedSymbols() {
      return this.getSymbols().filter(function(e) {
        return e.imported\u03A6;
      });
    }
    getImportNodes() {
      return this.tokens.filter(function(r) {
        return r.match("push._imports");
      }).map(function(r) {
        return r.scope;
      });
    }
    getNodesInScope(e, r = false) {
      let i = e.start, s = e.end;
      r ? s = s.next : i = i.next;
      let n = [];
      for (; i && i != s; ) {
        if (i.scope && i.scope != e) {
          n.push(i.scope), i = i.scope.end.next;
          continue;
        } else
          i.type != "white" && n.push(i);
        i = i.next;
      }
      return n;
    }
    getTokenAtOffset(e, r = false) {
      return this.tokenAtOffset(e);
    }
    getSemanticTokens(e = Mt.Scoped) {
      let r = this.parse(), i = [];
      for (let s = 0, n = yr(r), o = n.length; s < o; s++) {
        let a = n[s], l = a.symbol;
        if (!(l && (!e || l.flags & e)))
          continue;
        let p = uo[l.semanticKind], c = a.mods | l.semanticFlags;
        i.push([a.offset, a.value.length, p, c]);
      }
      return i;
    }
    getEncodedSemanticTokens() {
      let e = this.getSemanticTokens(), r = [], i = 0, s = 0;
      for (let n = 0, o = yr(e), a = o.length; n < a; n++) {
        let l = o[n], p = this.positionAt(l[0]), c = p.line - i, _ = c ? p.character : p.character - s;
        r.push(c, _, l[1], l[2], l[3]), i = p.line, s = p.character;
      }
      return r;
    }
    getDestructuredPath(e, r = [], i = null) {
      if (e.context.type == "array")
        return this.getDestructuredPath(e.context.start, r, i), r.push(e.context.indexOfNode(e)), r;
      let s = e.value;
      return e.prev.match("operator.assign.key-value") && (s = e.prev.prev.value), e.context.type == "object" && (this.getDestructuredPath(e.context.start, r, i), r.push(s)), r;
    }
    tokenAtOffset(e) {
      let r = this.tokens[0];
      for (; r; ) {
        let i = r.next;
        if (r.offset >= e)
          return r.prev;
        if (r.end && r.end.offset < e)
          r = r.end;
        else if (i)
          r = i;
        else
          return r;
      }
      return r;
    }
    patternAtOffset(e, r = /[\w\-\.\%]/) {
      let i = e, s = e, n = this.content;
      for (; i > 0 && r.test(this.content[i - 1]); )
        i--;
      for (; r.test(this.content[s + 1] || ""); )
        s++;
      return [n.slice(i, s + 1), i, s];
    }
    adjustmentAtOffset(e, r = 1) {
      let [i, s, n] = this.patternAtOffset(e), [o, a = ""] = i.split(/[\d\.]+/), l = parseFloat(i.slice(o.length).slice(0, a.length ? -a.length : 1e3));
      return Number.isNaN(l) ? null : (l += r, [s + o.length, i.length - o.length - a.length, String(l)]);
    }
    contextAtOffset(e) {
      var r;
      this.ensureParsed();
      let i = this.positionAt(e), s = this.tokenAtOffset(e), n = this.lineOffsets[i.line], o = e - s.offset, a = s.context, l = {character: this.content[e - 1], line: this.content.slice(n, e), token: s.value.slice(0, o)}, p = {character: this.content[e], token: s.value.slice(o), line: this.content.slice(e, this.lineOffsets[i.line + 1]).replace(/[\r\n]+/, "")};
      s.scope && !p.token && (a = s.scope), s.next && s.next.value == null && s.next.scope && !p.token && s.match("operator.assign") && (a = s.next.scope);
      let c = k1(s, "white.tabs"), _ = c ? c.value.length : 0, f = a, m = a.scope, g = {}, b = s, N = s.stack.state || "", y = Fr;
      f && (f.start && (l.group = this.content.slice(f.start.offset, e)), f.end && (p.group = this.content.slice(e, f.end.offset)));
      let v = {keywords: []}, d = 0;
      if (s == c && (_ = o), s.match("br white.tabs"))
        for (; m.indent > _; )
          m = m.parent;
      if (f.type == "tag", s.match("entity string regexp comment style.") && (d = 0), s.match("tag.event.name tag.event-modifier.name") && (b = s.prev), (s.type == "path" || s.type == "path.open") && (d |= Fr.Path, v.paths = 1), s.match("identifier tag.operator.equals br white delimiter array operator ( self") && (d |= Fr.Value, b = null), s.match("operator.access") && (d |= Fr.Access, b = s), s.match("accessor") && (d |= Fr.Access, b = s.prev), s.match("delimiter.type.prefix type") && (d |= Fr.Type), s.match("tag.name tag.open") ? d |= Fr.TagName : s.match("tag.attr tag.white") ? d |= Fr.TagProp : s.match("tag.flag") ? d |= Fr.TagFlag : s.match("tag.event.modifier") ? d |= Fr.TagEventModifier : s.match("tag.event") ? d |= Fr.TagEvent : s.match("operator.equals.tagop") && (d |= Fr.Value), s.match("style.property.operator") || f.closest("stylevalue")) {
        d |= y.StyleValue;
        try {
          v.styleProperty = f.closest("styleprop").propertyName;
        } catch (T) {
        }
      }
      s.match("style.open style.property.name") && (d |= y.StyleProp), (s.match("style.value.white") || s.prev && s.prev.match("style.value.white")) && (d |= y.StyleProp), s.match("style.selector.element") && p.line.match(/^\s*$/) && (d |= y.StyleProp), m.closest("rule") && (d |= y.StyleProp, d &= ~y.Value), s.match("style.property.operator") && (d &= ~y.StyleProp), f.match("stylevalue") && l.group.indexOf(" ") == -1 && (d = y.StyleValue), s.match("style.selector.modifier style.property.modifier") && (d = y.StyleModifier), s.match("style.selector.element") && (d |= y.StyleSelector), m.closest("rule") && l.line.match(/^\s*$/) && (d |= y.StyleSelector, d &= ~y.StyleValue), s.match("operator.access accessor white.classname white.tagname") && (d &= ~y.Value), f.closest("imports") && (d &= ~y.Value, d |= y.ImportName), (N.match(/\.decl-(let|var|const|param|for)/) || s.match(/\.decl-(for|let|var|const|param)/)) && (d &= ~y.Value, d |= y.VarName);
      let w = m.allowedKeywordTypes;
      r = [];
      for (let T = 0, S = Object.keys(la), C = S.length, L, D; T < C; T++)
        L = S[T], D = la[L], !!(D & w) && r.push(L);
      v.keywords = r, v.flags = d;
      for (let T = 0, S = Object.keys(y), C = S.length, L, D; T < C; T++)
        L = S[T], D = y[L], d & D && (v[L] || (v[L] = true));
      return {token: s, offset: e, position: i, linePos: n, scope: m, indent: _, group: a, mode: "", target: b, path: m.path, suggest: v, before: l, after: p};
    }
    textBefore(e) {
      let r = this.content.slice(0, e), i = r.lastIndexOf(`
`);
      return r.slice(i + 1);
    }
    varsAtOffset(e, r = false) {
      let i = this.tokenAtOffset(e), s = [], n = i.context.scope, o = {};
      for (; n; ) {
        for (let a = 0, l = yr(Object.values(n.varmap)), p = l.length; a < p; a++) {
          let c = l[a];
          c.global\u03A6 && !r || o[c.name] || (!c.node || c.node.offset < e) && (s.push(c), o[c.name] = c);
        }
        n = n.parent;
      }
      return s;
    }
    getOutline(e = null) {
      var r, i, s, n;
      if (this.isLegacy) {
        let y = zu(this.content);
        for (let v = 0, d = yr(y.all), w = d.length; v < w; v++) {
          let k = d[v];
          r = k.parent, delete k.parent, k.path = k.name, k.name = k.ownName, e && e(k, y.all);
        }
        return y;
      }
      this.ensureParsed();
      let o = Date.now(), a = [], l = {children: []}, p = l, c = null, _ = {}, f = new Set(), m = null;
      function g(y, v) {
        return y instanceof rs && (f.add(y), y = {name: y.name, kind: y.kind}), _ = y, y.token = v, y.children || (y.children = []), y.span || (y.span = v.span), y.name || (y.name = v.value), a.push(y), p.children.push(y);
      }
      function b(y) {
        return _.children || (_.children = []), _.parent || (_.parent = p), p = _, p.end = y;
      }
      function N(y) {
        return p = p.parent;
      }
      for (let y = 0, v = yr(this.tokens), d = v.length; y < d; y++) {
        let w = v[y], k = w.symbol, T = w.scope;
        if (w.type == "key")
          g({kind: pr.Key}, w);
        else if (k) {
          if (k.parameter\u03A6)
            continue;
          f.has(k) || g(k, w), k.body && (m = k.body.start);
        } else if (T && T.type == "do") {
          let S = this.textBefore(w.offset - 3).replace(/^\s*(return\s*)?/, "");
          S += " callback", g({kind: pr.Function, name: S}, w.prev), m = w;
        } else
          T && T.type == "tag" && g({kind: pr.Field, name: T.outline}, w);
        w == m && b(w.end), w == p.end && N();
      }
      for (let y = 0, v = yr(a), d = v.length; y < d; y++) {
        let w = v[y];
        if (w.span) {
          let k = w.span.length;
          w.span.start = this.positionAt(w.span.offset), w.span.end = k ? this.positionAt(w.span.offset + k) : w.span.start;
        }
        e && e(w, a), i = w.parent, delete w.parent, s = w.end, delete w.end, n = w.token, delete w.token;
      }
      return l;
    }
    getContextAtOffset(e, r = false) {
      return this.contextAtOffset(e);
    }
    ensureParsed() {
      return this.parse(), this;
    }
    reparse() {
      return this.invalidateFromLine(0), this.parse();
    }
    profileReparse() {
      let e = Date.now(), r = this.reparse();
      return console.log("took", Date.now() - e), r;
    }
    tokenize(e = false) {
      var r;
      let i = this[gn] || {lines: [], version: -1};
      if (i.version == this.version && !e)
        return i;
      let s = this.content;
      this.isLegacy && (s = s.replace(/\@\w/g, function(f) {
        return "\xB6" + f.slice(1);
      }), s = s.replace(/\w\:(?=\w)/g, function(f) {
        return f[0] + ".";
      }), s = s.replace(/(do)(\s?)\|([^\|]*)\|/g, function(f, m, g, b) {
        return m + "(" + (g || "") + b + ")";
      }));
      let n = this.lineOffsets, o = [], l = this.seed, p = Date.now(), c = this.initialState;
      this[gn] = {version: this.version, lines: [], tokens: o};
      let _ = {};
      this[gn].cache = _;
      for (let f = 0, m = yr(i.lines), g = m.length; f < g; f++) {
        let b = m[f];
        (_[r = b.text] || (_[r] = [])).push(b);
      }
      for (let f = 0, m = yr(n), g = m.length; f < g; f++) {
        let b = m[f], y = n[f + 1] || s.length, v = s.slice(b, y), d = c, w = _[v], k = w && w.filter(function(C) {
          return C.startState == d;
        }), T = k && (k.find(function(C) {
          return C.offset == b;
        }) || k[0]), S = null;
        if (T && (T.offset == b, S = T.clone(b)), !S) {
          let C = yn.tokenize(v, d, b);
          S = new aa({offset: b, text: v, startState: d, endState: C.endState, tokens: C.tokens});
        }
        for (let C = 0, L = yr(S.tokens), D = L.length; C < D; C++) {
          let I = L[C];
          o.push(I);
        }
        this[gn].lines.push(S), c = S.endState;
      }
      return this[gn];
    }
    get tokens() {
      return this.astify(), this[gn].tokens;
    }
    getTokens(e = null) {
      return this.tokens;
    }
    astify() {
      let e = this.tokenize();
      if (e.root)
        return this;
      let r = {"]": "[", ")": "(", "}": "{", ">": "<"}, i = {"[": "]", "(": ")", "{": "}", "<": ">"}, s = /[\w\$\)\]\?]/, n = Date.now(), o = null, a = e.root = new fo(this, this.seed, null, "root"), l = this.content, p = console.log.bind(console), c = null, _ = null, f = null, m = null, g = 0;
      for (let b = 0, N = yr(e.tokens), y = N.length; b < y; b++) {
        let v = N[b], d = v.type.split("."), w = v.value, k = e.tokens[b + 1], [T, S, C] = d, L = d[d.length - 1], D = d[d.length - 2], I = null, U = 0;
        if (T == "ivar" && (w = v.value = "@" + w.slice(1)), m && (m.next = v), v.prev = m, v.context = a, T == "(" && m) {
          let B = l[v.offset - 1] || "";
          s.test(B) && (a = v.scope = is.args.build(this, v, a, "args", d));
        }
        if (T == "operator" && (v.op = v.value.trim()), T == "keyword" && (Be[S] && (g |= Be[S]), (w == "let" || w == "const") && (_ = v, f = null)), T == "entity" && (v.mods |= g, g = 0), T == "push") {
          let B = S, q = S.lastIndexOf("_"), K = q >= 0 ? Le : Ui;
          q >= 0 ? (B = B.slice(q + 1), K = is[B] || Le) : is[B] && (K = is[B]), a = v.scope = new K(this, v, a, B, d), c && (c.body = a, a.symbol = c, c = null), a == a.scope && (_ = null, f = null);
        } else
          T == "pop" ? (S == "value" && (f = null), a = a.pop(v)) : (S == "open" || i[S]) && is[T] ? a = v.scope = is[T].build(this, v, a, T, d) : L == "open" && (I = is[D]) ? a = v.scope = I.build(this, v, a, D, d) : (L == "close" && a.type == D || S == "close" && is[T] || r[T] && a && a.start.value == r[T]) && (a = a.pop(v));
        if (v.match(/entity\.name|decl-/)) {
          let B = rs.forToken(v, v.type, v.mods);
          B && (c = v.symbol = B, v.symbol.keyword = _, a.register(v.symbol)), v.mods |= Be.Declaration;
        }
        if (S == "declval" && (f = v), v.match("identifier") && !v.symbol) {
          let B = a.lookup(v, _);
          if (B && B.scoped\u03A6 && (f && B.keyword == _ || B.addReference(v)), m && m.op == "=" && B) {
            let q = m.prev;
            q && q.symbol == B && (q.mods & Be.Declaration ? B.dereference(v) : (!k || k.match("br")) && B.dereference(q));
          }
        }
        m = v;
      }
      return this;
    }
    parse() {
      return this.tokens;
    }
    getMatchingTokens(e) {
      let r = this.getTokens();
      return r = r.slice(0).filter(function(i) {
        return i.match(e);
      }), r;
    }
    migrateToImba2() {
      let e = this.content;
      e = e.replace(/\bdef self\./g, "static def "), e = e.replace(/\b(var|let|const) def /g, "def "), e = e.replace(/\?\./g, ".."), e = e.replace(/def ([\w\-]+)\=/g, "set $1"), e = e.replace(/do\s?\|([^\|]+)\|/g, "do($1)"), e = e.replace(/(prop) ([\w\-]+) (.+)$/gm, function(n, o, a, l) {
        var p, c;
        let _ = {};
        l.split(/,\s*/).map(function(m) {
          return m.split(/\:\s*/);
        }).map(function(m) {
          return _[m[0]] = m[1];
        });
        let f = "" + o + " " + a;
        return _.watch && _.watch[0].match(/[\'\"\:]/) ? f = "@watch(" + _.watch + ") " + f : _.watch && (f = "@watch " + f), p = _.watch, delete _.watch, _.default && (f = "" + f + " = " + _.default, c = _.default, delete _.default), Object.keys(_).length && console.log("more prop values", n, _), f;
      });
      let i = vn.tmp(e).getTokens(), s = "";
      for (let n = 0, o = yr(i), a = o.length; n < a; n++) {
        let l = o[n], p = i[n + 1], {value: c, type: _, offset: f} = l, m = f + c.length;
        _ == "operator.dot.legacy" && (c = ".", p && (p.access = true)), _ == "operator.spread.legacy" && (c = "..."), _ == "identifier.tagname" && c.indexOf(":") >= 0 && (c = c.replace(":", "-")), _ == "identifier.def.propname" && c == "initialize" && (c = "constructor"), _ == "decorator" && !e.slice(m).match(/^\s(prop|def|get|set)/) && (c = s + c.slice(1)), _ == "property" && (c[0] == "@" ? (c = c.replace(/^\@/, s), l.access = true) : c == "len" ? c = "length" : /^(\n|\s\:|\)|\,|\.)/.test(e.slice(m)) && !l.access && c[0] == c[0].toLowerCase() && (c = c + "!")), _ == "identifier" && !l.access && c[0] == c[0].toLowerCase() && c[0] != "_" && !l.variable && /^(\n|\s\:|\)|\,|\.)/.test(e.slice(m)) && c != "new" && (c = c + "!"), l.value = c;
      }
      return i.map(function(n) {
        return n.value;
      }).join("");
    }
    createImportEdit(e, r, i = r) {
      e = e.replace(/\.imba$/, "");
      let s = this.getImportNodes().filter(function(p) {
        return p.sourcePath == e;
      }), n = "", o = 0, a = [], l = {changes: a};
      if (this.getImportedSymbols().map(function(_) {
        return _.importInfo;
      }).find(function(_) {
        return _.path == e && _.name == i && _.exportName == r;
      }))
        return l;
      r != "default" && r != "*" && (s = s.filter(function(p) {
        return p.specifiers || !p.ns;
      }));
      for (let p = 0, c = yr(s), _ = c.length; p < _; p++) {
        let f = c[p], m = f.default, g = f.specifiers, b = f.namespace;
        if (r == "default")
          if (o = f.start.offset + 1, m) {
            if (m.value == i)
              return l;
            l.alias = m.value, o = 0;
            continue;
          } else
            n = i, (b || g) && (n += ", ");
        else if (r == "*") {
          if (g)
            continue;
          m ? (o = m.endOffset, n = ", * as " + i) : (o = f.start.offset + 1, n = "* as " + i + " ");
        } else if (b) {
          l.alias = "" + b.value + "." + r;
          continue;
        } else {
          let N = r;
          i != r && (N += " as " + i), g ? (o = g.start.offset + 1, n = " " + N + ",") : m ? (o = m.endOffset, n = ", { " + N + " }") : (n = "{ " + N + " }", o = f.start.offset + 1);
        }
        if (n)
          break;
      }
      return n || (r == "default" ? n = "import " + i + " from '" + e + "'" : r == "*" ? n = "import * as " + i + " from '" + e + "'" : i != r ? n = "import { " + r + " as " + i + " } from '" + e + "'" : n = "import { " + r + " } from '" + e + "'", n += `
`), a.push({newText: n, range: this.rangeAt(o, o)}), l;
    }
  };
  function Er() {
    this.pseudos = {}, this.attrEqualityMods = {}, this.ruleNestingOperators = {}, this.substitutesEnabled = false;
  }
  Er.prototype.registerSelectorPseudos = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], this.pseudos[t] = "selector";
    return this;
  };
  Er.prototype.unregisterSelectorPseudos = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], delete this.pseudos[t];
    return this;
  };
  Er.prototype.registerNumericPseudos = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], this.pseudos[t] = "numeric";
    return this;
  };
  Er.prototype.unregisterNumericPseudos = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], delete this.pseudos[t];
    return this;
  };
  Er.prototype.registerNestingOperators = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], this.ruleNestingOperators[t] = true;
    return this;
  };
  Er.prototype.unregisterNestingOperators = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], delete this.ruleNestingOperators[t];
    return this;
  };
  Er.prototype.registerAttrEqualityMods = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], this.attrEqualityMods[t] = true;
    return this;
  };
  Er.prototype.unregisterAttrEqualityMods = function(t) {
    for (var e = 0, r = arguments.length; e < r; e++)
      t = arguments[e], delete this.attrEqualityMods[t];
    return this;
  };
  Er.prototype.enableSubstitutes = function() {
    return this.substitutesEnabled = true, this;
  };
  Er.prototype.disableSubstitutes = function() {
    return this.substitutesEnabled = false, this;
  };
  function Y0(t) {
    return t >= "a" && t <= "z" || t >= "A" && t <= "Z" || t === "-" || t === "_";
  }
  function K0(t) {
    return t >= "a" && t <= "z" || t >= "A" && t <= "Z" || t >= "0" && t <= "9" || t === "-" || t === "_";
  }
  function G1(t) {
    return t >= "a" && t <= "f" || t >= "A" && t <= "F" || t >= "0" && t <= "9";
  }
  var Ap = {"!": true, '"': true, "#": true, $: true, "%": true, "&": true, "'": true, "(": true, ")": true, "*": true, "+": true, ",": true, ".": true, "/": true, ";": true, "<": true, "=": true, ">": true, "?": true, "@": true, "[": true, "\\": true, "]": true, "^": true, "`": true, "{": true, "|": true, "}": true, "~": true};
  var q0 = {"\n": "\\n", "\r": "\\r", "	": "\\t", "\f": "\\f", "\v": "\\v"};
  var Ip = {n: `
`, r: "\r", t: "	", f: "\f", "\\": "\\", "'": "'"};
  var Rp = {n: `
`, r: "\r", t: "	", f: "\f", "\\": "\\", '"': '"'};
  function X0(t, e, r, i, s, n) {
    var o, a, l, p, c;
    return p = t.length, o = null, l = function(_, f) {
      var m, g, b;
      for (b = "", e++, o = t.charAt(e); e < p; ) {
        if (o === _)
          return e++, b;
        if (o === "\\")
          if (e++, o = t.charAt(e), o === _)
            b += _;
          else if (m = f[o])
            b += m;
          else if (G1(o)) {
            for (g = o, e++, o = t.charAt(e); G1(o); )
              g += o, e++, o = t.charAt(e);
            o === " " && (e++, o = t.charAt(e)), b += String.fromCharCode(parseInt(g, 16));
            continue;
          } else
            b += o;
        else
          b += o;
        e++, o = t.charAt(e);
      }
      return b;
    }, a = function(_) {
      var f = "";
      for (o = t.charAt(e); e < p; ) {
        if (K0(o) || _ && _[o])
          f += o;
        else if (o === "\\") {
          if (e++, e >= p)
            throw Error("Expected symbol but end of file reached.");
          if (o = t.charAt(e), Ap[o])
            f += o;
          else if (G1(o)) {
            var m = o;
            for (e++, o = t.charAt(e); G1(o); )
              m += o, e++, o = t.charAt(e);
            o === " " && (e++, o = t.charAt(e)), f += String.fromCharCode(parseInt(m, 16));
            continue;
          } else
            f += o;
        } else
          return f;
        e++, o = t.charAt(e);
      }
      return f;
    }, c = function() {
      o = t.charAt(e);
      for (var _ = false; o === " " || o === "	" || o === `
` || o === "\r" || o === "\f"; )
        _ = true, e++, o = t.charAt(e);
      return _;
    }, this.parse = function() {
      var _ = this.parseSelector();
      if (e < p)
        throw Error('Rule expected but "' + t.charAt(e) + '" found.');
      return _;
    }, this.parseSelector = function() {
      var _, f = _ = this.parseSingleSelector();
      for (o = t.charAt(e); o === ","; ) {
        if (e++, c(), _.type !== "selectors" && (_ = {type: "selectors", selectors: [f]}), f = this.parseSingleSelector(), !f)
          throw Error('Rule expected after ",".');
        _.selectors.push(f);
      }
      return _;
    }, this.parseSingleSelector = function() {
      c();
      let _ = t.slice(e, e + 4).match(/^(\>{1,3}|\+|~)/);
      var f = {type: "ruleSet"}, m = _ ? {type: "rule", isScope: true} : this.parseRule();
      if (!m)
        return null;
      for (var g = f; m && (m.type = "rule", g.rule = m, g = m, c(), o = t.charAt(e), !(e >= p || o === "," || o === ")")); )
        if (s[o]) {
          var b = o;
          if (b == ">" && t.charAt(e + 1) == ">" && t.charAt(e + 2) == ">" ? (b = ">>>", e = e + 3) : b == ">" && t.charAt(e + 1) == ">" ? (b = ">>", e = e + 2) : e++, c(), m = this.parseRule(), !m)
            if (b == ">" || b == ">>>" || b == ">>")
              m = {tagName: "*"};
            else
              throw Error('Rule expected after "' + b + '".');
          m.nestingOperator = b;
        } else
          m = this.parseRule(), m && (m.nestingOperator = null);
      return f;
    }, this.parseRule = function() {
      for (var _ = null; e < p; )
        if (o = t.charAt(e), o === "&")
          e++, (_ = _ || {}).isScope = true;
        else if (o === "*")
          e++, (_ = _ || {}).tagName = "*";
        else if (Y0(o) || o === "\\")
          (_ = _ || {}).tagName = a();
        else if (o === "$" || o === "%")
          e++, _ = _ || {}, (_.classNames = _.classNames || []).push(o + a());
        else if (o === ".")
          e++, _ = _ || {}, (_.classNames = _.classNames || []).push(a());
        else if (o === "#")
          e++, (_ = _ || {}).id = a();
        else if (o === "[") {
          e++, c();
          var f = {name: a()};
          if (c(), o === "]")
            e++;
          else {
            var m = "";
            if (i[o] && (m = o, e++, o = t.charAt(e)), e >= p)
              throw Error('Expected "=" but end of file reached.');
            if (o !== "=")
              throw Error('Expected "=" but "' + o + '" found.');
            f.operator = m + "=", e++, c();
            var g = "";
            if (f.valueType = "string", o === '"')
              g = l('"', Rp);
            else if (o === "'")
              g = l("'", Ip);
            else if (n && o === "$")
              e++, g = a(), f.valueType = "substitute";
            else {
              for (; e < p && o !== "]"; )
                g += o, e++, o = t.charAt(e);
              g = g.trim();
            }
            if (c(), e >= p)
              throw Error('Expected "]" but end of file reached.');
            if (o !== "]")
              throw Error('Expected "]" but "' + o + '" found.');
            e++, f.value = g;
          }
          _ = _ || {}, (_.attrs = _.attrs || []).push(f);
        } else if (o === ":" || o === "@") {
          let v = o === "@";
          e++;
          for (var b = ""; t.charAt(e) == "."; )
            b += ".", e++;
          b += a({"~": true, "+": true, ".": false, ">": true, "<": true, "!": true});
          var N = {special: v, name: b};
          if (o === "(") {
            e++;
            var y = "";
            if (c(), r[b] === "selector")
              N.valueType = "selector", y = this.parseSelector();
            else {
              if (N.valueType = r[b] || "string", o === '"')
                y = l('"', Rp);
              else if (o === "'")
                y = l("'", Ip);
              else if (n && o === "$")
                e++, y = a(), N.valueType = "substitute";
              else {
                for (; e < p && o !== ")"; )
                  y += o, e++, o = t.charAt(e);
                y = y.trim();
              }
              c();
            }
            if (e >= p)
              throw Error('Expected ")" but end of file reached.');
            if (o !== ")")
              throw Error('Expected ")" but "' + o + '" found.');
            e++, N.value = y;
          }
          _ = _ || {}, (_.pseudos = _.pseudos || []).push(N);
        } else
          break;
      return _;
    }, this;
  }
  Er.prototype.parse = function(t) {
    var e = new X0(t, 0, this.pseudos, this.attrEqualityMods, this.ruleNestingOperators, this.substitutesEnabled);
    return e.parse();
  };
  Er.prototype.escapeIdentifier = function(t) {
    for (var e = "", r = 0, i = t.length; r < i; ) {
      var s = t.charAt(r);
      if (Ap[s])
        e += "\\" + s;
      else if (s === "_" || s === "-" || s >= "A" && s <= "Z" || s >= "a" && s <= "z" || r !== 0 && s >= "0" && s <= "9")
        e += s;
      else {
        var n = s.charCodeAt(0);
        if ((n & 63488) == 55296) {
          var o = t.charCodeAt(r++);
          if ((n & 64512) != 55296 || (o & 64512) != 56320)
            throw Error("UCS-2(decode): illegal sequence");
          n = ((n & 1023) << 10) + (o & 1023) + 65536;
        }
        e += "\\" + n.toString(16) + " ";
      }
      r++;
    }
    return e;
  };
  Er.prototype.escapeStr = function(t) {
    for (var e = "", r = 0, i = t.length, s, n; r < i; )
      s = t.charAt(r), s === '"' ? s = '\\"' : s === "\\" ? s = "\\\\" : (n = q0[s]) && (s = n), e += s, r++;
    return '"' + e + '"';
  };
  Er.prototype.render = function(t) {
    return this._renderEntity(t).trim();
  };
  Er.prototype._renderEntity = function(t) {
    var e, r, i;
    switch (i = "", t.type) {
      case "ruleSet":
        for (e = t.rule, r = []; e; )
          e.nestingOperator && r.push(e.nestingOperator), r.push(this._renderEntity(e)), e = e.rule;
        i = r.join(" ");
        break;
      case "selectors":
        i = t.selectors.map(this._renderEntity, this).join(", ");
        break;
      case "rule":
        let s = t.s1, n = t.s2;
        if (t.tagName && (t.tagName === "*" ? i = "*" : i = this.escapeIdentifier(t.tagName)), t.id && (i += "#" + this.escapeIdentifier(t.id)), t.classNames) {
          let o = null;
          if (i += t.classNames.map(function(a) {
            if (a[0] == "!")
              return ":not(." + this.escapeIdentifier(a.slice(1)) + ")";
            {
              let l = this.escapeIdentifier(a);
              return n && (!o || o.length > l.length) && (o = l), "." + l;
            }
          }, this).join(""), n > 0 && o && o.length < 9)
            for (; --n >= 0; )
              i += "." + o;
        }
        if (t.pri > 0, s > 0)
          for (; --s >= 0; )
            i += ":not(#_)";
        if (n > 0)
          for (; --s >= 0; )
            i += ":not(._0)";
        t.attrs && (i += t.attrs.map(function(o) {
          return o.operator ? o.valueType === "substitute" ? "[" + this.escapeIdentifier(o.name) + o.operator + "$" + o.value + "]" : "[" + this.escapeIdentifier(o.name) + o.operator + this.escapeStr(o.value) + "]" : "[" + this.escapeIdentifier(o.name) + "]";
        }, this).join("")), t.pseudos && (i += t.pseudos.map(function(o) {
          let a = ":" + this.escapeIdentifier(o.name), l = "";
          return o.neg && (a = ":not(" + a, l = ")"), o.valueType ? o.valueType === "selector" ? a + "(" + this._renderEntity(o.value) + ")" + l : o.valueType === "substitute" ? a + "($" + o.value + ")" + l : o.valueType === "numeric" || o.valueType === "raw" || o.valueType === "string" ? a + "(" + o.value + ")" + l : a + "(" + this.escapeIdentifier(o.value) + ")" + l : o.type == "el" ? ":" + a : a + l;
        }, this).join(""));
        break;
      default:
        throw Error('Unknown entity type: "' + t.type(+'".'));
    }
    return i;
  };
  var go = new Er();
  go.registerSelectorPseudos("has", "not", "is", "matches", "any");
  go.registerNumericPseudos("nth-child");
  go.registerNestingOperators(">>>", ">>", ">", "+", "~");
  go.registerAttrEqualityMods("^", "$", "*", "~");
  var Np = function(t) {
    return go.parse(t);
  };
  var Op = function(t) {
    return go.render(t);
  };
  var Vl = {};
  Fi(Vl, {colors: () => Gl, fonts: () => B1, modifiers: () => jl, variants: () => W0});
  var B1 = {sans: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"', serif: 'Georgia, Cambria, "Times New Roman", Times, serif', mono: 'Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'};
  var jl = {odd: {name: "nth-child", valueType: "string", value: "odd"}, even: {name: "nth-child", valueType: "string", value: "even"}, first: {name: "first-child"}, last: {name: "last-child"}, only: {name: "only-child"}, "not-first": {name: "not", valueType: "raw", value: ":first-child"}, "not-last": {name: "not", valueType: "raw", value: ":last-child"}, "first-child": {}, "last-child": {}, active: {}, checked: {}, default: {}, defined: {}, disabled: {}, empty: {}, enabled: {}, "first-of-type": {}, "first-page": {name: "first"}, fullscreen: {}, focus: {}, focin: {name: "focus-within"}, "focus-within": {}, "focus-visible": {}, hover: {}, indeterminate: {}, "in-range": {}, invalid: {}, is: {type: "selector"}, lang: {}, "last-of-type": {}, left: {}, link: {}, not: {type: "selector"}, "nth-child": {}, "nth-last-child": {}, "nth-last-of-type": {}, "nth-of-type": {}, "only-child": {}, "only-of-type": {}, optional: {}, "out-of-range": {}, "placeholder-shown": {}, "read-only": {}, "read-write": {}, required: {}, right: {}, scope: {}, root: {}, target: {}, "target-within": {}, valid: {}, visited: {}, where: {}, after: {type: "el"}, "-webkit-scrollbar": {type: "el"}, "-webkit-scrollbar-button": {type: "el"}, "-webkit-scrollbar-track": {type: "el"}, "-webkit-scrollbar-track-piece": {type: "el"}, "-webkit-scrollbar-thumb": {type: "el"}, "-webkit-scrollbar-corner": {type: "el"}, "-webkit-resizer": {type: "el"}, backdrop: {type: "el"}, before: {type: "el"}, cue: {type: "el"}, "cue-region": {type: "el"}, "first-letter": {type: "el"}, "first-line": {type: "el"}, marker: {type: "el"}, placeholder: {type: "el"}, selection: {type: "el"}, inline: {pri: 3}, important: {pri: 4}, force: {pri: 6}, media: {type: "media"}, print: {media: "print"}, screen: {media: "screen"}, speech: {media: "speech"}, all: {media: "all"}, xs: {media: "(min-width: 480px)", medianeg: "(max-width: 479px)"}, sm: {media: "(min-width: 640px)", medianeg: "(max-width: 639px)"}, md: {media: "(min-width: 768px)", medianeg: "(max-width: 767px)"}, lg: {media: "(min-width: 1024px)", medianeg: "(max-width: 1023px)"}, xl: {media: "(min-width: 1280px)", medianeg: "(max-width: 1279px)"}, "2xl": {media: "(min-width: 1536px)"}, "lt-xs": {media: "(max-width: 479px)"}, "lt-sm": {media: "(max-width: 639px)"}, "lt-md": {media: "(max-width: 767px)"}, "lt-lg": {media: "(max-width: 1023px)"}, "lt-xl": {media: "(max-width: 1279px)"}, "lt-2xl": {media: "(max-width: 1535px)"}, landscape: {media: "(orientation: landscape)", medianeg: "(orientation: portrait)"}, portrait: {media: "(orientation: portrait)", medianeg: "(orientation: landscape)"}, dark: {media: "(prefers-color-scheme: dark)", medianeg: "(prefers-color-scheme: light)"}, light: {media: "(prefers-color-scheme: light)", medianeg: "(prefers-color-scheme: dark)"}, mac: {ua: "mac"}, ios: {ua: "ios"}, win: {ua: "win"}, android: {ua: "android"}, linux: {ua: "linux"}, ie: {ua: "ie"}, chrome: {ua: "chrome"}, safari: {ua: "safari"}, firefox: {ua: "firefox"}, opera: {ua: "opera"}, blink: {ua: "blink"}, webkit: {ua: "webkit"}, touch: {flag: "_touch_"}, suspended: {flag: "_suspended_"}, move: {flag: "_move_"}, hold: {flag: "_hold_"}, ssr: {flag: "_ssr_"}};
  var W0 = {radius: {full: "9999px", xxs: "1px", xs: "2px", sm: "3px", md: "4px", lg: "6px", xl: "8px", NUMBER: "2px"}, sizing: {NUMBER: "0.25rem"}, "letter-spacing": {NUMBER: "0.05em"}, "font-size": {xxs: ["10px", 1.5], xs: ["12px", 1.5], "sm-": ["13px", 1.5], sm: ["14px", 1.5], "md-": ["15px", 1.5], md: ["16px", 1.5], lg: ["18px", 1.5], xl: ["20px", 1.5], "2xl": ["24px", 1.5], "3xl": ["30px", 1.5], "4xl": ["36px", 1.5], "5xl": ["48px", 1.5], "6xl": ["64px", 1.5], "1": ["10px", 1.5], "2": ["12px", 1.5], "3": ["13px", 1.5], "4": ["14px", 1.5], "5": ["15px", 1.5], "6": ["16px", 1.5], "7": ["17px", 1.5], "8": ["18px", 1.5], "9": ["19px", 1.5], "10": ["20px", 1.5], "11": ["24px", 1.4], "12": ["30px", 1.3], "13": ["36px", 1.3], "14": ["48px", 1.2], "15": ["64px", 1.2], "16": ["96px", 1.2]}, "box-shadow": {xxs: "0 0 0 1px rgba(0, 0, 0, 0.05)", xs: "0 1px 2px 0 rgba(0, 0, 0, 0.05)", sm: "0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)", md: "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)", lg: "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)", xl: "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)", xxl: "0 25px 50px -6px rgba(0, 0, 0, 0.25)", inner: "inset 0 2px 4px 0 rgba(0, 0, 0, 0.06)", outline: "0 0 0 3px rgba(66, 153, 225, 0.5)", none: "none"}, easings: {"sine-in": "cubic-bezier(0.47, 0, 0.745, 0.715)", "sine-out": "cubic-bezier(0.39, 0.575, 0.565, 1)", "sine-in-out": "cubic-bezier(0.445, 0.05, 0.55, 0.95)", "quad-in": "cubic-bezier(0.55, 0.085, 0.68, 0.53)", "quad-out": "cubic-bezier(0.25, 0.46, 0.45, 0.94)", "quad-in-out": "cubic-bezier(0.455, 0.03, 0.515, 0.955)", "cubic-in": "cubic-bezier(0.55, 0.055, 0.675, 0.19)", "cubic-out": "cubic-bezier(0.215, 0.61, 0.355, 1)", "cubic-in-out": "cubic-bezier(0.645, 0.045, 0.355, 1)", "quart-in": "cubic-bezier(0.895, 0.03, 0.685, 0.22)", "quart-out": "cubic-bezier(0.165, 0.84, 0.44, 1)", "quart-in-out": "cubic-bezier(0.77, 0, 0.175, 1)", "quint-in": "cubic-bezier(0.755, 0.05, 0.855, 0.06)", "quint-out": "cubic-bezier(0.23, 1, 0.32, 1)", "quint-in-out": "cubic-bezier(0.86, 0, 0.07, 1)", "expo-in": "cubic-bezier(0.95, 0.05, 0.795, 0.035)", "expo-out": "cubic-bezier(0.19, 1, 0.22, 1)", "expo-in-out": "cubic-bezier(1, 0, 0, 1)", "circ-in": "cubic-bezier(0.6, 0.04, 0.98, 0.335)", "circ-out": "cubic-bezier(0.075, 0.82, 0.165, 1)", "circ-in-out": "cubic-bezier(0.785, 0.135, 0.15, 0.86)", "back-in": "cubic-bezier(0.6, -0.28, 0.735, 0.045)", "back-out": "cubic-bezier(0.175, 0.885, 0.32, 1.275)", "back-in-out": "cubic-bezier(0.68, -0.55, 0.265, 1.55)"}};
  var Gl = {rose: {0: "#fff1f2", 1: "#ffe4e6", 2: "#fecdd3", 3: "#fda4af", 4: "#fb7185", 5: "#f43f5e", 6: "#e11d48", 7: "#be123c", 8: "#9f1239", 9: "#881337"}, pink: {0: "#fdf2f8", 1: "#fce7f3", 2: "#fbcfe8", 3: "#f9a8d4", 4: "#f472b6", 5: "#ec4899", 6: "#db2777", 7: "#be185d", 8: "#9d174d", 9: "#831843"}, fuchsia: {0: "#fdf4ff", 1: "#fae8ff", 2: "#f5d0fe", 3: "#f0abfc", 4: "#e879f9", 5: "#d946ef", 6: "#c026d3", 7: "#a21caf", 8: "#86198f", 9: "#701a75"}, purple: {0: "#faf5ff", 1: "#f3e8ff", 2: "#e9d5ff", 3: "#d8b4fe", 4: "#c084fc", 5: "#a855f7", 6: "#9333ea", 7: "#7e22ce", 8: "#6b21a8", 9: "#581c87"}, violet: {0: "#f5f3ff", 1: "#ede9fe", 2: "#ddd6fe", 3: "#c4b5fd", 4: "#a78bfa", 5: "#8b5cf6", 6: "#7c3aed", 7: "#6d28d9", 8: "#5b21b6", 9: "#4c1d95"}, indigo: {0: "#eef2ff", 1: "#e0e7ff", 2: "#c7d2fe", 3: "#a5b4fc", 4: "#818cf8", 5: "#6366f1", 6: "#4f46e5", 7: "#4338ca", 8: "#3730a3", 9: "#312e81"}, blue: {0: "#eff6ff", 1: "#dbeafe", 2: "#bfdbfe", 3: "#93c5fd", 4: "#60a5fa", 5: "#3b82f6", 6: "#2563eb", 7: "#1d4ed8", 8: "#1e40af", 9: "#1e3a8a"}, sky: {0: "#f0f9ff", 1: "#e0f2fe", 2: "#bae6fd", 3: "#7dd3fc", 4: "#38bdf8", 5: "#0ea5e9", 6: "#0284c7", 7: "#0369a1", 8: "#075985", 9: "#0c4a6e"}, cyan: {0: "#ecfeff", 1: "#cffafe", 2: "#a5f3fc", 3: "#67e8f9", 4: "#22d3ee", 5: "#06b6d4", 6: "#0891b2", 7: "#0e7490", 8: "#155e75", 9: "#164e63"}, teal: {0: "#f0fdfa", 1: "#ccfbf1", 2: "#99f6e4", 3: "#5eead4", 4: "#2dd4bf", 5: "#14b8a6", 6: "#0d9488", 7: "#0f766e", 8: "#115e59", 9: "#134e4a"}, emerald: {0: "#ecfdf5", 1: "#d1fae5", 2: "#a7f3d0", 3: "#6ee7b7", 4: "#34d399", 5: "#10b981", 6: "#059669", 7: "#047857", 8: "#065f46", 9: "#064e3b"}, green: {0: "#f0fdf4", 1: "#dcfce7", 2: "#bbf7d0", 3: "#86efac", 4: "#4ade80", 5: "#22c55e", 6: "#16a34a", 7: "#15803d", 8: "#166534", 9: "#14532d"}, lime: {0: "#f7fee7", 1: "#ecfccb", 2: "#d9f99d", 3: "#bef264", 4: "#a3e635", 5: "#84cc16", 6: "#65a30d", 7: "#4d7c0f", 8: "#3f6212", 9: "#365314"}, yellow: {0: "#fefce8", 1: "#fef9c3", 2: "#fef08a", 3: "#fde047", 4: "#facc15", 5: "#eab308", 6: "#ca8a04", 7: "#a16207", 8: "#854d0e", 9: "#713f12"}, amber: {0: "#fffbeb", 1: "#fef3c7", 2: "#fde68a", 3: "#fcd34d", 4: "#fbbf24", 5: "#f59e0b", 6: "#d97706", 7: "#b45309", 8: "#92400e", 9: "#78350f"}, orange: {0: "#fff7ed", 1: "#ffedd5", 2: "#fed7aa", 3: "#fdba74", 4: "#fb923c", 5: "#f97316", 6: "#ea580c", 7: "#c2410c", 8: "#9a3412", 9: "#7c2d12"}, red: {0: "#fef2f2", 1: "#fee2e2", 2: "#fecaca", 3: "#fca5a5", 4: "#f87171", 5: "#ef4444", 6: "#dc2626", 7: "#b91c1c", 8: "#991b1b", 9: "#7f1d1d"}, warmer: {0: "#fafaf9", 1: "#f5f5f4", 2: "#e7e5e4", 3: "#d6d3d1", 4: "#a8a29e", 5: "#78716c", 6: "#57534e", 7: "#44403c", 8: "#292524", 9: "#1c1917"}, warm: {0: "#fafafa", 1: "#f5f5f5", 2: "#e5e5e5", 3: "#d4d4d4", 4: "#a3a3a3", 5: "#737373", 6: "#525252", 7: "#404040", 8: "#262626", 9: "#171717"}, gray: {0: "#fafafa", 1: "#f4f4f5", 2: "#e4e4e7", 3: "#d4d4d8", 4: "#a1a1aa", 5: "#71717a", 6: "#52525b", 7: "#3f3f46", 8: "#27272a", 9: "#18181b"}, cool: {0: "#f9fafb", 1: "#f3f4f6", 2: "#e5e7eb", 3: "#d1d5db", 4: "#9ca3af", 5: "#6b7280", 6: "#4b5563", 7: "#374151", 8: "#1f2937", 9: "#111827"}, cooler: {0: "#f8fafc", 1: "#f1f5f9", 2: "#e2e8f0", 3: "#cbd5e1", 4: "#94a3b8", 5: "#64748b", 6: "#475569", 7: "#334155", 8: "#1e293b", 9: "#0f172a"}};
  function Ei(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var Cp = Symbol.for("#rules");
  var J0 = Symbol.for("#string");
  var Z0 = Symbol.for("#media");
  function Ns(t, e) {
    return t.classNames || (t.classNames = []), t.classNames.indexOf(e) == -1 && t.classNames.push(e), t;
  }
  function Lp(t, e) {
    return Ns(t, e), t.metas || (t.metas = []), t.metas.push(e), t;
  }
  function Q0(t, e) {
    return t.pseudos || (t.pseudos = []), typeof e == "string" && (e = {name: e}), t.pseudos.push(e), t;
  }
  function Dp(t, e) {
    let r = t.rule, i;
    return r.isRoot || (r = t.rule = {type: "rule", rule: r, isRoot: true}), r;
  }
  function Fp(t, e, r = {}) {
    var w, k, T, S;
    if (t.type == "selectors")
      for (let C = 0, L = Ei(t.selectors), D = L.length; C < D; C++) {
        let I = L[C];
        Fp(I, t, r);
      }
    if (t.type != "ruleSet")
      return t;
    let i = t, s = 0, n = 0, o = 0, a = 0, l = 0;
    t.meta = {}, t.media = [];
    let p = [], c = t.rule;
    for (; c; )
      p.push(c), c = c.rule;
    let _ = p.slice(0).reverse();
    for (let C = 0, L = Ei(_), D = L.length; C < D; C++) {
      let I = L[C], U = _[C + 1], B = I.classNames, q = I.pseudos, K = I.tagName, Q = I.nestingOperator;
      !B && !K && !Q && q && q.every(function(Dt) {
        return Dt.special;
      }) && (U ? (U.pseudos = (U.pseudos || []).concat(q), U.rule = I.rule, p.splice(p.indexOf(I), 1)) : I.implicitScope = true);
    }
    let f = p[0], m = null, g = null, b = false, N = !!r.global;
    for (let C = 0, L = Ei(p), D = L.length; C < D; C++) {
      let I = L[C], U = p[C - 1], B = p[C + 1], q = I.classNames || (I.classNames = []), K = I.pseudos || [], Q = I.tagName, Dt = I.op = I.nestingOperator;
      if (Dt == ">>" ? (m = U, b = I, I.nestingOperator = ">", N = true) : Dt == ">>>" && (m = U, b = I, I.nestingOperator = null, N = true), N || (I.isScoped = true), Q == "html" && (I.isRoot = true), K.some(function(F) {
        return F.name == "root";
      }) && (I.isRoot = true), Q == "self" || I.isScope) {
        for (let F = 0, H = Ei(p.slice(0, C)), Y = H.length; F < Y; F++) {
          let P = H[F];
          P.isScoped = false;
        }
        I.isScope = true, I.isScoped = false, I.tagName = null;
      }
      (Q == "body" || Q == "html") && (I.isScoped = false);
      for (let F = 0, H = Ei(q), Y = H.length; F < Y; F++) {
        let P = H[F];
        P[0] == "$" && (q[F] = "ref--" + P.slice(1));
      }
      I.tagName && n++, r.ns && (!B || B.nestingOperator == ">>>") && !m && !g && (I.isScope, m = I), n += I.classNames.length;
      let Zt = I;
      for (let F = 0, H = Ei(K), Y = H.length, P; F < Y; F++) {
        let M = H[F];
        if (!M.special)
          continue;
        let [X, ee, oe, tt] = M.name.match(/^(\$|\.+)?([^\~\+]*)([\~\+]*)$/) || [], $, et, W = M.name[0] == "!" ? "!" : "", rt = W ? M.name.slice(1) : M.name;
        if (W && (M.neg = true, M.name = M.name.slice(1)), ee == ".")
          Ns(Zt, oe), M.remove = true, n++;
        else if (ee == "..")
          U || (U = i.rule = {type: "rule", classNames: [], rule: i.rule}), Ns(Zt = U, oe), M.remove = true, n++;
        else if (rt.match(/^\d+$/)) {
          let it = parseInt(rt);
          W ? et = "(max-width: " + (it - 1) + "px)" : et = "(min-width: " + it + "px)";
        }
        if (oe == "media" && (et = "(" + M.value + ")"), tt == "~", et)
          t.media.push(et), M.remove = true;
        else if (P = jl[rt]) {
          if (P.media) {
            let it = P.media;
            W && P.medianeg && (it = P.medianeg), t.media.push(it), M.remove = true;
          }
          P.ua && (Ns(Dp(t), "" + W + "ua-" + P.ua), M.remove = true, n++), P.flag && (Ns(Zt, "" + W + P.flag), M.remove = true, n++), P.pri && (s = P.pri, o += 4, M.remove = true), M.remove || Object.assign(M, P);
        } else if (M.name == "local")
          M.remove = true, r.hasScopedStyles = true, r.ns && Ns(I, r.ns), n++;
        else if (M.name == "off" || M.name == "out" || M.name == "in")
          M.remove = true, Ns(Zt, "_" + M.name + "_"), (e || t).hasTransitionStyles = true, (e || t)["_" + M.name + "_"] = true;
        else if (M.name == "deep")
          M.remove = true, g = I, U ? U.isRoot ? m = U.rule = {type: "rule", rule: U.rule} : m = U : m = t.rule = {type: "rule", rule: t.rule};
        else if (!M.remove) {
          let it = W ? "!mod-" + M.name.slice(1) : "mod-" + M.name;
          Ns(Dp(t), it), M.remove = true, n++;
        }
        Zt != I && !M.remove ? (Q0(Zt, M), M.remove = true, n++) : M.remove || n++;
      }
      K = K.filter(function(F) {
        return !F.remove;
      }), I.pseudos = K.filter(function(F) {
        return F.type != "el";
      }).concat(K.filter(function(F) {
        return F.type == "el";
      }));
    }
    t.specificity = n;
    let y = p[p.length - 1], v = p.find(function(C) {
      return C.isScope;
    });
    if (!v && (r.id || p[0].nestingOperator)) {
      let C = p.findIndex(function(D) {
        return D.isScoped;
      }), L = C == 0 ? t : p[C - 1];
      v = L.rule = {isScope: true, rule: p[C], classNames: [], type: "rule"};
    }
    !v && p[0].implicitScope && (p[0].isScope = true, v = p[0], v.isScoped = false);
    for (let C = 0, L = Ei(p), D = L.length; C < D; C++) {
      let I = L[C];
      I.isScoped && r.scope && Lp(I, r.scope.cssns());
    }
    if (v && r.scope && !(!v.classNames.length && !((w = v.pseudos) == null ? void 0 : w.length) && v != y && v == p[0] && !r.id && (!v.rule || !v.rule.op))) {
      let C = r.id || (r.scope.cssid ? r.scope.cssid() : r.scope.cssns());
      Lp(v, C);
    }
    let d = 0;
    for (let C = 0, L = Ei(p), D = L.length; C < D; C++) {
      let I = L[C];
      if (I.isScope)
        continue;
      !(((k = I.metas) == null ? void 0 : k.length) || 0) && (((T = I.classNames) == null ? void 0 : T.length) || ((S = I == null ? void 0 : I.pseudos) == null ? void 0 : S.length)) && (d += 1);
    }
    return d > 1 && (d = 1), l = d, r.inline && (a = 3, l = 0), r.type == "component" && (a = y.isScope ? 0 : 1), r.type == "scoped" && (a = y.isScope ? 2 : 1), y.s1 = Math.max(o, a), y.s2 = l, t;
  }
  function Pp(t, e, r = {}) {
    let i = [""], s = [i], n = t.selectors || [t];
    t[Cp] = [];
    for (let a = 0, l = Ei(n), p = l.length; a < p; a++) {
      let c = l[a], _ = Op(c);
      c[J0] = _;
      let f = c.media.length ? "@media " + c.media.join(" and ") : "";
      c[Z0] = f, f != i[0] && s.push(i = [f]), i.push(_), t[Cp].push(c);
    }
    let o = [];
    for (let a = 0, l = Ei(s), p = l.length; a < p; a++) {
      let c = l[a];
      if (!c[1])
        continue;
      let _ = c.slice(1).join(",") + " {$CONTENT$}";
      c[0] && (_ = c[0] + `{
` + _ + `
}`), o.push(_);
    }
    return o.join(`
`).replace(/\$CONTENT\$/g, e);
  }
  function Bl(t, e) {
    let r = t.split(","), i = e.split(","), s = [];
    for (let n = 0, o = Ei(i), a = o.length; n < a; n++) {
      let l = o[n];
      for (let p = 0, c = Ei(r), _ = c.length; p < _; p++) {
        let f = c[p], m = l;
        m.indexOf("&") >= 0 ? m = m.replace("&", f) : m = f + " " + m, s.push(m);
      }
    }
    return s.join(",");
  }
  function Mp(t, e) {
    let r = Np(t);
    return r && Fp(r, null, e);
  }
  var Jp = {defaultToken: "", tokenPostfix: ".xml", ignoreCase: true, qualifiedName: /(?:[\w\.\-]+:)?[\w\.\-]+/, tokenizer: {root: [[/[^<&]+/, ""], {include: "@whitespace"}, [/(<)(@qualifiedName)/, [{token: "delimiter"}, {token: "tag", next: "@tag"}]], [/(<\/)(@qualifiedName)(\s*)(>)/, [{token: "delimiter"}, {token: "tag"}, "", {token: "delimiter"}]], [/(<\?)(@qualifiedName)/, [{token: "delimiter"}, {token: "metatag", next: "@tag"}]], [/(<\!)(@qualifiedName)/, [{token: "delimiter"}, {token: "metatag", next: "@tag"}]], [/<\!\[CDATA\[/, {token: "delimiter.cdata", next: "@cdata"}], [/&\w+;/, "string.escape"]], cdata: [[/[^\]]+/, ""], [/\]\]>/, {token: "delimiter.cdata", next: "@pop"}], [/\]/, ""]], tag: [[/[ \t\r\n]+/, ""], [/(@qualifiedName)(\s*=\s*)("[^"]*"|'[^']*')/, ["attribute.name", "", "attribute.value"]], [/(@qualifiedName)(\s*=\s*)("[^">?\/]*|'[^'>?\/]*)(?=[\?\/]\>)/, ["attribute.name", "", "attribute.value"]], [/(@qualifiedName)(\s*=\s*)("[^">]*|'[^'>]*)/, ["attribute.name", "", "attribute.value"]], [/@qualifiedName/, "attribute.name"], [/\?>/, {token: "delimiter", next: "@pop"}], [/(\/)(>)/, [{token: "tag"}, {token: "delimiter", next: "@pop"}]], [/>/, {token: "delimiter", next: "@pop"}]], whitespace: [[/[ \t\r\n]+/, ""], [/<!--/, {token: "comment", next: "@comment"}]], comment: [[/[^<\-]+/, "comment.content"], [/-->/, {token: "comment", next: "@pop"}], [/<!--/, "comment.content.invalid"], [/[<\-]/, "comment.content"]]}};
  var ql = {};
  var ko = class {
    static getTokenizer(e) {
      return e == "xml" && !ql[e] ? this.createTokenizer("xml", Jp) : ql[e];
    }
    static createTokenizer(e, r) {
      let i = E1(e, r);
      return ql[e] = new oa(e, i);
    }
  };
  var Rc = {};
  Fi(Rc, {CompletionTypes: () => Fr, Group: () => Le, ImbaDocument: () => vn, KeywordTypes: () => zt, Keywords: () => la, M: () => Be, Monarch: () => ko, Node: () => ca, Position: () => _n, Range: () => ts, Scope: () => Ui, SemanticTokenModifiers: () => oh, SemanticTokenTypes: () => uo, Sym: () => rs, SymbolFlags: () => Mt, SymbolKind: () => pr, Token: () => Ti, grammar: () => S1, highlight: () => P3, lexer: () => yn});
  function D_(t) {
    let e;
    return t ? (e = t.toIterable) ? e.call(t) : t : [];
  }
  var F_ = {"&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;"};
  var P_ = {"[": "square open", "]": "square close", "{": "curly open", "}": "curly close", "(": "paren open", ")": "paren close"};
  function F3(t) {
    return t.replace(/[\&\<\>]/g, function(e) {
      return F_[e];
    });
  }
  function M_(t) {
    return t.join(" ").replace(/[\[\]\{\}\(\)]/g, function(e) {
      return P_[e];
    });
  }
  function P3(t, {verbose: e = false}) {
    let r = [], i = 0, s = 0, n = [];
    for (let o = 0, a = D_(t), l = a.length; o < l; o++) {
      let p = a[o], c = p.value, _ = p.type.split("."), [f, m] = _, g = p.mods;
      if (p.var) {
        let b = n.indexOf(p.var);
        b == -1 && (b = n.push(p.var) - 1), _.push("vref"), _.push("var" + b), _.push(p.var.type + "-ref"), g |= p.var.mods;
      }
      if (g & Be.Declaration && _.push("decl"), g & Be.Root && _.push("root"), g & Be.Local && _.push("local"), p.end && p.end.start == p && r.push("<b>"), !((m == "start" || m == "open") && (r.push("<b class='" + f + "'>"), !c))) {
        if ((m == "end" || m == "close") && !c) {
          r.push("</b>");
          continue;
        }
        if (f == "push") {
          c = String(++i);
          let b = m.indexOf("_") >= 0 ? "group" : "scope", N = p.scope && p.scope.end;
          r.push("<div class='" + b + "-" + m.split("_").pop() + " _" + m + " l" + i + " o" + p.offset + " e" + (N && N.offset) + "'>");
          continue;
        } else if (f == "pop") {
          c = String(--i), r.push("</div>");
          continue;
        }
        f != "white" && f != "line" ? c = "<i class='" + M_(_) + " o" + p.offset + "'>" + F3(c || "") + "</i>" : f == "white" && c != `
` && (c = "<i raw='" + JSON.stringify(c) + "'>" + F3(c || "") + "</i>"), r.push(c), (m == "end" || m == "close" || p.start) && r.push("</b>");
      }
    }
    return r.join("");
  }
  var stdin_default = V3();
  /*
   * [js-sha1]{@link https://github.com/emn178/js-sha1}
   *
   * @version 0.6.0
   * @author Chen, Yi-Cyuan [emn178@gmail.com]
   * @copyright Chen, Yi-Cyuan 2014-2017
   * @license MIT
   */
  return stdin_exports;
})();