lr-chatbot 0.48.102 → 0.48.103

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepChat-Cvoxnpjn.js","names":["Yo","ia"],"sources":["../../../../../../../node_modules/.pnpm/deep-chat@2.0.1/node_modules/deep-chat/dist/deepChat.js"],"sourcesContent":["function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _iterableToArray(r) { if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r); }\nfunction _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }\nfunction _createForOfIteratorHelper(r, e) { var t = \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && \"number\" == typeof r.length) { t && (r = t); var _n4 = 0, F = function F() {}; return { s: F, n: function n() { return _n4 >= r.length ? { done: !0 } : { done: !1, value: r[_n4++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t[\"return\"] || t[\"return\"](); } finally { if (u) throw o; } } }; }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nfunction _wrapNativeSuper(t) { var r = \"function\" == typeof Map ? new Map() : void 0; return _wrapNativeSuper = function _wrapNativeSuper(t) { if (null === t || !_isNativeFunction(t)) return t; if (\"function\" != typeof t) throw new TypeError(\"Super expression must either be null or a function\"); if (void 0 !== r) { if (r.has(t)) return r.get(t); r.set(t, Wrapper); } function Wrapper() { return _construct(t, arguments, _getPrototypeOf(this).constructor); } return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, enumerable: !1, writable: !0, configurable: !0 } }), _setPrototypeOf(Wrapper, t); }, _wrapNativeSuper(t); }\nfunction _construct(t, e, r) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; o.push.apply(o, e); var p = new (t.bind.apply(t, o))(); return r && _setPrototypeOf(p, r.prototype), p; }\nfunction _isNativeFunction(t) { try { return -1 !== Function.toString.call(t).indexOf(\"[native code]\"); } catch (n) { return \"function\" == typeof t; } }\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\nfunction _possibleConstructorReturn(t, e) { if (e && (\"object\" == _typeof(e) || \"function\" == typeof e)) return e; if (void 0 !== e) throw new TypeError(\"Derived constructors may only return object or undefined\"); return _assertThisInitialized(t); }\nfunction _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); return e; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }\nfunction _inherits(t, e) { if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, \"prototype\", { writable: !1 }), e && _setPrototypeOf(t, e); }\nfunction _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = \"function\" == typeof Symbol ? Symbol : {}, a = i.iterator || \"@@iterator\", c = i.asyncIterator || \"@@asyncIterator\", u = i.toStringTag || \"@@toStringTag\"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, \"\"); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, \"_invoke\", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: \"normal\", arg: t.call(e, r) }; } catch (t) { return { type: \"throw\", arg: t }; } } e.wrap = wrap; var h = \"suspendedStart\", l = \"suspendedYield\", f = \"executing\", s = \"completed\", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { [\"next\", \"throw\", \"return\"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if (\"throw\" !== c.type) { var u = c.arg, h = u.value; return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) { invoke(\"next\", t, i, a); }, function (t) { invoke(\"throw\", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke(\"throw\", t, i, a); }); } a(c.arg); } var r; o(this, \"_invoke\", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error(\"Generator is already running\"); if (o === s) { if (\"throw\" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else \"return\" === n.method && n.abrupt(\"return\", n.arg); o = f; var p = tryCatch(e, r, n); if (\"normal\" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y; var i = tryCatch(o, e.iterator, r.arg); if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = \"normal\", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: \"root\" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || \"\" === e) { var r = e[a]; if (r) return r.call(e); if (\"function\" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + \" is not iterable\"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) { var e = \"function\" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () { return this; }), define(g, \"toString\", function () { return \"[object Generator]\"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if (\"throw\" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if (\"root\" === i.tryLoc) return handle(\"end\"); if (i.tryLoc <= this.prev) { var c = n.call(i, \"catchLoc\"), u = n.call(i, \"finallyLoc\"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error(\"try statement without catch or finally\"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) { var i = o; break; } } i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if (\"throw\" === t.type) throw t.arg; return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, \"catch\": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if (\"throw\" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, \"next\" === this.method && (this.arg = t), y; } }, e; }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\"); }\nfunction _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }\nfunction _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", { writable: !1 }), e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nvar us = /*#__PURE__*/function () {\n function us() {\n _classCallCheck(this, us);\n }\n return _createClass(us, null, [{\n key: \"render\",\n value: function render(e, t) {\n var i = document.createElement(\"div\");\n i.id = \"error-view\", i.innerText = t, e.replaceChildren(i);\n }\n }]);\n}();\nvar Xt = /*#__PURE__*/function () {\n function Xt() {\n _classCallCheck(this, Xt);\n }\n return _createClass(Xt, null, [{\n key: \"onLoad\",\n value: function onLoad(e) {\n e.innerHTML = '<div id=\"large-loading-ring\"></div>';\n }\n }, {\n key: \"createElements\",\n value: function createElements() {\n var e = document.createElement(\"div\");\n return e.id = \"validate-property-key-view\", e;\n }\n }, {\n key: \"render\",\n value: function render(e, t, i) {\n var n = Xt.createElements(),\n r = {\n onSuccess: t,\n onFail: us.render.bind(this, e, \"Your 'key' has failed authentication\"),\n onLoad: Xt.onLoad.bind(this, n)\n };\n i.key && i.verifyKey(i.key, r), e.replaceChildren(n);\n }\n }]);\n}();\nvar M = /*#__PURE__*/function () {\n function M() {\n _classCallCheck(this, M);\n }\n return _createClass(M, null, [{\n key: \"unsetStyle\",\n value: function unsetStyle(e, t) {\n var i = Object.keys(t).reduce(function (n, r) {\n return n[r] = \"\", n;\n }, {});\n Object.assign(e.style, i);\n }\n }, {\n key: \"unsetActivityCSSMouseStates\",\n value: function unsetActivityCSSMouseStates(e, t) {\n t.click && M.unsetStyle(e, t.click), t.hover && M.unsetStyle(e, t.hover);\n }\n }, {\n key: \"unsetAllCSSMouseStates\",\n value: function unsetAllCSSMouseStates(e, t) {\n M.unsetActivityCSSMouseStates(e, t), t[\"default\"] && M.unsetStyle(e, t[\"default\"]);\n }\n }, {\n key: \"processStateful\",\n value: function processStateful(e, t, i) {\n var n = e[\"default\"] || {},\n r = Object.assign(JSON.parse(JSON.stringify(_objectSpread(_objectSpread({}, n), t))), e == null ? void 0 : e.hover),\n o = Object.assign(JSON.parse(JSON.stringify(_objectSpread(_objectSpread({}, r), i))), e == null ? void 0 : e.click);\n return {\n \"default\": n,\n hover: r,\n click: o\n };\n }\n }, {\n key: \"mergeStatefulStyles\",\n value: function mergeStatefulStyles(e) {\n var t = {\n \"default\": {},\n hover: {},\n click: {}\n };\n return e.forEach(function (i) {\n t[\"default\"] = Object.assign(t[\"default\"], i[\"default\"]), t.hover = Object.assign(t.hover, i.hover), t.click = Object.assign(t.click, i.click);\n }), t;\n }\n }, {\n key: \"overwriteDefaultWithAlreadyApplied\",\n value: function overwriteDefaultWithAlreadyApplied(e, t) {\n Object.keys(e[\"default\"] || []).forEach(function (i) {\n var r;\n var n = i;\n t.style[n] && (r = e[\"default\"]) != null && r[n] && (e[\"default\"][i] = t.style[n]);\n });\n }\n }, {\n key: \"applyToStyleIfNotDefined\",\n value: function applyToStyleIfNotDefined(e, t) {\n for (var i in t) {\n var n = t[i];\n e[i] === \"\" && n && (e[i] = n);\n }\n }\n }]);\n}();\nvar je = /*#__PURE__*/function () {\n function je() {\n _classCallCheck(this, je);\n }\n return _createClass(je, null, [{\n key: \"attemptAppendStyleSheetToHead\",\n value: function attemptAppendStyleSheetToHead(e) {\n if (e.fontFamily && e.fontFamily !== je.DEFAULT_FONT_FAMILY) return;\n var t = document.getElementsByTagName(\"head\")[0];\n if (!Array.from(t.getElementsByTagName(\"link\")).some(function (n) {\n return n.getAttribute(\"href\") === je.FONT_URL;\n })) {\n var n = document.createElement(\"link\");\n n.rel = \"stylesheet\", n.href = je.FONT_URL, t.appendChild(n);\n }\n }\n }]);\n}();\nje.FONT_URL = \"https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap\", je.DEFAULT_FONT_FAMILY = \"'Inter', sans-serif, Avenir, Helvetica, Arial\";\nvar Zt = je;\nvar rt = /*#__PURE__*/function () {\n function rt() {\n _classCallCheck(this, rt);\n }\n return _createClass(rt, null, [{\n key: \"apply\",\n value: function apply(e, t) {\n if (t) try {\n rt.applyStyleSheet(e, t);\n } catch (_unused) {\n rt.addStyleElement(e, t);\n }\n }\n }, {\n key: \"applyStyleSheet\",\n value: function applyStyleSheet(e, t) {\n var i = new CSSStyleSheet();\n i.replaceSync(e), t.adoptedStyleSheets.push(i);\n }\n }, {\n key: \"addStyleElement\",\n value: function addStyleElement(e, t) {\n var i = document.createElement(\"style\");\n i.innerHTML = e, t.appendChild(i);\n }\n }, {\n key: \"applyDefaultStyleToComponent\",\n value: function applyDefaultStyleToComponent(e, t) {\n t && M.applyToStyleIfNotDefined(e, t), M.applyToStyleIfNotDefined(e, rt.DEFAULT_COMPONENT_STYLE);\n }\n }]);\n}();\nrt.DEFAULT_COMPONENT_STYLE = {\n height: \"350px\",\n width: \"320px\",\n border: \"1px solid #cacaca\",\n fontFamily: Zt.DEFAULT_FONT_FAMILY,\n fontSize: \"0.9rem\",\n backgroundColor: \"white\",\n position: \"relative\",\n // this is used to prevent inputAreaStyle background color from going beyond the container's rounded border\n // it will cause issues if there are elements that are meant to be outside of the chat component and in\n // that instance they should overwrite this\n // this is also causing the chat to squeeze when there is no space\n overflow: \"hidden\"\n};\nvar yt = rt;\nvar P = /* @__PURE__ */function (s) {\n return s.ESCAPE = \"Escape\", s.ENTER = \"Enter\", s.TAB = \"Tab\", s.ARROW_UP = \"ArrowUp\", s.ARROW_DOWN = \"ArrowDown\", s.ARROW_RIGHT = \"ArrowRight\", s.ARROW_LEFT = \"ArrowLeft\", s.BACKSPACE = \"Backspace\", s.DELETE = \"Delete\", s.META = \"Meta\", s.CONTROL = \"Control\", s;\n }(P || {}),\n We;\nvar at = (We = /*#__PURE__*/_createClass(function We() {\n _classCallCheck(this, We);\n}), We.IS_SAFARI = /^((?!chrome|android).)*safari/i.test(navigator.userAgent), We.IS_CHROMIUM = window.chrome, We);\nvar Ue = /*#__PURE__*/function () {\n function Ue() {\n _classCallCheck(this, Ue);\n }\n return _createClass(Ue, null, [{\n key: \"add\",\n value:\n // prettier-ignore\n function add(e, t, i, n) {\n i !== void 0 && e.addEventListener(\"keydown\", Ue.onKeyDown.bind(this, i)), e.oninput = Ue.onInput.bind(this, i, n), e.addEventListener(\"paste\", function (r) {\n var o;\n r.preventDefault(), (o = r.clipboardData) != null && o.files.length && t.addFilesToAnyType(Array.from(r.clipboardData.files));\n });\n }\n // preventing insertion early for a nicer UX\n // prettier-ignore\n }, {\n key: \"onKeyDown\",\n value: function onKeyDown(e, t) {\n var n = t.target.textContent;\n n && n.length >= e && !Ue.PERMITTED_KEYS.has(t.key) && !Ue.isKeyCombinationPermitted(t) && t.preventDefault();\n }\n }, {\n key: \"isKeyCombinationPermitted\",\n value: function isKeyCombinationPermitted(e) {\n return e.key === \"a\" ? e.ctrlKey || e.metaKey : !1;\n }\n }, {\n key: \"onInput\",\n value: function onInput(e, t, i) {\n var n = i.target,\n r = n.textContent || \"\";\n e !== void 0 && r.length > e && (n.textContent = r.substring(0, e), Ei.focusEndOfInput(n)), t == null || t();\n }\n }]);\n}();\nUe.PERMITTED_KEYS = /* @__PURE__ */new Set([P.BACKSPACE, P.DELETE, P.ARROW_RIGHT, P.ARROW_LEFT, P.ARROW_DOWN, P.ARROW_UP, P.META, P.CONTROL, P.ENTER]);\nvar Wi = Ue;\nvar fs = /*#__PURE__*/function () {\n function fs() {\n _classCallCheck(this, fs);\n }\n return _createClass(fs, null, [{\n key: \"sanitizePastedTextContent\",\n value: function sanitizePastedTextContent(e) {\n var i, n;\n e.preventDefault();\n var t = (i = e.clipboardData) == null ? void 0 : i.getData(\"text/plain\");\n t && ((n = document.execCommand) == null || n.call(document, \"insertText\", !1, t));\n }\n }]);\n}();\nvar W = /*#__PURE__*/function () {\n function W(e, t, i) {\n var _this = this;\n _classCallCheck(this, W);\n var r, o, a;\n var n = W.processConfig(t, e.textInput);\n this.elementRef = W.createContainerElement((r = n == null ? void 0 : n.styles) == null ? void 0 : r.container), this.inputElementRef = this.createInputElement(n), this._config = n, this.elementRef.appendChild(this.inputElementRef), e.setPlaceholderText = this.setPlaceholderText.bind(this, e), e.setPlaceholderText(((a = (o = e.textInput) == null ? void 0 : o.placeholder) == null ? void 0 : a.text) || \"Ask me anything!\"), setTimeout(function () {\n var l;\n Wi.add(_this.inputElementRef, i, (l = e.textInput) == null ? void 0 : l.characterLimit, e._validationHandler);\n });\n }\n return _createClass(W, [{\n key: \"createInputElement\",\n value: function createInputElement(e) {\n var i, n;\n var t = document.createElement(\"div\");\n return t.id = W.TEXT_INPUT_ID, t.classList.add(\"text-input-styling\", W.PLACEHOLDER_TEXT_CLASS), at.IS_CHROMIUM && W.preventAutomaticScrollUpOnNewLine(t), typeof (e == null ? void 0 : e.disabled) == \"boolean\" && e.disabled === !0 ? (t.contentEditable = \"false\", t.classList.add(\"text-input-disabled\")) : (t.contentEditable = \"true\", this.addEventListeners(t, e)), Object.assign(t.style, (i = e == null ? void 0 : e.styles) == null ? void 0 : i.text), Object.assign(t.style, (n = e == null ? void 0 : e.placeholder) == null ? void 0 : n.style), t;\n }\n }, {\n key: \"removeTextIfPlaceholder\",\n value: function removeTextIfPlaceholder() {\n var e, t, i, n;\n this.inputElementRef.classList.contains(W.PLACEHOLDER_TEXT_CLASS) && !this.inputElementRef.classList.contains(\"text-input-disabled\") && ((e = this._config.placeholder) != null && e.style && (M.unsetStyle(this.inputElementRef, (t = this._config.placeholder) == null ? void 0 : t.style), Object.assign(this.inputElementRef.style, (n = (i = this._config) == null ? void 0 : i.styles) == null ? void 0 : n.text)), W.clear(this.inputElementRef), this.inputElementRef.classList.remove(W.PLACEHOLDER_TEXT_CLASS));\n }\n }, {\n key: \"addEventListeners\",\n value: function addEventListeners(e, t) {\n var i, n, r;\n e.onfocus = this.onFocus.bind(this, (i = t == null ? void 0 : t.styles) == null ? void 0 : i.focus), (n = t == null ? void 0 : t.styles) != null && n.focus && (e.onblur = this.onBlur.bind(this, t.styles.focus, (r = t == null ? void 0 : t.styles) == null ? void 0 : r.container)), e.addEventListener(\"keydown\", this.onKeydown.bind(this)), e.addEventListener(\"paste\", fs.sanitizePastedTextContent);\n }\n }, {\n key: \"onFocus\",\n value: function onFocus(e) {\n var _this2 = this;\n at.IS_SAFARI ? setTimeout(function () {\n _this2.removeTextIfPlaceholder();\n }) : this.removeTextIfPlaceholder(), Object.assign(this.elementRef.style, e);\n }\n }, {\n key: \"onBlur\",\n value: function onBlur(e, t) {\n M.unsetStyle(this.elementRef, e), t && Object.assign(this.elementRef.style, t);\n }\n }, {\n key: \"onKeydown\",\n value: function onKeydown(e) {\n var t;\n e.key === P.ENTER && !e.ctrlKey && !e.shiftKey && (e.preventDefault(), (t = this.submit) == null || t.call(this));\n }\n }, {\n key: \"setPlaceholderText\",\n value: function setPlaceholderText(e, t) {\n document.activeElement !== e && (this.inputElementRef.textContent === \"\" && this.inputElementRef.classList.add(W.PLACEHOLDER_TEXT_CLASS), this.inputElementRef.classList.contains(W.PLACEHOLDER_TEXT_CLASS) && (this.inputElementRef.textContent = t));\n }\n }], [{\n key: \"processConfig\",\n value: function processConfig(e, t) {\n var _t2, _t$disabled, _t$placeholder, _i$text;\n var i;\n return (_t2 = t) !== null && _t2 !== void 0 ? _t2 : t = {}, (_t$disabled = t.disabled) !== null && _t$disabled !== void 0 ? _t$disabled : t.disabled = e.isTextInputDisabled, (_t$placeholder = t.placeholder) !== null && _t$placeholder !== void 0 ? _t$placeholder : t.placeholder = {}, (_i$text = (i = t.placeholder).text) !== null && _i$text !== void 0 ? _i$text : i.text = e.textInputPlaceholderText, t;\n }\n // this is is a bug fix where if the browser is scrolled down and the user types in text that creates new line\n // the browser scrollbar will move up which leads to undesirable UX.\n // More details in this Stack Overflow question:\n // https://stackoverflow.com/questions/76285135/prevent-automatic-scroll-when-text-is-inserted-into-contenteditable-div\n // prettier-ignore\n }, {\n key: \"preventAutomaticScrollUpOnNewLine\",\n value: function preventAutomaticScrollUpOnNewLine(e) {\n var t;\n e.addEventListener(\"keydown\", function () {\n t = window.scrollY;\n }), e.addEventListener(\"input\", function () {\n t !== window.scrollY && window.scrollTo({\n top: t\n });\n });\n }\n // this also similarly prevents scroll up\n }, {\n key: \"clear\",\n value: function clear(e) {\n var t = window.scrollY;\n e.classList.contains(\"text-input-disabled\") || (e.textContent = \"\"), at.IS_CHROMIUM && window.scrollTo({\n top: t\n });\n }\n }, {\n key: \"toggleEditability\",\n value: function toggleEditability(e, t) {\n e.contentEditable = t ? \"true\" : \"false\";\n }\n }, {\n key: \"createContainerElement\",\n value: function createContainerElement(e) {\n var t = document.createElement(\"div\");\n return t.id = \"text-input-container\", Object.assign(t.style, e), t;\n }\n }]);\n}();\nW.TEXT_INPUT_ID = \"text-input\", W.PLACEHOLDER_TEXT_CLASS = \"text-input-placeholder\";\nvar $e = W;\nvar Ei = /*#__PURE__*/function () {\n function Ei() {\n _classCallCheck(this, Ei);\n }\n return _createClass(Ei, null, [{\n key: \"focusEndOfInput\",\n value: function focusEndOfInput(e) {\n var t = document.createRange();\n t.selectNodeContents(e), t.collapse(!1);\n var i = window.getSelection();\n i == null || i.removeAllRanges(), i == null || i.addRange(t);\n }\n }, {\n key: \"focusFromParentElement\",\n value: function focusFromParentElement(e) {\n var t = e.querySelector(\"#\".concat($e.TEXT_INPUT_ID));\n t && Ei.focusEndOfInput(t);\n }\n }]);\n}();\nfunction xn(s) {\n return s.charAt(0).toUpperCase() + s.slice(1);\n}\nfunction ps(s) {\n return s && JSON.stringify(s);\n}\nfunction cn(s, e, t, i) {\n var n = \"\\n\".concat(xn(e), \" message: \").concat(JSON.stringify(s), \" \\n\"),\n r = t ? \"\".concat(xn(e), \" message after interceptor: \").concat(ps(i), \" \\n\") : \"\";\n return n + r;\n}\nfunction ms(s, e, t, i) {\n return \"\".concat(cn(s, e, t, i), \"Make sure the \").concat(e, \" message is using the Response format: https://deepchat.dev/docs/connect/#Response \\nYou can also augment it using the responseInterceptor property: https://deepchat.dev/docs/interceptors#responseInterceptor\");\n}\nfunction gs(s, e, t) {\n var i = \"response\";\n return \"\".concat(cn(s, i, e, t), \"Make sure the \").concat(i, \" message is using the {text: string} format, e.g: {text: \\\"Model Response\\\"}\");\n}\nfunction bs(s, e) {\n var t = \"request\";\n return \"\".concat(cn(s, t, e), \"Make sure the \").concat(t, \" message is using the {body: {text: string}} format, e.g: {body: {text: \\\"Model Response\\\"}}\");\n}\nvar _n = \"Make sure the events are using {text: string} or {html: string} format.\\nYou can also augment them using the responseInterceptor property: https://deepchat.dev/docs/interceptors#responseInterceptor\",\n A = {\n INVALID_KEY: \"Invalid API Key\",\n CONNECTION_FAILED: \"Failed to connect\",\n INVALID_RESPONSE: ms,\n INVALID_MODEL_REQUEST: bs,\n INVALID_MODEL_RESPONSE: gs,\n INVALID_STREAM_EVENT: _n,\n INVALID_STREAM_EVENT_MIX: \"Cannot mix {text: string} and {html: string} responses.\",\n NO_VALID_STREAM_EVENTS_SENT: \"No valid stream events were sent.\\n\".concat(_n)\n },\n bi = /*#__PURE__*/function () {\n function bi() {\n _classCallCheck(this, bi);\n }\n return _createClass(bi, null, [{\n key: \"addElements\",\n value: function addElements(e) {\n for (var _len = arguments.length, t = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n t[_key - 1] = arguments[_key];\n }\n t.forEach(function (i) {\n return e.appendChild(i);\n });\n }\n }, {\n key: \"isScrollbarAtBottomOfElement\",\n value: function isScrollbarAtBottomOfElement(e) {\n var t = e.scrollHeight,\n i = e.clientHeight,\n n = e.scrollTop,\n r = t - i;\n return n >= r - bi.CODE_SNIPPET_GENERATION_JUMP;\n }\n }, {\n key: \"cloneElement\",\n value: function cloneElement(e) {\n var t = e.cloneNode(!0);\n return e.parentNode.replaceChild(t, e), t;\n }\n }, {\n key: \"scrollToBottom\",\n value: function scrollToBottom(e) {\n e.scrollTop = e.scrollHeight;\n }\n }, {\n key: \"scrollToTop\",\n value: function scrollToTop(e) {\n e.scrollTop = 0;\n }\n }]);\n }();\nbi.CODE_SNIPPET_GENERATION_JUMP = 0.5;\nvar q = bi;\nvar vi = /*#__PURE__*/function () {\n function vi() {\n _classCallCheck(this, vi);\n }\n return _createClass(vi, null, [{\n key: \"speak\",\n value: function speak(e, t) {\n if (window.SpeechSynthesisUtterance) {\n var i = new SpeechSynthesisUtterance(e);\n Object.assign(i, t), speechSynthesis.speak(i);\n }\n }\n }, {\n key: \"processConfig\",\n value: function processConfig(e, t) {\n var i = {};\n setTimeout(function () {\n if (_typeof(e) == \"object\" && (e.lang && (i.lang = e.lang), e.pitch && (i.pitch = e.pitch), e.rate && (i.rate = e.rate), e.volume && (i.volume = e.volume), e.voiceName)) {\n var n = window.speechSynthesis.getVoices().find(function (r) {\n var o;\n return r.name.toLocaleLowerCase() === ((o = e.voiceName) == null ? void 0 : o.toLocaleLowerCase());\n });\n n && (i.voice = n);\n }\n t(i);\n }, vi.LOAD_VOICES_MS);\n }\n }]);\n}();\nvi.LOAD_VOICES_MS = 200;\nvar lt = vi;\nvar te = /*#__PURE__*/function () {\n function te() {\n _classCallCheck(this, te);\n }\n return _createClass(te, null, [{\n key: \"checkForContainerStyles\",\n value: function checkForContainerStyles(e, t) {\n var i = e.containerStyle;\n i && (Object.assign(t.style, i), console.error(\"The containerStyle property is deprecated since version 1.3.14.\"), console.error(\"Please change to using the style property instead: https://deepchat.dev/docs/styles#style\"));\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, {\n key: \"handleResponseProperty\",\n value: function handleResponseProperty(e) {\n return console.error(\"The {result: ....} response object type is deprecated since version 1.3.0.\"), console.error(\"Please change to using the new response object: https://deepchat.dev/docs/connect#Response\"), e.result;\n }\n }, {\n key: \"processHistory\",\n value: function processHistory(e) {\n var t = e.initialMessages;\n if (t) return console.error(\"The initialMessages property is deprecated since version 2.0.0.\"), console.error(\"Please change to using the history property instead: https://deepchat.dev/docs/messages/#history\"), t;\n }\n }, {\n key: \"processHistoryFile\",\n value: function processHistoryFile(e) {\n var t = e.file;\n t && (console.error(\"The file property in MessageContent is deprecated since version 1.3.17.\"), console.error(\"Please change to using the files array property: https://deepchat.dev/docs/messages/#MessageContent\"), e.files = [t]);\n }\n }, {\n key: \"processValidateInput\",\n value: function processValidateInput(e) {\n var t = e.validateMessageBeforeSending;\n if (t) return console.error(\"The validateMessageBeforeSending property is deprecated since version 1.3.24.\"), console.error(\"Please change to using validateInput: https://deepchat.dev/docs/interceptors#validateInput\"), t;\n }\n }, {\n key: \"processSubmitUserMessage\",\n value: function processSubmitUserMessage(e) {\n return console.error(\"The submitUserMessage(text: string) argument string type is deprecated since version 1.4.4.\"), console.error(\"Please change to using the new argument type: https://deepchat.dev/docs/methods#submitUserMessage\"), {\n text: e\n };\n }\n }, {\n key: \"flagHTMLUpdateClass\",\n value: function flagHTMLUpdateClass(e) {\n var t;\n (t = e.children[0]) != null && t.classList.contains(\"deep-chat-update-message\") && (console.error('The \"deep-chat-update-message\" html class is deprecated since version 1.4.4.'), console.error(\"Please change to using {..., overwrite: true} object: https://deepchat.dev/docs/connect#Response\"));\n }\n }, {\n key: \"processConnect\",\n value: function processConnect(e) {\n var t = e;\n t.request && (t.connect ? Object.assign(t.connect, t.request) : t.connect = t.request, console.error(\"The request property is deprecated since version 2.0.0.\"), console.error(\"Please see the connect object: https://deepchat.dev/docs/connect#connect-1\"));\n }\n }, {\n key: \"checkForStream\",\n value: function checkForStream(e) {\n var t = e.stream;\n if (t) return console.error(\"The stream property has been moved to the connect object in version 2.0.0.\"), console.error(\"Please see the connect object: https://deepchat.dev/docs/connect#connect-1\"), t;\n }\n }, {\n key: \"fireOnNewMessage\",\n value: function fireOnNewMessage(e, t) {\n var n;\n var i = e;\n i.onNewMessage && (console.error(\"The onNewMessage event has been deprecated since version 2.0.0.\"), console.error(\"Please see the onMessage event: https://deepchat.dev/docs/events#onMessage\"), (n = i.onNewMessage) == null || n.call(i, t)), e.dispatchEvent(new CustomEvent(\"new-message\", {\n detail: t\n }));\n }\n }, {\n key: \"processFileConfigConnect\",\n value: function processFileConfigConnect(e) {\n var t = e;\n t.request && (console.error(\"The request property in file configuration is deprecated since version 2.0.0.\"), console.error(\"Please use the connect property instead: https://deepchat.dev/docs/files\"), t.connect || (t.connect = t.request));\n }\n }]);\n}();\nvar vs = \"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='iso-8859-1'?%3e%3csvg%20fill='%23000000'%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%2032%2032'%20xml:space='preserve'%3e%3cpath%20d='M23,30.36H9c-2.404,0-4.36-1.956-4.36-4.36V15c0-2.404,1.956-4.36,4.36-4.36h3.659%20c0.167-1.566,1.415-2.813,2.981-2.981V5.333c-1.131-0.174-2-1.154-2-2.333c0-1.301,1.059-2.36,2.36-2.36%20c1.302,0,2.36,1.059,2.36,2.36c0,1.179-0.869,2.159-2,2.333V7.66c1.566,0.167,2.814,1.415,2.981,2.981H23%20c2.404,0,4.36,1.956,4.36,4.36v11C27.36,28.404,25.404,30.36,23,30.36z%20M9,11.36c-2.007,0-3.64,1.633-3.64,3.64v11%20c0,2.007,1.633,3.64,3.64,3.64h14c2.007,0,3.64-1.633,3.64-3.64V15c0-2.007-1.633-3.64-3.64-3.64H9z%20M13.384,10.64h5.231%20C18.439,9.354,17.334,8.36,16,8.36C14.667,8.36,13.561,9.354,13.384,10.64z%20M16,1.36c-0.904,0-1.64,0.736-1.64,1.64%20S15.096,4.64,16,4.64c0.904,0,1.64-0.736,1.64-1.64S16.904,1.36,16,1.36z%20M20,27.36h-8c-1.301,0-2.36-1.059-2.36-2.36%20s1.059-2.36,2.36-2.36h8c1.302,0,2.36,1.059,2.36,2.36S21.302,27.36,20,27.36z%20M12,23.36c-0.904,0-1.64,0.735-1.64,1.64%20s0.736,1.64,1.64,1.64h8c0.904,0,1.64-0.735,1.64-1.64s-0.735-1.64-1.64-1.64H12z%20M31,23.86h-2c-0.199,0-0.36-0.161-0.36-0.36V15%20c0-0.199,0.161-0.36,0.36-0.36h2c0.199,0,0.36,0.161,0.36,0.36v8.5C31.36,23.699,31.199,23.86,31,23.86z%20M29.36,23.14h1.279v-7.78%20H29.36V23.14z%20M3,23.86H1c-0.199,0-0.36-0.161-0.36-0.36V15c0-0.199,0.161-0.36,0.36-0.36h2c0.199,0,0.36,0.161,0.36,0.36v8.5%20C3.36,23.699,3.199,23.86,3,23.86z%20M1.36,23.14h1.28v-7.78H1.36V23.14z%20M20,20.36c-1.302,0-2.36-1.059-2.36-2.36%20s1.059-2.36,2.36-2.36s2.36,1.059,2.36,2.36C22.36,19.302,21.302,20.36,20,20.36z%20M20,16.36c-0.904,0-1.64,0.736-1.64,1.64%20s0.735,1.64,1.64,1.64s1.64-0.735,1.64-1.64S20.904,16.36,20,16.36z%20M12,20.36c-1.301,0-2.36-1.059-2.36-2.36s1.059-2.36,2.36-2.36%20s2.36,1.059,2.36,2.36C14.36,19.302,13.301,20.36,12,20.36z%20M12,16.36c-0.904,0-1.64,0.736-1.64,1.64s0.736,1.64,1.64,1.64%20s1.64-0.735,1.64-1.64S12.904,16.36,12,16.36z'/%3e%3crect%20style='fill:none;'%20width='32'%20height='32'/%3e%3c/svg%3e\",\n ys = \"data:image/png;base64,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\",\n re = /*#__PURE__*/function () {\n function re() {\n _classCallCheck(this, re);\n }\n return _createClass(re, null, [{\n key: \"hide\",\n value: function hide(e) {\n var t;\n (t = e.getElementsByClassName(re.CONTAINER_CLASS)[0].style).visibility || (t.visibility = \"hidden\");\n }\n }, {\n key: \"applyCustomStylesToElements\",\n value: function applyCustomStylesToElements(e, t, i) {\n Object.assign(e.style, i.container), Object.assign(t.style, i.avatar);\n }\n }, {\n key: \"applyCustomStyles\",\n value: function applyCustomStyles(e, t, i, n) {\n var r, o, a, l;\n if ((r = i[\"default\"]) != null && r.styles && re.applyCustomStylesToElements(e, t, i[\"default\"].styles), n === b.USER_ROLE) (o = i.user) != null && o.styles && re.applyCustomStylesToElements(e, t, i.user.styles);else {\n (a = i.ai) != null && a.styles && re.applyCustomStylesToElements(e, t, i.ai.styles);\n var c = (l = i[n]) == null ? void 0 : l.styles;\n c && re.applyCustomStylesToElements(e, t, c);\n }\n }\n }, {\n key: \"createAvatar\",\n value: function createAvatar(e, t) {\n var r, o, a, l, c;\n var i = document.createElement(\"img\");\n e === b.USER_ROLE ? i.src = ((r = t == null ? void 0 : t.user) == null ? void 0 : r.src) || ((o = t == null ? void 0 : t[\"default\"]) == null ? void 0 : o.src) || ys : i.src = ((a = t == null ? void 0 : t[e]) == null ? void 0 : a.src) || ((l = t == null ? void 0 : t.ai) == null ? void 0 : l.src) || ((c = t == null ? void 0 : t[\"default\"]) == null ? void 0 : c.src) || vs, i.classList.add(\"avatar\");\n var n = document.createElement(\"div\");\n return n.classList.add(re.CONTAINER_CLASS), n.appendChild(i), t && re.applyCustomStyles(n, i, t, e), n;\n }\n }, {\n key: \"getPosition\",\n value: function getPosition(e, t) {\n var _i2, _i3, _i4;\n var n, r, o, a, l, c;\n var i = (r = (n = t == null ? void 0 : t[e]) == null ? void 0 : n.styles) == null ? void 0 : r.position;\n return e !== b.USER_ROLE && ((_i2 = i) !== null && _i2 !== void 0 ? _i2 : i = (a = (o = t == null ? void 0 : t.ai) == null ? void 0 : o.styles) == null ? void 0 : a.position), (_i3 = i) !== null && _i3 !== void 0 ? _i3 : i = (c = (l = t == null ? void 0 : t[\"default\"]) == null ? void 0 : l.styles) == null ? void 0 : c.position, (_i4 = i) !== null && _i4 !== void 0 ? _i4 : i = e === b.USER_ROLE ? \"right\" : \"left\", i;\n }\n }, {\n key: \"add\",\n value: function add(e, t, i) {\n var n = typeof i == \"boolean\" ? void 0 : i,\n r = re.createAvatar(t, n),\n o = re.getPosition(t, n);\n r.classList.add(o === \"left\" ? \"left-item-position\" : \"right-item-position\"), e.insertAdjacentElement(o === \"left\" ? \"beforebegin\" : \"afterend\", r);\n }\n }]);\n }();\nre.CONTAINER_CLASS = \"avatar-container\";\nvar Yt = re;\nvar ye = /*#__PURE__*/function () {\n function ye() {\n _classCallCheck(this, ye);\n }\n return _createClass(ye, null, [{\n key: \"hide\",\n value: function hide(e) {\n var t;\n (t = e.getElementsByClassName(ye.NAME_CLASS)[0].style).visibility || (t.visibility = \"hidden\");\n }\n }, {\n key: \"getPosition\",\n value: function getPosition(e, t) {\n var _i5, _i6, _i7;\n var n, r, o;\n var i = (n = t == null ? void 0 : t[e]) == null ? void 0 : n.position;\n return e !== b.USER_ROLE && ((_i5 = i) !== null && _i5 !== void 0 ? _i5 : i = (r = t == null ? void 0 : t.ai) == null ? void 0 : r.position), (_i6 = i) !== null && _i6 !== void 0 ? _i6 : i = (o = t == null ? void 0 : t[\"default\"]) == null ? void 0 : o.position, (_i7 = i) !== null && _i7 !== void 0 ? _i7 : i = e === b.USER_ROLE ? \"right\" : \"left\", i;\n }\n }, {\n key: \"applyStyle\",\n value: function applyStyle(e, t, i) {\n var n, r, o, a;\n Object.assign(e.style, (n = i[\"default\"]) == null ? void 0 : n.style), t === b.USER_ROLE ? Object.assign(e.style, (r = i.user) == null ? void 0 : r.style) : (Object.assign(e.style, (o = i.ai) == null ? void 0 : o.style), Object.assign(e.style, (a = i[t]) == null ? void 0 : a.style));\n }\n }, {\n key: \"getNameText\",\n value: function getNameText(e, t) {\n var i, n, r, o, a, l;\n return e === b.USER_ROLE ? ((i = t.user) == null ? void 0 : i.text) || ((n = t[\"default\"]) == null ? void 0 : n.text) || \"User\" : e === b.AI_ROLE ? ((r = t.ai) == null ? void 0 : r.text) || ((o = t[\"default\"]) == null ? void 0 : o.text) || \"AI\" : ((a = t[e]) == null ? void 0 : a.text) || ((l = t[\"default\"]) == null ? void 0 : l.text) || e;\n }\n }, {\n key: \"createName\",\n value: function createName(e, t) {\n var i = document.createElement(\"div\");\n return i.classList.add(ye.NAME_CLASS), i.textContent = ye.getNameText(e, t), ye.applyStyle(i, e, t), i;\n }\n }, {\n key: \"add\",\n value: function add(e, t, i) {\n var n = typeof i == \"boolean\" ? {} : i,\n r = ye.createName(t, n),\n o = ye.getPosition(t, n);\n r.classList.add(o === \"left\" ? \"left-item-position\" : \"right-item-position\"), e.insertAdjacentElement(o === \"left\" ? \"beforebegin\" : \"afterend\", r);\n }\n }]);\n}();\nye.NAME_CLASS = \"name\";\nvar Qt = ye;\nvar ce = /*#__PURE__*/function () {\n function ce() {\n _classCallCheck(this, ce);\n }\n return _createClass(ce, null, [{\n key: \"getLastElementsByClass\",\n value: function getLastElementsByClass(e, t, i) {\n var _loop = function _loop() {\n var r = e[n];\n if (r.bubbleElement.classList.contains(t[0]) && !t.slice(1).find(function (a) {\n return !r.bubbleElement.classList.contains(a);\n })) if (i) {\n if (!i.find(function (l) {\n return r.bubbleElement.classList.contains(l);\n })) return {\n v: r\n };\n } else return {\n v: r\n };\n },\n _ret;\n for (var n = e.length - 1; n >= 0; n -= 1) {\n _ret = _loop();\n if (_ret) return _ret.v;\n }\n }\n }, {\n key: \"getLastMessage\",\n value: function getLastMessage(e, t, i) {\n for (var n = e.length - 1; n >= 0; n -= 1) if (e[n].role === t) if (i) {\n if (e[n][i]) return e[n];\n } else return e[n];\n }\n }, {\n key: \"getLastTextToElement\",\n value: function getLastTextToElement(e, t) {\n for (var i = e.length - 1; i >= 0; i -= 1) if (e[i][0] === t) return e[i];\n }\n // IMPORTANT: If the overwrite message does not contain a role property it will look for the last 'ai' role message\n // and if messages have custom roles, it will still look to update the last 'ai' role message\n // prettier-ignore\n }, {\n key: \"overwriteMessage\",\n value: function overwriteMessage(e, t, i, n, r, o) {\n var a = ce.getLastElementsByClass(t, [ce.getRoleClass(n), o], [\"loading-message-text\"]),\n l = ce.getLastMessage(e, n, r);\n return l && (l[r] = i), a;\n }\n }, {\n key: \"getRoleClass\",\n value: function getRoleClass(e) {\n return \"\".concat(e, \"-message\");\n }\n // makes sure the bubble has dimensions when there is no text\n }, {\n key: \"fillEmptyMessageElement\",\n value: function fillEmptyMessageElement(e, t) {\n t.trim().length === 0 && (e.classList.add(ce.EMPTY_MESSAGE_CLASS), e.innerHTML = '<div style=\"color:#00000000\">.</div>');\n }\n }, {\n key: \"unfillEmptyMessageElement\",\n value: function unfillEmptyMessageElement(e, t) {\n e.classList.contains(ce.EMPTY_MESSAGE_CLASS) && t.trim().length > 0 && e.replaceChildren();\n }\n }, {\n key: \"getLastMessageBubbleElement\",\n value: function getLastMessageBubbleElement(e) {\n var t, i, n;\n return Array.from(((n = (i = (t = ce.getLastMessageElement(e)) == null ? void 0 : t.children) == null ? void 0 : i[0]) == null ? void 0 : n.children) || []).find(function (r) {\n return r.classList.contains(\"message-bubble\");\n });\n }\n }, {\n key: \"getLastMessageElement\",\n value: function getLastMessageElement(e) {\n return e.children[e.children.length - 1];\n }\n }, {\n key: \"addRoleElements\",\n value: function addRoleElements(e, t, i, n) {\n i && Yt.add(e, t, i), n && Qt.add(e, t, n);\n }\n }, {\n key: \"hideRoleElements\",\n value: function hideRoleElements(e, t, i) {\n var n = e[e.length - 1].innerContainer;\n t && Yt.hide(n), i && Qt.hide(n);\n }\n }, {\n key: \"updateRefArr\",\n value: function updateRefArr(e, t, i) {\n i ? e.unshift(t) : e.push(t);\n }\n }]);\n}();\nce.AI_ROLE = \"ai\", ce.USER_ROLE = \"user\", ce.EMPTY_MESSAGE_CLASS = \"empty-message\";\nvar b = ce;\nvar ze = /*#__PURE__*/function () {\n function ze() {\n _classCallCheck(this, ze);\n }\n return _createClass(ze, null, [{\n key: \"mouseUp\",\n value: function mouseUp(e, t) {\n M.unsetAllCSSMouseStates(e, t), Object.assign(e.style, t[\"default\"]), Object.assign(e.style, t.hover);\n }\n }, {\n key: \"mouseDown\",\n value: function mouseDown(e, t) {\n Object.assign(e.style, t.click);\n }\n }, {\n key: \"mouseLeave\",\n value: function mouseLeave(e, t) {\n M.unsetAllCSSMouseStates(e, t), Object.assign(e.style, t[\"default\"]);\n }\n }, {\n key: \"mouseEnter\",\n value: function mouseEnter(e, t) {\n Object.assign(e.style, t.hover);\n }\n }, {\n key: \"add\",\n value: function add(e, t) {\n e.addEventListener(\"mouseenter\", ze.mouseEnter.bind(this, e, t)), e.addEventListener(\"mouseleave\", ze.mouseLeave.bind(this, e, t)), e.addEventListener(\"mousedown\", ze.mouseDown.bind(this, e, t)), e.addEventListener(\"mouseup\", ze.mouseUp.bind(this, e, t));\n }\n }]);\n}();\nvar Es = \"deep-chat-temporary-message\",\n xs = \"deep-chat-suggestion-button\",\n $i = {\n \"deep-chat-button\": {\n styles: {\n \"default\": {\n backgroundColor: \"white\",\n padding: \"5px\",\n paddingLeft: \"7px\",\n paddingRight: \"7px\",\n border: \"1px solid #c2c2c2\",\n borderRadius: \"6px\",\n cursor: \"pointer\"\n },\n hover: {\n backgroundColor: \"#fafafa\"\n },\n click: {\n backgroundColor: \"#f1f1f1\"\n }\n }\n }\n },\n Sn = Object.keys($i);\nvar Pe = /*#__PURE__*/function () {\n function Pe() {\n _classCallCheck(this, Pe);\n }\n return _createClass(Pe, null, [{\n key: \"applySuggestionEvent\",\n value: function applySuggestionEvent(e, t) {\n setTimeout(function () {\n t.addEventListener(\"click\", function () {\n var i, n;\n (n = e.submitUserMessage) == null || n.call(e, {\n text: ((i = t.textContent) == null ? void 0 : i.trim()) || \"\"\n });\n });\n });\n }\n }, {\n key: \"isElementTemporary\",\n value: function isElementTemporary(e) {\n var t;\n return e ? (t = e.bubbleElement.children[0]) == null ? void 0 : t.classList.contains(Es) : !1;\n }\n }, {\n key: \"doesElementContainDeepChatClass\",\n value: function doesElementContainDeepChatClass(e) {\n return Sn.find(function (t) {\n return e.classList.contains(t);\n });\n }\n }, {\n key: \"applyEvents\",\n value: function applyEvents(e, t) {\n var i = $i[t].events;\n Object.keys(i || []).forEach(function (n) {\n e.addEventListener(n, i == null ? void 0 : i[n]);\n });\n }\n }, {\n key: \"getProcessedStyles\",\n value: function getProcessedStyles(e, t, i) {\n var n = Array.from(t.classList).reduce(function (a, l) {\n var d;\n var c = (d = e[l]) == null ? void 0 : d.styles;\n return c && e[l].styles && a.push(c), a;\n }, []),\n r = $i[i].styles;\n if (r) {\n var a = JSON.parse(JSON.stringify(r));\n a[\"default\"] && M.overwriteDefaultWithAlreadyApplied(a, t), n.unshift(a);\n }\n var o = M.mergeStatefulStyles(n);\n return M.processStateful(o, {}, {});\n }\n }, {\n key: \"applyDeepChatUtilities\",\n value: function applyDeepChatUtilities(e, t, i) {\n Sn.forEach(function (r) {\n var o = i.getElementsByClassName(r);\n Array.from(o || []).forEach(function (a) {\n var l = Pe.getProcessedStyles(t, a, r);\n ee.applyStylesToElement(a, l), Pe.applyEvents(a, r);\n });\n });\n var n = i.getElementsByClassName(xs);\n Array.from(n).forEach(function (r) {\n return Pe.applySuggestionEvent(e, r);\n });\n }\n }]);\n}();\nvar ee = /*#__PURE__*/function () {\n function ee() {\n _classCallCheck(this, ee);\n }\n return _createClass(ee, null, [{\n key: \"applyStylesToElement\",\n value: function applyStylesToElement(e, t) {\n var i = M.processStateful(t, {}, {});\n ze.add(e, i), Object.assign(e.style, i[\"default\"]);\n }\n }, {\n key: \"applyEventsToElement\",\n value: function applyEventsToElement(e, t) {\n Object.keys(t).forEach(function (i) {\n var n = t[i];\n n && e.addEventListener(i, n);\n });\n }\n }, {\n key: \"applyClassUtilitiesToElement\",\n value: function applyClassUtilitiesToElement(e, t) {\n var i = t.events,\n n = t.styles;\n i && ee.applyEventsToElement(e, i), n && !Pe.doesElementContainDeepChatClass(e) && ee.applyStylesToElement(e, n);\n }\n }, {\n key: \"applyCustomClassUtilities\",\n value: function applyCustomClassUtilities(e, t) {\n Object.keys(e).forEach(function (i) {\n var n = t.getElementsByClassName(i);\n Array.from(n).forEach(function (r) {\n e[i] && ee.applyClassUtilitiesToElement(r, e[i]);\n });\n });\n }\n }, {\n key: \"apply\",\n value: function apply(e, t) {\n Pe.applyDeepChatUtilities(e, e.htmlClassUtilities, t), ee.applyCustomClassUtilities(e.htmlClassUtilities, t);\n }\n }, {\n key: \"traverseNodes\",\n value: function traverseNodes(e, t) {\n e.nodeType === Node.ELEMENT_NODE && t.push(e.outerHTML), e.childNodes.forEach(function (i) {\n ee.traverseNodes(i, t);\n });\n }\n }, {\n key: \"splitHTML\",\n value: function splitHTML(e) {\n var i = new DOMParser().parseFromString(e, \"text/html\"),\n n = [];\n return i.body.childNodes.forEach(function (r) {\n ee.traverseNodes(r, n);\n }), n;\n }\n }]);\n}();\nvar ut = /*#__PURE__*/function () {\n function ut() {\n _classCallCheck(this, ut);\n }\n return _createClass(ut, null, [{\n key: \"addElement\",\n value: function addElement(e, t) {\n e.elementRef.appendChild(t), e.elementRef.scrollTop = e.elementRef.scrollHeight;\n }\n }, {\n key: \"createElements\",\n value: function createElements(e, t, i, n) {\n var r = e.createMessageElementsOnOrientation(\"\", i, n);\n return r.bubbleElement.classList.add(\"html-message\"), r.bubbleElement.innerHTML = t, r;\n }\n }, {\n key: \"overwrite\",\n value: function overwrite(e, t, i, n) {\n var r = e.messages,\n o = b.overwriteMessage(r, n, t, i, \"html\", \"html-message\");\n return o && (o.bubbleElement.innerHTML = t, ee.apply(e, o.outerContainer), te.flagHTMLUpdateClass(o.bubbleElement)), o;\n }\n // prettier-ignore\n }, {\n key: \"add\",\n value: function add(e, t, i, n, r) {\n var o = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : !1;\n var l;\n if (r != null && r.status) {\n var c = this.overwrite(e, t, i, n);\n if (c) return c;\n r.status = !1;\n }\n var a = ut.createElements(e, t, i, o);\n return b.fillEmptyMessageElement(a.bubbleElement, t), ee.apply(e, a.outerContainer), te.flagHTMLUpdateClass(a.bubbleElement), e.applyCustomStyles(a, i, !1, (l = e.messageStyles) == null ? void 0 : l.html), o || ut.addElement(e, a.outerContainer), a;\n }\n }]);\n}();\nvar Gt;\nfunction Qn(s) {\n return Gt = Gt || document.createElement(\"textarea\"), Gt.innerHTML = \"&\" + s + \";\", Gt.value;\n}\nvar _s = Object.prototype.hasOwnProperty;\nfunction Ss(s, e) {\n return s ? _s.call(s, e) : !1;\n}\nfunction es(s) {\n var e = [].slice.call(arguments, 1);\n return e.forEach(function (t) {\n if (t) {\n if (_typeof(t) != \"object\") throw new TypeError(t + \"must be object\");\n Object.keys(t).forEach(function (i) {\n s[i] = t[i];\n });\n }\n }), s;\n}\nvar ws = /\\\\([\\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;\nfunction At(s) {\n return s.indexOf(\"\\\\\") < 0 ? s : s.replace(ws, \"$1\");\n}\nfunction ts(s) {\n return !(s >= 55296 && s <= 57343 || s >= 64976 && s <= 65007 || (s & 65535) === 65535 || (s & 65535) === 65534 || s >= 0 && s <= 8 || s === 11 || s >= 14 && s <= 31 || s >= 127 && s <= 159 || s > 1114111);\n}\nfunction Ki(s) {\n if (s > 65535) {\n s -= 65536;\n var e = 55296 + (s >> 10),\n t = 56320 + (s & 1023);\n return String.fromCharCode(e, t);\n }\n return String.fromCharCode(s);\n}\nvar Ts = /&([a-z#][a-z0-9]{1,31});/gi,\n Cs = /^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i;\nfunction ks(s, e) {\n var t = 0,\n i = Qn(e);\n return e !== i ? i : e.charCodeAt(0) === 35 && Cs.test(e) && (t = e[1].toLowerCase() === \"x\" ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10), ts(t)) ? Ki(t) : s;\n}\nfunction Ke(s) {\n return s.indexOf(\"&\") < 0 ? s : s.replace(Ts, ks);\n}\nvar As = /[&<>\"]/,\n Ms = /[&<>\"]/g,\n Rs = {\n \"&\": \"&amp;\",\n \"<\": \"&lt;\",\n \">\": \"&gt;\",\n '\"': \"&quot;\"\n };\nfunction Is(s) {\n return Rs[s];\n}\nfunction J(s) {\n return As.test(s) ? s.replace(Ms, Is) : s;\n}\nvar g = {};\ng.blockquote_open = function () {\n return \"<blockquote>\\n\";\n};\ng.blockquote_close = function (s, e) {\n return \"</blockquote>\" + Xe(s, e);\n};\ng.code = function (s, e) {\n return s[e].block ? \"<pre><code>\" + J(s[e].content) + \"</code></pre>\" + Xe(s, e) : \"<code>\" + J(s[e].content) + \"</code>\";\n};\ng.fence = function (s, e, t, i, n) {\n var r = s[e],\n o = \"\",\n a = t.langPrefix,\n l = \"\",\n c,\n d,\n h;\n if (r.params) {\n if (c = r.params.split(/\\s+/g), d = c.join(\" \"), Ss(n.rules.fence_custom, c[0])) return n.rules.fence_custom[c[0]](s, e, t, i, n);\n l = J(Ke(At(d))), o = ' class=\"' + a + l + '\"';\n }\n return t.highlight ? h = t.highlight.apply(t.highlight, [r.content].concat(c)) || J(r.content) : h = J(r.content), \"<pre><code\" + o + \">\" + h + \"</code></pre>\" + Xe(s, e);\n};\ng.fence_custom = {};\ng.heading_open = function (s, e) {\n return \"<h\" + s[e].hLevel + \">\";\n};\ng.heading_close = function (s, e) {\n return \"</h\" + s[e].hLevel + \">\\n\";\n};\ng.hr = function (s, e, t) {\n return (t.xhtmlOut ? \"<hr />\" : \"<hr>\") + Xe(s, e);\n};\ng.bullet_list_open = function () {\n return \"<ul>\\n\";\n};\ng.bullet_list_close = function (s, e) {\n return \"</ul>\" + Xe(s, e);\n};\ng.list_item_open = function () {\n return \"<li>\";\n};\ng.list_item_close = function () {\n return \"</li>\\n\";\n};\ng.ordered_list_open = function (s, e) {\n var t = s[e],\n i = t.order > 1 ? ' start=\"' + t.order + '\"' : \"\";\n return \"<ol\" + i + \">\\n\";\n};\ng.ordered_list_close = function (s, e) {\n return \"</ol>\" + Xe(s, e);\n};\ng.paragraph_open = function (s, e) {\n return s[e].tight ? \"\" : \"<p>\";\n};\ng.paragraph_close = function (s, e) {\n var t = !(s[e].tight && e && s[e - 1].type === \"inline\" && !s[e - 1].content);\n return (s[e].tight ? \"\" : \"</p>\") + (t ? Xe(s, e) : \"\");\n};\ng.link_open = function (s, e, t) {\n var i = s[e].title ? ' title=\"' + J(Ke(s[e].title)) + '\"' : \"\",\n n = t.linkTarget ? ' target=\"' + t.linkTarget + '\"' : \"\";\n return '<a href=\"' + J(s[e].href) + '\"' + i + n + \">\";\n};\ng.link_close = function () {\n return \"</a>\";\n};\ng.image = function (s, e, t) {\n var i = ' src=\"' + J(s[e].src) + '\"',\n n = s[e].title ? ' title=\"' + J(Ke(s[e].title)) + '\"' : \"\",\n r = ' alt=\"' + (s[e].alt ? J(Ke(At(s[e].alt))) : \"\") + '\"',\n o = t.xhtmlOut ? \" /\" : \"\";\n return \"<img\" + i + r + n + o + \">\";\n};\ng.table_open = function () {\n return \"<table>\\n\";\n};\ng.table_close = function () {\n return \"</table>\\n\";\n};\ng.thead_open = function () {\n return \"<thead>\\n\";\n};\ng.thead_close = function () {\n return \"</thead>\\n\";\n};\ng.tbody_open = function () {\n return \"<tbody>\\n\";\n};\ng.tbody_close = function () {\n return \"</tbody>\\n\";\n};\ng.tr_open = function () {\n return \"<tr>\";\n};\ng.tr_close = function () {\n return \"</tr>\\n\";\n};\ng.th_open = function (s, e) {\n var t = s[e];\n return \"<th\" + (t.align ? ' style=\"text-align:' + t.align + '\"' : \"\") + \">\";\n};\ng.th_close = function () {\n return \"</th>\";\n};\ng.td_open = function (s, e) {\n var t = s[e];\n return \"<td\" + (t.align ? ' style=\"text-align:' + t.align + '\"' : \"\") + \">\";\n};\ng.td_close = function () {\n return \"</td>\";\n};\ng.strong_open = function () {\n return \"<strong>\";\n};\ng.strong_close = function () {\n return \"</strong>\";\n};\ng.em_open = function () {\n return \"<em>\";\n};\ng.em_close = function () {\n return \"</em>\";\n};\ng.del_open = function () {\n return \"<del>\";\n};\ng.del_close = function () {\n return \"</del>\";\n};\ng.ins_open = function () {\n return \"<ins>\";\n};\ng.ins_close = function () {\n return \"</ins>\";\n};\ng.mark_open = function () {\n return \"<mark>\";\n};\ng.mark_close = function () {\n return \"</mark>\";\n};\ng.sub = function (s, e) {\n return \"<sub>\" + J(s[e].content) + \"</sub>\";\n};\ng.sup = function (s, e) {\n return \"<sup>\" + J(s[e].content) + \"</sup>\";\n};\ng.hardbreak = function (s, e, t) {\n return t.xhtmlOut ? \"<br />\\n\" : \"<br>\\n\";\n};\ng.softbreak = function (s, e, t) {\n return t.breaks ? t.xhtmlOut ? \"<br />\\n\" : \"<br>\\n\" : \"\\n\";\n};\ng.text = function (s, e) {\n return J(s[e].content);\n};\ng.htmlblock = function (s, e) {\n return s[e].content;\n};\ng.htmltag = function (s, e) {\n return s[e].content;\n};\ng.abbr_open = function (s, e) {\n return '<abbr title=\"' + J(Ke(s[e].title)) + '\">';\n};\ng.abbr_close = function () {\n return \"</abbr>\";\n};\ng.footnote_ref = function (s, e) {\n var t = Number(s[e].id + 1).toString(),\n i = \"fnref\" + t;\n return s[e].subId > 0 && (i += \":\" + s[e].subId), '<sup class=\"footnote-ref\"><a href=\"#fn' + t + '\" id=\"' + i + '\">[' + t + \"]</a></sup>\";\n};\ng.footnote_block_open = function (s, e, t) {\n var i = t.xhtmlOut ? \"<hr class=\\\"footnotes-sep\\\" />\\n\" : \"<hr class=\\\"footnotes-sep\\\">\\n\";\n return i + \"<section class=\\\"footnotes\\\">\\n<ol class=\\\"footnotes-list\\\">\\n\";\n};\ng.footnote_block_close = function () {\n return \"</ol>\\n</section>\\n\";\n};\ng.footnote_open = function (s, e) {\n var t = Number(s[e].id + 1).toString();\n return '<li id=\"fn' + t + '\" class=\"footnote-item\">';\n};\ng.footnote_close = function () {\n return \"</li>\\n\";\n};\ng.footnote_anchor = function (s, e) {\n var t = Number(s[e].id + 1).toString(),\n i = \"fnref\" + t;\n return s[e].subId > 0 && (i += \":\" + s[e].subId), ' <a href=\"#' + i + '\" class=\"footnote-backref\">↩</a>';\n};\ng.dl_open = function () {\n return \"<dl>\\n\";\n};\ng.dt_open = function () {\n return \"<dt>\";\n};\ng.dd_open = function () {\n return \"<dd>\";\n};\ng.dl_close = function () {\n return \"</dl>\\n\";\n};\ng.dt_close = function () {\n return \"</dt>\\n\";\n};\ng.dd_close = function () {\n return \"</dd>\\n\";\n};\nfunction is(s, e) {\n return ++e >= s.length - 2 ? e : s[e].type === \"paragraph_open\" && s[e].tight && s[e + 1].type === \"inline\" && s[e + 1].content.length === 0 && s[e + 2].type === \"paragraph_close\" && s[e + 2].tight ? is(s, e + 2) : e;\n}\nvar Xe = g.getBreak = function (e, t) {\n return t = is(e, t), t < e.length && e[t].type === \"list_item_close\" ? \"\" : \"\\n\";\n};\nfunction dn() {\n this.rules = es({}, g), this.getBreak = g.getBreak;\n}\ndn.prototype.renderInline = function (s, e, t) {\n for (var i = this.rules, n = s.length, r = 0, o = \"\"; n--;) o += i[s[r].type](s, r++, e, t, this);\n return o;\n};\ndn.prototype.render = function (s, e, t) {\n for (var i = this.rules, n = s.length, r = -1, o = \"\"; ++r < n;) s[r].type === \"inline\" ? o += this.renderInline(s[r].children, e, t) : o += i[s[r].type](s, r, e, t, this);\n return o;\n};\nfunction ne() {\n this.__rules__ = [], this.__cache__ = null;\n}\nne.prototype.__find__ = function (s) {\n for (var e = this.__rules__.length, t = -1; e--;) if (this.__rules__[++t].name === s) return t;\n return -1;\n};\nne.prototype.__compile__ = function () {\n var s = this,\n e = [\"\"];\n s.__rules__.forEach(function (t) {\n t.enabled && t.alt.forEach(function (i) {\n e.indexOf(i) < 0 && e.push(i);\n });\n }), s.__cache__ = {}, e.forEach(function (t) {\n s.__cache__[t] = [], s.__rules__.forEach(function (i) {\n i.enabled && (t && i.alt.indexOf(t) < 0 || s.__cache__[t].push(i.fn));\n });\n });\n};\nne.prototype.at = function (s, e, t) {\n var i = this.__find__(s),\n n = t || {};\n if (i === -1) throw new Error(\"Parser rule not found: \" + s);\n this.__rules__[i].fn = e, this.__rules__[i].alt = n.alt || [], this.__cache__ = null;\n};\nne.prototype.before = function (s, e, t, i) {\n var n = this.__find__(s),\n r = i || {};\n if (n === -1) throw new Error(\"Parser rule not found: \" + s);\n this.__rules__.splice(n, 0, {\n name: e,\n enabled: !0,\n fn: t,\n alt: r.alt || []\n }), this.__cache__ = null;\n};\nne.prototype.after = function (s, e, t, i) {\n var n = this.__find__(s),\n r = i || {};\n if (n === -1) throw new Error(\"Parser rule not found: \" + s);\n this.__rules__.splice(n + 1, 0, {\n name: e,\n enabled: !0,\n fn: t,\n alt: r.alt || []\n }), this.__cache__ = null;\n};\nne.prototype.push = function (s, e, t) {\n var i = t || {};\n this.__rules__.push({\n name: s,\n enabled: !0,\n fn: e,\n alt: i.alt || []\n }), this.__cache__ = null;\n};\nne.prototype.enable = function (s, e) {\n s = Array.isArray(s) ? s : [s], e && this.__rules__.forEach(function (t) {\n t.enabled = !1;\n }), s.forEach(function (t) {\n var i = this.__find__(t);\n if (i < 0) throw new Error(\"Rules manager: invalid rule name \" + t);\n this.__rules__[i].enabled = !0;\n }, this), this.__cache__ = null;\n};\nne.prototype.disable = function (s) {\n s = Array.isArray(s) ? s : [s], s.forEach(function (e) {\n var t = this.__find__(e);\n if (t < 0) throw new Error(\"Rules manager: invalid rule name \" + e);\n this.__rules__[t].enabled = !1;\n }, this), this.__cache__ = null;\n};\nne.prototype.getRules = function (s) {\n return this.__cache__ === null && this.__compile__(), this.__cache__[s] || [];\n};\nfunction Ls(s) {\n s.inlineMode ? s.tokens.push({\n type: \"inline\",\n content: s.src.replace(/\\n/g, \" \").trim(),\n level: 0,\n lines: [0, 1],\n children: []\n }) : s.block.parse(s.src, s.options, s.env, s.tokens);\n}\nfunction Ze(s, e, t, i, n) {\n this.src = s, this.env = i, this.options = t, this.parser = e, this.tokens = n, this.pos = 0, this.posMax = this.src.length, this.level = 0, this.pending = \"\", this.pendingLevel = 0, this.cache = [], this.isInLabel = !1, this.linkLevel = 0, this.linkContent = \"\", this.labelUnmatchedScopes = 0;\n}\nZe.prototype.pushPending = function () {\n this.tokens.push({\n type: \"text\",\n content: this.pending,\n level: this.pendingLevel\n }), this.pending = \"\";\n};\nZe.prototype.push = function (s) {\n this.pending && this.pushPending(), this.tokens.push(s), this.pendingLevel = this.level;\n};\nZe.prototype.cacheSet = function (s, e) {\n for (var t = this.cache.length; t <= s; t++) this.cache.push(0);\n this.cache[s] = e;\n};\nZe.prototype.cacheGet = function (s) {\n return s < this.cache.length ? this.cache[s] : 0;\n};\nfunction Mt(s, e) {\n var t,\n i,\n n,\n r = -1,\n o = s.posMax,\n a = s.pos,\n l = s.isInLabel;\n if (s.isInLabel) return -1;\n if (s.labelUnmatchedScopes) return s.labelUnmatchedScopes--, -1;\n for (s.pos = e + 1, s.isInLabel = !0, t = 1; s.pos < o;) {\n if (n = s.src.charCodeAt(s.pos), n === 91) t++;else if (n === 93 && (t--, t === 0)) {\n i = !0;\n break;\n }\n s.parser.skipToken(s);\n }\n return i ? (r = s.pos, s.labelUnmatchedScopes = 0) : s.labelUnmatchedScopes = t - 1, s.pos = a, s.isInLabel = l, r;\n}\nfunction Ps(s, e, t, i) {\n var n, r, o, a, l, c;\n if (s.charCodeAt(0) !== 42 || s.charCodeAt(1) !== 91 || s.indexOf(\"]:\") === -1 || (n = new Ze(s, e, t, i, []), r = Mt(n, 1), r < 0 || s.charCodeAt(r + 1) !== 58)) return -1;\n for (a = n.posMax, o = r + 2; o < a && n.src.charCodeAt(o) !== 10; o++);\n return l = s.slice(2, r), c = s.slice(r + 2, o).trim(), c.length === 0 ? -1 : (i.abbreviations || (i.abbreviations = {}), _typeof(i.abbreviations[\":\" + l]) > \"u\" && (i.abbreviations[\":\" + l] = c), o);\n}\nfunction Os(s) {\n var e = s.tokens,\n t,\n i,\n n,\n r;\n if (!s.inlineMode) {\n for (t = 1, i = e.length - 1; t < i; t++) if (e[t - 1].type === \"paragraph_open\" && e[t].type === \"inline\" && e[t + 1].type === \"paragraph_close\") {\n for (n = e[t].content; n.length && (r = Ps(n, s.inline, s.options, s.env), !(r < 0));) n = n.slice(r).trim();\n e[t].content = n, n.length || (e[t - 1].tight = !0, e[t + 1].tight = !0);\n }\n }\n}\nfunction Ji(s) {\n var e = Ke(s);\n try {\n e = decodeURI(e);\n } catch (_unused2) {}\n return encodeURI(e);\n}\nfunction ns(s, e) {\n var t,\n i,\n n,\n r = e,\n o = s.posMax;\n if (s.src.charCodeAt(e) === 60) {\n for (e++; e < o;) {\n if (t = s.src.charCodeAt(e), t === 10) return !1;\n if (t === 62) return n = Ji(At(s.src.slice(r + 1, e))), s.parser.validateLink(n) ? (s.pos = e + 1, s.linkContent = n, !0) : !1;\n if (t === 92 && e + 1 < o) {\n e += 2;\n continue;\n }\n e++;\n }\n return !1;\n }\n for (i = 0; e < o && (t = s.src.charCodeAt(e), !(t === 32 || t < 32 || t === 127));) {\n if (t === 92 && e + 1 < o) {\n e += 2;\n continue;\n }\n if (t === 40 && (i++, i > 1) || t === 41 && (i--, i < 0)) break;\n e++;\n }\n return r === e || (n = At(s.src.slice(r, e)), !s.parser.validateLink(n)) ? !1 : (s.linkContent = n, s.pos = e, !0);\n}\nfunction ss(s, e) {\n var t,\n i = e,\n n = s.posMax,\n r = s.src.charCodeAt(e);\n if (r !== 34 && r !== 39 && r !== 40) return !1;\n for (e++, r === 40 && (r = 41); e < n;) {\n if (t = s.src.charCodeAt(e), t === r) return s.pos = e + 1, s.linkContent = At(s.src.slice(i + 1, e)), !0;\n if (t === 92 && e + 1 < n) {\n e += 2;\n continue;\n }\n e++;\n }\n return !1;\n}\nfunction rs(s) {\n return s.trim().replace(/\\s+/g, \" \").toUpperCase();\n}\nfunction Ns(s, e, t, i) {\n var n, r, o, a, l, c, d, h, u;\n if (s.charCodeAt(0) !== 91 || s.indexOf(\"]:\") === -1 || (n = new Ze(s, e, t, i, []), r = Mt(n, 0), r < 0 || s.charCodeAt(r + 1) !== 58)) return -1;\n for (a = n.posMax, o = r + 2; o < a && (l = n.src.charCodeAt(o), !(l !== 32 && l !== 10)); o++);\n if (!ns(n, o)) return -1;\n for (d = n.linkContent, o = n.pos, c = o, o = o + 1; o < a && (l = n.src.charCodeAt(o), !(l !== 32 && l !== 10)); o++);\n for (o < a && c !== o && ss(n, o) ? (h = n.linkContent, o = n.pos) : (h = \"\", o = c); o < a && n.src.charCodeAt(o) === 32;) o++;\n return o < a && n.src.charCodeAt(o) !== 10 ? -1 : (u = rs(s.slice(1, r)), _typeof(i.references[u]) > \"u\" && (i.references[u] = {\n title: h,\n href: d\n }), o);\n}\nfunction Ds(s) {\n var e = s.tokens,\n t,\n i,\n n,\n r;\n if (s.env.references = s.env.references || {}, !s.inlineMode) {\n for (t = 1, i = e.length - 1; t < i; t++) if (e[t].type === \"inline\" && e[t - 1].type === \"paragraph_open\" && e[t + 1].type === \"paragraph_close\") {\n for (n = e[t].content; n.length && (r = Ns(n, s.inline, s.options, s.env), !(r < 0));) n = n.slice(r).trim();\n e[t].content = n, n.length || (e[t - 1].tight = !0, e[t + 1].tight = !0);\n }\n }\n}\nfunction Fs(s) {\n var e = s.tokens,\n t,\n i,\n n;\n for (i = 0, n = e.length; i < n; i++) t = e[i], t.type === \"inline\" && s.inline.parse(t.content, s.options, s.env, t.children);\n}\nfunction Bs(s) {\n var e,\n t,\n i,\n n,\n r,\n o,\n a,\n l,\n c,\n d = 0,\n h = !1,\n u = {};\n if (s.env.footnotes && (s.tokens = s.tokens.filter(function (f) {\n return f.type === \"footnote_reference_open\" ? (h = !0, l = [], c = f.label, !1) : f.type === \"footnote_reference_close\" ? (h = !1, u[\":\" + c] = l, !1) : (h && l.push(f), !h);\n }), !!s.env.footnotes.list)) {\n for (o = s.env.footnotes.list, s.tokens.push({\n type: \"footnote_block_open\",\n level: d++\n }), e = 0, t = o.length; e < t; e++) {\n for (s.tokens.push({\n type: \"footnote_open\",\n id: e,\n level: d++\n }), o[e].tokens ? (a = [], a.push({\n type: \"paragraph_open\",\n tight: !1,\n level: d++\n }), a.push({\n type: \"inline\",\n content: \"\",\n level: d,\n children: o[e].tokens\n }), a.push({\n type: \"paragraph_close\",\n tight: !1,\n level: --d\n })) : o[e].label && (a = u[\":\" + o[e].label]), s.tokens = s.tokens.concat(a), s.tokens[s.tokens.length - 1].type === \"paragraph_close\" ? r = s.tokens.pop() : r = null, n = o[e].count > 0 ? o[e].count : 1, i = 0; i < n; i++) s.tokens.push({\n type: \"footnote_anchor\",\n id: e,\n subId: i,\n level: d\n });\n r && s.tokens.push(r), s.tokens.push({\n type: \"footnote_close\",\n level: --d\n });\n }\n s.tokens.push({\n type: \"footnote_block_close\",\n level: --d\n });\n }\n}\nvar wn = \" \\n()[]'\\\".,!?-\";\nfunction Fi(s) {\n return s.replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\");\n}\nfunction js(s) {\n var e,\n t,\n i,\n n,\n r,\n o,\n a,\n l,\n c,\n d,\n h,\n u,\n f = s.tokens;\n if (s.env.abbreviations) {\n for (s.env.abbrRegExp || (u = \"(^|[\" + wn.split(\"\").map(Fi).join(\"\") + \"])(\" + Object.keys(s.env.abbreviations).map(function (m) {\n return m.substr(1);\n }).sort(function (m, p) {\n return p.length - m.length;\n }).map(Fi).join(\"|\") + \")($|[\" + wn.split(\"\").map(Fi).join(\"\") + \"])\", s.env.abbrRegExp = new RegExp(u, \"g\")), d = s.env.abbrRegExp, t = 0, i = f.length; t < i; t++) if (f[t].type === \"inline\") {\n for (n = f[t].children, e = n.length - 1; e >= 0; e--) if (r = n[e], r.type === \"text\") {\n for (l = 0, o = r.content, d.lastIndex = 0, c = r.level, a = []; h = d.exec(o);) d.lastIndex > l && a.push({\n type: \"text\",\n content: o.slice(l, h.index + h[1].length),\n level: c\n }), a.push({\n type: \"abbr_open\",\n title: s.env.abbreviations[\":\" + h[2]],\n level: c++\n }), a.push({\n type: \"text\",\n content: h[2],\n level: c\n }), a.push({\n type: \"abbr_close\",\n level: --c\n }), l = d.lastIndex - h[3].length;\n a.length && (l < o.length && a.push({\n type: \"text\",\n content: o.slice(l),\n level: c\n }), f[t].children = n = [].concat(n.slice(0, e), a, n.slice(e + 1)));\n }\n }\n }\n}\nvar Us = /\\+-|\\.\\.|\\?\\?\\?\\?|!!!!|,,|--/,\n Hs = /\\((c|tm|r|p)\\)/ig,\n qs = {\n c: \"©\",\n r: \"®\",\n p: \"§\",\n tm: \"™\"\n };\nfunction zs(s) {\n return s.indexOf(\"(\") < 0 ? s : s.replace(Hs, function (e, t) {\n return qs[t.toLowerCase()];\n });\n}\nfunction Vs(s) {\n var e, t, i, n, r;\n if (s.options.typographer) {\n for (r = s.tokens.length - 1; r >= 0; r--) if (s.tokens[r].type === \"inline\") for (n = s.tokens[r].children, e = n.length - 1; e >= 0; e--) t = n[e], t.type === \"text\" && (i = t.content, i = zs(i), Us.test(i) && (i = i.replace(/\\+-/g, \"±\").replace(/\\.{2,}/g, \"…\").replace(/([?!])…/g, \"$1..\").replace(/([?!]){4,}/g, \"$1$1$1\").replace(/,{2,}/g, \",\").replace(/(^|[^-])---([^-]|$)/mg, \"$1—$2\").replace(/(^|\\s)--(\\s|$)/mg, \"$1–$2\").replace(/(^|[^-\\s])--([^-\\s]|$)/mg, \"$1–$2\")), t.content = i);\n }\n}\nvar Gs = /['\"]/,\n Tn = /['\"]/g,\n Ws = /[-\\s()\\[\\]]/,\n Cn = \"’\";\nfunction kn(s, e) {\n return e < 0 || e >= s.length ? !1 : !Ws.test(s[e]);\n}\nfunction it(s, e, t) {\n return s.substr(0, e) + t + s.substr(e + 1);\n}\nfunction $s(s) {\n var e, t, i, n, r, o, a, l, c, d, h, u, f, m, p, y, x;\n if (s.options.typographer) {\n for (x = [], p = s.tokens.length - 1; p >= 0; p--) if (s.tokens[p].type === \"inline\") {\n for (y = s.tokens[p].children, x.length = 0, e = 0; e < y.length; e++) if (t = y[e], !(t.type !== \"text\" || Gs.test(t.text))) {\n for (a = y[e].level, f = x.length - 1; f >= 0 && !(x[f].level <= a); f--);\n x.length = f + 1, i = t.content, r = 0, o = i.length;\n e: for (; r < o && (Tn.lastIndex = r, n = Tn.exec(i), !!n);) {\n if (l = !kn(i, n.index - 1), r = n.index + 1, m = n[0] === \"'\", c = !kn(i, r), !c && !l) {\n m && (t.content = it(t.content, n.index, Cn));\n continue;\n }\n if (h = !c, u = !l, u) {\n for (f = x.length - 1; f >= 0 && (d = x[f], !(x[f].level < a)); f--) if (d.single === m && x[f].level === a) {\n d = x[f], m ? (y[d.token].content = it(y[d.token].content, d.pos, s.options.quotes[2]), t.content = it(t.content, n.index, s.options.quotes[3])) : (y[d.token].content = it(y[d.token].content, d.pos, s.options.quotes[0]), t.content = it(t.content, n.index, s.options.quotes[1])), x.length = f;\n continue e;\n }\n }\n h ? x.push({\n token: e,\n pos: n.index,\n single: m,\n level: a\n }) : u && m && (t.content = it(t.content, n.index, Cn));\n }\n }\n }\n }\n}\nvar Bi = [[\"block\", Ls], [\"abbr\", Os], [\"references\", Ds], [\"inline\", Fs], [\"footnote_tail\", Bs], [\"abbr2\", js], [\"replacements\", Vs], [\"smartquotes\", $s]];\nfunction os() {\n this.options = {}, this.ruler = new ne();\n for (var s = 0; s < Bi.length; s++) this.ruler.push(Bi[s][0], Bi[s][1]);\n}\nos.prototype.process = function (s) {\n var e, t, i;\n for (i = this.ruler.getRules(\"\"), e = 0, t = i.length; e < t; e++) i[e](s);\n};\nfunction Ye(s, e, t, i, n) {\n var r, o, a, l, c, d, h;\n for (this.src = s, this.parser = e, this.options = t, this.env = i, this.tokens = n, this.bMarks = [], this.eMarks = [], this.tShift = [], this.blkIndent = 0, this.line = 0, this.lineMax = 0, this.tight = !1, this.parentType = \"root\", this.ddIndent = -1, this.level = 0, this.result = \"\", o = this.src, d = 0, h = !1, a = l = d = 0, c = o.length; l < c; l++) {\n if (r = o.charCodeAt(l), !h) if (r === 32) {\n d++;\n continue;\n } else h = !0;\n (r === 10 || l === c - 1) && (r !== 10 && l++, this.bMarks.push(a), this.eMarks.push(l), this.tShift.push(d), h = !1, d = 0, a = l + 1);\n }\n this.bMarks.push(o.length), this.eMarks.push(o.length), this.tShift.push(0), this.lineMax = this.bMarks.length - 1;\n}\nYe.prototype.isEmpty = function (e) {\n return this.bMarks[e] + this.tShift[e] >= this.eMarks[e];\n};\nYe.prototype.skipEmptyLines = function (e) {\n for (var t = this.lineMax; e < t && !(this.bMarks[e] + this.tShift[e] < this.eMarks[e]); e++);\n return e;\n};\nYe.prototype.skipSpaces = function (e) {\n for (var t = this.src.length; e < t && this.src.charCodeAt(e) === 32; e++);\n return e;\n};\nYe.prototype.skipChars = function (e, t) {\n for (var i = this.src.length; e < i && this.src.charCodeAt(e) === t; e++);\n return e;\n};\nYe.prototype.skipCharsBack = function (e, t, i) {\n if (e <= i) return e;\n for (; e > i;) if (t !== this.src.charCodeAt(--e)) return e + 1;\n return e;\n};\nYe.prototype.getLines = function (e, t, i, n) {\n var r,\n o,\n a,\n l,\n c,\n d = e;\n if (e >= t) return \"\";\n if (d + 1 === t) return o = this.bMarks[d] + Math.min(this.tShift[d], i), a = n ? this.eMarks[d] + 1 : this.eMarks[d], this.src.slice(o, a);\n for (l = new Array(t - e), r = 0; d < t; d++, r++) c = this.tShift[d], c > i && (c = i), c < 0 && (c = 0), o = this.bMarks[d] + c, d + 1 < t || n ? a = this.eMarks[d] + 1 : a = this.eMarks[d], l[r] = this.src.slice(o, a);\n return l.join(\"\");\n};\nfunction Ks(s, e, t) {\n var i, n;\n if (s.tShift[e] - s.blkIndent < 4) return !1;\n for (n = i = e + 1; i < t;) {\n if (s.isEmpty(i)) {\n i++;\n continue;\n }\n if (s.tShift[i] - s.blkIndent >= 4) {\n i++, n = i;\n continue;\n }\n break;\n }\n return s.line = i, s.tokens.push({\n type: \"code\",\n content: s.getLines(e, n, 4 + s.blkIndent, !0),\n block: !0,\n lines: [e, s.line],\n level: s.level\n }), !0;\n}\nfunction Js(s, e, t, i) {\n var n,\n r,\n o,\n a,\n l,\n c = !1,\n d = s.bMarks[e] + s.tShift[e],\n h = s.eMarks[e];\n if (d + 3 > h || (n = s.src.charCodeAt(d), n !== 126 && n !== 96) || (l = d, d = s.skipChars(d, n), r = d - l, r < 3) || (o = s.src.slice(d, h).trim(), o.indexOf(\"`\") >= 0)) return !1;\n if (i) return !0;\n for (a = e; a++, !(a >= t || (d = l = s.bMarks[a] + s.tShift[a], h = s.eMarks[a], d < h && s.tShift[a] < s.blkIndent));) if (s.src.charCodeAt(d) === n && !(s.tShift[a] - s.blkIndent >= 4) && (d = s.skipChars(d, n), !(d - l < r) && (d = s.skipSpaces(d), !(d < h)))) {\n c = !0;\n break;\n }\n return r = s.tShift[e], s.line = a + (c ? 1 : 0), s.tokens.push({\n type: \"fence\",\n params: o,\n content: s.getLines(e + 1, a, r, !0),\n lines: [e, s.line],\n level: s.level\n }), !0;\n}\nfunction Xs(s, e, t, i) {\n var n,\n r,\n o,\n a,\n l,\n c,\n d,\n h,\n u,\n f,\n m,\n p = s.bMarks[e] + s.tShift[e],\n y = s.eMarks[e];\n if (p > y || s.src.charCodeAt(p++) !== 62 || s.level >= s.options.maxNesting) return !1;\n if (i) return !0;\n for (s.src.charCodeAt(p) === 32 && p++, l = s.blkIndent, s.blkIndent = 0, a = [s.bMarks[e]], s.bMarks[e] = p, p = p < y ? s.skipSpaces(p) : p, r = p >= y, o = [s.tShift[e]], s.tShift[e] = p - s.bMarks[e], h = s.parser.ruler.getRules(\"blockquote\"), n = e + 1; n < t && (p = s.bMarks[n] + s.tShift[n], y = s.eMarks[n], !(p >= y)); n++) {\n if (s.src.charCodeAt(p++) === 62) {\n s.src.charCodeAt(p) === 32 && p++, a.push(s.bMarks[n]), s.bMarks[n] = p, p = p < y ? s.skipSpaces(p) : p, r = p >= y, o.push(s.tShift[n]), s.tShift[n] = p - s.bMarks[n];\n continue;\n }\n if (r) break;\n for (m = !1, u = 0, f = h.length; u < f; u++) if (h[u](s, n, t, !0)) {\n m = !0;\n break;\n }\n if (m) break;\n a.push(s.bMarks[n]), o.push(s.tShift[n]), s.tShift[n] = -1337;\n }\n for (c = s.parentType, s.parentType = \"blockquote\", s.tokens.push({\n type: \"blockquote_open\",\n lines: d = [e, 0],\n level: s.level++\n }), s.parser.tokenize(s, e, n), s.tokens.push({\n type: \"blockquote_close\",\n level: --s.level\n }), s.parentType = c, d[1] = s.line, u = 0; u < o.length; u++) s.bMarks[u + e] = a[u], s.tShift[u + e] = o[u];\n return s.blkIndent = l, !0;\n}\nfunction Zs(s, e, t, i) {\n var n,\n r,\n o,\n a = s.bMarks[e],\n l = s.eMarks[e];\n if (a += s.tShift[e], a > l || (n = s.src.charCodeAt(a++), n !== 42 && n !== 45 && n !== 95)) return !1;\n for (r = 1; a < l;) {\n if (o = s.src.charCodeAt(a++), o !== n && o !== 32) return !1;\n o === n && r++;\n }\n return r < 3 ? !1 : (i || (s.line = e + 1, s.tokens.push({\n type: \"hr\",\n lines: [e, s.line],\n level: s.level\n })), !0);\n}\nfunction An(s, e) {\n var t, i, n;\n return i = s.bMarks[e] + s.tShift[e], n = s.eMarks[e], i >= n || (t = s.src.charCodeAt(i++), t !== 42 && t !== 45 && t !== 43) || i < n && s.src.charCodeAt(i) !== 32 ? -1 : i;\n}\nfunction Mn(s, e) {\n var t,\n i = s.bMarks[e] + s.tShift[e],\n n = s.eMarks[e];\n if (i + 1 >= n || (t = s.src.charCodeAt(i++), t < 48 || t > 57)) return -1;\n for (;;) {\n if (i >= n) return -1;\n if (t = s.src.charCodeAt(i++), !(t >= 48 && t <= 57)) {\n if (t === 41 || t === 46) break;\n return -1;\n }\n }\n return i < n && s.src.charCodeAt(i) !== 32 ? -1 : i;\n}\nfunction Ys(s, e) {\n var t,\n i,\n n = s.level + 2;\n for (t = e + 2, i = s.tokens.length - 2; t < i; t++) s.tokens[t].level === n && s.tokens[t].type === \"paragraph_open\" && (s.tokens[t + 2].tight = !0, s.tokens[t].tight = !0, t += 2);\n}\nfunction Qs(s, e, t, i) {\n var n,\n r,\n o,\n a,\n l,\n c,\n d,\n h,\n u,\n f,\n m,\n p,\n y,\n x,\n j,\n V,\n Ae,\n R,\n X = !0,\n Z,\n D,\n Ne,\n gt;\n if ((h = Mn(s, e)) >= 0) y = !0;else if ((h = An(s, e)) >= 0) y = !1;else return !1;\n if (s.level >= s.options.maxNesting) return !1;\n if (p = s.src.charCodeAt(h - 1), i) return !0;\n for (j = s.tokens.length, y ? (d = s.bMarks[e] + s.tShift[e], m = Number(s.src.substr(d, h - d - 1)), s.tokens.push({\n type: \"ordered_list_open\",\n order: m,\n lines: Ae = [e, 0],\n level: s.level++\n })) : s.tokens.push({\n type: \"bullet_list_open\",\n lines: Ae = [e, 0],\n level: s.level++\n }), n = e, V = !1, Z = s.parser.ruler.getRules(\"list\"); n < t && (x = s.skipSpaces(h), u = s.eMarks[n], x >= u ? f = 1 : f = x - h, f > 4 && (f = 1), f < 1 && (f = 1), r = h - s.bMarks[n] + f, s.tokens.push({\n type: \"list_item_open\",\n lines: R = [e, 0],\n level: s.level++\n }), a = s.blkIndent, l = s.tight, o = s.tShift[e], c = s.parentType, s.tShift[e] = x - s.bMarks[e], s.blkIndent = r, s.tight = !0, s.parentType = \"list\", s.parser.tokenize(s, e, t, !0), (!s.tight || V) && (X = !1), V = s.line - e > 1 && s.isEmpty(s.line - 1), s.blkIndent = a, s.tShift[e] = o, s.tight = l, s.parentType = c, s.tokens.push({\n type: \"list_item_close\",\n level: --s.level\n }), n = e = s.line, R[1] = n, x = s.bMarks[e], !(n >= t || s.isEmpty(n) || s.tShift[n] < s.blkIndent));) {\n for (gt = !1, D = 0, Ne = Z.length; D < Ne; D++) if (Z[D](s, n, t, !0)) {\n gt = !0;\n break;\n }\n if (gt) break;\n if (y) {\n if (h = Mn(s, n), h < 0) break;\n } else if (h = An(s, n), h < 0) break;\n if (p !== s.src.charCodeAt(h - 1)) break;\n }\n return s.tokens.push({\n type: y ? \"ordered_list_close\" : \"bullet_list_close\",\n level: --s.level\n }), Ae[1] = n, s.line = n, X && Ys(s, j), !0;\n}\nfunction er(s, e, t, i) {\n var n,\n r,\n o,\n a,\n l,\n c = s.bMarks[e] + s.tShift[e],\n d = s.eMarks[e];\n if (c + 4 > d || s.src.charCodeAt(c) !== 91 || s.src.charCodeAt(c + 1) !== 94 || s.level >= s.options.maxNesting) return !1;\n for (a = c + 2; a < d; a++) {\n if (s.src.charCodeAt(a) === 32) return !1;\n if (s.src.charCodeAt(a) === 93) break;\n }\n return a === c + 2 || a + 1 >= d || s.src.charCodeAt(++a) !== 58 ? !1 : (i || (a++, s.env.footnotes || (s.env.footnotes = {}), s.env.footnotes.refs || (s.env.footnotes.refs = {}), l = s.src.slice(c + 2, a - 2), s.env.footnotes.refs[\":\" + l] = -1, s.tokens.push({\n type: \"footnote_reference_open\",\n label: l,\n level: s.level++\n }), n = s.bMarks[e], r = s.tShift[e], o = s.parentType, s.tShift[e] = s.skipSpaces(a) - a, s.bMarks[e] = a, s.blkIndent += 4, s.parentType = \"footnote\", s.tShift[e] < s.blkIndent && (s.tShift[e] += s.blkIndent, s.bMarks[e] -= s.blkIndent), s.parser.tokenize(s, e, t, !0), s.parentType = o, s.blkIndent -= 4, s.tShift[e] = r, s.bMarks[e] = n, s.tokens.push({\n type: \"footnote_reference_close\",\n level: --s.level\n })), !0);\n}\nfunction tr(s, e, t, i) {\n var n,\n r,\n o,\n a = s.bMarks[e] + s.tShift[e],\n l = s.eMarks[e];\n if (a >= l || (n = s.src.charCodeAt(a), n !== 35 || a >= l)) return !1;\n for (r = 1, n = s.src.charCodeAt(++a); n === 35 && a < l && r <= 6;) r++, n = s.src.charCodeAt(++a);\n return r > 6 || a < l && n !== 32 ? !1 : (i || (l = s.skipCharsBack(l, 32, a), o = s.skipCharsBack(l, 35, a), o > a && s.src.charCodeAt(o - 1) === 32 && (l = o), s.line = e + 1, s.tokens.push({\n type: \"heading_open\",\n hLevel: r,\n lines: [e, s.line],\n level: s.level\n }), a < l && s.tokens.push({\n type: \"inline\",\n content: s.src.slice(a, l).trim(),\n level: s.level + 1,\n lines: [e, s.line],\n children: []\n }), s.tokens.push({\n type: \"heading_close\",\n hLevel: r,\n level: s.level\n })), !0);\n}\nfunction ir(s, e, t) {\n var i,\n n,\n r,\n o = e + 1;\n return o >= t || s.tShift[o] < s.blkIndent || s.tShift[o] - s.blkIndent > 3 || (n = s.bMarks[o] + s.tShift[o], r = s.eMarks[o], n >= r) || (i = s.src.charCodeAt(n), i !== 45 && i !== 61) || (n = s.skipChars(n, i), n = s.skipSpaces(n), n < r) ? !1 : (n = s.bMarks[e] + s.tShift[e], s.line = o + 1, s.tokens.push({\n type: \"heading_open\",\n hLevel: i === 61 ? 1 : 2,\n lines: [e, s.line],\n level: s.level\n }), s.tokens.push({\n type: \"inline\",\n content: s.src.slice(n, s.eMarks[e]).trim(),\n level: s.level + 1,\n lines: [e, s.line - 1],\n children: []\n }), s.tokens.push({\n type: \"heading_close\",\n hLevel: i === 61 ? 1 : 2,\n level: s.level\n }), !0);\n}\nvar as = {};\n[\"article\", \"aside\", \"button\", \"blockquote\", \"body\", \"canvas\", \"caption\", \"col\", \"colgroup\", \"dd\", \"div\", \"dl\", \"dt\", \"embed\", \"fieldset\", \"figcaption\", \"figure\", \"footer\", \"form\", \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\", \"header\", \"hgroup\", \"hr\", \"iframe\", \"li\", \"map\", \"object\", \"ol\", \"output\", \"p\", \"pre\", \"progress\", \"script\", \"section\", \"style\", \"table\", \"tbody\", \"td\", \"textarea\", \"tfoot\", \"th\", \"tr\", \"thead\", \"ul\", \"video\"].forEach(function (s) {\n as[s] = !0;\n});\nvar nr = /^<([a-zA-Z]{1,15})[\\s\\/>]/,\n sr = /^<\\/([a-zA-Z]{1,15})[\\s>]/;\nfunction rr(s) {\n var e = s | 32;\n return e >= 97 && e <= 122;\n}\nfunction or(s, e, t, i) {\n var n,\n r,\n o,\n a = s.bMarks[e],\n l = s.eMarks[e],\n c = s.tShift[e];\n if (a += c, !s.options.html || c > 3 || a + 2 >= l || s.src.charCodeAt(a) !== 60) return !1;\n if (n = s.src.charCodeAt(a + 1), n === 33 || n === 63) {\n if (i) return !0;\n } else if (n === 47 || rr(n)) {\n if (n === 47) {\n if (r = s.src.slice(a, l).match(sr), !r) return !1;\n } else if (r = s.src.slice(a, l).match(nr), !r) return !1;\n if (as[r[1].toLowerCase()] !== !0) return !1;\n if (i) return !0;\n } else return !1;\n for (o = e + 1; o < s.lineMax && !s.isEmpty(o);) o++;\n return s.line = o, s.tokens.push({\n type: \"htmlblock\",\n level: s.level,\n lines: [e, s.line],\n content: s.getLines(e, o, 0, !0)\n }), !0;\n}\nfunction ji(s, e) {\n var t = s.bMarks[e] + s.blkIndent,\n i = s.eMarks[e];\n return s.src.substr(t, i - t);\n}\nfunction ar(s, e, t, i) {\n var n, r, o, a, l, c, d, h, u, f, m;\n if (e + 2 > t || (l = e + 1, s.tShift[l] < s.blkIndent) || (o = s.bMarks[l] + s.tShift[l], o >= s.eMarks[l]) || (n = s.src.charCodeAt(o), n !== 124 && n !== 45 && n !== 58) || (r = ji(s, e + 1), !/^[-:| ]+$/.test(r)) || (c = r.split(\"|\"), c <= 2)) return !1;\n for (h = [], a = 0; a < c.length; a++) {\n if (u = c[a].trim(), !u) {\n if (a === 0 || a === c.length - 1) continue;\n return !1;\n }\n if (!/^:?-+:?$/.test(u)) return !1;\n u.charCodeAt(u.length - 1) === 58 ? h.push(u.charCodeAt(0) === 58 ? \"center\" : \"right\") : u.charCodeAt(0) === 58 ? h.push(\"left\") : h.push(\"\");\n }\n if (r = ji(s, e).trim(), r.indexOf(\"|\") === -1 || (c = r.replace(/^\\||\\|$/g, \"\").split(\"|\"), h.length !== c.length)) return !1;\n if (i) return !0;\n for (s.tokens.push({\n type: \"table_open\",\n lines: f = [e, 0],\n level: s.level++\n }), s.tokens.push({\n type: \"thead_open\",\n lines: [e, e + 1],\n level: s.level++\n }), s.tokens.push({\n type: \"tr_open\",\n lines: [e, e + 1],\n level: s.level++\n }), a = 0; a < c.length; a++) s.tokens.push({\n type: \"th_open\",\n align: h[a],\n lines: [e, e + 1],\n level: s.level++\n }), s.tokens.push({\n type: \"inline\",\n content: c[a].trim(),\n lines: [e, e + 1],\n level: s.level,\n children: []\n }), s.tokens.push({\n type: \"th_close\",\n level: --s.level\n });\n for (s.tokens.push({\n type: \"tr_close\",\n level: --s.level\n }), s.tokens.push({\n type: \"thead_close\",\n level: --s.level\n }), s.tokens.push({\n type: \"tbody_open\",\n lines: m = [e + 2, 0],\n level: s.level++\n }), l = e + 2; l < t && !(s.tShift[l] < s.blkIndent || (r = ji(s, l).trim(), r.indexOf(\"|\") === -1)); l++) {\n for (c = r.replace(/^\\||\\|$/g, \"\").split(\"|\"), s.tokens.push({\n type: \"tr_open\",\n level: s.level++\n }), a = 0; a < c.length; a++) s.tokens.push({\n type: \"td_open\",\n align: h[a],\n level: s.level++\n }), d = c[a].substring(c[a].charCodeAt(0) === 124 ? 1 : 0, c[a].charCodeAt(c[a].length - 1) === 124 ? c[a].length - 1 : c[a].length).trim(), s.tokens.push({\n type: \"inline\",\n content: d,\n level: s.level,\n children: []\n }), s.tokens.push({\n type: \"td_close\",\n level: --s.level\n });\n s.tokens.push({\n type: \"tr_close\",\n level: --s.level\n });\n }\n return s.tokens.push({\n type: \"tbody_close\",\n level: --s.level\n }), s.tokens.push({\n type: \"table_close\",\n level: --s.level\n }), f[1] = m[1] = l, s.line = l, !0;\n}\nfunction Wt(s, e) {\n var t,\n i,\n n = s.bMarks[e] + s.tShift[e],\n r = s.eMarks[e];\n return n >= r || (i = s.src.charCodeAt(n++), i !== 126 && i !== 58) || (t = s.skipSpaces(n), n === t) || t >= r ? -1 : t;\n}\nfunction lr(s, e) {\n var t,\n i,\n n = s.level + 2;\n for (t = e + 2, i = s.tokens.length - 2; t < i; t++) s.tokens[t].level === n && s.tokens[t].type === \"paragraph_open\" && (s.tokens[t + 2].tight = !0, s.tokens[t].tight = !0, t += 2);\n}\nfunction cr(s, e, t, i) {\n var n, r, o, a, l, c, d, h, u, f, m, p, y, x;\n if (i) return s.ddIndent < 0 ? !1 : Wt(s, e) >= 0;\n if (d = e + 1, s.isEmpty(d) && ++d > t || s.tShift[d] < s.blkIndent || (n = Wt(s, d), n < 0) || s.level >= s.options.maxNesting) return !1;\n c = s.tokens.length, s.tokens.push({\n type: \"dl_open\",\n lines: l = [e, 0],\n level: s.level++\n }), o = e, r = d;\n e: for (;;) {\n for (x = !0, y = !1, s.tokens.push({\n type: \"dt_open\",\n lines: [o, o],\n level: s.level++\n }), s.tokens.push({\n type: \"inline\",\n content: s.getLines(o, o + 1, s.blkIndent, !1).trim(),\n level: s.level + 1,\n lines: [o, o],\n children: []\n }), s.tokens.push({\n type: \"dt_close\",\n level: --s.level\n });;) {\n if (s.tokens.push({\n type: \"dd_open\",\n lines: a = [d, 0],\n level: s.level++\n }), p = s.tight, u = s.ddIndent, h = s.blkIndent, m = s.tShift[r], f = s.parentType, s.blkIndent = s.ddIndent = s.tShift[r] + 2, s.tShift[r] = n - s.bMarks[r], s.tight = !0, s.parentType = \"deflist\", s.parser.tokenize(s, r, t, !0), (!s.tight || y) && (x = !1), y = s.line - r > 1 && s.isEmpty(s.line - 1), s.tShift[r] = m, s.tight = p, s.parentType = f, s.blkIndent = h, s.ddIndent = u, s.tokens.push({\n type: \"dd_close\",\n level: --s.level\n }), a[1] = d = s.line, d >= t || s.tShift[d] < s.blkIndent) break e;\n if (n = Wt(s, d), n < 0) break;\n r = d;\n }\n if (d >= t || (o = d, s.isEmpty(o)) || s.tShift[o] < s.blkIndent || (r = o + 1, r >= t) || (s.isEmpty(r) && r++, r >= t) || s.tShift[r] < s.blkIndent || (n = Wt(s, r), n < 0)) break;\n }\n return s.tokens.push({\n type: \"dl_close\",\n level: --s.level\n }), l[1] = d, s.line = d, x && lr(s, c), !0;\n}\nfunction dr(s, e) {\n var t,\n i,\n n,\n r,\n o,\n a = e + 1,\n l;\n if (t = s.lineMax, a < t && !s.isEmpty(a)) {\n for (l = s.parser.ruler.getRules(\"paragraph\"); a < t && !s.isEmpty(a); a++) if (!(s.tShift[a] - s.blkIndent > 3)) {\n for (n = !1, r = 0, o = l.length; r < o; r++) if (l[r](s, a, t, !0)) {\n n = !0;\n break;\n }\n if (n) break;\n }\n }\n return i = s.getLines(e, a, s.blkIndent, !1).trim(), s.line = a, i.length && (s.tokens.push({\n type: \"paragraph_open\",\n tight: !1,\n lines: [e, s.line],\n level: s.level\n }), s.tokens.push({\n type: \"inline\",\n content: i,\n level: s.level + 1,\n lines: [e, s.line],\n children: []\n }), s.tokens.push({\n type: \"paragraph_close\",\n tight: !1,\n level: s.level\n })), !0;\n}\nvar $t = [[\"code\", Ks], [\"fences\", Js, [\"paragraph\", \"blockquote\", \"list\"]], [\"blockquote\", Xs, [\"paragraph\", \"blockquote\", \"list\"]], [\"hr\", Zs, [\"paragraph\", \"blockquote\", \"list\"]], [\"list\", Qs, [\"paragraph\", \"blockquote\"]], [\"footnote\", er, [\"paragraph\"]], [\"heading\", tr, [\"paragraph\", \"blockquote\"]], [\"lheading\", ir], [\"htmlblock\", or, [\"paragraph\", \"blockquote\"]], [\"table\", ar, [\"paragraph\"]], [\"deflist\", cr, [\"paragraph\"]], [\"paragraph\", dr]];\nfunction hn() {\n this.ruler = new ne();\n for (var s = 0; s < $t.length; s++) this.ruler.push($t[s][0], $t[s][1], {\n alt: ($t[s][2] || []).slice()\n });\n}\nhn.prototype.tokenize = function (s, e, t) {\n for (var i = this.ruler.getRules(\"\"), n = i.length, r = e, o = !1, a, l; r < t && (s.line = r = s.skipEmptyLines(r), !(r >= t || s.tShift[r] < s.blkIndent));) {\n for (l = 0; l < n && (a = i[l](s, r, t, !1), !a); l++);\n if (s.tight = !o, s.isEmpty(s.line - 1) && (o = !0), r = s.line, r < t && s.isEmpty(r)) {\n if (o = !0, r++, r < t && s.parentType === \"list\" && s.isEmpty(r)) break;\n s.line = r;\n }\n }\n};\nvar hr = /[\\n\\t]/g,\n ur = /\\r[\\n\\u0085]|[\\u2424\\u2028\\u0085]/g,\n fr = /\\u00a0/g;\nhn.prototype.parse = function (s, e, t, i) {\n var n,\n r = 0,\n o = 0;\n if (!s) return [];\n s = s.replace(fr, \" \"), s = s.replace(ur, \"\\n\"), s.indexOf(\"\t\") >= 0 && (s = s.replace(hr, function (a, l) {\n var c;\n return s.charCodeAt(l) === 10 ? (r = l + 1, o = 0, a) : (c = \" \".slice((l - r - o) % 4), o = l - r + 1, c);\n })), n = new Ye(s, this, e, t, i), this.tokenize(n, n.line, n.lineMax);\n};\nfunction pr(s) {\n switch (s) {\n case 10:\n case 92:\n case 96:\n case 42:\n case 95:\n case 94:\n case 91:\n case 93:\n case 33:\n case 38:\n case 60:\n case 62:\n case 123:\n case 125:\n case 36:\n case 37:\n case 64:\n case 126:\n case 43:\n case 61:\n case 58:\n return !0;\n default:\n return !1;\n }\n}\nfunction mr(s, e) {\n for (var t = s.pos; t < s.posMax && !pr(s.src.charCodeAt(t));) t++;\n return t === s.pos ? !1 : (e || (s.pending += s.src.slice(s.pos, t)), s.pos = t, !0);\n}\nfunction gr(s, e) {\n var t,\n i,\n n = s.pos;\n if (s.src.charCodeAt(n) !== 10) return !1;\n if (t = s.pending.length - 1, i = s.posMax, !e) if (t >= 0 && s.pending.charCodeAt(t) === 32) {\n if (t >= 1 && s.pending.charCodeAt(t - 1) === 32) {\n for (var r = t - 2; r >= 0; r--) if (s.pending.charCodeAt(r) !== 32) {\n s.pending = s.pending.substring(0, r + 1);\n break;\n }\n s.push({\n type: \"hardbreak\",\n level: s.level\n });\n } else s.pending = s.pending.slice(0, -1), s.push({\n type: \"softbreak\",\n level: s.level\n });\n } else s.push({\n type: \"softbreak\",\n level: s.level\n });\n for (n++; n < i && s.src.charCodeAt(n) === 32;) n++;\n return s.pos = n, !0;\n}\nvar un = [];\nfor (var Rn = 0; Rn < 256; Rn++) un.push(0);\n\"\\\\!\\\"#$%&'()*+,./:;<=>?@[]^_`{|}~-\".split(\"\").forEach(function (s) {\n un[s.charCodeAt(0)] = 1;\n});\nfunction br(s, e) {\n var t,\n i = s.pos,\n n = s.posMax;\n if (s.src.charCodeAt(i) !== 92) return !1;\n if (i++, i < n) {\n if (t = s.src.charCodeAt(i), t < 256 && un[t] !== 0) return e || (s.pending += s.src[i]), s.pos += 2, !0;\n if (t === 10) {\n for (e || s.push({\n type: \"hardbreak\",\n level: s.level\n }), i++; i < n && s.src.charCodeAt(i) === 32;) i++;\n return s.pos = i, !0;\n }\n }\n return e || (s.pending += \"\\\\\"), s.pos++, !0;\n}\nfunction vr(s, e) {\n var t,\n i,\n n,\n r,\n o,\n a = s.pos,\n l = s.src.charCodeAt(a);\n if (l !== 96) return !1;\n for (t = a, a++, i = s.posMax; a < i && s.src.charCodeAt(a) === 96;) a++;\n for (n = s.src.slice(t, a), r = o = a; (r = s.src.indexOf(\"`\", o)) !== -1;) {\n for (o = r + 1; o < i && s.src.charCodeAt(o) === 96;) o++;\n if (o - r === n.length) return e || s.push({\n type: \"code\",\n content: s.src.slice(a, r).replace(/[ \\n]+/g, \" \").trim(),\n block: !1,\n level: s.level\n }), s.pos = o, !0;\n }\n return e || (s.pending += n), s.pos += n.length, !0;\n}\nfunction yr(s, e) {\n var t,\n i,\n n,\n r = s.posMax,\n o = s.pos,\n a,\n l;\n if (s.src.charCodeAt(o) !== 126 || e || o + 4 >= r || s.src.charCodeAt(o + 1) !== 126 || s.level >= s.options.maxNesting || (a = o > 0 ? s.src.charCodeAt(o - 1) : -1, l = s.src.charCodeAt(o + 2), a === 126) || l === 126 || l === 32 || l === 10) return !1;\n for (i = o + 2; i < r && s.src.charCodeAt(i) === 126;) i++;\n if (i > o + 3) return s.pos += i - o, e || (s.pending += s.src.slice(o, i)), !0;\n for (s.pos = o + 2, n = 1; s.pos + 1 < r;) {\n if (s.src.charCodeAt(s.pos) === 126 && s.src.charCodeAt(s.pos + 1) === 126 && (a = s.src.charCodeAt(s.pos - 1), l = s.pos + 2 < r ? s.src.charCodeAt(s.pos + 2) : -1, l !== 126 && a !== 126 && (a !== 32 && a !== 10 ? n-- : l !== 32 && l !== 10 && n++, n <= 0))) {\n t = !0;\n break;\n }\n s.parser.skipToken(s);\n }\n return t ? (s.posMax = s.pos, s.pos = o + 2, e || (s.push({\n type: \"del_open\",\n level: s.level++\n }), s.parser.tokenize(s), s.push({\n type: \"del_close\",\n level: --s.level\n })), s.pos = s.posMax + 2, s.posMax = r, !0) : (s.pos = o, !1);\n}\nfunction Er(s, e) {\n var t,\n i,\n n,\n r = s.posMax,\n o = s.pos,\n a,\n l;\n if (s.src.charCodeAt(o) !== 43 || e || o + 4 >= r || s.src.charCodeAt(o + 1) !== 43 || s.level >= s.options.maxNesting || (a = o > 0 ? s.src.charCodeAt(o - 1) : -1, l = s.src.charCodeAt(o + 2), a === 43) || l === 43 || l === 32 || l === 10) return !1;\n for (i = o + 2; i < r && s.src.charCodeAt(i) === 43;) i++;\n if (i !== o + 2) return s.pos += i - o, e || (s.pending += s.src.slice(o, i)), !0;\n for (s.pos = o + 2, n = 1; s.pos + 1 < r;) {\n if (s.src.charCodeAt(s.pos) === 43 && s.src.charCodeAt(s.pos + 1) === 43 && (a = s.src.charCodeAt(s.pos - 1), l = s.pos + 2 < r ? s.src.charCodeAt(s.pos + 2) : -1, l !== 43 && a !== 43 && (a !== 32 && a !== 10 ? n-- : l !== 32 && l !== 10 && n++, n <= 0))) {\n t = !0;\n break;\n }\n s.parser.skipToken(s);\n }\n return t ? (s.posMax = s.pos, s.pos = o + 2, e || (s.push({\n type: \"ins_open\",\n level: s.level++\n }), s.parser.tokenize(s), s.push({\n type: \"ins_close\",\n level: --s.level\n })), s.pos = s.posMax + 2, s.posMax = r, !0) : (s.pos = o, !1);\n}\nfunction xr(s, e) {\n var t,\n i,\n n,\n r = s.posMax,\n o = s.pos,\n a,\n l;\n if (s.src.charCodeAt(o) !== 61 || e || o + 4 >= r || s.src.charCodeAt(o + 1) !== 61 || s.level >= s.options.maxNesting || (a = o > 0 ? s.src.charCodeAt(o - 1) : -1, l = s.src.charCodeAt(o + 2), a === 61) || l === 61 || l === 32 || l === 10) return !1;\n for (i = o + 2; i < r && s.src.charCodeAt(i) === 61;) i++;\n if (i !== o + 2) return s.pos += i - o, e || (s.pending += s.src.slice(o, i)), !0;\n for (s.pos = o + 2, n = 1; s.pos + 1 < r;) {\n if (s.src.charCodeAt(s.pos) === 61 && s.src.charCodeAt(s.pos + 1) === 61 && (a = s.src.charCodeAt(s.pos - 1), l = s.pos + 2 < r ? s.src.charCodeAt(s.pos + 2) : -1, l !== 61 && a !== 61 && (a !== 32 && a !== 10 ? n-- : l !== 32 && l !== 10 && n++, n <= 0))) {\n t = !0;\n break;\n }\n s.parser.skipToken(s);\n }\n return t ? (s.posMax = s.pos, s.pos = o + 2, e || (s.push({\n type: \"mark_open\",\n level: s.level++\n }), s.parser.tokenize(s), s.push({\n type: \"mark_close\",\n level: --s.level\n })), s.pos = s.posMax + 2, s.posMax = r, !0) : (s.pos = o, !1);\n}\nfunction In(s) {\n return s >= 48 && s <= 57 || s >= 65 && s <= 90 || s >= 97 && s <= 122;\n}\nfunction Ln(s, e) {\n var t = e,\n i,\n n,\n r,\n o = !0,\n a = !0,\n l = s.posMax,\n c = s.src.charCodeAt(e);\n for (i = e > 0 ? s.src.charCodeAt(e - 1) : -1; t < l && s.src.charCodeAt(t) === c;) t++;\n return t >= l && (o = !1), r = t - e, r >= 4 ? o = a = !1 : (n = t < l ? s.src.charCodeAt(t) : -1, (n === 32 || n === 10) && (o = !1), (i === 32 || i === 10) && (a = !1), c === 95 && (In(i) && (o = !1), In(n) && (a = !1))), {\n can_open: o,\n can_close: a,\n delims: r\n };\n}\nfunction _r(s, e) {\n var t,\n i,\n n,\n r,\n o,\n a,\n l,\n c = s.posMax,\n d = s.pos,\n h = s.src.charCodeAt(d);\n if (h !== 95 && h !== 42 || e) return !1;\n if (l = Ln(s, d), t = l.delims, !l.can_open) return s.pos += t, e || (s.pending += s.src.slice(d, s.pos)), !0;\n if (s.level >= s.options.maxNesting) return !1;\n for (s.pos = d + t, a = [t]; s.pos < c;) {\n if (s.src.charCodeAt(s.pos) === h) {\n if (l = Ln(s, s.pos), i = l.delims, l.can_close) {\n for (r = a.pop(), o = i; r !== o;) {\n if (o < r) {\n a.push(r - o);\n break;\n }\n if (o -= r, a.length === 0) break;\n s.pos += r, r = a.pop();\n }\n if (a.length === 0) {\n t = r, n = !0;\n break;\n }\n s.pos += i;\n continue;\n }\n l.can_open && a.push(i), s.pos += i;\n continue;\n }\n s.parser.skipToken(s);\n }\n return n ? (s.posMax = s.pos, s.pos = d + t, e || ((t === 2 || t === 3) && s.push({\n type: \"strong_open\",\n level: s.level++\n }), (t === 1 || t === 3) && s.push({\n type: \"em_open\",\n level: s.level++\n }), s.parser.tokenize(s), (t === 1 || t === 3) && s.push({\n type: \"em_close\",\n level: --s.level\n }), (t === 2 || t === 3) && s.push({\n type: \"strong_close\",\n level: --s.level\n })), s.pos = s.posMax + t, s.posMax = c, !0) : (s.pos = d, !1);\n}\nvar Sr = /\\\\([ \\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;\nfunction wr(s, e) {\n var t,\n i,\n n = s.posMax,\n r = s.pos;\n if (s.src.charCodeAt(r) !== 126 || e || r + 2 >= n || s.level >= s.options.maxNesting) return !1;\n for (s.pos = r + 1; s.pos < n;) {\n if (s.src.charCodeAt(s.pos) === 126) {\n t = !0;\n break;\n }\n s.parser.skipToken(s);\n }\n return !t || r + 1 === s.pos || (i = s.src.slice(r + 1, s.pos), i.match(/(^|[^\\\\])(\\\\\\\\)*\\s/)) ? (s.pos = r, !1) : (s.posMax = s.pos, s.pos = r + 1, e || s.push({\n type: \"sub\",\n level: s.level,\n content: i.replace(Sr, \"$1\")\n }), s.pos = s.posMax + 1, s.posMax = n, !0);\n}\nvar Tr = /\\\\([ \\\\!\"#$%&'()*+,.\\/:;<=>?@[\\]^_`{|}~-])/g;\nfunction Cr(s, e) {\n var t,\n i,\n n = s.posMax,\n r = s.pos;\n if (s.src.charCodeAt(r) !== 94 || e || r + 2 >= n || s.level >= s.options.maxNesting) return !1;\n for (s.pos = r + 1; s.pos < n;) {\n if (s.src.charCodeAt(s.pos) === 94) {\n t = !0;\n break;\n }\n s.parser.skipToken(s);\n }\n return !t || r + 1 === s.pos || (i = s.src.slice(r + 1, s.pos), i.match(/(^|[^\\\\])(\\\\\\\\)*\\s/)) ? (s.pos = r, !1) : (s.posMax = s.pos, s.pos = r + 1, e || s.push({\n type: \"sup\",\n level: s.level,\n content: i.replace(Tr, \"$1\")\n }), s.pos = s.posMax + 1, s.posMax = n, !0);\n}\nfunction kr(s, e) {\n var t,\n i,\n n,\n r,\n o,\n a,\n l,\n c,\n d = !1,\n h = s.pos,\n u = s.posMax,\n f = s.pos,\n m = s.src.charCodeAt(f);\n if (m === 33 && (d = !0, m = s.src.charCodeAt(++f)), m !== 91 || s.level >= s.options.maxNesting || (t = f + 1, i = Mt(s, f), i < 0)) return !1;\n if (a = i + 1, a < u && s.src.charCodeAt(a) === 40) {\n for (a++; a < u && (c = s.src.charCodeAt(a), !(c !== 32 && c !== 10)); a++);\n if (a >= u) return !1;\n for (f = a, ns(s, a) ? (r = s.linkContent, a = s.pos) : r = \"\", f = a; a < u && (c = s.src.charCodeAt(a), !(c !== 32 && c !== 10)); a++);\n if (a < u && f !== a && ss(s, a)) for (o = s.linkContent, a = s.pos; a < u && (c = s.src.charCodeAt(a), !(c !== 32 && c !== 10)); a++);else o = \"\";\n if (a >= u || s.src.charCodeAt(a) !== 41) return s.pos = h, !1;\n a++;\n } else {\n if (s.linkLevel > 0) return !1;\n for (; a < u && (c = s.src.charCodeAt(a), !(c !== 32 && c !== 10)); a++);\n if (a < u && s.src.charCodeAt(a) === 91 && (f = a + 1, a = Mt(s, a), a >= 0 ? n = s.src.slice(f, a++) : a = f - 1), n || (_typeof(n) > \"u\" && (a = i + 1), n = s.src.slice(t, i)), l = s.env.references[rs(n)], !l) return s.pos = h, !1;\n r = l.href, o = l.title;\n }\n return e || (s.pos = t, s.posMax = i, d ? s.push({\n type: \"image\",\n src: r,\n title: o,\n alt: s.src.substr(t, i - t),\n level: s.level\n }) : (s.push({\n type: \"link_open\",\n href: r,\n title: o,\n level: s.level++\n }), s.linkLevel++, s.parser.tokenize(s), s.linkLevel--, s.push({\n type: \"link_close\",\n level: --s.level\n }))), s.pos = a, s.posMax = u, !0;\n}\nfunction Ar(s, e) {\n var t,\n i,\n n,\n r,\n o = s.posMax,\n a = s.pos;\n return a + 2 >= o || s.src.charCodeAt(a) !== 94 || s.src.charCodeAt(a + 1) !== 91 || s.level >= s.options.maxNesting || (t = a + 2, i = Mt(s, a + 1), i < 0) ? !1 : (e || (s.env.footnotes || (s.env.footnotes = {}), s.env.footnotes.list || (s.env.footnotes.list = []), n = s.env.footnotes.list.length, s.pos = t, s.posMax = i, s.push({\n type: \"footnote_ref\",\n id: n,\n level: s.level\n }), s.linkLevel++, r = s.tokens.length, s.parser.tokenize(s), s.env.footnotes.list[n] = {\n tokens: s.tokens.splice(r)\n }, s.linkLevel--), s.pos = i + 1, s.posMax = o, !0);\n}\nfunction Mr(s, e) {\n var t,\n i,\n n,\n r,\n o = s.posMax,\n a = s.pos;\n if (a + 3 > o || !s.env.footnotes || !s.env.footnotes.refs || s.src.charCodeAt(a) !== 91 || s.src.charCodeAt(a + 1) !== 94 || s.level >= s.options.maxNesting) return !1;\n for (i = a + 2; i < o; i++) {\n if (s.src.charCodeAt(i) === 32 || s.src.charCodeAt(i) === 10) return !1;\n if (s.src.charCodeAt(i) === 93) break;\n }\n return i === a + 2 || i >= o || (i++, t = s.src.slice(a + 2, i - 1), _typeof(s.env.footnotes.refs[\":\" + t]) > \"u\") ? !1 : (e || (s.env.footnotes.list || (s.env.footnotes.list = []), s.env.footnotes.refs[\":\" + t] < 0 ? (n = s.env.footnotes.list.length, s.env.footnotes.list[n] = {\n label: t,\n count: 0\n }, s.env.footnotes.refs[\":\" + t] = n) : n = s.env.footnotes.refs[\":\" + t], r = s.env.footnotes.list[n].count, s.env.footnotes.list[n].count++, s.push({\n type: \"footnote_ref\",\n id: n,\n subId: r,\n level: s.level\n })), s.pos = i, s.posMax = o, !0);\n}\nvar Rr = [\"coap\", \"doi\", \"javascript\", \"aaa\", \"aaas\", \"about\", \"acap\", \"cap\", \"cid\", \"crid\", \"data\", \"dav\", \"dict\", \"dns\", \"file\", \"ftp\", \"geo\", \"go\", \"gopher\", \"h323\", \"http\", \"https\", \"iax\", \"icap\", \"im\", \"imap\", \"info\", \"ipp\", \"iris\", \"iris.beep\", \"iris.xpc\", \"iris.xpcs\", \"iris.lwz\", \"ldap\", \"mailto\", \"mid\", \"msrp\", \"msrps\", \"mtqp\", \"mupdate\", \"news\", \"nfs\", \"ni\", \"nih\", \"nntp\", \"opaquelocktoken\", \"pop\", \"pres\", \"rtsp\", \"service\", \"session\", \"shttp\", \"sieve\", \"sip\", \"sips\", \"sms\", \"snmp\", \"soap.beep\", \"soap.beeps\", \"tag\", \"tel\", \"telnet\", \"tftp\", \"thismessage\", \"tn3270\", \"tip\", \"tv\", \"urn\", \"vemmi\", \"ws\", \"wss\", \"xcon\", \"xcon-userid\", \"xmlrpc.beep\", \"xmlrpc.beeps\", \"xmpp\", \"z39.50r\", \"z39.50s\", \"adiumxtra\", \"afp\", \"afs\", \"aim\", \"apt\", \"attachment\", \"aw\", \"beshare\", \"bitcoin\", \"bolo\", \"callto\", \"chrome\", \"chrome-extension\", \"com-eventbrite-attendee\", \"content\", \"cvs\", \"dlna-playsingle\", \"dlna-playcontainer\", \"dtn\", \"dvb\", \"ed2k\", \"facetime\", \"feed\", \"finger\", \"fish\", \"gg\", \"git\", \"gizmoproject\", \"gtalk\", \"hcp\", \"icon\", \"ipn\", \"irc\", \"irc6\", \"ircs\", \"itms\", \"jar\", \"jms\", \"keyparc\", \"lastfm\", \"ldaps\", \"magnet\", \"maps\", \"market\", \"message\", \"mms\", \"ms-help\", \"msnim\", \"mumble\", \"mvn\", \"notes\", \"oid\", \"palm\", \"paparazzi\", \"platform\", \"proxy\", \"psyc\", \"query\", \"res\", \"resource\", \"rmi\", \"rsync\", \"rtmp\", \"secondlife\", \"sftp\", \"sgn\", \"skype\", \"smb\", \"soldat\", \"spotify\", \"ssh\", \"steam\", \"svn\", \"teamspeak\", \"things\", \"udp\", \"unreal\", \"ut2004\", \"ventrilo\", \"view-source\", \"webcal\", \"wtai\", \"wyciwyg\", \"xfire\", \"xri\", \"ymsgr\"],\n Ir = /^<([a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,\n Lr = /^<([a-zA-Z.\\-]{1,25}):([^<>\\x00-\\x20]*)>/;\nfunction Pr(s, e) {\n var t,\n i,\n n,\n r,\n o,\n a = s.pos;\n return s.src.charCodeAt(a) !== 60 || (t = s.src.slice(a), t.indexOf(\">\") < 0) ? !1 : (i = t.match(Lr), i ? Rr.indexOf(i[1].toLowerCase()) < 0 || (r = i[0].slice(1, -1), o = Ji(r), !s.parser.validateLink(r)) ? !1 : (e || (s.push({\n type: \"link_open\",\n href: o,\n level: s.level\n }), s.push({\n type: \"text\",\n content: r,\n level: s.level + 1\n }), s.push({\n type: \"link_close\",\n level: s.level\n })), s.pos += i[0].length, !0) : (n = t.match(Ir), n ? (r = n[0].slice(1, -1), o = Ji(\"mailto:\" + r), s.parser.validateLink(o) ? (e || (s.push({\n type: \"link_open\",\n href: o,\n level: s.level\n }), s.push({\n type: \"text\",\n content: r,\n level: s.level + 1\n }), s.push({\n type: \"link_close\",\n level: s.level\n })), s.pos += n[0].length, !0) : !1) : !1));\n}\nfunction xi(s, e) {\n return s = s.source, e = e || \"\", function t(i, n) {\n return i ? (n = n.source || n, s = s.replace(i, n), t) : new RegExp(s, e);\n };\n}\nvar Or = /[a-zA-Z_:][a-zA-Z0-9:._-]*/,\n Nr = /[^\"'=<>`\\x00-\\x20]+/,\n Dr = /'[^']*'/,\n Fr = /\"[^\"]*\"/,\n Br = xi(/(?:unquoted|single_quoted|double_quoted)/)(\"unquoted\", Nr)(\"single_quoted\", Dr)(\"double_quoted\", Fr)(),\n jr = xi(/(?:\\s+attr_name(?:\\s*=\\s*attr_value)?)/)(\"attr_name\", Or)(\"attr_value\", Br)(),\n Ur = xi(/<[A-Za-z][A-Za-z0-9]*attribute*\\s*\\/?>/)(\"attribute\", jr)(),\n Hr = /<\\/[A-Za-z][A-Za-z0-9]*\\s*>/,\n qr = /<!---->|<!--(?:-?[^>-])(?:-?[^-])*-->/,\n zr = /<[?].*?[?]>/,\n Vr = /<![A-Z]+\\s+[^>]*>/,\n Gr = /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/,\n Wr = xi(/^(?:open_tag|close_tag|comment|processing|declaration|cdata)/)(\"open_tag\", Ur)(\"close_tag\", Hr)(\"comment\", qr)(\"processing\", zr)(\"declaration\", Vr)(\"cdata\", Gr)();\nfunction $r(s) {\n var e = s | 32;\n return e >= 97 && e <= 122;\n}\nfunction Kr(s, e) {\n var t,\n i,\n n,\n r = s.pos;\n return !s.options.html || (n = s.posMax, s.src.charCodeAt(r) !== 60 || r + 2 >= n) || (t = s.src.charCodeAt(r + 1), t !== 33 && t !== 63 && t !== 47 && !$r(t)) || (i = s.src.slice(r).match(Wr), !i) ? !1 : (e || s.push({\n type: \"htmltag\",\n content: s.src.slice(r, r + i[0].length),\n level: s.level\n }), s.pos += i[0].length, !0);\n}\nvar Jr = /^&#((?:x[a-f0-9]{1,8}|[0-9]{1,8}));/i,\n Xr = /^&([a-z][a-z0-9]{1,31});/i;\nfunction Zr(s, e) {\n var t,\n i,\n n,\n r = s.pos,\n o = s.posMax;\n if (s.src.charCodeAt(r) !== 38) return !1;\n if (r + 1 < o) {\n if (t = s.src.charCodeAt(r + 1), t === 35) {\n if (n = s.src.slice(r).match(Jr), n) return e || (i = n[1][0].toLowerCase() === \"x\" ? parseInt(n[1].slice(1), 16) : parseInt(n[1], 10), s.pending += ts(i) ? Ki(i) : Ki(65533)), s.pos += n[0].length, !0;\n } else if (n = s.src.slice(r).match(Xr), n) {\n var a = Qn(n[1]);\n if (n[1] !== a) return e || (s.pending += a), s.pos += n[0].length, !0;\n }\n }\n return e || (s.pending += \"&\"), s.pos++, !0;\n}\nvar Ui = [[\"text\", mr], [\"newline\", gr], [\"escape\", br], [\"backticks\", vr], [\"del\", yr], [\"ins\", Er], [\"mark\", xr], [\"emphasis\", _r], [\"sub\", wr], [\"sup\", Cr], [\"links\", kr], [\"footnote_inline\", Ar], [\"footnote_ref\", Mr], [\"autolink\", Pr], [\"htmltag\", Kr], [\"entity\", Zr]];\nfunction _i() {\n this.ruler = new ne();\n for (var s = 0; s < Ui.length; s++) this.ruler.push(Ui[s][0], Ui[s][1]);\n this.validateLink = Yr;\n}\n_i.prototype.skipToken = function (s) {\n var e = this.ruler.getRules(\"\"),\n t = e.length,\n i = s.pos,\n n,\n r;\n if ((r = s.cacheGet(i)) > 0) {\n s.pos = r;\n return;\n }\n for (n = 0; n < t; n++) if (e[n](s, !0)) {\n s.cacheSet(i, s.pos);\n return;\n }\n s.pos++, s.cacheSet(i, s.pos);\n};\n_i.prototype.tokenize = function (s) {\n for (var e = this.ruler.getRules(\"\"), t = e.length, i = s.posMax, n, r; s.pos < i;) {\n for (r = 0; r < t && (n = e[r](s, !1), !n); r++);\n if (n) {\n if (s.pos >= i) break;\n continue;\n }\n s.pending += s.src[s.pos++];\n }\n s.pending && s.pushPending();\n};\n_i.prototype.parse = function (s, e, t, i) {\n var n = new Ze(s, this, e, t, i);\n this.tokenize(n);\n};\nfunction Yr(s) {\n var e = [\"vbscript\", \"javascript\", \"file\", \"data\"],\n t = s.trim().toLowerCase();\n return t = Ke(t), !(t.indexOf(\":\") !== -1 && e.indexOf(t.split(\":\")[0]) !== -1);\n}\nvar Qr = {\n options: {\n html: !1,\n // Enable HTML tags in source\n xhtmlOut: !1,\n // Use '/' to close single tags (<br />)\n breaks: !1,\n // Convert '\\n' in paragraphs into <br>\n langPrefix: \"language-\",\n // CSS language prefix for fenced blocks\n linkTarget: \"\",\n // set target to open link in\n // Enable some language-neutral replacements + quotes beautification\n typographer: !1,\n // Double + single quotes replacement pairs, when typographer enabled,\n // and smartquotes on. Set doubles to '«»' for Russian, '„“' for German.\n quotes: \"“”‘’\",\n // Highlighter function. Should return escaped HTML,\n // or '' if input not changed\n //\n // function (/*str, lang*/) { return ''; }\n //\n highlight: null,\n maxNesting: 20\n // Internal protection, recursion limit\n },\n components: {\n core: {\n rules: [\"block\", \"inline\", \"references\", \"replacements\", \"smartquotes\", \"references\", \"abbr2\", \"footnote_tail\"]\n },\n block: {\n rules: [\"blockquote\", \"code\", \"fences\", \"footnote\", \"heading\", \"hr\", \"htmlblock\", \"lheading\", \"list\", \"paragraph\", \"table\"]\n },\n inline: {\n rules: [\"autolink\", \"backticks\", \"del\", \"emphasis\", \"entity\", \"escape\", \"footnote_ref\", \"htmltag\", \"links\", \"newline\", \"text\"]\n }\n }\n },\n eo = {\n options: {\n html: !1,\n // Enable HTML tags in source\n xhtmlOut: !1,\n // Use '/' to close single tags (<br />)\n breaks: !1,\n // Convert '\\n' in paragraphs into <br>\n langPrefix: \"language-\",\n // CSS language prefix for fenced blocks\n linkTarget: \"\",\n // set target to open link in\n // Enable some language-neutral replacements + quotes beautification\n typographer: !1,\n // Double + single quotes replacement pairs, when typographer enabled,\n // and smartquotes on. Set doubles to '«»' for Russian, '„“' for German.\n quotes: \"“”‘’\",\n // Highlighter function. Should return escaped HTML,\n // or '' if input not changed\n //\n // function (/*str, lang*/) { return ''; }\n //\n highlight: null,\n maxNesting: 20\n // Internal protection, recursion limit\n },\n components: {\n // Don't restrict core/block/inline rules\n core: {},\n block: {},\n inline: {}\n }\n },\n to = {\n options: {\n html: !0,\n // Enable HTML tags in source\n xhtmlOut: !0,\n // Use '/' to close single tags (<br />)\n breaks: !1,\n // Convert '\\n' in paragraphs into <br>\n langPrefix: \"language-\",\n // CSS language prefix for fenced blocks\n linkTarget: \"\",\n // set target to open link in\n // Enable some language-neutral replacements + quotes beautification\n typographer: !1,\n // Double + single quotes replacement pairs, when typographer enabled,\n // and smartquotes on. Set doubles to '«»' for Russian, '„“' for German.\n quotes: \"“”‘’\",\n // Highlighter function. Should return escaped HTML,\n // or '' if input not changed\n //\n // function (/*str, lang*/) { return ''; }\n //\n highlight: null,\n maxNesting: 20\n // Internal protection, recursion limit\n },\n components: {\n core: {\n rules: [\"block\", \"inline\", \"references\", \"abbr2\"]\n },\n block: {\n rules: [\"blockquote\", \"code\", \"fences\", \"heading\", \"hr\", \"htmlblock\", \"lheading\", \"list\", \"paragraph\"]\n },\n inline: {\n rules: [\"autolink\", \"backticks\", \"emphasis\", \"entity\", \"escape\", \"htmltag\", \"links\", \"newline\", \"text\"]\n }\n }\n },\n io = {\n \"default\": Qr,\n full: eo,\n commonmark: to\n };\nfunction ls(s, e, t) {\n this.src = e, this.env = t, this.options = s.options, this.tokens = [], this.inlineMode = !1, this.inline = s.inline, this.block = s.block, this.renderer = s.renderer, this.typographer = s.typographer;\n}\nfunction Ce(s, e) {\n typeof s != \"string\" && (e = s, s = \"default\"), e && e.linkify != null && console.warn(\"linkify option is removed. Use linkify plugin instead:\\n\\nimport Remarkable from 'remarkable';\\nimport linkify from 'remarkable/linkify';\\nnew Remarkable().use(linkify)\\n\"), this.inline = new _i(), this.block = new hn(), this.core = new os(), this.renderer = new dn(), this.ruler = new ne(), this.options = {}, this.configure(io[s]), this.set(e || {});\n}\nCe.prototype.set = function (s) {\n es(this.options, s);\n};\nCe.prototype.configure = function (s) {\n var e = this;\n if (!s) throw new Error(\"Wrong `remarkable` preset, check name/content\");\n s.options && e.set(s.options), s.components && Object.keys(s.components).forEach(function (t) {\n s.components[t].rules && e[t].ruler.enable(s.components[t].rules, !0);\n });\n};\nCe.prototype.use = function (s, e) {\n return s(this, e), this;\n};\nCe.prototype.parse = function (s, e) {\n var t = new ls(this, s, e);\n return this.core.process(t), t.tokens;\n};\nCe.prototype.render = function (s, e) {\n return e = e || {}, this.renderer.render(this.parse(s, e), this.options, e);\n};\nCe.prototype.parseInline = function (s, e) {\n var t = new ls(this, s, e);\n return t.inlineMode = !0, this.core.process(t), t.tokens;\n};\nCe.prototype.renderInline = function (s, e) {\n return e = e || {}, this.renderer.render(this.parseInline(s, e), this.options, e);\n};\nvar Rt = /*#__PURE__*/function () {\n function Rt() {\n _classCallCheck(this, Rt);\n }\n return _createClass(Rt, null, [{\n key: \"instantiate\",\n value: function instantiate() {\n var e = window.hljs;\n return e ? new Ce({\n highlight: function highlight(t, i) {\n if (i && e.getLanguage(i)) try {\n return e.highlight(i, t).value;\n } catch (_unused3) {\n console.error(\"failed to setup the highlight dependency\");\n }\n try {\n return e.highlightAuto(t).value;\n } catch (_unused4) {\n console.error(\"failed to automatically highlight messages\");\n }\n return \"\";\n },\n html: !1,\n // Enable HTML tags in source\n xhtmlOut: !1,\n // Use '/' to close single tags (<br />)\n breaks: !0,\n // Convert '\\n' in paragraphs into <br>\n langPrefix: \"language-\",\n // CSS language prefix for fenced blocks\n linkTarget: \"_blank\",\n // set target to open in a new tab\n typographer: !0\n // Enable smartypants and other sweet transforms\n }) : new Ce({\n breaks: !0,\n linkTarget: \"_blank\"\n // set target to open in a new tab\n });\n }\n }, {\n key: \"createNew\",\n value: function createNew() {\n var e = Rt.instantiate();\n return e.inline.validateLink = function () {\n return !0;\n }, e;\n }\n }]);\n}();\nvar Ee = /*#__PURE__*/function () {\n function Ee() {\n _classCallCheck(this, Ee);\n }\n return _createClass(Ee, null, [{\n key: \"addMessage\",\n value:\n // prettier-ignore\n function addMessage(e, t, i, n, r) {\n var o;\n e.applyCustomStyles(t, n, !0, (o = e.messageStyles) == null ? void 0 : o[i]), r || (e.elementRef.appendChild(t.outerContainer), e.elementRef.scrollTop = e.elementRef.scrollHeight);\n }\n }, {\n key: \"wrapInLink\",\n value: function wrapInLink(e, t, i) {\n var n = document.createElement(\"a\");\n return n.href = t, n.download = i || Ee.DEFAULT_FILE_NAME, n.target = \"_blank\", n.appendChild(e), n;\n }\n }, {\n key: \"isNonLinkableDataUrl\",\n value: function isNonLinkableDataUrl(e, t) {\n return !t.startsWith(\"data\") || e === \"image\" ? !1 : e === \"any\" && t.startsWith(\"data:text/javascript\") || !t.startsWith(\"data:image\") && !t.startsWith(\"data:application\");\n }\n }, {\n key: \"processContent\",\n value: function processContent(e, t, i, n) {\n return !i || Ee.isNonLinkableDataUrl(e, i) ? t : Ee.wrapInLink(t, i, n);\n }\n }, {\n key: \"waitToLoadThenScroll\",\n value: function waitToLoadThenScroll(e) {\n setTimeout(function () {\n e.scrollTop = e.scrollHeight;\n }, 60);\n }\n }, {\n key: \"scrollDownOnImageLoad\",\n value: function scrollDownOnImageLoad(e, t) {\n if (e.startsWith(\"data\")) Ee.waitToLoadThenScroll(t);else try {\n fetch(e, {\n mode: \"no-cors\"\n })[\"catch\"](function () {})[\"finally\"](function () {\n Ee.waitToLoadThenScroll(t);\n });\n } catch (_unused5) {\n t.scrollTop = t.scrollHeight;\n }\n }\n // The strategy is to emit the actual file reference in the `onMessage` event for the user to inspect it\n // But it is not actually used by anything in the chat, hence it is removed when adding a message\n // after the body has been stringified and parsed - the file reference will disappear, hence this readds it\n }, {\n key: \"reAddFileRefToObject\",\n value: function reAddFileRefToObject(e, t) {\n var i;\n (i = e.files) == null || i.forEach(function (n, r) {\n var o;\n n.ref && (o = t.message.files) != null && o[r] && (t.message.files[r].ref = n.ref);\n });\n }\n // the chat does not use the actual file\n }, {\n key: \"removeFileRef\",\n value: function removeFileRef(e) {\n var t = _objectSpread({}, e);\n return delete t.ref, t;\n }\n }, {\n key: \"isAudioFile\",\n value: function isAudioFile(e) {\n var t = /\\.(mp3|ogg|wav|aac|webm|4a)$/i,\n i = e.type,\n n = e.src;\n return i === \"audio\" || (n == null ? void 0 : n.startsWith(\"data:audio\")) || n && t.test(n);\n }\n }, {\n key: \"isImageFile\",\n value: function isImageFile(e) {\n var t = e.type,\n i = e.src;\n return t === \"image\" || (i == null ? void 0 : i.startsWith(\"data:image\")) || i && Ee.isImageFileExtension(i);\n }\n }, {\n key: \"isImageFileExtension\",\n value: function isImageFileExtension(e) {\n return /\\.(jpg|jpeg|png|gif|bmp)$/i.test(e);\n }\n }]);\n}();\nEe.DEFAULT_FILE_NAME = \"file\";\nvar F = Ee;\nvar ei = /*#__PURE__*/function () {\n function ei() {\n _classCallCheck(this, ei);\n }\n return _createClass(ei, null, [{\n key: \"onMessage\",\n value: function onMessage(e, t, i) {\n var r;\n var n = JSON.parse(JSON.stringify({\n message: t,\n isHistory: i,\n isInitial: i\n }));\n F.reAddFileRefToObject(t, n), (r = e.onMessage) == null || r.call(e, n), e.dispatchEvent(new CustomEvent(\"message\", {\n detail: n\n })), te.fireOnNewMessage(e, n);\n }\n }, {\n key: \"onClearMessages\",\n value: function onClearMessages(e) {\n var t;\n (t = e.onClearMessages) == null || t.call(e), e.dispatchEvent(new CustomEvent(\"clear-messages\"));\n }\n }, {\n key: \"onRender\",\n value: function onRender(e) {\n var t;\n (t = e.onComponentRender) == null || t.call(e, e), e.dispatchEvent(new CustomEvent(\"render\", {\n detail: e\n }));\n }\n }, {\n key: \"onError\",\n value: function onError(e, t) {\n var i;\n (i = e.onError) == null || i.call(e, t), e.dispatchEvent(new CustomEvent(\"error\", {\n detail: t\n }));\n }\n }]);\n}();\nvar H = /*#__PURE__*/function () {\n function H() {\n _classCallCheck(this, H);\n }\n return _createClass(H, null, [{\n key: \"applyCustomStylesToElements\",\n value: function applyCustomStylesToElements(e, t, i) {\n if (i && (Object.assign(e.outerContainer.style, i.outerContainer), Object.assign(e.innerContainer.style, i.innerContainer), Object.assign(e.bubbleElement.style, i.bubble), t)) {\n var n = e.bubbleElement.children[0],\n r = n.tagName.toLocaleLowerCase() !== \"a\" ? n : n.children[0];\n Object.assign(r.style, i.media);\n }\n }\n }, {\n key: \"applySideStyles\",\n value: function applySideStyles(e, t, i, n) {\n n && (H.applyCustomStylesToElements(e, i, n.shared), t === b.USER_ROLE ? H.applyCustomStylesToElements(e, i, n.user) : (H.applyCustomStylesToElements(e, i, n.ai), H.applyCustomStylesToElements(e, i, n[t])));\n }\n }, {\n key: \"isElementsStyles\",\n value: function isElementsStyles(e) {\n return !!(e.outerContainer || e.innerContainer || e.bubble || e.media);\n }\n // prettier-ignore\n }, {\n key: \"applyCustomStyles\",\n value: function applyCustomStyles(e, t, i, n, r) {\n var o;\n r && e[\"default\"] !== r ? H.isElementsStyles(r) ? (H.applyCustomStylesToElements(t, n, (o = e[\"default\"]) == null ? void 0 : o.shared), H.applyCustomStylesToElements(t, n, r)) : (H.applySideStyles(t, i, n, e[\"default\"]), H.applySideStyles(t, i, n, r)) : H.applySideStyles(t, i, n, e[\"default\"]);\n }\n // prettier-ignore\n }, {\n key: \"extractParticularSharedStyles\",\n value: function extractParticularSharedStyles(e, t) {\n if (!(t != null && t.shared)) return;\n var i = t.shared,\n n = {\n outerContainer: {},\n innerContainer: {},\n bubble: {},\n media: {}\n };\n return e.forEach(function (r) {\n var o, a, l, c;\n n.outerContainer[r] = ((o = i.outerContainer) == null ? void 0 : o[r]) || \"\", n.innerContainer[r] = ((a = i.innerContainer) == null ? void 0 : a[r]) || \"\", n.bubble[r] = ((l = i.bubble) == null ? void 0 : l[r]) || \"\", n.media[r] = ((c = i.media) == null ? void 0 : c[r]) || \"\";\n }), n;\n }\n }]);\n}();\nvar ct = /*#__PURE__*/function () {\n function ct(e) {\n var _this3 = this;\n _classCallCheck(this, ct);\n this.messageElementRefs = [], this.messages = [], this.htmlClassUtilities = {}, this.textElementsToText = [], this.elementRef = ct.createContainerElement(), this.messageStyles = e.messageStyles, this._remarkable = Rt.createNew(), this._avatars = e.avatars, this._names = e.names, this._onMessage = ei.onMessage.bind(this, e), e.htmlClassUtilities && (this.htmlClassUtilities = e.htmlClassUtilities), setTimeout(function () {\n _this3.submitUserMessage = e.submitUserMessage;\n });\n }\n return _createClass(ct, [{\n key: \"addNewTextMessage\",\n value:\n // remove intro message is loaded some messages\n function addNewTextMessage(e, t, i) {\n var n = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;\n if (i != null && i.status) {\n var a = this.overwriteText(t, e, this.messageElementRefs);\n if (a) return a;\n i.status = !1;\n }\n var r = n ? this.createAndPrependNewMessageElement(e, t, n) : this.createAndAppendNewMessageElement(e, t);\n r.bubbleElement.classList.add(\"text-message\"), this.applyCustomStyles(r, t, !1), b.fillEmptyMessageElement(r.bubbleElement, e);\n var o = [r, e];\n return b.updateRefArr(this.textElementsToText, o, n), r;\n }\n }, {\n key: \"overwriteText\",\n value: function overwriteText(e, t, i) {\n var n = b.overwriteMessage(this.messages, i, t, e, \"text\", \"text-message\");\n if (n) {\n this.renderText(n.bubbleElement, t);\n var r = b.getLastTextToElement(this.textElementsToText, n);\n r && (r[1] = t);\n }\n return n;\n }\n }, {\n key: \"createAndAppendNewMessageElement\",\n value: function createAndAppendNewMessageElement(e, t) {\n var _this4 = this;\n var i = this.createNewMessageElement(e, t);\n return this.elementRef.appendChild(i.outerContainer), setTimeout(function () {\n return q.scrollToBottom(_this4.elementRef);\n }), i;\n }\n }, {\n key: \"createAndPrependNewMessageElement\",\n value: function createAndPrependNewMessageElement(e, t, i) {\n var n = this.createNewMessageElement(e, t, i);\n return this.elementRef.insertBefore(n.outerContainer, this.elementRef.firstChild), n;\n }\n }, {\n key: \"createMessageElementsOnOrientation\",\n value: function createMessageElementsOnOrientation(e, t, i) {\n return i ? this.createAndPrependNewMessageElement(e, t, i) : this.createNewMessageElement(e, t, i);\n }\n }, {\n key: \"createNewMessageElement\",\n value: function createNewMessageElement(e, t) {\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !1;\n var r;\n (r = this._introPanel) == null || r.hide();\n var n = this.messageElementRefs[this.messageElementRefs.length - 1];\n return ct.isTemporaryElement(n) && (n.outerContainer.remove(), this.messageElementRefs.pop()), this.createMessageElements(e, t, i);\n }\n }, {\n key: \"createMessageElements\",\n value: function createMessageElements(e, t) {\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !1;\n var n = ct.createBaseElements(),\n r = n.outerContainer,\n o = n.innerContainer,\n a = n.bubbleElement;\n return r.appendChild(o), this.addInnerContainerElements(a, e, t), b.updateRefArr(this.messageElementRefs, n, i), n;\n }\n }, {\n key: \"addInnerContainerElements\",\n value:\n // prettier-ignore\n function addInnerContainerElements(e, t, i) {\n var n;\n return ((n = this.messages[this.messages.length - 1]) == null ? void 0 : n.role) === i && !this.isLastMessageError() && b.hideRoleElements(this.messageElementRefs, !!this._avatars, !!this._names), e.classList.add(\"message-bubble\", b.getRoleClass(i), i === b.USER_ROLE ? \"user-message-text\" : \"ai-message-text\"), this.renderText(e, t), b.addRoleElements(e, i, this._avatars, this._names), {\n bubbleElement: e\n };\n }\n // prettier-ignore\n }, {\n key: \"applyCustomStyles\",\n value: function applyCustomStyles(e, t, i, n) {\n e && this.messageStyles && H.applyCustomStyles(this.messageStyles, e, t, i, n);\n }\n }, {\n key: \"removeLastMessage\",\n value: function removeLastMessage() {\n this.messageElementRefs[this.messageElementRefs.length - 1].outerContainer.remove(), this.messageElementRefs.pop();\n }\n }, {\n key: \"isLastMessageError\",\n value: function isLastMessageError() {\n var e;\n return (e = b.getLastMessageBubbleElement(this.elementRef)) == null ? void 0 : e.classList.contains(\"error-message-text\");\n }\n }, {\n key: \"sendClientUpdate\",\n value: function sendClientUpdate(e) {\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !1;\n var i;\n (i = this._onMessage) == null || i.call(this, e, t);\n }\n }, {\n key: \"renderText\",\n value: function renderText(e, t) {\n e.innerHTML = this._remarkable.render(t), e.innerText.trim().length === 0 && (e.innerText = t);\n }\n // this is mostly used for enabling highlight.js to highlight code if it downloads later\n }, {\n key: \"refreshTextMessages\",\n value: function refreshTextMessages() {\n var _this5 = this;\n this._remarkable = Rt.createNew(), this.textElementsToText.forEach(function (e) {\n _this5.renderText(e[0].bubbleElement, e[1]);\n });\n }\n }], [{\n key: \"createContainerElement\",\n value: function createContainerElement() {\n var e = document.createElement(\"div\");\n return e.id = \"messages\", e;\n }\n }, {\n key: \"isTemporaryElement\",\n value: function isTemporaryElement(e) {\n return (e == null ? void 0 : e.bubbleElement.classList.contains(\"loading-message-text\")) || Pe.isElementTemporary(e);\n }\n }, {\n key: \"createBaseElements\",\n value: function createBaseElements() {\n var e = document.createElement(\"div\"),\n t = document.createElement(\"div\");\n t.classList.add(\"inner-message-container\"), e.appendChild(t), e.classList.add(\"outer-message-container\");\n var i = document.createElement(\"div\");\n return i.classList.add(\"message-bubble\"), t.appendChild(i), {\n outerContainer: e,\n innerContainer: t,\n bubbleElement: i\n };\n }\n }, {\n key: \"createMessageContent\",\n value: function createMessageContent(e) {\n var t = e.text,\n i = e.files,\n n = e.html,\n r = e._sessionId,\n o = e.role,\n a = {\n role: o || b.AI_ROLE\n };\n return t && (a.text = t), i && (a.files = i), n && (a.html = n), !t && !i && !n && (a.text = \"\"), r && (a._sessionId = r), a;\n }\n }]);\n}();\nvar Ie = /*#__PURE__*/function () {\n // used for extracting at end and for isStreaming\n function Ie(e) {\n _classCallCheck(this, Ie);\n this._fileAdded = !1, this._streamedContent = \"\", this._streamType = \"\", this._hasStreamEnded = !1, this._messages = e;\n }\n return _createClass(Ie, [{\n key: \"upsertStreamedMessage\",\n value: function upsertStreamedMessage(e) {\n var r;\n if (this._hasStreamEnded) return;\n if ((e == null ? void 0 : e.text) === void 0 && (e == null ? void 0 : e.html) === void 0) return console.error(A.INVALID_STREAM_EVENT);\n var t = (e == null ? void 0 : e.text) || (e == null ? void 0 : e.html) || \"\",\n i = q.isScrollbarAtBottomOfElement(this._messages.elementRef),\n n = (e == null ? void 0 : e.text) !== void 0 ? \"text\" : \"html\";\n if (!this._elements && this._streamedContent === \"\") this.setInitialState(n, t, e == null ? void 0 : e.role);else {\n if (this._streamType !== n) return console.error(A.INVALID_STREAM_EVENT_MIX);\n this.updateBasedOnType(t, n, (r = this._elements) == null ? void 0 : r.bubbleElement, e == null ? void 0 : e.overwrite);\n }\n i && q.scrollToBottom(this._messages.elementRef);\n }\n }, {\n key: \"setInitialState\",\n value: function setInitialState(e, t, i) {\n var _i8;\n this._streamType = e, (_i8 = i) !== null && _i8 !== void 0 ? _i8 : i = b.AI_ROLE, this._elements = e === \"text\" ? this._messages.addNewTextMessage(t, i) : ut.add(this._messages, t, i, this._messages.messageElementRefs), this._elements.bubbleElement.classList.add(Ie.MESSAGE_CLASS), this._streamedContent = t, this._activeMessageRole = i, this._message = _defineProperty({\n role: this._activeMessageRole\n }, e, this._streamedContent), this._messages.messages.push(this._message);\n }\n }, {\n key: \"updateBasedOnType\",\n value: function updateBasedOnType(e, t, i) {\n var n = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;\n b.unfillEmptyMessageElement(i, e), (t === \"text\" ? this.updateText : this.updateHTML).bind(this)(e, i, n);\n }\n }, {\n key: \"updateText\",\n value: function updateText(e, t, i) {\n this._streamedContent = i ? e : this._streamedContent + e, this._messages.textElementsToText[this._messages.textElementsToText.length - 1][1] = this._streamedContent, this._messages.renderText(t, this._streamedContent);\n }\n }, {\n key: \"updateHTML\",\n value: function updateHTML(e, t, i) {\n if (i) this._streamedContent = e, t.innerHTML = e;else {\n var n = document.createElement(\"span\");\n n.innerHTML = e, t.appendChild(n), this._streamedContent = Ie.HTML_CONTENT_PLACEHOLDER;\n }\n }\n }, {\n key: \"finaliseStreamedMessage\",\n value: function finaliseStreamedMessage() {\n var t, i;\n var e = this._messages.textElementsToText;\n if (!this._endStreamAfterOperation && !(this._fileAdded && !this._elements)) {\n if (!this._elements) throw Error(A.NO_VALID_STREAM_EVENTS_SENT);\n (t = this._elements.bubbleElement) != null && t.classList.contains(Ie.MESSAGE_CLASS) && (this._streamType === \"text\" ? (e[e.length - 1][1] = this._streamedContent, this._message && (this._message.text = this._streamedContent), this._messages.textToSpeech && lt.speak(this._streamedContent, this._messages.textToSpeech)) : this._streamType === \"html\" && (this._streamedContent === Ie.HTML_CONTENT_PLACEHOLDER && (this._streamedContent = ((i = this._elements.bubbleElement) == null ? void 0 : i.innerHTML) || \"\"), this._elements && ee.apply(this._messages, this._elements.outerContainer), this._message && (this._message.html = this._streamedContent)), this._message && this._messages.sendClientUpdate(ct.createMessageContent(this._message), !1), this._hasStreamEnded = !0);\n }\n }\n }, {\n key: \"markFileAdded\",\n value: function markFileAdded() {\n this._fileAdded = !0;\n }\n }, {\n key: \"newMessage\",\n value: function newMessage() {\n this.finaliseStreamedMessage(), this._elements = void 0, this._streamedContent = \"\", this._fileAdded = !1, this._hasStreamEnded = !1, this._activeMessageRole = void 0;\n }\n // prettier-ignore\n }, {\n key: \"endStreamAfterFileDownloaded\",\n value: function () {\n var _endStreamAfterFileDownloaded = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(e, t) {\n var r, _yield$t, i, n;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n this._endStreamAfterOperation = !0;\n _context.next = 3;\n return t();\n case 3:\n _yield$t = _context.sent;\n i = _yield$t.text;\n n = _yield$t.files;\n i && this.updateBasedOnType(i, \"text\", (r = this._elements) == null ? void 0 : r.bubbleElement, !0), this._endStreamAfterOperation = !1, this.finaliseStreamedMessage(), n && e.addNewMessage({\n files: n\n });\n case 7:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n function endStreamAfterFileDownloaded(_x, _x2) {\n return _endStreamAfterFileDownloaded.apply(this, arguments);\n }\n return endStreamAfterFileDownloaded;\n }()\n }]);\n}();\nIe.MESSAGE_CLASS = \"streamed-message\", Ie.HTML_CONTENT_PLACEHOLDER = \"htmlplaceholder\";\nvar me = Ie;\nvar He = /*#__PURE__*/function () {\n function He() {\n _classCallCheck(this, He);\n }\n return _createClass(He, null, [{\n key: \"tempRemoveContentHeader\",\n value: // need to pass stringifyBody boolean separately as binding is throwing an error for some reason\n // prettier-ignore\n function () {\n var _tempRemoveContentHeader = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(e, t, i) {\n var n, r;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n if (e != null && e.headers) {\n _context2.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n n = e.headers[He.CONTENT_TYPE];\n delete e.headers[He.CONTENT_TYPE];\n _context2.prev = 4;\n _context2.next = 7;\n return t(i);\n case 7:\n r = _context2.sent;\n _context2.next = 13;\n break;\n case 10:\n _context2.prev = 10;\n _context2.t0 = _context2[\"catch\"](4);\n throw e.headers[He.CONTENT_TYPE] = n, _context2.t0;\n case 13:\n return _context2.abrupt(\"return\", (e.headers[He.CONTENT_TYPE] = n, r));\n case 14:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, null, [[4, 10]]);\n }));\n function tempRemoveContentHeader(_x7, _x8, _x9) {\n return _tempRemoveContentHeader.apply(this, arguments);\n }\n return tempRemoveContentHeader;\n }()\n }, {\n key: \"displayError\",\n value: function displayError(e, t) {\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"Service error, please try again.\";\n if (console.error(t), _typeof(t) == \"object\") return t instanceof Error ? e.addNewErrorMessage(\"service\", t.message) : Array.isArray(t) || typeof t.error == \"string\" ? e.addNewErrorMessage(\"service\", t) : Object.keys(t).length === 0 ? e.addNewErrorMessage(\"service\", i) : e.addNewErrorMessage(\"service\", JSON.stringify(t));\n e.addNewErrorMessage(\"service\", t);\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, {\n key: \"fetch\",\n value: function (_fetch) {\n function fetch(_x3, _x4, _x5, _x6) {\n return _fetch.apply(this, arguments);\n }\n fetch.toString = function () {\n return _fetch.toString();\n };\n return fetch;\n }(function (e, t, i, n) {\n var o, a;\n var r = {\n method: ((o = e.connectSettings) == null ? void 0 : o.method) || \"POST\",\n headers: t\n };\n return r.method !== \"GET\" && (r.body = i ? JSON.stringify(n) : n), e.connectSettings.credentials && (r.credentials = e.connectSettings.credentials), fetch(((a = e.connectSettings) == null ? void 0 : a.url) || e.url || \"\", r);\n })\n }, {\n key: \"processResponseByType\",\n value: function processResponseByType(e) {\n var t = e.headers.get(\"content-type\");\n return t != null && t.includes(\"application/json\") ? e.json() : t != null && t.includes(\"text/plain\") || !t ? e : e.blob();\n }\n }, {\n key: \"processRequestInterceptor\",\n value: function () {\n var _processRequestInterceptor = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(e, t) {\n var o, i, n, r;\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return (o = e.requestInterceptor) == null ? void 0 : o.call(e, t);\n case 2:\n _context3.t0 = _context3.sent;\n if (_context3.t0) {\n _context3.next = 5;\n break;\n }\n _context3.t0 = t;\n case 5:\n i = _context3.t0;\n n = i;\n r = i;\n return _context3.abrupt(\"return\", {\n body: n.body,\n headers: n.headers,\n error: r.error\n });\n case 9:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3);\n }));\n function processRequestInterceptor(_x10, _x11) {\n return _processRequestInterceptor.apply(this, arguments);\n }\n return processRequestInterceptor;\n }()\n }, {\n key: \"validateResponseFormat\",\n value: function validateResponseFormat(e) {\n return e && _typeof(e) == \"object\" && (typeof e.error == \"string\" || typeof e.text == \"string\" || typeof e.html == \"string\" || Array.isArray(e.files));\n }\n }, {\n key: \"onInterceptorError\",\n value: function onInterceptorError(e, t, i) {\n e.addNewErrorMessage(\"service\", t), i == null || i();\n }\n }]);\n}();\nHe.CONTENT_TYPE = \"Content-Type\";\nvar v = He;\nfunction no(_x12, _x13) {\n return _no.apply(this, arguments);\n}\nfunction _no() {\n _no = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee125(s, e) {\n var t, i;\n return _regeneratorRuntime().wrap(function _callee125$(_context125) {\n while (1) switch (_context125.prev = _context125.next) {\n case 0:\n t = s.getReader();\n case 1:\n _context125.next = 3;\n return t.read();\n case 3:\n if ((i = _context125.sent).done) {\n _context125.next = 7;\n break;\n }\n e(i.value);\n case 5:\n _context125.next = 1;\n break;\n case 7:\n case \"end\":\n return _context125.stop();\n }\n }, _callee125);\n }));\n return _no.apply(this, arguments);\n}\nfunction so(s) {\n var e,\n t,\n i,\n n = !1;\n return function (o) {\n e === void 0 ? (e = o, t = 0, i = -1) : e = oo(e, o);\n var a = e.length;\n var l = 0;\n for (; t < a;) {\n n && (e[t] === 10 && (l = ++t), n = !1);\n var c = -1;\n for (; t < a && c === -1; ++t) switch (e[t]) {\n case 58:\n i === -1 && (i = t - l);\n break;\n case 13:\n n = !0;\n case 10:\n c = t;\n break;\n }\n if (c === -1) break;\n s(e.subarray(l, c), i), l = t, i = -1;\n }\n l === a ? e = void 0 : l !== 0 && (e = e.subarray(l), t -= l);\n };\n}\nfunction ro(s, e, t) {\n var i = Pn();\n var n = new TextDecoder();\n return function (o, a) {\n if (o.length === 0) t == null || t(i), i = Pn();else if (a > 0) {\n var l = n.decode(o.subarray(0, a)),\n c = a + (o[a + 1] === 32 ? 2 : 1),\n d = n.decode(o.subarray(c));\n switch (l) {\n case \"data\":\n i.data = i.data ? i.data + \"\\n\" + d : d;\n break;\n case \"event\":\n i.event = d;\n break;\n case \"id\":\n s(i.id = d);\n break;\n case \"retry\":\n var h = parseInt(d, 10);\n isNaN(h) || e(i.retry = h);\n break;\n }\n }\n };\n}\nfunction oo(s, e) {\n var t = new Uint8Array(s.length + e.length);\n return t.set(s), t.set(e, s.length), t;\n}\nfunction Pn() {\n return {\n data: \"\",\n event: \"\",\n id: \"\",\n retry: void 0\n };\n}\nvar ao = function ao(s, e) {\n var t = {};\n for (var i in s) Object.prototype.hasOwnProperty.call(s, i) && e.indexOf(i) < 0 && (t[i] = s[i]);\n if (s != null && typeof Object.getOwnPropertySymbols == \"function\") for (var n = 0, i = Object.getOwnPropertySymbols(s); n < i.length; n++) e.indexOf(i[n]) < 0 && Object.prototype.propertyIsEnumerable.call(s, i[n]) && (t[i[n]] = s[i[n]]);\n return t;\n};\nvar Xi = \"text/event-stream\",\n lo = 1e3,\n On = \"last-event-id\";\nfunction co(s, e) {\n var t = e.signal,\n i = e.headers,\n n = e.onopen,\n r = e.onmessage,\n o = e.onclose,\n a = e.onerror,\n l = e.openWhenHidden,\n c = e.fetch,\n d = ao(e, [\"signal\", \"headers\", \"onopen\", \"onmessage\", \"onclose\", \"onerror\", \"openWhenHidden\", \"fetch\"]);\n return new Promise(function (h, u) {\n var f = Object.assign({}, i);\n f.accept || (f.accept = Xi);\n var m;\n function p() {\n m.abort(), document.hidden || R();\n }\n l || document.addEventListener(\"visibilitychange\", p);\n var y = lo,\n x = 0;\n function j() {\n document.removeEventListener(\"visibilitychange\", p), window.clearTimeout(x), m.abort();\n }\n t == null || t.addEventListener(\"abort\", function () {\n j(), h();\n });\n var V = c !== null && c !== void 0 ? c : window.fetch,\n Ae = n !== null && n !== void 0 ? n : ho;\n function R() {\n return _R.apply(this, arguments);\n }\n function _R() {\n _R = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {\n var X, Z, D;\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n m = new AbortController();\n _context4.prev = 1;\n _context4.next = 4;\n return V(s, Object.assign(Object.assign({}, d), {\n headers: f,\n signal: m.signal\n }));\n case 4:\n Z = _context4.sent;\n _context4.next = 7;\n return Ae(Z);\n case 7:\n _context4.next = 9;\n return no(Z.body, so(ro(function (D) {\n D ? f[On] = D : delete f[On];\n }, function (D) {\n y = D;\n }, r)));\n case 9:\n o == null || o();\n j();\n h();\n _context4.next = 17;\n break;\n case 14:\n _context4.prev = 14;\n _context4.t0 = _context4[\"catch\"](1);\n if (!m.signal.aborted) try {\n D = (X = a == null ? void 0 : a(_context4.t0)) !== null && X !== void 0 ? X : y;\n window.clearTimeout(x), x = window.setTimeout(R, D);\n } catch (D) {\n j(), u(D);\n }\n case 17:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4, null, [[1, 14]]);\n }));\n return _R.apply(this, arguments);\n }\n R();\n });\n}\nfunction ho(s) {\n var e = s.headers.get(\"content-type\");\n if (!(e != null && e.startsWith(Xi))) throw new Error(\"Expected content-type to be \".concat(Xi, \", Actual: \").concat(e));\n}\nvar C = /*#__PURE__*/function () {\n function C() {\n _classCallCheck(this, C);\n }\n return _createClass(C, null, [{\n key: \"request\",\n value: // prettier-ignore\n function () {\n var _request = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(e, t, i) {\n var n,\n r,\n p,\n y,\n x,\n j,\n V,\n Ae,\n o,\n _yield$v$processReque,\n a,\n l,\n c,\n _e$streamHandlers,\n d,\n h,\n u,\n f,\n m,\n _args7 = arguments;\n return _regeneratorRuntime().wrap(function _callee7$(_context7) {\n while (1) switch (_context7.prev = _context7.next) {\n case 0:\n n = _args7.length > 3 && _args7[3] !== undefined ? _args7[3] : !0;\n r = _args7.length > 4 && _args7[4] !== undefined ? _args7[4] : !1;\n o = {\n body: t,\n headers: (p = e.connectSettings) == null ? void 0 : p.headers\n };\n _context7.next = 5;\n return v.processRequestInterceptor(e.deepChat, o);\n case 5:\n _yield$v$processReque = _context7.sent;\n a = _yield$v$processReque.body;\n l = _yield$v$processReque.headers;\n c = _yield$v$processReque.error;\n _e$streamHandlers = e.streamHandlers;\n d = _e$streamHandlers.onOpen;\n h = _e$streamHandlers.onClose;\n u = _e$streamHandlers.abortStream;\n if (!c) {\n _context7.next = 15;\n break;\n }\n return _context7.abrupt(\"return\", v.onInterceptorError(i, c, h));\n case 15:\n if (!((y = e.connectSettings) != null && y.handler)) {\n _context7.next = 17;\n break;\n }\n return _context7.abrupt(\"return\", we.stream(e, a, i));\n case 17:\n if (!(((x = e.connectSettings) == null ? void 0 : x.url) === ge.URL)) {\n _context7.next = 19;\n break;\n }\n return _context7.abrupt(\"return\", ge.requestStream(i, e.streamHandlers));\n case 19:\n f = new me(i), m = v.fetch.bind(this, e, l, n);\n return _context7.abrupt(\"return\", (co(((j = e.connectSettings) == null ? void 0 : j.url) || e.url || \"\", {\n method: ((V = e.connectSettings) == null ? void 0 : V.method) || \"POST\",\n headers: l,\n credentials: (Ae = e.connectSettings) == null ? void 0 : Ae.credentials,\n body: n ? JSON.stringify(a) : a,\n openWhenHidden: !0,\n // keep stream open when browser tab not open\n onopen: function onopen(R) {\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n if (!R.ok) {\n _context5.next = 2;\n break;\n }\n return _context5.abrupt(\"return\", d());\n case 2:\n _context5.next = 4;\n return v.processResponseByType(R);\n case 4:\n throw _context5.sent;\n case 5:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5);\n }))();\n },\n onmessage: function onmessage(R) {\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n var X, Z, D, Ne, gt;\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n if (!(JSON.stringify(R.data) !== JSON.stringify(\"[DONE]\"))) {\n _context6.next = 9;\n break;\n }\n try {\n Ne = JSON.parse(R.data);\n } catch (_unused6) {\n Ne = {};\n }\n _context6.next = 4;\n return (Z = (X = e.deepChat).responseInterceptor) == null ? void 0 : Z.call(X, Ne);\n case 4:\n _context6.t0 = _context6.sent;\n if (_context6.t0) {\n _context6.next = 7;\n break;\n }\n _context6.t0 = Ne;\n case 7:\n gt = _context6.t0;\n (D = e.extractResultData) == null || D.call(e, gt, m, a).then(function (De) {\n e.asyncCallInProgress && De && De.text !== \"\" ? (C.simulate(i, e.streamHandlers, De), h(), e.asyncCallInProgress = !1) : C.upsertWFiles(i, f.upsertStreamedMessage.bind(f), f, De);\n })[\"catch\"](function (De) {\n return v.displayError(i, De);\n });\n case 9:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6);\n }))();\n },\n onerror: function onerror(R) {\n throw h(), R;\n },\n onclose: function onclose() {\n if (!e.asyncCallInProgress) try {\n f.finaliseStreamedMessage(), h();\n } catch (R) {\n if (!r) throw R;\n }\n },\n signal: u.signal\n })[\"catch\"](function (R) {\n var X;\n i.isLastMessageError() || (X = e.extractResultData) == null || X.call(e, R).then(function () {\n v.displayError(i, R);\n })[\"catch\"](function (Z) {\n v.displayError(i, Z);\n });\n }), f));\n case 21:\n case \"end\":\n return _context7.stop();\n }\n }, _callee7, this);\n }));\n function request(_x14, _x15, _x16) {\n return _request.apply(this, arguments);\n }\n return request;\n }()\n }, {\n key: \"simulate\",\n value: function simulate(e, t, i) {\n var n = t;\n if (i.files && e.addNewMessage(_objectSpread({\n sendUpdate: !1,\n ignoreText: !0\n }, i), !1), i.text) {\n t.onOpen();\n var r = i.text.split(\"\");\n C.populateMessages(r, new me(e), n, \"text\");\n }\n if (i.html) {\n t.onOpen();\n var _r2 = ee.splitHTML(i.html);\n C.populateMessages(_r2, new me(e), n, \"html\");\n }\n }\n // prettier-ignore\n }, {\n key: \"populateMessages\",\n value: function populateMessages(e, t, i, n) {\n var r = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;\n var o = e[r];\n if (o) {\n t.upsertStreamedMessage(_defineProperty({}, n, o));\n var a = setTimeout(function () {\n C.populateMessages(e, t, i, n, r + 1);\n }, i.simulationInterim || 6);\n i.abortStream.abort = function () {\n C.abort(a, t, i.onClose);\n };\n } else t.finaliseStreamedMessage(), i.onClose();\n }\n }, {\n key: \"isSimulation\",\n value: function isSimulation(e) {\n return _typeof(e) == \"object\" && !!e.simulation;\n }\n }, {\n key: \"isSimulatable\",\n value: function isSimulatable(e, t) {\n return C.isSimulation(e) && t && (t.text || t.html);\n }\n }, {\n key: \"abort\",\n value: function abort(e, t, i) {\n clearTimeout(e), t.finaliseStreamedMessage(), i();\n }\n }, {\n key: \"upsertWFiles\",\n value: function upsertWFiles(e, t, i, n) {\n if (n != null && n.text || n != null && n.html) {\n var _i9;\n var r = t(n);\n (_i9 = i) !== null && _i9 !== void 0 ? _i9 : i = r || void 0;\n }\n n != null && n.files && (e.addNewMessage({\n files: n.files\n }), i == null || i.markFileAdded());\n }\n }]);\n}();\nvar qe = /*#__PURE__*/function () {\n function qe() {\n _classCallCheck(this, qe);\n }\n return _createClass(qe, null, [{\n key: \"generateResponse\",\n value: function generateResponse(e) {\n var t = e.messages[e.messages.length - 1];\n if (t.files && t.files.length > 0) {\n if (t.files.length > 1) return \"These are interesting files!\";\n var i = t.files[0];\n return i.src && i.src.startsWith(\"data:image/gif\") ? \"That is a nice gif!\" : i.type === \"image\" ? \"That is a nice image!\" : i.type === \"audio\" ? \"I like the sound of that!\" : \"That is an interesting file!\";\n }\n if (t.text) {\n if (t.text.charAt(t.text.length - 1) === \"?\") return \"I'm sorry but I can't answer that question...\";\n if (t.text.includes(\"updog\")) return \"What's updog?\";\n }\n return \"Hi there! This is a demo response!\";\n }\n }, {\n key: \"getCustomResponse\",\n value: function getCustomResponse(e, t) {\n return typeof e == \"function\" ? e(t) : e;\n }\n }, {\n key: \"getResponse\",\n value: function getResponse(e) {\n return e.customDemoResponse ? qe.getCustomResponse(e.customDemoResponse, e.messages[e.messages.length - 1]) : {\n text: qe.generateResponse(e)\n };\n }\n // timeout is used to simulate a timeout for a response to come back\n }, {\n key: \"request\",\n value: function request(e, t) {\n var i = qe.getResponse(t);\n setTimeout( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {\n var r, o, n;\n return _regeneratorRuntime().wrap(function _callee8$(_context8) {\n while (1) switch (_context8.prev = _context8.next) {\n case 0:\n _context8.next = 2;\n return (o = (r = e.deepChat).responseInterceptor) == null ? void 0 : o.call(r, i);\n case 2:\n _context8.t0 = _context8.sent;\n if (_context8.t0) {\n _context8.next = 5;\n break;\n }\n _context8.t0 = i;\n case 5:\n n = _context8.t0;\n n.error ? (t.addNewErrorMessage(\"service\", n.error), e.completionsHandlers.onFinish()) : C.isSimulatable(e.stream, n) ? C.simulate(t, e.streamHandlers, n) : (t.addNewMessage(n), e.completionsHandlers.onFinish());\n case 7:\n case \"end\":\n return _context8.stop();\n }\n }, _callee8);\n })), 400);\n }\n // timeout is used to simulate a timeout for a response to come back\n }, {\n key: \"requestStream\",\n value: function requestStream(e, t) {\n setTimeout(function () {\n var i = qe.getResponse(e);\n C.simulate(e, t, i);\n }, 400);\n }\n }]);\n}();\nqe.URL = \"deep-chat-demo\";\nvar ge = qe;\nvar B = /*#__PURE__*/function () {\n function B() {\n _classCallCheck(this, B);\n }\n return _createClass(B, null, [{\n key: \"setup\",\n value: function setup(e) {\n e.connectSettings.url !== ge.URL && (e.permittedErrorPrefixes = [\"Connection error\", \"Error in server message\"], e.websocket = \"pending\");\n }\n }, {\n key: \"isElementPresentInDOM\",\n value: function isElementPresentInDOM(e) {\n return e.getRootNode({\n composed: !0\n }) instanceof Document;\n }\n }, {\n key: \"createConnection\",\n value: function createConnection(e, t) {\n if (!B.isElementPresentInDOM(e.deepChat)) return;\n var i = e.connectSettings.websocket;\n if (i) {\n if (e.connectSettings.handler) return we.websocket(e, t);\n try {\n var n = typeof i != \"boolean\" ? i : void 0,\n r = new WebSocket(e.connectSettings.url || \"\", n);\n e.websocket = r, e.websocket.onopen = function () {\n var o, a;\n t.removeError(), e.websocket && _typeof(e.websocket) == \"object\" && B.assignListeners(e, r, t), (a = (o = e.deepChat)._validationHandler) == null || a.call(o);\n }, e.websocket.onerror = function (o) {\n console.error(o), B.retryConnection(e, t);\n };\n } catch (n) {\n console.error(n), B.retryConnection(e, t);\n }\n }\n }\n }, {\n key: \"retryConnection\",\n value: function retryConnection(e, t) {\n var i, n;\n (n = (i = e.deepChat)._validationHandler) == null || n.call(i), B.isElementPresentInDOM(e.deepChat) && (e.websocket = \"pending\", t.isLastMessageError() || t.addNewErrorMessage(\"service\", \"Connection error\"), setTimeout(function () {\n B.createConnection(e, t);\n }, 5e3));\n }\n }, {\n key: \"assignListeners\",\n value: function assignListeners(e, t, i) {\n var _this6 = this;\n var n = {};\n t.onmessage = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(r) {\n var o, a, l, c, d, h, u;\n return _regeneratorRuntime().wrap(function _callee9$(_context9) {\n while (1) switch (_context9.prev = _context9.next) {\n case 0:\n if (!e.extractResultData) {\n _context9.next = 20;\n break;\n }\n _context9.prev = 1;\n l = JSON.parse(r.data);\n _context9.next = 5;\n return (a = (o = e.deepChat).responseInterceptor) == null ? void 0 : a.call(o, l);\n case 5:\n _context9.t0 = _context9.sent;\n if (_context9.t0) {\n _context9.next = 8;\n break;\n }\n _context9.t0 = l;\n case 8:\n c = _context9.t0;\n _context9.next = 11;\n return e.extractResultData(c);\n case 11:\n d = _context9.sent;\n if (!(!d || _typeof(d) != \"object\")) {\n _context9.next = 14;\n break;\n }\n throw Error(A.INVALID_RESPONSE(l, \"server\", !!e.deepChat.responseInterceptor, c));\n case 14:\n if (C.isSimulation(e.stream)) {\n h = B.stream.bind(_this6, e, i, n), u = n[l.role || b.AI_ROLE];\n C.upsertWFiles(i, h, u, d);\n } else i.addNewMessage(d);\n _context9.next = 20;\n break;\n case 17:\n _context9.prev = 17;\n _context9.t1 = _context9[\"catch\"](1);\n v.displayError(i, _context9.t1, \"Error in server message\");\n case 20:\n case \"end\":\n return _context9.stop();\n }\n }, _callee9, null, [[1, 17]]);\n }));\n return function (_x17) {\n return _ref2.apply(this, arguments);\n };\n }(), t.onclose = function () {\n console.error(\"Connection closed\"), i.isLastMessageError() || i.addNewErrorMessage(\"service\", \"Connection error\"), e.stream && e.streamHandlers.abortStream.abort(), B.createConnection(e, i);\n };\n }\n }, {\n key: \"sendWebsocket\",\n value: function () {\n var _sendWebsocket = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(e, t, i) {\n var n,\n d,\n h,\n r,\n o,\n _yield$v$processReque2,\n a,\n l,\n c,\n _args10 = arguments;\n return _regeneratorRuntime().wrap(function _callee10$(_context10) {\n while (1) switch (_context10.prev = _context10.next) {\n case 0:\n n = _args10.length > 3 && _args10[3] !== undefined ? _args10[3] : !0;\n r = e.websocket;\n if (!(!r || r === \"pending\")) {\n _context10.next = 4;\n break;\n }\n return _context10.abrupt(\"return\");\n case 4:\n o = {\n body: t,\n headers: (d = e.connectSettings) == null ? void 0 : d.headers\n };\n _context10.next = 7;\n return v.processRequestInterceptor(e.deepChat, o);\n case 7:\n _yield$v$processReque2 = _context10.sent;\n a = _yield$v$processReque2.body;\n l = _yield$v$processReque2.error;\n if (!l) {\n _context10.next = 12;\n break;\n }\n return _context10.abrupt(\"return\", i.addNewErrorMessage(\"service\", l));\n case 12:\n if (B.isWebSocket(r)) {\n _context10.next = 14;\n break;\n }\n return _context10.abrupt(\"return\", r.newUserMessage.listener(a));\n case 14:\n c = n ? JSON.stringify(a) : a;\n if (!(((h = e.connectSettings) == null ? void 0 : h.url) === ge.URL)) {\n _context10.next = 17;\n break;\n }\n return _context10.abrupt(\"return\", ge.request(e, i));\n case 17:\n r.readyState === void 0 || r.readyState !== r.OPEN ? (console.error(\"Connection is not open\"), i.isLastMessageError() || i.addNewErrorMessage(\"service\", \"Connection error\")) : (r.send(JSON.stringify(c)), e.completionsHandlers.onFinish());\n case 18:\n case \"end\":\n return _context10.stop();\n }\n }, _callee10);\n }));\n function sendWebsocket(_x18, _x19, _x20) {\n return _sendWebsocket.apply(this, arguments);\n }\n return sendWebsocket;\n }()\n }, {\n key: \"canSendMessage\",\n value: function canSendMessage(e) {\n return e ? e === \"pending\" ? !1 : B.isWebSocket(e) ? e.readyState !== void 0 && e.readyState === e.OPEN : e.isOpen : !0;\n }\n // if false then it is the internal websocket handler\n }, {\n key: \"isWebSocket\",\n value: function isWebSocket(e) {\n return e.send !== void 0;\n }\n }, {\n key: \"stream\",\n value: function stream(e, t, i, n) {\n if (!n) return;\n var r = e.stream.simulation;\n if (typeof r == \"string\") {\n var _i$o;\n var o = n.role || b.AI_ROLE,\n a = i[o];\n n.text === r || n.html === r ? (a == null || a.finaliseStreamedMessage(), delete i[o]) : ((_i$o = i[o]) !== null && _i$o !== void 0 ? _i$o : i[o] = new me(t), i[o].upsertStreamedMessage(n));\n } else C.simulate(t, e.streamHandlers, n);\n }\n }]);\n}();\nvar we = /*#__PURE__*/function () {\n function we() {\n _classCallCheck(this, we);\n }\n return _createClass(we, null, [{\n key: \"request\",\n value: function () {\n var _request2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(e, t, i) {\n var a, l, n, r, o;\n return _regeneratorRuntime().wrap(function _callee12$(_context12) {\n while (1) switch (_context12.prev = _context12.next) {\n case 0:\n n = !0;\n r = /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11(c) {\n var h, u, d;\n return _regeneratorRuntime().wrap(function _callee11$(_context11) {\n while (1) switch (_context11.prev = _context11.next) {\n case 0:\n if (n) {\n _context11.next = 2;\n break;\n }\n return _context11.abrupt(\"return\");\n case 2:\n n = !1;\n _context11.next = 5;\n return (u = (h = e.deepChat).responseInterceptor) == null ? void 0 : u.call(h, c);\n case 5:\n _context11.t0 = _context11.sent;\n if (_context11.t0) {\n _context11.next = 8;\n break;\n }\n _context11.t0 = c;\n case 8:\n d = _context11.t0;\n v.validateResponseFormat(d) ? typeof d.error == \"string\" ? (console.error(d.error), i.addNewErrorMessage(\"service\", d.error), e.completionsHandlers.onFinish()) : C.isSimulatable(e.stream, d) ? C.simulate(i, e.streamHandlers, d) : (i.addNewMessage(d), e.completionsHandlers.onFinish()) : (console.error(A.INVALID_RESPONSE(c, \"server\", !!e.deepChat.responseInterceptor, d)), i.addNewErrorMessage(\"service\", \"Error in server message\"), e.completionsHandlers.onFinish());\n case 10:\n case \"end\":\n return _context11.stop();\n }\n }, _callee11);\n }));\n return function r(_x24) {\n return _ref3.apply(this, arguments);\n };\n }(), o = we.generateOptionalSignals();\n (l = (a = e.connectSettings).handler) == null || l.call(a, t, _objectSpread(_objectSpread({}, o), {}, {\n onResponse: r\n }));\n case 3:\n case \"end\":\n return _context12.stop();\n }\n }, _callee12);\n }));\n function request(_x21, _x22, _x23) {\n return _request2.apply(this, arguments);\n }\n return request;\n }()\n }, {\n key: \"attemptToFinaliseStream\",\n value: function attemptToFinaliseStream(e, t) {\n try {\n e.finaliseStreamedMessage();\n } catch (i) {\n console.error(i), t.addNewErrorMessage(\"service\", i);\n }\n }\n // prettier-ignore\n }, {\n key: \"stream\",\n value: function stream(e, t, i) {\n var h, u;\n var n = !0,\n r = !1;\n var o = new me(i),\n a = function a() {\n r || !n || (e.streamHandlers.onOpen(), r = !0);\n },\n l = function l() {\n n && (we.attemptToFinaliseStream(o, i), e.streamHandlers.onClose(), n = !1);\n },\n c = /*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(f) {\n var p, y, m;\n return _regeneratorRuntime().wrap(function _callee13$(_context13) {\n while (1) switch (_context13.prev = _context13.next) {\n case 0:\n if (n) {\n _context13.next = 2;\n break;\n }\n return _context13.abrupt(\"return\");\n case 2:\n _context13.next = 4;\n return (y = (p = e.deepChat).responseInterceptor) == null ? void 0 : y.call(p, f);\n case 4:\n _context13.t0 = _context13.sent;\n if (_context13.t0) {\n _context13.next = 7;\n break;\n }\n _context13.t0 = f;\n case 7:\n m = _context13.t0;\n v.validateResponseFormat(m) ? m.error ? (console.error(m.error), o.finaliseStreamedMessage(), i.addNewErrorMessage(\"service\", m.error), e.streamHandlers.onClose(), n = !1) : C.upsertWFiles(i, o.upsertStreamedMessage.bind(o), o, m) : console.error(A.INVALID_RESPONSE(f, \"server\", !!e.deepChat.responseInterceptor, m));\n case 9:\n case \"end\":\n return _context13.stop();\n }\n }, _callee13);\n }));\n return function c(_x25) {\n return _ref4.apply(this, arguments);\n };\n }();\n e.streamHandlers.abortStream.abort = function () {\n we.attemptToFinaliseStream(o, i), e.streamHandlers.onClose(), n = !1;\n };\n var d = we.generateOptionalSignals();\n (u = (h = e.connectSettings).handler) == null || u.call(h, t, _objectSpread(_objectSpread({}, d), {}, {\n onOpen: a,\n onResponse: c,\n onClose: l,\n stopClicked: e.streamHandlers.stopClicked\n }));\n }\n // prettier-ignore\n }, {\n key: \"websocket\",\n value: function websocket(e, t) {\n var _this7 = this;\n var l, c;\n var i = {\n isOpen: !1,\n newUserMessage: {\n listener: function listener() {}\n },\n roleToStream: {}\n };\n e.websocket = i;\n var n = function n() {\n t.removeError(), i.isOpen = !0;\n },\n r = function r() {\n i.isOpen = !1;\n },\n o = /*#__PURE__*/function () {\n var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14(d) {\n var u, f, h, m, p;\n return _regeneratorRuntime().wrap(function _callee14$(_context14) {\n while (1) switch (_context14.prev = _context14.next) {\n case 0:\n if (i.isOpen) {\n _context14.next = 2;\n break;\n }\n return _context14.abrupt(\"return\");\n case 2:\n _context14.next = 4;\n return (f = (u = e.deepChat).responseInterceptor) == null ? void 0 : f.call(u, d);\n case 4:\n _context14.t0 = _context14.sent;\n if (_context14.t0) {\n _context14.next = 7;\n break;\n }\n _context14.t0 = d;\n case 7:\n h = _context14.t0;\n if (!v.validateResponseFormat(h)) console.error(A.INVALID_RESPONSE(d, \"server\", !!e.deepChat.responseInterceptor, h)), t.addNewErrorMessage(\"service\", \"Error in server message\");else if (typeof h.error == \"string\") console.error(h.error), t.isLastMessageError() || t.addNewErrorMessage(\"service\", h.error);else if (C.isSimulation(e.stream)) {\n m = B.stream.bind(_this7, e, t, i.roleToStream), p = i.roleToStream[d.role || b.AI_ROLE];\n C.upsertWFiles(t, m, p, d);\n } else t.addNewMessage(h);\n case 9:\n case \"end\":\n return _context14.stop();\n }\n }, _callee14);\n }));\n return function o(_x26) {\n return _ref5.apply(this, arguments);\n };\n }(),\n a = we.generateOptionalSignals();\n (c = (l = e.connectSettings).handler) == null || c.call(l, void 0, _objectSpread(_objectSpread({}, a), {}, {\n onOpen: n,\n onResponse: o,\n onClose: r,\n newUserMessage: i.newUserMessage\n }));\n }\n }, {\n key: \"generateOptionalSignals\",\n value: function generateOptionalSignals() {\n return {\n onClose: function onClose() {},\n onOpen: function onOpen() {},\n stopClicked: {\n listener: function listener() {}\n },\n newUserMessage: {\n listener: function listener() {}\n }\n };\n }\n }]);\n}();\nvar T = /*#__PURE__*/function () {\n function T() {\n _classCallCheck(this, T);\n }\n return _createClass(T, null, [{\n key: \"request\",\n value: // prettier-ignore\n function () {\n var _request3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(e, t, i) {\n var n,\n u,\n f,\n m,\n r,\n _yield$v$processReque3,\n o,\n a,\n l,\n c,\n d,\n h,\n _args16 = arguments;\n return _regeneratorRuntime().wrap(function _callee16$(_context16) {\n while (1) switch (_context16.prev = _context16.next) {\n case 0:\n n = _args16.length > 3 && _args16[3] !== undefined ? _args16[3] : !0;\n r = {\n body: t,\n headers: (u = e.connectSettings) == null ? void 0 : u.headers\n };\n _context16.next = 4;\n return v.processRequestInterceptor(e.deepChat, r);\n case 4:\n _yield$v$processReque3 = _context16.sent;\n o = _yield$v$processReque3.body;\n a = _yield$v$processReque3.headers;\n l = _yield$v$processReque3.error;\n c = e.completionsHandlers.onFinish;\n if (!l) {\n _context16.next = 11;\n break;\n }\n return _context16.abrupt(\"return\", v.onInterceptorError(i, l, c));\n case 11:\n if (!((f = e.connectSettings) != null && f.handler)) {\n _context16.next = 13;\n break;\n }\n return _context16.abrupt(\"return\", we.request(e, o, i));\n case 13:\n if (!(((m = e.connectSettings) == null ? void 0 : m.url) === ge.URL)) {\n _context16.next = 15;\n break;\n }\n return _context16.abrupt(\"return\", ge.request(e, i));\n case 15:\n d = !0;\n h = v.fetch.bind(this, e, a, n);\n h(o).then(function (p) {\n return d = !!p.ok, p;\n }).then(function (p) {\n return v.processResponseByType(p);\n }).then( /*#__PURE__*/function () {\n var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15(p) {\n var j, V, y, x;\n return _regeneratorRuntime().wrap(function _callee15$(_context15) {\n while (1) switch (_context15.prev = _context15.next) {\n case 0:\n if (e.extractResultData) {\n _context15.next = 2;\n break;\n }\n return _context15.abrupt(\"return\");\n case 2:\n _context15.next = 4;\n return (V = (j = e.deepChat).responseInterceptor) == null ? void 0 : V.call(j, p);\n case 4:\n _context15.t0 = _context15.sent;\n if (_context15.t0) {\n _context15.next = 7;\n break;\n }\n _context15.t0 = p;\n case 7:\n y = _context15.t0;\n _context15.next = 10;\n return e.extractResultData(y, h, o);\n case 10:\n x = _context15.sent;\n if (d) {\n _context15.next = 13;\n break;\n }\n throw p;\n case 13:\n if (!(!x || _typeof(x) != \"object\")) {\n _context15.next = 15;\n break;\n }\n throw Error(A.INVALID_RESPONSE(p, \"response\", !!e.deepChat.responseInterceptor, y));\n case 15:\n x.makingAnotherRequest || (C.isSimulatable(e.stream, x) ? C.simulate(i, e.streamHandlers, x) : (i.addNewMessage(x), c()));\n case 16:\n case \"end\":\n return _context15.stop();\n }\n }, _callee15);\n }));\n return function (_x30) {\n return _ref6.apply(this, arguments);\n };\n }())[\"catch\"](function (p) {\n v.displayError(i, p), c();\n });\n case 18:\n case \"end\":\n return _context16.stop();\n }\n }, _callee16, this);\n }));\n function request(_x27, _x28, _x29) {\n return _request3.apply(this, arguments);\n }\n return request;\n }()\n }, {\n key: \"executePollRequest\",\n value: function executePollRequest(e, t, i, n) {\n var r = e.completionsHandlers.onFinish;\n fetch(t, i).then(function (o) {\n return o.json();\n }).then( /*#__PURE__*/function () {\n var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17(o) {\n var l, c, a;\n return _regeneratorRuntime().wrap(function _callee17$(_context17) {\n while (1) switch (_context17.prev = _context17.next) {\n case 0:\n if (e.extractPollResultData) {\n _context17.next = 2;\n break;\n }\n return _context17.abrupt(\"return\");\n case 2:\n _context17.t0 = e;\n _context17.next = 5;\n return (c = (l = e.deepChat).responseInterceptor) == null ? void 0 : c.call(l, o);\n case 5:\n _context17.t1 = _context17.sent;\n if (_context17.t1) {\n _context17.next = 8;\n break;\n }\n _context17.t1 = o;\n case 8:\n _context17.t2 = _context17.t1;\n _context17.next = 11;\n return _context17.t0.extractPollResultData.call(_context17.t0, _context17.t2);\n case 11:\n a = _context17.sent;\n a.timeoutMS ? setTimeout(function () {\n T.executePollRequest(e, t, i, n);\n }, a.timeoutMS) : C.isSimulatable(e.stream, a) ? C.simulate(n, e.streamHandlers, a) : (n.addNewMessage(a), r());\n case 13:\n case \"end\":\n return _context17.stop();\n }\n }, _callee17);\n }));\n return function (_x31) {\n return _ref7.apply(this, arguments);\n };\n }())[\"catch\"](function (o) {\n v.displayError(n, o), r();\n });\n }\n // prettier-ignore\n }, {\n key: \"poll\",\n value: function () {\n var _poll = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18(e, t, i) {\n var n,\n f,\n m,\n p,\n r,\n _yield$v$processReque4,\n o,\n a,\n l,\n c,\n d,\n h,\n u,\n _args18 = arguments;\n return _regeneratorRuntime().wrap(function _callee18$(_context18) {\n while (1) switch (_context18.prev = _context18.next) {\n case 0:\n n = _args18.length > 3 && _args18[3] !== undefined ? _args18[3] : !0;\n r = {\n body: t,\n headers: (f = e.connectSettings) == null ? void 0 : f.headers\n };\n _context18.next = 4;\n return v.processRequestInterceptor(e.deepChat, r);\n case 4:\n _yield$v$processReque4 = _context18.sent;\n o = _yield$v$processReque4.body;\n a = _yield$v$processReque4.headers;\n l = _yield$v$processReque4.error;\n if (!l) {\n _context18.next = 10;\n break;\n }\n return _context18.abrupt(\"return\", v.onInterceptorError(i, l));\n case 10:\n c = ((m = e.connectSettings) == null ? void 0 : m.url) || e.url || \"\", d = ((p = e.connectSettings) == null ? void 0 : p.method) || \"POST\", h = n ? JSON.stringify(o) : o, u = {\n method: d,\n body: h,\n headers: a\n };\n e.connectSettings.credentials && (u.credentials = e.connectSettings.credentials), T.executePollRequest(e, c, u, i);\n case 12:\n case \"end\":\n return _context18.stop();\n }\n }, _callee18);\n }));\n function poll(_x32, _x33, _x34) {\n return _poll.apply(this, arguments);\n }\n return poll;\n }() // prettier-ignore\n }, {\n key: \"verifyKey\",\n value: function verifyKey(e, t, i, n, r, o, a, l, c) {\n if (e === \"\") return o(A.INVALID_KEY);\n a(), fetch(t, {\n method: n,\n headers: i,\n body: c || null\n }).then(function (d) {\n return v.processResponseByType(d);\n }).then(function (d) {\n l(d, e, r, o);\n })[\"catch\"](function (d) {\n o(A.CONNECTION_FAILED), console.error(d);\n });\n }\n }]);\n}();\nvar ft = /*#__PURE__*/function () {\n function ft() {\n _classCallCheck(this, ft);\n }\n return _createClass(ft, null, [{\n key: \"getCharacterLimitMessages\",\n value: function getCharacterLimitMessages(e, t) {\n var r;\n if (t === -1) return e;\n var i = 0,\n n = e.length - 1;\n for (n; n >= 0; n -= 1) {\n var o = (r = e[n]) == null ? void 0 : r.text;\n if (o !== void 0 && (i += o.length, i > t)) {\n e[n].text = o.substring(0, o.length - (i - t));\n break;\n }\n }\n return e.slice(Math.max(n, 0));\n }\n }, {\n key: \"getMaxMessages\",\n value: function getMaxMessages(e, t) {\n return e.slice(Math.max(e.length - t, 0));\n }\n // prettier-ignore\n // if maxMessages is not defined we send all messages\n // if maxMessages above 0 we send that number\n // if maxMessages 0 or below we send only what is in the request\n }, {\n key: \"processMessages\",\n value: function processMessages(e, t, i) {\n return t !== void 0 ? t > 0 && (e = ft.getMaxMessages(e, t)) : e = [e[e.length - 1]], e = JSON.parse(JSON.stringify(e)), i === void 0 ? e : ft.getCharacterLimitMessages(e, i);\n }\n }]);\n}();\nvar I = /*#__PURE__*/function () {\n function I() {\n _classCallCheck(this, I);\n }\n return _createClass(I, null, [{\n key: \"parseConfig\",\n value:\n // prettier-ignore\n function parseConfig(e, t, i, n) {\n var o;\n var r = {\n files: t\n };\n if (_typeof(n) == \"object\") {\n te.processFileConfigConnect(n);\n var a = n.files,\n l = n.connect,\n c = n.button;\n a && (a.infoModal && (r.files.infoModal = a.infoModal, (o = a.infoModal) != null && o.textMarkDown && (r.infoModalTextMarkUp = i.render(a.infoModal.textMarkDown))), a.acceptedFormats && (r.files.acceptedFormats = a.acceptedFormats), a.maxNumberOfFiles && (r.files.maxNumberOfFiles = a.maxNumberOfFiles)), r.button = c, l && (l.headers || l.method || l.url || l.credentials || e.headers || e.method || e.url || e.credentials) && (r.connect = {\n url: (l == null ? void 0 : l.url) || e.url,\n method: (l == null ? void 0 : l.method) || e.method,\n headers: (l == null ? void 0 : l.headers) || e.headers,\n credentials: (l == null ? void 0 : l.credentials) || e.credentials\n });\n }\n return r;\n }\n }, {\n key: \"processMixedFiles\",\n value: function processMixedFiles(e, t, i) {\n if (i) {\n var n = {\n acceptedFormats: \"\"\n };\n e.fileTypes.mixedFiles = I.parseConfig(e.connectSettings, n, t, i);\n }\n }\n // needs to be set after audio to overwrite maxNumberOfFiles\n // prettier-ignore\n }, {\n key: \"processMicrophone\",\n value: function processMicrophone(e, t, i, n) {\n var _l$files, _u$maxNumberOfFiles;\n var a, l, c, d, h, u;\n var o = _objectSpread({\n acceptedFormats: \"audio/*\"\n }, ((a = e.fileTypes.audio) == null ? void 0 : a.files) || {});\n i && (navigator.mediaDevices.getUserMedia !== void 0 ? (e.recordAudio = I.parseConfig(e.connectSettings, o, t, i), _typeof(i) == \"object\" && i.files && ((_l$files = (l = e.recordAudio).files) !== null && _l$files !== void 0 ? _l$files : l.files = {}, e.recordAudio.files.format = (c = i.files) == null ? void 0 : c.format, e.recordAudio.files.maxDurationSeconds = (d = i.files) == null ? void 0 : d.maxDurationSeconds, (h = e.fileTypes.audio) != null && h.files && ((_u$maxNumberOfFiles = (u = e.fileTypes.audio.files).maxNumberOfFiles) !== null && _u$maxNumberOfFiles !== void 0 ? _u$maxNumberOfFiles : u.maxNumberOfFiles = i.files.maxNumberOfFiles))) : n || (e.fileTypes.audio = I.parseConfig(e.connectSettings, o, t, i)));\n }\n // prettier-ignore\n }, {\n key: \"processAudioConfig\",\n value: function processAudioConfig(e, t, i, n) {\n if (!i && !n) return;\n var o = _objectSpread({\n acceptedFormats: \"audio/*\"\n }, (n == null ? void 0 : n.files) || {});\n e.fileTypes.audio = I.parseConfig(e.connectSettings, o, t, i);\n }\n // prettier-ignore\n }, {\n key: \"processGifConfig\",\n value: function processGifConfig(e, t, i, n) {\n if (!i && !n) return;\n var o = _objectSpread({\n acceptedFormats: \"image/gif\"\n }, (n == null ? void 0 : n.files) || {});\n e.fileTypes.gifs = I.parseConfig(e.connectSettings, o, t, i);\n }\n // needs to be set after images to overwrite maxNumberOfFiles\n // prettier-ignore\n }, {\n key: \"processCamera\",\n value: function processCamera(e, t, i, n) {\n var _l$files2;\n var a, l, c, d;\n var o = _objectSpread({\n acceptedFormats: \"image/*\"\n }, ((a = e.fileTypes.images) == null ? void 0 : a.files) || {});\n i && (navigator.mediaDevices.getUserMedia !== void 0 ? (e.camera = I.parseConfig(e.connectSettings, o, t, i), _typeof(i) == \"object\" && (e.camera.modalContainerStyle = i.modalContainerStyle, i.files && ((_l$files2 = (l = e.camera).files) !== null && _l$files2 !== void 0 ? _l$files2 : l.files = {}, e.camera.files.format = (c = i.files) == null ? void 0 : c.format, e.camera.files.dimensions = (d = i.files) == null ? void 0 : d.dimensions))) : n || (e.fileTypes.images = I.parseConfig(e.connectSettings, o, t, i)));\n }\n // prettier-ignore\n }, {\n key: \"processImagesConfig\",\n value: function processImagesConfig(e, t, i, n) {\n if (!i && !n) return;\n var o = _objectSpread({\n acceptedFormats: \"image/*\"\n }, (n == null ? void 0 : n.files) || {});\n e.fileTypes.images = I.parseConfig(e.connectSettings, o, t, i);\n }\n // default for direct service\n }, {\n key: \"populateDefaultFileIO\",\n value: function populateDefaultFileIO(e, t) {\n var _e$files, _i$acceptedFormats, _n$maxNumberOfFiles;\n var i, n;\n e && ((_e$files = e.files) !== null && _e$files !== void 0 ? _e$files : e.files = {}, (_i$acceptedFormats = (i = e.files).acceptedFormats) !== null && _i$acceptedFormats !== void 0 ? _i$acceptedFormats : i.acceptedFormats = t, (_n$maxNumberOfFiles = (n = e.files).maxNumberOfFiles) !== null && _n$maxNumberOfFiles !== void 0 ? _n$maxNumberOfFiles : n.maxNumberOfFiles = 1);\n }\n }, {\n key: \"set\",\n value: function set(e, t, i) {\n I.populateDefaultFileIO(i == null ? void 0 : i.audio, \".4a,.mp3,.webm,.mp4,.mpga,.wav,.mpeg,.m4a\"), I.populateDefaultFileIO(i == null ? void 0 : i.images, \".png,.jpg\");\n var n = Rt.createNew();\n I.processImagesConfig(t, n, e.images, i == null ? void 0 : i.images), I.processCamera(t, n, e.camera, e.images), I.processGifConfig(t, n, e.gifs, i == null ? void 0 : i.gifs), I.processAudioConfig(t, n, e.audio, i == null ? void 0 : i.audio), I.processMicrophone(t, n, e.microphone, e.audio), I.processMixedFiles(t, n, e.mixedFiles);\n }\n }]);\n}();\nvar Je = /*#__PURE__*/function () {\n function Je(e, t, i) {\n var _a$url;\n _classCallCheck(this, Je);\n var n, r, o, a, l;\n this.rawBody = {}, this.validateKeyProperty = !1, this.canSendMessage = Je.canSendMessage, this.connectSettings = {}, this.fileTypes = {}, this.completionsHandlers = {}, this.streamHandlers = {}, this.deepChat = e, this.demo = i, Object.assign(this.rawBody, (n = e.connect) == null ? void 0 : n.additionalBodyProps), this.totalMessagesMaxCharLength = (r = e == null ? void 0 : e.requestBodyLimits) == null ? void 0 : r.totalMessagesMaxCharLength, this.maxMessages = (o = e == null ? void 0 : e.requestBodyLimits) == null ? void 0 : o.maxMessages, I.set(e, this, t), e.connect && (this.connectSettings = e.connect), this.demo && ((_a$url = (a = this.connectSettings).url) !== null && _a$url !== void 0 ? _a$url : a.url = ge.URL), this.connectSettings.websocket && B.setup(this), this.stream = ((l = this.deepChat.connect) == null ? void 0 : l.stream) || te.checkForStream(this.deepChat);\n }\n return _createClass(Je, [{\n key: \"verifyKey\",\n value: function verifyKey(e, t) {}\n }, {\n key: \"getServiceIOByType\",\n value: function getServiceIOByType(e) {\n if (e.type.startsWith(\"audio\") && this.fileTypes.audio) return this.fileTypes.audio;\n if (e.type.startsWith(\"image\")) {\n if (this.fileTypes.gifs && e.type.endsWith(\"/gif\")) return this.fileTypes.gifs;\n if (this.fileTypes.images) return this.fileTypes.images;\n if (this.camera) return this.camera;\n }\n return this.fileTypes.mixedFiles;\n }\n }, {\n key: \"request\",\n value: function () {\n var _request4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19(e, t) {\n var i,\n _args19 = arguments;\n return _regeneratorRuntime().wrap(function _callee19$(_context19) {\n while (1) switch (_context19.prev = _context19.next) {\n case 0:\n i = _args19.length > 2 && _args19[2] !== undefined ? _args19[2] : !0;\n return _context19.abrupt(\"return\", this.stream && !C.isSimulation(this.stream) ? C.request(this, e, t, i) : T.request(this, e, t, i));\n case 2:\n case \"end\":\n return _context19.stop();\n }\n }, _callee19, this);\n }));\n function request(_x35, _x36) {\n return _request4.apply(this, arguments);\n }\n return request;\n }()\n }, {\n key: \"callAPIWithText\",\n value: function () {\n var _callAPIWithText = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee20(e, t) {\n var _o$headers, _a$ContentType;\n var r, o, a, l, i, n;\n return _regeneratorRuntime().wrap(function _callee20$(_context20) {\n while (1) switch (_context20.prev = _context20.next) {\n case 0:\n i = _objectSpread({\n messages: t\n }, this.rawBody);\n n = !1;\n (r = this.connectSettings.headers) != null && r[\"Content-Type\"] || ((_o$headers = (o = this.connectSettings).headers) !== null && _o$headers !== void 0 ? _o$headers : o.headers = {}, (_a$ContentType = (a = this.connectSettings.headers)[\"Content-Type\"]) !== null && _a$ContentType !== void 0 ? _a$ContentType : a[\"Content-Type\"] = \"application/json\", n = !0);\n _context20.next = 5;\n return this.request(i, e);\n case 5:\n n && ((l = this.connectSettings.headers) == null || delete l[\"Content-Type\"]);\n case 6:\n case \"end\":\n return _context20.stop();\n }\n }, _callee20, this);\n }));\n function callAPIWithText(_x37, _x38) {\n return _callAPIWithText.apply(this, arguments);\n }\n return callAPIWithText;\n }()\n }, {\n key: \"callApiWithFiles\",\n value: function () {\n var _callApiWithFiles = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee21(e, t, i) {\n var n, r, o;\n return _regeneratorRuntime().wrap(function _callee21$(_context21) {\n while (1) switch (_context21.prev = _context21.next) {\n case 0:\n n = Je.createCustomFormDataBody(this.rawBody, t, i), r = this.connectSettings, o = this.getServiceIOByType(i[0]);\n this.connectSettings = (o == null ? void 0 : o.connect) || this.connectSettings;\n _context21.next = 4;\n return this.request(n, e, !1);\n case 4:\n this.connectSettings = r;\n case 5:\n case \"end\":\n return _context21.stop();\n }\n }, _callee21, this);\n }));\n function callApiWithFiles(_x39, _x40, _x41) {\n return _callApiWithFiles.apply(this, arguments);\n }\n return callApiWithFiles;\n }()\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee22(e, t, i) {\n return _regeneratorRuntime().wrap(function _callee22$(_context22) {\n while (1) switch (_context22.prev = _context22.next) {\n case 0:\n i ? this.callApiWithFiles(e, t, i) : this.callAPIWithText(e, t);\n case 1:\n case \"end\":\n return _context22.stop();\n }\n }, _callee22, this);\n }));\n function callServiceAPI(_x42, _x43, _x44) {\n return _callServiceAPI.apply(this, arguments);\n }\n return callServiceAPI;\n }() // prettier-ignore\n }, {\n key: \"callAPI\",\n value: function () {\n var _callAPI = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee23(e, t) {\n var i, n;\n return _regeneratorRuntime().wrap(function _callee23$(_context23) {\n while (1) switch (_context23.prev = _context23.next) {\n case 0:\n if (this.connectSettings) {\n _context23.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = ft.processMessages(t.messages, this.maxMessages, this.totalMessagesMaxCharLength);\n if (this.connectSettings.websocket) {\n n = _objectSpread({\n messages: i\n }, this.rawBody);\n B.sendWebsocket(this, n, t, !1);\n } else this.callServiceAPI(t, i, e.files);\n case 4:\n case \"end\":\n return _context23.stop();\n }\n }, _callee23, this);\n }));\n function callAPI(_x45, _x46) {\n return _callAPI.apply(this, arguments);\n }\n return callAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee24(e) {\n return _regeneratorRuntime().wrap(function _callee24$(_context24) {\n while (1) switch (_context24.prev = _context24.next) {\n case 0:\n if (!e.error) {\n _context24.next = 2;\n break;\n }\n throw e.error;\n case 2:\n if (!e.result) {\n _context24.next = 4;\n break;\n }\n return _context24.abrupt(\"return\", te.handleResponseProperty(e));\n case 4:\n if (!v.validateResponseFormat(e)) {\n _context24.next = 6;\n break;\n }\n return _context24.abrupt(\"return\", e);\n case 6:\n case \"end\":\n return _context24.stop();\n }\n }, _callee24);\n }));\n function extractResultData(_x47) {\n return _extractResultData.apply(this, arguments);\n }\n return extractResultData;\n }()\n }, {\n key: \"isDirectConnection\",\n value: function isDirectConnection() {\n return !1;\n }\n }, {\n key: \"isWebModel\",\n value: function isWebModel() {\n return !1;\n }\n }], [{\n key: \"canSendMessage\",\n value: function canSendMessage(e, t, i) {\n return i ? !0 : !!(e && e.trim() !== \"\") || !!(t && t.length > 0);\n }\n }, {\n key: \"createCustomFormDataBody\",\n value: function createCustomFormDataBody(e, t, i) {\n var n = new FormData();\n i.forEach(function (a) {\n return n.append(\"files\", a);\n }), Object.keys(e).forEach(function (a) {\n return n.append(a, String(e[a]));\n });\n var r = 0;\n t.slice(0, t.length - 1).forEach(function (a) {\n n.append(\"message\".concat(r += 1), JSON.stringify(a));\n });\n var o = t[t.length - 1];\n return o.text && (delete o.files, n.append(\"message\".concat(r += 1), JSON.stringify(o))), n;\n }\n }]);\n}();\nvar z = /*#__PURE__*/function (_Je) {\n // prettier-ignore\n function z(e, t, i, n, r) {\n var _this8;\n _classCallCheck(this, z);\n var o;\n _this8 = _callSuper(this, z, [e, r]), _this8.insertKeyPlaceholderText = \"API Key\", _this8.keyHelpUrl = \"\", Object.assign(_this8.rawBody, (o = e.connect) == null ? void 0 : o.additionalBodyProps), _this8.keyVerificationDetails = t, _this8.buildHeadersFunc = i, n && _this8.setApiKeyProperties(n), _this8.connectSettings = _this8.buildConnectSettings(_this8.key || \"\", e.connect);\n return _this8;\n }\n _inherits(z, _Je);\n return _createClass(z, [{\n key: \"setApiKeyProperties\",\n value: function setApiKeyProperties(e) {\n this.key = e.key, e.validateKeyProperty && (this.validateKeyProperty = e.validateKeyProperty);\n }\n }, {\n key: \"buildConnectSettings\",\n value: function buildConnectSettings(e, t) {\n var _i$headers;\n var i = t !== null && t !== void 0 ? t : {};\n return (_i$headers = i.headers) !== null && _i$headers !== void 0 ? _i$headers : i.headers = {}, Object.assign(i.headers, this.buildHeadersFunc(e)), i;\n }\n }, {\n key: \"keyAuthenticated\",\n value: function keyAuthenticated(e, t) {\n this.connectSettings = this.buildConnectSettings(t, this.connectSettings), this.key = t, e();\n }\n // prettier-ignore\n }, {\n key: \"verifyKey\",\n value: function verifyKey(e, t) {\n var _this$keyVerification = this.keyVerificationDetails,\n i = _this$keyVerification.url,\n n = _this$keyVerification.method,\n r = _this$keyVerification.handleVerificationResult,\n o = _this$keyVerification.createHeaders,\n a = _this$keyVerification.body,\n l = (o == null ? void 0 : o(e)) || this.buildHeadersFunc(e);\n T.verifyKey(e, i, l, n, this.keyAuthenticated.bind(this, t.onSuccess), t.onFail, t.onLoad, r, a);\n }\n }, {\n key: \"isDirectConnection\",\n value: function isDirectConnection() {\n return !0;\n }\n }]);\n}(Je);\nvar ti = /*#__PURE__*/function () {\n function ti() {\n _classCallCheck(this, ti);\n }\n return _createClass(ti, null, [{\n key: \"waitForPropertiesToBeUpdatedBeforeRender\",\n value: function waitForPropertiesToBeUpdatedBeforeRender(e) {\n e._propUpdated_ = !1, setTimeout(function () {\n e._propUpdated_ ? ti.waitForPropertiesToBeUpdatedBeforeRender(e) : (e._waitingToRender_ = !1, e.onRender());\n });\n }\n }, {\n key: \"attemptRender\",\n value: function attemptRender(e) {\n e._propUpdated_ = !0, e._waitingToRender_ || (e._waitingToRender_ = !0, ti.waitForPropertiesToBeUpdatedBeforeRender(e));\n }\n }]);\n}();\nvar xe = /*#__PURE__*/function (_HTMLElement) {\n // If this is not working, try using propertyName directly\n function xe() {\n var _this9;\n _classCallCheck(this, xe);\n _this9 = _callSuper(this, xe), _this9._waitingToRender_ = !1, _this9._propUpdated_ = !1, Object.keys(xe._attributeToProperty_).forEach(function (e) {\n var t = xe._attributeToProperty_[e];\n _this9.constructPropertyAccessors(t), _this9.hasOwnProperty(e) || _this9.constructPropertyAccessors(t, e);\n });\n return _this9;\n }\n _inherits(xe, _HTMLElement);\n return _createClass(xe, [{\n key: \"constructPropertyAccessors\",\n value:\n // need to be called here as accessors need to be set for the class instance\n function constructPropertyAccessors(e, t) {\n var i;\n Object.defineProperty(this, t || e, {\n get: function get() {\n return i;\n },\n set: function set(o) {\n i = o, t ? this[e] = o : ti.attemptRender(this);\n }\n });\n }\n }, {\n key: \"attributeChangedCallback\",\n value: function attributeChangedCallback(e, t, i) {\n if (t === i) return;\n var n = xe._attributes_[e](i),\n r = xe._attributeToProperty_[e];\n this[r] = n;\n }\n }, {\n key: \"onRender\",\n value: function onRender() {}\n }], [{\n key: \"observedAttributes\",\n get: function get() {\n return Object.keys(xe._attributes_) || [];\n }\n }]);\n}( /*#__PURE__*/_wrapNativeSuper(HTMLElement));\nxe._attributes_ = {}, xe._attributeToProperty_ = {};\nvar Zi = xe;\nvar uo = \"<?xml version=\\\"1.0\\\" standalone=\\\"no\\\"?>\\n<svg version=\\\"1.1\\\"\\n\\txmlns:sodipodi=\\\"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\\\" xmlns:inkscape=\\\"http://www.inkscape.org/namespaces/inkscape\\\"\\n\\txmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" width=\\\"0.9em\\\" height=\\\"0.9em\\\"\\n\\tviewBox=\\\"0 0 1200 1200\\\" enable-background=\\\"new 0 0 1200 1200\\\">\\n\\t\\t<path d=\\\"\\n\\t\\t\\tM669.727,273.516c-22.891-2.476-46.15-3.895-69.727-4.248c-103.025,0.457-209.823,25.517-310.913,73.536\\n\\t\\t\\tc-75.058,37.122-148.173,89.529-211.67,154.174C46.232,529.978,6.431,577.76,0,628.74c0.76,44.162,48.153,98.67,77.417,131.764\\n\\t\\t\\tc59.543,62.106,130.754,113.013,211.67,154.174c2.75,1.335,5.51,2.654,8.276,3.955l-75.072,131.102l102.005,60.286l551.416-960.033\\n\\t\\t\\tl-98.186-60.008L669.727,273.516z M902.563,338.995l-74.927,129.857c34.47,44.782,54.932,100.006,54.932,159.888\\n\\t\\t\\tc0,149.257-126.522,270.264-282.642,270.264c-6.749,0-13.29-0.728-19.922-1.172l-49.585,85.84c22.868,2.449,45.99,4.233,69.58,4.541\\n\\t\\t\\tc103.123-0.463,209.861-25.812,310.84-73.535c75.058-37.122,148.246-89.529,211.743-154.174\\n\\t\\t\\tc31.186-32.999,70.985-80.782,77.417-131.764c-0.76-44.161-48.153-98.669-77.417-131.763\\n\\t\\t\\tc-59.543-62.106-130.827-113.013-211.743-154.175C908.108,341.478,905.312,340.287,902.563,338.995L902.563,338.995z\\n\\t\\t\\tM599.927,358.478c6.846,0,13.638,0.274,20.361,0.732l-58.081,100.561c-81.514,16.526-142.676,85.88-142.676,168.897\\n\\t\\t\\tc0,20.854,3.841,40.819,10.913,59.325c0.008,0.021-0.008,0.053,0,0.074l-58.228,100.854\\n\\t\\t\\tc-34.551-44.823-54.932-100.229-54.932-160.182C317.285,479.484,443.808,358.477,599.927,358.478L599.927,358.478z M768.896,570.513\\n\\t\\t\\tL638.013,797.271c81.076-16.837,141.797-85.875,141.797-168.603C779.81,608.194,775.724,588.729,768.896,570.513L768.896,570.513z\\\"\\n\\t\\t\\t/>\\n</svg>\\n\",\n fo = \"<?xml version=\\\"1.0\\\" standalone=\\\"no\\\"?>\\n<svg version=\\\"1.1\\\"\\n\\txmlns:sodipodi=\\\"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\\\" xmlns:inkscape=\\\"http://www.inkscape.org/namespaces/inkscape\\\"\\n\\txmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" width=\\\"0.9em\\\" height=\\\"0.9em\\\"\\n\\tviewBox=\\\"0 0 1200 1200\\\" enable-background=\\\"new 0 0 1200 1200\\\">\\n\\t\\t<path id=\\\"path6686\\\" inkscape:connector-curvature=\\\"0\\\" d=\\\"M779.843,599.925c0,95.331-80.664,172.612-180.169,172.612\\n\\t\\t\\tc-99.504,0-180.168-77.281-180.168-172.612c0-95.332,80.664-172.612,180.168-172.612\\n\\t\\t\\tC699.179,427.312,779.843,504.594,779.843,599.925z M600,240.521c-103.025,0.457-209.814,25.538-310.904,73.557\\n\\t\\t\\tc-75.058,37.122-148.206,89.496-211.702,154.141C46.208,501.218,6.431,549,0,599.981c0.76,44.161,48.13,98.669,77.394,131.763\\n\\t\\t\\tc59.543,62.106,130.786,113.018,211.702,154.179c94.271,45.751,198.616,72.092,310.904,73.557\\n\\t\\t\\tc103.123-0.464,209.888-25.834,310.866-73.557c75.058-37.122,148.243-89.534,211.74-154.179\\n\\t\\t\\tc31.185-32.999,70.962-80.782,77.394-131.763c-0.76-44.161-48.13-98.671-77.394-131.764\\n\\t\\t\\tc-59.543-62.106-130.824-112.979-211.74-154.141C816.644,268.36,712.042,242.2,600,240.521z M599.924,329.769\\n\\t\\t\\tc156.119,0,282.675,120.994,282.675,270.251c0,149.256-126.556,270.25-282.675,270.25S317.249,749.275,317.249,600.02\\n\\t\\t\\tC317.249,450.763,443.805,329.769,599.924,329.769L599.924,329.769z\\\"/>\\n</svg>\\n\";\nvar ie = /*#__PURE__*/function () {\n function ie() {\n _classCallCheck(this, ie);\n }\n return _createClass(ie, null, [{\n key: \"createSVGElement\",\n value: function createSVGElement(e) {\n return new DOMParser().parseFromString(e, \"image/svg+xml\").documentElement;\n }\n }]);\n}();\nvar Le = /*#__PURE__*/function () {\n function Le() {\n _classCallCheck(this, Le);\n }\n return _createClass(Le, null, [{\n key: \"changeVisibility\",\n value:\n // prettier-ignore\n function changeVisibility(e, t, i, n) {\n n.target.id === Le.VISIBLE_ICON_ID ? (t.style.display = \"none\", i.style.display = \"block\", e.type = \"password\") : (t.style.display = \"block\", i.style.display = \"none\", e.type = \"text\");\n }\n }, {\n key: \"createIconElement\",\n value: function createIconElement(e, t) {\n var i = ie.createSVGElement(e);\n return i.id = t, i.classList.add(\"visibility-icon\"), i;\n }\n // prettier-ignore\n }, {\n key: \"create\",\n value: function create(e) {\n var t = document.createElement(\"div\");\n t.id = \"visibility-icon-container\";\n var i = Le.createIconElement(fo, Le.VISIBLE_ICON_ID);\n i.style.display = \"none\", t.appendChild(i);\n var n = Le.createIconElement(uo, \"not-visible-icon\");\n return t.appendChild(n), t.onclick = Le.changeVisibility.bind(this, e, i, n), t;\n }\n }]);\n}();\nLe.VISIBLE_ICON_ID = \"visible-icon\";\nvar Yi = Le;\nvar U = /*#__PURE__*/function () {\n function U() {\n _classCallCheck(this, U);\n }\n return _createClass(U, null, [{\n key: \"createCautionText\",\n value: function createCautionText() {\n var e = document.createElement(\"a\");\n return e.classList.add(\"insert-key-input-help-text\"), e.innerText = \"Please exercise CAUTION when inserting your API key outside of deepchat.dev or localhost!!\", e;\n }\n }, {\n key: \"createHelpLink\",\n value: function createHelpLink(e) {\n var t = document.createElement(\"a\");\n return t.classList.add(\"insert-key-input-help-text\"), t.href = e, t.innerText = \"Find more info here\", t.target = \"_blank\", t;\n }\n }, {\n key: \"createFailText\",\n value: function createFailText() {\n var e = document.createElement(\"div\");\n return e.id = \"insert-key-input-invalid-text\", e.style.display = \"none\", e;\n }\n }, {\n key: \"createHelpTextContainer\",\n value: function createHelpTextContainer(e) {\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !0;\n var i = document.createElement(\"div\");\n i.id = \"insert-key-help-text-container\";\n var n = document.createElement(\"div\");\n n.id = \"insert-key-help-text-contents\";\n var r = U.createFailText();\n if (n.appendChild(r), e) {\n var o = U.createHelpLink(e);\n n.appendChild(o);\n }\n if (t === !0) {\n var _o2 = U.createCautionText();\n n.appendChild(_o2);\n }\n return i.appendChild(n), {\n helpTextContainerElement: i,\n failTextElement: r\n };\n }\n }, {\n key: \"onFail\",\n value: function onFail(e, t, i, n) {\n e.classList.replace(\"insert-key-input-valid\", \"insert-key-input-invalid\"), i.innerText = n, i.style.display = \"block\", t.innerText = \"Start\", e.classList.remove(\"loading\");\n }\n }, {\n key: \"onLoad\",\n value: function onLoad(e, t) {\n e.classList.add(\"loading\"), t.innerHTML = '<div id=\"loading-ring\"></div>';\n }\n // prettier-ignore\n }, {\n key: \"verifyKey\",\n value: function verifyKey(e, t, i) {\n var n = e.value.trim();\n i.verifyKey(n, t);\n }\n // prettier-ignore\n }, {\n key: \"addVerificationEvents\",\n value: function addVerificationEvents(e, t, i, n, r) {\n var o = {\n onSuccess: n,\n onFail: U.onFail.bind(this, e, t, i),\n onLoad: U.onLoad.bind(this, e, t)\n },\n a = U.verifyKey.bind(this, e, o, r);\n t.onclick = a, e.onkeydown = function (l) {\n !e.classList.contains(\"loading\") && l.key === P.ENTER && a();\n };\n }\n }, {\n key: \"createStartButton\",\n value: function createStartButton() {\n var e = document.createElement(\"div\");\n return e.id = \"start-button\", e.innerText = \"Start\", e;\n }\n }, {\n key: \"onInputFocus\",\n value: function onInputFocus(e) {\n e.target.classList.replace(\"insert-key-input-invalid\", \"insert-key-input-valid\");\n }\n }, {\n key: \"createInput\",\n value: function createInput(e) {\n var t = document.createElement(\"div\");\n t.id = \"insert-key-input-container\";\n var i = document.createElement(\"input\");\n return i.id = \"insert-key-input\", i.placeholder = e || \"API Key\", i.type = \"password\", i.classList.add(\"insert-key-input-valid\"), i.onfocus = U.onInputFocus, t.appendChild(i), t;\n }\n // prettier-ignore\n }, {\n key: \"createContents\",\n value: function createContents(e, t) {\n var d;\n var i = document.createElement(\"div\");\n i.id = \"insert-key-contents\";\n var n = U.createInput(t.insertKeyPlaceholderText),\n r = n.children[0],\n o = Yi.create(r);\n n.appendChild(o), i.appendChild(n);\n var a = U.createStartButton(),\n _U$createHelpTextCont = U.createHelpTextContainer(t.keyHelpUrl, (d = t.deepChat._insertKeyViewStyles) == null ? void 0 : d.displayCautionText),\n l = _U$createHelpTextCont.helpTextContainerElement,\n c = _U$createHelpTextCont.failTextElement;\n return i.appendChild(a), i.appendChild(l), U.addVerificationEvents(r, a, c, e, t), i;\n }\n }, {\n key: \"createElements\",\n value: function createElements(e, t) {\n var i = document.createElement(\"div\");\n i.id = \"insert-key-view\";\n var n = U.createContents(e, t);\n return i.appendChild(n), i;\n }\n }, {\n key: \"render\",\n value: function render(e, t, i) {\n var n = U.createElements(t, i);\n e.replaceChildren(n);\n }\n }]);\n}();\nvar Y = /*#__PURE__*/function () {\n function Y() {\n _classCallCheck(this, Y);\n }\n return _createClass(Y, null, [{\n key: \"enableButtons\",\n value: function enableButtons(e, t) {\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n window.webLLM ? (e && (e.disabled = !1), t && (t.disabled = !1)) : i < It.MODULE_SEARCH_LIMIT_S * 4 && setTimeout(function () {\n return Y.enableButtons(e, t, i + 1);\n }, 250);\n }\n // prettier-ignore\n }, {\n key: \"setUpInitial\",\n value: function setUpInitial(e, t, i, n) {\n var r = (t == null ? void 0 : t.downloadClass) || Y.DOWNLOAD_BUTTON_CLASS,\n o = (t == null ? void 0 : t.uploadClass) || Y.UPLOAD_BUTTON_CLASS,\n a = (t == null ? void 0 : t.fileInputClass) || Y.FILE_INPUT_CLASS;\n return setTimeout(function () {\n var l = i == null ? void 0 : i.getElementsByClassName(r)[0],\n c = i == null ? void 0 : i.getElementsByClassName(a)[0],\n d = i == null ? void 0 : i.getElementsByClassName(o)[0];\n l && (l.onclick = function () {\n return e();\n }), c && (c.onchange = function () {\n c.files && c.files.length > 0 && e(c.files);\n }), d && (d.onclick = function () {\n return c.click();\n }), (l || d) && Y.enableButtons(l, d);\n }), (t == null ? void 0 : t.initialHtml) || \"<div>\\n Download or upload a web model that will run entirely on your browser: <br/> \\n <button disabled class=\\\"\".concat(r, \" deep-chat-button deep-chat-web-model-button\\\">Download</button>\\n \").concat(n ? \"\" : \"<input type=\\\"file\\\" class=\\\"\".concat(a, \"\\\" hidden multiple />\\n <button disabled class=\\\"\").concat(o, \" deep-chat-button deep-chat-web-model-button\\\">Upload</button>\"), \"\\n </div>\");\n }\n }, {\n key: \"exportFile\",\n value: function exportFile(e) {\n var t = document.createElement(\"a\"),\n i = 4;\n var _loop2 = function _loop2(n) {\n setTimeout(function () {\n var r = n * i;\n for (var o = r; o < Math.min(r + i, e.length); o += 1) {\n var a = URL.createObjectURL(e[o]);\n t.href = a, t.download = e[o].name, document.body.appendChild(t), t.click(), URL.revokeObjectURL(a);\n }\n }, 500 * n);\n };\n for (var n = 0; n < e.length / i; n += 1) {\n _loop2(n);\n }\n }\n // prettier-ignore\n }, {\n key: \"setUpAfterLoad\",\n value: function setUpAfterLoad(e, t, i, n) {\n var r = (t == null ? void 0 : t.exportFilesClass) || Y.EXPORT_BUTTON_CLASS;\n return setTimeout(function () {\n var o = i == null ? void 0 : i.getElementsByClassName(r)[0];\n o && (o.onclick = function () {\n return Y.exportFile(e);\n });\n }), (t == null ? void 0 : t.afterLoadHtml) || \"<div>\\n Model loaded successfully and has been cached for future requests.\\n \".concat(n ? \"\" : \"<br/> <button style=\\\"margin-top: 5px\\\" class=\\\"\".concat(r, \" deep-chat-button\\\">Export</button>\"), \"\\n </div>\");\n }\n }]);\n}();\nY.DOWNLOAD_BUTTON_CLASS = \"deep-chat-download-button\", Y.UPLOAD_BUTTON_CLASS = \"deep-chat-upload-button\", Y.FILE_INPUT_CLASS = \"deep-chat-file-input\", Y.EXPORT_BUTTON_CLASS = \"deep-chat-export-button\";\nvar ii = Y;\nvar Nn = {\n model_list: [\n // Llama-2\n {\n model_url: \"https://huggingface.co/mlc-ai/Llama-2-7b-chat-hf-q4f32_1-MLC/resolve/main/\",\n local_id: \"Llama-2-7b-chat-hf-q4f32_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-7b-chat-hf/Llama-2-7b-chat-hf-q4f32_1-ctx4k_cs1k-webgpu.wasm\",\n vram_required_MB: 9109.03,\n low_resource_required: !1\n }, {\n model_url: \"https://huggingface.co/mlc-ai/Llama-2-7b-chat-hf-q4f16_1-MLC/resolve/main/\",\n local_id: \"Llama-2-7b-chat-hf-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-7b-chat-hf/Llama-2-7b-chat-hf-q4f16_1-ctx4k_cs1k-webgpu.wasm\",\n vram_required_MB: 6749.02,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/Llama-2-7b-chat-hf-q4f16_1-MLC/resolve/main/\",\n local_id: \"Llama-2-7b-chat-hf-q4f16_1-1k\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-7b-chat-hf/Llama-2-7b-chat-hf-q4f16_1-ctx1k-webgpu.wasm\",\n vram_required_MB: 4618.52,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/Llama-2-13b-chat-hf-q4f16_1-MLC/resolve/main/\",\n local_id: \"Llama-2-13b-chat-hf-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-13b-chat-hf/Llama-2-13b-chat-hf-q4f16_1-ctx4k_cs1k-webgpu.wasm\",\n vram_required_MB: 11814.09,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/Llama-2-70b-chat-hf-q4f16_1-MLC/resolve/main/\",\n local_id: \"Llama-2-70b-chat-hf-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-70b-chat-hf/Llama-2-70b-chat-hf-q4f16_1-ctx4k_cs1k-webgpu.wasm\",\n vram_required_MB: 43729.05,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n },\n // RedPajama\n {\n model_url: \"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f16_1-MLC/resolve/main/\",\n local_id: \"RedPajama-INCITE-Chat-3B-v1-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f16_1-ctx2k-webgpu.wasm\",\n vram_required_MB: 2972.09,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f32_1-MLC/resolve/main/\",\n local_id: \"RedPajama-INCITE-Chat-3B-v1-q4f32_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f32_1-ctx2k-webgpu.wasm\",\n vram_required_MB: 3928.09,\n low_resource_required: !1\n }, {\n model_url: \"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f16_1-MLC/resolve/main/\",\n local_id: \"RedPajama-INCITE-Chat-3B-v1-q4f16_1-1k\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f16_1-ctx1k-webgpu.wasm\",\n vram_required_MB: 2041.09,\n low_resource_required: !0,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f32_1-MLC/resolve/main/\",\n local_id: \"RedPajama-INCITE-Chat-3B-v1-q4f32_1-1k\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f32_1-ctx1k-webgpu.wasm\",\n vram_required_MB: 2558.09,\n low_resource_required: !0\n },\n // Mistral variants\n {\n model_url: \"https://huggingface.co/mlc-ai/WizardMath-7B-V1.1-q4f16_1-MLC/resolve/main/\",\n local_id: \"WizardMath-7B-V1.1-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm\",\n vram_required_MB: 6079.02,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/Mistral-7B-Instruct-v0.2-q4f16_1-MLC/resolve/main/\",\n local_id: \"Mistral-7B-Instruct-v0.2-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm\",\n vram_required_MB: 6079.02,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/OpenHermes-2.5-Mistral-7B-q4f16_1-MLC/resolve/main/\",\n local_id: \"OpenHermes-2.5-Mistral-7B-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm\",\n vram_required_MB: 6079.02,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/NeuralHermes-2.5-Mistral-7B-q4f16_1-MLC/resolve/main/\",\n local_id: \"NeuralHermes-2.5-Mistral-7B-q4f16_1\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm\",\n vram_required_MB: 6079.02,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n },\n // TinyLlama\n {\n model_url: \"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q0f16-MLC/resolve/main/\",\n local_id: \"TinyLlama-1.1B-Chat-v0.4-q0f16\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q0f16-ctx2k-webgpu.wasm\",\n vram_required_MB: 5063.52,\n low_resource_required: !1,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q0f32-MLC/resolve/main/\",\n local_id: \"TinyLlama-1.1B-Chat-v0.4-q0f32\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q0f32-ctx2k-webgpu.wasm\",\n vram_required_MB: 5394.53,\n low_resource_required: !1\n }, {\n model_url: \"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q4f16_1-MLC/resolve/main/\",\n local_id: \"TinyLlama-1.1B-Chat-v0.4-q4f16_1-1k\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q4f16_1-ctx1k-webgpu.wasm\",\n vram_required_MB: 899.11,\n low_resource_required: !0,\n required_features: [\"shader-f16\"]\n }, {\n model_url: \"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q4f32_1-MLC/resolve/main/\",\n local_id: \"TinyLlama-1.1B-Chat-v0.4-q4f32_1-1k\",\n model_lib_url: \"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q4f32_1-ctx1k-webgpu.wasm\",\n vram_required_MB: 992.11,\n low_resource_required: !0\n }],\n use_web_worker: !0\n },\n w = /*#__PURE__*/function (_Je2) {\n function w(e) {\n var _this10;\n _classCallCheck(this, w);\n var t, i;\n _this10 = _callSuper(this, w, [e]), _this10._isModelLoaded = !1, _this10._isModelLoading = !1, _this10._loadOnFirstMessage = !1, _this10._webModel = {}, _this10.permittedErrorPrefixes = [w.MULTIPLE_MODELS_ERROR, w.WEB_LLM_NOT_FOUND_ERROR, w.GENERIC_ERROR], _this10._conversationHistory = [], _typeof(e.webModel) == \"object\" && (_this10._webModel = e.webModel), (t = _this10._webModel.load) != null && t.clearCache && w.clearAllCache(), _this10.findModelInWindow(e), _this10.canSendMessage = _this10.canSubmit.bind(_assertThisInitialized(_this10)), _this10._chatEl = (i = e.shadowRoot) == null ? void 0 : i.children[0], e.history && w.setUpHistory(_this10._conversationHistory, e.history);\n return _this10;\n }\n // need ref of messages object as web model exhibits unique behaviour to manipulate chat\n _inherits(w, _Je2);\n return _createClass(w, [{\n key: \"setUpMessages\",\n value: function setUpMessages(e) {\n var _this11 = this;\n this._messages = e, this._removeIntro = function () {\n e.removeIntroductoryMessage(), _this11._removeIntro = void 0;\n };\n }\n }, {\n key: \"findModelInWindow\",\n value: function findModelInWindow(e) {\n var _this12 = this;\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var i;\n window.webLLM ? this.configureInit(this.shouldAddIntroMessage(e.introMessage)) : t > w.MODULE_SEARCH_LIMIT_S ? ((i = this._messages) == null || i.addNewErrorMessage(\"service\", w.WEB_LLM_NOT_FOUND_ERROR), console.error(\"The deep-chat-web-llm module has not been attached to the window object. Please see the following guide:\"), console.error(\"https://deepchat.dev/examples/externalModules\")) : setTimeout(function () {\n return _this12.findModelInWindow(e, t + 1);\n }, 1e3);\n }\n }, {\n key: \"shouldAddIntroMessage\",\n value: function shouldAddIntroMessage(e) {\n var t;\n return !e && this._webModel && ((t = this._webModel.introMessage) == null ? void 0 : t.displayed) !== !1;\n }\n }, {\n key: \"scrollToTop\",\n value: function scrollToTop(e) {\n var _this13 = this;\n var t;\n ((t = this._webModel.introMessage) == null ? void 0 : t.autoScroll) !== !1 && setTimeout(function () {\n var i, n;\n (i = _this13._messages) != null && i.elementRef && q.scrollToTop((n = _this13._messages) == null ? void 0 : n.elementRef);\n }, e);\n }\n // prettier-ignore\n }, {\n key: \"getIntroMessage\",\n value: function getIntroMessage(e) {\n if (!this.shouldAddIntroMessage(e) || !this._chatEl) return;\n var t = ii.setUpInitial(this.init.bind(this), this._webModel.introMessage, this._chatEl, !!this._webModel.worker);\n return this.scrollToTop(1), {\n role: b.AI_ROLE,\n html: t,\n sendUpdate: !1\n };\n }\n }, {\n key: \"configureInit\",\n value: function () {\n var _configureInit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee25(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee25$(_context25) {\n while (1) switch (_context25.prev = _context25.next) {\n case 0:\n t = this._webModel.load;\n if (!t) {\n _context25.next = 8;\n break;\n }\n if (!t.onInit) {\n _context25.next = 5;\n break;\n }\n this.init();\n return _context25.abrupt(\"return\");\n case 5:\n if (!t.onMessage) {\n _context25.next = 8;\n break;\n }\n this._loadOnFirstMessage = !0;\n return _context25.abrupt(\"return\");\n case 8:\n e || this.init();\n case 9:\n case \"end\":\n return _context25.stop();\n }\n }, _callee25, this);\n }));\n function configureInit(_x48) {\n return _configureInit.apply(this, arguments);\n }\n return configureInit;\n }()\n }, {\n key: \"init\",\n value: function () {\n var _init = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee26(e) {\n var i, t;\n return _regeneratorRuntime().wrap(function _callee26$(_context26) {\n while (1) switch (_context26.prev = _context26.next) {\n case 0:\n (i = this._messages) == null || i.removeError();\n t = this.attemptToCreateChat();\n _context26.t0 = t;\n if (!_context26.t0) {\n _context26.next = 6;\n break;\n }\n _context26.next = 6;\n return this.loadModel(t, e);\n case 6:\n case \"end\":\n return _context26.stop();\n }\n }, _callee26, this);\n }));\n function init(_x49) {\n return _init.apply(this, arguments);\n }\n return init;\n }()\n }, {\n key: \"attemptToCreateChat\",\n value: function attemptToCreateChat() {\n var t;\n if (w.chat) {\n (t = this._messages) == null || t.addNewErrorMessage(\"service\", w.MULTIPLE_MODELS_ERROR), console.error(w.MULTIPLE_MODELS_ERROR);\n return;\n }\n if (this._isModelLoaded || this._isModelLoading) return;\n var e = this._webModel.worker;\n return Nn.use_web_worker && e ? new window.webLLM.ChatWorkerClient(e) : new window.webLLM.ChatModule();\n }\n }, {\n key: \"getConfig\",\n value: function getConfig() {\n var i;\n var e = w.DEFAULT_MODEL;\n this._webModel.model && (e = this._webModel.model);\n var t = JSON.parse(JSON.stringify(Nn));\n if (this._webModel.urls) {\n var n = t.model_list.find(function (r) {\n return r.local_id = e;\n });\n n && (this._webModel.urls.model && (n.model_url = this._webModel.urls.model), this._webModel.urls.wasm && (n.model_lib_url = this._webModel.urls.wasm));\n }\n return (i = this._webModel.load) != null && i.skipCache && (t.use_cache = !1), {\n model: e,\n appConfig: t\n };\n }\n // prettier-ignore\n }, {\n key: \"loadModel\",\n value: function () {\n var _loadModel = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee27(e, t) {\n var _this14 = this;\n var o, a, l, c, d, h, u, i, n, r, _this$getConfig, f, m, p, _f;\n return _regeneratorRuntime().wrap(function _callee27$(_context27) {\n while (1) switch (_context27.prev = _context27.next) {\n case 0:\n this.scrollToTop(), w.chat = e, this._isModelLoading = !0;\n i = ((o = this._webModel.introMessage) == null ? void 0 : o.displayed) === !1;\n n = function n(f) {\n var m;\n (m = _this14._messages) == null || m.addNewMessage({\n html: \"<div>\".concat(f.text, \"</div>\"),\n overwrite: !0,\n sendUpdate: !1\n }), i && (setTimeout(function () {\n var p;\n return q.scrollToBottom((p = _this14._messages) == null ? void 0 : p.elementRef);\n }), i = !1);\n };\n w.chat.setInitProgressCallback(n);\n _context27.prev = 4;\n _this$getConfig = this.getConfig(), f = _this$getConfig.model, m = _this$getConfig.appConfig, p = {};\n this._webModel.instruction && (p.conv_config = {\n system: this._webModel.instruction\n });\n this._conversationHistory.length > 0 && (p.conversation_history = this._conversationHistory);\n _context27.next = 10;\n return w.chat.reload(f, p, m, t);\n case 10:\n r = _context27.sent;\n _context27.next = 16;\n break;\n case 13:\n _context27.prev = 13;\n _context27.t0 = _context27[\"catch\"](4);\n return _context27.abrupt(\"return\", this.unloadChat(_context27.t0));\n case 16:\n if ((l = (a = this.deepChat)._validationHandler) == null || l.call(a), (c = this._webModel.introMessage) != null && c.removeAfterLoad) this._webModel.introMessage.displayed === !1 ? (h = this._messages) == null || h.removeLastMessage() : (u = this._removeIntro) == null || u.call(this);else {\n _f = ii.setUpAfterLoad(r, this._webModel.introMessage, this._chatEl, !!this._webModel.worker);\n (d = this._messages) == null || d.addNewMessage({\n html: _f,\n overwrite: !0,\n sendUpdate: !1\n });\n }\n this._isModelLoaded = !0, this._isModelLoading = !1;\n case 18:\n case \"end\":\n return _context27.stop();\n }\n }, _callee27, this, [[4, 13]]);\n }));\n function loadModel(_x50, _x51) {\n return _loadModel.apply(this, arguments);\n }\n return loadModel;\n }()\n }, {\n key: \"unloadChat\",\n value: function () {\n var _unloadChat = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee28(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee28$(_context28) {\n while (1) switch (_context28.prev = _context28.next) {\n case 0:\n (t = this._messages) == null || t.addNewErrorMessage(\"service\", w.GENERIC_ERROR);\n console.error(e);\n this._isModelLoaded = !1;\n this._isModelLoading = !1;\n _context28.t0 = w.chat;\n if (!_context28.t0) {\n _context28.next = 9;\n break;\n }\n _context28.next = 8;\n return w.chat.unload();\n case 8:\n w.chat = void 0;\n case 9:\n case \"end\":\n return _context28.stop();\n }\n }, _callee28, this);\n }));\n function unloadChat(_x52) {\n return _unloadChat.apply(this, arguments);\n }\n return unloadChat;\n }()\n }, {\n key: \"immediateResp\",\n value: function () {\n var _immediateResp = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee29(e, t, i) {\n var n, r;\n return _regeneratorRuntime().wrap(function _callee29$(_context29) {\n while (1) switch (_context29.prev = _context29.next) {\n case 0:\n _context29.next = 2;\n return i.generate(t, void 0, 0);\n case 2:\n _context29.t0 = _context29.sent;\n n = {\n text: _context29.t0\n };\n _context29.next = 6;\n return w.processResponse(this.deepChat, e, n);\n case 6:\n r = _context29.sent;\n r && e.addNewMessage(r), this.completionsHandlers.onFinish();\n case 8:\n case \"end\":\n return _context29.stop();\n }\n }, _callee29, this);\n }));\n function immediateResp(_x53, _x54, _x55) {\n return _immediateResp.apply(this, arguments);\n }\n return immediateResp;\n }()\n }, {\n key: \"streamResp\",\n value: function () {\n var _streamResp = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee31(e, t, i) {\n var _this15 = this;\n var n;\n return _regeneratorRuntime().wrap(function _callee31$(_context31) {\n while (1) switch (_context31.prev = _context31.next) {\n case 0:\n this.streamHandlers.abortStream.abort = function () {\n i.interruptGenerate();\n }, this.streamHandlers.onOpen();\n n = new me(e);\n _context31.next = 4;\n return i.generate(t, /*#__PURE__*/function () {\n var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee30(r, o) {\n var a;\n return _regeneratorRuntime().wrap(function _callee30$(_context30) {\n while (1) switch (_context30.prev = _context30.next) {\n case 0:\n _context30.next = 2;\n return w.processResponse(_this15.deepChat, e, {\n text: o\n });\n case 2:\n a = _context30.sent;\n a && n.upsertStreamedMessage({\n text: a.text,\n overwrite: !0\n });\n case 4:\n case \"end\":\n return _context30.stop();\n }\n }, _callee30);\n }));\n return function (_x59, _x60) {\n return _ref8.apply(this, arguments);\n };\n }());\n case 4:\n n.finaliseStreamedMessage();\n this.streamHandlers.onClose();\n case 6:\n case \"end\":\n return _context31.stop();\n }\n }, _callee31, this);\n }));\n function streamResp(_x56, _x57, _x58) {\n return _streamResp.apply(this, arguments);\n }\n return streamResp;\n }()\n }, {\n key: \"generateRespByType\",\n value: function () {\n var _generateRespByType = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee32(e, t, i, n) {\n var r;\n return _regeneratorRuntime().wrap(function _callee32$(_context32) {\n while (1) switch (_context32.prev = _context32.next) {\n case 0:\n _context32.prev = 0;\n if (!i) {\n _context32.next = 6;\n break;\n }\n _context32.next = 4;\n return this.streamResp(e, t, n);\n case 4:\n _context32.next = 8;\n break;\n case 6:\n _context32.next = 8;\n return this.immediateResp(e, t, n);\n case 8:\n _context32.next = 13;\n break;\n case 10:\n _context32.prev = 10;\n _context32.t0 = _context32[\"catch\"](0);\n (r = this._messages) == null || r.addNewErrorMessage(\"service\"), console.log(_context32.t0);\n case 13:\n case \"end\":\n return _context32.stop();\n }\n }, _callee32, this, [[0, 10]]);\n }));\n function generateRespByType(_x61, _x62, _x63, _x64) {\n return _generateRespByType.apply(this, arguments);\n }\n return generateRespByType;\n }()\n }, {\n key: \"generateResp\",\n value: function () {\n var _generateResp = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee33(e, t, i) {\n var n, _yield$v$processReque5, r, o, a, l, c;\n return _regeneratorRuntime().wrap(function _callee33$(_context33) {\n while (1) switch (_context33.prev = _context33.next) {\n case 0:\n n = t[t.length - 1].text;\n _context33.next = 3;\n return v.processRequestInterceptor(this.deepChat, {\n body: {\n text: n\n }\n });\n case 3:\n _yield$v$processReque5 = _context33.sent;\n r = _yield$v$processReque5.body;\n o = _yield$v$processReque5.error;\n a = !!this.stream;\n try {\n if (o) v.displayError(e, new Error(o)), (a ? this.streamHandlers.onClose : this.completionsHandlers.onFinish)();else if (!r || !r.text) {\n l = A.INVALID_MODEL_REQUEST({\n body: r\n }, !1);\n console.error(l);\n c = a ? this.streamHandlers.onClose : this.completionsHandlers.onFinish;\n v.onInterceptorError(e, l, c);\n } else this.generateRespByType(e, r.text, !!this.stream, i);\n } catch (l) {\n this.unloadChat(l);\n }\n case 8:\n case \"end\":\n return _context33.stop();\n }\n }, _callee33, this);\n }));\n function generateResp(_x65, _x66, _x67) {\n return _generateResp.apply(this, arguments);\n }\n return generateResp;\n }()\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee34(e, t) {\n var i, n;\n return _regeneratorRuntime().wrap(function _callee34$(_context34) {\n while (1) switch (_context34.prev = _context34.next) {\n case 0:\n if (this._isModelLoaded) {\n _context34.next = 7;\n break;\n }\n if (!this._loadOnFirstMessage) {\n _context34.next = 6;\n break;\n }\n _context34.next = 4;\n return this.init();\n case 4:\n _context34.next = 7;\n break;\n case 6:\n return _context34.abrupt(\"return\");\n case 7:\n !w.chat || this._isModelLoading || ((i = this._webModel.introMessage) != null && i.removeAfterMessage && ((n = this._removeIntro) == null || n.call(this)), e.addLoadingMessage(), this.generateResp(e, t, w.chat));\n case 8:\n case \"end\":\n return _context34.stop();\n }\n }, _callee34, this);\n }));\n function callServiceAPI(_x68, _x69) {\n return _callServiceAPI2.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"canSubmit\",\n value: function canSubmit(e) {\n return !(e != null && e.trim()) || this._isModelLoading ? !1 : this._loadOnFirstMessage ? !0 : !!this._isModelLoaded;\n }\n }, {\n key: \"isWebModel\",\n value: function isWebModel() {\n return !0;\n }\n }], [{\n key: \"setUpHistory\",\n value: function setUpHistory(e, t) {\n t.forEach(function (i, n) {\n if (i.role === b.USER_ROLE && i.text) {\n var r = t[n + 1];\n r != null && r.text && r.role !== b.USER_ROLE && e.push([i.text, r.text]);\n }\n });\n }\n }, {\n key: \"processResponse\",\n value: function () {\n var _processResponse = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee35(e, t, i) {\n var r, n, o;\n return _regeneratorRuntime().wrap(function _callee35$(_context35) {\n while (1) switch (_context35.prev = _context35.next) {\n case 0:\n _context35.next = 2;\n return (r = e.responseInterceptor) == null ? void 0 : r.call(e, i);\n case 2:\n _context35.t0 = _context35.sent;\n if (_context35.t0) {\n _context35.next = 5;\n break;\n }\n _context35.t0 = i;\n case 5:\n n = _context35.t0;\n if (!n.error) {\n _context35.next = 11;\n break;\n }\n v.displayError(t, new Error(n.error));\n return _context35.abrupt(\"return\");\n case 11:\n if (!(!n || !n.text)) {\n _context35.next = 15;\n break;\n }\n o = A.INVALID_MODEL_RESPONSE(i, !!e.responseInterceptor, n);\n v.displayError(t, new Error(o));\n return _context35.abrupt(\"return\");\n case 15:\n return _context35.abrupt(\"return\", n);\n case 16:\n case \"end\":\n return _context35.stop();\n }\n }, _callee35);\n }));\n function processResponse(_x70, _x71, _x72) {\n return _processResponse.apply(this, arguments);\n }\n return processResponse;\n }()\n }, {\n key: \"clearAllCache\",\n value: function clearAllCache() {\n w.clearCache(\"webllm/model\"), w.clearCache(\"webllm/wasm\");\n }\n }, {\n key: \"clearCache\",\n value: function clearCache(e) {\n caches.open(e).then(function (t) {\n t.keys().then(function (i) {\n i.forEach(function (n) {\n t[\"delete\"](n);\n });\n });\n });\n }\n }]);\n }(Je);\nw.GENERIC_ERROR = \"Error, please check the [troubleshooting](https://deepchat.dev/docs/webModel#troubleshooting) section of documentation for help.\", w.MULTIPLE_MODELS_ERROR = \"Cannot run multiple web models\", w.WEB_LLM_NOT_FOUND_ERROR = \"WebLLM module not found\", w.DEFAULT_MODEL = \"Llama-2-7b-chat-hf-q4f32_1\", w.MODULE_SEARCH_LIMIT_S = 5;\nvar It = w;\nvar ni = /*#__PURE__*/function () {\n function ni() {\n _classCallCheck(this, ni);\n }\n return _createClass(ni, null, [{\n key: \"buildHeaders\",\n value: function buildHeaders(e) {\n return {\n Authorization: \"Bearer \".concat(e),\n \"Content-Type\": \"application/json\"\n // bigcode/santacoder expects this so adding just-in-case\n };\n }\n // prettier-ignore\n }, {\n key: \"handleVerificationResult\",\n value: function handleVerificationResult(e, t, i, n) {\n var r = e;\n Array.isArray(r.error) && r.error[0] === \"Error in `parameters`: field required\" ? i(t) : n(A.INVALID_KEY);\n }\n }, {\n key: \"buildKeyVerificationDetails\",\n value: function buildKeyVerificationDetails() {\n return {\n url: \"https://api-inference.huggingface.co/models/gpt2\",\n method: \"POST\",\n handleVerificationResult: ni.handleVerificationResult\n };\n }\n }]);\n}();\nvar Tt = /*#__PURE__*/function (_z) {\n // prettier-ignore\n function Tt(e, t, i, n, r, o) {\n var _this16;\n _classCallCheck(this, Tt);\n _this16 = _callSuper(this, Tt, [e, ni.buildKeyVerificationDetails(), ni.buildHeaders, r, o]), _this16.insertKeyPlaceholderText = \"Hugging Face Token\", _this16.keyHelpUrl = \"https://huggingface.co/settings/tokens\", _this16.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Hugging Face</b></div>\\n <p>First message may take an extented amount of time to complete as the model needs to be initialized.</p>\", _this16.permittedErrorPrefixes = [\"Authorization header\"], _this16.url = \"\".concat(Tt.URL_PREFIX).concat(i), _this16.textInputPlaceholderText = t, _typeof(n) == \"object\" && (n.model && (_this16.url = \"\".concat(Tt.URL_PREFIX).concat(n.model)), n.options && (_this16.rawBody.options = n.options), n.parameters && (_this16.rawBody.parameters = n.parameters));\n return _this16;\n }\n // prettier-ignore\n _inherits(Tt, _z);\n return _createClass(Tt, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t, i) {\n var _n$options;\n var n = JSON.parse(JSON.stringify(e)),\n r = t[t.length - 1].text;\n if (r) return (_n$options = n.options) !== null && _n$options !== void 0 ? _n$options : n.options = {}, n.options.wait_for_model = !0, _objectSpread({\n inputs: r\n }, n);\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee36(e, t, i) {\n var n;\n return _regeneratorRuntime().wrap(function _callee36$(_context36) {\n while (1) switch (_context36.prev = _context36.next) {\n case 0:\n if (this.connectSettings) {\n _context36.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n n = this.preprocessBody(this.rawBody, t, i);\n T.request(this, n, e);\n case 4:\n case \"end\":\n return _context36.stop();\n }\n }, _callee36, this);\n }));\n function callServiceAPI(_x73, _x74, _x75) {\n return _callServiceAPI3.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }]);\n}(z);\nTt.URL_PREFIX = \"https://api-inference.huggingface.co/models/\";\nvar ke = Tt;\nvar Ft = /*#__PURE__*/function (_ke) {\n // prettier-ignore\n function Ft(e, t, i, n, r, o) {\n var _this17;\n _classCallCheck(this, Ft);\n _this17 = _callSuper(this, Ft, [e, t, i, n, r, o]), _this17.isTextInputDisabled = !0, _this17.canSendMessage = Ft.canSendFile;\n return _this17;\n }\n _inherits(Ft, _ke);\n return _createClass(Ft, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t, i) {\n return i[0];\n }\n // prettier-ignore\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee37(e, t, i) {\n return _regeneratorRuntime().wrap(function _callee37$(_context37) {\n while (1) switch (_context37.prev = _context37.next) {\n case 0:\n if (this.connectSettings) {\n _context37.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (i != null && i[0]) {\n _context37.next = 4;\n break;\n }\n throw new Error(\"No file was added\");\n case 4:\n T.poll(this, i[0], e, !1);\n case 5:\n case \"end\":\n return _context37.stop();\n }\n }, _callee37, this);\n }));\n function callServiceAPI(_x76, _x77, _x78) {\n return _callServiceAPI4.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }], [{\n key: \"canSendFile\",\n value: function canSendFile(e, t) {\n return !!(t != null && t[0]);\n }\n }]);\n}(ke);\nvar po = /*#__PURE__*/function (_Ft) {\n // prettier-ignore\n function po(e) {\n _classCallCheck(this, po);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.audioClassification,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n return _callSuper(this, po, [e, \"Attach an audio file\", \"ehcalabres/wav2vec2-lg-xlsr-en-speech-emotion-recognition\", t, i, {\n audio: {}\n }]);\n }\n _inherits(po, _Ft);\n return _createClass(po, [{\n key: \"extractPollResultData\",\n value: function () {\n var _extractPollResultData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee38(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee38$(_context38) {\n while (1) switch (_context38.prev = _context38.next) {\n case 0:\n if (!e.estimated_time) {\n _context38.next = 2;\n break;\n }\n return _context38.abrupt(\"return\", {\n timeoutMS: (e.estimated_time + 1) * 1e3\n });\n case 2:\n if (!e.error) {\n _context38.next = 4;\n break;\n }\n throw e.error;\n case 4:\n return _context38.abrupt(\"return\", {\n text: ((t = e[0]) == null ? void 0 : t.label) || \"\"\n });\n case 5:\n case \"end\":\n return _context38.stop();\n }\n }, _callee38);\n }));\n function extractPollResultData(_x79) {\n return _extractPollResultData.apply(this, arguments);\n }\n return extractPollResultData;\n }()\n }]);\n}(Ft);\nvar mo = /*#__PURE__*/function (_Ft2) {\n function mo(e) {\n _classCallCheck(this, mo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.imageClassification,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n return _callSuper(this, mo, [e, \"Attach an image file\", \"google/vit-base-patch16-224\", t, i, {\n images: {}\n }]);\n }\n _inherits(mo, _Ft2);\n return _createClass(mo, [{\n key: \"extractPollResultData\",\n value: function () {\n var _extractPollResultData2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee39(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee39$(_context39) {\n while (1) switch (_context39.prev = _context39.next) {\n case 0:\n if (!e.estimated_time) {\n _context39.next = 2;\n break;\n }\n return _context39.abrupt(\"return\", {\n timeoutMS: (e.estimated_time + 1) * 1e3\n });\n case 2:\n if (!e.error) {\n _context39.next = 4;\n break;\n }\n throw e.error;\n case 4:\n return _context39.abrupt(\"return\", {\n text: ((t = e[0]) == null ? void 0 : t.label) || \"\"\n });\n case 5:\n case \"end\":\n return _context39.stop();\n }\n }, _callee39);\n }));\n function extractPollResultData(_x80) {\n return _extractPollResultData2.apply(this, arguments);\n }\n return extractPollResultData;\n }()\n }]);\n}(Ft);\nvar Bt = \"data:image/png;base64,\";\nvar be = /*#__PURE__*/function () {\n function be() {\n _classCallCheck(this, be);\n }\n return _createClass(be, null, [{\n key: \"buildHeaders\",\n value: function buildHeaders(e) {\n return {\n Authorization: \"Bearer \".concat(e),\n \"Content-Type\": \"application/json\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleVerificationResult\",\n value: function handleVerificationResult(e, t, i, n) {\n e.message ? n(A.INVALID_KEY) : i(t);\n }\n }, {\n key: \"buildKeyVerificationDetails\",\n value: function buildKeyVerificationDetails() {\n return {\n url: \"https://api.stability.ai/v1/engines/list\",\n method: \"GET\",\n handleVerificationResult: be.handleVerificationResult\n };\n }\n }]);\n}();\nvar Si = /*#__PURE__*/function (_z2) {\n // prettier-ignore\n function Si(e, t, i, n, r) {\n var _this18;\n _classCallCheck(this, Si);\n _this18 = _callSuper(this, Si, [e, t, i, n, r]), _this18.insertKeyPlaceholderText = \"Stability AI API Key\", _this18.keyHelpUrl = \"https://platform.stability.ai/docs/getting-started/authentication\", _this18.permittedErrorPrefixes = [\"Incorrect\", \"invalid_\"];\n return _this18;\n }\n _inherits(Si, _z2);\n return _createClass(Si);\n}(z);\nvar si = /*#__PURE__*/function (_Si) {\n function si(e) {\n var _this19;\n _classCallCheck(this, si);\n var o;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t == null ? void 0 : t.stabilityAI,\n n = {\n images: {\n files: {\n acceptedFormats: \".png\",\n maxNumberOfFiles: 1\n }\n }\n };\n _this19 = _callSuper(this, si, [e, be.buildKeyVerificationDetails(), be.buildHeaders, i, n]), _this19.url = \"https://api.stability.ai/v1/generation/esrgan-v1-x2plus/image-to-image/upscale\", _this19.textInputPlaceholderText = \"Describe image changes\", _this19.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Stability AI</b></div>\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px; margin-top: 5px\\\"><b>Image to Image Upscale</b></div>\\n <p>Upload an image to generate a new one with higher resolution.</p>\\n <p>Click <a href=\\\"https://platform.stability.ai/\\\">here</a> for more info.</p>\";\n var r = (o = t == null ? void 0 : t.stabilityAI) == null ? void 0 : o.imageToImageUpscale;\n _typeof(r) == \"object\" && (r.engine_id && (_this19.url = \"https://api.stability.ai/v1/generation/\".concat(r.engine_id, \"/image-to-image/upscale\")), si.cleanConfig(r), Object.assign(_this19.rawBody, r)), _this19.canSendMessage = si.canSendFileMessage;\n return _this19;\n }\n _inherits(si, _Si);\n return _createClass(si, [{\n key: \"createFormDataBody\",\n value: function createFormDataBody(e, t) {\n var i = new FormData();\n return i.append(\"image\", t), Object.keys(e).forEach(function (n) {\n i.append(n, String(e[n]));\n }), i;\n }\n // prettier-ignore\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee40(e, t, i) {\n var n;\n return _regeneratorRuntime().wrap(function _callee40$(_context40) {\n while (1) switch (_context40.prev = _context40.next) {\n case 0:\n if (this.connectSettings) {\n _context40.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (i) {\n _context40.next = 4;\n break;\n }\n throw new Error(\"Image was not found\");\n case 4:\n n = this.createFormDataBody(this.rawBody, i[0]);\n v.tempRemoveContentHeader(this.connectSettings, T.request.bind(this, this, n, e), !1);\n case 6:\n case \"end\":\n return _context40.stop();\n }\n }, _callee40, this);\n }));\n function callServiceAPI(_x81, _x82, _x83) {\n return _callServiceAPI5.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee41(e) {\n return _regeneratorRuntime().wrap(function _callee41$(_context41) {\n while (1) switch (_context41.prev = _context41.next) {\n case 0:\n if (!e.message) {\n _context41.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context41.abrupt(\"return\", {\n files: e.artifacts.map(function (i) {\n return {\n src: \"\".concat(Bt).concat(i.base64),\n type: \"image\"\n };\n })\n });\n case 3:\n case \"end\":\n return _context41.stop();\n }\n }, _callee41);\n }));\n function extractResultData(_x84) {\n return _extractResultData2.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.engine_id;\n }\n }, {\n key: \"canSendFileMessage\",\n value: function canSendFileMessage(e, t) {\n return !!(t != null && t[0]);\n }\n }]);\n}(Si);\nvar ri = /*#__PURE__*/function (_Si2) {\n function ri(e) {\n var _this20;\n _classCallCheck(this, ri);\n var o;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t == null ? void 0 : t.stabilityAI,\n n = {\n images: {\n files: {\n acceptedFormats: \".png\",\n maxNumberOfFiles: 2\n }\n }\n };\n _this20 = _callSuper(this, ri, [e, be.buildKeyVerificationDetails(), be.buildHeaders, i, n]), _this20.url = \"https://api.stability.ai/v1/generation/stable-diffusion-xl-1024-v1-0/image-to-image/masking\", _this20._maskSource = \"MASK_IMAGE_WHITE\", _this20.textInputPlaceholderText = \"Describe image changes\", _this20.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Stability AI</b></div>\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px; margin-top: 5px\\\"><b>Image to Image Masking</b></div>\\n <p>Upload an image, its mask image to create a new one based on the changes you have described for the mask area.</p>\\n <p>Click <a href=\\\"https://platform.stability.ai/\\\">here</a> for more info.</p>\";\n var r = (o = t == null ? void 0 : t.stabilityAI) == null ? void 0 : o.imageToImageMasking;\n _typeof(r) == \"object\" && (r.engine_id && (_this20.url = \"https://api.stability.ai/v1/generation/\".concat(r.engine_id, \"/image-to-image/masking\")), r.weight !== void 0 && r.weight !== null && (_this20._imageWeight = r.weight), r.mask_source !== void 0 && r.mask_source !== null && (_this20._maskSource = r.mask_source), ri.cleanConfig(r), Object.assign(_this20.rawBody, r)), _this20.canSendMessage = ri.canSendFileTextMessage;\n return _this20;\n }\n _inherits(ri, _Si2);\n return _createClass(ri, [{\n key: \"createFormDataBody\",\n value: function createFormDataBody(e, t, i, n) {\n var r = new FormData();\n return r.append(\"init_image\", t), r.append(\"mask_source\", String(this._maskSource)), r.append(\"mask_image\", i), n && n !== \"\" && r.append(\"text_prompts[0][text]\", n), this._imageWeight !== void 0 && this._imageWeight !== null && r.append(\"text_prompts[0][weight]\", String(this._imageWeight)), Object.keys(e).forEach(function (o) {\n r.append(o, String(e[o]));\n }), r.get(\"weight\") === void 0 && r.append(\"weight\", String(1)), r;\n }\n // prettier-ignore\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee42(e, t, i) {\n var o, a, n, r;\n return _regeneratorRuntime().wrap(function _callee42$(_context42) {\n while (1) switch (_context42.prev = _context42.next) {\n case 0:\n if (this.connectSettings) {\n _context42.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (!(!i || !i[0] || !i[1])) {\n _context42.next = 4;\n break;\n }\n throw new Error(\"Image was not found\");\n case 4:\n n = (a = (o = t[t.length - 1]) == null ? void 0 : o.text) == null ? void 0 : a.trim(), r = this.createFormDataBody(this.rawBody, i[0], i[1], n);\n v.tempRemoveContentHeader(this.connectSettings, T.request.bind(this, this, r, e), !1);\n case 6:\n case \"end\":\n return _context42.stop();\n }\n }, _callee42, this);\n }));\n function callServiceAPI(_x85, _x86, _x87) {\n return _callServiceAPI6.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee43(e) {\n return _regeneratorRuntime().wrap(function _callee43$(_context43) {\n while (1) switch (_context43.prev = _context43.next) {\n case 0:\n if (!e.message) {\n _context43.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context43.abrupt(\"return\", {\n files: e.artifacts.map(function (i) {\n return {\n src: \"\".concat(Bt).concat(i.base64),\n type: \"image\"\n };\n })\n });\n case 3:\n case \"end\":\n return _context43.stop();\n }\n }, _callee43);\n }));\n function extractResultData(_x88) {\n return _extractResultData3.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.engine_id, delete e.weight;\n }\n }, {\n key: \"canSendFileTextMessage\",\n value: function canSendFileTextMessage(e, t) {\n return !!(t != null && t[0]) && !!(e && e.trim() !== \"\");\n }\n }]);\n}(Si);\nvar go = /*#__PURE__*/function (_Ft3) {\n function go(e) {\n _classCallCheck(this, go);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.audioSpeechRecognition,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n return _callSuper(this, go, [e, \"Attach an audio file\", \"facebook/wav2vec2-large-960h-lv60-self\", t, i, {\n audio: {}\n }]);\n }\n _inherits(go, _Ft3);\n return _createClass(go, [{\n key: \"extractPollResultData\",\n value: function () {\n var _extractPollResultData3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee44(e) {\n return _regeneratorRuntime().wrap(function _callee44$(_context44) {\n while (1) switch (_context44.prev = _context44.next) {\n case 0:\n if (!e.estimated_time) {\n _context44.next = 2;\n break;\n }\n return _context44.abrupt(\"return\", {\n timeoutMS: (e.estimated_time + 1) * 1e3\n });\n case 2:\n if (!e.error) {\n _context44.next = 4;\n break;\n }\n throw e.error;\n case 4:\n return _context44.abrupt(\"return\", {\n text: e.text || \"\"\n });\n case 5:\n case \"end\":\n return _context44.stop();\n }\n }, _callee44);\n }));\n function extractPollResultData(_x89) {\n return _extractPollResultData3.apply(this, arguments);\n }\n return extractPollResultData;\n }()\n }]);\n}(Ft);\nvar bo = /*#__PURE__*/function (_ke2) {\n function bo(e) {\n _classCallCheck(this, bo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.textGeneration,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n return _callSuper(this, bo, [e, \"Once upon a time\", \"gpt2\", t, i]);\n }\n _inherits(bo, _ke2);\n return _createClass(bo, [{\n key: \"extractResultData\",\n value: function () {\n var _extractResultData4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee45(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee45$(_context45) {\n while (1) switch (_context45.prev = _context45.next) {\n case 0:\n if (!e.error) {\n _context45.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context45.abrupt(\"return\", {\n text: ((t = e[0]) == null ? void 0 : t.generated_text) || \"\"\n });\n case 3:\n case \"end\":\n return _context45.stop();\n }\n }, _callee45);\n }));\n function extractResultData(_x90) {\n return _extractResultData4.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(ke);\nvar vo = /*#__PURE__*/function (_ke3) {\n function vo(e) {\n var _this21;\n _classCallCheck(this, vo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.questionAnswer,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n _this21 = _callSuper(this, vo, [e, \"Ask a question\", \"bert-large-uncased-whole-word-masking-finetuned-squad\", t, i]), _this21.permittedErrorPrefixes = [\"Authorization header\", \"Error in\"], _this21.context = t.context;\n return _this21;\n }\n _inherits(vo, _ke3);\n return _createClass(vo, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = t[t.length - 1].text;\n if (i) return {\n inputs: {\n question: i,\n context: this.context,\n options: {\n wait_for_model: !0\n }\n }\n };\n }\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee46(e) {\n return _regeneratorRuntime().wrap(function _callee46$(_context46) {\n while (1) switch (_context46.prev = _context46.next) {\n case 0:\n if (!e.error) {\n _context46.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context46.abrupt(\"return\", {\n text: e.answer || \"\"\n });\n case 3:\n case \"end\":\n return _context46.stop();\n }\n }, _callee46);\n }));\n function extractResultData(_x91) {\n return _extractResultData5.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(ke);\nvar yo = /*#__PURE__*/function (_ke4) {\n function yo(e) {\n _classCallCheck(this, yo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.summarization,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n return _callSuper(this, yo, [e, \"Insert text to summarize\", \"facebook/bart-large-cnn\", t, i]);\n }\n _inherits(yo, _ke4);\n return _createClass(yo, [{\n key: \"extractResultData\",\n value: function () {\n var _extractResultData6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee47(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee47$(_context47) {\n while (1) switch (_context47.prev = _context47.next) {\n case 0:\n if (!e.error) {\n _context47.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context47.abrupt(\"return\", {\n text: ((t = e[0]) == null ? void 0 : t.summary_text) || \"\"\n });\n case 3:\n case \"end\":\n return _context47.stop();\n }\n }, _callee47);\n }));\n function extractResultData(_x92) {\n return _extractResultData6.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(ke);\nvar Eo = /*#__PURE__*/function (_ke5) {\n function Eo(e) {\n var _this22$maxMessages;\n var _this22;\n _classCallCheck(this, Eo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.conversation,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n _this22 = _callSuper(this, Eo, [e, \"Ask me anything!\", \"facebook/blenderbot-400M-distill\", t, i]), (_this22$maxMessages = _this22.maxMessages) !== null && _this22$maxMessages !== void 0 ? _this22$maxMessages : _this22.maxMessages = -1;\n return _this22;\n }\n // prettier-ignore\n _inherits(Eo, _ke5);\n return _createClass(Eo, [{\n key: \"processMessages\",\n value: function processMessages(e) {\n var t = e.filter(function (a) {\n return a.text;\n }),\n i = t[t.length - 1].text,\n n = t.slice(0, t.length - 1);\n if (!i) return;\n var r = n.filter(function (a) {\n return a.role === \"user\";\n }).map(function (a) {\n return a.text;\n }),\n o = n.filter(function (a) {\n return a.role === \"ai\";\n }).map(function (a) {\n return a.text;\n });\n return {\n past_user_inputs: r,\n generated_responses: o,\n mostRecentMessageText: i\n };\n }\n // prettier-ignore\n }, {\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var _i$options;\n var i = JSON.parse(JSON.stringify(e)),\n n = this.processMessages(t);\n if (n) return (_i$options = i.options) !== null && _i$options !== void 0 ? _i$options : i.options = {}, i.options.wait_for_model = !0, _objectSpread({\n inputs: {\n past_user_inputs: n.past_user_inputs,\n generated_responses: n.generated_responses,\n text: n.mostRecentMessageText\n }\n }, i);\n }\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee48(e) {\n return _regeneratorRuntime().wrap(function _callee48$(_context48) {\n while (1) switch (_context48.prev = _context48.next) {\n case 0:\n if (!e.error) {\n _context48.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context48.abrupt(\"return\", {\n text: e.generated_text || \"\"\n });\n case 3:\n case \"end\":\n return _context48.stop();\n }\n }, _callee48);\n }));\n function extractResultData(_x93) {\n return _extractResultData7.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(ke);\nvar oi = /*#__PURE__*/function (_Si3) {\n function oi(e) {\n var _this23;\n _classCallCheck(this, oi);\n var o;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t.stabilityAI,\n n = {\n images: {\n files: {\n acceptedFormats: \".png\",\n maxNumberOfFiles: 1\n }\n }\n };\n _this23 = _callSuper(this, oi, [e, be.buildKeyVerificationDetails(), be.buildHeaders, i, n]), _this23.url = \"https://api.stability.ai/v1/generation/stable-diffusion-v1-6/image-to-image\", _this23.textInputPlaceholderText = \"Describe image changes\", _this23.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Stability AI: Image to Image</b></div>\\n <p>Upload an image to create a new one with the changes you have described.</p>\\n <p>Click <a href=\\\"https://platform.stability.ai/\\\">here</a> for more info.</p>\";\n var r = (o = t.stabilityAI) == null ? void 0 : o.imageToImage;\n _typeof(r) == \"object\" && (r.engine_id && (_this23.url = \"https://api.stability.ai/v1/generation/\".concat(r.engine_id, \"/text-to-image\")), r.weight !== void 0 && r.weight !== null && (_this23._imageWeight = r.weight), oi.cleanConfig(r), Object.assign(_this23.rawBody, r)), _this23.canSendMessage = oi.canSendFileTextMessage;\n return _this23;\n }\n _inherits(oi, _Si3);\n return _createClass(oi, [{\n key: \"createFormDataBody\",\n value: function createFormDataBody(e, t, i) {\n var n = new FormData();\n return n.append(\"init_image\", t), i && i !== \"\" && n.append(\"text_prompts[0][text]\", i), this._imageWeight !== void 0 && this._imageWeight !== null && n.append(\"text_prompts[0][weight]\", String(this._imageWeight)), Object.keys(e).forEach(function (r) {\n n.append(r, String(e[r]));\n }), n.get(\"weight\") === void 0 && n.append(\"weight\", String(1)), n;\n }\n // prettier-ignore\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee49(e, t, i) {\n var o, a, n, r;\n return _regeneratorRuntime().wrap(function _callee49$(_context49) {\n while (1) switch (_context49.prev = _context49.next) {\n case 0:\n if (this.connectSettings) {\n _context49.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (i) {\n _context49.next = 4;\n break;\n }\n throw new Error(\"Image was not found\");\n case 4:\n n = (a = (o = t[t.length - 1]) == null ? void 0 : o.text) == null ? void 0 : a.trim(), r = this.createFormDataBody(this.rawBody, i[0], n);\n v.tempRemoveContentHeader(this.connectSettings, T.request.bind(this, this, r, e), !1);\n case 6:\n case \"end\":\n return _context49.stop();\n }\n }, _callee49, this);\n }));\n function callServiceAPI(_x94, _x95, _x96) {\n return _callServiceAPI7.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee50(e) {\n return _regeneratorRuntime().wrap(function _callee50$(_context50) {\n while (1) switch (_context50.prev = _context50.next) {\n case 0:\n if (!e.message) {\n _context50.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context50.abrupt(\"return\", {\n files: e.artifacts.map(function (i) {\n return {\n src: \"\".concat(Bt).concat(i.base64),\n type: \"image\"\n };\n })\n });\n case 3:\n case \"end\":\n return _context50.stop();\n }\n }, _callee50);\n }));\n function extractResultData(_x97) {\n return _extractResultData8.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.engine_id, delete e.weight;\n }\n }, {\n key: \"canSendFileTextMessage\",\n value: function canSendFileTextMessage(e, t) {\n return !!(t != null && t[0]) && !!(e && e.trim() !== \"\");\n }\n }]);\n}(Si);\nvar xo = /*#__PURE__*/function (_ke6) {\n function xo(e) {\n _classCallCheck(this, xo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.translation,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n return _callSuper(this, xo, [e, \"Insert text to translate\", \"Helsinki-NLP/opus-tatoeba-en-ja\", t, i]);\n }\n _inherits(xo, _ke6);\n return _createClass(xo, [{\n key: \"extractResultData\",\n value: function () {\n var _extractResultData9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee51(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee51$(_context51) {\n while (1) switch (_context51.prev = _context51.next) {\n case 0:\n if (!e.error) {\n _context51.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context51.abrupt(\"return\", {\n text: ((t = e[0]) == null ? void 0 : t.translation_text) || \"\"\n });\n case 3:\n case \"end\":\n return _context51.stop();\n }\n }, _callee51);\n }));\n function extractResultData(_x98) {\n return _extractResultData9.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(ke);\nvar ai = /*#__PURE__*/function (_Si4) {\n function ai(e) {\n var _this24;\n _classCallCheck(this, ai);\n var r;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t.stabilityAI;\n _this24 = _callSuper(this, ai, [e, be.buildKeyVerificationDetails(), be.buildHeaders, i]), _this24.url = \"https://api.stability.ai/v1/generation/stable-diffusion-v1-6/text-to-image\", _this24.textInputPlaceholderText = \"Describe an image\", _this24.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Stability AI: Text to Image</b></div>\\n <p>Insert text to generate an image.</p>\\n <p>Click <a href=\\\"https://platform.stability.ai/\\\">here</a> for more info.</p>\";\n var n = (r = t.stabilityAI) == null ? void 0 : r.textToImage;\n _typeof(n) == \"object\" && (n.engine_id && (_this24.url = \"https://api.stability.ai/v1/generation/\".concat(n.engine_id, \"/text-to-image\")), n.weight !== void 0 && n.weight !== null && (_this24._imageWeight = n.weight), ai.cleanConfig(n), Object.assign(_this24.rawBody, n)), _this24.canSendMessage = ai.canSendTextMessage;\n return _this24;\n }\n _inherits(ai, _Si4);\n return _createClass(ai, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = JSON.parse(JSON.stringify(e)),\n n = {\n text: t\n };\n return this._imageWeight && (n.weight = this._imageWeight), i.text_prompts = [n], i;\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee52(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee52$(_context52) {\n while (1) switch (_context52.prev = _context52.next) {\n case 0:\n if (this.connectSettings) {\n _context52.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t[t.length - 1].text);\n T.request(this, i, e);\n case 4:\n case \"end\":\n return _context52.stop();\n }\n }, _callee52, this);\n }));\n function callServiceAPI(_x99, _x100) {\n return _callServiceAPI8.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee53(e) {\n return _regeneratorRuntime().wrap(function _callee53$(_context53) {\n while (1) switch (_context53.prev = _context53.next) {\n case 0:\n if (!e.message) {\n _context53.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context53.abrupt(\"return\", {\n files: e.artifacts.map(function (i) {\n return {\n src: \"\".concat(Bt).concat(i.base64),\n type: \"image\"\n };\n })\n });\n case 3:\n case \"end\":\n return _context53.stop();\n }\n }, _callee53);\n }));\n function extractResultData(_x101) {\n return _extractResultData10.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.engine_id, delete e.weight;\n }\n }, {\n key: \"canSendTextMessage\",\n value: function canSendTextMessage(e) {\n return !!(e && e.trim() !== \"\");\n }\n }]);\n}(Si);\nvar _o = /*#__PURE__*/function (_ke7) {\n function _o(e) {\n var _this25;\n _classCallCheck(this, _o);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.huggingFace) == null ? void 0 : r.fillMask,\n i = (o = e.directConnection) == null ? void 0 : o.huggingFace;\n _this25 = _callSuper(this, _o, [e, \"The goal of life is [MASK].\", \"bert-base-uncased\", t, i]), _this25.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Hugging Face</b></div>\\n <p>Insert a sentence with the word [MASK] and the model will try to fill it for you. E.g. I want [MASK].</p>\\n <p>First message may take an extented amount of time to complete as the model needs to be initialized.</p>\", _this25.permittedErrorPrefixes = [\"Authorization header\", \"No mask_token\"];\n return _this25;\n }\n _inherits(_o, _ke7);\n return _createClass(_o, [{\n key: \"extractResultData\",\n value: function () {\n var _extractResultData11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee54(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee54$(_context54) {\n while (1) switch (_context54.prev = _context54.next) {\n case 0:\n if (!e.error) {\n _context54.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context54.abrupt(\"return\", {\n text: ((t = e[0]) == null ? void 0 : t.sequence) || \"\"\n });\n case 3:\n case \"end\":\n return _context54.stop();\n }\n }, _callee54);\n }));\n function extractResultData(_x102) {\n return _extractResultData11.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(ke);\nvar li = /*#__PURE__*/function () {\n function li() {\n _classCallCheck(this, li);\n }\n return _createClass(li, null, [{\n key: \"buildHeaders\",\n value: function buildHeaders(e) {\n return {\n Authorization: \"Bearer \".concat(e),\n \"Content-Type\": \"application/json\",\n accept: \"application/json\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleVerificationResult\",\n value: function handleVerificationResult(e, t, i, n) {\n var o;\n (o = e.message) != null && o.includes(\"invalid request: prompt must be at least 1 token long\") ? i(t) : n(A.INVALID_KEY);\n }\n }, {\n key: \"buildKeyVerificationDetails\",\n value: function buildKeyVerificationDetails() {\n return {\n url: \"https://api.cohere.ai/v1/generate\",\n method: \"POST\",\n handleVerificationResult: li.handleVerificationResult,\n body: JSON.stringify({\n prompt: \"\"\n })\n };\n }\n }]);\n}();\nvar fn = /*#__PURE__*/function (_z3) {\n function fn(e, t, i, n, r) {\n var _this26;\n _classCallCheck(this, fn);\n _this26 = _callSuper(this, fn, [e, li.buildKeyVerificationDetails(), li.buildHeaders, r]), _this26.insertKeyPlaceholderText = \"Cohere API Key\", _this26.keyHelpUrl = \"https://dashboard.cohere.ai/api-keys\", _this26.permittedErrorPrefixes = [\"invalid\"], _this26.url = t, _this26.textInputPlaceholderText = i, n && _typeof(n) == \"object\" && Object.assign(_this26.rawBody, n);\n return _this26;\n }\n _inherits(fn, _z3);\n return _createClass(fn);\n}(z);\nvar So = /*#__PURE__*/function (_fn) {\n function So(e) {\n _classCallCheck(this, So);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.cohere) == null ? void 0 : r.textGeneration,\n i = (o = e.directConnection) == null ? void 0 : o.cohere;\n return _callSuper(this, So, [e, \"https://api.cohere.ai/v1/generate\", \"Once upon a time\", t, i]);\n }\n _inherits(So, _fn);\n return _createClass(So, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = JSON.parse(JSON.stringify(e)),\n n = t[t.length - 1].text;\n if (n) return _objectSpread({\n prompt: n\n }, i);\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee55(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee55$(_context55) {\n while (1) switch (_context55.prev = _context55.next) {\n case 0:\n if (this.connectSettings) {\n _context55.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e);\n case 4:\n case \"end\":\n return _context55.stop();\n }\n }, _callee55, this);\n }));\n function callServiceAPI(_x103, _x104) {\n return _callServiceAPI9.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee56(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee56$(_context56) {\n while (1) switch (_context56.prev = _context56.next) {\n case 0:\n if (!e.message) {\n _context56.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context56.abrupt(\"return\", {\n text: ((t = e.generations) == null ? void 0 : t[0].text) || \"\"\n });\n case 3:\n case \"end\":\n return _context56.stop();\n }\n }, _callee56);\n }));\n function extractResultData(_x105) {\n return _extractResultData12.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(fn);\nvar wo = /*#__PURE__*/function (_fn2) {\n function wo(e) {\n _classCallCheck(this, wo);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.cohere) == null ? void 0 : r.summarization,\n i = (o = e.directConnection) == null ? void 0 : o.cohere;\n return _callSuper(this, wo, [e, \"https://api.cohere.ai/v1/summarize\", \"Insert text to summarize\", t, i]);\n }\n _inherits(wo, _fn2);\n return _createClass(wo, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = JSON.parse(JSON.stringify(e)),\n n = t[t.length - 1].text;\n if (n) return _objectSpread({\n text: n\n }, i);\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee57(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee57$(_context57) {\n while (1) switch (_context57.prev = _context57.next) {\n case 0:\n if (this.connectSettings) {\n _context57.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e);\n case 4:\n case \"end\":\n return _context57.stop();\n }\n }, _callee57, this);\n }));\n function callServiceAPI(_x106, _x107) {\n return _callServiceAPI10.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData13 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee58(e) {\n return _regeneratorRuntime().wrap(function _callee58$(_context58) {\n while (1) switch (_context58.prev = _context58.next) {\n case 0:\n if (!e.message) {\n _context58.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context58.abrupt(\"return\", {\n text: e.summary || \"\"\n });\n case 3:\n case \"end\":\n return _context58.stop();\n }\n }, _callee58);\n }));\n function extractResultData(_x108) {\n return _extractResultData13.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(fn);\nvar O = /*#__PURE__*/function () {\n function O() {\n _classCallCheck(this, O);\n }\n return _createClass(O, null, [{\n key: \"buildHeaders\",\n value: function buildHeaders(e) {\n return {\n Authorization: \"Bearer \".concat(e),\n \"Content-Type\": \"application/json\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleVerificationResult\",\n value: function handleVerificationResult(e, t, i, n) {\n var r = e;\n r.error ? r.error.code === \"invalid_api_key\" ? n(A.INVALID_KEY) : n(A.CONNECTION_FAILED) : i(t);\n }\n }, {\n key: \"buildKeyVerificationDetails\",\n value: function buildKeyVerificationDetails() {\n return {\n url: \"https://api.openai.com/v1/models\",\n method: \"GET\",\n handleVerificationResult: O.handleVerificationResult\n };\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, {\n key: \"directFetch\",\n value: function () {\n var _directFetch = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee59(e, t, i) {\n var n,\n r,\n _args59 = arguments;\n return _regeneratorRuntime().wrap(function _callee59$(_context59) {\n while (1) switch (_context59.prev = _context59.next) {\n case 0:\n n = _args59.length > 3 && _args59[3] !== undefined ? _args59[3] : !0;\n e.connectSettings.method = i;\n _context59.next = 4;\n return v.fetch(e, e.connectSettings.headers, n, t).then(function (o) {\n return v.processResponseByType(o);\n });\n case 4:\n r = _context59.sent;\n if (!r.error) {\n _context59.next = 7;\n break;\n }\n throw r.error.message;\n case 7:\n return _context59.abrupt(\"return\", r);\n case 8:\n case \"end\":\n return _context59.stop();\n }\n }, _callee59);\n }));\n function directFetch(_x109, _x110, _x111) {\n return _directFetch.apply(this, arguments);\n }\n return directFetch;\n }()\n }]);\n}();\nvar ot = /*#__PURE__*/function (_z4) {\n function ot(e) {\n var _o$model, _a$voice;\n var _this27;\n _classCallCheck(this, ot);\n var r, o, a;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t == null ? void 0 : t.openAI;\n _this27 = _callSuper(this, ot, [e, O.buildKeyVerificationDetails(), O.buildHeaders, i]), _this27.insertKeyPlaceholderText = \"OpenAI API Key\", _this27.keyHelpUrl = \"https://platform.openai.com/account/api-keys\", _this27.url = \"https://api.openai.com/v1/audio/speech\", _this27.permittedErrorPrefixes = [\"Invalid\"], _this27.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>OpenAI : Text To Speech</b></div>\\n <p>Generate an audio file based on your text input.</p>\\n <p>Click <a href=\\\"https://platform.openai.com/docs/guides/text-to-speech\\\">here</a> for more information.</p>\";\n var n = (r = t == null ? void 0 : t.openAI) == null ? void 0 : r.textToSpeech;\n _typeof(n) == \"object\" && Object.assign(_this27.rawBody, n), (_o$model = (o = _this27.rawBody).model) !== null && _o$model !== void 0 ? _o$model : o.model = ot.DEFAULT_MODEL, (_a$voice = (a = _this27.rawBody).voice) !== null && _a$voice !== void 0 ? _a$voice : a.voice = ot.DEFAULT_VOIDE, _this27.textInputPlaceholderText = \"Insert text to generate audio\", _this27.rawBody.response_format = \"mp3\";\n return _this27;\n }\n _inherits(ot, _z4);\n return _createClass(ot, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var r, o;\n var i = JSON.parse(JSON.stringify(e)),\n n = (o = (r = t[t.length - 1]) == null ? void 0 : r.text) == null ? void 0 : o.trim();\n return n && n !== \"\" && (i.input = n), i;\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee60(e, t) {\n var n, i;\n return _regeneratorRuntime().wrap(function _callee60$(_context60) {\n while (1) switch (_context60.prev = _context60.next) {\n case 0:\n if ((n = this.connectSettings) != null && n.headers) {\n _context60.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n this.url = this.connectSettings.url || this.url;\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e);\n case 5:\n case \"end\":\n return _context60.stop();\n }\n }, _callee60, this);\n }));\n function callServiceAPI(_x112, _x113) {\n return _callServiceAPI11.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData14 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee61(e) {\n return _regeneratorRuntime().wrap(function _callee61$(_context61) {\n while (1) switch (_context61.prev = _context61.next) {\n case 0:\n if (!(e instanceof Blob)) {\n _context61.next = 2;\n break;\n }\n return _context61.abrupt(\"return\", new Promise(function (t) {\n var i = new FileReader();\n i.readAsDataURL(e), i.onload = function (n) {\n t({\n files: [{\n src: n.target.result,\n type: \"audio\"\n }]\n });\n };\n }));\n case 2:\n if (!e.error) {\n _context61.next = 4;\n break;\n }\n throw e.error.message;\n case 4:\n return _context61.abrupt(\"return\", {\n error: \"error\"\n });\n case 5:\n case \"end\":\n return _context61.stop();\n }\n }, _callee61);\n }));\n function extractResultData(_x114) {\n return _extractResultData14.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(z);\not.DEFAULT_MODEL = \"tts-1\", ot.DEFAULT_VOIDE = \"alloy\";\nvar Qi = ot;\nvar de = /*#__PURE__*/function (_z5) {\n function de(e) {\n var _o$model2;\n var _this28;\n _classCallCheck(this, de);\n var r, o;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t == null ? void 0 : t.openAI;\n _this28 = _callSuper(this, de, [e, O.buildKeyVerificationDetails(), O.buildHeaders, i, {\n audio: {}\n }]), _this28.insertKeyPlaceholderText = \"OpenAI API Key\", _this28.keyHelpUrl = \"https://platform.openai.com/account/api-keys\", _this28.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>OpenAI : Speech To Text</b></div>\\n <p><b>Upload an audio file</b> to transcribe it into text. You can optionally provide text to guide the audio\\n processing.\\n <p>Click <a href=\\\"https://platform.openai.com/docs/guides/speech-to-text\\\">here</a> for more info.</p>\", _this28.url = \"\", _this28.permittedErrorPrefixes = [\"Invalid\"], _this28.textInputPlaceholderText = \"Upload an audio file\", _this28._service_url = de.AUDIO_TRANSCRIPTIONS_URL;\n var n = (r = t == null ? void 0 : t.openAI) == null ? void 0 : r.audio;\n _typeof(n) == \"object\" && (_this28.processConfig(n), de.cleanConfig(n), Object.assign(_this28.rawBody, n)), (_o$model2 = (o = _this28.rawBody).model) !== null && _o$model2 !== void 0 ? _o$model2 : o.model = de.DEFAULT_MODEL, _this28.rawBody.response_format = \"json\", _this28.canSendMessage = de.canSendFileMessage;\n return _this28;\n }\n _inherits(de, _z5);\n return _createClass(de, [{\n key: \"processConfig\",\n value: function processConfig(e) {\n e != null && e.type && e.type === \"translation\" && (this._service_url = de.AUDIO_TRANSLATIONS_URL, delete e.language);\n }\n }, {\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var r, o;\n var i = JSON.parse(JSON.stringify(e)),\n n = (o = (r = t[t.length - 1]) == null ? void 0 : r.text) == null ? void 0 : o.trim();\n return n && n !== \"\" && (i.prompt = n), i;\n }\n // prettier-ignore\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee62(e, t, i) {\n var o, n, r;\n return _regeneratorRuntime().wrap(function _callee62$(_context62) {\n while (1) switch (_context62.prev = _context62.next) {\n case 0:\n if ((o = this.connectSettings) != null && o.headers) {\n _context62.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (i != null && i[0]) {\n _context62.next = 4;\n break;\n }\n throw new Error(\"No file was added\");\n case 4:\n this.url = this.connectSettings.url || this._service_url;\n n = this.preprocessBody(this.rawBody, t), r = de.createFormDataBody(n, i[0]);\n v.tempRemoveContentHeader(this.connectSettings, T.request.bind(this, this, r, e), !1);\n case 7:\n case \"end\":\n return _context62.stop();\n }\n }, _callee62, this);\n }));\n function callServiceAPI(_x115, _x116, _x117) {\n return _callServiceAPI12.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData15 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee63(e) {\n return _regeneratorRuntime().wrap(function _callee63$(_context63) {\n while (1) switch (_context63.prev = _context63.next) {\n case 0:\n if (!e.error) {\n _context63.next = 2;\n break;\n }\n throw e.error.message;\n case 2:\n return _context63.abrupt(\"return\", {\n text: e.text\n });\n case 3:\n case \"end\":\n return _context63.stop();\n }\n }, _callee63);\n }));\n function extractResultData(_x118) {\n return _extractResultData15.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"canSendFileMessage\",\n value: function canSendFileMessage(e, t) {\n return !!(t != null && t[0]);\n }\n }, {\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.type;\n }\n }, {\n key: \"createFormDataBody\",\n value: function createFormDataBody(e, t) {\n var i = new FormData();\n return i.append(\"file\", t), Object.keys(e).forEach(function (n) {\n i.append(n, String(e[n]));\n }), i;\n }\n }]);\n}(z);\nde.AUDIO_TRANSCRIPTIONS_URL = \"https://api.openai.com/v1/audio/transcriptions\", de.AUDIO_TRANSLATIONS_URL = \"https://api.openai.com/v1/audio/translations\", de.DEFAULT_MODEL = \"whisper-1\";\nvar en = de;\nvar ae = /*#__PURE__*/function () {\n function ae() {\n _classCallCheck(this, ae);\n }\n return _createClass(ae, null, [{\n key: \"buildTextToSpeechHeaders\",\n value: function buildTextToSpeechHeaders(e, t) {\n return {\n \"Ocp-Apim-Subscription-Key\": t,\n \"Content-Type\": \"application/ssml+xml\",\n \"X-Microsoft-OutputFormat\": e\n };\n }\n }, {\n key: \"buildSpeechToTextHeaders\",\n value: function buildSpeechToTextHeaders(e) {\n return {\n \"Ocp-Apim-Subscription-Key\": e,\n Accept: \"application/json\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleSpeechVerificationResult\",\n value: function handleSpeechVerificationResult(e, t, i, n) {\n e.error ? n(A.INVALID_KEY) : i(t);\n }\n }, {\n key: \"buildSpeechKeyVerificationDetails\",\n value: function buildSpeechKeyVerificationDetails(e) {\n return {\n url: \"https://\".concat(e, \".api.cognitive.microsoft.com/sts/v1.0/issuetoken\"),\n method: \"POST\",\n createHeaders: function createHeaders(t) {\n return {\n \"Ocp-Apim-Subscription-Key\": \"\".concat(t)\n };\n },\n handleVerificationResult: ae.handleSpeechVerificationResult\n };\n }\n }, {\n key: \"buildSummarizationHeader\",\n value: function buildSummarizationHeader(e) {\n return {\n \"Ocp-Apim-Subscription-Key\": e,\n \"Content-Type\": \"application/json\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleLanguageVerificationResult\",\n value: function handleLanguageVerificationResult(e, t, i, n) {\n var o;\n ((o = e.error) == null ? void 0 : o.code) === \"401\" ? n(A.INVALID_KEY) : i(t);\n }\n }, {\n key: \"buildLanguageKeyVerificationDetails\",\n value: function buildLanguageKeyVerificationDetails(e) {\n return {\n url: \"\".concat(e, \"/language/analyze-text/jobs?api-version=2022-10-01-preview\"),\n method: \"POST\",\n createHeaders: function createHeaders(t) {\n return {\n \"Ocp-Apim-Subscription-Key\": \"\".concat(t)\n };\n },\n handleVerificationResult: ae.handleLanguageVerificationResult\n };\n }\n // prettier-ignore\n }, {\n key: \"handleTranslationVerificationResult\",\n value: function handleTranslationVerificationResult(e, t, i, n) {\n e.json().then(function (o) {\n !Array.isArray(o) && o.error.code === 401e3 ? n(A.INVALID_KEY) : i(t);\n });\n }\n }, {\n key: \"buildTranslationKeyVerificationDetails\",\n value: function buildTranslationKeyVerificationDetails(e) {\n return {\n url: \"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=es\",\n method: \"POST\",\n createHeaders: function createHeaders(t) {\n return ae.buildTranslationHeaders(e, t);\n },\n handleVerificationResult: ae.handleTranslationVerificationResult\n };\n }\n }, {\n key: \"buildTranslationHeaders\",\n value: function buildTranslationHeaders(e, t) {\n var i = {\n \"Ocp-Apim-Subscription-Key\": t,\n \"Content-Type\": \"application/json\"\n };\n return e && (i[\"Ocp-Apim-Subscription-Region\"] = e), i;\n }\n }]);\n}();\nvar To = /*#__PURE__*/function (_z6) {\n // prettier-ignore\n function To(e, t, i, n, r) {\n var _this29;\n _classCallCheck(this, To);\n _this29 = _callSuper(this, To, [e, ae.buildLanguageKeyVerificationDetails(i), t, n, r]), _this29.insertKeyPlaceholderText = \"Azure Language Subscription Key\", _this29.keyHelpUrl =\n // eslint-disable-next-line max-len\n \"https://learn.microsoft.com/en-us/azure/api-management/api-management-subscriptions#create-and-manage-subscriptions-in-azure-portal\", _this29.permittedErrorPrefixes = [\"Access\"];\n return _this29;\n }\n _inherits(To, _z6);\n return _createClass(To);\n}(z);\nvar Co = /*#__PURE__*/function (_To) {\n function Co(e) {\n var _a$language;\n var _this30;\n _classCallCheck(this, Co);\n var n, r, o, a;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.azure) == null ? void 0 : r.summarization,\n i = (o = e.directConnection) == null ? void 0 : o.azure;\n _this30 = _callSuper(this, Co, [e, ae.buildSummarizationHeader, t.endpoint, i]), _this30.url = \"\", _this30.textInputPlaceholderText = \"Insert text to summarize\", (_a$language = (a = _this30.rawBody).language) !== null && _a$language !== void 0 ? _a$language : a.language = \"en\", Object.assign(_this30.rawBody, t), _this30.url = \"\".concat(t.endpoint, \"/language/analyze-text/jobs?api-version=2022-10-01-preview\");\n return _this30;\n }\n _inherits(Co, _To);\n return _createClass(Co, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = t[t.length - 1].text;\n if (i) return {\n analysisInput: {\n documents: [{\n id: \"1\",\n language: e.language,\n text: i\n }]\n },\n tasks: [{\n kind: \"ExtractiveSummarization\"\n }]\n };\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI13 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee64(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee64$(_context64) {\n while (1) switch (_context64.prev = _context64.next) {\n case 0:\n if (this.connectSettings) {\n _context64.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e), this.messages = e;\n case 4:\n case \"end\":\n return _context64.stop();\n }\n }, _callee64, this);\n }));\n function callServiceAPI(_x119, _x120) {\n return _callServiceAPI13.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData16 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee65(e) {\n var t, _i10, n;\n return _regeneratorRuntime().wrap(function _callee65$(_context65) {\n while (1) switch (_context65.prev = _context65.next) {\n case 0:\n if (!e.error) {\n _context65.next = 2;\n break;\n }\n throw e.error.message;\n case 2:\n if (this.messages && this.completionsHandlers) {\n _i10 = e.headers.get(\"operation-location\"), n = {\n method: \"GET\",\n headers: (t = this.connectSettings) == null ? void 0 : t.headers\n };\n T.executePollRequest(this, _i10, n, this.messages);\n }\n return _context65.abrupt(\"return\", {\n makingAnotherRequest: !0\n });\n case 4:\n case \"end\":\n return _context65.stop();\n }\n }, _callee65, this);\n }));\n function extractResultData(_x121) {\n return _extractResultData16.apply(this, arguments);\n }\n return extractResultData;\n }()\n }, {\n key: \"extractPollResultData\",\n value: function () {\n var _extractPollResultData4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee66(e) {\n var t, _iterator, _step, _i11;\n return _regeneratorRuntime().wrap(function _callee66$(_context66) {\n while (1) switch (_context66.prev = _context66.next) {\n case 0:\n if (!e.error) {\n _context66.next = 2;\n break;\n }\n throw e.error;\n case 2:\n if (!(e.status === \"running\")) {\n _context66.next = 4;\n break;\n }\n return _context66.abrupt(\"return\", {\n timeoutMS: 2e3\n });\n case 4:\n if (!(e.errors.length > 0)) {\n _context66.next = 6;\n break;\n }\n throw e.errors[0];\n case 6:\n if (!(e.tasks.items[0].results.errors.length > 0)) {\n _context66.next = 8;\n break;\n }\n throw e.tasks.items[0].results.errors[0];\n case 8:\n t = \"\";\n _iterator = _createForOfIteratorHelper(e.tasks.items[0].results.documents[0].sentences);\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n _i11 = _step.value;\n t += _i11.text;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n return _context66.abrupt(\"return\", {\n text: t || \"\"\n });\n case 12:\n case \"end\":\n return _context66.stop();\n }\n }, _callee66);\n }));\n function extractPollResultData(_x122) {\n return _extractPollResultData4.apply(this, arguments);\n }\n return extractPollResultData;\n }()\n }]);\n}(To);\nvar Et = /*#__PURE__*/function () {\n function Et() {\n _classCallCheck(this, Et);\n }\n return _createClass(Et, null, [{\n key: \"poll\",\n value: function () {\n var _poll2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee67(e, t) {\n var i, a, l, d;\n return _regeneratorRuntime().wrap(function _callee67$(_context67) {\n while (1) switch (_context67.prev = _context67.next) {\n case 0:\n i = {\n authorization: e,\n \"content-type\": \"application/json\"\n };\n _context67.t0 = \"https://api.assemblyai.com/v2/transcript/\";\n _context67.next = 4;\n return fetch(\"https://api.assemblyai.com/v2/transcript\", {\n method: \"POST\",\n body: JSON.stringify({\n audio_url: t\n }),\n headers: i\n });\n case 4:\n _context67.next = 6;\n return _context67.sent.json();\n case 6:\n _context67.t1 = _context67.sent.id;\n a = _context67.t0.concat.call(_context67.t0, _context67.t1);\n case 8:\n if (l) {\n _context67.next = 24;\n break;\n }\n _context67.next = 11;\n return fetch(a, {\n headers: i\n });\n case 11:\n _context67.next = 13;\n return _context67.sent.json();\n case 13:\n d = _context67.sent;\n if (!(d.status === \"completed\")) {\n _context67.next = 18;\n break;\n }\n l = d;\n _context67.next = 22;\n break;\n case 18:\n if (!(d.status === \"error\")) {\n _context67.next = 20;\n break;\n }\n throw new Error(\"Transcription failed: \".concat(d.error));\n case 20:\n _context67.next = 22;\n return new Promise(function (h) {\n return setTimeout(h, 3e3);\n });\n case 22:\n _context67.next = 8;\n break;\n case 24:\n return _context67.abrupt(\"return\", l);\n case 25:\n case \"end\":\n return _context67.stop();\n }\n }, _callee67);\n }));\n function poll(_x123, _x124) {\n return _poll2.apply(this, arguments);\n }\n return poll;\n }()\n }, {\n key: \"buildHeaders\",\n value: function buildHeaders(e) {\n return {\n Authorization: e,\n \"Content-Type\": \"application/octet-stream\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleVerificationResult\",\n value: function handleVerificationResult(e, t, i, n) {\n var r = e;\n r.error ? r.error.code === \"invalid_api_key\" ? n(A.INVALID_KEY) : n(A.CONNECTION_FAILED) : i(t);\n }\n }, {\n key: \"buildKeyVerificationDetails\",\n value: function buildKeyVerificationDetails() {\n return {\n url: \"https://api.assemblyai.com/v2/upload\",\n method: \"POST\",\n handleVerificationResult: Et.handleVerificationResult\n };\n }\n }]);\n}();\nvar pn = /*#__PURE__*/function (_z7) {\n function pn(e) {\n var _this31;\n _classCallCheck(this, pn);\n var i;\n var t = (i = e.directConnection) == null ? void 0 : i.assemblyAI;\n _this31 = _callSuper(this, pn, [e, Et.buildKeyVerificationDetails(), Et.buildHeaders, t, {\n audio: {}\n }]), _this31.insertKeyPlaceholderText = \"AssemblyAI API Key\", _this31.keyHelpUrl = \"https://www.assemblyai.com/app/account\", _this31.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>AssemblyAI Audio</b></div>\\n <p><b>Upload an audio file</b> to transcribe it into text.\\n <p>\\n Click <a href=\\\"https://www.assemblyai.com/docs/Guides/transcribing_an_audio_file#get-started\\\">here</a> for more info.\\n </p>\", _this31.url = \"https://api.assemblyai.com/v2/upload\", _this31.isTextInputDisabled = !0, _this31.textInputPlaceholderText = \"Upload an audio file\", _this31.permittedErrorPrefixes = [\"Authentication\", \"Invalid\"], _this31.canSendMessage = pn.canFileSendMessage;\n return _this31;\n }\n _inherits(pn, _z7);\n return _createClass(pn, [{\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI14 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee68(e, t, i) {\n var n;\n return _regeneratorRuntime().wrap(function _callee68$(_context68) {\n while (1) switch (_context68.prev = _context68.next) {\n case 0:\n if ((n = this.connectSettings) != null && n.headers) {\n _context68.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (i != null && i[0]) {\n _context68.next = 4;\n break;\n }\n throw new Error(\"No file was added\");\n case 4:\n T.request(this, i[0], e, !1);\n case 5:\n case \"end\":\n return _context68.stop();\n }\n }, _callee68, this);\n }));\n function callServiceAPI(_x125, _x126, _x127) {\n return _callServiceAPI14.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData17 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee69(e) {\n var n, r, t;\n return _regeneratorRuntime().wrap(function _callee69$(_context69) {\n while (1) switch (_context69.prev = _context69.next) {\n case 0:\n if (!e.error) {\n _context69.next = 2;\n break;\n }\n throw e.error;\n case 2:\n t = (r = (n = this.connectSettings) == null ? void 0 : n.headers) == null ? void 0 : r.Authorization;\n _context69.next = 5;\n return Et.poll(t, e.upload_url);\n case 5:\n _context69.t0 = _context69.sent.text;\n return _context69.abrupt(\"return\", {\n text: _context69.t0\n });\n case 7:\n case \"end\":\n return _context69.stop();\n }\n }, _callee69, this);\n }));\n function extractResultData(_x128) {\n return _extractResultData17.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"canFileSendMessage\",\n value: function canFileSendMessage(e, t) {\n return !!(t != null && t[0]);\n }\n }]);\n}(z);\nvar cs = /*#__PURE__*/function (_z8) {\n // prettier-ignore\n function cs(e, t, i, n, r) {\n var _this32;\n _classCallCheck(this, cs);\n _this32 = _callSuper(this, cs, [e, ae.buildSpeechKeyVerificationDetails(i), t, n, r]), _this32.insertKeyPlaceholderText = \"Azure Speech Subscription Key\", _this32.keyHelpUrl =\n // eslint-disable-next-line max-len\n \"https://learn.microsoft.com/en-us/azure/api-management/api-management-subscriptions#create-and-manage-subscriptions-in-azure-portal\";\n return _this32;\n }\n _inherits(cs, _z8);\n return _createClass(cs);\n}(z);\nvar yi = /*#__PURE__*/function (_cs) {\n // prettier-ignore\n function yi(e) {\n var _a$lang, _l$name, _c$gender;\n var _this33;\n _classCallCheck(this, yi);\n var n, r, o, a, l, c;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.azure) == null ? void 0 : r.textToSpeech,\n i = (o = e.directConnection) == null ? void 0 : o.azure;\n _this33 = _callSuper(this, yi, [e, ae.buildTextToSpeechHeaders.bind({}, (t == null ? void 0 : t.outputFormat) || \"audio-16khz-128kbitrate-mono-mp3\"), t.region, i]), _this33.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Azure Text To Speech</b></div>\\n <p>Insert text to synthesize it to audio.\\n <p>\\n Click <a href=\\\"\".concat(yi.HELP_LINK, \"\\\">here</a> for more info.\\n </p>\"), _this33.url = \"\", Object.assign(_this33.rawBody, t), (_a$lang = (a = _this33.rawBody).lang) !== null && _a$lang !== void 0 ? _a$lang : a.lang = \"en-US\", (_l$name = (l = _this33.rawBody).name) !== null && _l$name !== void 0 ? _l$name : l.name = \"en-US-JennyNeural\", (_c$gender = (c = _this33.rawBody).gender) !== null && _c$gender !== void 0 ? _c$gender : c.gender = \"Female\", _this33.url = \"https://\".concat(t.region, \".tts.speech.microsoft.com/cognitiveservices/v1\");\n return _this33;\n }\n _inherits(yi, _cs);\n return _createClass(yi, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = t[t.length - 1].text;\n if (i) return \"<speak version='1.0' xml:lang='\".concat(e.lang, \"'>\\n <voice xml:lang='\").concat(e.lang, \"' xml:gender='\").concat(e.gender, \"' name='\").concat(e.name, \"'>\\n \").concat(i, \"\\n </voice>\\n </speak>\");\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI15 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee70(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee70$(_context70) {\n while (1) switch (_context70.prev = _context70.next) {\n case 0:\n if (this.connectSettings) {\n _context70.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e, !1);\n case 4:\n case \"end\":\n return _context70.stop();\n }\n }, _callee70, this);\n }));\n function callServiceAPI(_x129, _x130) {\n return _callServiceAPI15.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData18 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee71(e) {\n return _regeneratorRuntime().wrap(function _callee71$(_context71) {\n while (1) switch (_context71.prev = _context71.next) {\n case 0:\n return _context71.abrupt(\"return\", new Promise(function (t) {\n var i = new FileReader();\n i.readAsDataURL(e), i.onload = function (n) {\n t({\n files: [{\n src: n.target.result,\n type: \"audio\"\n }]\n });\n };\n }));\n case 1:\n case \"end\":\n return _context71.stop();\n }\n }, _callee71);\n }));\n function extractResultData(_x131) {\n return _extractResultData18.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(cs);\nyi.HELP_LINK =\n// eslint-disable-next-line max-len\n\"https://learn.microsoft.com/en-GB/azure/cognitive-services/speech-service/get-started-text-to-speech?tabs=windows%2Cterminal&pivots=programming-language-rest\";\nvar tn = yi;\nvar Ct = /*#__PURE__*/function (_cs2) {\n function Ct(e) {\n var _this34;\n _classCallCheck(this, Ct);\n var o, a, l;\n var t = (a = (o = e.directConnection) == null ? void 0 : o.azure) == null ? void 0 : a.speechToText,\n i = (l = e.directConnection) == null ? void 0 : l.azure,\n n = {\n audio: {\n files: {\n acceptedFormats: \".wav,.ogg\"\n }\n }\n };\n _this34 = _callSuper(this, Ct, [e, ae.buildSpeechToTextHeaders, t.region, i, n]), _this34.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>Azure Speech To Text</b></div>\\n <p><b>Upload a .wav or .ogg audio file</b> to transcribe it into text.\\n <p>\\n Click <a href=\\\"\".concat(Ct.HELP_LINK, \"\\\">here</a> for more info.\\n </p>\"), _this34.url = \"\", _this34.isTextInputDisabled = !0, _this34.textInputPlaceholderText = \"Upload an audio file\", _this34.canSendMessage = Ct.canFileSendMessage;\n var r = t.lang || \"en-US\";\n _this34.url = \"https://\".concat(t.region, \".stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=\").concat(r, \"&format=detailed\"), _this34.recordAudio = void 0;\n return _this34;\n }\n _inherits(Ct, _cs2);\n return _createClass(Ct, [{\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI16 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee72(e, t, i) {\n var n, r;\n return _regeneratorRuntime().wrap(function _callee72$(_context72) {\n while (1) switch (_context72.prev = _context72.next) {\n case 0:\n if ((n = this.connectSettings) != null && n.headers) {\n _context72.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (i != null && i[0]) {\n _context72.next = 4;\n break;\n }\n throw new Error(\"No file was added\");\n case 4:\n (r = this.connectSettings) != null && r.headers && (this.connectSettings.headers[\"Content-Type\"] = i[0].name.toLocaleLowerCase().endsWith(\".wav\") ? \"audio/wav; codecs=audio/pcm; samplerate=16000\" : \"audio/ogg; codecs=opus\"), T.request(this, i[0], e, !1);\n case 5:\n case \"end\":\n return _context72.stop();\n }\n }, _callee72, this);\n }));\n function callServiceAPI(_x132, _x133, _x134) {\n return _callServiceAPI16.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData19 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee73(e) {\n return _regeneratorRuntime().wrap(function _callee73$(_context73) {\n while (1) switch (_context73.prev = _context73.next) {\n case 0:\n if (!e.error) {\n _context73.next = 2;\n break;\n }\n throw e.error;\n case 2:\n return _context73.abrupt(\"return\", {\n text: e.DisplayText || \"\"\n });\n case 3:\n case \"end\":\n return _context73.stop();\n }\n }, _callee73);\n }));\n function extractResultData(_x135) {\n return _extractResultData19.apply(this, arguments);\n }\n return extractResultData;\n }()\n }], [{\n key: \"canFileSendMessage\",\n value: function canFileSendMessage(e, t) {\n return !!(t != null && t[0]);\n }\n }]);\n}(cs);\nCt.HELP_LINK =\n// eslint-disable-next-line max-len\n\"https://learn.microsoft.com/en-GB/azure/cognitive-services/speech-service/get-started-text-to-speech?tabs=windows%2Cterminal&pivots=programming-language-rest\";\nvar nn = Ct;\nvar ko = /*#__PURE__*/function (_z9) {\n // prettier-ignore\n function ko(e) {\n var _this35;\n _classCallCheck(this, ko);\n var n, r, o;\n var t = (r = (n = e.directConnection) == null ? void 0 : n.azure) == null ? void 0 : r.translation,\n i = (o = e.directConnection) == null ? void 0 : o.azure;\n _this35 = _callSuper(this, ko, [e, ae.buildTranslationKeyVerificationDetails(t.region), ae.buildTranslationHeaders.bind({}, t == null ? void 0 : t.region), i]), _this35.insertKeyPlaceholderText = \"Azure Translate Subscription Key\", _this35.keyHelpUrl =\n // eslint-disable-next-line max-len\n \"https://learn.microsoft.com/en-us/azure/api-management/api-management-subscriptions#create-and-manage-subscriptions-in-azure-portal\", _this35.url = \"\", _this35.url = \"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=\".concat(t.language || \"es\");\n return _this35;\n }\n _inherits(ko, _z9);\n return _createClass(ko, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e) {\n var t = e[e.length - 1].text;\n if (t) return [{\n Text: t\n }];\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI17 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee74(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee74$(_context74) {\n while (1) switch (_context74.prev = _context74.next) {\n case 0:\n if (this.connectSettings) {\n _context74.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(t);\n T.request(this, i, e);\n case 4:\n case \"end\":\n return _context74.stop();\n }\n }, _callee74, this);\n }));\n function callServiceAPI(_x136, _x137) {\n return _callServiceAPI17.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData20 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee75(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee75$(_context75) {\n while (1) switch (_context75.prev = _context75.next) {\n case 0:\n if (!Array.isArray(e)) {\n _context75.next = 2;\n break;\n }\n return _context75.abrupt(\"return\", {\n text: ((t = e[0].translations) == null ? void 0 : t[0].text) || \"\"\n });\n case 2:\n throw e.error;\n case 3:\n case \"end\":\n return _context75.stop();\n }\n }, _callee75);\n }));\n function extractResultData(_x138) {\n return _extractResultData20.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(z);\nvar Q = /*#__PURE__*/function () {\n function Q() {\n _classCallCheck(this, Q);\n }\n return _createClass(Q, null, [{\n key: \"storeFiles\",\n value: function () {\n var _storeFiles = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee77(e, t, i) {\n var n, r, o, a;\n return _regeneratorRuntime().wrap(function _callee77$(_context77) {\n while (1) switch (_context77.prev = _context77.next) {\n case 0:\n n = e.connectSettings.headers;\n if (n) {\n _context77.next = 3;\n break;\n }\n return _context77.abrupt(\"return\");\n case 3:\n e.url = \"https://api.openai.com/v1/files\";\n r = n[v.CONTENT_TYPE];\n delete n[v.CONTENT_TYPE];\n o = i.map( /*#__PURE__*/function () {\n var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee76(a) {\n var l;\n return _regeneratorRuntime().wrap(function _callee76$(_context76) {\n while (1) switch (_context76.prev = _context76.next) {\n case 0:\n l = new FormData();\n return _context76.abrupt(\"return\", (l.append(\"purpose\", \"assistants\"), l.append(\"file\", a), new Promise(function (c) {\n c(O.directFetch(e, l, \"POST\", !1));\n })));\n case 2:\n case \"end\":\n return _context76.stop();\n }\n }, _callee76);\n }));\n return function (_x142) {\n return _ref9.apply(this, arguments);\n };\n }());\n _context77.prev = 7;\n _context77.next = 10;\n return Promise.all(o);\n case 10:\n a = _context77.sent.map(function (l) {\n return {\n id: l.id,\n name: l.filename\n };\n });\n return _context77.abrupt(\"return\", (n[v.CONTENT_TYPE] = r, a));\n case 14:\n _context77.prev = 14;\n _context77.t0 = _context77[\"catch\"](7);\n throw n[v.CONTENT_TYPE] = r, v.displayError(t, _context77.t0), e.completionsHandlers.onFinish(), _context77.t0;\n case 17:\n case \"end\":\n return _context77.stop();\n }\n }, _callee77, null, [[7, 14]]);\n }));\n function storeFiles(_x139, _x140, _x141) {\n return _storeFiles.apply(this, arguments);\n }\n return storeFiles;\n }()\n }, {\n key: \"getType\",\n value: function getType(e, t) {\n var i = e[t].path;\n return !i || i.endsWith(\"png\") ? \"image\" : \"any\";\n }\n }, {\n key: \"getFiles\",\n value: function () {\n var _getFiles = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee78(e, t) {\n var i, r;\n return _regeneratorRuntime().wrap(function _callee78$(_context78) {\n while (1) switch (_context78.prev = _context78.next) {\n case 0:\n i = t.map(function (_ref10) {\n var o = _ref10.fileId;\n return e.url = \"https://api.openai.com/v1/files/\".concat(o, \"/content\"), new Promise(function (a) {\n a(O.directFetch(e, void 0, \"GET\", !1));\n });\n });\n _context78.next = 3;\n return Promise.all(i);\n case 3:\n r = _context78.sent.map(function (o, a) {\n return new Promise(function (l) {\n var c = new FileReader();\n c.readAsDataURL(o), c.onload = function (d) {\n l({\n src: d.target.result,\n name: t[a].name,\n type: Q.getType(t, a)\n });\n };\n });\n });\n _context78.next = 6;\n return Promise.all(r);\n case 6:\n return _context78.abrupt(\"return\", _context78.sent);\n case 7:\n case \"end\":\n return _context78.stop();\n }\n }, _callee78);\n }));\n function getFiles(_x143, _x144) {\n return _getFiles.apply(this, arguments);\n }\n return getFiles;\n }()\n }, {\n key: \"getFileName\",\n value: function getFileName(e) {\n var t = e.split(\"/\");\n return t[t.length - 1];\n }\n // prettier-ignore\n }, {\n key: \"getFilesAndNewText\",\n value: function () {\n var _getFilesAndNewText = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee79(e, t, i, n) {\n var o, a, r;\n return _regeneratorRuntime().wrap(function _callee79$(_context79) {\n while (1) switch (_context79.prev = _context79.next) {\n case 0:\n _context79.t0 = t.length > 0;\n if (!_context79.t0) {\n _context79.next = 6;\n break;\n }\n _context79.next = 4;\n return Q.getFiles(e, t);\n case 4:\n r = _context79.sent;\n (o = n == null ? void 0 : n.text) != null && o.value && r.forEach(function (l, c) {\n var h;\n if (!l.src) return;\n var d = t[c].path;\n (h = n == null ? void 0 : n.text) != null && h.value && d && (n.text.value = n.text.value.replace(d, l.src));\n });\n case 6:\n return _context79.abrupt(\"return\", (a = n == null ? void 0 : n.text) != null && a.value ? {\n text: n.text.value,\n role: i\n } : {\n files: r,\n role: i\n });\n case 7:\n case \"end\":\n return _context79.stop();\n }\n }, _callee79);\n }));\n function getFilesAndNewText(_x145, _x146, _x147, _x148) {\n return _getFilesAndNewText.apply(this, arguments);\n }\n return getFilesAndNewText;\n }() // Noticed an issue where text contains a sandbox hyperlink to a csv, but no annotation provided\n // To reproduce use the following text:\n // give example data for a csv and create a suitable bar chart for it with a link\n // Don't think it can be fixed and it is something on OpenAI side of things\n // prettier-ignore\n }, {\n key: \"getFileDetails\",\n value: function getFileDetails(e, t) {\n var n;\n var i = [];\n return (n = t == null ? void 0 : t.text) != null && n.value && e.content.forEach(function (r) {\n var o, a;\n (a = (o = r.text) == null ? void 0 : o.annotations) == null || a.forEach(function (l) {\n var c;\n l.text && l.text.startsWith(\"sandbox:\") && (c = l.file_path) != null && c.file_id && i.push({\n path: l.text,\n fileId: l.file_path.file_id,\n name: Q.getFileName(l.text)\n });\n });\n }), t != null && t.image_file && i.push({\n fileId: t.image_file.file_id\n }), i;\n }\n }, {\n key: \"getFilesAndText\",\n value: function () {\n var _getFilesAndText = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee80(e, t, i) {\n var n;\n return _regeneratorRuntime().wrap(function _callee80$(_context80) {\n while (1) switch (_context80.prev = _context80.next) {\n case 0:\n n = Q.getFileDetails(t, i);\n _context80.next = 3;\n return Q.getFilesAndNewText(e, n, t.role, i);\n case 3:\n return _context80.abrupt(\"return\", _context80.sent);\n case 4:\n case \"end\":\n return _context80.stop();\n }\n }, _callee80);\n }));\n function getFilesAndText(_x149, _x150, _x151) {\n return _getFilesAndText.apply(this, arguments);\n }\n return getFilesAndText;\n }()\n }, {\n key: \"parseResult\",\n value: function parseResult(e, t) {\n var i = [];\n if (t) i = e.data;else for (var n = 0; n < e.data.length; n += 1) {\n var r = e.data[n];\n if (r.role === \"assistant\") i.push(r);else break;\n }\n return i.reverse();\n }\n // test this using this prompt and it should give 2 text mesages and a file:\n // \"give example data for a csv and create a suitable bar chart\"\n }, {\n key: \"parseMessages\",\n value: function parseMessages(e, t) {\n var i = [];\n return t.forEach( /*#__PURE__*/function () {\n var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee82(n) {\n return _regeneratorRuntime().wrap(function _callee82$(_context82) {\n while (1) switch (_context82.prev = _context82.next) {\n case 0:\n n.content.filter(function (r) {\n return !!r.text || !!r.image_file;\n }).sort(function (r) {\n return r.text ? -1 : r.image_file ? 1 : 0;\n }).forEach( /*#__PURE__*/function () {\n var _ref12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee81(r) {\n return _regeneratorRuntime().wrap(function _callee81$(_context81) {\n while (1) switch (_context81.prev = _context81.next) {\n case 0:\n i.push(Q.getFilesAndText(e, n, r));\n case 1:\n case \"end\":\n return _context81.stop();\n }\n }, _callee81);\n }));\n return function (_x153) {\n return _ref12.apply(this, arguments);\n };\n }());\n case 1:\n case \"end\":\n return _context82.stop();\n }\n }, _callee82);\n }));\n return function (_x152) {\n return _ref11.apply(this, arguments);\n };\n }()), Promise.all(i);\n }\n }, {\n key: \"processStreamMessages\",\n value: function () {\n var _processStreamMessages = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee83(e, t) {\n return _regeneratorRuntime().wrap(function _callee83$(_context83) {\n while (1) switch (_context83.prev = _context83.next) {\n case 0:\n return _context83.abrupt(\"return\", Q.parseMessages(e, [{\n content: t,\n role: \"assistant\"\n }]));\n case 1:\n case \"end\":\n return _context83.stop();\n }\n }, _callee83);\n }));\n function processStreamMessages(_x154, _x155) {\n return _processStreamMessages.apply(this, arguments);\n }\n return processStreamMessages;\n }()\n }, {\n key: \"processAPIMessages\",\n value: function () {\n var _processAPIMessages = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee84(e, t, i) {\n var n;\n return _regeneratorRuntime().wrap(function _callee84$(_context84) {\n while (1) switch (_context84.prev = _context84.next) {\n case 0:\n n = Q.parseResult(t, i);\n return _context84.abrupt(\"return\", Q.parseMessages(e, n));\n case 2:\n case \"end\":\n return _context84.stop();\n }\n }, _callee84);\n }));\n function processAPIMessages(_x156, _x157, _x158) {\n return _processAPIMessages.apply(this, arguments);\n }\n return processAPIMessages;\n }()\n }]);\n}();\nQ.FILES_WITH_TEXT_ERROR = \"content with type `text` must have `text` values\", Q.FUNCTION_TOOL_RESP_ERROR = \"Response must contain an array of strings for each individual function/tool_call, see https://deepchat.dev/docs/directConnection/OpenAI/#assistant-functions.\";\nvar ve = Q;\nvar L = /*#__PURE__*/function (_z10) {\n function L(e) {\n var _c$headers, _d$OpenAIBeta;\n var _this36;\n _classCallCheck(this, L);\n var r, o, a, l, c, d;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t.openAI;\n _this36 = _callSuper(this, L, [e, O.buildKeyVerificationDetails(), O.buildHeaders, i]), _this36.insertKeyPlaceholderText = \"OpenAI API Key\", _this36.keyHelpUrl = \"https://platform.openai.com/account/api-keys\", _this36.url = \"\", _this36.permittedErrorPrefixes = [\"Incorrect\", \"Please send text\"], _this36.searchedForThreadId = !1, _this36.config = {}, _this36.newAssistantDetails = {\n model: \"gpt-4\"\n }, _this36.shouldFetchHistory = !1, _this36.waitingForStreamResponse = !1, _this36.isSSEStream = !1;\n var n = (r = t.openAI) == null ? void 0 : r.assistant;\n if (_typeof(n) == \"object\") {\n _this36.config = n;\n var _this36$config = _this36.config,\n h = _this36$config.new_assistant,\n u = _this36$config.thread_id,\n f = _this36$config.load_thread_history;\n Object.assign(_this36.newAssistantDetails, h), u && (_this36.sessionId = u), f && (_this36.shouldFetchHistory = !0);\n var _ref13 = (a = (o = e.directConnection) == null ? void 0 : o.openAI) == null ? void 0 : a.assistant,\n m = _ref13.function_handler;\n m && (_this36._functionHandler = m), _this36.filesToolType = n.files_tool_type;\n } else (l = t.openAI) != null && l.assistant && (t.openAI.assistant = n);\n (_c$headers = (c = _this36.connectSettings).headers) !== null && _c$headers !== void 0 ? _c$headers : c.headers = {}, (_d$OpenAIBeta = (d = _this36.connectSettings.headers)[\"OpenAI-Beta\"]) !== null && _d$OpenAIBeta !== void 0 ? _d$OpenAIBeta : d[\"OpenAI-Beta\"] = \"assistants=v2\", _this36.maxMessages = 1, _this36.isSSEStream = !!(_this36.stream && (_typeof(_this36.stream) != \"object\" || !_this36.stream.simulation)), _this36.shouldFetchHistory && _this36.sessionId && (_this36.fetchHistory = _this36.fetchHistoryFunc.bind(_this36));\n return _this36;\n }\n _inherits(L, _z10);\n return _createClass(L, [{\n key: \"fetchHistoryFunc\",\n value: function () {\n var _fetchHistoryFunc = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee85() {\n var _this37 = this;\n var _e2;\n return _regeneratorRuntime().wrap(function _callee85$(_context85) {\n while (1) switch (_context85.prev = _context85.next) {\n case 0:\n setTimeout(function () {\n return _this37.deepChat.disableSubmitButton();\n }, 2);\n _context85.prev = 1;\n _context85.next = 4;\n return this.getThreadMessages(this.sessionId, !0);\n case 4:\n _e2 = _context85.sent;\n return _context85.abrupt(\"return\", (this.deepChat.disableSubmitButton(!1), _e2));\n case 8:\n _context85.prev = 8;\n _context85.t0 = _context85[\"catch\"](1);\n return _context85.abrupt(\"return\", [{\n error: \"failed to fetch thread history\"\n }]);\n case 11:\n case \"end\":\n return _context85.stop();\n }\n }, _callee85, this, [[1, 8]]);\n }));\n function fetchHistoryFunc() {\n return _fetchHistoryFunc.apply(this, arguments);\n }\n return fetchHistoryFunc;\n }()\n }, {\n key: \"processMessage\",\n value: function processMessage(e, t) {\n var i = this.totalMessagesMaxCharLength || -1,\n n = ft.getCharacterLimitMessages(e, i)[0];\n if (t && t.length > 0) {\n var r = this.filesToolType;\n if (typeof this.filesToolType == \"function\") {\n var a = this.filesToolType(t.map(function (_ref14) {\n var l = _ref14.name;\n return l;\n }));\n a === \"code_interpreter\" || a === \"file_search\" || a === \"images\" ? r = a : (console.error(\"Tool type \\\"\".concat(a, \"\\\" is not valid\")), console.error('Expected \"code_interpreter\" or \"file_search\" or \"images\". Going to default to \"images\"'));\n }\n if (r === \"file_search\") return L.processAttachmentsMessage(n, t, \"file_search\");\n if (r === \"code_interpreter\") return L.processAttachmentsMessage(n, t, \"code_interpreter\");\n if (t.find(function (_ref15) {\n var a = _ref15.name;\n return !F.isImageFileExtension(a);\n })) console.error(\"The uploaded files contained a non-image file\"), console.error('Make sure only images can be uploaded or define a \"code_interpreter\" or \"file_search\" value in the \"files_tool_type\" property'), console.warn('Make sure your existing assistant supports these \"tools\" or specify them in the \"new_assistant\" property');else {\n var _a = L.processImageMessage(n, t);\n if (_a) return _a;\n }\n }\n return {\n content: n.text || \"\",\n role: \"user\"\n };\n }\n }, {\n key: \"createNewThreadMessages\",\n value: function createNewThreadMessages(e, t, i) {\n var n = JSON.parse(JSON.stringify(e)),\n r = this.processMessage(t, i);\n return n.thread = {\n messages: [r]\n }, n;\n }\n }, {\n key: \"callService\",\n value: function callService(e, t, i) {\n if (this.messages = e, this.sessionId) {\n this.url = \"\".concat(L.THREAD_PREFIX, \"/\").concat(this.sessionId, \"/messages\");\n var n = this.processMessage(t, i);\n T.request(this, n, e);\n } else {\n this.url = \"\".concat(L.THREAD_PREFIX, \"/runs\");\n var _n2 = this.createNewThreadMessages(this.rawBody, t, i);\n this.isSSEStream ? this.createStreamRun(_n2) : T.request(this, _n2, e);\n }\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI18 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee86(e, t, i) {\n var _r$assistant_id;\n var r, n;\n return _regeneratorRuntime().wrap(function _callee86$(_context86) {\n while (1) switch (_context86.prev = _context86.next) {\n case 0:\n if (!(this.waitingForStreamResponse = !1, !this.connectSettings)) {\n _context86.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (!((_r$assistant_id = (r = this.rawBody).assistant_id) !== null && _r$assistant_id !== void 0)) {\n _context86.next = 6;\n break;\n }\n _r$assistant_id;\n _context86.next = 12;\n break;\n case 6:\n _context86.t0 = this.config.assistant_id;\n if (_context86.t0) {\n _context86.next = 11;\n break;\n }\n _context86.next = 10;\n return this.createNewAssistant();\n case 10:\n _context86.t0 = _context86.sent;\n case 11:\n r.assistant_id = _context86.t0;\n case 12:\n this.searchedForThreadId || this.searchPreviousMessagesForThreadId(e.messages);\n if (!i) {\n _context86.next = 19;\n break;\n }\n _context86.next = 16;\n return ve.storeFiles(this, e, i);\n case 16:\n _context86.t1 = _context86.sent;\n _context86.next = 20;\n break;\n case 19:\n _context86.t1 = void 0;\n case 20:\n n = _context86.t1;\n this.connectSettings.method = \"POST\", this.callService(e, t, n);\n case 22:\n case \"end\":\n return _context86.stop();\n }\n }, _callee86, this);\n }));\n function callServiceAPI(_x159, _x160, _x161) {\n return _callServiceAPI18.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"createNewAssistant\",\n value: function () {\n var _createNewAssistant = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee87() {\n var _e3;\n return _regeneratorRuntime().wrap(function _callee87$(_context87) {\n while (1) switch (_context87.prev = _context87.next) {\n case 0:\n _context87.prev = 0;\n this.url = L.NEW_ASSISTANT_URL;\n _context87.next = 4;\n return O.directFetch(this, JSON.parse(JSON.stringify(this.newAssistantDetails)), \"POST\");\n case 4:\n _e3 = _context87.sent;\n return _context87.abrupt(\"return\", (this.config.assistant_id = _e3.id, this.config.assistant_id));\n case 8:\n _context87.prev = 8;\n _context87.t0 = _context87[\"catch\"](0);\n console.error(_context87.t0), console.error(\"Failed to create a new assistant\");\n case 11:\n case \"end\":\n return _context87.stop();\n }\n }, _callee87, this, [[0, 8]]);\n }));\n function createNewAssistant() {\n return _createNewAssistant.apply(this, arguments);\n }\n return createNewAssistant;\n }()\n }, {\n key: \"searchPreviousMessagesForThreadId\",\n value: function searchPreviousMessagesForThreadId(e) {\n var t = e.find(function (i) {\n return i._sessionId;\n });\n t && (this.sessionId = t._sessionId), this.searchedForThreadId = !0;\n }\n // prettier-ignore\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData21 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee88(e) {\n var n, t, i;\n return _regeneratorRuntime().wrap(function _callee88$(_context88) {\n while (1) switch (_context88.prev = _context88.next) {\n case 0:\n if (!(this.waitingForStreamResponse || this.isSSEStream && this.sessionId)) {\n _context88.next = 4;\n break;\n }\n _context88.next = 3;\n return this.handleStream(e);\n case 3:\n return _context88.abrupt(\"return\", _context88.sent);\n case 4:\n if (!e.error) {\n _context88.next = 6;\n break;\n }\n throw e.error.message.startsWith(ve.FILES_WITH_TEXT_ERROR) ? Error(\"Please send text with your file(s)\") : e.error.message;\n case 6:\n _context88.next = 8;\n return this.assignThreadAndRun(e);\n case 8:\n t = \"\".concat(L.THREAD_PREFIX, \"/\").concat(this.sessionId, \"/runs/\").concat(this.run_id), i = {\n method: \"GET\",\n headers: (n = this.connectSettings) == null ? void 0 : n.headers\n };\n return _context88.abrupt(\"return\", (T.executePollRequest(this, t, i, this.messages), {\n makingAnotherRequest: !0\n }));\n case 10:\n case \"end\":\n return _context88.stop();\n }\n }, _callee88, this);\n }));\n function extractResultData(_x162) {\n return _extractResultData21.apply(this, arguments);\n }\n return extractResultData;\n }()\n }, {\n key: \"assignThreadAndRun\",\n value: function () {\n var _assignThreadAndRun = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee89(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee89$(_context89) {\n while (1) switch (_context89.prev = _context89.next) {\n case 0:\n if (!this.sessionId) {\n _context89.next = 8;\n break;\n }\n this.url = \"\".concat(L.THREAD_PREFIX, \"/\").concat(this.sessionId, \"/runs\");\n _context89.next = 4;\n return O.directFetch(this, JSON.parse(JSON.stringify(this.rawBody)), \"POST\");\n case 4:\n t = _context89.sent;\n this.run_id = t.id;\n _context89.next = 9;\n break;\n case 8:\n this.sessionId = e.thread_id, this.run_id = e.id, this.messages && (this.messages.messages[this.messages.messages.length - 1]._sessionId = this.sessionId);\n case 9:\n case \"end\":\n return _context89.stop();\n }\n }, _callee89, this);\n }));\n function assignThreadAndRun(_x163) {\n return _assignThreadAndRun.apply(this, arguments);\n }\n return assignThreadAndRun;\n }()\n }, {\n key: \"getThreadMessages\",\n value: function () {\n var _getThreadMessages = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee90(e) {\n var t,\n n,\n r,\n i,\n _args90 = arguments;\n return _regeneratorRuntime().wrap(function _callee90$(_context90) {\n while (1) switch (_context90.prev = _context90.next) {\n case 0:\n t = _args90.length > 1 && _args90[1] !== undefined ? _args90[1] : !1;\n this.url = \"\".concat(L.THREAD_PREFIX, \"/\").concat(e, \"/messages?order=desc\");\n _context90.next = 4;\n return O.directFetch(this, {}, \"GET\");\n case 4:\n i = _context90.sent;\n _context90.t0 = !t && this.deepChat.responseInterceptor;\n if (!_context90.t0) {\n _context90.next = 10;\n break;\n }\n _context90.next = 9;\n return (r = (n = this.deepChat).responseInterceptor) == null ? void 0 : r.call(n, i);\n case 9:\n i = _context90.sent;\n case 10:\n return _context90.abrupt(\"return\", ve.processAPIMessages(this, i, t));\n case 11:\n case \"end\":\n return _context90.stop();\n }\n }, _callee90, this);\n }));\n function getThreadMessages(_x164) {\n return _getThreadMessages.apply(this, arguments);\n }\n return getThreadMessages;\n }()\n }, {\n key: \"extractPollResultData\",\n value: function () {\n var _extractPollResultData5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee91(e) {\n var _this38 = this;\n var r, t, i, o, _o$shift, a, l, n;\n return _regeneratorRuntime().wrap(function _callee91$(_context91) {\n while (1) switch (_context91.prev = _context91.next) {\n case 0:\n t = e.status, i = e.required_action;\n if (!(t === \"queued\" || t === \"in_progress\")) {\n _context91.next = 3;\n break;\n }\n return _context91.abrupt(\"return\", {\n timeoutMS: L.POLLING_TIMEOUT_MS\n });\n case 3:\n if (!(t === \"completed\" && this.messages)) {\n _context91.next = 11;\n break;\n }\n _context91.next = 6;\n return this.getThreadMessages(e.thread_id);\n case 6:\n o = _context91.sent;\n _o$shift = o.shift();\n a = _o$shift.text;\n l = _o$shift.files;\n return _context91.abrupt(\"return\", (setTimeout(function () {\n o.forEach(function (c) {\n return _this38.deepChat.addMessage(c);\n });\n }), {\n text: a,\n _sessionId: this.sessionId,\n files: l\n }));\n case 11:\n n = (r = i == null ? void 0 : i.submit_tool_outputs) == null ? void 0 : r.tool_calls;\n if (!(t === \"requires_action\" && n)) {\n _context91.next = 16;\n break;\n }\n _context91.next = 15;\n return this.handleTools(n);\n case 15:\n return _context91.abrupt(\"return\", _context91.sent);\n case 16:\n throw Error(\"Thread run status: \".concat(t));\n case 17:\n case \"end\":\n return _context91.stop();\n }\n }, _callee91, this);\n }));\n function extractPollResultData(_x165) {\n return _extractPollResultData5.apply(this, arguments);\n }\n return extractPollResultData;\n }() // prettier-ignore\n }, {\n key: \"handleTools\",\n value: function () {\n var _handleTools = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee92(e) {\n var t, i, n, r;\n return _regeneratorRuntime().wrap(function _callee92$(_context92) {\n while (1) switch (_context92.prev = _context92.next) {\n case 0:\n if (this._functionHandler) {\n _context92.next = 2;\n break;\n }\n throw Error(\"Please define the `function_handler` property inside the [openAI](https://deepchat.dev/docs/directConnection/openAI#Assistant) object.\");\n case 2:\n t = e.map(function (o) {\n return {\n name: o[\"function\"].name,\n arguments: o[\"function\"].arguments\n };\n }), i = this._functionHandler(t);\n if (!(!Array.isArray(i) || e.length !== i.length)) {\n _context92.next = 5;\n break;\n }\n throw Error(ve.FUNCTION_TOOL_RESP_ERROR);\n case 5:\n _context92.next = 7;\n return Promise.all(i);\n case 7:\n n = _context92.sent;\n if (!n.find(function (o) {\n return typeof o != \"string\";\n })) {\n _context92.next = 10;\n break;\n }\n throw Error(ve.FUNCTION_TOOL_RESP_ERROR);\n case 10:\n r = n.map(function (o, a) {\n return {\n tool_call_id: e[a].id,\n output: o\n };\n });\n this.url = \"\".concat(L.THREAD_PREFIX, \"/\").concat(this.sessionId, \"/runs/\").concat(this.run_id, \"/submit_tool_outputs\");\n if (!this.isSSEStream) {\n _context92.next = 17;\n break;\n }\n _context92.next = 15;\n return this.createStreamRun({\n tool_outputs: r\n });\n case 15:\n _context92.next = 19;\n break;\n case 17:\n _context92.next = 19;\n return O.directFetch(this, {\n tool_outputs: r\n }, \"POST\");\n case 19:\n return _context92.abrupt(\"return\", {\n timeoutMS: L.POLLING_TIMEOUT_MS\n });\n case 20:\n case \"end\":\n return _context92.stop();\n }\n }, _callee92, this);\n }));\n function handleTools(_x166) {\n return _handleTools.apply(this, arguments);\n }\n return handleTools;\n }()\n }, {\n key: \"handleStream\",\n value: function () {\n var _handleStream = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee93(e) {\n var i, n, t, r;\n return _regeneratorRuntime().wrap(function _callee93$(_context93) {\n while (1) switch (_context93.prev = _context93.next) {\n case 0:\n t = (n = (i = e.required_action) == null ? void 0 : i.submit_tool_outputs) == null ? void 0 : n.tool_calls;\n if (!(e.status === \"requires_action\" && t)) {\n _context93.next = 6;\n break;\n }\n this.run_id = e.id;\n _context93.next = 5;\n return this.handleTools(t);\n case 5:\n return _context93.abrupt(\"return\", _context93.sent);\n case 6:\n if (!this.waitingForStreamResponse) {\n _context93.next = 8;\n break;\n }\n return _context93.abrupt(\"return\", this.parseStreamResult(e));\n case 8:\n if (this.isSSEStream && this.sessionId) {\n this.url = \"\".concat(L.THREAD_PREFIX, \"/\").concat(this.sessionId, \"/runs\");\n r = JSON.parse(JSON.stringify(this.rawBody));\n this.createStreamRun(r);\n }\n return _context93.abrupt(\"return\", {\n makingAnotherRequest: !0\n });\n case 10:\n case \"end\":\n return _context93.stop();\n }\n }, _callee93, this);\n }));\n function handleStream(_x167) {\n return _handleStream.apply(this, arguments);\n }\n return handleStream;\n }() // prettier-ignore\n }, {\n key: \"parseStreamResult\",\n value: function () {\n var _parseStreamResult = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee94(e) {\n var t, i, n, r, o, a, l, c, _a2, _l;\n return _regeneratorRuntime().wrap(function _callee94$(_context94) {\n while (1) switch (_context94.prev = _context94.next) {\n case 0:\n if (!(e.content && e.content.length > 0 && this.messages)) {\n _context94.next = 5;\n break;\n }\n a = e.content.find(function (l) {\n return l.text;\n });\n if (!((t = a == null ? void 0 : a.text) != null && t.annotations && a.text.annotations.length > 0)) {\n _context94.next = 5;\n break;\n }\n l = e.content.find(function (d) {\n return !!d.text;\n }) || e.content[0], c = ve.getFilesAndText.bind(this, this, {\n role: \"assistant\",\n content: e.content\n }, l);\n return _context94.abrupt(\"return\", ((i = this.messageStream) == null || i.endStreamAfterFileDownloaded(this.messages, c), {\n text: \"\"\n }));\n case 5:\n if (!((n = e.delta) != null && n.content)) {\n _context94.next = 14;\n break;\n }\n if (!(e.delta.content.length > 1)) {\n _context94.next = 13;\n break;\n }\n _a2 = e.delta.content.find(function (l) {\n return l.text;\n });\n if (!((r = _a2 == null ? void 0 : _a2.text) != null && r.annotations && _a2.text.annotations.length === 0)) {\n _context94.next = 13;\n break;\n }\n _context94.next = 11;\n return ve.processStreamMessages(this, e.delta.content);\n case 11:\n _l = _context94.sent;\n return _context94.abrupt(\"return\", {\n text: _l[0].text,\n files: _l[1].files\n });\n case 13:\n return _context94.abrupt(\"return\", {\n text: (o = e.delta.content[0].text) == null ? void 0 : o.value\n });\n case 14:\n return _context94.abrupt(\"return\", (!this.sessionId && e.thread_id && (this.sessionId = e.thread_id), {\n makingAnotherRequest: !0\n }));\n case 15:\n case \"end\":\n return _context94.stop();\n }\n }, _callee94, this);\n }));\n function parseStreamResult(_x168) {\n return _parseStreamResult.apply(this, arguments);\n }\n return parseStreamResult;\n }() // https://platform.openai.com/docs/api-reference/assistants-streaming\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n }, {\n key: \"createStreamRun\",\n value: function () {\n var _createStreamRun = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee95(e) {\n return _regeneratorRuntime().wrap(function _callee95$(_context95) {\n while (1) switch (_context95.prev = _context95.next) {\n case 0:\n e.stream = !0;\n this.waitingForStreamResponse = !0;\n _context95.next = 4;\n return C.request(this, e, this.messages, !0, !0);\n case 4:\n this.messageStream = _context95.sent;\n case 5:\n case \"end\":\n return _context95.stop();\n }\n }, _callee95, this);\n }));\n function createStreamRun(_x169) {\n return _createStreamRun.apply(this, arguments);\n }\n return createStreamRun;\n }()\n }], [{\n key: \"processImageMessage\",\n value: function processImageMessage(e, t) {\n var i = t == null ? void 0 : t.filter(function (n) {\n return F.isImageFileExtension(n.name);\n }).map(function (n) {\n return {\n type: \"image_file\",\n image_file: {\n file_id: n.id\n }\n };\n });\n if (i && i.length > 0) return e.text && e.text.length > 0 && i.push({\n type: \"text\",\n text: e.text\n }), {\n content: i,\n role: \"user\"\n };\n }\n }, {\n key: \"processAttachmentsMessage\",\n value: function processAttachmentsMessage(e, t, i) {\n return {\n attachments: t.map(function (r) {\n return {\n tools: [{\n type: i\n }],\n file_id: r.id\n };\n }),\n content: [{\n type: \"text\",\n text: e.text\n }],\n role: \"user\"\n };\n }\n }]);\n}(z);\nL.THREAD_PREFIX = \"https://api.openai.com/v1/threads\", L.NEW_ASSISTANT_URL = \"https://api.openai.com/v1/assistants\", L.POLLING_TIMEOUT_MS = 800;\nvar sn = L;\nvar he = /*#__PURE__*/function (_z11) {\n function he(e) {\n var _this39;\n _classCallCheck(this, he);\n var o;\n var t = e.directConnection,\n i = t == null ? void 0 : t.openAI,\n n = {\n images: {\n files: {\n acceptedFormats: \".png\",\n maxNumberOfFiles: 2\n }\n }\n };\n _this39 = _callSuper(this, he, [e, O.buildKeyVerificationDetails(), O.buildHeaders, i, n]), _this39.insertKeyPlaceholderText = \"OpenAI API Key\", _this39.keyHelpUrl = \"https://platform.openai.com/account/api-keys\", _this39.introPanelMarkUp = \"\\n <div style=\\\"width: 100%; text-align: center; margin-left: -10px\\\"><b>OpenAI DALL\\xB7E</b></div>\\n <p><b>Insert text</b> to generate an image.</p>\\n <p><b>Upload 1</b> PNG image to generate its variation and optionally insert text to specify the change.</p>\\n <p><b>Upload 2</b> PNG images where the second is a copy of the first with a transparent area where the edit should\\n take place and text to specify the edit.</p>\\n <p>Click <a href=\\\"https://platform.openai.com/docs/guides/images/introduction\\\">here</a> for more info.</p>\", _this39.url = \"\", _this39.permittedErrorPrefixes = [\"Incorrect\", \"Invalid input image\"];\n var r = (o = t == null ? void 0 : t.openAI) == null ? void 0 : o.images;\n if (_this39.camera) {\n var a = _typeof(r) == \"object\" && r.size ? Number.parseInt(r.size) : 1024;\n _this39.camera.files = {\n dimensions: {\n width: a,\n height: a\n }\n };\n }\n _typeof(r) == \"object\" && Object.assign(_this39.rawBody, r), _this39.canSendMessage = he.canFileSendMessage;\n return _this39;\n }\n _inherits(he, _z11);\n return _createClass(he, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = JSON.parse(JSON.stringify(e));\n return t && t !== \"\" && (i.prompt = t), i;\n }\n // prettier-ignore\n }, {\n key: \"callApiWithImage\",\n value: function callApiWithImage(e, t, i) {\n var o, a;\n var n;\n var r = (a = (o = t[t.length - 1]) == null ? void 0 : o.text) == null ? void 0 : a.trim();\n if (i[1] || r && r !== \"\") {\n this.url = he.IMAGE_EDIT_URL;\n var l = this.preprocessBody(this.rawBody, r);\n n = he.createFormDataBody(l, i[0], i[1]);\n } else this.url = he.IMAGE_VARIATIONS_URL, n = he.createFormDataBody(this.rawBody, i[0]);\n v.tempRemoveContentHeader(this.connectSettings, T.request.bind(this, this, n, e), !1);\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI19 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee96(e, t, i) {\n var n, r;\n return _regeneratorRuntime().wrap(function _callee96$(_context96) {\n while (1) switch (_context96.prev = _context96.next) {\n case 0:\n if ((n = this.connectSettings) != null && n.headers) {\n _context96.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n if (!(i != null && i[0])) {\n _context96.next = 6;\n break;\n }\n this.callApiWithImage(e, t, i);\n _context96.next = 11;\n break;\n case 6:\n if (this.connectSettings) {\n _context96.next = 8;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 8:\n this.url = he.IMAGE_GENERATION_URL;\n r = this.preprocessBody(this.rawBody, t[t.length - 1].text);\n T.request(this, r, e);\n case 11:\n case \"end\":\n return _context96.stop();\n }\n }, _callee96, this);\n }));\n function callServiceAPI(_x170, _x171, _x172) {\n return _callServiceAPI19.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData22 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee97(e) {\n return _regeneratorRuntime().wrap(function _callee97$(_context97) {\n while (1) switch (_context97.prev = _context97.next) {\n case 0:\n if (!e.error) {\n _context97.next = 2;\n break;\n }\n throw e.error.message;\n case 2:\n return _context97.abrupt(\"return\", {\n files: e.data.map(function (i) {\n return i.url ? {\n src: i.url,\n type: \"image\"\n } : {\n src: \"\".concat(Bt).concat(i.b64_json),\n type: \"image\"\n };\n })\n });\n case 3:\n case \"end\":\n return _context97.stop();\n }\n }, _callee97);\n }));\n function extractResultData(_x173) {\n return _extractResultData22.apply(this, arguments);\n }\n return extractResultData;\n }() // private static readonly MODAL_MARKDOWN = `\n // 1 image:\n // - With text - edits image based on the text\n // - No text - creates a variation of the image\n // 2 images:\n // - The second image needs to be a copy of the first with a transparent area where the edit should take place.\n // Add text to describe the required modification.\n // Click here for [more info](https://platform.openai.com/docs/guides/images/introduction).\n // `;\n }], [{\n key: \"canFileSendMessage\",\n value: function canFileSendMessage(e, t) {\n return !!(t != null && t[0]) || !!(e && e.trim() !== \"\");\n }\n }, {\n key: \"createFormDataBody\",\n value: function createFormDataBody(e, t, i) {\n var n = new FormData();\n return n.append(\"image\", t), i && n.append(\"mask\", i), Object.keys(e).forEach(function (r) {\n n.append(r, String(e[r]));\n }), n;\n }\n }]);\n}(z);\nhe.IMAGE_GENERATION_URL = \"https://api.openai.com/v1/images/generations\", he.IMAGE_VARIATIONS_URL = \"https://api.openai.com/v1/images/variations\", he.IMAGE_EDIT_URL = \"https://api.openai.com/v1/images/edits\";\nvar rn = he;\nvar xt = /*#__PURE__*/function (_z12) {\n function xt(e) {\n var _this40$maxMessages, _l$model;\n var _this40;\n _classCallCheck(this, xt);\n var r, o, a, l;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = t.openAI;\n _this40 = _callSuper(this, xt, [e, O.buildKeyVerificationDetails(), O.buildHeaders, i]), _this40.insertKeyPlaceholderText = \"OpenAI API Key\", _this40.keyHelpUrl = \"https://platform.openai.com/account/api-keys\", _this40.url = \"https://api.openai.com/v1/chat/completions\", _this40.permittedErrorPrefixes = [\"Incorrect\"], _this40.asyncCallInProgress = !1, _this40._systemMessage = xt.generateSystemMessage(\"You are a helpful assistant.\");\n var n = (r = t.openAI) == null ? void 0 : r.chat;\n if (_typeof(n) == \"object\") {\n n.system_prompt && (_this40._systemMessage = xt.generateSystemMessage(n.system_prompt));\n var _ref16 = (a = (o = e.directConnection) == null ? void 0 : o.openAI) == null ? void 0 : a.chat,\n c = _ref16.function_handler;\n c && (_this40._functionHandler = c), _this40.cleanConfig(n), Object.assign(_this40.rawBody, n);\n }\n (_this40$maxMessages = _this40.maxMessages) !== null && _this40$maxMessages !== void 0 ? _this40$maxMessages : _this40.maxMessages = -1, (_l$model = (l = _this40.rawBody).model) !== null && _l$model !== void 0 ? _l$model : l.model = \"gpt-4o\";\n return _this40;\n }\n _inherits(xt, _z12);\n return _createClass(xt, [{\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.system_prompt, delete e.function_handler;\n }\n }, {\n key: \"preprocessBody\",\n value:\n // prettier-ignore\n function preprocessBody(e, t) {\n var _i$max_tokens;\n var i = JSON.parse(JSON.stringify(e)),\n n = ft.getCharacterLimitMessages(t, this.totalMessagesMaxCharLength ? this.totalMessagesMaxCharLength - this._systemMessage.content.length : -1).map(function (r) {\n return {\n content: xt.getContent(r),\n role: r.role === b.USER_ROLE ? \"user\" : \"assistant\"\n };\n });\n return t.find(function (r) {\n return r.files && r.files.length > 0;\n }) && ((_i$max_tokens = i.max_tokens) !== null && _i$max_tokens !== void 0 ? _i$max_tokens : i.max_tokens = 300), i.messages = [this._systemMessage].concat(_toConsumableArray(n)), i;\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI20 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee98(e, t) {\n var i, n;\n return _regeneratorRuntime().wrap(function _callee98$(_context98) {\n while (1) switch (_context98.prev = _context98.next) {\n case 0:\n if (this.connectSettings) {\n _context98.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t), n = this.stream;\n n && (_typeof(n) != \"object\" || !n.simulation) || i.stream ? (i.stream = !0, C.request(this, i, e)) : T.request(this, i, e);\n case 4:\n case \"end\":\n return _context98.stop();\n }\n }, _callee98, this);\n }));\n function callServiceAPI(_x174, _x175) {\n return _callServiceAPI20.apply(this, arguments);\n }\n return callServiceAPI;\n }() // prettier-ignore\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData23 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee99(e, t, i) {\n var n, r, o, a;\n return _regeneratorRuntime().wrap(function _callee99$(_context99) {\n while (1) switch (_context99.prev = _context99.next) {\n case 0:\n if (!e.error) {\n _context99.next = 2;\n break;\n }\n throw e.error.message;\n case 2:\n return _context99.abrupt(\"return\", (r = (n = e.choices) == null ? void 0 : n[0]) != null && r.delta ? this.extractStreamResult(e.choices[0], t, i) : (a = (o = e.choices) == null ? void 0 : o[0]) != null && a.message ? e.choices[0].message.tool_calls ? this.handleTools(e.choices[0].message, t, i) : {\n text: e.choices[0].message.content\n } : {\n text: \"\"\n });\n case 3:\n case \"end\":\n return _context99.stop();\n }\n }, _callee99, this);\n }));\n function extractResultData(_x176, _x177, _x178) {\n return _extractResultData23.apply(this, arguments);\n }\n return extractResultData;\n }()\n }, {\n key: \"extractStreamResult\",\n value: function () {\n var _extractStreamResult = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee100(e, t, i) {\n var _this41 = this;\n var n, r, o;\n return _regeneratorRuntime().wrap(function _callee100$(_context100) {\n while (1) switch (_context100.prev = _context100.next) {\n case 0:\n n = e.delta, r = e.finish_reason;\n if (!(r === \"tool_calls\")) {\n _context100.next = 7;\n break;\n }\n this.asyncCallInProgress = !0;\n o = {\n tool_calls: this._streamToolCalls\n };\n return _context100.abrupt(\"return\", (this._streamToolCalls = void 0, this.handleTools(o, t, i)));\n case 7:\n n != null && n.tool_calls && (this._streamToolCalls ? n.tool_calls.forEach(function (o, a) {\n _this41._streamToolCalls && (_this41._streamToolCalls[a][\"function\"].arguments += o[\"function\"].arguments);\n }) : this._streamToolCalls = n.tool_calls);\n case 8:\n return _context100.abrupt(\"return\", {\n text: (n == null ? void 0 : n.content) || \"\"\n });\n case 9:\n case \"end\":\n return _context100.stop();\n }\n }, _callee100, this);\n }));\n function extractStreamResult(_x179, _x180, _x181) {\n return _extractStreamResult.apply(this, arguments);\n }\n return extractStreamResult;\n }() // prettier-ignore\n }, {\n key: \"handleTools\",\n value: function () {\n var _handleTools2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee101(e, t, i) {\n var a, l, c, d, h, n, r, o, u, _u;\n return _regeneratorRuntime().wrap(function _callee101$(_context101) {\n while (1) switch (_context101.prev = _context101.next) {\n case 0:\n if (!(!e.tool_calls || !t || !i || !this._functionHandler)) {\n _context101.next = 2;\n break;\n }\n throw Error(\"Please define the `function_handler` property inside the [openAI](https://deepchat.dev/docs/directConnection/openAI#Chat) object.\");\n case 2:\n n = JSON.parse(JSON.stringify(i));\n r = e.tool_calls.map(function (u) {\n return {\n name: u[\"function\"].name,\n arguments: u[\"function\"].arguments\n };\n });\n _context101.next = 6;\n return (a = this._functionHandler) == null ? void 0 : a.call(this, r);\n case 6:\n o = _context101.sent;\n if (!o.text) {\n _context101.next = 15;\n break;\n }\n u = {\n text: o.text\n };\n _context101.next = 11;\n return (c = (l = this.deepChat).responseInterceptor) == null ? void 0 : c.call(l, u);\n case 11:\n _context101.t0 = _context101.sent;\n if (_context101.t0) {\n _context101.next = 14;\n break;\n }\n _context101.t0 = u;\n case 14:\n return _context101.abrupt(\"return\", _context101.t0);\n case 15:\n if (!(n.messages.push({\n tool_calls: e.tool_calls,\n role: \"assistant\",\n content: null\n }), Array.isArray(o) && !o.find(function (u) {\n return typeof u != \"string\";\n }) || r.length === o.length)) {\n _context101.next = 35;\n break;\n }\n o.forEach(function (u, f) {\n var p;\n var m = (p = e.tool_calls) == null ? void 0 : p[f];\n n == null || n.messages.push({\n role: \"tool\",\n tool_call_id: m == null ? void 0 : m.id,\n name: m == null ? void 0 : m[\"function\"].name,\n content: u.response\n });\n }), delete n.tools, delete n.tool_choice, delete n.stream;\n _context101.prev = 17;\n _context101.next = 20;\n return t == null ? void 0 : t(n).then(function (f) {\n return v.processResponseByType(f);\n });\n case 20:\n _u = _context101.sent;\n _context101.next = 23;\n return (h = (d = this.deepChat).responseInterceptor) == null ? void 0 : h.call(d, _u);\n case 23:\n _context101.t1 = _context101.sent;\n if (_context101.t1) {\n _context101.next = 26;\n break;\n }\n _context101.t1 = _u;\n case 26:\n _u = _context101.t1;\n if (!_u.error) {\n _context101.next = 29;\n break;\n }\n throw _u.error.message;\n case 29:\n return _context101.abrupt(\"return\", {\n text: _u.choices[0].message.content || \"\"\n });\n case 32:\n _context101.prev = 32;\n _context101.t2 = _context101[\"catch\"](17);\n throw this.asyncCallInProgress = !1, _context101.t2;\n case 35:\n throw Error(\"Response object must either be {response: string}[] for each individual function or {text: string} for a direct response, see https://deepchat.dev/docs/directConnection/OpenAI#FunctionHandler.\");\n case 36:\n case \"end\":\n return _context101.stop();\n }\n }, _callee101, this, [[17, 32]]);\n }));\n function handleTools(_x182, _x183, _x184) {\n return _handleTools2.apply(this, arguments);\n }\n return handleTools;\n }()\n }], [{\n key: \"generateSystemMessage\",\n value: function generateSystemMessage(e) {\n return {\n role: \"system\",\n content: e\n };\n }\n }, {\n key: \"getContent\",\n value: function getContent(e) {\n if (e.files && e.files.length > 0) {\n var t = e.files.map(function (i) {\n return {\n type: \"image_url\",\n image_url: {\n url: i.src\n }\n };\n });\n return e.text && e.text.trim().length > 0 && t.unshift({\n type: \"text\",\n text: e.text\n }), t;\n }\n return e.text;\n }\n }]);\n}(z);\nvar Ao = /*#__PURE__*/function (_fn3) {\n function Ao(e) {\n var _this42$maxMessages;\n var _this42;\n _classCallCheck(this, Ao);\n var r;\n var t = JSON.parse(JSON.stringify(e.directConnection)),\n i = (r = t.cohere) == null ? void 0 : r.chat,\n n = t.cohere;\n _this42 = _callSuper(this, Ao, [e, \"https://api.cohere.ai/v1/chat\", \"Ask me anything!\", i, n]), _typeof(i) == \"object\" && Object.assign(_this42.rawBody, i), (_this42$maxMessages = _this42.maxMessages) !== null && _this42$maxMessages !== void 0 ? _this42$maxMessages : _this42.maxMessages = -1;\n return _this42;\n }\n _inherits(Ao, _fn3);\n return _createClass(Ao, [{\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = JSON.parse(JSON.stringify(e)),\n n = t.filter(function (r) {\n return r.text;\n });\n return i.query = n[n.length - 1].text, i.chat_history = n.slice(0, n.length - 1).map(function (r) {\n return {\n text: r.text,\n user_name: r.role === \"ai\" ? \"CHATBOT\" : \"USER\"\n };\n }), i;\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI21 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee102(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee102$(_context102) {\n while (1) switch (_context102.prev = _context102.next) {\n case 0:\n if (this.connectSettings) {\n _context102.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e);\n case 4:\n case \"end\":\n return _context102.stop();\n }\n }, _callee102, this);\n }));\n function callServiceAPI(_x185, _x186) {\n return _callServiceAPI21.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData24 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee103(e) {\n return _regeneratorRuntime().wrap(function _callee103$(_context103) {\n while (1) switch (_context103.prev = _context103.next) {\n case 0:\n if (!e.message) {\n _context103.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context103.abrupt(\"return\", {\n text: e.text\n });\n case 3:\n case \"end\":\n return _context103.stop();\n }\n }, _callee103);\n }));\n function extractResultData(_x187) {\n return _extractResultData24.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(fn);\nvar ci = /*#__PURE__*/function () {\n function ci() {\n _classCallCheck(this, ci);\n }\n return _createClass(ci, null, [{\n key: \"buildHeaders\",\n value: function buildHeaders(e) {\n return {\n Authorization: \"Bearer \".concat(e),\n \"Content-Type\": \"application/json\",\n accept: \"application/json\"\n };\n }\n // prettier-ignore\n }, {\n key: \"handleVerificationResult\",\n value: function handleVerificationResult(e, t, i, n) {\n var o;\n (o = e.message) != null && o.includes(\"invalid request: prompt must be at least 1 token long\") ? i(t) : n(A.INVALID_KEY);\n }\n }, {\n key: \"buildKeyVerificationDetails\",\n value: function buildKeyVerificationDetails() {\n return {\n url: \"https://api.mistral.ai/v1/models\",\n method: \"GET\",\n handleVerificationResult: ci.handleVerificationResult\n };\n }\n }]);\n}();\nvar Mo = /*#__PURE__*/function (_z13) {\n function Mo(e) {\n var _this43$maxMessages, _n$model;\n var _this43;\n _classCallCheck(this, Mo);\n var n;\n var i = JSON.parse(JSON.stringify(e.directConnection)).mistral;\n _this43 = _callSuper(this, Mo, [e, ci.buildKeyVerificationDetails(), ci.buildHeaders, i]), _this43.insertKeyPlaceholderText = \"Mistral API Key\", _this43.keyHelpUrl = \"https://console.mistral.ai/api-keys/\", _this43.url = \"https://api.mistral.ai/v1/chat/completions\", _this43.permittedErrorPrefixes = [\"invalid\"], i && (_this43.cleanConfig(i), Object.assign(_this43.rawBody, i)), (_this43$maxMessages = _this43.maxMessages) !== null && _this43$maxMessages !== void 0 ? _this43$maxMessages : _this43.maxMessages = -1, (_n$model = (n = _this43.rawBody).model) !== null && _n$model !== void 0 ? _n$model : n.model = \"open-mistral-7b\";\n return _this43;\n }\n _inherits(Mo, _z13);\n return _createClass(Mo, [{\n key: \"cleanConfig\",\n value: function cleanConfig(e) {\n delete e.key;\n }\n // build a single string for user\n }, {\n key: \"preprocessBody\",\n value: function preprocessBody(e, t) {\n var i = JSON.parse(JSON.stringify(e)),\n n = t.filter(function (r) {\n return r.text;\n });\n return i.messages = n.slice(0, n.length - 1).map(function (r) {\n return {\n text: r.text,\n user_name: r.role === \"ai\" ? \"system\" : \"user\"\n };\n }), i;\n }\n }, {\n key: \"callServiceAPI\",\n value: function () {\n var _callServiceAPI22 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee104(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee104$(_context104) {\n while (1) switch (_context104.prev = _context104.next) {\n case 0:\n if (this.connectSettings) {\n _context104.next = 2;\n break;\n }\n throw new Error(\"Request settings have not been set up\");\n case 2:\n i = this.preprocessBody(this.rawBody, t);\n T.request(this, i, e);\n case 4:\n case \"end\":\n return _context104.stop();\n }\n }, _callee104, this);\n }));\n function callServiceAPI(_x188, _x189) {\n return _callServiceAPI22.apply(this, arguments);\n }\n return callServiceAPI;\n }()\n }, {\n key: \"extractResultData\",\n value: function () {\n var _extractResultData25 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee105(e) {\n return _regeneratorRuntime().wrap(function _callee105$(_context105) {\n while (1) switch (_context105.prev = _context105.next) {\n case 0:\n if (!e.message) {\n _context105.next = 2;\n break;\n }\n throw e.message;\n case 2:\n return _context105.abrupt(\"return\", {\n text: e.text\n });\n case 3:\n case \"end\":\n return _context105.stop();\n }\n }, _callee105);\n }));\n function extractResultData(_x190) {\n return _extractResultData25.apply(this, arguments);\n }\n return extractResultData;\n }()\n }]);\n}(z);\nvar Ro = /*#__PURE__*/function () {\n function Ro() {\n _classCallCheck(this, Ro);\n }\n return _createClass(Ro, null, [{\n key: \"create\",\n value:\n // this should only be called when no _activeService is set or is demo as otherwise we don't want to reconnect\n function create(e) {\n var t = e.directConnection,\n i = e.connect,\n n = e.demo,\n r = e.webModel;\n if (r) return new It(e);\n if (t) {\n if (t.openAI) return t.openAI.images ? new rn(e) : t.openAI.speechToText ? new en(e) : t.openAI.textToSpeech ? new Qi(e) : t.openAI.assistant ? new sn(e) : new xt(e);\n if (t.assemblyAI) return new pn(e);\n if (t.cohere) return t.cohere.textGeneration ? new So(e) : t.cohere.summarization ? new wo(e) : new Ao(e);\n if (t.huggingFace) return t.huggingFace.textGeneration ? new bo(e) : t.huggingFace.summarization ? new yo(e) : t.huggingFace.translation ? new xo(e) : t.huggingFace.fillMask ? new _o(e) : t.huggingFace.questionAnswer ? new vo(e) : t.huggingFace.audioSpeechRecognition ? new go(e) : t.huggingFace.audioClassification ? new po(e) : t.huggingFace.imageClassification ? new mo(e) : new Eo(e);\n if (t.azure) {\n if (t.azure.speechToText) return new nn(e);\n if (t.azure.textToSpeech) return new tn(e);\n if (t.azure.summarization) return new Co(e);\n if (t.azure.translation) return new ko(e);\n }\n if (t.stabilityAI) return t.stabilityAI.imageToImage ? new oi(e) : t.stabilityAI.imageToImageUpscale ? new si(e) : t.stabilityAI.imageToImageMasking ? new ri(e) : new ai(e);\n if (t.mistral) return new Mo(e);\n }\n return i && (!n || !i.stream) ? new Je(e) : new Je(e, void 0, n || !0);\n }\n }]);\n}();\nvar En = /*#__PURE__*/_createClass(function En() {\n _classCallCheck(this, En);\n});\nEn.attibutes = {\n string: function string(e) {\n return e;\n },\n number: function number(e) {\n return parseFloat(e);\n },\n \"boolean\": function boolean(e) {\n return e === \"true\";\n },\n object: function object(e) {\n return JSON.parse(e);\n },\n array: function array(e) {\n return JSON.parse(e);\n },\n \"function\": function _function(e) {\n return new Function(\"return \".concat(e))();\n }\n};\nvar on = En;\nfunction _(s) {\n return function (e, t) {\n Object.defineProperty(e, t, {});\n var i = e.constructor,\n n = t.toLocaleLowerCase();\n i._attributes_[n] = on.attibutes[s], i._attributeToProperty_[n] = t;\n };\n}\nvar mn = /*#__PURE__*/function () {\n function mn() {\n _classCallCheck(this, mn);\n }\n return _createClass(mn, null, [{\n key: \"colorToHex\",\n value: function colorToHex(e) {\n var t = document.createElement(\"div\");\n return t.style.color = e, document.body.appendChild(t), \"#\".concat(window.getComputedStyle(t).color.match(/\\d+/g).map(function (r) {\n return parseInt(r).toString(16).padStart(2, \"0\");\n }).join(\"\"));\n }\n }, {\n key: \"set\",\n value: function set(e, t) {\n var i, n, r, o;\n if ((n = (i = t == null ? void 0 : t.loading) == null ? void 0 : i.bubble) != null && n.color) {\n var a = mn.colorToHex((o = (r = t == null ? void 0 : t.loading) == null ? void 0 : r.bubble) == null ? void 0 : o.color);\n e.style.setProperty(\"--message-dots-color\", a), e.style.setProperty(\"--message-dots-color-fade\", \"\".concat(a, \"33\"));\n } else e.style.setProperty(\"--message-dots-color\", \"#848484\"), e.style.setProperty(\"--message-dots-color-fade\", \"#55555533\");\n }\n }]);\n}();\nvar di = /*#__PURE__*/function () {\n function di(e, t, i) {\n _classCallCheck(this, di);\n this._isDisplayed = !1, e ? (this._elementRef = this.createIntroPanelWithChild(e, i), this._isDisplayed = !0) : t && (this._elementRef = this.createInternalIntroPanel(t, i), this._isDisplayed = !0);\n }\n return _createClass(di, [{\n key: \"createIntroPanelWithChild\",\n value: function createIntroPanelWithChild(e, t) {\n var i = di.createIntroPanel(t);\n return e.style.display === \"none\" && (e.style.display = \"block\"), i.appendChild(e), i;\n }\n }, {\n key: \"createInternalIntroPanel\",\n value: function createInternalIntroPanel(e, t) {\n var i = di.createIntroPanel(t);\n return i.id = \"internal-intro-panel\", i.innerHTML = e, i;\n }\n }, {\n key: \"hide\",\n value: function hide() {\n this._isDisplayed && this._elementRef && (this._elementRef.style.display = \"none\", this._isDisplayed = !1);\n }\n }, {\n key: \"display\",\n value: function display() {\n !this._isDisplayed && this._elementRef && (this._elementRef.style.display = \"\", this._isDisplayed = !0);\n }\n }], [{\n key: \"createIntroPanel\",\n value: function createIntroPanel(e) {\n var t = document.createElement(\"div\");\n return t.classList.add(\"intro-panel\"), Object.assign(t.style, e), t;\n }\n }]);\n}();\nvar Io = /*#__PURE__*/function () {\n function Io(e, t, i) {\n _classCallCheck(this, Io);\n this._isLoading = !1, this._isComplete = !1, this._messages = t, this.populateHistory(e), i.fetchHistory && this.fetchHistory(i.fetchHistory), e.loadHistory && this.setupLoadHistory(e, e.loadHistory);\n }\n return _createClass(Io, [{\n key: \"loadInitialHistory\",\n value: function () {\n var _loadInitialHistory = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee106(e, t) {\n var i, n;\n return _regeneratorRuntime().wrap(function _callee106$(_context106) {\n while (1) switch (_context106.prev = _context106.next) {\n case 0:\n _context106.next = 2;\n return t(0);\n case 2:\n i = _context106.sent;\n this._isComplete = !i.find(function (r) {\n return !r;\n });\n n = i.filter(function (r) {\n return !!r;\n });\n this.populateHistory(e, n);\n case 6:\n case \"end\":\n return _context106.stop();\n }\n }, _callee106, this);\n }));\n function loadInitialHistory(_x191, _x192) {\n return _loadInitialHistory.apply(this, arguments);\n }\n return loadInitialHistory;\n }()\n }, {\n key: \"processLoadedHistory\",\n value: function processLoadedHistory(e) {\n var _this44 = this;\n var n;\n this._isLoading = !0;\n var t = (n = this._messages.messageElementRefs[0]) == null ? void 0 : n.outerContainer,\n i = this._messages.elementRef.scrollTop;\n e == null || e.reverse().map(function (r) {\n if (r) {\n var o = _this44._messages.addAnyMessage(_objectSpread(_objectSpread({}, r), {}, {\n sendUpdate: !0\n }), !0, !0);\n return o && _this44._messages.messages.unshift(o), o;\n } else _this44._isComplete = !0;\n }).filter(function (r) {\n return !!r;\n }).reverse().forEach(function (r) {\n return _this44._messages.sendClientUpdate(r, !0);\n }), t && (this._messages.elementRef.scrollTop = i + t.offsetTop), this._isLoading = !1;\n }\n }, {\n key: \"setupLoadHistory\",\n value: function () {\n var _setupLoadHistory = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee108(e, t) {\n var _this45 = this;\n return _regeneratorRuntime().wrap(function _callee108$(_context108) {\n while (1) switch (_context108.prev = _context108.next) {\n case 0:\n this._messages.elementRef.onscroll = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee107() {\n var n;\n return _regeneratorRuntime().wrap(function _callee107$(_context107) {\n while (1) switch (_context107.prev = _context107.next) {\n case 0:\n if (!(!_this45._isLoading && !_this45._isComplete && _this45._messages.elementRef.scrollTop === 0)) {\n _context107.next = 5;\n break;\n }\n _context107.next = 3;\n return t(0);\n case 3:\n n = _context107.sent;\n _this45.processLoadedHistory(n);\n case 5:\n case \"end\":\n return _context107.stop();\n }\n }, _callee107);\n })), e.history || te.processHistory(e) || this.loadInitialHistory(e, t);\n case 1:\n case \"end\":\n return _context108.stop();\n }\n }, _callee108, this);\n }));\n function setupLoadHistory(_x193, _x194) {\n return _setupLoadHistory.apply(this, arguments);\n }\n return setupLoadHistory;\n }()\n }, {\n key: \"populateHistory\",\n value: function populateHistory(e, t) {\n var _this46 = this;\n var i = e.history || te.processHistory(e) || t;\n i && (i.forEach(function (n) {\n te.processHistoryFile(n), _this46._messages.addNewMessage(n, !0);\n }), setTimeout(function () {\n return q.scrollToBottom(_this46._messages.elementRef);\n }, 0));\n }\n }, {\n key: \"fetchHistory\",\n value: function () {\n var _fetchHistory = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee109(e) {\n var _this47 = this;\n return _regeneratorRuntime().wrap(function _callee109$(_context109) {\n while (1) switch (_context109.prev = _context109.next) {\n case 0:\n _context109.next = 2;\n return e();\n case 2:\n _context109.sent.forEach(function (i) {\n return _this47._messages.addAnyMessage(i, !0);\n });\n setTimeout(function () {\n return q.scrollToBottom(_this47._messages.elementRef);\n }, 0);\n case 4:\n case \"end\":\n return _context109.stop();\n }\n }, _callee109);\n }));\n function fetchHistory(_x195) {\n return _fetchHistory.apply(this, arguments);\n }\n return fetchHistory;\n }()\n }]);\n}();\nvar Lo = /*#__PURE__*/function () {\n function Lo() {\n _classCallCheck(this, Lo);\n }\n return _createClass(Lo, null, [{\n key: \"getText\",\n value: function getText(e, t) {\n var i;\n if (!e.directConnection && !e.connect && !e.webModel && !e.demo) return \"Connect to any API using the [connect](https://deepchat.dev/docs/connect#connect-1) property or a popular service via [directConnection](https://deepchat.dev/docs/directConnection/#directConnection).\\n Host AI entirely on your browser via a [webModel](https://deepchat.dev/docs/webModel).\\n To get started checkout the [Start](https://deepchat.dev/start) page and live code [examples](https://deepchat.dev/examples/frameworks).\\n To remove this message set the [demo](https://deepchat.dev/docs/demo#demo) property to true.\";\n if (e.directConnection) {\n if (!t.isDirectConnection()) return \"Please define a valid service inside\\n the [directConnection](https://deepchat.dev/docs/directConnection/#directConnection) object.\";\n var n = (i = e.directConnection.openAI) == null ? void 0 : i.chat;\n if (_typeof(n) == \"object\" && n.tools && !n.function_handler) return \"Please define the `function_handler` property inside the openAI [chat](https://deepchat.dev/docs/directConnection/openAI#Chat) object.\";\n } else if (e.connect && !e.connect.url && !e.connect.handler) return e.demo ? e.connect.stream ? null : \"When [demo](https://deepchat.dev/docs/demo) mode is enabled - the [connect](https://deepchat.dev/docs/connect#connect-1) object can only accept the [stream](https://deepchat.dev/docs/connect#Stream) property.\" : \"Please define a `url` or a `handler` property inside the [connect](https://deepchat.dev/docs/connect#connect-1) object.\";\n return null;\n }\n }]);\n}();\nvar Po = \"<?xml version=\\\"1.0\\\" encoding=\\\"iso-8859-1\\\"?>\\n<svg version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" \\n\\t viewBox=\\\"50 30 420 450\\\" xml:space=\\\"preserve\\\">\\n<g filter=\\\"brightness(0) saturate(100%) invert(16%) sepia(0%) saturate(1942%) hue-rotate(215deg) brightness(99%) contrast(93%)\\\">\\n\\t<g>\\n\\t\\t<path d=\\\"M447.933,103.629c-0.034-3.076-1.224-6.09-3.485-8.352L352.683,3.511c-0.004-0.004-0.007-0.005-0.011-0.008\\n\\t\\t\\tC350.505,1.338,347.511,0,344.206,0H89.278C75.361,0,64.04,11.32,64.04,25.237v461.525c0,13.916,11.32,25.237,25.237,25.237\\n\\t\\t\\th333.444c13.916,0,25.237-11.32,25.237-25.237V103.753C447.96,103.709,447.937,103.672,447.933,103.629z M356.194,40.931\\n\\t\\t\\tl50.834,50.834h-49.572c-0.695,0-1.262-0.567-1.262-1.262V40.931z M423.983,486.763c0,0.695-0.566,1.261-1.261,1.261H89.278\\n\\t\\t\\tc-0.695,0-1.261-0.566-1.261-1.261V25.237c0-0.695,0.566-1.261,1.261-1.261h242.94v66.527c0,13.916,11.322,25.239,25.239,25.239\\n\\t\\t\\th66.527V486.763z\\\"/>\\n\\t</g>\\n</g>\\n<g>\\n\\t<g>\\n\\t\\t<path d=\\\"M362.088,164.014H149.912c-6.62,0-11.988,5.367-11.988,11.988c0,6.62,5.368,11.988,11.988,11.988h212.175\\n\\t\\t\\tc6.62,0,11.988-5.368,11.988-11.988C374.076,169.381,368.707,164.014,362.088,164.014z\\\"/>\\n\\t</g>\\n</g>\\n<g>\\n\\t<g>\\n\\t\\t<path d=\\\"M362.088,236.353H149.912c-6.62,0-11.988,5.368-11.988,11.988c0,6.62,5.368,11.988,11.988,11.988h212.175\\n\\t\\t\\tc6.62,0,11.988-5.368,11.988-11.988C374.076,241.721,368.707,236.353,362.088,236.353z\\\"/>\\n\\t</g>\\n</g>\\n<g>\\n\\t<g>\\n\\t\\t<path d=\\\"M362.088,308.691H149.912c-6.62,0-11.988,5.368-11.988,11.988c0,6.621,5.368,11.988,11.988,11.988h212.175\\n\\t\\t\\tc6.62,0,11.988-5.367,11.988-11.988C374.076,314.06,368.707,308.691,362.088,308.691z\\\"/>\\n\\t</g>\\n</g>\\n<g>\\n\\t<g>\\n\\t\\t<path d=\\\"M256,381.031H149.912c-6.62,0-11.988,5.368-11.988,11.988c0,6.621,5.368,11.988,11.988,11.988H256\\n\\t\\t\\tc6.62,0,11.988-5.367,11.988-11.988C267.988,386.398,262.62,381.031,256,381.031z\\\"/>\\n\\t</g>\\n</g>\\n</svg>\";\nvar Me = /*#__PURE__*/function () {\n function Me() {\n _classCallCheck(this, Me);\n }\n return _createClass(Me, null, [{\n key: \"createImage\",\n value: function createImage(e, t, i) {\n var n = new Image();\n return n.src = e.src, i || F.scrollDownOnImageLoad(n.src, t), F.processContent(\"image\", n, n.src, e.name);\n }\n // WORK - image still does not scroll down when loaded\n }, {\n key: \"addNewImageMessage\",\n value: function () {\n var _addNewImageMessage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee110(e, t, i, n) {\n var r, o;\n return _regeneratorRuntime().wrap(function _callee110$(_context110) {\n while (1) switch (_context110.prev = _context110.next) {\n case 0:\n r = Me.createImage(t, e.elementRef, n), o = e.createNewMessageElement(\"\", i);\n o.bubbleElement.appendChild(r), o.bubbleElement.classList.add(\"image-message\"), F.addMessage(e, o, \"image\", i, n);\n case 2:\n case \"end\":\n return _context110.stop();\n }\n }, _callee110);\n }));\n function addNewImageMessage(_x196, _x197, _x198, _x199) {\n return _addNewImageMessage.apply(this, arguments);\n }\n return addNewImageMessage;\n }()\n }, {\n key: \"createAudioElement\",\n value: function createAudioElement(e, t) {\n var i = document.createElement(\"audio\");\n return i.src = e.src, i.classList.add(\"audio-player\"), i.controls = !0, at.IS_SAFARI && (i.classList.add(\"audio-player-safari\"), i.classList.add(t === b.USER_ROLE ? \"audio-player-safari-right\" : \"audio-player-safari-left\")), i;\n }\n }, {\n key: \"addNewAudioMessage\",\n value: function addNewAudioMessage(e, t, i, n) {\n var r = Me.createAudioElement(t, i),\n o = e.createMessageElementsOnOrientation(\"\", i, n);\n o.bubbleElement.appendChild(r), o.bubbleElement.classList.add(\"audio-message\"), F.addMessage(e, o, \"audio\", i, n);\n }\n }, {\n key: \"createAnyFile\",\n value: function createAnyFile(e) {\n var t = document.createElement(\"div\");\n t.classList.add(\"any-file-message-contents\");\n var i = document.createElement(\"div\");\n i.classList.add(\"any-file-message-icon-container\");\n var n = ie.createSVGElement(Po);\n n.classList.add(\"any-file-message-icon\"), i.appendChild(n);\n var r = document.createElement(\"div\");\n return r.classList.add(\"any-file-message-text\"), r.textContent = e.name || F.DEFAULT_FILE_NAME, t.appendChild(i), t.appendChild(r), F.processContent(\"any\", t, e.src, r.textContent);\n }\n }, {\n key: \"addNewAnyFileMessage\",\n value: function addNewAnyFileMessage(e, t, i, n) {\n var r = e.createMessageElementsOnOrientation(\"\", i, n),\n o = Me.createAnyFile(t);\n r.bubbleElement.classList.add(\"any-file-message-bubble\"), r.bubbleElement.appendChild(o), F.addMessage(e, r, \"file\", i, n);\n }\n // no overwrite previous message logic as it is complex to track which files are to be overwritten\n }, {\n key: \"addMessages\",\n value: function addMessages(e, t, i, n) {\n t.forEach(function (r) {\n r.ref && (r = F.removeFileRef(r)), F.isAudioFile(r) ? Me.addNewAudioMessage(e, r, i, n) : F.isImageFile(r) ? Me.addNewImageMessage(e, r, i, n) : Me.addNewAnyFileMessage(e, r, i, n);\n });\n }\n }]);\n}();\nvar Re = /*#__PURE__*/function (_ct) {\n function Re(e, t, i) {\n var _this48;\n _classCallCheck(this, Re);\n var a, l;\n _this48 = _callSuper(this, Re, [e]);\n var n = t.permittedErrorPrefixes,\n r = t.introPanelMarkUp,\n o = t.demo;\n _this48._errorMessageOverrides = (a = e.errorMessages) == null ? void 0 : a.overrides, _this48._onClearMessages = ei.onClearMessages.bind(_this48, e), _this48._onError = ei.onError.bind(_this48, e), _this48._displayLoadingMessage = Re.getDisplayLoadingMessage(e, t), _this48._permittedErrorPrefixes = n, _this48.addSetupMessageIfNeeded(e, t) || _this48.populateIntroPanel(i, r, e.introPanelStyle), _this48.addIntroductoryMessage(e, t), new Io(e, _this48, t), _this48._displayServiceErrorMessages = (l = e.errorMessages) == null ? void 0 : l.displayServiceErrorMessages, e.getMessages = function () {\n return JSON.parse(JSON.stringify(_this48.messages));\n }, e.clearMessages = _this48.clearMessages.bind(_this48, t), e.refreshMessages = _this48.refreshTextMessages.bind(_this48), e.scrollToBottom = q.scrollToBottom.bind(_this48, _this48.elementRef), e.addMessage = function (c, d) {\n _this48.addAnyMessage(_objectSpread(_objectSpread({}, c), {}, {\n sendUpdate: !!d\n }), !d);\n }, t.isWebModel() && t.setUpMessages(_this48), o && _this48.prepareDemo(o), e.textToSpeech && lt.processConfig(e.textToSpeech, function (c) {\n _this48.textToSpeech = c;\n });\n return _this48;\n }\n _inherits(Re, _ct);\n return _createClass(Re, [{\n key: \"prepareDemo\",\n value: function prepareDemo(e) {\n _typeof(e) == \"object\" && (e.response && (this.customDemoResponse = e.response), e.displayErrors && (e.displayErrors[\"default\"] && this.addNewErrorMessage(\"\", \"\"), e.displayErrors.service && this.addNewErrorMessage(\"service\", \"\"), e.displayErrors.speechToText && this.addNewErrorMessage(\"speechToText\", \"\")), e.displayLoadingBubble && this.addLoadingMessage());\n }\n }, {\n key: \"addSetupMessageIfNeeded\",\n value: function addSetupMessageIfNeeded(e, t) {\n var i = Lo.getText(e, t);\n if (i) {\n var n = this.createAndAppendNewMessageElement(i, b.AI_ROLE);\n this.applyCustomStyles(n, b.AI_ROLE, !1);\n }\n return !!i;\n }\n // WORK - const file for deep chat classes\n }, {\n key: \"addIntroductoryMessage\",\n value: function addIntroductoryMessage(e, t) {\n var _i12;\n var n;\n e != null && e.shadowRoot && (this._introMessage = e.introMessage);\n var i = this._introMessage;\n if (t != null && t.isWebModel() && ((_i12 = i) !== null && _i12 !== void 0 ? _i12 : i = t.getIntroMessage(i)), i) {\n var r;\n i != null && i.text ? r = this.createAndAppendNewMessageElement(i.text, b.AI_ROLE) : i != null && i.html && (r = ut.add(this, i.html, b.AI_ROLE, this.messageElementRefs)), r && (this.applyCustomStyles(r, b.AI_ROLE, !1, (n = this.messageStyles) == null ? void 0 : n.intro), r.outerContainer.classList.add(\"deep-chat-intro\"));\n }\n }\n }, {\n key: \"removeIntroductoryMessage\",\n value: function removeIntroductoryMessage() {\n var e = this.messageElementRefs[0];\n e.outerContainer.classList.contains(\"deep-chat-intro\") && (e.outerContainer.remove(), this.messageElementRefs.shift());\n }\n }, {\n key: \"addAnyMessage\",\n value: function addAnyMessage(e) {\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !1;\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !1;\n return e.error ? this.addNewErrorMessage(\"service\", e.error) : this.addNewMessage(e, t, i);\n }\n // this should not be activated by streamed messages\n }, {\n key: \"addNewMessage\",\n value: function addNewMessage(e) {\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !1;\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !1;\n var n = Re.createMessageContent(e),\n r = {\n status: e.overwrite\n };\n if (!e.ignoreText && n.text !== void 0 && e.text !== null && (this.addNewTextMessage(n.text, n.role, r, i), !t && this.textToSpeech && n.role !== b.USER_ROLE && lt.speak(n.text, this.textToSpeech)), n.files && Array.isArray(n.files) && Me.addMessages(this, n.files, n.role, i), n.html !== void 0 && n.html !== null) {\n var o = ut.add(this, n.html, n.role, this.messageElementRefs, r, i);\n Pe.isElementTemporary(o) && delete n.html;\n }\n return this.isValidMessageContent(n) && !i && this.updateStateOnMessage(n, e.overwrite, e.sendUpdate, t), n;\n }\n }, {\n key: \"isValidMessageContent\",\n value: function isValidMessageContent(e) {\n return e.text || e.html || e.files && e.files.length > 0;\n }\n }, {\n key: \"updateStateOnMessage\",\n value: function updateStateOnMessage(e, t) {\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : !0;\n var n = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;\n t || this.messages.push(e), i && this.sendClientUpdate(e, n);\n }\n // prettier-ignore\n }, {\n key: \"removeMessageOnError\",\n value: function removeMessageOnError() {\n var e = this.messageElementRefs[this.messageElementRefs.length - 1],\n t = e == null ? void 0 : e.bubbleElement;\n (t != null && t.classList.contains(me.MESSAGE_CLASS) && t.textContent === \"\" || Re.isTemporaryElement(e)) && this.removeLastMessage();\n }\n // prettier-ignore\n }, {\n key: \"addNewErrorMessage\",\n value: function addNewErrorMessage(e, t) {\n var l, c, d, h, u;\n this.removeMessageOnError();\n var i = Re.createBaseElements(),\n n = i.outerContainer,\n r = i.bubbleElement;\n r.classList.add(\"error-message-text\");\n var o = this.getPermittedMessage(t) || ((l = this._errorMessageOverrides) == null ? void 0 : l[e]) || ((c = this._errorMessageOverrides) == null ? void 0 : c[\"default\"]) || \"Error, please try again.\";\n this.renderText(r, o);\n var a = H.extractParticularSharedStyles([\"fontSize\", \"fontFamily\"], (d = this.messageStyles) == null ? void 0 : d[\"default\"]);\n H.applyCustomStylesToElements(i, !1, a), H.applyCustomStylesToElements(i, !1, (h = this.messageStyles) == null ? void 0 : h.error), this.elementRef.appendChild(n), q.scrollToBottom(this.elementRef), this.textToSpeech && lt.speak(o, this.textToSpeech), (u = this._onError) == null || u.call(this, o);\n }\n }, {\n key: \"getPermittedMessage\",\n value: function getPermittedMessage(e) {\n if (e) {\n var t = Re.extractErrorMessages(e);\n for (var _i13 = 0; _i13 < t.length; _i13 += 1) {\n var n = t[_i13];\n if (typeof n == \"string\") {\n if (this._displayServiceErrorMessages) return n;\n if (this._permittedErrorPrefixes) {\n var r = Re.checkPermittedErrorPrefixes(this._permittedErrorPrefixes, n);\n if (r) return r;\n }\n }\n }\n }\n }\n }, {\n key: \"removeError\",\n value: function removeError() {\n this.isLastMessageError() && b.getLastMessageElement(this.elementRef).remove();\n }\n }, {\n key: \"addLoadingMessage\",\n value: function addLoadingMessage() {\n var r;\n if (!this._displayLoadingMessage) return;\n var e = this.createMessageElements(\"\", b.AI_ROLE),\n t = e.outerContainer,\n i = e.bubbleElement;\n i.classList.add(\"loading-message-text\");\n var n = document.createElement(\"div\");\n n.classList.add(\"dots-flashing\"), i.appendChild(n), this.applyCustomStyles(e, b.AI_ROLE, !1, (r = this.messageStyles) == null ? void 0 : r.loading), mn.set(i, this.messageStyles), this.elementRef.appendChild(t), q.scrollToBottom(this.elementRef);\n }\n }, {\n key: \"populateIntroPanel\",\n value: function populateIntroPanel(e, t, i) {\n (e || t) && (this._introPanel = new di(e, t, i), this._introPanel._elementRef && (ee.apply(this, this._introPanel._elementRef), this.elementRef.appendChild(this._introPanel._elementRef)));\n }\n }, {\n key: \"addMultipleFiles\",\n value: function () {\n var _addMultipleFiles = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee111(e) {\n return _regeneratorRuntime().wrap(function _callee111$(_context111) {\n while (1) switch (_context111.prev = _context111.next) {\n case 0:\n return _context111.abrupt(\"return\", Promise.all((e || []).map(function (t) {\n return new Promise(function (i) {\n if (!t.type || t.type === \"any\") {\n var n = t.file.name || F.DEFAULT_FILE_NAME;\n i({\n name: n,\n type: \"any\",\n ref: t.file\n });\n } else {\n var _n3 = new FileReader();\n _n3.readAsDataURL(t.file), _n3.onload = function () {\n i({\n src: _n3.result,\n type: t.type,\n ref: t.file\n });\n };\n }\n });\n })));\n case 1:\n case \"end\":\n return _context111.stop();\n }\n }, _callee111);\n }));\n function addMultipleFiles(_x200) {\n return _addMultipleFiles.apply(this, arguments);\n }\n return addMultipleFiles;\n }() // WORK - update all message classes to use deep-chat prefix\n }, {\n key: \"clearMessages\",\n value: function clearMessages(e, t) {\n var n, r;\n var i = [];\n this.messageElementRefs.forEach(function (o) {\n var a = o.bubbleElement.classList;\n a.contains(\"loading-message-text\") || a.contains(me.MESSAGE_CLASS) ? i.push(o) : o.outerContainer.remove();\n }), Array.from(this.elementRef.children).forEach(function (o) {\n var l;\n var a = (l = o.children[0]) == null ? void 0 : l.children[0];\n a != null && a.classList.contains(\"error-message-text\") && o.remove();\n }), this.messageElementRefs = i, t !== !1 && ((n = this._introPanel) != null && n._elementRef && this._introPanel.display(), this.addIntroductoryMessage()), this.messages.splice(0, this.messages.length), this.textElementsToText.splice(0, this.textElementsToText.length), (r = this._onClearMessages) == null || r.call(this), delete e.sessionId;\n }\n }], [{\n key: \"getDisplayLoadingMessage\",\n value: function getDisplayLoadingMessage(e, t) {\n var _e$displayLoadingBubb;\n return t.websocket ? !1 : (_e$displayLoadingBubb = e.displayLoadingBubble) !== null && _e$displayLoadingBubb !== void 0 ? _e$displayLoadingBubb : !0;\n }\n }, {\n key: \"checkPermittedErrorPrefixes\",\n value: function checkPermittedErrorPrefixes(e, t) {\n for (var _i14 = 0; _i14 < e.length; _i14 += 1) if (t.startsWith(e[_i14])) return t;\n }\n }, {\n key: \"extractErrorMessages\",\n value: function extractErrorMessages(e) {\n return Array.isArray(e) ? e : e instanceof Error ? [e.message] : typeof e == \"string\" ? [e] : _typeof(e) == \"object\" && e.error ? [e.error] : [];\n }\n }]);\n}(ct);\nvar N = /*#__PURE__*/function () {\n function N() {\n _classCallCheck(this, N);\n }\n return _createClass(N, null, [{\n key: \"adjustInputPadding\",\n value: function adjustInputPadding(e, t) {\n t[\"inside-left\"].length > 0 && e.classList.add(\"text-input-inner-left-adjustment\"), t[\"inside-right\"].length > 0 && e.classList.add(\"text-input-inner-right-adjustment\");\n }\n }, {\n key: \"adjustForOutsideButton\",\n value: function adjustForOutsideButton(e, t, i) {\n i[\"outside-right\"].length === 0 && i[\"outside-left\"].length > 0 ? (e[0].classList.add(N.INPUT_OUTSIDE_LEFT_SMALL_ADJUSTMENT_CLASS), t.classList.add(N.INPUT_OUTSIDE_LEFT_SMALL_ADJUSTMENT_CLASS)) : i[\"outside-left\"].length === 0 && i[\"outside-right\"].length > 0 && (e[3].classList.add(N.INPUT_OUTSIDE_RIGHT_SMALL_ADJUSTMENT_CLASS), t.classList.add(N.INPUT_OUTSIDE_RIGHT_SMALL_ADJUSTMENT_CLASS));\n }\n // when submit is the only button\n // when submit button is outside by itself - we increase the height for a better look\n }, {\n key: \"adjustOutsideSubmit\",\n value: function adjustOutsideSubmit(e, t, i) {\n if (!(i[\"inside-left\"].length > 0 || i[\"inside-right\"].length > 0)) {\n if (i[\"outside-right\"].length === 0 && i[\"outside-left\"].length > 0) return e[0].classList.add(N.INPUT_OUTSIDE_LEFT_ADJUSTMENT_CLASS), t.classList.add(N.INPUT_OUTSIDE_LEFT_ADJUSTMENT_CLASS), i[\"outside-left\"].map(function (n) {\n return n.button.elementRef.classList.add(\"submit-button-enlarged\");\n });\n if (i[\"outside-left\"].length === 0 && i[\"outside-right\"].length > 0) return e[3].classList.add(N.INPUT_OUTSIDE_RIGHT_ADJUSTMENT_CLASS), t.classList.add(N.INPUT_OUTSIDE_RIGHT_ADJUSTMENT_CLASS), i[\"outside-right\"].map(function (n) {\n return n.button.elementRef.classList.add(\"submit-button-enlarged\");\n });\n }\n }\n }, {\n key: \"set\",\n value: function set(e, t, i, n) {\n !!N.adjustOutsideSubmit(t, i, n) || N.adjustForOutsideButton(t, i, n), N.adjustInputPadding(e, n);\n }\n }]);\n}();\nN.INPUT_OUTSIDE_LEFT_ADJUSTMENT_CLASS = \"text-input-container-left-adjustment\", N.INPUT_OUTSIDE_RIGHT_ADJUSTMENT_CLASS = \"text-input-container-right-adjustment\", N.INPUT_OUTSIDE_LEFT_SMALL_ADJUSTMENT_CLASS = \"text-input-container-left-small-adjustment\", N.INPUT_OUTSIDE_RIGHT_SMALL_ADJUSTMENT_CLASS = \"text-input-container-right-small-adjustment\";\nvar an = N;\nvar pt = /*#__PURE__*/function () {\n function pt() {\n _classCallCheck(this, pt);\n }\n return _createClass(pt, null, [{\n key: \"create\",\n value: function create() {\n return Array.from({\n length: 4\n }).map(function (e, t) {\n var i = document.createElement(\"div\");\n return i.classList.add(\"input-button-container\"), (t === 0 || t === 3) && i.classList.add(\"outer-button-container\"), (t === 1 || t === 2) && i.classList.add(\"inner-button-container\"), i;\n });\n }\n }, {\n key: \"add\",\n value: function add(e, t) {\n e.insertBefore(t[1], e.firstChild), e.insertBefore(t[0], e.firstChild), e.appendChild(t[2]), e.appendChild(t[3]);\n }\n }, {\n key: \"getContainerIndex\",\n value: function getContainerIndex(e) {\n return e === \"outside-left\" ? 0 : e === \"inside-left\" ? 1 : e === \"inside-right\" ? 2 : 3;\n }\n }, {\n key: \"addButton\",\n value: function addButton(e, t, i) {\n t.classList.add(i);\n var n = pt.getContainerIndex(i);\n e[n].appendChild(t), n === 3 && t.classList.add(\"outside-right\");\n }\n }]);\n}();\nvar Dn = [\"camera\", \"gifs\", \"images\", \"audio\", \"mixedFiles\", \"submit\", \"microphone\"];\nvar K = /*#__PURE__*/function () {\n function K() {\n _classCallCheck(this, K);\n }\n return _createClass(K, null, [{\n key: \"createTextElement\",\n value: function createTextElement(e) {\n var t = document.createElement(\"div\");\n return t.classList.add(\"text-button\"), t.innerText = e, t;\n }\n }, {\n key: \"createElement\",\n value: function createElement(e, t) {\n return t ? K.createTextElement(e) : ie.createSVGElement(e);\n }\n }, {\n key: \"createCustomElement\",\n value: function createCustomElement(e, t) {\n var n, r, o, a;\n var i = t == null ? void 0 : t[e];\n if ((n = i == null ? void 0 : i.svg) != null && n.content) return K.createElement((r = i == null ? void 0 : i.svg) == null ? void 0 : r.content, !1);\n if ((o = i == null ? void 0 : i.text) != null && o.content) return K.createElement((a = i == null ? void 0 : i.text) == null ? void 0 : a.content, !0);\n }\n }, {\n key: \"processElement\",\n value: function processElement(e, t) {\n t != null && t.classList.contains(\"text-button\") || e.classList.add(\"input-button-svg\");\n }\n // publicly used for creating elements that do not change state in a sequence\n // prettier-ignore\n }, {\n key: \"createSpecificStateElement\",\n value: function createSpecificStateElement(e, t, i) {\n var n;\n return i && (n = K.createCustomElement(t, i)), K.processElement(e, n), n;\n }\n // https://github.com/OvidijusParsiunas/deep-chat/issues/175\n // isDropup here is only determined by the user and not when moved to dropup automatically\n // prettier-ignore\n }, {\n key: \"createInnerElement\",\n value: function createInnerElement(e, t, i, n) {\n var r = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : !1;\n var o, a;\n return r && !((a = (o = n == null ? void 0 : n[i]) == null ? void 0 : o.svg) != null && a.content) ? t : K.createSpecificStateElement(e, i, n) || t;\n }\n }]);\n}();\nvar Oo = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 32 32\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M16 0c-8.836 0-16 7.163-16 16s7.163 16 16 16c8.837 0 16-7.163 16-16s-7.163-16-16-16zM16 30.032c-7.72 0-14-6.312-14-14.032s6.28-14 14-14 14 6.28 14 14-6.28 14.032-14 14.032zM23 15h-6v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1v6h-6c-0.552 0-1 0.448-1 1s0.448 1 1 1h6v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6h6c0.552 0 1-0.448 1-1s-0.448-1-1-1z\\\"></path>\\n</svg>\";\nvar fe = /*#__PURE__*/function () {\n function fe() {\n _classCallCheck(this, fe);\n }\n return _createClass(fe, null, [{\n key: \"unsetAllCSS\",\n value: function unsetAllCSS(e, t) {\n var i, n;\n t.container && M.unsetAllCSSMouseStates(e, t.container), (i = t.svg) != null && i.styles && M.unsetAllCSSMouseStates(e.children[0], t.svg.styles), (n = t.text) != null && n.styles && M.unsetAllCSSMouseStates(e.children[0], t.text.styles);\n }\n }, {\n key: \"unsetActionCSS\",\n value: function unsetActionCSS(e, t) {\n var i, n;\n t.container && M.unsetActivityCSSMouseStates(e, t.container), (i = t.svg) != null && i.styles && M.unsetActivityCSSMouseStates(e.children[0], t.svg.styles), (n = t.text) != null && n.styles && M.unsetActivityCSSMouseStates(e.children[0], t.text.styles);\n }\n }, {\n key: \"setElementsCSS\",\n value: function setElementsCSS(e, t, i) {\n var n, r, o, a, l;\n Object.assign(e.style, (n = t.container) == null ? void 0 : n[i]), Object.assign(e.children[0].style, (o = (r = t.svg) == null ? void 0 : r.styles) == null ? void 0 : o[i]), Object.assign(e.children[0].style, (l = (a = t.text) == null ? void 0 : a.styles) == null ? void 0 : l[i]);\n }\n }, {\n key: \"setElementCssUpToState\",\n value: function setElementCssUpToState(e, t, i) {\n fe.setElementsCSS(e, t, \"default\"), i !== \"default\" && (fe.setElementsCSS(e, t, \"hover\"), i !== \"hover\" && fe.setElementsCSS(e, t, \"click\"));\n }\n }]);\n}();\nvar jt = /*#__PURE__*/function () {\n function jt(e, t, i, n) {\n _classCallCheck(this, jt);\n this._mouseState = {\n state: \"default\"\n }, this.elementRef = e, this._customStyles = i, this.position = t, this.dropupText = n;\n }\n return _createClass(jt, [{\n key: \"buttonMouseLeave\",\n value: function buttonMouseLeave(e) {\n this._mouseState.state = \"default\", e && (fe.unsetAllCSS(this.elementRef, e), fe.setElementsCSS(this.elementRef, e, \"default\"));\n }\n }, {\n key: \"buttonMouseEnter\",\n value: function buttonMouseEnter(e) {\n this._mouseState.state = \"hover\", e && fe.setElementsCSS(this.elementRef, e, \"hover\");\n }\n }, {\n key: \"buttonMouseUp\",\n value: function buttonMouseUp(e) {\n e && fe.unsetActionCSS(this.elementRef, e), this.buttonMouseEnter(e);\n }\n }, {\n key: \"buttonMouseDown\",\n value: function buttonMouseDown(e) {\n this._mouseState.state = \"click\", e && fe.setElementsCSS(this.elementRef, e, \"click\");\n }\n // be careful not to use onclick as that is used for button functionality\n }, {\n key: \"setEvents\",\n value: function setEvents(e) {\n this.elementRef.onmousedown = this.buttonMouseDown.bind(this, e), this.elementRef.onmouseup = this.buttonMouseUp.bind(this, e), this.elementRef.onmouseenter = this.buttonMouseEnter.bind(this, e), this.elementRef.onmouseleave = this.buttonMouseLeave.bind(this, e);\n }\n }, {\n key: \"unsetCustomStateStyles\",\n value: function unsetCustomStateStyles(e) {\n if (this._customStyles) for (var t = 0; t < e.length; t += 1) {\n var _i15 = e[t],\n n = _i15 && this._customStyles[_i15];\n n && fe.unsetActionCSS(this.elementRef, n);\n }\n }\n }, {\n key: \"reapplyStateStyle\",\n value: function reapplyStateStyle(e, t) {\n if (!this._customStyles) return;\n t && this.unsetCustomStateStyles(t);\n var i = this._customStyles[e];\n i && fe.setElementCssUpToState(this.elementRef, i, this._mouseState.state), this.setEvents(i);\n }\n }]);\n}();\nvar Lt = /*#__PURE__*/function () {\n function Lt() {\n _classCallCheck(this, Lt);\n }\n return _createClass(Lt, null, [{\n key: \"focusItemWhenOnEdge\",\n value: function focusItemWhenOnEdge(e, t) {\n var i = t ? e.children[0] : e.children[e.children.length - 1];\n Lt.focusSiblingItem(i, e, t, !0);\n }\n // isEdgeItem means is it a start or end item\n // prettier-ignore\n }, {\n key: \"focusSiblingItem\",\n value: function focusSiblingItem(e, t, i) {\n var n = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;\n var r = n ? e : e[i ? \"nextSibling\" : \"previousSibling\"];\n r ? (e.dispatchEvent(new MouseEvent(\"mouseleave\")), r.dispatchEvent(new MouseEvent(\"mouseenter\"))) : (e.dispatchEvent(new MouseEvent(\"mouseleave\")), Lt.focusItemWhenOnEdge(t, i));\n }\n }]);\n}();\nvar Fe = /*#__PURE__*/function () {\n function Fe() {\n _classCallCheck(this, Fe);\n }\n return _createClass(Fe, null, [{\n key: \"addItemEvents\",\n value: function addItemEvents(e, t, i, n) {\n ze.add(t, n), t.addEventListener(\"click\", function () {\n i.click();\n }), t.addEventListener(\"mouseenter\", function (r) {\n e.highlightedItem = r.target;\n }), t.addEventListener(\"mouseleave\", function () {\n e.highlightedItem = void 0;\n });\n }\n }, {\n key: \"createItemText\",\n value: function createItemText(e, t) {\n var i = document.createElement(\"div\");\n return Object.assign(i.style, t), i.classList.add(\"dropup-menu-item-text\"), i.textContent = e || \"File\", i;\n }\n }, {\n key: \"createItemIcon\",\n value: function createItemIcon(e, t) {\n var i = document.createElement(\"div\");\n return Object.assign(i.style, t), i.classList.add(\"dropup-menu-item-icon\"), i.appendChild(e.children[0]), i;\n }\n }, {\n key: \"populateItem\",\n value: function populateItem(e, t, i, n) {\n var r = e.children[0];\n r.classList.contains(\"text-button\") ? t.appendChild(Fe.createItemText(r.textContent, n == null ? void 0 : n.text)) : (t.appendChild(Fe.createItemIcon(e, n == null ? void 0 : n.iconContainer)), t.appendChild(Fe.createItemText(i, n == null ? void 0 : n.text)));\n }\n // prettier-ignore\n }, {\n key: \"createItem\",\n value: function createItem(e, t, i) {\n var l;\n var n = t.elementRef,\n r = t.dropupText,\n o = document.createElement(\"div\");\n Object.assign(o.style, (l = i == null ? void 0 : i.item) == null ? void 0 : l[\"default\"]), Fe.populateItem(n, o, r, i), o.classList.add(\"dropup-menu-item\");\n var a = M.processStateful((i == null ? void 0 : i.item) || {}, {\n backgroundColor: \"#f3f3f3\"\n }, {\n backgroundColor: \"#ebebeb\"\n });\n return Fe.addItemEvents(e, o, n, a), o;\n }\n }]);\n}();\nvar gn = /*#__PURE__*/function () {\n function gn(e, t) {\n var _this49 = this;\n _classCallCheck(this, gn);\n var i;\n this._isOpen = !0, this._styles = t, this.elementRef = gn.createElement((i = this._styles) == null ? void 0 : i.container), this.close(), setTimeout(function () {\n return _this49.addWindowEvents(e);\n });\n }\n return _createClass(gn, [{\n key: \"open\",\n value: function open() {\n this.elementRef.style.display = \"block\", this._isOpen = !0;\n }\n }, {\n key: \"close\",\n value: function close() {\n this._isOpen && (this.elementRef.style.display = \"none\", this._isOpen = !1);\n }\n }, {\n key: \"toggle\",\n value: function toggle() {\n this._isOpen ? this.close() : this.open();\n }\n }, {\n key: \"addItem\",\n value: function addItem(e) {\n var t = Fe.createItem(this, e, this._styles);\n this.elementRef.appendChild(t);\n }\n // prettier-ignore\n }, {\n key: \"addWindowEvents\",\n value: function addWindowEvents(e) {\n this.clickEvent = this.windowClick.bind(this, e), window.addEventListener(\"click\", this.clickEvent), this.keyDownEvent = this.windowKeyDown.bind(this, e), window.addEventListener(\"keydown\", this.keyDownEvent);\n }\n }, {\n key: \"windowClick\",\n value: function windowClick(e, t) {\n var i;\n !e.isConnected && this.clickEvent ? window.removeEventListener(\"click\", this.clickEvent) : e.parentElement !== ((i = t.target.shadowRoot) == null ? void 0 : i.children[0]) && this.close();\n }\n // prettier-ignore\n }, {\n key: \"windowKeyDown\",\n value: function windowKeyDown(e, t) {\n var i, n, r;\n !e.isConnected && this.keyDownEvent ? window.removeEventListener(\"keydown\", this.keyDownEvent) : this._isOpen && (t.key === P.ESCAPE ? (this.close(), (i = this.highlightedItem) == null || i.dispatchEvent(new MouseEvent(\"mouseleave\"))) : t.key === P.ENTER ? ((n = this.highlightedItem) == null || n.click(), (r = this.highlightedItem) == null || r.dispatchEvent(new MouseEvent(\"mouseleave\"))) : t.key === P.ARROW_DOWN ? Lt.focusSiblingItem(this.highlightedItem || this.elementRef.children[this.elementRef.children.length - 1], this.elementRef, !0) : t.key === P.ARROW_UP && Lt.focusSiblingItem(this.highlightedItem || this.elementRef.children[0], this.elementRef, !1));\n }\n }], [{\n key: \"createElement\",\n value: function createElement(e) {\n var t = document.createElement(\"div\");\n return t.id = \"dropup-menu\", Object.assign(t.style, e), t;\n }\n }]);\n}();\nvar dt = /*#__PURE__*/function (_jt) {\n function dt(e, t) {\n var _this50;\n _classCallCheck(this, dt);\n var n;\n _this50 = _callSuper(this, dt, [dt.createButtonElement(), void 0, {\n styles: (n = t == null ? void 0 : t.button) == null ? void 0 : n.styles\n }]);\n var i = _this50.createInnerElements(_this50._customStyles);\n _this50._menu = new gn(e, t == null ? void 0 : t.menu), _this50.addClickEvent(), _this50.buttonContainer = dt.createButtonContainer(), _this50.elementRef.appendChild(i.styles), _this50.buttonContainer.appendChild(_this50.elementRef), _this50.elementRef.classList.add(\"dropup-icon\", \"upload-file-button\"), _this50.elementRef.children[0].id = \"dropup-icon\", _this50.buttonContainer.appendChild(_this50._menu.elementRef), _this50.reapplyStateStyle(\"styles\"), _this50.addContainerEvents(e);\n return _this50;\n }\n _inherits(dt, _jt);\n return _createClass(dt, [{\n key: \"createInnerElements\",\n value: function createInnerElements(e) {\n return {\n styles: this.createInnerElement(dt.createSVGIconElement(), \"styles\", e)\n };\n }\n }, {\n key: \"createInnerElement\",\n value: function createInnerElement(e, t, i) {\n return K.createSpecificStateElement(this.elementRef, t, i) || e;\n }\n }, {\n key: \"addClickEvent\",\n value: function addClickEvent() {\n this.elementRef.onclick = this._menu.toggle.bind(this._menu);\n }\n }, {\n key: \"addItem\",\n value: function addItem(e) {\n this._menu.addItem(e);\n }\n }, {\n key: \"addContainerEvents\",\n value: function addContainerEvents(e) {\n var _this51 = this;\n e.addEventListener(\"click\", function (t) {\n t.target.classList.contains(\"dropup-icon\") || _this51._menu.close();\n });\n }\n }], [{\n key: \"createButtonElement\",\n value: function createButtonElement() {\n var e = document.createElement(\"div\");\n return e.classList.add(\"input-button\"), e;\n }\n }, {\n key: \"createSVGIconElement\",\n value: function createSVGIconElement() {\n return ie.createSVGElement(Oo);\n }\n }, {\n key: \"createButtonContainer\",\n value: function createButtonContainer() {\n var e = document.createElement(\"div\");\n return e.id = \"dropup-container\", e;\n }\n }, {\n key: \"getPosition\",\n value: function getPosition(e, t) {\n var i, n;\n return (i = t == null ? void 0 : t.button) != null && i.position ? (n = t == null ? void 0 : t.button) == null ? void 0 : n.position : e[\"outside-left\"].length > 0 && e[\"outside-right\"].length === 0 ? \"outside-right\" : \"outside-left\";\n }\n }]);\n}(jt);\nvar G = /*#__PURE__*/function () {\n function G() {\n _classCallCheck(this, G);\n }\n return _createClass(G, null, [{\n key: \"addToDropup\",\n value:\n // prettier-ignore\n function addToDropup(e, t, i, n) {\n var r = new dt(i, n);\n Dn.forEach(function (a) {\n var l = t[\"dropup-menu\"].findIndex(function (d) {\n return d.buttonType === a;\n }),\n c = t[\"dropup-menu\"][l];\n c && (r.addItem(c.button), t[\"dropup-menu\"].splice(l, 1));\n });\n var o = dt.getPosition(t, n);\n pt.addButton(e, r.buttonContainer, o), t[o].push({});\n }\n }, {\n key: \"addToSideContainer\",\n value: function addToSideContainer(e, t) {\n [\"inside-left\", \"inside-right\", \"outside-left\", \"outside-right\"].forEach(function (n) {\n var r = n;\n t[r].forEach(function (o) {\n pt.addButton(e, o.button.elementRef, r);\n });\n });\n }\n }, {\n key: \"setPosition\",\n value: function setPosition(e, t, i) {\n var n = _objectSpread(_objectSpread({}, e[t]), {}, {\n buttonType: t\n });\n i.push(n), delete e[t];\n }\n }, {\n key: \"createPositionsObj\",\n value: function createPositionsObj() {\n return {\n \"dropup-menu\": [],\n \"outside-left\": [],\n \"inside-left\": [],\n \"inside-right\": [],\n \"outside-right\": []\n };\n }\n // prettier-ignore\n }, {\n key: \"generatePositions\",\n value: function generatePositions(e) {\n var t = G.createPositionsObj();\n Object.keys(e).forEach(function (n) {\n var o;\n var r = (o = e[n]) == null ? void 0 : o.button.position;\n r && G.setPosition(e, n, t[r]);\n }), t[\"inside-right\"].length === 0 && e.submit && G.setPosition(e, \"submit\", t[\"inside-right\"]), t[\"outside-right\"].length === 0 && (e.submit ? G.setPosition(e, \"submit\", t[\"outside-right\"]) : e.microphone ? G.setPosition(e, \"microphone\", t[\"outside-right\"]) : e.camera && G.setPosition(e, \"camera\", t[\"outside-right\"])), e.submit && G.setPosition(e, \"submit\", t[\"outside-left\"].length === 0 ? t[\"outside-left\"] : t[\"inside-right\"]), e.microphone && G.setPosition(e, \"microphone\", t[\"outside-left\"].length === 0 ? t[\"outside-left\"] : t[\"inside-right\"]);\n var i = Object.keys(e);\n return i.length > 1 || t[\"dropup-menu\"].length > 0 ? Dn.forEach(function (n) {\n e[n] && t[\"dropup-menu\"].push(_objectSpread(_objectSpread({}, e[n]), {}, {\n buttonType: n\n }));\n }) : i.length === 1 && G.setPosition(e, i[0], t[\"outside-right\"].length === 0 ? t[\"outside-right\"] : t[\"outside-left\"]), t;\n }\n // prettier-ignore\n }, {\n key: \"addButtons\",\n value: function addButtons(e, t, i, n) {\n var r = G.generatePositions(t);\n return G.addToSideContainer(e, r), r[\"dropup-menu\"].length > 0 && G.addToDropup(e, r, i, n), r;\n }\n }]);\n}();\nvar No = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<title>file</title>\\n<path d=\\\"M20 10.9696L11.9628 18.5497C10.9782 19.4783 9.64274 20 8.25028 20C6.85782 20 5.52239 19.4783 4.53777 18.5497C3.55315 17.6211 3 16.3616 3 15.0483C3 13.7351 3.55315 12.4756 4.53777 11.547L12.575 3.96687C13.2314 3.34779 14.1217 3 15.05 3C15.9783 3 16.8686 3.34779 17.525 3.96687C18.1814 4.58595 18.5502 5.4256 18.5502 6.30111C18.5502 7.17662 18.1814 8.01628 17.525 8.63535L9.47904 16.2154C9.15083 16.525 8.70569 16.6989 8.24154 16.6989C7.77738 16.6989 7.33224 16.525 7.00403 16.2154C6.67583 15.9059 6.49144 15.4861 6.49144 15.0483C6.49144 14.6106 6.67583 14.1907 7.00403 13.8812L14.429 6.88674\\\" stroke=\\\"#000000\\\" stroke-width=\\\"1.5\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"/>\\n</svg>\",\n Do = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 24 24\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M20,15.2928932 L20,5.5 C20,4.67157288 19.3284271,4 18.5,4 L5.5,4 C4.67157288,4 4,4.67157288 4,5.5 L4,12.2928932 L7.14644661,9.14644661 C7.34170876,8.95118446 7.65829124,8.95118446 7.85355339,9.14644661 L13.5,14.7928932 L16.1464466,12.1464466 C16.3417088,11.9511845 16.6582912,11.9511845 16.8535534,12.1464466 L20,15.2928932 Z M20,16.7071068 L16.5,13.2071068 L13.8535534,15.8535534 C13.6582912,16.0488155 13.3417088,16.0488155 13.1464466,15.8535534 L7.5,10.2071068 L4,13.7071068 L4,18.5 C4,19.3284271 4.67157288,20 5.5,20 L18.5,20 C19.3284271,20 20,19.3284271 20,18.5 L20,16.7071068 Z M3,5.5 C3,4.11928813 4.11928813,3 5.5,3 L18.5,3 C19.8807119,3 21,4.11928813 21,5.5 L21,18.5 C21,19.8807119 19.8807119,21 18.5,21 L5.5,21 C4.11928813,21 3,19.8807119 3,18.5 L3,5.5 Z M15,6 L17,6 C17.5522847,6 18,6.44771525 18,7 L18,9 C18,9.55228475 17.5522847,10 17,10 L15,10 C14.4477153,10 14,9.55228475 14,9 L14,7 C14,6.44771525 14.4477153,6 15,6 Z M15,7 L15,9 L17,9 L17,7 L15,7 Z\\\"/>\\n</svg>\\n\",\n Fo = \"<svg version=\\\"1.1\\\" id=\\\"Layer_1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"-49.49 -49.49 593.87 593.87\\\" stroke-width=\\\"3.95908\\\" transform=\\\"rotate(0)\\\">\\n <g stroke-width=\\\"0\\\"></g>\\n <g stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\" stroke-width=\\\"0.98977\\\"></g>\\n <g>\\n <g>\\n <g>\\n <path d=\\\"M163.205,76.413v293.301c-3.434-3.058-7.241-5.867-11.486-8.339c-21.38-12.452-49.663-15.298-77.567-7.846 c-49.038,13.096-80.904,54.519-71.038,92.337c4.019,15.404,14.188,28.221,29.404,37.087c13.553,7.894,29.87,11.933,47.115,11.933 c9.962,0,20.231-1.356,30.447-4.087c42.74-11.406,72.411-44.344,72.807-77.654h0.011v-0.162c0.002-0.166,0-0.331,0-0.496V187.072 l290.971-67.3v178.082c-3.433-3.055-7.238-5.863-11.481-8.334c-21.385-12.452-49.654-15.308-77.567-7.846 c-49.038,13.087-80.904,54.519-71.038,92.356c4.019,15.385,14.183,28.212,29.404,37.067c13.548,7.894,29.875,11.933,47.115,11.933 c9.962,0,20.231-1.356,30.452-4.087c42.74-11.413,72.411-44.346,72.804-77.654h0.004v-0.065c0.003-0.236,0.001-0.469,0-0.704V0 L163.205,76.413z M104.999,471.779c-22.543,6.038-45.942,3.846-62.572-5.846c-10.587-6.163-17.591-14.817-20.255-25.038 c-7.144-27.375,18.452-58.029,57.062-68.346c8.409-2.25,16.938-3.346,25.188-3.346c13.87,0,26.962,3.115,37.389,9.192 c10.587,6.163,17.591,14.817,20.255,25.029c0.809,3.102,1.142,6.248,1.139,9.4v0.321h0.014 C162.99,437.714,139.082,462.678,104.999,471.779z M182.898,166.853V92.067l290.971-67.298v74.784L182.898,166.853z M415.677,399.923c-22.558,6.038-45.942,3.837-62.587-5.846c-10.587-6.163-17.587-14.817-20.25-25.019 c-7.144-27.385,18.452-58.058,57.058-68.365c8.414-2.25,16.942-3.346,25.192-3.346c13.875,0,26.962,3.115,37.385,9.192 c10.596,6.163,17.596,14.817,20.26,25.029v0.01c0.796,3.05,1.124,6.144,1.135,9.244v0.468h0.02 C473.668,365.851,449.763,390.814,415.677,399.923z\\\">\\n </path>\\n </g>\\n </g>\\n </g>\\n</svg>\",\n Bo = \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\"?>\\n<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 5.9266752 5.6408391\\\" height=\\\"21.31971\\\" width=\\\"22.4\\\">\\n <g>\\n <path d=\\\"m 5.2564627,1.548212 c -3.1136005,-0.4796804 -1.5568006,-0.2398402 0,0 z M 2.0001198,2.0922063 c 0.1556781,0 0.2657489,0.020893 0.3917849,0.080366 0.081154,0.038347 0.1153492,0.134065 0.076377,0.2138602 -0.038973,0.07979 -0.1363527,0.1134129 -0.2175069,0.075091 -0.078199,-0.036919 -0.1407455,-0.048792 -0.250655,-0.048792 -0.2260486,0 -0.3921482,0.2042182 -0.3921482,0.4801409 0,0.2761822 0.1663188,0.4810688 0.3921482,0.4810688 0.1117901,0 0.2064255,-0.046133 0.255659,-0.1284198 l 0.00162,-0.00389 V 3.0534032 l -0.098011,1.75e-4 c -0.081844,0 -0.1495979,-0.059305 -0.1612403,-0.1365887 l -0.00175,-0.023683 c 0,-0.08047 0.060311,-0.1470874 0.1389194,-0.1585331 l 0.024085,-0.00195 h 0.2612303 c 0.081842,0 0.149598,0.059305 0.1612404,0.1365891 l 0.00175,0.023683 -3.398e-4,0.3968809 v 0 l -0.00168,0.014211 v 0 l -0.00553,0.023034 v 0 l -0.00532,0.014145 c -0.098178,0.22826 -0.3236506,0.3528713 -0.5706303,0.3528713 -0.4240855,0 -0.7181621,-0.3622714 -0.7181621,-0.8016063 0,-0.4391857 0.2940275,-0.8006848 0.7181621,-0.8006848 z m 1.2034759,0.031275 c 0.081843,0 0.1495977,0.059305 0.1612403,0.1365891 l 0.00175,0.023683 v 1.2211775 c 0,0.088516 -0.07298,0.1602721 -0.1630073,0.1602721 -0.081841,0 -0.1495972,-0.059305 -0.1612397,-0.1365892 L 3.040589,3.5049308 V 2.2837527 c 0,-0.088516 0.07298,-0.1602721 0.1630067,-0.1602714 z m 0.7813442,0 0.5209469,0.00195 c 0.090025,3.048e-4 0.1627543,0.072306 0.1624458,0.1608234 -2.809e-4,0.08047 -0.06083,0.1468798 -0.1394772,0.158066 l -0.024092,0.00195 -0.3575326,-0.0013 v 0.4497782 l 0.2928918,2.27e-4 c 0.081842,0 0.1495979,0.059305 0.1612403,0.136589 l 0.00175,0.023683 c 0,0.080469 -0.06031,0.1470871 -0.1389193,0.1585393 l -0.024092,0.00195 -0.2928919,-2.336e-4 1.563e-4,0.2860316 c 0,0.080471 -0.06031,0.1470873 -0.1389193,0.1585395 l -0.024085,0.00195 c -0.081843,0 -0.1495979,-0.059305 -0.1612403,-0.1365826 l -0.00175,-0.023691 V 2.2841354 c 2.798e-4,-0.08047 0.060829,-0.1468797 0.1394758,-0.1580594 z\\\"/>\\n <path d=\\\"m 5.0894191,1.0943261 c 0,-0.21918999 -0.177687,-0.39686999 -0.396876,-0.39686999 h -3.43959 c -0.2191879,0 -0.391262,0.1777519 -0.3968759,0.39686999 l -0.027082,3.4379266 c 0.040152,0.2939927 0.4235456,0.409415 0.4235456,0.409415 l 3.4785583,-0.00851 c 0,0 0.3008506,-0.1402998 0.3236271,-0.4201576 0.042911,-0.5272495 0.034693,-1.6106146 0.034693,-3.4186761 z m -4.49792494,0 c 0,-0.36530999 0.29614504,-0.66145999 0.66145894,-0.66145999 h 3.43959 c 0.365314,0 0.66146,0.29615 0.66146,0.66145999 v 3.43959 c 0,0.36532 -0.296146,0.66146 -0.66146,0.66146 h -3.43959 c -0.3653139,0 -0.66145894,-0.29614 -0.66145894,-0.66146 z\\\"/>\\n </g>\\n</svg>\\n\",\n jo = {\n images: {\n id: \"upload-images-icon\",\n svgString: Do,\n dropupText: \"Image\"\n },\n gifs: {\n id: \"upload-gifs-icon\",\n svgString: Bo,\n dropupText: \"GIF\"\n },\n audio: {\n id: \"upload-audio-icon\",\n svgString: Fo,\n dropupText: \"Audio\"\n },\n mixedFiles: {\n id: \"upload-mixed-files-icon\",\n svgString: No,\n dropupText: \"File\"\n }\n },\n Uo = \"<?xml version=\\\"1.0\\\" encoding=\\\"iso-8859-1\\\"?>\\n<svg height=\\\"1.4em\\\" width=\\\"1.4em\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\"\\n\\t viewBox=\\\"0 0 490.9 490.9\\\" xml:space=\\\"preserve\\\">\\n\\t<g>\\n\\t\\t<g>\\n\\t\\t\\t<path d=\\\"M245.5,322.9c53,0,96.2-43.2,96.2-96.2V96.2c0-53-43.2-96.2-96.2-96.2s-96.2,43.2-96.2,96.2v130.5\\n\\t\\t\\t\\tC149.3,279.8,192.5,322.9,245.5,322.9z M173.8,96.2c0-39.5,32.2-71.7,71.7-71.7s71.7,32.2,71.7,71.7v130.5\\n\\t\\t\\t\\tc0,39.5-32.2,71.7-71.7,71.7s-71.7-32.2-71.7-71.7V96.2z\\\"/>\\n\\t\\t\\t<path d=\\\"M94.4,214.5c-6.8,0-12.3,5.5-12.3,12.3c0,85.9,66.7,156.6,151.1,162.8v76.7h-63.9c-6.8,0-12.3,5.5-12.3,12.3\\n\\t\\t\\t\\ts5.5,12.3,12.3,12.3h152.3c6.8,0,12.3-5.5,12.3-12.3s-5.5-12.3-12.3-12.3h-63.9v-76.7c84.4-6.3,151.1-76.9,151.1-162.8\\n\\t\\t\\t\\tc0-6.8-5.5-12.3-12.3-12.3s-12.3,5.5-12.3,12.3c0,76.6-62.3,138.9-138.9,138.9s-138.9-62.3-138.9-138.9\\n\\t\\t\\t\\tC106.6,220,101.2,214.5,94.4,214.5z\\\"/>\\n\\t\\t</g>\\n\\t</g>\\n</svg>\\n\";\nvar Pt = /*#__PURE__*/function (_jt2) {\n function Pt(e) {\n var _this52;\n _classCallCheck(this, Pt);\n (e == null ? void 0 : e.position) === \"dropup-menu\" && (e.position = \"outside-right\"), _this52 = _callSuper(this, Pt, [Pt.createMicrophoneElement(), e == null ? void 0 : e.position, e]), _this52.isActive = !1, _this52._innerElements = _this52.createInnerElements(_this52._customStyles), _this52.changeToDefault();\n return _this52;\n }\n _inherits(Pt, _jt2);\n return _createClass(Pt, [{\n key: \"createInnerElements\",\n value: function createInnerElements(e) {\n var t = Pt.createSVGIconElement();\n return {\n \"default\": this.createInnerElement(t, \"default\", e),\n active: this.createInnerElement(t, \"active\", e),\n unsupported: this.createInnerElement(t, \"unsupported\", e),\n commandMode: this.createInnerElement(t, \"commandMode\", e)\n };\n }\n // prettier-ignore\n }, {\n key: \"createInnerElement\",\n value: function createInnerElement(e, t, i) {\n return K.createSpecificStateElement(this.elementRef, t, i) || e;\n }\n }, {\n key: \"changeToActive\",\n value: function changeToActive() {\n this.elementRef.replaceChildren(this._innerElements.active), this.toggleIconFilter(\"active\"), this.reapplyStateStyle(\"active\", [\"default\", \"commandMode\"]), this.isActive = !0;\n }\n }, {\n key: \"changeToDefault\",\n value: function changeToDefault() {\n this.elementRef.replaceChildren(this._innerElements[\"default\"]), this.toggleIconFilter(\"default\"), this.reapplyStateStyle(\"default\", [\"active\", \"commandMode\"]), this.isActive = !1;\n }\n }, {\n key: \"changeToCommandMode\",\n value: function changeToCommandMode() {\n this.elementRef.replaceChildren(this._innerElements.unsupported), this.toggleIconFilter(\"command\"), this.reapplyStateStyle(\"commandMode\", [\"active\"]);\n }\n }, {\n key: \"changeToUnsupported\",\n value: function changeToUnsupported() {\n this.elementRef.replaceChildren(this._innerElements.unsupported), this.elementRef.classList.add(\"unsupported-microphone\"), this.reapplyStateStyle(\"unsupported\", [\"active\"]);\n }\n }, {\n key: \"toggleIconFilter\",\n value: function toggleIconFilter(e) {\n var t = this.elementRef.children[0];\n if (t.tagName.toLocaleLowerCase() === \"svg\") switch (e) {\n case \"default\":\n t.classList.remove(\"active-microphone-icon\", \"command-microphone-icon\"), t.classList.add(\"default-microphone-icon\");\n break;\n case \"active\":\n t.classList.remove(\"default-microphone-icon\", \"command-microphone-icon\"), t.classList.add(\"active-microphone-icon\");\n break;\n case \"command\":\n t.classList.remove(\"active-microphone-icon\", \"default-microphone-icon\"), t.classList.add(\"command-microphone-icon\");\n break;\n }\n }\n }], [{\n key: \"createMicrophoneElement\",\n value: function createMicrophoneElement() {\n var e = document.createElement(\"div\");\n return e.id = \"microphone-button\", e.classList.add(\"input-button\"), e;\n }\n }, {\n key: \"createSVGIconElement\",\n value: function createSVGIconElement() {\n var e = ie.createSVGElement(Uo);\n return e.id = \"microphone-icon\", e;\n }\n }]);\n}(jt);\nvar ds = {},\n wi = {},\n Ti = {},\n Ut = {},\n Qe = {};\nObject.defineProperty(Qe, \"__esModule\", {\n value: !0\n});\nQe.Text = void 0;\nvar Oe = /*#__PURE__*/function () {\n function Oe() {\n _classCallCheck(this, Oe);\n }\n return _createClass(Oe, null, [{\n key: \"capitalize\",\n value: function capitalize(e) {\n return e.replace(Oe.FIRST_CHAR_REGEX, function (t) {\n return t.toUpperCase();\n });\n }\n }, {\n key: \"lineBreak\",\n value: function lineBreak(e) {\n return e.replace(Oe.DOUBLE_LINE, \"<p></p>\").replace(Oe.ONE_LINE, \"<br>\");\n }\n }, {\n key: \"isCharDefined\",\n value: function isCharDefined(e) {\n return e !== void 0 && e !== \" \" && e !== \" \" && e !== \"\\n\" && e !== \"\";\n }\n // WORK - can optimize to not not have to do it multiple times\n }, {\n key: \"breakupIntoWordsArr\",\n value: function breakupIntoWordsArr(e) {\n return e.split(/(\\W+)/);\n }\n }]);\n}();\nQe.Text = Oe;\nOe.FIRST_CHAR_REGEX = /\\S/;\nOe.DOUBLE_LINE = /\\n\\n/g;\nOe.ONE_LINE = /\\n/g;\nObject.defineProperty(Ut, \"__esModule\", {\n value: !0\n});\nUt.Translate = void 0;\nvar Ho = Qe;\nvar qo = /*#__PURE__*/function () {\n function qo() {\n _classCallCheck(this, qo);\n }\n return _createClass(qo, null, [{\n key: \"translate\",\n value: function translate(e, t) {\n var i = Ho.Text.breakupIntoWordsArr(e);\n for (var n = 0; n < i.length; n += 1) t[i[n]] && (i[n] = t[i[n]]);\n return i.join(\"\");\n }\n }]);\n}();\nUt.Translate = qo;\nObject.defineProperty(Ti, \"__esModule\", {\n value: !0\n});\nTi.WebSpeechTranscript = void 0;\nvar Fn = Ut;\nvar zo = /*#__PURE__*/function () {\n function zo() {\n _classCallCheck(this, zo);\n }\n return _createClass(zo, null, [{\n key: \"extract\",\n value: function extract(e, t, i) {\n var n = \"\";\n for (var r = e.resultIndex; r < e.results.length; ++r) {\n var o = e.results[r][0].transcript;\n i && (o = Fn.Translate.translate(o, i)), e.results[r].isFinal ? t += o : n += o;\n }\n return {\n interimTranscript: n,\n finalTranscript: t,\n newText: n || t\n };\n }\n }, {\n key: \"extractSafari\",\n value: function extractSafari(e, t, i) {\n var n = \"\";\n var r = \"\";\n for (var o = e.resultIndex; o < e.results.length; ++o) {\n var a = e.results[o][0].transcript;\n i && (a = Fn.Translate.translate(a, i)), n += a;\n }\n return {\n interimTranscript: r,\n finalTranscript: n,\n newText: r || n\n };\n }\n }]);\n}();\nTi.WebSpeechTranscript = zo;\nvar mt = {};\nObject.defineProperty(mt, \"__esModule\", {\n value: !0\n});\nmt.Browser = void 0;\nvar vt = /*#__PURE__*/_createClass(function vt() {\n _classCallCheck(this, vt);\n});\nmt.Browser = vt;\nvt.IS_SAFARI = function () {\n return vt._IS_SAFARI === void 0 && (vt._IS_SAFARI = /^((?!chrome|android).)*safari/i.test(navigator.userAgent)), vt._IS_SAFARI;\n};\nvar Ht = {},\n Ci = {};\nObject.defineProperty(Ci, \"__esModule\", {\n value: !0\n});\nCi.EventListeners = void 0;\nvar oe = /*#__PURE__*/function () {\n function oe() {\n _classCallCheck(this, oe);\n }\n return _createClass(oe, null, [{\n key: \"getElementIfFocusedOnAvailable\",\n value: function getElementIfFocusedOnAvailable(e, t) {\n return Array.isArray(e) ? e.find(function (i) {\n return t === i;\n }) : t === e ? e : void 0;\n }\n }, {\n key: \"keyDownWindow\",\n value: function keyDownWindow(e) {\n var _this53 = this;\n e.element && oe.getElementIfFocusedOnAvailable(e.element, document.activeElement) && (oe.KEY_DOWN_TIMEOUT !== null && clearTimeout(oe.KEY_DOWN_TIMEOUT), oe.KEY_DOWN_TIMEOUT = setTimeout(function () {\n oe.KEY_DOWN_TIMEOUT = null, _this53.resetRecording(e);\n }, 500));\n }\n }, {\n key: \"mouseDownWindow\",\n value: function mouseDownWindow(e, t) {\n this.mouseDownElement = oe.getElementIfFocusedOnAvailable(e, t.target);\n }\n }, {\n key: \"mouseUpWindow\",\n value: function mouseUpWindow(e) {\n this.mouseDownElement && this.resetRecording(e), this.mouseDownElement = void 0;\n }\n }, {\n key: \"add\",\n value: function add(e, t) {\n var i = (t == null ? void 0 : t.insertInCursorLocation) === void 0 || (t == null ? void 0 : t.insertInCursorLocation);\n t != null && t.element && i && (e.mouseDownEvent = oe.mouseDownWindow.bind(e, t.element), document.addEventListener(\"mousedown\", e.mouseDownEvent), e.mouseUpEvent = oe.mouseUpWindow.bind(e, t), document.addEventListener(\"mouseup\", e.mouseUpEvent), e.keyDownEvent = oe.keyDownWindow.bind(e, t), document.addEventListener(\"keydown\", e.keyDownEvent));\n }\n }, {\n key: \"remove\",\n value: function remove(e) {\n document.removeEventListener(\"mousedown\", e.mouseDownEvent), document.removeEventListener(\"mouseup\", e.mouseUpEvent), document.removeEventListener(\"keydown\", e.keyDownEvent);\n }\n }]);\n}();\nCi.EventListeners = oe;\noe.KEY_DOWN_TIMEOUT = null;\nvar ki = {};\nObject.defineProperty(ki, \"__esModule\", {\n value: !0\n});\nki.PreResultUtils = void 0;\nvar Vo = /*#__PURE__*/function () {\n function Vo() {\n _classCallCheck(this, Vo);\n }\n return _createClass(Vo, null, [{\n key: \"process\",\n value: function process(e, t, i, n, r) {\n var o = n == null ? void 0 : n(t, i);\n return o ? (setTimeout(function () {\n o.restart ? e.resetRecording(r) : o.stop && e.stop();\n }), (o.stop || o.restart) && o.removeNewText) : !1;\n }\n }]);\n}();\nki.PreResultUtils = Vo;\nvar qt = {},\n zt = {};\nObject.defineProperty(zt, \"__esModule\", {\n value: !0\n});\nzt.AutoScroll = void 0;\nvar bn = /*#__PURE__*/function () {\n function bn() {\n _classCallCheck(this, bn);\n }\n return _createClass(bn, null, [{\n key: \"changeStateIfNeeded\",\n value: function changeStateIfNeeded(e, t) {\n t && !e.isCursorAtEnd && (e.endPadding = \"\", e.scrollingSpan.innerHTML = \"&nbsp;\");\n }\n }, {\n key: \"scrollGeneric\",\n value: function scrollGeneric(e, t) {\n e.isCursorAtEnd ? t.scrollTop = t.scrollHeight : e.scrollingSpan.scrollIntoView({\n block: \"nearest\"\n });\n }\n // primitives don't need to be scrolled except in safari\n // they can only safely be scrolled to the end\n }, {\n key: \"scrollSafariPrimitiveToEnd\",\n value: function scrollSafariPrimitiveToEnd(e) {\n e.scrollLeft = e.scrollWidth, e.scrollTop = e.scrollHeight;\n }\n }, {\n key: \"isElementOverflown\",\n value: function isElementOverflown(e) {\n return e.scrollHeight > e.clientHeight || e.scrollWidth > e.clientWidth;\n }\n }, {\n key: \"isRequired\",\n value: function isRequired(e, t) {\n return e && bn.isElementOverflown(t);\n }\n }]);\n}();\nzt.AutoScroll = bn;\nvar et = {};\nObject.defineProperty(et, \"__esModule\", {\n value: !0\n});\net.Elements = void 0;\nvar Go = /*#__PURE__*/function () {\n function Go() {\n _classCallCheck(this, Go);\n }\n return _createClass(Go, null, [{\n key: \"isPrimitiveElement\",\n value: function isPrimitiveElement(e) {\n return e.tagName === \"INPUT\" || e.tagName === \"TEXTAREA\";\n }\n }, {\n key: \"createInterimSpan\",\n value: function createInterimSpan() {\n var e = document.createElement(\"span\");\n return e.style.color = \"grey\", e.style.pointerEvents = \"none\", e;\n }\n }, {\n key: \"createGenericSpan\",\n value: function createGenericSpan() {\n var e = document.createElement(\"span\");\n return e.style.pointerEvents = \"none\", e;\n }\n }, {\n key: \"appendSpans\",\n value: function appendSpans(e, t) {\n if (e.spansPopulated = !0, e.insertInCursorLocation && document.activeElement === t) {\n var _i16 = window.getSelection();\n if (_i16 != null && _i16.focusNode) {\n var n = _i16.getRangeAt(0);\n n.insertNode(e.scrollingSpan), n.insertNode(e.interimSpan), n.insertNode(e.finalSpan), n.collapse(!1), _i16.removeAllRanges(), _i16.addRange(n);\n return;\n }\n }\n t.appendChild(e.finalSpan), t.appendChild(e.interimSpan), t.appendChild(e.scrollingSpan);\n }\n }, {\n key: \"applyCustomColors\",\n value: function applyCustomColors(e, t) {\n t.interim && (e.interimSpan.style.color = t.interim), t[\"final\"] && (e.finalSpan.style.color = t[\"final\"]);\n }\n }, {\n key: \"isInsideShadowDOM\",\n value: function isInsideShadowDOM(e) {\n return e.getRootNode() instanceof ShadowRoot;\n }\n }]);\n}();\net.Elements = Go;\nvar tt = {};\nObject.defineProperty(tt, \"__esModule\", {\n value: !0\n});\ntt.Cursor = void 0;\nvar _t = /*#__PURE__*/function () {\n function _t() {\n _classCallCheck(this, _t);\n }\n return _createClass(_t, null, [{\n key: \"setOffsetForGeneric\",\n value: function setOffsetForGeneric(e, t) {\n var i = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n var n = 0;\n for (var r = 0; r < e.childNodes.length; r += 1) {\n var o = e.childNodes[r];\n if (o.childNodes.length > 0) {\n var a = _t.setOffsetForGeneric(o, t, i);\n if (a === -1) return -1;\n i += a;\n } else if (o.textContent !== null) {\n if (i + o.textContent.length > t) {\n var _a3 = document.createRange();\n _a3.setStart(o, t - i), _a3.collapse(!0);\n var l = window.getSelection();\n return l == null || l.removeAllRanges(), l == null || l.addRange(_a3), e.focus(), -1;\n }\n i += o.textContent.length, n += o.textContent.length;\n }\n }\n return n;\n }\n }, {\n key: \"focusEndOfGeneric\",\n value: function focusEndOfGeneric(e) {\n var t = document.createRange();\n t.selectNodeContents(e), t.collapse(!1);\n var i = window.getSelection();\n i && (i.removeAllRanges(), i.addRange(t));\n }\n }, {\n key: \"setOffsetForSafariGeneric\",\n value: function setOffsetForSafariGeneric(e, t) {\n var i = window.getSelection();\n if (i) {\n var n = _t.getGenericElementCursorOffset(e, i, !0);\n console.log(n), setTimeout(function () {}, 100), _t.setOffsetForGeneric(e, n + t);\n }\n }\n // set to automatically scroll to cursor (scroll does not work in Safari)\n }, {\n key: \"setOffsetForPrimitive\",\n value: function setOffsetForPrimitive(e, t, i) {\n i && e.blur(), e.setSelectionRange(t, t), e.focus();\n }\n // Scroll Input in Safari - does not work for TextArea and uses span which can have a different style\n // private static getCursorOffsetFromLeft(inputElement: HTMLInputElement, position: number) {\n // // Get the value of the input element up to the cursor position\n // const valueUpToCursor = inputElement.value.substring(0, position);\n // // Create a temporary span element to measure the width of the text\n // const tempSpan = document.createElement('span');\n // tempSpan.textContent = valueUpToCursor;\n // tempSpan.style.visibility = 'hidden';\n // tempSpan.style.position = 'absolute';\n // document.body.appendChild(tempSpan);\n // // Measure the width of the text up to the cursor position\n // const offsetWidth = tempSpan.offsetWidth;\n // const offsetHeight = tempSpan.offsetHeight;\n // // Clean up the temporary span element\n // document.body.removeChild(tempSpan);\n // return {left: offsetWidth, top: offsetHeight};\n // }\n }, {\n key: \"getGenericElementCursorOffset\",\n value: function getGenericElementCursorOffset(e, t, i) {\n var n = 0;\n if (t.rangeCount > 0) {\n var r = t.getRangeAt(0),\n o = r.cloneRange();\n o.selectNodeContents(e), i ? o.setEnd(r.startContainer, r.startOffset) : o.setEnd(r.endContainer, r.endOffset), n = o.toString().length;\n }\n return n;\n }\n }]);\n}();\ntt.Cursor = _t;\nObject.defineProperty(qt, \"__esModule\", {\n value: !0\n});\nqt.CommandUtils = void 0;\nvar Bn = zt,\n Wo = et,\n $o = mt,\n jn = tt,\n Un = Qe;\nvar se = /*#__PURE__*/function () {\n function se() {\n _classCallCheck(this, se);\n }\n return _createClass(se, null, [{\n key: \"processCommand\",\n value: function processCommand(e, t) {\n return (!t || !t.caseSensitive) && (e = e.toLowerCase()), (t == null ? void 0 : t.substrings) === !1 ? Un.Text.breakupIntoWordsArr(e) : e;\n }\n }, {\n key: \"process\",\n value: function process(e) {\n var t;\n return ((t = e.settings) === null || t === void 0 ? void 0 : t.caseSensitive) === !0 ? e : Object.keys(e).reduce(function (n, r) {\n var o = e[r];\n return n[r] = typeof o == \"string\" ? se.processCommand(o, e.settings) : o, n;\n }, {});\n }\n }, {\n key: \"toggleCommandModeOn\",\n value: function toggleCommandModeOn(e) {\n var t;\n e.isWaitingForCommand = !0, (t = e.onCommandModeTrigger) === null || t === void 0 || t.call(e, !0);\n }\n }, {\n key: \"toggleCommandModeOff\",\n value: function toggleCommandModeOff(e) {\n var t;\n e.isWaitingForCommand && ((t = e.onCommandModeTrigger) === null || t === void 0 || t.call(e, !1), e.isWaitingForCommand = !1);\n }\n }, {\n key: \"setText\",\n value: function setText(e, t, i, n) {\n se.toggleCommandModeOff(e), Wo.Elements.isPrimitiveElement(n) ? (n.value = i, e.isTargetInShadow || jn.Cursor.setOffsetForPrimitive(n, i.length, !0), $o.Browser.IS_SAFARI() && e.autoScroll && Bn.AutoScroll.scrollSafariPrimitiveToEnd(n)) : (n.textContent = i, e.isTargetInShadow || jn.Cursor.focusEndOfGeneric(n), setTimeout(function () {\n return Bn.AutoScroll.scrollGeneric(e, n);\n })), e.resetRecording(t);\n }\n }, {\n key: \"checkIfMatchesSubstring\",\n value: function checkIfMatchesSubstring(e, t) {\n return t.includes(e);\n }\n }, {\n key: \"checkIfMatchesWord\",\n value: function checkIfMatchesWord(e, t, i) {\n var n = e;\n for (var r = i.length - 1; r >= 0; r -= 1) {\n var o = r,\n a = n.length - 1;\n for (; i[o] === n[a] && a >= 0;) o -= 1, a -= 1;\n if (a < 0) return !0;\n }\n return !1;\n }\n // prettier-ignore\n }, {\n key: \"execCommand\",\n value: function execCommand(e, t, i, n, r) {\n var o, a, l;\n var c = e.commands;\n if (!c || !n || !i) return;\n var d = ((o = c.settings) === null || o === void 0 ? void 0 : o.caseSensitive) === !0 ? t : t.toLowerCase(),\n h = Un.Text.breakupIntoWordsArr(d),\n u = ((a = c.settings) === null || a === void 0 ? void 0 : a.substrings) === !1 ? se.checkIfMatchesWord : se.checkIfMatchesSubstring;\n if (c.commandMode && u(c.commandMode, d, h)) return e.setInterimColorToFinal(), setTimeout(function () {\n return se.toggleCommandModeOn(e);\n }), {\n doNotProcessTranscription: !1\n };\n if (!(c.commandMode && !e.isWaitingForCommand)) {\n if (c.stop && u(c.stop, d, h)) return se.toggleCommandModeOff(e), setTimeout(function () {\n return e.stop();\n }), {\n doNotProcessTranscription: !1\n };\n if (c.pause && u(c.pause, d, h)) return se.toggleCommandModeOff(e), e.setInterimColorToFinal(), setTimeout(function () {\n var f;\n e.isPaused = !0, (f = e.onPauseTrigger) === null || f === void 0 || f.call(e, !0);\n }), {\n doNotProcessTranscription: !1\n };\n if (c.resume && u(c.resume, d, h)) return e.isPaused = !1, (l = e.onPauseTrigger) === null || l === void 0 || l.call(e, !1), se.toggleCommandModeOff(e), e.resetRecording(i), {\n doNotProcessTranscription: !0\n };\n if (c.reset && u(c.reset, d, h)) return r !== void 0 && se.setText(e, i, r, n), {\n doNotProcessTranscription: !0\n };\n if (c.removeAllText && u(c.removeAllText, d, h)) return se.setText(e, i, \"\", n), {\n doNotProcessTranscription: !0\n };\n }\n }\n }]);\n}();\nqt.CommandUtils = se;\nvar Ai = {};\nObject.defineProperty(Ai, \"__esModule\", {\n value: !0\n});\nAi.Highlight = void 0;\nvar Ko = et,\n bt = tt;\nvar hi = /*#__PURE__*/function () {\n function hi() {\n _classCallCheck(this, hi);\n }\n return _createClass(hi, null, [{\n key: \"setStateForPrimitive\",\n value: function setStateForPrimitive(e, t) {\n var i, n;\n t.selectionStart !== null && (i = t.selectionStart), t.selectionEnd !== null && (n = t.selectionEnd), e.isHighlighted = i !== n;\n }\n }, {\n key: \"setStateForGeneric\",\n value: function setStateForGeneric(e, t) {\n var i = window.getSelection();\n if (i != null && i.focusNode) {\n var n = bt.Cursor.getGenericElementCursorOffset(t, i, !0),\n r = bt.Cursor.getGenericElementCursorOffset(t, i, !1);\n e.isHighlighted = n !== r;\n }\n }\n }, {\n key: \"setState\",\n value: function setState(e, t) {\n document.activeElement === t && (Ko.Elements.isPrimitiveElement(t) ? hi.setStateForPrimitive(e, t) : hi.setStateForGeneric(e, t));\n }\n }, {\n key: \"removeForGeneric\",\n value: function removeForGeneric(e, t) {\n var i = window.getSelection();\n if (i) {\n var n = bt.Cursor.getGenericElementCursorOffset(t, i, !0);\n i.deleteFromDocument(), bt.Cursor.setOffsetForGeneric(t, n), e.isHighlighted = !1;\n }\n }\n }, {\n key: \"removeForPrimitive\",\n value: function removeForPrimitive(e, t) {\n var i = t.selectionStart,\n n = t.selectionEnd,\n r = t.value;\n if (i && n) {\n var o = r.substring(0, i) + r.substring(n);\n t.value = o, bt.Cursor.setOffsetForPrimitive(t, i, e.autoScroll);\n }\n e.isHighlighted = !1;\n }\n }]);\n}();\nAi.Highlight = hi;\nvar Mi = {};\nObject.defineProperty(Mi, \"__esModule\", {\n value: !0\n});\nMi.Padding = void 0;\nvar Jo = et,\n Hn = tt,\n nt = Qe;\nvar ui = /*#__PURE__*/function () {\n function ui() {\n _classCallCheck(this, ui);\n }\n return _createClass(ui, null, [{\n key: \"setStateForPrimitiveElement\",\n value: function setStateForPrimitiveElement(e, t) {\n if (document.activeElement === t && t.selectionStart !== null) {\n var n = t.selectionStart,\n r = t.value[n - 1],\n o = t.selectionEnd === null ? n : t.selectionEnd,\n a = t.value[o];\n nt.Text.isCharDefined(r) && (e.startPadding = \" \", e.numberOfSpacesBeforeNewText = 1), nt.Text.isCharDefined(a) && (e.endPadding = \" \", e.numberOfSpacesAfterNewText = 1), e.isCursorAtEnd = t.value.length === o;\n return;\n }\n var i = t.value[t.value.length - 1];\n nt.Text.isCharDefined(i) && (e.startPadding = \" \", e.numberOfSpacesBeforeNewText = 1), e.isCursorAtEnd = !0;\n }\n }, {\n key: \"setStateForGenericElement\",\n value: function setStateForGenericElement(e, t) {\n var i, n, r;\n if (document.activeElement === t) {\n var a = window.getSelection();\n if (a != null && a.focusNode) {\n var l = Hn.Cursor.getGenericElementCursorOffset(t, a, !0),\n c = (i = t.textContent) === null || i === void 0 ? void 0 : i[l - 1],\n d = Hn.Cursor.getGenericElementCursorOffset(t, a, !1),\n h = (n = t.textContent) === null || n === void 0 ? void 0 : n[d];\n nt.Text.isCharDefined(c) && (e.startPadding = \" \"), nt.Text.isCharDefined(h) && (e.endPadding = \" \"), e.isCursorAtEnd = ((r = t.textContent) === null || r === void 0 ? void 0 : r.length) === d;\n return;\n }\n }\n var o = t.innerText.charAt(t.innerText.length - 1);\n nt.Text.isCharDefined(o) && (e.startPadding = \" \"), e.isCursorAtEnd = !0;\n }\n }, {\n key: \"setState\",\n value: function setState(e, t) {\n Jo.Elements.isPrimitiveElement(t) ? ui.setStateForPrimitiveElement(e, t) : ui.setStateForGenericElement(e, t);\n }\n }, {\n key: \"adjustStateAfterRecodingPrimitiveElement\",\n value: function adjustStateAfterRecodingPrimitiveElement(e, t) {\n if (e.primitiveTextRecorded = !0, e.insertInCursorLocation && document.activeElement === t && (t.selectionEnd !== null && (e.endPadding = e.endPadding + t.value.slice(t.selectionEnd)), t.selectionStart !== null)) {\n e.startPadding = t.value.slice(0, t.selectionStart) + e.startPadding;\n return;\n }\n e.startPadding = t.value + e.startPadding;\n }\n }, {\n key: \"adjustSateForNoTextPrimitiveElement\",\n value: function adjustSateForNoTextPrimitiveElement(e) {\n e.numberOfSpacesBeforeNewText === 1 && (e.startPadding = e.startPadding.substring(0, e.startPadding.length - 1), e.numberOfSpacesBeforeNewText = 0), e.numberOfSpacesAfterNewText === 1 && (e.endPadding = e.endPadding.substring(1), e.numberOfSpacesAfterNewText = 0);\n }\n }]);\n}();\nMi.Padding = ui;\nObject.defineProperty(Ht, \"__esModule\", {\n value: !0\n});\nHt.Speech = void 0;\nvar qn = Ci,\n Xo = ki,\n zn = qt,\n Kt = zt,\n Hi = Ai,\n pe = et,\n qi = Mi,\n Vn = mt,\n Gn = tt,\n zi = Qe;\nvar Zo = /*#__PURE__*/function () {\n function Zo() {\n _classCallCheck(this, Zo);\n this.finalTranscript = \"\", this.interimSpan = pe.Elements.createInterimSpan(), this.finalSpan = pe.Elements.createGenericSpan(), this.scrollingSpan = pe.Elements.createGenericSpan(), this.isCursorAtEnd = !1, this.spansPopulated = !1, this.startPadding = \"\", this.endPadding = \"\", this.numberOfSpacesBeforeNewText = 0, this.numberOfSpacesAfterNewText = 0, this.isHighlighted = !1, this.primitiveTextRecorded = !1, this.recognizing = !1, this._displayInterimResults = !0, this.insertInCursorLocation = !0, this.autoScroll = !0, this.isRestarting = !1, this.isPaused = !1, this.isWaitingForCommand = !1, this.isTargetInShadow = !1, this.cannotBeStopped = !1, this.resetState();\n }\n return _createClass(Zo, [{\n key: \"prepareBeforeStart\",\n value: function prepareBeforeStart(e) {\n var t, i;\n if (e != null && e.element) if (qn.EventListeners.add(this, e), Array.isArray(e.element)) {\n var r = e.element.find(function (o) {\n return o === document.activeElement;\n }) || e.element[0];\n if (!r) return;\n this.prepare(r);\n } else this.prepare(e.element);\n (e == null ? void 0 : e.displayInterimResults) !== void 0 && (this._displayInterimResults = e.displayInterimResults), e != null && e.textColor && (this._finalTextColor = (t = e == null ? void 0 : e.textColor) === null || t === void 0 ? void 0 : t[\"final\"], pe.Elements.applyCustomColors(this, e.textColor)), (e == null ? void 0 : e.insertInCursorLocation) !== void 0 && (this.insertInCursorLocation = e.insertInCursorLocation), (e == null ? void 0 : e.autoScroll) !== void 0 && (this.autoScroll = e.autoScroll), this._onResult = e == null ? void 0 : e.onResult, this._onPreResult = e == null ? void 0 : e.onPreResult, this._onStart = e == null ? void 0 : e.onStart, this._onStop = e == null ? void 0 : e.onStop, this._onError = e == null ? void 0 : e.onError, this.onCommandModeTrigger = e == null ? void 0 : e.onCommandModeTrigger, this.onPauseTrigger = e == null ? void 0 : e.onPauseTrigger, this._options = e, !((i = this._options) === null || i === void 0) && i.commands && (this.commands = zn.CommandUtils.process(this._options.commands));\n }\n }, {\n key: \"prepare\",\n value: function prepare(e) {\n qi.Padding.setState(this, e), Hi.Highlight.setState(this, e), this.isTargetInShadow = pe.Elements.isInsideShadowDOM(e), pe.Elements.isPrimitiveElement(e) ? (this._primitiveElement = e, this._originalText = this._primitiveElement.value) : (this._genericElement = e, this._originalText = this._genericElement.textContent);\n }\n // there was an attempt to optimize this by not having to restart the service and just reset state:\n // unfortunately it did not work because the service would still continue firing the intermediate and final results\n // into the new position\n }, {\n key: \"resetRecording\",\n value: function resetRecording(e) {\n this.isRestarting = !0, this.stop(!0), this.resetState(!0), this.start(e, !0);\n }\n // prettier-ignore\n }, {\n key: \"updateElements\",\n value: function updateElements(e, t, i) {\n var n;\n var r = zi.Text.capitalize(t);\n if (this.finalTranscript === r && e === \"\") return;\n Xo.PreResultUtils.process(this, i, e === \"\", this._onPreResult, this._options) && (e = \"\", i = \"\");\n var o = this.commands && zn.CommandUtils.execCommand(this, i, this._options, this._primitiveElement || this._genericElement, this._originalText);\n if (o) {\n if (o.doNotProcessTranscription) return;\n e = \"\", i = \"\";\n }\n if (this.isPaused || this.isWaitingForCommand) return;\n (n = this._onResult) === null || n === void 0 || n.call(this, i, e === \"\"), this.finalTranscript = r, this._displayInterimResults || (e = \"\");\n var a = this.finalTranscript === \"\" && e === \"\";\n this._primitiveElement ? this.updatePrimitiveElement(this._primitiveElement, e, a) : this._genericElement && this.updateGenericElement(this._genericElement, e, a);\n }\n // prettier-ignore\n // remember that padding values here contain actual text left and right\n }, {\n key: \"updatePrimitiveElement\",\n value: function updatePrimitiveElement(e, t, i) {\n this.isHighlighted && Hi.Highlight.removeForPrimitive(this, e), this.primitiveTextRecorded || qi.Padding.adjustStateAfterRecodingPrimitiveElement(this, e), i && qi.Padding.adjustSateForNoTextPrimitiveElement(this);\n var n = this.startPadding + this.finalTranscript + t;\n if (e.value = n + this.endPadding, !this.isTargetInShadow) {\n var r = n.length + this.numberOfSpacesAfterNewText;\n Gn.Cursor.setOffsetForPrimitive(e, r, this.autoScroll);\n }\n this.autoScroll && Vn.Browser.IS_SAFARI() && this.isCursorAtEnd && Kt.AutoScroll.scrollSafariPrimitiveToEnd(e);\n }\n }, {\n key: \"updateGenericElement\",\n value: function updateGenericElement(e, t, i) {\n this.isHighlighted && Hi.Highlight.removeForGeneric(this, e), this.spansPopulated || pe.Elements.appendSpans(this, e);\n var n = (i ? \"\" : this.startPadding) + zi.Text.lineBreak(this.finalTranscript);\n this.finalSpan.innerHTML = n;\n var r = Kt.AutoScroll.isRequired(this.autoScroll, e);\n Kt.AutoScroll.changeStateIfNeeded(this, r);\n var o = zi.Text.lineBreak(t) + (i ? \"\" : this.endPadding);\n this.interimSpan.innerHTML = o, Vn.Browser.IS_SAFARI() && this.insertInCursorLocation && Gn.Cursor.setOffsetForSafariGeneric(e, n.length + o.length), r && Kt.AutoScroll.scrollGeneric(this, e), i && (this.scrollingSpan.innerHTML = \"\");\n }\n }, {\n key: \"finalise\",\n value: function finalise(e) {\n this._genericElement && (e ? (this.finalSpan = pe.Elements.createGenericSpan(), this.setInterimColorToFinal(), this.interimSpan = pe.Elements.createInterimSpan(), this.scrollingSpan = pe.Elements.createGenericSpan()) : this._genericElement.textContent = this._genericElement.textContent, this.spansPopulated = !1), qn.EventListeners.remove(this);\n }\n }, {\n key: \"setInterimColorToFinal\",\n value: function setInterimColorToFinal() {\n this.interimSpan.style.color = this._finalTextColor || \"black\";\n }\n }, {\n key: \"resetState\",\n value: function resetState(e) {\n this._primitiveElement = void 0, this._genericElement = void 0, this.finalTranscript = \"\", this.finalSpan.innerHTML = \"\", this.interimSpan.innerHTML = \"\", this.scrollingSpan.innerHTML = \"\", this.startPadding = \"\", this.endPadding = \"\", this.isHighlighted = !1, this.primitiveTextRecorded = !1, this.numberOfSpacesBeforeNewText = 0, this.numberOfSpacesAfterNewText = 0, e || (this.stopTimeout = void 0);\n }\n }, {\n key: \"setStateOnStart\",\n value: function setStateOnStart() {\n var e;\n this.recognizing = !0, this.isRestarting ? this.isRestarting = !1 : (e = this._onStart) === null || e === void 0 || e.call(this);\n }\n }, {\n key: \"setStateOnStop\",\n value: function setStateOnStop() {\n var e;\n this.recognizing = !1, this.isRestarting || (e = this._onStop) === null || e === void 0 || e.call(this);\n }\n }, {\n key: \"setStateOnError\",\n value: function setStateOnError(e) {\n var t;\n (t = this._onError) === null || t === void 0 || t.call(this, e), this.recognizing = !1;\n }\n }]);\n}();\nHt.Speech = Zo;\nObject.defineProperty(wi, \"__esModule\", {\n value: !0\n});\nwi.WebSpeech = void 0;\nvar Wn = Ti,\n $n = mt,\n Yo = Ht;\nvar fi = /*#__PURE__*/function (_Yo$Speech) {\n function fi() {\n _classCallCheck(this, fi);\n return _callSuper(this, fi);\n }\n _inherits(fi, _Yo$Speech);\n return _createClass(fi, [{\n key: \"start\",\n value: function start(e) {\n var t;\n this._extractText === void 0 && (this._extractText = $n.Browser.IS_SAFARI() ? Wn.WebSpeechTranscript.extractSafari : Wn.WebSpeechTranscript.extract), this.validate() && (this.prepareBeforeStart(e), this.instantiateService(e), (t = this._service) === null || t === void 0 || t.start(), this._translations = e == null ? void 0 : e.translations);\n }\n }, {\n key: \"validate\",\n value: function validate() {\n return fi.getAPI() ? !0 : (this.error(\"Speech Recognition is unsupported\"), !1);\n }\n }, {\n key: \"instantiateService\",\n value: function instantiateService(e) {\n var t, i;\n var n = fi.getAPI();\n this._service = new n(), this._service.continuous = !0, this._service.interimResults = (t = e == null ? void 0 : e.displayInterimResults) !== null && t !== void 0 ? t : !0, this._service.lang = ((i = e == null ? void 0 : e.language) === null || i === void 0 ? void 0 : i.trim()) || \"en-US\", this.setEvents();\n }\n }, {\n key: \"setEvents\",\n value: function setEvents() {\n var _this54 = this;\n this._service && (this._service.onstart = function () {\n _this54.setStateOnStart();\n }, this._service.onerror = function (e) {\n $n.Browser.IS_SAFARI() && e.message === \"Another request is started\" || e.error === \"aborted\" && _this54.isRestarting || e.error !== \"no-speech\" && _this54.error(e.message || e.error);\n }, this._service.onaudioend = function () {\n _this54.setStateOnStop();\n }, this._service.onend = function () {\n _this54._stopping = !1;\n }, this._service.onresult = function (e) {\n if (_typeof(e.results) > \"u\" && _this54._service) _this54._service.onend = null, _this54._service.stop();else if (_this54._extractText && !_this54._stopping) {\n var _this54$_extractText = _this54._extractText(e, _this54.finalTranscript, _this54._translations),\n t = _this54$_extractText.interimTranscript,\n _i17 = _this54$_extractText.finalTranscript,\n n = _this54$_extractText.newText;\n _this54.updateElements(t, _i17, n);\n }\n });\n }\n }, {\n key: \"stop\",\n value: function stop(e) {\n var t;\n this._stopping = !0, (t = this._service) === null || t === void 0 || t.stop(), this.finalise(e);\n }\n }, {\n key: \"error\",\n value: function error(e) {\n console.error(e), this.setStateOnError(e), this.stop();\n }\n }], [{\n key: \"getAPI\",\n value: function getAPI() {\n return window.webkitSpeechRecognition || window.SpeechRecognition;\n }\n }]);\n}(Yo.Speech);\nwi.WebSpeech = fi;\nvar Ri = {};\nObject.defineProperty(Ri, \"__esModule\", {\n value: !0\n});\nRi.GlobalState = void 0;\nvar ht = /*#__PURE__*/function () {\n function ht() {\n _classCallCheck(this, ht);\n }\n return _createClass(ht, null, [{\n key: \"doubleClickDetector\",\n value: function doubleClickDetector() {\n return ht.doubleClickPending ? !0 : (ht.doubleClickPending = !0, setTimeout(function () {\n ht.doubleClickPending = !1;\n }, 300), !1);\n }\n }]);\n}();\nRi.GlobalState = ht;\nht.doubleClickPending = !1;\nvar Ii = {},\n Li = {};\nObject.defineProperty(Li, \"__esModule\", {\n value: !0\n});\nLi.PreventConnectionStop = void 0;\nvar Qo = /*#__PURE__*/function () {\n function Qo() {\n _classCallCheck(this, Qo);\n }\n return _createClass(Qo, null, [{\n key: \"applyPrevention\",\n value: function applyPrevention(e) {\n clearTimeout(e._manualConnectionStopPrevention), e.cannotBeStopped = !0, e._manualConnectionStopPrevention = setTimeout(function () {\n e.cannotBeStopped = !1;\n }, 800);\n }\n }, {\n key: \"clearPrevention\",\n value: function clearPrevention(e) {\n clearTimeout(e._manualConnectionStopPrevention), e.cannotBeStopped = !1;\n }\n }]);\n}();\nLi.PreventConnectionStop = Qo;\nvar Pi = {},\n Oi = {};\nObject.defineProperty(Oi, \"__esModule\", {\n value: !0\n});\nOi.README_URL = void 0;\nOi.README_URL = \"https://github.com/OvidijusParsiunas/speech-to-element\";\nObject.defineProperty(Pi, \"__esModule\", {\n value: !0\n});\nPi.AzureSpeechConfig = void 0;\nvar Vi = Oi;\nvar pi = /*#__PURE__*/function () {\n function pi() {\n _classCallCheck(this, pi);\n }\n return _createClass(pi, null, [{\n key: \"validateOptions\",\n value: function validateOptions(e, t) {\n return t ? !t.subscriptionKey && !t.token && !t.retrieveToken ? (e(\"Please define a 'subscriptionKey', 'token' or 'retrieveToken' property - more info: \".concat(Vi.README_URL)), !1) : t.region ? !0 : (e(\"Please define a 'region' property - more info: \".concat(Vi.README_URL)), !1) : (e(\"Please provide subscription details - more info: \".concat(Vi.README_URL)), !1);\n }\n }, {\n key: \"getNewSpeechConfig\",\n value: function () {\n var _getNewSpeechConfig = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee112(e, t) {\n return _regeneratorRuntime().wrap(function _callee112$(_context112) {\n while (1) switch (_context112.prev = _context112.next) {\n case 0:\n if (!t.region) {\n _context112.next = 2;\n break;\n }\n return _context112.abrupt(\"return\", t.subscriptionKey ? e.fromSubscription(t.subscriptionKey.trim(), t.region.trim()) : t.token ? e.fromAuthorizationToken(t.token.trim(), t.region.trim()) : t.retrieveToken ? t.retrieveToken().then(function (i) {\n return t.region ? e.fromAuthorizationToken((i == null ? void 0 : i.trim()) || \"\", t.region.trim()) : null;\n })[\"catch\"](function (i) {\n return console.error(i), null;\n }) : null);\n case 2:\n case \"end\":\n return _context112.stop();\n }\n }, _callee112);\n }));\n function getNewSpeechConfig(_x201, _x202) {\n return _getNewSpeechConfig.apply(this, arguments);\n }\n return getNewSpeechConfig;\n }()\n }, {\n key: \"process\",\n value: function process(e, t) {\n t.language && (e.speechRecognitionLanguage = t.language.trim());\n }\n }, {\n key: \"get\",\n value: function () {\n var _get = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee113(e, t) {\n var i;\n return _regeneratorRuntime().wrap(function _callee113$(_context113) {\n while (1) switch (_context113.prev = _context113.next) {\n case 0:\n _context113.next = 2;\n return pi.getNewSpeechConfig(e, t);\n case 2:\n i = _context113.sent;\n return _context113.abrupt(\"return\", (i && pi.process(i, t), i));\n case 4:\n case \"end\":\n return _context113.stop();\n }\n }, _callee113);\n }));\n function get(_x203, _x204) {\n return _get.apply(this, arguments);\n }\n return get;\n }()\n }]);\n}();\nPi.AzureSpeechConfig = pi;\nvar Ni = {};\nObject.defineProperty(Ni, \"__esModule\", {\n value: !0\n});\nNi.StopTimeout = void 0;\nvar Ot = /*#__PURE__*/function () {\n function Ot() {\n _classCallCheck(this, Ot);\n }\n return _createClass(Ot, null, [{\n key: \"set\",\n value: function set(e) {\n e.stopTimeout = setTimeout(function () {\n return e.stop();\n }, e.stopTimeoutMS);\n }\n }, {\n key: \"reset\",\n value: function reset(e, t) {\n e.stopTimeoutMS = t || Ot.DEFAULT_MS, e.stopTimeout && clearTimeout(e.stopTimeout), Ot.set(e);\n }\n }]);\n}();\nNi.StopTimeout = Ot;\nOt.DEFAULT_MS = 2e4;\nvar Di = {};\nObject.defineProperty(Di, \"__esModule\", {\n value: !0\n});\nDi.AzureTranscript = void 0;\nvar ea = Ut;\nvar ta = /*#__PURE__*/function () {\n function ta() {\n _classCallCheck(this, ta);\n }\n return _createClass(ta, null, [{\n key: \"extract\",\n value:\n // newText is used to only send new text in onResult as finalTranscript is continuously accumulated\n function extract(e, t, i, n) {\n return n && (e = ea.Translate.translate(e, n)), i ? {\n interimTranscript: \"\",\n finalTranscript: t + e,\n newText: e\n } : {\n interimTranscript: e,\n finalTranscript: t,\n newText: e\n };\n }\n }]);\n}();\nDi.AzureTranscript = ta;\nObject.defineProperty(Ii, \"__esModule\", {\n value: !0\n});\nIi.Azure = void 0;\nvar Kn = Li,\n Jn = Pi,\n Gi = Ni,\n Xn = Di,\n ia = Ht;\nvar mi = /*#__PURE__*/function (_ia$Speech) {\n function mi() {\n var _this55;\n _classCallCheck(this, mi);\n _this55 = _callSuper(this, mi, arguments), _this55._newTextPadding = \"\";\n return _this55;\n }\n _inherits(mi, _ia$Speech);\n return _createClass(mi, [{\n key: \"start\",\n value: function start(e, t) {\n this._newTextPadding = \"\", this.stopTimeout === void 0 && Gi.StopTimeout.reset(this, e == null ? void 0 : e.stopAfterSilenceMs), this.prepareBeforeStart(e), this.startAsync(e), t || Kn.PreventConnectionStop.applyPrevention(this);\n }\n }, {\n key: \"startAsync\",\n value: function () {\n var _startAsync = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee114(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee114$(_context114) {\n while (1) switch (_context114.prev = _context114.next) {\n case 0:\n _context114.t0 = this.validate(e);\n if (!_context114.t0) {\n _context114.next = 6;\n break;\n }\n _context114.next = 4;\n return this.instantiateService(e);\n case 4:\n this._translations = e == null ? void 0 : e.translations;\n (t = this._service) === null || t === void 0 || t.startContinuousRecognitionAsync(function () {}, this.error);\n case 6:\n case \"end\":\n return _context114.stop();\n }\n }, _callee114, this);\n }));\n function startAsync(_x205) {\n return _startAsync.apply(this, arguments);\n }\n return startAsync;\n }()\n }, {\n key: \"validate\",\n value: function validate(e) {\n return mi.getAPI() ? Jn.AzureSpeechConfig.validateOptions(this.error.bind(this), e) : (this.moduleNotFound(), !1);\n }\n }, {\n key: \"instantiateService\",\n value: function () {\n var _instantiateService = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee115(e) {\n var t, i, n, r;\n return _regeneratorRuntime().wrap(function _callee115$(_context115) {\n while (1) switch (_context115.prev = _context115.next) {\n case 0:\n t = mi.getAPI();\n i = t.AudioConfig.fromDefaultMicrophoneInput();\n _context115.next = 4;\n return Jn.AzureSpeechConfig.get(t.SpeechConfig, e);\n case 4:\n n = _context115.sent;\n if (n) {\n r = new t.SpeechRecognizer(n, i);\n this.setEvents(r), this._service = r, e.retrieveToken && this.retrieveTokenInterval(e.retrieveToken);\n } else this.error(\"Unable to contact Azure server\");\n case 6:\n case \"end\":\n return _context115.stop();\n }\n }, _callee115, this);\n }));\n function instantiateService(_x206) {\n return _instantiateService.apply(this, arguments);\n }\n return instantiateService;\n }()\n }, {\n key: \"setEvents\",\n value: function setEvents(e) {\n e.recognizing = this.onRecognizing.bind(this), e.recognized = this.onRecognized.bind(this), e.sessionStarted = this.onSessionStarted.bind(this), e.canceled = this.onCanceled.bind(this), e.sessionStopped = this.onSessionStopped.bind(this);\n }\n // prettier-ignore\n }, {\n key: \"onRecognizing\",\n value: function onRecognizing(e, t) {\n if (this._stopping) return;\n var _Xn$AzureTranscript$e = Xn.AzureTranscript.extract(this._newTextPadding + t.result.text, this.finalTranscript, !1, this._translations),\n i = _Xn$AzureTranscript$e.interimTranscript,\n n = _Xn$AzureTranscript$e.finalTranscript,\n r = _Xn$AzureTranscript$e.newText;\n Gi.StopTimeout.reset(this, this.stopTimeoutMS), this.updateElements(i, n, r);\n }\n // WORK - huge opportunity to fix this in the repo!!!!!\n // function onRecognized(sender, recognitionEventArgs) {\n // var result = recognitionEventArgs.result;\n // onRecognizedResult(recognitionEventArgs.result);\n // }\n // prettier-ignore\n }, {\n key: \"onRecognized\",\n value: function onRecognized(e, t) {\n var i = t.result;\n switch (i.reason) {\n case window.SpeechSDK.ResultReason.Canceled:\n break;\n case window.SpeechSDK.ResultReason.RecognizedSpeech:\n if (i.text && !this._stopping) {\n var _Xn$AzureTranscript$e2 = Xn.AzureTranscript.extract(this._newTextPadding + i.text, this.finalTranscript, !0, this._translations),\n n = _Xn$AzureTranscript$e2.interimTranscript,\n r = _Xn$AzureTranscript$e2.finalTranscript,\n o = _Xn$AzureTranscript$e2.newText;\n Gi.StopTimeout.reset(this, this.stopTimeoutMS), this.updateElements(n, r, o), r !== \"\" && (this._newTextPadding = \" \");\n }\n break;\n }\n }\n }, {\n key: \"onCanceled\",\n value: function onCanceled(e, t) {\n t.reason === window.SpeechSDK.CancellationReason.Error && this.error(t.errorDetails);\n }\n }, {\n key: \"onSessionStarted\",\n value: function onSessionStarted() {\n Kn.PreventConnectionStop.clearPrevention(this), this.setStateOnStart();\n }\n }, {\n key: \"onSessionStopped\",\n value: function onSessionStopped() {\n this._retrieveTokenInterval || clearInterval(this._retrieveTokenInterval), this._stopping = !1, this.setStateOnStop();\n }\n }, {\n key: \"retrieveTokenInterval\",\n value: function retrieveTokenInterval(e) {\n var _this56 = this;\n this._retrieveTokenInterval = setInterval(function () {\n e == null || e().then(function (t) {\n _this56._service && (_this56._service.authorizationToken = (t == null ? void 0 : t.trim()) || \"\");\n })[\"catch\"](function (t) {\n _this56.error(t);\n });\n }, 1e4);\n }\n }, {\n key: \"stop\",\n value: function stop(e) {\n var t;\n !e && this._retrieveTokenInterval && clearInterval(this._retrieveTokenInterval), this._stopping = !0, (t = this._service) === null || t === void 0 || t.stopContinuousRecognitionAsync(), this.finalise(e);\n }\n }, {\n key: \"moduleNotFound\",\n value: function moduleNotFound() {\n console.error(\"speech recognition module not found:\"), console.error(\"please install the 'microsoft-cognitiveservices-speech-sdk' npm package or add a script tag: <script src=\\\"https://aka.ms/csspeech/jsbrowserpackageraw\\\"></script>\"), this.setStateOnError(\"speech recognition module not found\");\n }\n }, {\n key: \"error\",\n value: function error(e) {\n this._retrieveTokenInterval && clearInterval(this._retrieveTokenInterval), console.error(e), this.setStateOnError(e), this.stop();\n }\n }], [{\n key: \"getAPI\",\n value: function getAPI() {\n return window.SpeechSDK;\n }\n }]);\n}(ia.Speech);\nIi.Azure = mi;\nObject.defineProperty(ds, \"__esModule\", {\n value: !0\n});\nvar Zn = wi,\n na = qt,\n le = Ri,\n sa = Ii;\nvar st = /*#__PURE__*/function () {\n function st() {\n _classCallCheck(this, st);\n }\n return _createClass(st, null, [{\n key: \"toggle\",\n value: function toggle(e, t) {\n var i, n;\n var r = e.toLocaleLowerCase().trim();\n !((i = le.GlobalState.service) === null || i === void 0) && i.recognizing ? this.stop() : r === \"webspeech\" ? st.startWebSpeech(t) : r === \"azure\" ? st.startAzure(t) : (console.error(\"service not found - must be either 'webspeech' or 'azure'\"), (n = t == null ? void 0 : t.onError) === null || n === void 0 || n.call(t, \"service not found - must be either 'webspeech' or 'azure'\"));\n }\n }, {\n key: \"startWebSpeech\",\n value: function startWebSpeech(e) {\n st.stop() || (le.GlobalState.service = new Zn.WebSpeech(), le.GlobalState.service.start(e));\n }\n }, {\n key: \"isWebSpeechSupported\",\n value: function isWebSpeechSupported() {\n return !!Zn.WebSpeech.getAPI();\n }\n }, {\n key: \"startAzure\",\n value: function startAzure(e) {\n var t;\n st.stop() || !((t = le.GlobalState.service) === null || t === void 0) && t.cannotBeStopped || (le.GlobalState.service = new sa.Azure(), le.GlobalState.service.start(e));\n }\n }, {\n key: \"stop\",\n value: function stop() {\n var e;\n return le.GlobalState.doubleClickDetector() ? !0 : (!((e = le.GlobalState.service) === null || e === void 0) && e.recognizing && le.GlobalState.service.stop(), !1);\n }\n }, {\n key: \"endCommandMode\",\n value: function endCommandMode() {\n le.GlobalState.service && na.CommandUtils.toggleCommandModeOff(le.GlobalState.service);\n }\n }]);\n}();\nvar Jt = ds[\"default\"] = st;\nvar ra = /*#__PURE__*/function () {\n function ra(e, t) {\n _classCallCheck(this, ra);\n this.silenceMS = 2e3, this.stop = !0, typeof t == \"boolean\" && t === !1 && (this.stop = !1), typeof e == \"number\" && (this.silenceMS = e);\n }\n return _createClass(ra, [{\n key: \"setSilenceTimeout\",\n value: function setSilenceTimeout(e, t) {\n var _this57 = this;\n this._silenceTimeout = setTimeout(function () {\n var i;\n (i = e.submit) == null || i.call(e), Jt.stop(), _this57.stop || setTimeout(t, Nt.MICROPHONE_RESET_TIMEOUT_MS);\n }, this.silenceMS);\n }\n }, {\n key: \"clearSilenceTimeout\",\n value: function clearSilenceTimeout() {\n this._silenceTimeout && clearTimeout(this._silenceTimeout);\n }\n }, {\n key: \"resetSilenceTimeout\",\n value: function resetSilenceTimeout(e, t) {\n this.clearSilenceTimeout(), this.setSilenceTimeout(e, t);\n }\n }, {\n key: \"onPause\",\n value: function onPause(e, t, i) {\n e ? this.resetSilenceTimeout(t, i) : this.clearSilenceTimeout();\n }\n }]);\n}();\nvar kt = /*#__PURE__*/function (_Pt) {\n function kt(e, t, i) {\n var _this58;\n _classCallCheck(this, kt);\n var n = _typeof(e.speechToText) == \"object\" ? e.speechToText : {};\n _this58 = _callSuper(this, kt, [n == null ? void 0 : n.button]);\n var _this58$processConfig = _this58.processConfiguration(t, e.speechToText),\n r = _this58$processConfig.serviceName,\n o = _this58$processConfig.processedConfig;\n if (_this58._addErrorMessage = i, r === \"webspeech\" && !Jt.isWebSpeechSupported()) _this58.changeToUnsupported();else {\n var a = !e.textInput || !e.textInput.disabled;\n _this58.elementRef.onclick = _this58.buttonClick.bind(_this58, t, a, r, o);\n }\n setTimeout(function () {\n _this58._validationHandler = e._validationHandler;\n });\n return _this58;\n }\n // prettier-ignore\n _inherits(kt, _Pt);\n return _createClass(kt, [{\n key: \"processConfiguration\",\n value: function processConfiguration(e, t) {\n var _i$displayInterimResu, _i$textColor, _i$translations, _i$commands, _i$events;\n var c;\n var i = _typeof(t) == \"object\" ? t : {},\n n = _typeof(i.webSpeech) == \"object\" ? i.webSpeech : {},\n r = i.azure || {},\n o = _objectSpread(_objectSpread({\n displayInterimResults: (_i$displayInterimResu = i.displayInterimResults) !== null && _i$displayInterimResu !== void 0 ? _i$displayInterimResu : void 0,\n textColor: (_i$textColor = i.textColor) !== null && _i$textColor !== void 0 ? _i$textColor : void 0,\n translations: (_i$translations = i.translations) !== null && _i$translations !== void 0 ? _i$translations : void 0,\n commands: (_i$commands = i.commands) !== null && _i$commands !== void 0 ? _i$commands : void 0,\n events: (_i$events = i.events) !== null && _i$events !== void 0 ? _i$events : void 0\n }, n), r),\n a = (c = i.commands) == null ? void 0 : c.submit;\n return a && (o.onPreResult = function (d) {\n return d.toLowerCase().includes(a) ? (setTimeout(function () {\n var h;\n return (h = e.submit) == null ? void 0 : h.call(e);\n }), Jt.endCommandMode(), {\n restart: !0,\n removeNewText: !0\n }) : null;\n }), i.submitAfterSilence && (this._silenceSubmit = new ra(i.submitAfterSilence, i.stopAfterSubmit)), {\n serviceName: kt.getServiceName(i),\n processedConfig: o\n };\n }\n }, {\n key: \"buttonClick\",\n value: function buttonClick(e, t, i, n) {\n var _this59 = this;\n var r = n == null ? void 0 : n.events;\n e.removeTextIfPlaceholder(), Jt.toggle(i, _objectSpread({\n insertInCursorLocation: !1,\n element: t ? e.inputElementRef : void 0,\n onError: function onError() {\n var o;\n _this59.onError(), (o = _this59._silenceSubmit) == null || o.clearSilenceTimeout();\n },\n onStart: function onStart() {\n var o;\n _this59.changeToActive(), (o = r == null ? void 0 : r.onStart) == null || o.call(r);\n },\n onStop: function onStop() {\n var o, a, l;\n (o = _this59._validationHandler) == null || o.call(_this59), (a = _this59._silenceSubmit) == null || a.clearSilenceTimeout(), _this59.changeToDefault(), (l = r == null ? void 0 : r.onStop) == null || l.call(r);\n },\n onPauseTrigger: function onPauseTrigger(o) {\n var a, l;\n (a = _this59._silenceSubmit) == null || a.onPause(o, e, _this59.elementRef.onclick), (l = r == null ? void 0 : r.onPauseTrigger) == null || l.call(r, o);\n },\n onPreResult: function onPreResult(o, a) {\n var l;\n (l = r == null ? void 0 : r.onPreResult) == null || l.call(r, o, a);\n },\n onResult: function onResult(o, a) {\n var l, c, d;\n a && ((l = _this59._validationHandler) == null || l.call(_this59)), (c = _this59._silenceSubmit) == null || c.resetSilenceTimeout(e, _this59.elementRef.onclick), (d = r == null ? void 0 : r.onResult) == null || d.call(r, o, a);\n },\n onCommandModeTrigger: function onCommandModeTrigger(o) {\n var a;\n _this59.onCommandModeTrigger(o), (a = r == null ? void 0 : r.onCommandModeTrigger) == null || a.call(r, o);\n }\n }, n));\n }\n }, {\n key: \"onCommandModeTrigger\",\n value: function onCommandModeTrigger(e) {\n e ? this.changeToCommandMode() : this.changeToActive();\n }\n }, {\n key: \"onError\",\n value: function onError() {\n this._addErrorMessage(\"speechToText\", \"speech input error\");\n }\n }], [{\n key: \"getServiceName\",\n value: function getServiceName(e) {\n return e.azure ? \"azure\" : \"webspeech\";\n }\n }, {\n key: \"toggleSpeechAfterSubmit\",\n value: function toggleSpeechAfterSubmit(e) {\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !0;\n e.click(), t || setTimeout(function () {\n return e.click();\n }, kt.MICROPHONE_RESET_TIMEOUT_MS);\n }\n }]);\n}(Pt);\nkt.MICROPHONE_RESET_TIMEOUT_MS = 300;\nvar Nt = kt;\nvar Te = /*#__PURE__*/function () {\n // prettier-ignore\n function Te(e, t, i, n) {\n var _this60 = this;\n _classCallCheck(this, Te);\n this._attachments = [], this._fileCountLimit = 99, this._acceptedFormat = \"\", t.maxNumberOfFiles && (this._fileCountLimit = t.maxNumberOfFiles), this._toggleContainerDisplay = i, this._fileAttachmentsContainerRef = n, t.acceptedFormats && (this._acceptedFormat = t.acceptedFormats), setTimeout(function () {\n _this60._validationHandler = e._validationHandler;\n });\n }\n return _createClass(Te, [{\n key: \"attemptAddFile\",\n value: function attemptAddFile(e, t) {\n return Te.isFileTypeValid(e, this._acceptedFormat) ? (this.addAttachmentBasedOnType(e, t, !0), !0) : !1;\n }\n }, {\n key: \"addAttachmentBasedOnType\",\n value: function addAttachmentBasedOnType(e, t, i) {\n var n = Te.getTypeFromBlob(e);\n if (n === \"image\") {\n var r = Te.createImageAttachment(t);\n this.addFileAttachment(e, \"image\", r, i);\n } else if (n === \"audio\") {\n var _r3 = Dt.createAudioAttachment(t);\n this.addFileAttachment(e, \"audio\", _r3, i);\n } else {\n var _r4 = Te.createAnyFileAttachment(e.name);\n this.addFileAttachment(e, \"any\", _r4, i);\n }\n }\n }, {\n key: \"addFileAttachment\",\n value: function addFileAttachment(e, t, i, n) {\n var a;\n var r = Te.createContainer(i);\n if (this._attachments.length >= this._fileCountLimit) {\n var l = this._attachments[this._attachments.length - 1].removeButton;\n l == null || l.click();\n var c = this._fileAttachmentsContainerRef.children;\n this._fileAttachmentsContainerRef.insertBefore(r, c[0]);\n } else this._fileAttachmentsContainerRef.appendChild(r);\n var o = {\n file: e,\n attachmentContainerElement: r,\n fileType: t\n };\n return n && (o.removeButton = this.createRemoveAttachmentButton(o), r.appendChild(o.removeButton)), this._toggleContainerDisplay(!0), this._attachments.push(o), this._fileAttachmentsContainerRef.scrollTop = this._fileAttachmentsContainerRef.scrollHeight, (a = this._validationHandler) == null || a.call(this), o;\n }\n }, {\n key: \"createRemoveAttachmentButton\",\n value: function createRemoveAttachmentButton(e) {\n var t = document.createElement(\"div\");\n t.classList.add(\"remove-file-attachment-button\"), t.onclick = this.removeAttachment.bind(this, e);\n var i = document.createElement(\"div\");\n return i.classList.add(\"x-icon\"), i.innerText = \"×\", t.appendChild(i), t;\n }\n }, {\n key: \"removeAttachment\",\n value: function removeAttachment(e) {\n var n;\n var t = this._attachments.findIndex(function (r) {\n return r === e;\n }),\n i = this._attachments[t].attachmentContainerElement;\n this._attachments.splice(t, 1), Dt.stopAttachmentPlayback(i), i.remove(), this._toggleContainerDisplay(!1), (n = this._validationHandler) == null || n.call(this);\n }\n }, {\n key: \"getFiles\",\n value: function getFiles() {\n return Array.from(this._attachments).map(function (e) {\n return {\n file: e.file,\n type: e.fileType\n };\n });\n }\n }, {\n key: \"removeAllAttachments\",\n value: function removeAllAttachments() {\n this._attachments.forEach(function (e) {\n setTimeout(function () {\n var t;\n return (t = e.removeButton) == null ? void 0 : t.click();\n });\n });\n }\n }], [{\n key: \"isFileTypeValid\",\n value: function isFileTypeValid(e, t) {\n if (t === \"\") return !0;\n var i = t.split(\",\");\n for (var n = 0; n < i.length; n++) {\n var r = i[n].trim();\n if (e.type === r) return !0;\n if (r.startsWith(\".\")) {\n var o = r.slice(1);\n if (e.name.endsWith(o)) return !0;\n } else {\n if (e.name.endsWith(r)) return !0;\n if (r.endsWith(\"/*\") && e.type.startsWith(r.slice(0, -2))) return !0;\n }\n }\n return !1;\n }\n }, {\n key: \"getTypeFromBlob\",\n value: function getTypeFromBlob(e) {\n var t = e.type;\n return t.startsWith(\"image\") ? \"image\" : t.startsWith(\"audio\") ? \"audio\" : \"any\";\n }\n }, {\n key: \"createImageAttachment\",\n value: function createImageAttachment(e) {\n var t = new Image();\n return t.src = e, t.classList.add(\"image-attachment\"), t;\n }\n }, {\n key: \"createAnyFileAttachment\",\n value: function createAnyFileAttachment(e) {\n var t = document.createElement(\"div\");\n t.classList.add(\"border-bound-attachment\"), at.IS_SAFARI && t.classList.add(\"border-bound-attachment-safari\");\n var i = document.createElement(\"div\");\n i.classList.add(\"any-file-attachment-text\");\n var n = document.createElement(\"div\");\n return n.classList.add(\"file-attachment-text-container\"), n.appendChild(i), i.textContent = e, t.appendChild(n), t;\n }\n }, {\n key: \"createContainer\",\n value: function createContainer(e) {\n var t = document.createElement(\"div\");\n return t.classList.add(\"file-attachment\"), t.appendChild(e), t;\n }\n }]);\n}();\nvar oa = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 32 32\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <title>play</title>\\n <path d=\\\"M5.92 24.096q0 1.088 0.928 1.728 0.512 0.288 1.088 0.288 0.448 0 0.896-0.224l16.16-8.064q0.48-0.256 0.8-0.736t0.288-1.088-0.288-1.056-0.8-0.736l-16.16-8.064q-0.448-0.224-0.896-0.224-0.544 0-1.088 0.288-0.928 0.608-0.928 1.728v16.16z\\\"></path>\\n</svg>\",\n Yn = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 32 32\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<title>stop</title>\\n<path d=\\\"M5.92 24.096q0 0.832 0.576 1.408t1.44 0.608h16.128q0.832 0 1.44-0.608t0.576-1.408v-16.16q0-0.832-0.576-1.44t-1.44-0.576h-16.128q-0.832 0-1.44 0.576t-0.576 1.44v16.16z\\\"></path>\\n</svg>\",\n _e = /*#__PURE__*/function (_Te) {\n // prettier-ignore\n function _e(e, t, i, n) {\n _classCallCheck(this, _e);\n return _callSuper(this, _e, [e, t, i, n]);\n }\n _inherits(_e, _Te);\n return _createClass(_e, [{\n key: \"createTimer\",\n value: function createTimer(e, t) {\n var _this61 = this;\n var i = 0;\n var n = t !== void 0 && t < _e.TIMER_LIMIT_S ? t : _e.TIMER_LIMIT_S;\n return setInterval(function () {\n var a;\n i += 1, i === n && ((a = _this61.stopPlaceholderCallback) == null || a.call(_this61), _this61.clearTimer()), i === 600 && e.classList.add(\"audio-placeholder-text-4-digits\");\n var r = Math.floor(i / 60),\n o = (i % 60).toString().padStart(2, \"0\");\n e.textContent = \"\".concat(r, \":\").concat(o);\n }, 1e3);\n }\n }, {\n key: \"createPlaceholderAudioAttachment\",\n value: function createPlaceholderAudioAttachment(e) {\n var t = _e.createAudioContainer(),\n i = document.createElement(\"div\");\n i.classList.add(\"audio-placeholder-text-3-digits\");\n var n = document.createElement(\"div\");\n n.classList.add(\"file-attachment-text-container\", \"audio-placeholder-text-3-digits-container\"), n.appendChild(i);\n var r = ie.createSVGElement(Yn);\n return r.classList.add(\"attachment-icon\", \"stop-icon\", \"not-removable-attachment-icon\"), i.textContent = \"0:00\", this._activePlaceholderTimer = this.createTimer(i, e), t.appendChild(n), this.addPlaceholderAudioAttachmentEvents(t, r, n), t;\n }\n }, {\n key: \"addPlaceholderAudioAttachmentEvents\",\n value: function addPlaceholderAudioAttachmentEvents(e, t, i) {\n var _this62 = this;\n var n = function n() {\n return e.replaceChildren(t);\n };\n e.addEventListener(\"mouseenter\", n);\n var r = function r() {\n return e.replaceChildren(i);\n };\n e.addEventListener(\"mouseleave\", r);\n var o = function o() {\n var a;\n return (a = _this62.stopPlaceholderCallback) == null ? void 0 : a.call(_this62);\n };\n e.addEventListener(\"click\", o);\n }\n }, {\n key: \"addPlaceholderAttachment\",\n value: function addPlaceholderAttachment(e, t) {\n var i = this.createPlaceholderAudioAttachment(t);\n this._activePlaceholderAttachment = this.addFileAttachment(new File([], \"\"), \"audio\", i, !1), this.stopPlaceholderCallback = e;\n }\n // prettier-ignore\n }, {\n key: \"completePlaceholderAttachment\",\n value: function completePlaceholderAttachment(e, t) {\n var i = this._activePlaceholderAttachment;\n i && (i.file = e, _e.addAudioElements(i.attachmentContainerElement.children[0], t), i.removeButton = this.createRemoveAttachmentButton(i), i.attachmentContainerElement.appendChild(i.removeButton), this._activePlaceholderAttachment = void 0, this.clearTimer());\n }\n }, {\n key: \"removePlaceholderAttachment\",\n value: function removePlaceholderAttachment() {\n this._activePlaceholderAttachment && (this.removeAttachment(this._activePlaceholderAttachment), this._activePlaceholderAttachment = void 0, this.clearTimer());\n }\n }, {\n key: \"clearTimer\",\n value: function clearTimer() {\n this._activePlaceholderTimer !== void 0 && (clearInterval(this._activePlaceholderTimer), this._activePlaceholderTimer = void 0, this.stopPlaceholderCallback = void 0);\n }\n }], [{\n key: \"createAudioContainer\",\n value: function createAudioContainer() {\n var e = document.createElement(\"div\");\n return e.classList.add(\"border-bound-attachment\", \"audio-attachment-icon-container\"), at.IS_SAFARI && e.classList.add(\"border-bound-attachment-safari\"), e;\n }\n }, {\n key: \"addAudioElements\",\n value: function addAudioElements(e, t) {\n var i = e.parentElement ? q.cloneElement(e) : e,\n n = document.createElement(\"audio\");\n n.src = t;\n var r = ie.createSVGElement(oa);\n r.classList.add(\"attachment-icon\", \"play-icon\");\n var o = ie.createSVGElement(Yn);\n o.classList.add(\"attachment-icon\", \"stop-icon\"), i.replaceChildren(r), n.onplay = function () {\n i.replaceChildren(o);\n }, n.onpause = function () {\n i.replaceChildren(r), n.currentTime = 0;\n }, n.onended = function () {\n i.replaceChildren(r);\n }, i.onclick = function () {\n n.paused ? n.play() : n.pause();\n };\n }\n }, {\n key: \"createAudioAttachment\",\n value: function createAudioAttachment(e) {\n var t = _e.createAudioContainer();\n return _e.addAudioElements(t, e), t;\n }\n }, {\n key: \"stopAttachmentPlayback\",\n value: function stopAttachmentPlayback(e) {\n var t, i, n;\n (n = (i = (t = e.children[0]) == null ? void 0 : t.children) == null ? void 0 : i[0]) != null && n.classList.contains(\"stop-icon\") && e.children[0].click();\n }\n }]);\n }(Te);\n_e.TIMER_LIMIT_S = 5999;\nvar Dt = _e;\nvar aa = /*#__PURE__*/function () {\n function aa() {\n _classCallCheck(this, aa);\n }\n return _createClass(aa, null, [{\n key: \"create\",\n value:\n // prettier-ignore\n function create(e, t, i, n, r) {\n return r === \"audio\" ? new Dt(e, t, i, n) : new Te(e, t, i, n);\n }\n }]);\n}();\nvar Vt = /*#__PURE__*/function () {\n function Vt(e, t, i) {\n _classCallCheck(this, Vt);\n this._fileAttachmentsTypes = [], this.elementRef = this.createAttachmentContainer();\n var n = _typeof(i) == \"object\" && !!i.displayFileAttachmentContainer;\n this.toggleContainerDisplay(n), e.appendChild(this.elementRef), t && Object.assign(this.elementRef.style, t);\n }\n // prettier-ignore\n return _createClass(Vt, [{\n key: \"addType\",\n value: function addType(e, t, i) {\n var n = aa.create(e, t, this.toggleContainerDisplay.bind(this), this.elementRef, i);\n return this._fileAttachmentsTypes.push(n), n;\n }\n }, {\n key: \"createAttachmentContainer\",\n value: function createAttachmentContainer() {\n var e = document.createElement(\"div\");\n return e.id = \"file-attachment-container\", e;\n }\n }, {\n key: \"toggleContainerDisplay\",\n value: function toggleContainerDisplay(e) {\n e ? this.elementRef.style.display = \"block\" : this.elementRef.children.length === 0 && (this.elementRef.style.display = \"none\");\n }\n }, {\n key: \"getAllFileData\",\n value: function getAllFileData() {\n var e = this._fileAttachmentsTypes.map(function (t) {\n return t.getFiles();\n }).flat();\n return e.length > 0 ? e : void 0;\n }\n }, {\n key: \"completePlaceholders\",\n value: function () {\n var _completePlaceholders = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee117() {\n return _regeneratorRuntime().wrap(function _callee117$(_context117) {\n while (1) switch (_context117.prev = _context117.next) {\n case 0:\n _context117.next = 2;\n return Promise.all(this._fileAttachmentsTypes.map( /*#__PURE__*/function () {\n var _ref18 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee116(e) {\n var t;\n return _regeneratorRuntime().wrap(function _callee116$(_context116) {\n while (1) switch (_context116.prev = _context116.next) {\n case 0:\n return _context116.abrupt(\"return\", (t = e.stopPlaceholderCallback) == null ? void 0 : t.call(e));\n case 1:\n case \"end\":\n return _context116.stop();\n }\n }, _callee116);\n }));\n return function (_x207) {\n return _ref18.apply(this, arguments);\n };\n }()));\n case 2:\n case \"end\":\n return _context117.stop();\n }\n }, _callee117, this);\n }));\n function completePlaceholders() {\n return _completePlaceholders.apply(this, arguments);\n }\n return completePlaceholders;\n }()\n }, {\n key: \"addFilesToAnyType\",\n value: function addFilesToAnyType(e) {\n Vt.addFilesToType(e, this._fileAttachmentsTypes);\n }\n }, {\n key: \"removeAllFiles\",\n value: function removeAllFiles() {\n this._fileAttachmentsTypes.forEach(function (e) {\n return e.removeAllAttachments();\n }), this.elementRef.replaceChildren(), this.toggleContainerDisplay(!1);\n }\n }, {\n key: \"getNumberOfTypes\",\n value: function getNumberOfTypes() {\n return this._fileAttachmentsTypes.length;\n }\n }], [{\n key: \"addFilesToType\",\n value: function addFilesToType(e, t) {\n e.forEach(function (i) {\n var n = new FileReader();\n n.readAsDataURL(i), n.onload = function (r) {\n for (var o = 0; o < t.length && !t[o].attemptAddFile(i, r.target.result); o += 1);\n };\n });\n }\n }]);\n}();\nvar ue = /*#__PURE__*/function () {\n function ue(e, t, i) {\n _classCallCheck(this, ue);\n this._isOpen = !1, this._contentRef = ue.createModalContent(t, i == null ? void 0 : i.backgroundColor), this._buttonPanel = ue.createButtonPanel(i == null ? void 0 : i.backgroundColor), this._elementRef = ue.createContainer(this._contentRef, i), this._elementRef.appendChild(this._buttonPanel), e.appendChild(this._elementRef), this._backgroundPanelRef = ue.createDarkBackgroundPanel(), e.appendChild(this._backgroundPanelRef), this.addWindowEvents(e);\n }\n return _createClass(ue, [{\n key: \"isOpen\",\n value: function isOpen() {\n return this._isOpen;\n }\n }, {\n key: \"addButtons\",\n value: function addButtons() {\n var _this63 = this;\n for (var _len2 = arguments.length, e = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n e[_key2] = arguments[_key2];\n }\n e.forEach(function (t) {\n return _this63._buttonPanel.appendChild(t);\n });\n }\n }, {\n key: \"close\",\n value: function close() {\n var _this64 = this;\n this._elementRef.classList.remove(\"show-modal\"), this._elementRef.classList.add(\"hide-modal\"), this._backgroundPanelRef.classList.remove(\"show-modal-background\"), this._backgroundPanelRef.classList.add(\"hide-modal-background\"), this._isOpen = !1, setTimeout(function () {\n _this64._elementRef.style.display = \"none\", _this64._backgroundPanelRef.style.display = \"none\";\n }, ue.MODAL_CLOSE_TIMEOUT_MS);\n }\n }, {\n key: \"displayModalElements\",\n value: function displayModalElements() {\n this._elementRef.style.display = \"flex\", this._elementRef.classList.remove(\"hide-modal\"), this._elementRef.classList.add(\"show-modal\"), this._backgroundPanelRef.style.display = \"block\", this._backgroundPanelRef.classList.remove(\"hide-modal-background\"), this._backgroundPanelRef.classList.add(\"show-modal-background\"), this._isOpen = !0;\n }\n }, {\n key: \"openTextModal\",\n value: function openTextModal(e) {\n this._contentRef.innerHTML = e, this.displayModalElements();\n }\n }, {\n key: \"addCloseButton\",\n value: function addCloseButton(e, t, i) {\n var _this65 = this;\n var n = t ? ue.createSVGButton(e) : ue.createTextButton(e);\n return this.addButtons(n), n.onclick = function () {\n _this65.close(), setTimeout(function () {\n i == null || i();\n }, 140);\n }, n;\n }\n }, {\n key: \"addWindowEvents\",\n value: function addWindowEvents(e) {\n this.keyDownEvent = this.windowKeyDown.bind(this, e), window.addEventListener(\"keydown\", this.keyDownEvent);\n }\n }, {\n key: \"windowKeyDown\",\n value: function windowKeyDown(e, t) {\n var i, n;\n !e.isConnected && this.keyDownEvent ? window.removeEventListener(\"keydown\", this.keyDownEvent) : this._isOpen && (t.key === P.ESCAPE ? (this.close(), (i = this.extensionCloseCallback) == null || i.call(this)) : t.key === P.ENTER && (this.close(), (n = this.extensionCloseCallback) == null || n.call(this)));\n }\n }], [{\n key: \"createContainer\",\n value: function createContainer(e, t) {\n var i = document.createElement(\"div\");\n return i.classList.add(\"modal\"), i.appendChild(e), t && delete t.backgroundColor, Object.assign(i.style, t), i;\n }\n }, {\n key: \"createModalContent\",\n value: function createModalContent(e, t) {\n var _i$classList;\n var i = document.createElement(\"div\");\n return (_i$classList = i.classList).add.apply(_i$classList, _toConsumableArray(e)), t && (i.style.backgroundColor = t), document.createElement(\"div\").appendChild(i), i;\n }\n }, {\n key: \"createButtonPanel\",\n value: function createButtonPanel(e) {\n var t = document.createElement(\"div\");\n return t.classList.add(\"modal-button-panel\"), e && (t.style.backgroundColor = e), t;\n }\n }, {\n key: \"createDarkBackgroundPanel\",\n value: function createDarkBackgroundPanel() {\n var e = document.createElement(\"div\");\n return e.id = \"modal-background-panel\", e;\n }\n }, {\n key: \"createTextButton\",\n value: function createTextButton(e) {\n var t = document.createElement(\"div\");\n return t.classList.add(\"modal-button\"), t.textContent = e, t;\n }\n }, {\n key: \"createSVGButton\",\n value: function createSVGButton(e) {\n var t = document.createElement(\"div\");\n t.classList.add(\"modal-button\", \"modal-svg-button\");\n var i = ie.createSVGElement(e);\n return i.classList.add(\"modal-svg-button-icon\"), t.appendChild(i), t;\n }\n }, {\n key: \"createTextModalFunc\",\n value: function createTextModalFunc(e, t, i) {\n var n;\n if (_typeof(t) == \"object\" && (n = t.files) != null && n.infoModal) {\n var r = new ue(e, [\"modal-content\"], t.files.infoModal.containerStyle);\n return r.addCloseButton(\"OK\", !1, i), r.openTextModal.bind(r, t.infoModalTextMarkUp || \"\");\n }\n }\n }]);\n}();\nue.MODAL_CLOSE_TIMEOUT_MS = 190;\nvar Ve = ue;\nvar St = /*#__PURE__*/function (_jt3) {\n // prettier-ignore\n function St(e, t, i, n, r, o) {\n var _this66;\n _classCallCheck(this, St);\n var h, u, f, m, p, y, x, j, V;\n var a = (h = i == null ? void 0 : i.button) == null ? void 0 : h.position,\n l = ((m = (f = (u = i == null ? void 0 : i.button) == null ? void 0 : u.styles) == null ? void 0 : f.text) == null ? void 0 : m.content) || o;\n _this66 = _callSuper(this, St, [St.createButtonElement(), a, i.button, l]);\n var c = a === \"dropup-menu\",\n d = _this66.createInnerElements(n, r, _this66._customStyles, c);\n _this66._inputElement = St.createInputElement((p = i == null ? void 0 : i.files) == null ? void 0 : p.acceptedFormats), _this66.addClickEvent(e, i), _this66.elementRef.replaceChildren(d.styles), _this66.reapplyStateStyle(\"styles\"), _this66._fileAttachmentsType = t, _this66._openModalOnce = ((x = (y = i.files) == null ? void 0 : y.infoModal) == null ? void 0 : x.openModalOnce) === !1 || (V = (j = i.files) == null ? void 0 : j.infoModal) == null ? void 0 : V.openModalOnce;\n return _this66;\n }\n _inherits(St, _jt3);\n return _createClass(St, [{\n key: \"createInnerElements\",\n value: function createInnerElements(e, t, i) {\n var n = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : !1;\n var r = St.createSVGIconElement(e, t);\n return {\n styles: K.createInnerElement(this.elementRef, r, \"styles\", i, n)\n };\n }\n }, {\n key: \"triggerImportPrompt\",\n value: function triggerImportPrompt(e) {\n e.onchange = this[\"import\"].bind(this, e), e.click();\n }\n }, {\n key: \"import\",\n value: function _import(e) {\n Vt.addFilesToType(Array.from(e.files || []), [this._fileAttachmentsType]), e.value = \"\";\n }\n }, {\n key: \"addClickEvent\",\n value: function addClickEvent(e, t) {\n var i = this.triggerImportPrompt.bind(this, this._inputElement),\n n = Ve.createTextModalFunc(e, t, i);\n this.elementRef.onclick = this.click.bind(this, n);\n }\n }, {\n key: \"click\",\n value: function click(e) {\n e && (this._openModalOnce === void 0 || this._openModalOnce === !0) ? (e(), this._openModalOnce === !0 && (this._openModalOnce = !1)) : this.triggerImportPrompt(this._inputElement);\n }\n }], [{\n key: \"createInputElement\",\n value: function createInputElement(e) {\n var t = document.createElement(\"input\");\n return t.type = \"file\", t.accept = e || \"\", t.hidden = !0, t.multiple = !0, t;\n }\n }, {\n key: \"createButtonElement\",\n value: function createButtonElement() {\n var e = document.createElement(\"div\");\n return e.classList.add(\"input-button\", \"upload-file-button\"), e;\n }\n }, {\n key: \"createSVGIconElement\",\n value: function createSVGIconElement(e, t) {\n var i = ie.createSVGElement(t);\n return i.id = e, i;\n }\n }]);\n}(jt);\nvar Se = /*#__PURE__*/function () {\n function Se() {\n _classCallCheck(this, Se);\n }\n return _createClass(Se, null, [{\n key: \"create\",\n value: function create(e, t, i) {\n var n = Se.createElement(i);\n Se.addEvents(n, e, t), e.appendChild(n);\n }\n }, {\n key: \"createElement\",\n value: function createElement(e) {\n var t = document.createElement(\"div\");\n return t.id = \"drag-and-drop\", _typeof(e) == \"object\" && Object.assign(t.style, e), t;\n }\n }, {\n key: \"addEvents\",\n value: function addEvents(e, t, i) {\n t.ondragenter = function (n) {\n n.preventDefault(), Se.display(e);\n }, e.ondragleave = function (n) {\n n.preventDefault(), Se.hide(e);\n }, e.ondragover = function (n) {\n n.preventDefault();\n }, e.ondrop = function (n) {\n n.preventDefault(), Se.uploadFile(i, n), Se.hide(e);\n };\n }\n }, {\n key: \"uploadFile\",\n value: function uploadFile(e, t) {\n var n;\n var i = (n = t.dataTransfer) == null ? void 0 : n.files;\n i && e.addFilesToAnyType(Array.from(i));\n }\n }, {\n key: \"display\",\n value: function display(e) {\n e.style.display = \"block\";\n }\n }, {\n key: \"hide\",\n value: function hide(e) {\n e.style.display = \"none\";\n }\n }, {\n key: \"isEnabled\",\n value: function isEnabled(e, t) {\n return t !== void 0 && t === !1 ? !1 : !!t || e.getNumberOfTypes() > 0;\n }\n }]);\n}();\nvar Be = /*#__PURE__*/function () {\n function Be() {\n _classCallCheck(this, Be);\n }\n return _createClass(Be, null, [{\n key: \"validate\",\n value:\n // prettier-ignore\n function validate(e, t, i, n, r) {\n var o = e(i, n, r);\n return o ? t.changeToSubmitIcon() : t.changeToDisabledIcon(), o;\n }\n // prettier-ignore\n }, {\n key: \"useValidationFunc\",\n value: function () {\n var _useValidationFunc = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee118(e, t, i, n) {\n var r, o, a, l;\n return _regeneratorRuntime().wrap(function _callee118$(_context118) {\n while (1) switch (_context118.prev = _context118.next) {\n case 0:\n r = t.inputElementRef, o = r.classList.contains($e.PLACEHOLDER_TEXT_CLASS) ? \"\" : r.textContent;\n _context118.next = 3;\n return i.completePlaceholders();\n case 3:\n a = i.getAllFileData(), l = a == null ? void 0 : a.map(function (c) {\n return c.file;\n });\n return _context118.abrupt(\"return\", Be.validate(e, n, o, l));\n case 5:\n case \"end\":\n return _context118.stop();\n }\n }, _callee118);\n }));\n function useValidationFunc(_x208, _x209, _x210, _x211) {\n return _useValidationFunc.apply(this, arguments);\n }\n return useValidationFunc;\n }() // prettier-ignore\n }, {\n key: \"useValidationFuncProgrammatic\",\n value: function () {\n var _useValidationFuncProgrammatic = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee119(e, t, i) {\n var r, n;\n return _regeneratorRuntime().wrap(function _callee119$(_context119) {\n while (1) switch (_context119.prev = _context119.next) {\n case 0:\n n = (r = t.files) == null ? void 0 : r.map(function (o) {\n return o.file;\n });\n return _context119.abrupt(\"return\", Be.validate(e, i, t.text, n, !0));\n case 2:\n case \"end\":\n return _context119.stop();\n }\n }, _callee119);\n }));\n function useValidationFuncProgrammatic(_x212, _x213, _x214) {\n return _useValidationFuncProgrammatic.apply(this, arguments);\n }\n return useValidationFuncProgrammatic;\n }()\n }, {\n key: \"validateWebsocket\",\n value: function validateWebsocket(e, t) {\n return e.websocket && !B.canSendMessage(e.websocket) ? (t.changeToDisabledIcon(), !1) : !0;\n }\n // prettier-ignore\n }, {\n key: \"attach\",\n value: function attach(e, t, i, n, r) {\n var o = e.validateInput || te.processValidateInput(e);\n e._validationHandler = /*#__PURE__*/function () {\n var _ref19 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee120(a) {\n var l;\n return _regeneratorRuntime().wrap(function _callee120$(_context120) {\n while (1) switch (_context120.prev = _context120.next) {\n case 0:\n if (!(r.status.loadingActive || r.status.requestInProgress || t.isSubmitProgrammaticallyDisabled === !0 || !Be.validateWebsocket(t, r))) {\n _context120.next = 2;\n break;\n }\n return _context120.abrupt(\"return\", !1);\n case 2:\n l = o || t.canSendMessage;\n return _context120.abrupt(\"return\", l ? a ? Be.useValidationFuncProgrammatic(l, a, r) : Be.useValidationFunc(l, i, n, r) : null);\n case 4:\n case \"end\":\n return _context120.stop();\n }\n }, _callee120);\n }));\n return function (_x215) {\n return _ref19.apply(this, arguments);\n };\n }();\n }\n }]);\n}();\nvar hs = /*#__PURE__*/function () {\n function hs() {\n _classCallCheck(this, hs);\n }\n return _createClass(hs, null, [{\n key: \"getFileName\",\n value: function getFileName(e, t) {\n var i = /* @__PURE__ */new Date(),\n n = String(i.getHours()).padStart(2, \"0\"),\n r = String(i.getMinutes()).padStart(2, \"0\"),\n o = String(i.getSeconds()).padStart(2, \"0\");\n return \"\".concat(e, \"-\").concat(n, \"-\").concat(r, \"-\").concat(o, \".\").concat(t);\n }\n }]);\n}();\nvar la = /*#__PURE__*/function (_Pt2) {\n function la(e, t) {\n var _this67;\n _classCallCheck(this, la);\n var i, n;\n _this67 = _callSuper(this, la, [t.button]), _this67._waitingForBrowserApproval = !1, _this67._audioType = e, _this67._extension = ((i = t.files) == null ? void 0 : i.format) || \"mp3\", _this67._maxDurationSeconds = (n = t.files) == null ? void 0 : n.maxDurationSeconds, _this67.elementRef.onclick = _this67.buttonClick.bind(_assertThisInitialized(_this67));\n return _this67;\n }\n _inherits(la, _Pt2);\n return _createClass(la, [{\n key: \"buttonClick\",\n value: function buttonClick() {\n this._waitingForBrowserApproval || (this.isActive ? this.stop() : (this._waitingForBrowserApproval = !0, this.record()));\n }\n }, {\n key: \"stop\",\n value: function stop() {\n var _this68 = this;\n return new Promise(function (e) {\n var t, i;\n _this68.changeToDefault(), (t = _this68._mediaRecorder) == null || t.stop(), (i = _this68._mediaStream) == null || i.getTracks().forEach(function (n) {\n return n.stop();\n }), setTimeout(function () {\n e();\n }, 10);\n });\n }\n }, {\n key: \"record\",\n value: function record() {\n var _this69 = this;\n navigator.mediaDevices.getUserMedia({\n audio: !0\n }).then(function (e) {\n _this69.changeToActive(), _this69._mediaRecorder = new MediaRecorder(e), _this69._audioType.addPlaceholderAttachment(_this69.stop.bind(_this69), _this69._maxDurationSeconds), _this69._mediaStream = e, _this69._mediaRecorder.addEventListener(\"dataavailable\", function (t) {\n _this69.createFile(t);\n }), _this69._mediaRecorder.start();\n })[\"catch\"](function (e) {\n console.error(e), _this69.stop();\n })[\"finally\"](function () {\n _this69._waitingForBrowserApproval = !1;\n });\n }\n }, {\n key: \"createFile\",\n value: function createFile(e) {\n var _this70 = this;\n var t = new Blob([e.data], {\n type: \"audio/\".concat(this._extension)\n }),\n i = hs.getFileName(this._newFilePrefix || \"audio\", this._extension),\n n = new File([t], i, {\n type: t.type\n }),\n r = new FileReader();\n r.readAsDataURL(n), r.onload = function (o) {\n _this70._audioType.completePlaceholderAttachment(n, o.target.result);\n };\n }\n }]);\n}(Pt);\nvar ca = \"<?xml version=\\\"1.0\\\" standalone=\\\"no\\\"?>\\n<!DOCTYPE svg PUBLIC \\\"-//W3C//DTD SVG 1.0//EN\\\" \\\"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd\\\">\\n<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" stroke=\\\"currentColor\\\" fill=\\\"none\\\" stroke-width=\\\"1\\\" viewBox=\\\"0 0 24 24\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\">\\n <line x1=\\\"22\\\" y1=\\\"2\\\" x2=\\\"11\\\" y2=\\\"14\\\"></line>\\n <polygon points=\\\"22 2 15 22 11 14 2 10 22 2\\\"></polygon>\\n</svg>\\n\";\nvar $ = /*#__PURE__*/function () {\n function $() {\n _classCallCheck(this, $);\n }\n return _createClass($, null, [{\n key: \"setPropertyValueIfDoesNotExist\",\n value: function setPropertyValueIfDoesNotExist(e, t, i) {\n var _e$n, _e$n2;\n var n = t[0];\n t.length === 1 ? (_e$n = e[n]) !== null && _e$n !== void 0 ? _e$n : e[n] = i : ((_e$n2 = e[n]) !== null && _e$n2 !== void 0 ? _e$n2 : e[n] = {}, t.shift(), $.setPropertyValueIfDoesNotExist(e[n], t, i));\n }\n }, {\n key: \"setPropertyValue\",\n value: function setPropertyValue(e, t, i) {\n var _e$n3;\n var n = t[0];\n t.length === 1 ? e[n] = i : ((_e$n3 = e[n]) !== null && _e$n3 !== void 0 ? _e$n3 : e[n] = {}, t.shift(), $.setPropertyValue(e[n], t, i));\n }\n }, {\n key: \"getObjectValue\",\n value: function getObjectValue(e, t) {\n var i = t[0],\n n = e[i];\n return n === void 0 || t.length === 1 ? n : $.getObjectValue(n, t.slice(1));\n }\n }, {\n key: \"overwritePropertyObjectFromAnother\",\n value: function overwritePropertyObjectFromAnother(e, t, i) {\n var n = $.getObjectValue(t, i);\n if (n) {\n var r = _objectSpread(_objectSpread({}, n), $.getObjectValue(e, i) || {});\n $.setPropertyValue(e, i, r);\n }\n }\n }]);\n}();\nvar Ge = /*#__PURE__*/function () {\n function Ge() {\n _classCallCheck(this, Ge);\n }\n return _createClass(Ge, null, [{\n key: \"resetSubmit\",\n value: function resetSubmit(e, t) {\n t ? e.unsetCustomStateStyles([\"loading\", \"submit\"]) : e.unsetCustomStateStyles([\"stop\", \"loading\", \"submit\"]), e.reapplyStateStyle(\"submit\");\n }\n }, {\n key: \"overwriteDefaultStyleWithSubmit\",\n value: function overwriteDefaultStyleWithSubmit(e, t) {\n if (!e.submit) return;\n var i = JSON.parse(JSON.stringify(e[t] || {}));\n $.overwritePropertyObjectFromAnother(i, e.submit, [\"container\", \"default\"]), $.overwritePropertyObjectFromAnother(i, e.submit, [\"text\", \"styles\", \"default\"]), $.overwritePropertyObjectFromAnother(i, e.submit, [\"svg\", \"styles\", \"default\"]), e[t] = i;\n }\n // prettier-ignore\n }, {\n key: \"setUpDisabledButton\",\n value: function setUpDisabledButton(e) {\n $.setPropertyValueIfDoesNotExist(e, [\"submit\", \"container\", \"default\", \"backgroundColor\"], \"\"), $.setPropertyValueIfDoesNotExist(e, [\"disabled\", \"container\", \"default\", \"backgroundColor\"], \"unset\"), $.setPropertyValueIfDoesNotExist(e.submit, [\"svg\", \"styles\", \"default\", \"filter\"], \"\"), $.setPropertyValueIfDoesNotExist(e.disabled, [\"svg\", \"styles\", \"default\", \"filter\"], \"brightness(0) saturate(100%) invert(70%) sepia(0%) saturate(5564%) hue-rotate(207deg) brightness(100%) contrast(97%)\"), Ge.overwriteDefaultStyleWithSubmit(e, \"disabled\");\n }\n }, {\n key: \"process\",\n value: function process(e) {\n var t = JSON.parse(JSON.stringify(e || {}));\n return Ge.overwriteDefaultStyleWithSubmit(t, \"loading\"), Ge.overwriteDefaultStyleWithSubmit(t, \"stop\"), e != null && e.alwaysEnabled || Ge.setUpDisabledButton(t), t;\n }\n }]);\n}();\nvar k = /*#__PURE__*/function (_jt4) {\n // prettier-ignore\n function k(e, t, i, n, r, o) {\n var _this71;\n _classCallCheck(this, k);\n var a = Ge.process(e.submitButtonStyles);\n _this71 = _callSuper(this, k, [k.createButtonContainerElement(), a == null ? void 0 : a.position, a]), _this71._isSVGLoadingIconOverriden = !1, _this71.status = {\n requestInProgress: !1,\n loadingActive: !1\n }, _this71._messages = i, _this71._inputElementRef = t, _this71._fileAttachments = r, _this71._innerElements = _this71.createInnerElements(), _this71._abortStream = new AbortController(), _this71._stopClicked = {\n listener: function listener() {}\n }, _this71._serviceIO = n, _this71._alwaysEnabled = !!(a != null && a.alwaysEnabled), e.disableSubmitButton = _this71.disableSubmitButton.bind(_assertThisInitialized(_this71), n), _this71.attemptOverwriteLoadingStyle(e), o.microphone && _this71.setUpSpeechToText(o.microphone.button, e.speechToText), setTimeout(function () {\n var l;\n _this71._validationHandler = e._validationHandler, _this71.assignHandlers(_this71._validationHandler), (l = _this71._validationHandler) == null || l.call(_assertThisInitialized(_this71));\n });\n return _this71;\n }\n _inherits(k, _jt4);\n return _createClass(k, [{\n key: \"createInnerElements\",\n value: function createInnerElements() {\n var _this$createCustomEle = this.createCustomElements(),\n e = _this$createCustomEle.submit,\n t = _this$createCustomEle.loading,\n i = _this$createCustomEle.stop,\n n = e || k.createSubmitIconElement();\n return {\n submit: n,\n loading: t || k.createLoadingIconElement(),\n stop: i || k.createStopIconElement(),\n disabled: this.createDisabledIconElement(n)\n };\n }\n }, {\n key: \"createCustomElements\",\n value: function createCustomElements() {\n var _this72 = this;\n var e = K.createSpecificStateElement(this.elementRef, \"submit\", this._customStyles),\n t = {\n loading: void 0,\n stop: void 0\n };\n return Object.keys(t).forEach(function (i) {\n var n = i,\n r = K.createCustomElement(n, _this72._customStyles);\n r && (t[n] = r);\n }), t.submit = e, t;\n }\n }, {\n key: \"createDisabledIconElement\",\n value: function createDisabledIconElement(e) {\n return K.createCustomElement(\"disabled\", this._customStyles) || e.cloneNode(!0);\n }\n // prettier-ignore\n }, {\n key: \"attemptOverwriteLoadingStyle\",\n value: function attemptOverwriteLoadingStyle(e) {\n var t, i, n, r, o, a, l, c, d;\n if (!((i = (t = this._customStyles) == null ? void 0 : t.submit) != null && i.svg || (o = (r = (n = this._customStyles) == null ? void 0 : n.loading) == null ? void 0 : r.svg) != null && o.content || (c = (l = (a = this._customStyles) == null ? void 0 : a.loading) == null ? void 0 : l.text) != null && c.content) && (e.displayLoadingBubble === void 0 || e.displayLoadingBubble === !0)) {\n var h = document.createElement(\"style\");\n h.textContent = \"\\n .loading-button > * {\\n filter: brightness(0) saturate(100%) invert(72%) sepia(0%) saturate(3044%) hue-rotate(322deg) brightness(100%)\\n contrast(96%) !important;\\n }\", (d = e.shadowRoot) == null || d.appendChild(h), this._isSVGLoadingIconOverriden = !0;\n }\n }\n }, {\n key: \"assignHandlers\",\n value: function assignHandlers(e) {\n this._serviceIO.completionsHandlers = {\n onFinish: this.resetSubmit.bind(this, e)\n }, this._serviceIO.streamHandlers = {\n onOpen: this.changeToStopIcon.bind(this),\n onClose: this.resetSubmit.bind(this, e),\n abortStream: this._abortStream,\n stopClicked: this._stopClicked\n };\n var t = this._serviceIO.stream;\n _typeof(t) == \"object\" && typeof t.simulation == \"number\" && (this._serviceIO.streamHandlers.simulationInterim = t.simulation);\n }\n }, {\n key: \"setUpSpeechToText\",\n value: function setUpSpeechToText(e, t) {\n this._microphoneButton = e, this._stopSTTAfterSubmit = _typeof(t) == \"object\" ? t.stopAfterSubmit : !1;\n }\n }, {\n key: \"resetSubmit\",\n value: function resetSubmit(e) {\n this.status.requestInProgress = !1, this.status.loadingActive = !1, e();\n }\n }, {\n key: \"submitFromInput\",\n value: function () {\n var _submitFromInput = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee121() {\n var e, t;\n return _regeneratorRuntime().wrap(function _callee121$(_context121) {\n while (1) switch (_context121.prev = _context121.next) {\n case 0:\n _context121.next = 2;\n return this._fileAttachments.completePlaceholders();\n case 2:\n e = this._fileAttachments.getAllFileData();\n if (this._inputElementRef.classList.contains($e.PLACEHOLDER_TEXT_CLASS)) this.attemptSubmit({\n text: \"\",\n files: e\n });else {\n t = this._inputElementRef.innerText.trim();\n this.attemptSubmit({\n text: t,\n files: e\n });\n }\n case 4:\n case \"end\":\n return _context121.stop();\n }\n }, _callee121, this);\n }));\n function submitFromInput() {\n return _submitFromInput.apply(this, arguments);\n }\n return submitFromInput;\n }()\n }, {\n key: \"programmaticSubmit\",\n value: function () {\n var _programmaticSubmit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee122(e) {\n var _this73 = this;\n var t;\n return _regeneratorRuntime().wrap(function _callee122$(_context122) {\n while (1) switch (_context122.prev = _context122.next) {\n case 0:\n typeof e == \"string\" && (e = te.processSubmitUserMessage(e));\n t = {\n text: e.text\n };\n e.files && (t.files = Array.from(e.files).map(function (i) {\n return {\n file: i,\n type: Te.getTypeFromBlob(i)\n };\n })), setTimeout(function () {\n return _this73.attemptSubmit(t, !0);\n });\n case 3:\n case \"end\":\n return _context122.stop();\n }\n }, _callee122);\n }));\n function programmaticSubmit(_x216) {\n return _programmaticSubmit.apply(this, arguments);\n }\n return programmaticSubmit;\n }() // TO-DO - should be disabled when loading history\n }, {\n key: \"attemptSubmit\",\n value: function () {\n var _attemptSubmit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee123(e) {\n var t,\n r,\n o,\n a,\n i,\n n,\n _args123 = arguments;\n return _regeneratorRuntime().wrap(function _callee123$(_context123) {\n while (1) switch (_context123.prev = _context123.next) {\n case 0:\n t = _args123.length > 1 && _args123[1] !== undefined ? _args123[1] : !1;\n _context123.next = 3;\n return (r = this._validationHandler) == null ? void 0 : r.call(this, t ? e : void 0);\n case 3:\n _context123.t0 = _context123.sent;\n _context123.t1 = !1;\n if (!(_context123.t0 === _context123.t1)) {\n _context123.next = 7;\n break;\n }\n return _context123.abrupt(\"return\");\n case 7:\n this.changeToLoadingIcon();\n _context123.next = 10;\n return this.addNewMessage(e);\n case 10:\n this._serviceIO.isWebModel() || this._messages.addLoadingMessage();\n $e.clear(this._inputElementRef);\n i = (o = e.files) == null ? void 0 : o.map(function (l) {\n return l.file;\n }), n = {\n text: e.text === \"\" ? void 0 : e.text,\n files: i\n };\n _context123.next = 15;\n return this._serviceIO.callAPI(n, this._messages);\n case 15:\n (a = this._fileAttachments) == null || a.removeAllFiles();\n case 16:\n case \"end\":\n return _context123.stop();\n }\n }, _callee123, this);\n }));\n function attemptSubmit(_x217) {\n return _attemptSubmit.apply(this, arguments);\n }\n return attemptSubmit;\n }()\n }, {\n key: \"addNewMessage\",\n value: function () {\n var _addNewMessage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee124(_ref20) {\n var e, t, i;\n return _regeneratorRuntime().wrap(function _callee124$(_context124) {\n while (1) switch (_context124.prev = _context124.next) {\n case 0:\n e = _ref20.text, t = _ref20.files;\n i = {\n role: b.USER_ROLE\n };\n e && (i.text = e);\n _context124.t0 = t;\n if (!_context124.t0) {\n _context124.next = 8;\n break;\n }\n _context124.next = 7;\n return this._messages.addMultipleFiles(t);\n case 7:\n i.files = _context124.sent;\n case 8:\n this._serviceIO.sessionId && (i._sessionId = this._serviceIO.sessionId);\n Object.keys(i).length > 0 && this._messages.addNewMessage(i);\n case 10:\n case \"end\":\n return _context124.stop();\n }\n }, _callee124, this);\n }));\n function addNewMessage(_x218) {\n return _addNewMessage.apply(this, arguments);\n }\n return addNewMessage;\n }()\n }, {\n key: \"stopStream\",\n value: function stopStream() {\n var e;\n this._abortStream.abort(), (e = this._stopClicked) == null || e.listener(), this._validationHandler && this.resetSubmit(this._validationHandler);\n }\n }, {\n key: \"changeToStopIcon\",\n value: function changeToStopIcon() {\n this._serviceIO.websocket || (this.elementRef.classList.remove(k.LOADING_CLASS, k.DISABLED_CLASS, k.SUBMIT_CLASS), this.elementRef.replaceChildren(this._innerElements.stop), this.reapplyStateStyle(\"stop\", [\"loading\", \"submit\"]), this.elementRef.onclick = this.stopStream.bind(this), this.status.loadingActive = !1);\n }\n }, {\n key: \"changeToLoadingIcon\",\n value: function changeToLoadingIcon() {\n this._serviceIO.websocket || (this._isSVGLoadingIconOverriden || this.elementRef.replaceChildren(this._innerElements.loading), this.elementRef.classList.remove(k.SUBMIT_CLASS, k.DISABLED_CLASS), this.elementRef.classList.add(k.LOADING_CLASS), this.reapplyStateStyle(\"loading\", [\"submit\"]), this.elementRef.onclick = function () {}, this.status.requestInProgress = !0, this.status.loadingActive = !0);\n }\n // called every time when user triggers an input via ValidationHandler - hence use class to check if not already present\n }, {\n key: \"changeToSubmitIcon\",\n value: function changeToSubmitIcon() {\n var _this74 = this;\n this.elementRef.classList.contains(k.SUBMIT_CLASS) || (this.elementRef.classList.remove(k.LOADING_CLASS, k.DISABLED_CLASS), this.elementRef.classList.add(k.SUBMIT_CLASS), this.elementRef.replaceChildren(this._innerElements.submit), Ge.resetSubmit(this, this.status.loadingActive), this.elementRef.onclick = function () {\n var e;\n _this74.submitFromInput(), (e = _this74._microphoneButton) != null && e.isActive && Nt.toggleSpeechAfterSubmit(_this74._microphoneButton.elementRef, !!_this74._stopSTTAfterSubmit);\n });\n }\n // called every time when user triggers an input via ValidationHandler - hence use class to check if not already present\n }, {\n key: \"changeToDisabledIcon\",\n value: function changeToDisabledIcon() {\n var e = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : !1;\n this._alwaysEnabled && !e ? this.changeToSubmitIcon() : this.elementRef.classList.contains(k.DISABLED_CLASS) || (this.elementRef.classList.remove(k.LOADING_CLASS, k.SUBMIT_CLASS), this.elementRef.classList.add(k.DISABLED_CLASS), this.elementRef.replaceChildren(this._innerElements.disabled), this.reapplyStateStyle(\"disabled\", [\"submit\"]), this.elementRef.onclick = function () {});\n }\n }, {\n key: \"disableSubmitButton\",\n value: function disableSubmitButton(e, t) {\n var i;\n e.isSubmitProgrammaticallyDisabled = t !== !1, !(this.status.requestInProgress || this.status.loadingActive) && (t === !1 ? (i = this._validationHandler) == null || i.call(this) : this.changeToDisabledIcon(!0));\n }\n }], [{\n key: \"createButtonContainerElement\",\n value: function createButtonContainerElement() {\n var e = document.createElement(\"div\");\n return e.classList.add(\"input-button\"), e;\n }\n }, {\n key: \"createSubmitIconElement\",\n value: function createSubmitIconElement() {\n var e = ie.createSVGElement(ca);\n return e.id = \"submit-icon\", e;\n }\n }, {\n key: \"createLoadingIconElement\",\n value: function createLoadingIconElement() {\n var e = document.createElement(\"div\");\n return e.classList.add(\"dots-jumping\"), e;\n }\n }, {\n key: \"createStopIconElement\",\n value: function createStopIconElement() {\n var e = document.createElement(\"div\");\n return e.id = \"stop-icon\", e;\n }\n }]);\n}(jt);\nk.SUBMIT_CLASS = \"submit-button\", k.LOADING_CLASS = \"loading-button\", k.DISABLED_CLASS = \"disabled-button\";\nvar ln = k;\nvar da = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 32 32\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M27.1 14.313V5.396L24.158 8.34c-2.33-2.325-5.033-3.503-8.11-3.503C9.902 4.837 4.901 9.847 4.899 16c.001 6.152 5.003 11.158 11.15 11.16 4.276 0 9.369-2.227 10.836-8.478l.028-.122h-3.23l-.022.068c-1.078 3.242-4.138 5.421-7.613 5.421a8 8 0 0 1-5.691-2.359A7.993 7.993 0 0 1 8 16.001c0-4.438 3.611-8.049 8.05-8.049 2.069 0 3.638.58 5.924 2.573l-3.792 3.789H27.1z\\\"/>\\n</svg>\\n\",\n ha = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 32 32\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <title>capture</title>\\n <path d=\\\"M0 16q0 3.264 1.28 6.208t3.392 5.12 5.12 3.424 6.208 1.248 6.208-1.248 5.12-3.424 3.392-5.12 1.28-6.208-1.28-6.208-3.392-5.12-5.088-3.392-6.24-1.28q-3.264 0-6.208 1.28t-5.12 3.392-3.392 5.12-1.28 6.208zM4 16q0-3.264 1.6-6.016t4.384-4.352 6.016-1.632 6.016 1.632 4.384 4.352 1.6 6.016-1.6 6.048-4.384 4.352-6.016 1.6-6.016-1.6-4.384-4.352-1.6-6.048z\\\"></path>\\n</svg>\\n\",\n ua = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 1024 1024\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z\\\"/>\\n</svg>\",\n fa = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M4.89163 13.2687L9.16582 17.5427L18.7085 8\\\" stroke=\\\"#000000\\\" stroke-width=\\\"2.5\\\" stroke-linecap=\\\"round\\\" stroke-linejoin=\\\"round\\\"/>\\n</svg>\";\nvar vn = /*#__PURE__*/function (_Ve) {\n // prettier-ignore\n function vn(e, t, i, n) {\n var _this75;\n _classCallCheck(this, vn);\n _this75 = _callSuper(this, vn, [e, [\"modal-content\", \"modal-camera-content\"], i]), _this75._stopped = !1, _this75._format = \"image/png\", _this75._canvas = document.createElement(\"canvas\"), _this75._canvas.classList.add(\"camera-modal-canvas\");\n var _this75$addButtonsAnd = _this75.addButtonsAndTheirEvents(t),\n r = _this75$addButtonsAnd.captureButton,\n o = _this75$addButtonsAnd.submitButton;\n _this75._captureButton = r, _this75._submitButton = o, _this75._captureIcon = _this75._captureButton.children[0], _this75._refreshIcon = ie.createSVGElement(da), _this75._refreshIcon.classList.add(\"modal-svg-button-icon\", \"modal-svg-refresh-icon\"), (n == null ? void 0 : n.format) === \"jpeg\" && (_this75._format = \"image/jpeg\"), n != null && n.dimensions && (_this75._dimensions = n.dimensions), _this75._contentRef.appendChild(_this75._canvas), _this75.extensionCloseCallback = _this75.stop;\n return _this75;\n }\n _inherits(vn, _Ve);\n return _createClass(vn, [{\n key: \"addButtonsAndTheirEvents\",\n value: function addButtonsAndTheirEvents(e) {\n var t = Ve.createSVGButton(ha);\n t.classList.add(\"modal-svg-camera-button\"), t.children[0].classList.add(\"modal-svg-camera-icon\");\n var i = this.addCloseButton(ua, !0);\n i.classList.add(\"modal-svg-close-button\"), i.children[0].classList.add(\"modal-svg-close-icon\");\n var n = Ve.createSVGButton(fa);\n return n.classList.add(\"modal-svg-submit-button\"), this.addButtons(t, n), this.addButtonEvents(t, i, n, e), {\n captureButton: t,\n submitButton: n\n };\n }\n // prettier-ignore\n }, {\n key: \"addButtonEvents\",\n value: function addButtonEvents(e, t, i, n) {\n var _this76 = this;\n e.onclick = function () {\n _this76.capture();\n }, t.addEventListener(\"click\", this.stop.bind(this)), i.onclick = function () {\n var r = _this76.getFile();\n r && Vt.addFilesToType([r], [n]), _this76.stop(), _this76.close();\n };\n }\n }, {\n key: \"stop\",\n value: function stop() {\n var _this77 = this;\n this._mediaStream && this._mediaStream.getTracks().forEach(function (e) {\n return e.stop();\n }), this._stopped = !0, setTimeout(function () {\n _this77._captureButton.replaceChildren(_this77._captureIcon), _this77._captureButton.classList.replace(\"modal-svg-refresh-button\", \"modal-svg-camera-button\");\n var e = _this77._canvas.getContext(\"2d\");\n e == null || e.clearRect(0, 0, _this77._canvas.width, _this77._canvas.height);\n }, Ve.MODAL_CLOSE_TIMEOUT_MS);\n }\n }, {\n key: \"start\",\n value: function start() {\n var _this78 = this;\n this._dataURL = void 0, this._submitButton.classList.add(\"modal-svg-submit-disabled\"), this._stopped = !1, navigator.mediaDevices.getUserMedia({\n video: this._dimensions || !0\n }).then(function (e) {\n if (_this78._mediaStream = e, !_this78.isOpen()) return _this78.stop();\n var t = document.createElement(\"video\");\n t.srcObject = e, t.play(), requestAnimationFrame(_this78.updateCanvas.bind(_this78, t, _this78._canvas));\n })[\"catch\"](function (e) {\n console.error(e), _this78.stop(), _this78.close();\n });\n }\n }, {\n key: \"capture\",\n value: function capture() {\n this._dataURL ? (this._captureButton.replaceChildren(this._captureIcon), this._captureButton.classList.replace(\"modal-svg-refresh-button\", \"modal-svg-camera-button\"), this._submitButton.classList.add(\"modal-svg-submit-disabled\"), this._dataURL = void 0) : (this._captureButton.replaceChildren(this._refreshIcon), this._captureButton.classList.replace(\"modal-svg-camera-button\", \"modal-svg-refresh-button\"), this._submitButton.classList.remove(\"modal-svg-submit-disabled\"), this._dataURL = this._canvas.toDataURL());\n }\n }, {\n key: \"getFile\",\n value: function getFile() {\n if (this._dataURL) {\n var _e4 = atob(this._dataURL.split(\",\")[1]),\n t = new Array(_e4.length);\n for (var a = 0; a < _e4.length; a++) t[a] = _e4.charCodeAt(a);\n var _i18 = new Uint8Array(t),\n n = new Blob([_i18], {\n type: this._format\n }),\n r = this._format === \"image/jpeg\" ? \"jpeg\" : \"png\",\n o = hs.getFileName(this._newFilePrefix || \"photo\", r);\n return new File([n], o, {\n type: n.type\n });\n }\n }\n }, {\n key: \"updateCanvas\",\n value: function updateCanvas(e, t) {\n if (!this._stopped) {\n if (!this._dataURL) {\n t.width = e.videoWidth, t.height = e.videoHeight;\n var _i19 = t.getContext(\"2d\");\n _i19 == null || _i19.drawImage(e, 0, 0, t.width, t.height);\n }\n requestAnimationFrame(this.updateCanvas.bind(this, e, t));\n }\n }\n }, {\n key: \"openCameraModal\",\n value: function openCameraModal(e) {\n this.displayModalElements(), e.start();\n }\n // prettier-ignore\n }], [{\n key: \"createCameraModalFunc\",\n value: function createCameraModalFunc(e, t, i, n) {\n var r = new vn(e, t, i, n);\n return r.openCameraModal.bind(r, r);\n }\n }]);\n}(Ve);\nvar pa = \"<?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\n<svg viewBox=\\\"0 0 32 32\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M29 7h-4.599l-2.401-4h-12l-2.4 4h-4.6c-1 0-3 1-3 2.969v16.031c0 1.657 1.5 3 2.792 3h26.271c1.313 0 2.938-1.406 2.938-2.968v-16.032c0-1-1-3-3-3zM30 26.032c0 0.395-0.639 0.947-0.937 0.969h-26.265c-0.232-0.019-0.797-0.47-0.797-1v-16.031c0-0.634 0.851-0.953 1-0.969h5.732l2.4-4h9.802l1.785 3.030 0.55 0.97h5.731c0.705 0 0.99 0.921 1 1v16.032zM16 10c-3.866 0-7 3.134-7 7s3.134 7 7 7 7-3.134 7-7-3.134-7-7-7zM16 22c-2.757 0-5-2.243-5-5s2.243-5 5-5 5 2.243 5 5-2.243 5-5 5z\\\"></path>\\n</svg>\";\nvar gi = /*#__PURE__*/function (_jt5) {\n function gi(e, t, i) {\n var _this79;\n _classCallCheck(this, gi);\n var a, l, c, d;\n var n = (a = i == null ? void 0 : i.button) == null ? void 0 : a.position,\n r = ((d = (c = (l = i == null ? void 0 : i.button) == null ? void 0 : l.styles) == null ? void 0 : c.text) == null ? void 0 : d.content) || \"Photo\";\n _this79 = _callSuper(this, gi, [gi.createButtonElement(), n, (i == null ? void 0 : i.button) || {}, r]);\n var o = _this79.createInnerElements(_this79._customStyles, n === \"dropup-menu\");\n i && _this79.addClickEvent(e, t, i.modalContainerStyle, i.files), _this79.elementRef.classList.add(\"upload-file-button\"), _this79.elementRef.appendChild(o.styles), _this79.reapplyStateStyle(\"styles\");\n return _this79;\n }\n // prettier-ignore\n _inherits(gi, _jt5);\n return _createClass(gi, [{\n key: \"createInnerElements\",\n value: function createInnerElements(e) {\n var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : !1;\n return {\n styles: K.createInnerElement(this.elementRef, gi.createSVGIconElement(), \"styles\", e, t)\n };\n }\n }, {\n key: \"addClickEvent\",\n value:\n // prettier-ignore\n function addClickEvent(e, t, i, n) {\n var r = vn.createCameraModalFunc(e, t, i, n);\n this.elementRef.onclick = r;\n }\n }], [{\n key: \"createButtonElement\",\n value: function createButtonElement() {\n var e = document.createElement(\"div\");\n return e.classList.add(\"input-button\"), e;\n }\n }, {\n key: \"createSVGIconElement\",\n value: function createSVGIconElement() {\n var e = ie.createSVGElement(pa);\n return e.id = \"camera-icon\", e;\n }\n }]);\n}(jt);\nvar wt = /*#__PURE__*/function () {\n function wt(e, t, i, n) {\n _classCallCheck(this, wt);\n this.elementRef = wt.createPanelElement(e.inputAreaStyle);\n var r = {},\n o = this.createFileUploadComponents(e, i, n, r),\n a = new $e(e, i, o);\n e.speechToText && !r.microphone && (r.microphone = {\n button: new Nt(e, a, t.addNewErrorMessage.bind(t))\n });\n var l = new ln(e, a.inputElementRef, t, i, o, r);\n a.submit = l.submitFromInput.bind(l), Be.attach(e, i, a, o, l), e.submitUserMessage = l.programmaticSubmit.bind(l), r.submit = {\n button: l\n }, wt.addElements(this.elementRef, a, r, n, o, e.dropupStyles);\n }\n return _createClass(wt, [{\n key: \"createFileUploadComponents\",\n value:\n // prettier-ignore\n function createFileUploadComponents(e, t, i, n) {\n var o, a, l, c;\n var r = new Vt(this.elementRef, e.attachmentContainerStyle, t.demo);\n if (wt.createUploadButtons(e, t.fileTypes || {}, r, i, n), (o = t.camera) != null && o.files) {\n var d = ((a = n.images) == null ? void 0 : a.fileType) || r.addType(e, t.camera.files, \"images\");\n n.camera = {\n button: new gi(i, d, t.camera)\n };\n }\n if ((l = t.recordAudio) != null && l.files) {\n var _d = ((c = n.audio) == null ? void 0 : c.fileType) || r.addType(e, t.recordAudio.files, \"audio\");\n n.microphone = {\n button: new la(_d, t.recordAudio)\n };\n }\n return Se.isEnabled(r, e.dragAndDrop) && Se.create(i, r, e.dragAndDrop), r;\n }\n // prettier-ignore\n }], [{\n key: \"createPanelElement\",\n value: function createPanelElement(e) {\n var t = document.createElement(\"div\");\n return t.id = \"input\", Object.assign(t.style, e), t;\n }\n }, {\n key: \"createUploadButtons\",\n value: function createUploadButtons(e, t, i, n, r) {\n Object.keys(t).forEach(function (o) {\n var a = o,\n l = t[a];\n if (l.files) {\n var c = i.addType(e, l.files, a),\n _jo$a = jo[a],\n d = _jo$a.id,\n h = _jo$a.svgString,\n u = _jo$a.dropupText,\n f = new St(n, c, l, d, h, u);\n r[a] = {\n button: f,\n fileType: c\n };\n }\n });\n }\n // prettier-ignore\n }, {\n key: \"addElements\",\n value: function addElements(e, t, i, n, r, o) {\n q.addElements(e, t.elementRef);\n var a = pt.create(),\n l = G.addButtons(a, i, n, o);\n an.set(t.inputElementRef, a, r.elementRef, l), pt.add(e, a);\n }\n }]);\n}();\nvar yn = /*#__PURE__*/function () {\n function yn() {\n _classCallCheck(this, yn);\n }\n return _createClass(yn, null, [{\n key: \"createElements\",\n value: function createElements(e, t, i) {\n var n = document.createElement(\"div\");\n n.id = \"chat-view\";\n var r = new Re(e, t, i);\n t.websocket && B.createConnection(t, r);\n var o = new wt(e, r, t, n);\n return q.addElements(n, r.elementRef, o.elementRef), n;\n }\n }, {\n key: \"render\",\n value: function render(e, t, i, n) {\n var r = yn.createElements(e, i, n);\n t.replaceChildren(r);\n }\n }]);\n}();\nvar ma = \"#validate-property-key-view{height:100%;position:relative;display:flex;justify-content:center;align-items:center;padding:8px}#large-loading-ring{display:inline-block;width:50px;height:50px}#large-loading-ring:after{content:\\\" \\\";display:block;width:38px;height:38px;margin:1px;border-radius:50%;border:5px solid #5fb2ff;border-color:#5fb2ff transparent #5fb2ff transparent;animation:large-loading-ring 1.4s linear infinite}@keyframes large-loading-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#insert-key-view{height:100%;position:relative}#insert-key-contents{text-align:center;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);width:82%;display:flex;max-width:700px}#insert-key-title{margin-bottom:15px}#insert-key-input-container{margin-right:2.7em;width:calc(100% - 80px)}#insert-key-input{padding:.3em 1.7em .3em .3em;border-width:1px;border-style:solid;border-radius:3px;width:100%;font-size:inherit}.insert-key-input-valid{border-color:gray}.insert-key-input-invalid{border-color:red}#visibility-icon-container{position:relative;float:right;cursor:pointer;-webkit-user-select:none;user-select:none}.visibility-icon{filter:brightness(0) saturate(100%) invert(63%) sepia(1%) saturate(9%) hue-rotate(43deg) brightness(98%) contrast(92%);position:absolute;right:-1.7em;top:-1.43em}#visible-icon{top:-1.4em}.visibility-icon:hover{filter:unset}.visibility-icon>*{pointer-events:none}#start-button{border:1px solid grey;color:#454545;border-radius:4px;width:3em;display:flex;justify-content:center;align-items:center;cursor:pointer;padding:.28em .3em;-webkit-user-select:none;user-select:none;background-color:#fff}#start-button:hover{background-color:#f2f2f2}#start-button:active{background-color:#d2d2d2}#insert-key-help-text-container{width:100%;position:absolute;margin-top:32px;margin-bottom:20px}#insert-key-help-text-contents{width:100%;position:absolute}#insert-key-input-invalid-text{display:block;margin-top:1em;margin-bottom:.5em;color:red}.insert-key-input-help-text{display:block;margin-top:16px}#loading-ring{display:inline-block;width:16px;height:16px}#loading-ring:after{content:\\\" \\\";display:block;width:11px;height:11px;margin:1px;border-radius:50%;border:2px solid #0084ff;border-color:#0084ff transparent #0084ff transparent;animation:loading-ring 1.2s linear infinite}@keyframes loading-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#error-view{color:red;font-size:1.2em;line-height:1.3em;margin-top:-5px;text-align:center;height:100%;display:flex;justify-content:center;align-items:center;padding-left:8px;padding-right:8px}.intro-panel{position:absolute;display:flex;justify-content:center;right:0;bottom:0;left:0;margin:auto;height:fit-content;top:-2.5em}#internal-intro-panel{width:250px;height:min-content;display:block;border-radius:5px;overflow:auto;border:1px solid rgb(203,203,203);padding:10px;max-height:calc(100% - 6.8em)}#internal-intro-panel>p{margin-block-start:.8em;margin-block-end:.8em}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!\\n Theme: a11y-dark\\n Author: @ericwbailey\\n Maintainer: @ericwbailey\\n\\n Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css\\n*/.hljs{background:#2b2b2b;color:#f8f8f2}.hljs-comment,.hljs-quote{color:#d4d0ab}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ffa07a}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5ab35}.hljs-attribute{color:gold}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#abe338}.hljs-section,.hljs-title{color:#00e0e0}.hljs-keyword,.hljs-selector-tag{color:#dcc6e0}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media screen and (-ms-high-contrast: active){.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-comment,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-quote,.hljs-string,.hljs-symbol,.hljs-type{color:highlight}.hljs-keyword,.hljs-selector-tag{font-weight:700}}#messages{overflow:auto}.outer-message-container:last-child{margin-bottom:5px}.inner-message-container{display:flex;margin-left:auto;margin-right:auto;width:calc(97.5% - 24px);max-width:100%}.message-bubble{margin-top:10px;word-wrap:break-word;width:fit-content;max-width:60%;border-radius:10px;padding:.42em .55em;height:fit-content;line-height:1.26em}.user-message-text{color:#fff;background-color:#0084ff;margin-right:0;margin-left:auto}.ai-message-text{color:#000;background-color:#e4e6eb;margin-left:0;margin-right:auto}.html-message{max-width:unset}.error-message-text{margin:14px auto 10px;background-color:#f4c0c0;color:#474747;text-align:center;max-width:95%}.loading-message-text{width:1em;padding:.6em .75em .6em 1.3em}.message-bubble>p:first-child{margin-top:0}.message-bubble>p:last-child{margin-bottom:0}pre{overflow:auto;display:block;word-break:break-all;word-wrap:break-word;border-radius:7px;background:#2b2b2b;color:#f8f8f2;margin-top:.8em;margin-bottom:.8em;padding:.6em;font-size:.9em;line-height:1.5em}.image-message{padding:0;display:flex;background-color:#ddd}.image-message>*,.image-message>*>*{width:100%;border-radius:8px;display:flex}.audio-message{width:60%;max-width:300px;height:2.2em;max-height:54px;padding:0;background-color:unset}.audio-player{width:100%;height:100%}.audio-player-safari{height:fit-content;width:40px}.audio-player-safari-left{float:left}.audio-player-safari-right{float:right}.any-file-message-bubble{padding:1px}.any-file-message-contents{display:flex}.any-file-message-icon-container{width:1.3em;min-width:1.3em;position:relative;border-radius:4px;margin-left:6px;margin-right:2px}.any-file-message-icon{background-color:#fff;border-radius:4px;position:absolute;width:1em;height:1.25em;padding:1px;margin-top:auto;margin-bottom:auto;top:0;bottom:0}.any-file-message-text{padding-top:5px;overflow-wrap:anywhere;padding-bottom:5px;padding-right:7px}.message-bubble>a{color:inherit}.left-item-position{margin-right:10px}.right-item-position{margin-left:10px}.avatar{padding-top:5px;width:1.5em;height:1.5em;border-radius:1px}.avatar-container{margin-top:9px}.name{margin-top:16px;font-size:15px}#drag-and-drop{position:absolute;display:none;z-index:10;height:calc(100% - 10px);width:calc(100% - 10px);background-color:#70c6ff4d;border:5px dashed #6dafff}#file-attachment-container{position:absolute;height:3.6em;width:calc(80% - 4px);top:-2.5em;border-radius:5px;overflow:auto;text-align:left;background-color:#d7d7d73b;padding-left:4px}.file-attachment{width:2.85em;height:2.85em;display:inline-flex;margin-right:.6em;margin-bottom:.44em;margin-top:4px;position:relative;background-color:#fff;border-radius:5px}.image-attachment{width:100%;height:100%;object-fit:cover;border-radius:5px}.border-bound-attachment{width:calc(100% - 2px);height:calc(100% - 2px);border:1px solid #c3c3c3;border-radius:5px;overflow:hidden}.border-bound-attachment-safari{width:calc(100% - 1px);height:calc(100% - 1px)}.audio-attachment-icon-container{cursor:pointer}.audio-attachment-icon-container:hover{background-color:#f8f8f8}.attachment-icon{left:0;right:0;bottom:0;top:2px;margin:auto;position:absolute;width:25px;-webkit-user-select:none;user-select:none}.not-removable-attachment-icon{top:0;right:0;bottom:0;left:0}.play-icon{filter:brightness(0) saturate(100%) invert(17%) sepia(0%) saturate(1392%) hue-rotate(67deg) brightness(98%) contrast(97%)}.stop-icon{filter:brightness(0) saturate(100%) invert(29%) sepia(90%) saturate(1228%) hue-rotate(198deg) brightness(93%) contrast(98%)}.audio-placeholder-text-3-digits{padding-left:.26rem}.audio-placeholder-text-4-digits{padding-left:.1rem}.any-file-attachment{padding:2px 0}.file-attachment-text-container{position:absolute;width:inherit;display:flex;align-items:center;height:100%;top:-1px}.audio-placeholder-text-3-digits-container{padding-top:1px;cursor:default}.any-file-attachment-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-left:.13em;margin-left:auto;margin-right:auto}.remove-file-attachment-button{height:1.25em;width:1.25em;border:1px solid #cfcfcf;border-radius:25px;background-color:#fff;top:-4px;right:-5px;position:absolute;display:flex;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none}.remove-file-attachment-button:hover{background-color:#e4e4e4}.remove-file-attachment-button:active{background-color:#d7d7d7}.x-icon{color:#4e4e4e;top:-.075em;position:relative;font-size:1.05em}.modal{display:none;flex-direction:column;align-items:center;justify-content:center;position:absolute;width:80%;max-width:420px;max-height:80%;margin:auto;top:0;right:0;bottom:0;left:0;z-index:2}.modal-content{border-top:1px solid rgb(217,217,217);border-left:1px solid rgb(217,217,217);border-right:1px solid rgb(217,217,217);border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:#fff;overflow-y:auto;height:fit-content;max-height:calc(100% - 3.3em);width:100%}.modal-content>p{margin-left:1em;margin-right:1em}.modal-content>ul{margin-right:1em}.modal-button-panel{height:3.3em;border:1px solid;border-color:rgb(223,223,223) rgb(217,217,217) rgb(217,217,217);border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;background-color:#fff;text-align:center;justify-content:center;display:flex;width:100%}.modal-button{min-width:2.5em;text-align:center;color:#fff;border-radius:5px;padding:.4em .4em .3em;height:1.25em;background-color:#3279b2;top:0;bottom:0;cursor:pointer;-webkit-user-select:none;user-select:none;margin:auto .31em}.modal-button:hover{background-color:#276da7}.modal-button:active{background-color:#1b5687}.modal-svg-button{padding:0 0 2px;width:2em;height:1.8em}.modal-svg-button-icon{width:100%;height:100%;filter:brightness(0) saturate(100%) invert(100%) sepia(15%) saturate(4%) hue-rotate(346deg) brightness(101%) contrast(102%)}#modal-background-panel{position:absolute;width:100%;height:100%;background-color:#00000042;z-index:1;display:none}.show-modal-background{animation:fadeInBackground .3s ease-in-out}@keyframes fadeInBackground{0%{opacity:0}to{opacity:1}}.show-modal{animation:fadeInModal .3s ease-in-out}@keyframes fadeInModal{0%{opacity:0;scale:.95}to{opacity:1;scale:1}}.hide-modal-background{animation:fadeOutBackground .2s ease-in-out}@keyframes fadeOutBackground{0%{opacity:1}to{opacity:0}}.hide-modal{animation:fadeOutModal .2s ease-in-out}@keyframes fadeOutModal{0%{opacity:1;scale:1}to{opacity:0;scale:.95}}.modal-camera-content{overflow:hidden;text-align:center;border:unset;height:100%;background-color:#2a2a2a;display:flex;justify-content:center}.camera-modal-canvas{max-width:100%;max-height:100%;margin-top:auto;margin-bottom:auto}.modal-svg-submit-button{background-color:green}.modal-svg-submit-button:hover{background-color:#007500}.modal-svg-submit-button:active{background-color:#006500}.modal-svg-submit-disabled{pointer-events:none;background-color:#747474}.modal-svg-close-button{height:1.56em;padding-top:.37em;padding-bottom:0;background-color:#c13e3e}.modal-svg-close-button:hover{background-color:#b43434}.modal-svg-close-button:active{background-color:#972929}.modal-svg-close-icon{width:80%;height:80%}.modal-svg-camera-button{height:1.6em;padding-top:.38em;padding-bottom:0}.modal-svg-camera-icon{height:76%}.modal-svg-refresh-icon{height:105%}.modal-svg-refresh-button{height:1.66em;padding-top:.11em;padding-bottom:.21em}.input-button-container{position:relative;z-index:1}.inside-right{position:absolute;right:calc(10% + .35em);bottom:.85em}.inside-left{position:absolute;left:calc(10% + .35em);bottom:.85em}.outside-left{position:absolute;right:calc(11px - .55em);bottom:.88em}.outside-right{position:absolute;left:calc(11px - .55em);bottom:.88em}#upload-images-icon{position:absolute;pointer-events:none;width:1.45em;height:1.45em;left:.11em;bottom:.08em;filter:brightness(0) saturate(100%) invert(43%) sepia(0%) saturate(740%) hue-rotate(77deg) brightness(99%) contrast(92%)}#upload-gifs-icon{position:absolute;pointer-events:none;width:1.5em;height:1.48em;left:.07em;bottom:.08em;filter:brightness(0) saturate(100%) invert(49%) sepia(0%) saturate(2586%) hue-rotate(12deg) brightness(93%) contrast(90%)}#upload-audio-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.17em;bottom:.2em;filter:brightness(0) saturate(100%) invert(15%) sepia(0%) saturate(337%) hue-rotate(125deg) brightness(91%) contrast(94%);transform:scaleX(.95)}#camera-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.23em;bottom:.2em;filter:brightness(0) saturate(100%) invert(52%) sepia(0%) saturate(161%) hue-rotate(164deg) brightness(91%) contrast(92%);transform:scaleX(.95)}#upload-mixed-files-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.25em;bottom:.2em;filter:brightness(0) saturate(100%) invert(53%) sepia(0%) saturate(36%) hue-rotate(74deg) brightness(98%) contrast(93%);transform:scaleX(.95)}#interim-text{color:gray}#microphone-button{padding-top:.5px}.outer-button-container>#microphone-button{padding-bottom:1px}#microphone-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.25em;bottom:.25em}.default-microphone-icon{filter:brightness(0) saturate(100%) invert(32%) sepia(0%) saturate(924%) hue-rotate(46deg) brightness(95%) contrast(99%)}.active-microphone-icon{filter:brightness(0) saturate(100%) invert(10%) sepia(97%) saturate(7495%) hue-rotate(0deg) brightness(101%) contrast(107%);border-radius:10px}.command-microphone-icon{filter:brightness(0) saturate(100%) invert(42%) sepia(96%) saturate(1067%) hue-rotate(77deg) brightness(99%) contrast(102%)}.unsupported-microphone{display:none}#submit-icon{height:100%;filter:brightness(0) saturate(100%) invert(32%) sepia(0%) saturate(924%) hue-rotate(46deg) brightness(95%) contrast(99%);width:1.21em}#stop-icon{background-color:#acacac;position:absolute;width:.95em;height:.95em;left:.35em;bottom:.35em;border-radius:2px}.submit-button-enlarged{scale:1.1;margin-right:.3em;margin-left:.3em}.dots-jumping{position:relative;left:calc(-9990px + .275em);width:.22em;height:.22em;border-radius:5px;background-color:#848484;color:#848484;box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484;animation:dots-jumping 1.5s infinite linear;bottom:-.75em}@keyframes dots-jumping{0%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}16.667%{box-shadow:9990px -6px #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}33.333%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}50%{box-shadow:9990px 0 #848484,calc(9990px + .44em) -6px 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}66.667%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}83.333%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) -6px 0 0 #848484}to{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}}.dots-flashing{position:relative;width:.45em;height:.45em;border-radius:5px;background-color:var(--message-dots-color);color:var(--message-dots-color);animation:dots-flashing 1s infinite linear alternate;animation-delay:.5s}.dots-flashing:before,.dots-flashing:after{content:\\\"\\\";display:inline-block;position:absolute;top:0}.dots-flashing:before{left:-.7em;width:.45em;height:.45em;border-radius:5px;background-color:var(--message-dots-color);color:var(--message-dots-color);animation:dots-flashing 1s infinite alternate;animation-delay:0s}.dots-flashing:after{left:.7em;width:.45em;height:.45em;border-radius:5px;background-color:var(--message-dots-color);color:var(--message-dots-color);animation:dots-flashing 1s infinite alternate;animation-delay:1s}@keyframes dots-flashing{0%{background-color:var(--message-dots-color)}50%,to{background-color:var(--message-dots-color-fade)}}.input-button{border-radius:4px;cursor:pointer;margin-bottom:.2em;-webkit-user-select:none;user-select:none}.input-button-svg{width:1.65em;height:1.65em}.input-button:hover{background-color:#9c9c9c2e}.input-button:active{background-color:#9c9c9c5e}.loading-button{cursor:auto}.loading-button:hover{background-color:unset}.text-button{filter:unset!important;display:flex;justify-content:center;align-items:center;margin-left:4px;margin-right:4px;height:1.6em}#text-input-container{background-color:#fff;width:80%;display:flex;border:1px solid #0000001a;border-radius:5px;margin-top:.8em;margin-bottom:.8em;box-shadow:#959da533 0 1px 12px;overflow-y:auto;max-height:200px;position:relative}.text-input-container-left-adjustment{margin-left:1.5em}.text-input-container-right-adjustment{margin-right:1.5em}.text-input-container-left-small-adjustment{margin-left:1.1em}.text-input-container-left-small-adjustment>.outside-left{right:calc(14px - .55em)}.text-input-container-right-small-adjustment{margin-right:1.1em}.text-input-container-right-small-adjustment>.outside-right{left:calc(14px - .55em)}#text-input{text-align:left;outline:none;word-wrap:break-word;line-break:auto}.text-input-styling{padding:.4em .5em;overflow:overlay;width:100%}.text-input-inner-left-adjustment{padding-left:2.2em}.text-input-inner-right-adjustment{padding-right:2em}.text-input-disabled{pointer-events:none;-webkit-user-select:none;user-select:none}.text-input-placeholder{color:gray}.outside-right>#dropup-menu,.inside-right>#dropup-menu{right:0}#dropup-icon{position:absolute;pointer-events:none;width:1.16em;height:1.2em;left:.265em;bottom:.43em;filter:brightness(0) saturate(100%) invert(54%) sepia(0%) saturate(724%) hue-rotate(6deg) brightness(92%) contrast(90%)}#dropup-menu{background-color:#fff;position:absolute;transform:translateY(-100%);border-radius:5px;z-index:1;top:-.49em;box-shadow:#0003 -1px 2px 10px,#0000001a 0 2px 4px;cursor:pointer;-webkit-user-select:none;user-select:none}.dropup-menu-item{height:1.4em;padding:.28em .84em .28em .35em;display:flex;position:relative}.dropup-menu-item:first-child{padding-top:.49em;border-top-left-radius:inherit;border-top-right-radius:inherit}.dropup-menu-item:last-child{padding-bottom:.45em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.dropup-menu-item-icon{width:1.39em;position:relative;margin-right:.56em}.dropup-menu-item-icon>svg{bottom:0!important;top:0!important;margin-bottom:auto;margin-top:auto}.dropup-menu-item-text{margin-top:.08em;width:max-content}#input{width:100%;display:inline-flex;text-align:center;margin-left:auto;margin-right:auto;margin-top:auto;position:relative;justify-content:center}#chat-view{height:100%;display:grid;grid-template-columns:100%}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background-color:#d0d0d0;border-radius:5px}::-webkit-scrollbar-track{background-color:#f2f2f2}.deep-chat-web-model-button{margin-top:10px;margin-bottom:5px;margin-left:1px}:host{all:initial;display:table-cell}#container{height:inherit;width:inherit;overflow:hidden}\";\nvar ga = Object.defineProperty,\n S = function S(s, e, t, i) {\n for (var n = void 0, r = s.length - 1, o; r >= 0; r--) (o = s[r]) && (n = o(e, t, n) || n);\n return n && ga(e, t, n), n;\n };\nvar E = /*#__PURE__*/function (_Zi) {\n function E() {\n var _this80;\n _classCallCheck(this, E);\n _this80 = _callSuper(this, E), _this80.getMessages = function () {\n return [];\n }, _this80.submitUserMessage = function () {\n return console.warn(\"submitUserMessage failed - please wait for chat view to render before calling this property.\");\n }, _this80.addMessage = function () {\n return console.warn(\"addMessage failed - please wait for chat view to render before calling this property.\");\n }, _this80.focusInput = function () {\n return Ei.focusFromParentElement(_this80._elementRef);\n }, _this80.refreshMessages = function () {}, _this80.clearMessages = function () {}, _this80.scrollToBottom = function () {}, _this80.disableSubmitButton = function () {}, _this80.setPlaceholderText = function () {}, _this80._hasBeenRendered = !1, _this80._auxiliaryStyleApplied = !1, _this80._elementRef = document.createElement(\"div\"), _this80._elementRef.id = \"container\", _this80.attachShadow({\n mode: \"open\"\n }).appendChild(_this80._elementRef), yt.apply(ma, _this80.shadowRoot), setTimeout(function () {\n _this80._hasBeenRendered || _this80.onRender();\n }, 20);\n return _this80;\n }\n _inherits(E, _Zi);\n return _createClass(E, [{\n key: \"changeToChatView\",\n value: function changeToChatView() {\n this._activeService && (this._activeService.validateKeyProperty = !1), this.onRender();\n }\n // prettier-ignore\n }, {\n key: \"onRender\",\n value: function onRender() {\n var _this$_childElement;\n Zt.attemptAppendStyleSheetToHead(this.style), te.processConnect(this), (!this._activeService || this._activeService.demo) && (this._activeService = Ro.create(this)), this.auxiliaryStyle && !this._auxiliaryStyleApplied && (yt.apply(this.auxiliaryStyle, this.shadowRoot), this._auxiliaryStyleApplied = !0), yt.applyDefaultStyleToComponent(this.style, this.chatStyle), te.checkForContainerStyles(this, this._elementRef), this._activeService.key && this._activeService.validateKeyProperty ? Xt.render(this._elementRef, this.changeToChatView.bind(this), this._activeService) : !(this._activeService instanceof z) || this._activeService.key ? ((_this$_childElement = this._childElement) !== null && _this$_childElement !== void 0 ? _this$_childElement : this._childElement = this.children[0], yn.render(this, this._elementRef, this._activeService, this._childElement)) : this._activeService instanceof z && U.render(this._elementRef, this.changeToChatView.bind(this), this._activeService), this._hasBeenRendered = !0, ei.onRender(this);\n }\n }, {\n key: \"disconnectedCallback\",\n value: function disconnectedCallback() {\n It.chat = void 0;\n }\n }]);\n}(Zi);\nS([_(\"object\")], E.prototype, \"connect\");\nS([_(\"object\")], E.prototype, \"directConnection\");\nS([_(\"object\")], E.prototype, \"webModel\");\nS([_(\"object\")], E.prototype, \"requestBodyLimits\");\nS([_(\"function\")], E.prototype, \"requestInterceptor\");\nS([_(\"function\")], E.prototype, \"responseInterceptor\");\nS([_(\"function\")], E.prototype, \"validateInput\");\nS([_(\"function\")], E.prototype, \"loadHistory\");\nS([_(\"object\")], E.prototype, \"chatStyle\");\nS([_(\"object\")], E.prototype, \"attachmentContainerStyle\");\nS([_(\"object\")], E.prototype, \"dropupStyles\");\nS([_(\"object\")], E.prototype, \"inputAreaStyle\");\nS([_(\"object\")], E.prototype, \"textInput\");\nS([_(\"object\")], E.prototype, \"submitButtonStyles\");\nS([_(\"string\")], E.prototype, \"auxiliaryStyle\");\nS([_(\"array\")], E.prototype, \"history\");\nS([_(\"object\")], E.prototype, \"introMessage\");\nS([_(\"object\")], E.prototype, \"avatars\");\nS([_(\"object\")], E.prototype, \"names\");\nS([_(\"boolean\")], E.prototype, \"displayLoadingBubble\");\nS([_(\"object\")], E.prototype, \"errorMessages\");\nS([_(\"object\")], E.prototype, \"messageStyles\");\nS([_(\"object\")], E.prototype, \"textToSpeech\");\nS([_(\"object\")], E.prototype, \"speechToText\");\nS([_(\"object\")], E.prototype, \"images\");\nS([_(\"object\")], E.prototype, \"gifs\");\nS([_(\"object\")], E.prototype, \"camera\");\nS([_(\"object\")], E.prototype, \"audio\");\nS([_(\"object\")], E.prototype, \"microphone\");\nS([_(\"object\")], E.prototype, \"mixedFiles\");\nS([_(\"object\")], E.prototype, \"dragAndDrop\");\nS([_(\"object\")], E.prototype, \"introPanelStyle\");\nS([_(\"object\")], E.prototype, \"htmlClassUtilities\");\nS([_(\"function\")], E.prototype, \"onMessage\");\nS([_(\"function\")], E.prototype, \"onClearMessages\");\nS([_(\"function\")], E.prototype, \"onComponentRender\");\nS([_(\"function\")], E.prototype, \"onError\");\nS([_(\"object\")], E.prototype, \"demo\");\nS([_(\"object\")], E.prototype, \"_insertKeyViewStyles\");\ncustomElements.define(\"deep-chat\", E);\nexport { E as DeepChat };\n"],"x_google_ignoreList":[0],"mappings":";AAAA,SAAS,EAAmB,GAAG;CAAE,OAAO,EAAmB,CAAC,KAAK,EAAiB,CAAC,KAAK,EAA4B,CAAC,KAAK,EAAmB;AAAG;AAChJ,SAAS,IAAqB;CAAE,MAAU,UAAU,sIAAsI;AAAG;AAC7L,SAAS,EAAiB,GAAG;CAAE,IAAmB,OAAO,SAAtB,OAAwC,EAAE,OAAO,aAAjB,QAAsC,EAAE,iBAAV,MAAyB,OAAO,MAAM,KAAK,CAAC;AAAG;AAChJ,SAAS,EAAmB,GAAG;CAAE,IAAI,MAAM,QAAQ,CAAC,GAAG,OAAO,EAAkB,CAAC;AAAG;AACpF,SAAS,EAA2B,GAAG,GAAG;CAAE,IAAI,IAAmB,OAAO,SAAtB,OAAgC,EAAE,OAAO,aAAa,EAAE;CAAe,IAAI,CAAC,GAAG;EAAE,IAAI,MAAM,QAAQ,CAAC,MAAM,IAAI,EAA4B,CAAC,MAAM,KAAK,KAAiB,OAAO,EAAE,UAArB,UAA6B;GAAE,MAAM,IAAI;GAAI,IAAI,IAAM,GAAG,IAAI,WAAa,CAAC;GAAG,OAAO;IAAE,GAAG;IAAG,GAAG,WAAa;KAAE,OAAO,KAAO,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,IAAI;MAAE,MAAM,CAAC;MAAG,OAAO,EAAE;KAAO;IAAG;IAAG,GAAG,SAAW,GAAG;KAAE,MAAM;IAAG;IAAG,GAAG;GAAE;EAAG;EAAE,MAAU,UAAU,uIAAuI;CAAG;CAAE,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;CAAG,OAAO;EAAE,GAAG,WAAa;GAAE,IAAI,EAAE,KAAK,CAAC;EAAG;EAAG,GAAG,WAAa;GAAE,IAAI,IAAI,EAAE,KAAK;GAAG,OAAO,IAAI,EAAE,MAAM;EAAG;EAAG,GAAG,SAAW,GAAG;GAAE,IAAI,CAAC,GAAG,IAAI;EAAG;EAAG,GAAG,WAAa;GAAE,IAAI;IAAE,KAAa,EAAE,UAAV,QAAuB,EAAE,OAAU;GAAG,UAAU;IAAE,IAAI,GAAG,MAAM;GAAG;EAAE;CAAE;AAAG;AAC91B,SAAS,EAA4B,GAAG,GAAG;CAAE,IAAI,GAAG;EAAE,IAAgB,OAAO,KAAnB,UAAsB,OAAO,EAAkB,GAAG,CAAC;EAAG,IAAI,IAAI,CAAC,EAAE,SAAS,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE;EAAG,OAAoB,MAAb,YAAkB,EAAE,gBAAgB,IAAI,EAAE,YAAY,OAAiB,MAAV,SAAyB,MAAV,QAAc,MAAM,KAAK,CAAC,IAAoB,MAAhB,eAAqB,2CAA2C,KAAK,CAAC,IAAI,EAAkB,GAAG,CAAC,IAAI,KAAK;CAAG;AAAE;AACzX,SAAS,EAAkB,GAAG,GAAG;CAAE,CAAS,KAAR,QAAa,IAAI,EAAE,YAAY,IAAI,EAAE;CAAS,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,GAAG,KAAK,EAAE,KAAK,EAAE;CAAI,OAAO;AAAG;AACnJ,SAAS,EAAiB,GAAG;CAAE,IAAI,IAAkB,OAAO,OAArB,6BAA2B,IAAI,IAAI,IAAI,KAAK;CAAG,OAAO,IAAmB,SAA0B,GAAG;EAAE,IAAa,MAAT,QAAc,CAAC,EAAkB,CAAC,GAAG,OAAO;EAAG,IAAkB,OAAO,KAArB,YAAwB,MAAU,UAAU,oDAAoD;EAAG,IAAe,MAAX,KAAK,GAAS;GAAE,IAAI,EAAE,IAAI,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC;GAAG,EAAE,IAAI,GAAG,CAAO;EAAG;EAAE,SAAS,IAAU;GAAE,OAAO,EAAW,GAAG,WAAW,EAAgB,IAAI,CAAC,CAAC,WAAW;EAAG;EAAE,OAAO,EAAQ,YAAY,OAAO,OAAO,EAAE,WAAW,EAAE,aAAa;GAAE,OAAO;GAAS,YAAY,CAAC;GAAG,UAAU,CAAC;GAAG,cAAc,CAAC;EAAE,EAAE,CAAC,GAAG,EAAgB,GAAS,CAAC;CAAG,GAAG,EAAiB,CAAC;AAAG;AAC7oB,SAAS,EAAW,GAAG,GAAG,GAAG;CAAE,IAAI,EAA0B,GAAG,OAAO,QAAQ,UAAU,MAAM,MAAM,SAAS;CAAG,IAAI,IAAI,CAAC,IAAI;CAAG,EAAE,KAAK,MAAM,GAAG,CAAC;CAAG,IAAI,IAAI,KAAK,EAAE,KAAK,MAAM,GAAG,CAAC,GAAG;CAAG,OAAO,KAAK,EAAgB,GAAG,EAAE,SAAS,GAAG;AAAG;AACzO,SAAS,EAAkB,GAAG;CAAE,IAAI;EAAE,OAAc,SAAS,SAAS,KAAK,CAAC,CAAC,CAAC,QAAQ,eAAe,MAAxD;CAA2D,QAAY;EAAE,OAAqB,OAAO,KAArB;CAAwB;AAAE;AACvJ,SAAS,EAAW,GAAG,GAAG,GAAG;CAAE,OAAO,IAAI,EAAgB,CAAC,GAAG,EAA2B,GAAG,EAA0B,IAAI,QAAQ,UAAU,GAAG,KAAK,CAAC,GAAG,EAAgB,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC;AAAG;AAC1M,SAAS,EAA2B,GAAG,GAAG;CAAE,IAAI,MAAkB,EAAQ,CAAC,KAArB,YAAwC,OAAO,KAArB,aAAyB,OAAO;CAAG,IAAe,MAAX,KAAK,GAAS,MAAU,UAAU,0DAA0D;CAAG,OAAO,EAAuB,CAAC;AAAG;AACxP,SAAS,EAAuB,GAAG;CAAE,IAAe,MAAX,KAAK,GAAS,MAAU,eAAe,2DAA2D;CAAG,OAAO;AAAG;AACxJ,SAAS,IAA4B;CAAE,IAAI;EAAE,IAAI,IAAI,CAAC,QAAQ,UAAU,QAAQ,KAAK,QAAQ,UAAU,SAAS,CAAC,GAAG,WAAY,CAAC,CAAC,CAAC;CAAG,QAAY,CAAC;CAAE,QAAQ,IAA4B,WAAqC;EAAE,OAAO,CAAC,CAAC;CAAG,EAAA,CAAG;AAAG;AAClP,SAAS,EAAgB,GAAG;CAAE,OAAO,IAAkB,OAAO,iBAAiB,OAAO,eAAe,KAAK,IAAI,SAAU,GAAG;EAAE,OAAO,EAAE,aAAa,OAAO,eAAe,CAAC;CAAG,GAAG,EAAgB,CAAC;AAAG;AACpM,SAAS,EAAU,GAAG,GAAG;CAAE,IAAkB,OAAO,KAArB,cAAmC,MAAT,MAAY,MAAU,UAAU,oDAAoD;CAAG,EAAE,YAAY,OAAO,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa;EAAE,OAAO;EAAG,UAAU,CAAC;EAAG,cAAc,CAAC;CAAE,EAAE,CAAC,GAAG,OAAO,eAAe,GAAG,aAAa,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,KAAK,EAAgB,GAAG,CAAC;AAAG;AACnV,SAAS,EAAgB,GAAG,GAAG;CAAE,OAAO,IAAkB,OAAO,iBAAiB,OAAO,eAAe,KAAK,IAAI,SAAU,GAAG,GAAG;EAAE,OAAO,EAAE,YAAY,GAAG;CAAG,GAAG,EAAgB,GAAG,CAAC;AAAG;AACxL,SAAS,IAAsB;CAAqK,IAAsB,WAA+B;EAAE,OAAO;CAAG;CAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,WAAW,IAAI,EAAE,gBAAgB,IAAI,OAAO,kBAAkB,SAAU,GAAG,GAAG,GAAG;EAAE,EAAE,KAAK,EAAE;CAAO,GAAG,IAAkB,OAAO,UAArB,aAA8B,SAAS,CAAC,GAAG,IAAI,EAAE,YAAY,cAAc,IAAI,EAAE,iBAAiB,mBAAmB,IAAI,EAAE,eAAe;CAAiB,SAAS,EAAO,GAAG,GAAG,GAAG;EAAE,OAAO,OAAO,eAAe,GAAG,GAAG;GAAE,OAAO;GAAG,YAAY,CAAC;GAAG,cAAc,CAAC;GAAG,UAAU,CAAC;EAAE,CAAC,GAAG,EAAE;CAAI;CAAE,IAAI;EAAE,EAAO,CAAC,GAAG,EAAE;CAAG,QAAY;EAAE,IAAS,SAAgB,GAAG,GAAG,GAAG;GAAE,OAAO,EAAE,KAAK;EAAG;CAAG;CAAE,SAAS,EAAK,GAAG,GAAG,GAAG,GAAG;EAAE,IAAI,IAAI,KAAK,EAAE,qBAAqB,IAAY,IAAI,GAAW,IAAI,OAAO,OAAO,EAAE,SAAS;EAA6B,OAAO,EAAE,GAAG,WAAW,EAAE,OAAO,GAAiB,GAAG,GAAG,IAAzE,GAAQ,KAAK,CAAC,CAA2D,CAAC,EAAE,CAAC,GAAG;CAAG;CAAE,SAAS,EAAS,GAAG,GAAG,GAAG;EAAE,IAAI;GAAE,OAAO;IAAE,MAAM;IAAU,KAAK,EAAE,KAAK,GAAG,CAAC;GAAE;EAAG,SAAS,GAAG;GAAE,OAAO;IAAE,MAAM;IAAS,KAAK;GAAE;EAAG;CAAE;CAAE,EAAE,OAAO;CAAM,IAAI,IAAI,kBAAkB,IAAI,kBAAkB,IAAI,aAAa,IAAI,aAAa,IAAI,CAAC;CAAG,SAAS,IAAY,CAAC;CAAE,SAAS,IAAoB,CAAC;CAAE,SAAS,IAA6B,CAAC;CAAE,IAAI,IAAI,CAAC;CAAG,EAAO,GAAG,GAAG,WAAY;EAAE,OAAO;CAAM,CAAC;CAAG,IAAI,IAAI,OAAO,gBAAgB,IAAI,KAAK,EAAE,EAAE,GAAO,CAAC,CAAC,CAAC,CAAC;CAAG,KAAK,MAAM,KAAK,EAAE,KAAK,GAAG,CAAC,MAAM,IAAI;CAAI,IAAI,IAAI,EAA2B,YAAY,EAAU,YAAY,OAAO,OAAO,CAAC;CAAG,SAAS,EAAsB,GAAG;EAAE;GAAC;GAAQ;GAAS;EAAQ,CAAC,CAAC,QAAQ,SAAU,GAAG;GAAE,EAAO,GAAG,GAAG,SAAU,GAAG;IAAE,OAAO,KAAK,QAAQ,GAAG,CAAC;GAAG,CAAC;EAAG,CAAC;CAAG;CAAE,SAAS,GAAc,GAAG,GAAG;EAAE,SAAS,EAAO,GAAG,GAAG,GAAG,GAAG;GAAE,IAAI,IAAI,EAAS,EAAE,IAAI,GAAG,CAAC;GAAG,IAAgB,EAAE,SAAd,SAAoB;IAAE,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE;IAAO,OAAO,KAAiB,EAAQ,CAAC,KAArB,YAA0B,EAAE,KAAK,GAAG,SAAS,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,SAAU,GAAG;KAAE,EAAO,QAAQ,GAAG,GAAG,CAAC;IAAG,GAAG,SAAU,GAAG;KAAE,EAAO,SAAS,GAAG,GAAG,CAAC;IAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KAAE,EAAE,QAAQ,GAAG,EAAE,CAAC;IAAG,GAAG,SAAU,GAAG;KAAE,OAAO,EAAO,SAAS,GAAG,GAAG,CAAC;IAAG,CAAC;GAAG;GAAE,EAAE,EAAE,GAAG;EAAG;EAAE,IAAI;EAAG,EAAE,MAAM,WAAW,EAAE,OAAO,SAAe,GAAG,GAAG;GAAE,SAAS,IAA6B;IAAE,OAAO,IAAI,EAAE,SAAU,GAAG,GAAG;KAAE,EAAO,GAAG,GAAG,GAAG,CAAC;IAAG,CAAC;GAAG;GAAE,OAAO,IAAI,IAAI,EAAE,KAAK,GAA4B,CAA0B,IAAI,EAA2B;EAAG,EAAE,CAAC;CAAG;CAAE,SAAS,GAAiB,GAAG,GAAG,GAAG;EAAE,IAAI,IAAI;EAAG,OAAO,SAAU,GAAG,GAAG;GAAE,IAAI,MAAM,GAAG,MAAM,MAAM,8BAA8B;GAAG,IAAI,MAAM,GAAG;IAAE,IAAgB,MAAZ,SAAe,MAAM;IAAG,OAAO;KAAE,OAAO;KAAG,MAAM,CAAC;IAAE;GAAG;GAAE,KAAK,EAAE,SAAS,GAAG,EAAE,MAAM,KAAK;IAAE,IAAI,IAAI,EAAE;IAAU,IAAI,GAAG;KAAE,IAAI,IAAI,GAAoB,GAAG,CAAC;KAAG,IAAI,GAAG;MAAE,IAAI,MAAM,GAAG;MAAU,OAAO;KAAG;IAAE;IAAE,IAAe,EAAE,WAAb,QAAqB,EAAE,OAAO,EAAE,QAAQ,EAAE;SAAS,IAAgB,EAAE,WAAd,SAAsB;KAAE,IAAI,MAAM,GAAG,MAAM,IAAI,GAAG,EAAE;KAAK,EAAE,kBAAkB,EAAE,GAAG;IAAG,OAAO,AAAa,EAAE,WAAf,YAAyB,EAAE,OAAO,UAAU,EAAE,GAAG;IAAG,IAAI;IAAG,IAAI,IAAI,EAAS,GAAG,GAAG,CAAC;IAAG,IAAiB,EAAE,SAAf,UAAqB;KAAE,IAAI,IAAI,EAAE,OAAO,IAAI,GAAG,EAAE,QAAQ,GAAG;KAAU,OAAO;MAAE,OAAO,EAAE;MAAK,MAAM,EAAE;KAAK;IAAG;IAAE,AAAY,EAAE,SAAd,YAAuB,IAAI,GAAG,EAAE,SAAS,SAAS,EAAE,MAAM,EAAE;GAAM;EAAE;CAAG;CAAE,SAAS,GAAoB,GAAG,GAAG;EAAE,IAAI,IAAI,EAAE,QAAQ,IAAI,EAAE,SAAS;EAAI,IAAI,MAAM,GAAG,OAAO,EAAE,WAAW,MAAkB,MAAZ,WAAiB,EAAE,SAAS,WAAc,EAAE,SAAS,UAAU,EAAE,MAAM,GAAG,GAAoB,GAAG,CAAC,GAAe,EAAE,WAAd,YAAsC,MAAb,aAAmB,EAAE,SAAS,SAAS,EAAE,MAAM,gBAAI,UAAU,sCAAsC,IAAI,UAAU,IAAI;EAAG,IAAI,IAAI,EAAS,GAAG,EAAE,UAAU,EAAE,GAAG;EAAG,IAAgB,EAAE,SAAd,SAAoB,OAAO,EAAE,SAAS,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,MAAM;EAAG,IAAI,IAAI,EAAE;EAAK,OAAO,IAAI,EAAE,QAAQ,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,SAAsB,EAAE,WAAf,aAA0B,EAAE,SAAS,QAAQ,EAAE,MAAM,IAAI,EAAE,WAAW,MAAM,KAAK,KAAK,EAAE,SAAS,SAAS,EAAE,MAAM,gBAAI,UAAU,kCAAkC,GAAG,EAAE,WAAW,MAAM;CAAI;CAAE,SAAS,GAAa,GAAG;EAAE,IAAI,IAAI,EAAE,QAAQ,EAAE,GAAG;EAAG,KAAK,MAAM,EAAE,WAAW,EAAE,KAAK,KAAK,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,KAAK,WAAW,KAAK,CAAC;CAAG;CAAE,SAAS,EAAc,GAAG;EAAE,IAAI,IAAI,EAAE,cAAc,CAAC;EAAG,EAAE,OAAO,UAAU,OAAO,EAAE,KAAK,EAAE,aAAa;CAAG;CAAE,SAAS,GAAQ,GAAG;EAAE,KAAK,aAAa,CAAC,EAAE,QAAQ,OAAO,CAAC,GAAG,EAAE,QAAQ,IAAc,IAAI,GAAG,KAAK,MAAM,CAAC,CAAC;CAAG;CAAE,SAAS,GAAO,GAAG;EAAE,IAAI,KAAY,MAAP,IAAU;GAAE,IAAI,IAAI,EAAE;GAAI,IAAI,GAAG,OAAO,EAAE,KAAK,CAAC;GAAG,IAAkB,OAAO,EAAE,QAAvB,YAA6B,OAAO;GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,IAAI,IAAI,IAAI,SAAS,IAAO;KAAE,OAAO,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,KAAK,GAAG,CAAC,GAAG,OAAO,EAAK,QAAQ,EAAE,IAAI,EAAK,OAAO,CAAC,GAAG;KAAM,OAAO,EAAK,QAAQ,GAAG,EAAK,OAAO,CAAC,GAAG;IAAM;IAAG,OAAO,EAAE,OAAO;GAAG;EAAE;EAAE,MAAU,UAAU,EAAQ,CAAC,IAAI,kBAAkB;CAAG;CAAE,OAAO,EAAkB,YAAY,GAA4B,EAAE,GAAG,eAAe;EAAE,OAAO;EAA4B,cAAc,CAAC;CAAE,CAAC,GAAG,EAAE,GAA4B,eAAe;EAAE,OAAO;EAAmB,cAAc,CAAC;CAAE,CAAC,GAAG,EAAkB,cAAc,EAAO,GAA4B,GAAG,mBAAmB,GAAG,EAAE,sBAAsB,SAAU,GAAG;EAAE,IAAI,IAAkB,OAAO,KAArB,cAA0B,EAAE;EAAa,OAAO,CAAC,CAAC,MAAM,MAAM,MAA8C,EAAE,eAAe,EAAE,UAA5C;CAAoD,GAAG,EAAE,OAAO,SAAU,GAAG;EAAE,OAAO,OAAO,iBAAiB,OAAO,eAAe,GAAG,CAA0B,KAAK,EAAE,YAAY,GAA4B,EAAO,GAAG,GAAG,mBAAmB,IAAI,EAAE,YAAY,OAAO,OAAO,CAAC,GAAG;CAAG,GAAG,EAAE,QAAQ,SAAU,GAAG;EAAE,OAAO,EAAE,SAAS,EAAE;CAAG,GAAG,EAAsB,GAAc,SAAS,GAAG,EAAO,GAAc,WAAW,GAAG,WAAY;EAAE,OAAO;CAAM,CAAC,GAAG,EAAE,gBAAgB,IAAe,EAAE,QAAQ,SAAU,GAAG,GAAG,GAAG,GAAG,GAAG;EAAE,AAAW,MAAX,KAAK,MAAY,IAAI;EAAU,IAAI,IAAI,IAAI,GAAc,EAAK,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;EAAG,OAAO,EAAE,oBAAoB,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,SAAU,GAAG;GAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK;EAAG,CAAC;CAAG,GAAG,EAAsB,CAAC,GAAG,EAAO,GAAG,GAAG,WAAW,GAAG,EAAO,GAAG,GAAG,WAAY;EAAE,OAAO;CAAM,CAAC,GAAG,EAAO,GAAG,YAAY,WAAY;EAAE,OAAO;CAAsB,CAAC,GAAG,EAAE,OAAO,SAAU,GAAG;EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,IAAI,CAAC;EAAG,KAAK,IAAI,KAAK,GAAG,EAAE,KAAK,CAAC;EAAG,OAAO,EAAE,QAAQ,GAAG,SAAS,IAAO;GAAE,OAAO,EAAE,SAAS;IAAE,IAAI,IAAI,EAAE,IAAI;IAAG,IAAI,KAAK,GAAG,OAAO,EAAK,QAAQ,GAAG,EAAK,OAAO,CAAC,GAAG;GAAM;GAAE,OAAO,EAAK,OAAO,CAAC,GAAG;EAAM;CAAG,GAAG,EAAE,SAAS,IAAQ,GAAQ,YAAY;EAAE,aAAa;EAAS,OAAO,SAAe,GAAG;GAAE,IAAI,KAAK,OAAO,GAAG,KAAK,OAAO,GAAG,KAAK,OAAO,KAAK,QAAQ,GAAG,KAAK,OAAO,CAAC,GAAG,KAAK,WAAW,MAAM,KAAK,SAAS,QAAQ,KAAK,MAAM,GAAG,KAAK,WAAW,QAAQ,CAAa,GAAG,CAAC,GAAG,KAAK,IAAI,KAAK,MAAM,AAAQ,EAAE,OAAO,CAAC,MAAlB,OAAuB,EAAE,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,MAAM,KAAK,KAAK;EAAI;EAAG,MAAM,WAAgB;GAAE,KAAK,OAAO,CAAC;GAAG,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;GAAY,IAAgB,EAAE,SAAd,SAAoB,MAAM,EAAE;GAAK,OAAO,KAAK;EAAM;EAAG,mBAAmB,SAA2B,GAAG;GAAE,IAAI,KAAK,MAAM,MAAM;GAAG,IAAI,IAAI;GAAM,SAAS,EAAO,GAAG,GAAG;IAAE,OAAO,EAAE,OAAO,SAAS,EAAE,MAAM,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,SAAS,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC;GAAG;GAAE,KAAK,IAAI,IAAI,KAAK,WAAW,SAAS,GAAG,KAAK,GAAG,EAAE,GAAG;IAAE,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,EAAE;IAAY,IAAe,EAAE,WAAb,QAAqB,OAAO,EAAO,KAAK;IAAG,IAAI,EAAE,UAAU,KAAK,MAAM;KAAE,IAAI,IAAI,EAAE,KAAK,GAAG,UAAU,GAAG,IAAI,EAAE,KAAK,GAAG,YAAY;KAAG,IAAI,KAAK,GAAG;MAAE,IAAI,KAAK,OAAO,EAAE,UAAU,OAAO,EAAO,EAAE,UAAU,CAAC,CAAC;MAAG,IAAI,KAAK,OAAO,EAAE,YAAY,OAAO,EAAO,EAAE,UAAU;KAAG,OAAO,IAAI,GAAS;UAAA,KAAK,OAAO,EAAE,UAAU,OAAO,EAAO,EAAE,UAAU,CAAC,CAAC;KAAA,OAAU;MAAE,IAAI,CAAC,GAAG,MAAM,MAAM,wCAAwC;MAAG,IAAI,KAAK,OAAO,EAAE,YAAY,OAAO,EAAO,EAAE,UAAU;KAAG;IAAE;GAAE;EAAE;EAAG,QAAQ,SAAgB,GAAG,GAAG;GAAE,KAAK,IAAI,IAAI,KAAK,WAAW,SAAS,GAAG,KAAK,GAAG,EAAE,GAAG;IAAE,IAAI,IAAI,KAAK,WAAW;IAAI,IAAI,EAAE,UAAU,KAAK,QAAQ,EAAE,KAAK,GAAG,YAAY,KAAK,KAAK,OAAO,EAAE,YAAY;KAAE,IAAI,IAAI;KAAG;IAAO;GAAE;GAAE,MAAkB,MAAZ,WAAgC,MAAf,eAAqB,EAAE,UAAU,KAAK,KAAK,EAAE,eAAe,IAAI;GAAO,IAAI,IAAI,IAAI,EAAE,aAAa,CAAC;GAAG,OAAO,EAAE,OAAO,GAAG,EAAE,MAAM,GAAG,KAAK,KAAK,SAAS,QAAQ,KAAK,OAAO,EAAE,YAAY,KAAK,KAAK,SAAS,CAAC;EAAG;EAAG,UAAU,SAAkB,GAAG,GAAG;GAAE,IAAgB,EAAE,SAAd,SAAoB,MAAM,EAAE;GAAK,OAAmB,EAAE,SAAd,WAAqC,EAAE,SAAjB,aAAwB,KAAK,OAAO,EAAE,MAAmB,EAAE,SAAf,YAAuB,KAAK,OAAO,KAAK,MAAM,EAAE,KAAK,KAAK,SAAS,UAAU,KAAK,OAAO,SAAsB,EAAE,SAAf,YAAuB,MAAM,KAAK,OAAO,IAAI;EAAG;EAAG,QAAQ,SAAgB,GAAG;GAAE,KAAK,IAAI,IAAI,KAAK,WAAW,SAAS,GAAG,KAAK,GAAG,EAAE,GAAG;IAAE,IAAI,IAAI,KAAK,WAAW;IAAI,IAAI,EAAE,eAAe,GAAG,OAAO,KAAK,SAAS,EAAE,YAAY,EAAE,QAAQ,GAAG,EAAc,CAAC,GAAG;GAAG;EAAE;EAAG,OAAS,SAAgB,GAAG;GAAE,KAAK,IAAI,IAAI,KAAK,WAAW,SAAS,GAAG,KAAK,GAAG,EAAE,GAAG;IAAE,IAAI,IAAI,KAAK,WAAW;IAAI,IAAI,EAAE,WAAW,GAAG;KAAE,IAAI,IAAI,EAAE;KAAY,IAAgB,EAAE,SAAd,SAAoB;MAAE,IAAI,IAAI,EAAE;MAAK,EAAc,CAAC;KAAG;KAAE,OAAO;IAAG;GAAE;GAAE,MAAM,MAAM,uBAAuB;EAAG;EAAG,eAAe,SAAuB,GAAG,GAAG,GAAG;GAAE,OAAO,KAAK,WAAW;IAAE,UAAU,GAAO,CAAC;IAAG,YAAY;IAAG,SAAS;GAAE,GAAc,KAAK,WAAhB,WAA2B,KAAK,MAAM,IAAI;EAAG;CAAE,GAAG;AAAG;AACx1R,SAAS,EAAmB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CAAE,IAAI;EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE;CAAO,SAAS,GAAG;EAAS,EAAO,CAAC;EAAf;CAAkB;CAAE,EAAE,OAAO,EAAE,CAAC,IAAI,QAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;AAAG;AACxK,SAAS,EAAkB,GAAG;CAAE,OAAO,WAAY;EAAE,IAAI,IAAI,MAAM,IAAI;EAAW,OAAO,IAAI,QAAQ,SAAU,GAAG,GAAG;GAAE,IAAI,IAAI,EAAE,MAAM,GAAG,CAAC;GAAG,SAAS,EAAM,GAAG;IAAE,EAAmB,GAAG,GAAG,GAAG,GAAO,GAAQ,QAAQ,CAAC;GAAG;GAAE,SAAS,EAAO,GAAG;IAAE,EAAmB,GAAG,GAAG,GAAG,GAAO,GAAQ,SAAS,CAAC;GAAG;GAAE,EAAM,KAAK,CAAC;EAAG,CAAC;CAAG;AAAG;AAChU,SAAS,EAAQ,GAAG,GAAG;CAAE,IAAI,IAAI,OAAO,KAAK,CAAC;CAAG,IAAI,OAAO,uBAAuB;EAAE,IAAI,IAAI,OAAO,sBAAsB,CAAC;EAAG,MAAM,IAAI,EAAE,OAAO,SAAU,GAAG;GAAE,OAAO,OAAO,yBAAyB,GAAG,CAAC,CAAC,CAAC;EAAY,CAAC,IAAI,EAAE,KAAK,MAAM,GAAG,CAAC;CAAG;CAAE,OAAO;AAAG;AAC9P,SAAS,EAAc,GAAG;CAAE,KAAK,IAAI,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;EAAE,IAAI,IAAY,UAAU,MAAlB,OAAsC,CAAC,IAAhB,UAAU;EAAS,IAAI,IAAI,EAAQ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;GAAE,EAAgB,GAAG,GAAG,EAAE,EAAE;EAAG,CAAC,IAAI,OAAO,4BAA4B,OAAO,iBAAiB,GAAG,OAAO,0BAA0B,CAAC,CAAC,IAAI,EAAQ,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;GAAE,OAAO,eAAe,GAAG,GAAG,OAAO,yBAAyB,GAAG,CAAC,CAAC;EAAG,CAAC;CAAG;CAAE,OAAO;AAAG;AACtb,SAAS,EAAgB,GAAG,GAAG,GAAG;CAAE,QAAQ,IAAI,GAAe,CAAC,MAAM,IAAI,OAAO,eAAe,GAAG,GAAG;EAAE,OAAO;EAAG,YAAY,CAAC;EAAG,cAAc,CAAC;EAAG,UAAU,CAAC;CAAE,CAAC,IAAI,EAAE,KAAK,GAAG;AAAG;AACnL,SAAS,EAAQ,GAAG;CAAE;CAA2B,OAAO,IAAwB,OAAO,UAArB,cAA2C,OAAO,OAAO,YAA1B,WAAqC,SAAU,GAAG;EAAE,OAAO,OAAO;CAAG,IAAI,SAAU,GAAG;EAAE,OAAO,KAAmB,OAAO,UAArB,cAA+B,EAAE,gBAAgB,UAAU,MAAM,OAAO,YAAY,WAAW,OAAO;CAAG,GAAG,EAAQ,CAAC;AAAG;AAC7T,SAAS,EAAgB,GAAG,GAAG;CAAE,IAAI,EAAE,aAAa,IAAI,MAAU,UAAU,mCAAmC;AAAG;AAClH,SAAS,EAAkB,GAAG,GAAG;CAAE,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;EAAE,IAAI,IAAI,EAAE;EAAI,EAAE,aAAa,EAAE,cAAc,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,WAAW,MAAM,EAAE,WAAW,CAAC,IAAI,OAAO,eAAe,GAAG,GAAe,EAAE,GAAG,GAAG,CAAC;CAAG;AAAE;AACvO,SAAS,EAAa,GAAG,GAAG,GAAG;CAAE,OAAO,KAAK,EAAkB,EAAE,WAAW,CAAC,GAAG,KAAK,EAAkB,GAAG,CAAC,GAAG,OAAO,eAAe,GAAG,aAAa,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG;AAAG;AAC1K,SAAS,GAAe,GAAG;CAAE,IAAI,IAAI,GAAa,GAAG,QAAQ;CAAG,OAAmB,EAAQ,CAAC,KAArB,WAAyB,IAAI,IAAI;AAAI;AAC5G,SAAS,GAAa,GAAG,GAAG;CAAE,IAAgB,EAAQ,CAAC,KAArB,YAA0B,CAAC,GAAG,OAAO;CAAG,IAAI,IAAI,EAAE,OAAO;CAAc,IAAe,MAAX,KAAK,GAAS;EAAE,IAAI,IAAI,EAAE,KAAK,GAAG,KAAK,SAAS;EAAG,IAAgB,EAAQ,CAAC,KAArB,UAAwB,OAAO;EAAG,MAAU,UAAU,8CAA8C;CAAG;CAAE,QAAqB,MAAb,WAAiB,SAAS,OAAA,CAAQ,CAAC;AAAG;AAC3T,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAgB,GAAG,GAAG;GAC3B,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,EAAE,KAAK,cAAc,EAAE,YAAY,GAAG,EAAE,gBAAgB,CAAC;EAC3D;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAgB,GAAG;IACxB,EAAE,YAAY;GAChB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,8BAA8B;GAC9C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG;IAC9B,IAAI,IAAI,EAAG,eAAe,GACxB,IAAI;KACF,WAAW;KACX,QAAQ,GAAG,OAAO,KAAK,MAAM,GAAG,sCAAsC;KACtE,QAAQ,EAAG,OAAO,KAAK,MAAM,CAAC;IAChC;IACF,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC;GACrD;EACF;CAAC,CAAC;AACJ,EAAE,GACE,IAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,IAAI,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,OAAO,SAAU,GAAG,GAAG;KAC5C,OAAO,EAAE,KAAK,IAAI;IACpB,GAAG,CAAC,CAAC;IACL,OAAO,OAAO,EAAE,OAAO,CAAC;GAC1B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqC,GAAG,GAAG;IAChD,EAAE,SAAS,EAAE,WAAW,GAAG,EAAE,KAAK,GAAG,EAAE,SAAS,EAAE,WAAW,GAAG,EAAE,KAAK;GACzE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG;IAC3C,EAAE,4BAA4B,GAAG,CAAC,GAAG,EAAE,WAAc,EAAE,WAAW,GAAG,EAAE,OAAU;GACnF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG;IACvC,IAAI,IAAI,EAAE,WAAc,CAAC,GACvB,IAAI,OAAO,OAAO,KAAK,MAAM,KAAK,UAAU,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAuB,KAAK;IAEpH,OAAO;KACL,SAAW;KACX,OAAO;KACP,OAJI,OAAO,OAAO,KAAK,MAAM,KAAK,UAAU,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAuB,KAItG;IACT;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,IAAI,IAAI;KACN,SAAW,CAAC;KACZ,OAAO,CAAC;KACR,OAAO,CAAC;IACV;IACA,OAAO,EAAE,QAAQ,SAAU,GAAG;KAC5B,EAAE,UAAa,OAAO,OAAO,EAAE,SAAY,EAAE,OAAU,GAAG,EAAE,QAAQ,OAAO,OAAO,EAAE,OAAO,EAAE,KAAK,GAAG,EAAE,QAAQ,OAAO,OAAO,EAAE,OAAO,EAAE,KAAK;IAC/I,CAAC,GAAG;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4C,GAAG,GAAG;IACvD,OAAO,KAAK,EAAE,WAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KACnD,IAAI,GACA,IAAI;KACR,EAAE,MAAM,OAAO,IAAI,EAAE,YAAe,QAAQ,EAAE,OAAO,EAAE,QAAW,KAAK,EAAE,MAAM;IACjF,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG;IAC7C,KAAK,IAAI,KAAK,GAAG;KACf,IAAI,IAAI,EAAE;KACV,EAAE,OAAO,MAAM,MAAM,EAAE,KAAK;IAC9B;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAuC,GAAG;GAC3C,QAAE,cAAc,EAAE,eAAe,EAAG,sBACxC;QAAI,IAAI,SAAS,qBAAqB,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,KAAK,EAAE,qBAAqB,MAAM,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KAChE,OAAO,EAAE,aAAa,MAAM,MAAM,EAAG;IACvC,CAAC,GAAG;KACF,IAAI,IAAI,SAAS,cAAc,MAAM;KACrC,EAAE,MAAM,cAAc,EAAE,OAAO,EAAG,UAAU,EAAE,YAAY,CAAC;IAC7D;GAN8C;EAOhD;CACF,CAAC,CAAC;AACJ,EAAE;AACF,GAAG,WAAW,4EAA4E,GAAG,sBAAsB;AACnH,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAe,GAAG,GAAG;IAC1B,IAAI,GAAG,IAAI;KACT,EAAG,gBAAgB,GAAG,CAAC;IACzB,QAAkB;KAChB,EAAG,gBAAgB,GAAG,CAAC;IACzB;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,IAAI,IAAI,IAAI,cAAc;IAC1B,EAAE,YAAY,CAAC,GAAG,EAAE,mBAAmB,KAAK,CAAC;GAC/C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,IAAI,IAAI,SAAS,cAAc,OAAO;IACtC,EAAE,YAAY,GAAG,EAAE,YAAY,CAAC;GAClC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsC,GAAG,GAAG;IACjD,KAAK,EAAE,yBAAyB,GAAG,CAAC,GAAG,EAAE,yBAAyB,GAAG,EAAG,uBAAuB;GACjG;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,0BAA0B;CAC3B,QAAQ;CACR,OAAO;CACP,QAAQ;CACR,YAAY,GAAG;CACf,UAAU;CACV,iBAAiB;CACjB,UAAU;CAKV,UAAU;AACZ;AACA,IAAI,KAAK,IACL,IAAmB,yBAAU,GAAG;CAChC,OAAO,EAAE,SAAS,UAAU,EAAE,QAAQ,SAAS,EAAE,MAAM,OAAO,EAAE,WAAW,WAAW,EAAE,aAAa,aAAa,EAAE,cAAc,cAAc,EAAE,aAAa,aAAa,EAAE,YAAY,aAAa,EAAE,SAAS,UAAU,EAAE,OAAO,QAAQ,EAAE,UAAU,WAAW;AACtQ,EAAE,KAAK,CAAC,CAAC,GACT,KAC0B,gBAAa,SAAS,IAAK;CACrD,EAAgB,MAAM,CAAE;AAC1B,CAAC,GAFG,MAEA,GAAG,YAAY,iCAAiC,KAAK,UAAU,SAAS,GAAG,GAAG,cAAc,OAAO,QAAQ,KAC3G,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAEA,SAAa,GAAG,GAAG,GAAG,GAAG;IACvB,MAAM,KAAK,KAAK,EAAE,iBAAiB,WAAW,EAAG,UAAU,KAAK,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,EAAG,QAAQ,KAAK,MAAM,GAAG,CAAC,GAAG,EAAE,iBAAiB,SAAS,SAAU,GAAG;KAC3J,IAAI;KACJ,EAAE,eAAe,IAAI,IAAI,EAAE,kBAAkB,QAAQ,EAAE,MAAM,UAAU,EAAE,kBAAkB,MAAM,KAAK,EAAE,cAAc,KAAK,CAAC;IAC9H,CAAC;GACH;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG;IAC9B,IAAI,IAAI,EAAE,OAAO;IACjB,KAAK,EAAE,UAAU,KAAK,CAAC,EAAG,eAAe,IAAI,EAAE,GAAG,KAAK,CAAC,EAAG,0BAA0B,CAAC,KAAK,EAAE,eAAe;GAC9G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmC,GAAG;IAC3C,OAAO,EAAE,QAAQ,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC;GACnD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG,GAAG;IAC/B,IAAI,IAAI,EAAE,QACR,IAAI,EAAE,eAAe;IACvB,MAAM,KAAK,KAAK,EAAE,SAAS,MAAM,EAAE,cAAc,EAAE,UAAU,GAAG,CAAC,GAAG,GAAG,gBAAgB,CAAC,IAAI,IAAe;GAC7G;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,iCAAgC,IAAI,IAAI;CAAC,EAAE;CAAW,EAAE;CAAQ,EAAE;CAAa,EAAE;CAAY,EAAE;CAAY,EAAE;CAAU,EAAE;CAAM,EAAE;CAAS,EAAE;AAAK,CAAC;AACrJ,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAmC,GAAG;GAC3C,IAAO;GACP,EAAE,eAAe;GACjB,IAAI,IAAS,EAAE,eAAoC,QAAQ,YAAY;GACvE,OAAO,IAAI,SAAS,gBAAgB,QAAQ,EAAE,KAAK,UAAU,cAAc,CAAC,GAAG,CAAC;EAClF;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAiB,yBAAY;CAC/B,SAAS,EAAE,GAAG,GAAG,GAAG;EAClB,IAAI,IAAQ;EACZ,EAAgB,MAAM,CAAC;EACvB,IACI,IAAI,EAAE,cAAc,GAAG,EAAE,SAAS;EACtC,KAAK,aAAa,EAAE,uBAA4B,GAAuB,QAA6B,SAAS,GAAG,KAAK,kBAAkB,KAAK,mBAAmB,CAAC,GAAG,KAAK,UAAU,GAAG,KAAK,WAAW,YAAY,KAAK,eAAe,GAAG,EAAE,qBAAqB,KAAK,mBAAmB,KAAK,MAAM,CAAC,GAAG,EAAE,mBAA8B,EAAE,WAAgC,aAAkC,QAAS,kBAAkB,GAAG,WAAW,WAAY;GAE7b,GAAG,IAAI,EAAM,iBAAiB,GAAQ,EAAE,WAAgC,gBAAgB,EAAE,kBAAkB;EAC9G,CAAC;CACH;CACA,OAAO,EAAa,GAAG;EAAC;GACtB,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IACI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,UAAU,IAAI,sBAAsB,EAAE,sBAAsB,GAAG,GAAG,eAAe,EAAE,kCAAkC,CAAC,GAAG,OAAQ,GAAuB,YAAa,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE,kBAAkB,SAAS,EAAE,UAAU,IAAI,qBAAqB,MAAM,EAAE,kBAAkB,QAAQ,KAAK,kBAAkB,GAAG,CAAC,IAAI,OAAO,OAAO,EAAE,OAAY,GAAuB,QAA6B,IAAI,GAAG,OAAO,OAAO,EAAE,OAAY,GAAuB,aAAkC,KAAK,GAAG;GACjiB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmC;IACxC,IAAI;IACJ,KAAK,gBAAgB,UAAU,SAAS,EAAE,sBAAsB,KAAK,CAAC,KAAK,gBAAgB,UAAU,SAAS,qBAAqB,OAAO,IAAI,KAAK,QAAQ,gBAAgB,QAAQ,EAAE,UAAU,EAAE,WAAW,KAAK,iBAAsB,KAAK,QAAQ,aAAkC,KAAK,GAAG,OAAO,OAAO,KAAK,gBAAgB,OAAiB,KAAK,SAA8B,QAA6B,IAAI,IAAI,EAAE,MAAM,KAAK,eAAe,GAAG,KAAK,gBAAgB,UAAU,OAAO,EAAE,sBAAsB;GACzf;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,IAAO;IACP,EAAE,UAAU,KAAK,QAAQ,KAAK,MAAW,GAAuB,QAA6B,KAAK,IAAI,IAAI,GAAuB,WAAW,QAAQ,EAAE,UAAU,EAAE,SAAS,KAAK,OAAO,KAAK,MAAM,EAAE,OAAO,OAAY,GAAuB,QAA6B,SAAS,IAAI,EAAE,iBAAiB,WAAW,KAAK,UAAU,KAAK,IAAI,CAAC,GAAG,EAAE,iBAAiB,SAAS,GAAG,yBAAyB;GAC5Y;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,IAAI,IAAS;IACb,GAAG,YAAY,WAAW,WAAY;KACpC,EAAO,wBAAwB;IACjC,CAAC,IAAI,KAAK,wBAAwB,GAAG,OAAO,OAAO,KAAK,WAAW,OAAO,CAAC;GAC7E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG;IAC3B,EAAE,WAAW,KAAK,YAAY,CAAC,GAAG,KAAK,OAAO,OAAO,KAAK,WAAW,OAAO,CAAC;GAC/E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG;IAC3B,IAAI;IACJ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,EAAE,aAAa,EAAE,eAAe,IAAI,IAAI,KAAK,WAAW,QAAQ,EAAE,KAAK,IAAI;GACjH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,SAAS,kBAAkB,MAAM,KAAK,gBAAgB,gBAAgB,MAAM,KAAK,gBAAgB,UAAU,IAAI,EAAE,sBAAsB,GAAG,KAAK,gBAAgB,UAAU,SAAS,EAAE,sBAAsB,MAAM,KAAK,gBAAgB,cAAc;GACrP;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IACI;IACJ,OAAA,AAAoD,MAAI,CAAC,GAAkB,EAAE,aAA6D,EAAE,WAAW,EAAE,sBAAuC,EAAE,gBAAsE,EAAE,cAAc,CAAC,KAAe,IAAI,EAAE,YAAA,CAAa,SAAiD,EAAE,OAAO,EAAE,2BAA0B;GACnZ;EAMF;EAAG;GACD,KAAK;GACL,OAAO,SAA2C,GAAG;IACnD,IAAI;IACJ,EAAE,iBAAiB,WAAW,WAAY;KACxC,IAAI,OAAO;IACb,CAAC,GAAG,EAAE,iBAAiB,SAAS,WAAY;KAC1C,MAAM,OAAO,WAAW,OAAO,SAAS,EACtC,KAAK,EACP,CAAC;IACH,CAAC;GACH;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAe,GAAG;IACvB,IAAI,IAAI,OAAO;IACf,EAAE,UAAU,SAAS,qBAAqB,MAAM,EAAE,cAAc,KAAK,GAAG,eAAe,OAAO,SAAS,EACrG,KAAK,EACP,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,EAAE,kBAAkB,IAAI,SAAS;GACnC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG;IACxC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,wBAAwB,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG;GACnE;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAE,gBAAgB,cAAc,GAAE,yBAAyB;AAC3D,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAyB,GAAG;GACjC,IAAI,IAAI,SAAS,YAAY;GAC7B,EAAE,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;GACtC,IAAI,IAAI,OAAO,aAAa;GAC5B,GAAe,gBAAgB,GAAG,GAAe,SAAS,CAAC;EAC7D;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAgC,GAAG;GACxC,IAAI,IAAI,EAAE,cAAc,IAAW,GAAG,eAAc;GACpD,KAAK,EAAG,gBAAgB,CAAC;EAC3B;CACF,CAAC,CAAC;AACJ,EAAE;AACF,SAAS,GAAG,GAAG;CACb,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,MAAM,CAAC;AAC9C;AACA,SAAS,GAAG,GAAG;CACb,OAAO,KAAK,KAAK,UAAU,CAAC;AAC9B;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CAGtB,OAFQ;EAAY,GAAG,CAAC,cAAwB,KAAK,UAAU,CAAC;KAC1D,IAAI,GAAU,GAAG,CAAC,gCAA0C,GAAG,CAAC;IAAY;AAEpF;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,OAAO,GAAU,GAAG,GAAG,GAAG,GAAG,CAAC,kBAA4B;;AAC5D;AACA,SAAS,GAAG,GAAG,GAAG,GAAG;CACnB,IAAI,IAAI;CACR,OAAO,GAAU,GAAG,GAAG,GAAG,GAAG,CAAC,kBAA4B;AAC5D;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,IAAI;CACR,OAAO,GAAU,GAAG,GAAG,GAAG,CAAC,kBAA4B;AACzD;AACA,IAAI,KAAK,yMACP,IAAI;CACF,aAAa;CACb,mBAAmB;CACnB,kBAAkB;CAClB,uBAAuB;CACvB,wBAAwB;CACxB,sBAAsB;CACtB,0BAA0B;CAC1B,6BAA6B;EAA6C;AAC5E,GACA,KAAkB,yBAAY;CAC5B,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAqB,GAAG;IAI7B,IAFgB,kBAEhB,CAAA,CAAE,QAAQ,SAAU,GAAG;KACrB,OAAO,EAAE,YAAY,CAAC;IACxB,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsC,GAAG;IAC9C,IAAI,IAAI,EAAE,cACR,IAAI,EAAE;IAGR,OAFM,EAAE,aACF,IAAI,IACM,EAAG;GACrB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,IAAI,IAAI,EAAE,UAAU,CAAC,CAAC;IACtB,OAAO,EAAE,WAAW,aAAa,GAAG,CAAC,GAAG;GAC1C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,EAAE,YAAY,EAAE;GAClB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,EAAE,YAAY;GAChB;EACF;CAAC,CAAC;AACJ,EAAE;AACJ,GAAG,+BAA+B;AAClC,IAAI,IAAI,IACJ,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAe,GAAG,GAAG;GAC1B,IAAI,OAAO,0BAA0B;IACnC,IAAI,IAAI,IAAI,yBAAyB,CAAC;IACtC,OAAO,OAAO,GAAG,CAAC,GAAG,gBAAgB,MAAM,CAAC;GAC9C;EACF;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAuB,GAAG,GAAG;GAClC,IAAI,IAAI,CAAC;GACT,WAAW,WAAY;IACrB,IAAI,EAAQ,CAAC,KAAK,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY;KACxK,IAAI,IAAI,OAAO,gBAAgB,UAAU,CAAC,CAAC,KAAK,SAAU,GAAG;MAE3D,OAAO,EAAE,KAAK,kBAAkB,MAAY,EAAE,WAAgC,kBAAkB;KAClG,CAAC;KACD,MAAM,EAAE,QAAQ;IAClB;IACA,EAAE,CAAC;GACL,GAAG,EAAG,cAAc;EACtB;CACF,CAAC,CAAC;AACJ,EAAE;AACF,GAAG,iBAAiB;AACpB,IAAI,KAAK,IACL,IAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,IAAI,IAAI,EAAE;IACV,MAAM,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG,QAAQ,MAAM,iEAAiE,GAAG,QAAQ,MAAM,2FAA2F;GAC9N;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG;IACxC,OAAO,QAAQ,MAAM,4EAA4E,GAAG,QAAQ,MAAM,4FAA4F,GAAG,EAAE;GACrN;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,IAAI,IAAI,EAAE;IACV,IAAI,GAAG,OAAO,QAAQ,MAAM,iEAAiE,GAAG,QAAQ,MAAM,kGAAkG,GAAG;GACrN;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IAAI,IAAI,EAAE;IACV,MAAM,QAAQ,MAAM,yEAAyE,GAAG,QAAQ,MAAM,qGAAqG,GAAG,EAAE,QAAQ,CAAC,CAAC;GACpO;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,IAAI,IAAI,EAAE;IACV,IAAI,GAAG,OAAO,QAAQ,MAAM,+EAA+E,GAAG,QAAQ,MAAM,4FAA4F,GAAG;GAC7N;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG;IAC1C,OAAO,QAAQ,MAAM,6FAA6F,GAAG,QAAQ,MAAM,mGAAmG,GAAG,EACvO,MAAM,EACR;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,IAAI;IACJ,CAAC,IAAI,EAAE,SAAS,OAAO,QAAQ,EAAE,UAAU,SAAS,0BAA0B,MAAM,QAAQ,MAAM,gFAA8E,GAAG,QAAQ,MAAM,kGAAkG;GACrS;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,IAAI,IAAI;IACR,EAAE,YAAY,EAAE,UAAU,OAAO,OAAO,EAAE,SAAS,EAAE,OAAO,IAAI,EAAE,UAAU,EAAE,SAAS,QAAQ,MAAM,yDAAyD,GAAG,QAAQ,MAAM,4EAA4E;GAC7P;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,IAAI,IAAI,EAAE;IACV,IAAI,GAAG,OAAO,QAAQ,MAAM,4EAA4E,GAAG,QAAQ,MAAM,4EAA4E,GAAG;GAC1M;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG;IACrC,IAAI,GACA,IAAI;IACR,EAAE,iBAAiB,QAAQ,MAAM,iEAAiE,GAAG,QAAQ,MAAM,4EAA4E,IAAI,IAAI,EAAE,iBAAiB,QAAQ,EAAE,KAAK,GAAG,CAAC,IAAI,EAAE,cAAc,IAAI,YAAY,eAAe,EAC9R,QAAQ,EACV,CAAC,CAAC;GACJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG;IAC1C,IAAI,IAAI;IACR,EAAE,YAAY,QAAQ,MAAM,+EAA+E,GAAG,QAAQ,MAAM,0EAA0E,GAAG,AAAc,EAAE,YAAU,EAAE;GACvO;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAK,ymEACP,KAAK,smFACL,KAAkB,yBAAY;CAC5B,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAc,GAAG;IACtB,IAAI;IACJ,CAAC,IAAI,EAAE,uBAAuB,EAAG,eAAe,CAAC,CAAC,EAAE,CAAC,MAAA,CAAO,eAAe,EAAE,aAAa;GAC5F;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqC,GAAG,GAAG,GAAG;IACnD,OAAO,OAAO,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,OAAO,EAAE,OAAO,EAAE,MAAM;GACtE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG,GAAG;IAC5C,IAAI,GAAG,GAAG;IACV,KAAK,IAAI,EAAE,YAAe,QAAQ,EAAE,UAAU,EAAG,4BAA4B,GAAG,GAAG,EAAE,QAAW,MAAM,GAAG,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,SAAS,QAAQ,EAAE,UAAU,EAAG,4BAA4B,GAAG,GAAG,EAAE,KAAK,MAAM;SAAO;KACvN,CAAC,IAAI,EAAE,OAAO,QAAQ,EAAE,UAAU,EAAG,4BAA4B,GAAG,GAAG,EAAE,GAAG,MAAM;KAClF,IAAI,IAAS,EAAE,EAAA,EAAyB;KACxC,KAAK,EAAG,4BAA4B,GAAG,GAAG,CAAC;IAC7C;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG;IACjC,IACI,IAAI,SAAS,cAAc,KAAK;IACpC,AAAuK,EAAE,MAAzK,MAAM,EAAE,YAA0B,GAAuB,MAA2B,OAAc,GAAuB,SAAiC,OAAQ,KAAmB,IAAuB,EAAA,EAAyB,OAAc,GAAuB,IAAyB,OAAc,GAAuB,SAAiC,OAAQ,IAAI,EAAE,UAAU,IAAI,QAAQ;IAC7Y,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,EAAG,eAAe,GAAG,EAAE,YAAY,CAAC,GAAG,KAAK,EAAG,kBAAkB,GAAG,GAAG,GAAG,CAAC,GAAG;GACvG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAEI,IAAc,IAAuB,EAAA,EAAyB,QAA6B;IAC/F,OAAO,MAAM,EAAE,cAAA,AAA2D,MAAc,GAAuB,IAAyB,QAA6B,WAAA,AAAwD,MAAc,GAAuB,SAAiC,QAA6B,UAAA,AAAuD,MAAI,MAAM,EAAE,YAAY,UAAU,QAAQ;GACna;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG,GAAG;IAC3B,IAAI,IAAI,OAAO,KAAK,YAAY,KAAK,IAAI,GACvC,IAAI,EAAG,aAAa,GAAG,CAAC,GACxB,IAAI,EAAG,YAAY,GAAG,CAAC;IACzB,EAAE,UAAU,IAAI,MAAM,SAAS,uBAAuB,qBAAqB,GAAG,EAAE,sBAAsB,MAAM,SAAS,gBAAgB,YAAY,CAAC;GACpJ;EACF;CAAC,CAAC;AACJ,EAAE;AACJ,GAAG,kBAAkB;AACrB,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAc,GAAG;IACtB,IAAI;IACJ,CAAC,IAAI,EAAE,uBAAuB,EAAG,UAAU,CAAC,CAAC,EAAE,CAAC,MAAA,CAAO,eAAe,EAAE,aAAa;GACvF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAEI,IAAS,IAAuB,EAAA,EAAyB;IAC7D,OAAO,MAAM,EAAE,cAAA,AAA2D,MAAS,GAAuB,IAAyB,WAAA,AAAwD,MAAS,GAAuB,SAAiC,UAAA,AAAuD,MAAI,MAAM,EAAE,YAAY,UAAU,QAAQ;GAC/V;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG,GAAG;IAElC,OAAO,OAAO,EAAE,OAAY,EAAE,SAAiC,KAAK,GAAG,MAAM,EAAE,YAAY,OAAO,OAAO,EAAE,OAAY,EAAE,MAA2B,KAAK,KAAK,OAAO,OAAO,EAAE,OAAY,EAAE,IAAyB,KAAK,GAAG,OAAO,OAAO,EAAE,OAAY,EAAE,EAAA,EAAyB,KAAK;GAC3R;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAEhC,OAAO,MAAM,EAAE,YAAkB,EAAE,MAA2B,QAAe,EAAE,SAAiC,QAAS,SAAS,MAAM,EAAE,UAAgB,EAAE,IAAyB,QAAe,EAAE,SAAiC,QAAS,OAAa,EAAE,EAAA,EAAyB,QAAe,EAAE,SAAiC,QAAS;GACrV;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,EAAG,UAAU,GAAG,EAAE,cAAc,EAAG,YAAY,GAAG,CAAC,GAAG,EAAG,WAAW,GAAG,GAAG,CAAC,GAAG;GACvG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG,GAAG;IAC3B,IAAI,IAAI,OAAO,KAAK,YAAY,CAAC,IAAI,GACnC,IAAI,EAAG,WAAW,GAAG,CAAC,GACtB,IAAI,EAAG,YAAY,GAAG,CAAC;IACzB,EAAE,UAAU,IAAI,MAAM,SAAS,uBAAuB,qBAAqB,GAAG,EAAE,sBAAsB,MAAM,SAAS,gBAAgB,YAAY,CAAC;GACpJ;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,aAAa;AAChB,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG,GAAG;IAgB9C,KAAK,IAfD,IAAQ,WAAiB;KACzB,IAAI,IAAI,EAAE;KACV,IAAI,EAAE,cAAc,UAAU,SAAS,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;MAC5E,OAAO,CAAC,EAAE,cAAc,UAAU,SAAS,CAAC;KAC9C,CAAC,GAAG;UAAI,GACF;WAAA,CAAC,EAAE,KAAK,SAAU,GAAG;QACvB,OAAO,EAAE,cAAc,UAAU,SAAS,CAAC;OAC7C,CAAC,GAAG,OAAO,EACT,GAAG,EACL;MAAA,OACK,OAAO,EACZ,GAAG,EACL;KAAA;IACF,GACA,GACO,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,KAEjC,IADA,IAAO,EAAM,GACT,GAAM,OAAO,EAAK;GAE1B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG;IACtC,KAAK,IAAI,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,KAAQ,IAAI,EAAE,EAAE,CAAC,SAAS,GAAG;SAAI,GAC9D;UAAA,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE;KAAA,OACjB,OAAO,EAAE;IAAA;GAClB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,KAAK,IAAI,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,KAAQ,IAAI,EAAE,EAAE,CAAC,OAAO,GAAG,OAAO,EAAE;GACzE;EAIF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;IACjD,IAAI,IAAI,EAAG,uBAAuB,GAAG,CAAC,EAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,GACpF,IAAI,EAAG,eAAe,GAAG,GAAG,CAAC;IAC/B,OAAO,MAAM,EAAE,KAAK,IAAI;GAC1B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO,GAAU;GACnB;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,EAAE,KAAK,CAAC,CAAC,WAAW,MAAM,EAAE,UAAU,IAAI,EAAG,mBAAmB,GAAG,EAAE,YAAY;GACnF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmC,GAAG,GAAG;IAC9C,EAAE,UAAU,SAAS,EAAG,mBAAmB,KAAK,EAAE,KAAK,CAAC,CAAC,SAAS,KAAK,EAAE,gBAAgB;GAC3F;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqC,GAAG;IAE7C,OAAO,MAAM,KAAqB,EAAG,sBAAsB,CAAC,CAAA,EAAwB,WAA+B,EAAA,EAAyB,YAAa,CAAC,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KAC7K,OAAO,EAAE,UAAU,SAAS,gBAAgB;IAC9C,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,OAAO,EAAE,SAAS,EAAE,SAAS,SAAS;GACxC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG,GAAG;IAC1C,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC;GAC3C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG,GAAG;IACxC,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;IACxB,KAAK,GAAG,KAAK,CAAC,GAAG,KAAK,GAAG,KAAK,CAAC;GACjC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG,GAAG;IACpC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;GAC7B;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,UAAU,MAAM,GAAG,YAAY,QAAQ,GAAG,sBAAsB;AACnE,IAAI,IAAI,IACJ,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG;IAC5B,EAAE,uBAAuB,GAAG,CAAC,GAAG,OAAO,OAAO,EAAE,OAAO,EAAE,OAAU,GAAG,OAAO,OAAO,EAAE,OAAO,EAAE,KAAK;GACtG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG;IAC9B,OAAO,OAAO,EAAE,OAAO,EAAE,KAAK;GAChC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,EAAE,uBAAuB,GAAG,CAAC,GAAG,OAAO,OAAO,EAAE,OAAO,EAAE,OAAU;GACrE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,OAAO,OAAO,EAAE,OAAO,EAAE,KAAK;GAChC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG;IACxB,EAAE,iBAAiB,cAAc,EAAG,WAAW,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,iBAAiB,cAAc,EAAG,WAAW,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,iBAAiB,aAAa,EAAG,UAAU,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,iBAAiB,WAAW,EAAG,QAAQ,KAAK,MAAM,GAAG,CAAC,CAAC;GAC/P;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAK,+BACP,KAAK,+BACL,KAAK,EACH,oBAAoB,EAClB,QAAQ;CACN,SAAW;EACT,iBAAiB;EACjB,SAAS;EACT,aAAa;EACb,cAAc;EACd,QAAQ;EACR,cAAc;EACd,QAAQ;CACV;CACA,OAAO,EACL,iBAAiB,UACnB;CACA,OAAO,EACL,iBAAiB,UACnB;AACF,EACF,EACF,GACA,KAAK,OAAO,KAAK,EAAE,GACjB,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,WAAW,WAAY;KACrB,EAAE,iBAAiB,SAAS,WAAY;MACtC,IAAO;MACP,CAAC,IAAI,EAAE,sBAAsB,QAAQ,EAAE,KAAK,GAAG,EAC7C,MAAY,EAAE,aAAkC,KAAK,KAAM,GAC7D,CAAC;KACH,CAAC;IACH,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IAEpC,OAAO,IAAS,EAAE,cAAc,SAAS,EAAA,EAAyB,UAAU,SAAS,EAAE,IAAI,CAAC;GAC9F;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyC,GAAG;IACjD,OAAO,GAAG,KAAK,SAAU,GAAG;KAC1B,OAAO,EAAE,UAAU,SAAS,CAAC;IAC/B,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KACxC,EAAE,iBAAiB,GAAG,IAAuB,EAAE;IACjD,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAC1C,IAAI,IAAI,MAAM,KAAK,EAAE,SAAS,CAAC,CAAC,OAAO,SAAU,GAAG,GAAG;KACnD,IACI,IAAS,EAAE,EAAA,EAAyB;KACxC,OAAO,KAAK,EAAE,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG;IACxC,GAAG,CAAC,CAAC,GACL,IAAI,GAAG,EAAE,CAAC;IACZ,IAAI,GAAG;KACL,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC;KACpC,EAAE,WAAc,EAAE,mCAAmC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC;IACzE;IACA,IAAI,IAAI,EAAE,oBAAoB,CAAC;IAC/B,OAAO,EAAE,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC;GACpC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG,GAAG;IAC9C,GAAG,QAAQ,SAAU,GAAG;KACtB,IAAI,IAAI,EAAE,uBAAuB,CAAC;KAClC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;MACvC,IAAI,IAAI,EAAG,mBAAmB,GAAG,GAAG,CAAC;MACrC,GAAG,qBAAqB,GAAG,CAAC,GAAG,EAAG,YAAY,GAAG,CAAC;KACpD,CAAC;IACH,CAAC;IACD,IAAI,IAAI,EAAE,uBAAuB,EAAE;IACnC,MAAM,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KACjC,OAAO,EAAG,qBAAqB,GAAG,CAAC;IACrC,CAAC;GACH;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IAAI,IAAI,EAAE,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,GAAG,IAAI,GAAG,CAAC,GAAG,OAAO,OAAO,EAAE,OAAO,EAAE,OAAU;GACnD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KAClC,IAAI,IAAI,EAAE;KACV,KAAK,EAAE,iBAAiB,GAAG,CAAC;IAC9B,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsC,GAAG,GAAG;IACjD,IAAI,IAAI,EAAE,QACR,IAAI,EAAE;IACR,KAAK,EAAG,qBAAqB,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,gCAAgC,CAAC,KAAK,EAAG,qBAAqB,GAAG,CAAC;GACjH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmC,GAAG,GAAG;IAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KAClC,IAAI,IAAI,EAAE,uBAAuB,CAAC;KAClC,MAAM,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;MACjC,EAAE,MAAM,EAAG,6BAA6B,GAAG,EAAE,EAAE;KACjD,CAAC;IACH,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAe,GAAG,GAAG;IAC1B,GAAG,uBAAuB,GAAG,EAAE,oBAAoB,CAAC,GAAG,EAAG,0BAA0B,EAAE,oBAAoB,CAAC;GAC7G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,EAAE,aAAa,KAAK,gBAAgB,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,WAAW,QAAQ,SAAU,GAAG;KACzF,EAAG,cAAc,GAAG,CAAC;IACvB,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG;IAC3B,IAAI,IAAI,IAAI,UAAU,CAAC,CAAC,gBAAgB,GAAG,WAAW,GACpD,IAAI,CAAC;IACP,OAAO,EAAE,KAAK,WAAW,QAAQ,SAAU,GAAG;KAC5C,EAAG,cAAc,GAAG,CAAC;IACvB,CAAC,GAAG;GACN;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,EAAE,WAAW,YAAY,CAAC,GAAG,EAAE,WAAW,YAAY,EAAE,WAAW;GACrE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG,GAAG;IACzC,IAAI,IAAI,EAAE,mCAAmC,IAAI,GAAG,CAAC;IACrD,OAAO,EAAE,cAAc,UAAU,IAAI,cAAc,GAAG,EAAE,cAAc,YAAY,GAAG;GACvF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,GAAG,GAAG;IACpC,IAAI,IAAI,EAAE,UACR,IAAI,EAAE,iBAAiB,GAAG,GAAG,GAAG,GAAG,QAAQ,cAAc;IAC3D,OAAO,MAAM,EAAE,cAAc,YAAY,GAAG,GAAG,MAAM,GAAG,EAAE,cAAc,GAAG,EAAG,oBAAoB,EAAE,aAAa,IAAI;GACvH;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG,GAAG,GAAG,GAAG;IACjC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;IAEvE,IAAI,KAAK,QAAQ,EAAE,QAAQ;KACzB,IAAI,IAAI,KAAK,UAAU,GAAG,GAAG,GAAG,CAAC;KACjC,IAAI,GAAG,OAAO;KACd,EAAE,SAAS,CAAC;IACd;IACA,IAAI,IAAI,EAAG,eAAe,GAAG,GAAG,GAAG,CAAC;IACpC,OAAO,EAAE,wBAAwB,EAAE,eAAe,CAAC,GAAG,GAAG,MAAM,GAAG,EAAE,cAAc,GAAG,EAAG,oBAAoB,EAAE,aAAa,GAAG,EAAE,kBAAkB,GAAG,GAAG,CAAC,GAAQ,EAAE,eAAoC,IAAI,GAAG,KAAK,EAAG,WAAW,GAAG,EAAE,cAAc,GAAG;GACzP;EACF;CAAC,CAAC;AACJ,EAAE,GACE;AACJ,SAAS,GAAG,GAAG;CACb,OAAO,OAAW,SAAS,cAAc,UAAU,GAAG,GAAG,YAAY,MAAM,IAAI,KAAK,GAAG;AACzF;AACA,IAAI,KAAK,OAAO,UAAU;AAC1B,SAAS,GAAG,GAAG,GAAG;CAChB,OAAO,IAAI,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC;AAC9B;AACA,SAAS,GAAG,GAAG;CAEb,OADQ,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAC1B,CAAC,CAAC,QAAQ,SAAU,GAAG;EAC5B,IAAI,GAAG;GACL,IAAI,EAAQ,CAAC,KAAK,UAAU,MAAU,UAAU,IAAI,gBAAgB;GACpE,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;IAClC,EAAE,KAAK,EAAE;GACX,CAAC;EACH;CACF,CAAC,GAAG;AACN;AACA,IAAI,KAAK;AACT,SAAS,GAAG,GAAG;CACb,OAAO,EAAE,QAAQ,IAAI,IAAI,IAAI,IAAI,EAAE,QAAQ,IAAI,IAAI;AACrD;AACA,SAAS,GAAG,GAAG;CACb,OAAO,EAAE,KAAK,SAAS,KAAK,SAAS,KAAK,SAAS,KAAK,UAAU,IAAI,UAAW,UAAU,IAAI,UAAW,SAAS,KAAK,KAAK,KAAK,KAAK,MAAM,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,OAAO,KAAK,OAAO,IAAI;AACvM;AACA,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,OAAO;EACb,KAAK;EACL,IAAI,IAAI,SAAS,KAAK,KACpB,IAAI,SAAS,IAAI;EACnB,OAAO,OAAO,aAAa,GAAG,CAAC;CACjC;CACA,OAAO,OAAO,aAAa,CAAC;AAC9B;AACA,IAAI,KAAK,8BACP,KAAK;AACP,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,IAAI,GACN,IAAI,GAAG,CAAC;CACV,OAAO,MAAM,IAAQ,EAAE,WAAW,CAAC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,YAAY,MAAM,MAAM,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,IAApJ;AACnB;AACA,SAAS,EAAG,GAAG;CACb,OAAO,EAAE,QAAQ,GAAG,IAAI,IAAI,IAAI,EAAE,QAAQ,IAAI,EAAE;AAClD;AACA,IAAI,KAAK,UACP,KAAK,WACL,KAAK;CACH,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAK;AACP;AACF,SAAS,GAAG,GAAG;CACb,OAAO,GAAG;AACZ;AACA,SAAS,EAAE,GAAG;CACZ,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,IAAI;AAC1C;AACA,IAAI,IAAI,CAAC;AACT,EAAE,kBAAkB,WAAY;CAC9B,OAAO;AACT,GACA,EAAE,mBAAmB,SAAU,GAAG,GAAG;CACnC,OAAO,kBAAkB,GAAG,GAAG,CAAC;AAClC,GACA,EAAE,OAAO,SAAU,GAAG,GAAG;CACvB,OAAO,EAAE,EAAE,CAAC,QAAQ,gBAAgB,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,kBAAkB,GAAG,GAAG,CAAC,IAAI,WAAW,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI;AAClH,GACA,EAAE,QAAQ,SAAU,GAAG,GAAG,GAAG,GAAG,GAAG;CACjC,IAAI,IAAI,EAAE,IACR,IAAI,IACJ,IAAI,EAAE,YACN,IAAI,IACJ,GACA,GACA;CACF,IAAI,EAAE,QAAQ;EACZ,IAAI,IAAI,EAAE,OAAO,MAAM,MAAM,GAAG,IAAI,EAAE,KAAK,GAAG,GAAG,GAAG,EAAE,MAAM,cAAc,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,aAAa,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;EAChI,IAAI,EAAE,EAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,cAAa,IAAI,IAAI;CAC7C;CACA,OAAO,AAA0F,IAA1F,EAAE,aAAgB,EAAE,UAAU,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAwB,EAAE,EAAE,OAAO,GAAG,eAAe,IAAI,MAAM,IAAI,kBAAkB,GAAG,GAAG,CAAC;AAC3K,GACA,EAAE,eAAe,CAAC,GAClB,EAAE,eAAe,SAAU,GAAG,GAAG;CAC/B,OAAO,OAAO,EAAE,EAAE,CAAC,SAAS;AAC9B,GACA,EAAE,gBAAgB,SAAU,GAAG,GAAG;CAChC,OAAO,QAAQ,EAAE,EAAE,CAAC,SAAS;AAC/B,GACA,EAAE,KAAK,SAAU,GAAG,GAAG,GAAG;CACxB,QAAQ,EAAE,WAAW,WAAW,UAAU,GAAG,GAAG,CAAC;AACnD,GACA,EAAE,mBAAmB,WAAY;CAC/B,OAAO;AACT,GACA,EAAE,oBAAoB,SAAU,GAAG,GAAG;CACpC,OAAO,UAAU,GAAG,GAAG,CAAC;AAC1B,GACA,EAAE,iBAAiB,WAAY;CAC7B,OAAO;AACT,GACA,EAAE,kBAAkB,WAAY;CAC9B,OAAO;AACT,GACA,EAAE,oBAAoB,SAAU,GAAG,GAAG;CACpC,IAAI,IAAI,EAAE;CAEV,OAAO,SADD,EAAE,QAAQ,IAAI,cAAa,EAAE,QAAQ,OAAM,MAC9B;AACrB,GACA,EAAE,qBAAqB,SAAU,GAAG,GAAG;CACrC,OAAO,UAAU,GAAG,GAAG,CAAC;AAC1B,GACA,EAAE,iBAAiB,SAAU,GAAG,GAAG;CACjC,OAAO,EAAE,EAAE,CAAC,QAAQ,KAAK;AAC3B,GACA,EAAE,kBAAkB,SAAU,GAAG,GAAG;CAClC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC,SAAS,KAAK,EAAE,IAAI,EAAE,CAAC,SAAS,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC;CACrE,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,WAAW,IAAI,GAAG,GAAG,CAAC,IAAI;AACtD,GACA,EAAE,YAAY,SAAU,GAAG,GAAG,GAAG;CAC/B,IAAI,IAAI,EAAE,EAAE,CAAC,QAAQ,cAAa,EAAE,EAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,OAAM,IAC1D,IAAI,EAAE,aAAa,eAAc,EAAE,aAAa,OAAM;CACxD,OAAO,eAAc,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,OAAM,IAAI,IAAI;AACpD,GACA,EAAE,aAAa,WAAY;CACzB,OAAO;AACT,GACA,EAAE,QAAQ,SAAU,GAAG,GAAG,GAAG;CAC3B,IAAI,IAAI,YAAW,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,MAC/B,IAAI,EAAE,EAAE,CAAC,QAAQ,cAAa,EAAE,EAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,OAAM,IACxD,IAAI,aAAY,EAAE,EAAE,CAAC,MAAM,EAAE,EAAG,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,MACvD,IAAI,EAAE,WAAW,OAAO;CAC1B,OAAO,SAAS,IAAI,IAAI,IAAI,IAAI;AAClC,GACA,EAAE,aAAa,WAAY;CACzB,OAAO;AACT,GACA,EAAE,cAAc,WAAY;CAC1B,OAAO;AACT,GACA,EAAE,aAAa,WAAY;CACzB,OAAO;AACT,GACA,EAAE,cAAc,WAAY;CAC1B,OAAO;AACT,GACA,EAAE,aAAa,WAAY;CACzB,OAAO;AACT,GACA,EAAE,cAAc,WAAY;CAC1B,OAAO;AACT,GACA,EAAE,UAAU,WAAY;CACtB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,UAAU,SAAU,GAAG,GAAG;CAC1B,IAAI,IAAI,EAAE;CACV,OAAO,SAAS,EAAE,QAAQ,yBAAwB,EAAE,QAAQ,OAAM,MAAM;AAC1E,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,UAAU,SAAU,GAAG,GAAG;CAC1B,IAAI,IAAI,EAAE;CACV,OAAO,SAAS,EAAE,QAAQ,yBAAwB,EAAE,QAAQ,OAAM,MAAM;AAC1E,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,cAAc,WAAY;CAC1B,OAAO;AACT,GACA,EAAE,eAAe,WAAY;CAC3B,OAAO;AACT,GACA,EAAE,UAAU,WAAY;CACtB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,YAAY,WAAY;CACxB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,YAAY,WAAY;CACxB,OAAO;AACT,GACA,EAAE,YAAY,WAAY;CACxB,OAAO;AACT,GACA,EAAE,aAAa,WAAY;CACzB,OAAO;AACT,GACA,EAAE,MAAM,SAAU,GAAG,GAAG;CACtB,OAAO,UAAU,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI;AACrC,GACA,EAAE,MAAM,SAAU,GAAG,GAAG;CACtB,OAAO,UAAU,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI;AACrC,GACA,EAAE,YAAY,SAAU,GAAG,GAAG,GAAG;CAC/B,OAAO,EAAE,WAAW,aAAa;AACnC,GACA,EAAE,YAAY,SAAU,GAAG,GAAG,GAAG;CAC/B,OAAO,EAAE,SAAS,EAAE,WAAW,aAAa,WAAW;AACzD,GACA,EAAE,OAAO,SAAU,GAAG,GAAG;CACvB,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO;AACvB,GACA,EAAE,YAAY,SAAU,GAAG,GAAG;CAC5B,OAAO,EAAE,EAAE,CAAC;AACd,GACA,EAAE,UAAU,SAAU,GAAG,GAAG;CAC1B,OAAO,EAAE,EAAE,CAAC;AACd,GACA,EAAE,YAAY,SAAU,GAAG,GAAG;CAC5B,OAAO,mBAAkB,EAAE,EAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI;AAC/C,GACA,EAAE,aAAa,WAAY;CACzB,OAAO;AACT,GACA,EAAE,eAAe,SAAU,GAAG,GAAG;CAC/B,IAAI,IAAI,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GACnC,IAAI,UAAU;CAChB,OAAO,EAAE,EAAE,CAAC,QAAQ,MAAM,KAAK,MAAM,EAAE,EAAE,CAAC,QAAQ,8CAA2C,IAAI,aAAW,IAAI,SAAQ,IAAI;AAC9H,GACA,EAAE,sBAAsB,SAAU,GAAG,GAAG,GAAG;CAEzC,QADQ,EAAE,WAAW,qCAAqC,oCAC/C;AACb,GACA,EAAE,uBAAuB,WAAY;CACnC,OAAO;AACT,GACA,EAAE,gBAAgB,SAAU,GAAG,GAAG;CAEhC,OAAO,gBADC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SACN,IAAI;AAC5B,GACA,EAAE,iBAAiB,WAAY;CAC7B,OAAO;AACT,GACA,EAAE,kBAAkB,SAAU,GAAG,GAAG;CAClC,IACE,IAAI,UADE,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SACZ;CAChB,OAAO,EAAE,EAAE,CAAC,QAAQ,MAAM,KAAK,MAAM,EAAE,EAAE,CAAC,QAAQ,iBAAgB,IAAI;AACxE,GACA,EAAE,UAAU,WAAY;CACtB,OAAO;AACT,GACA,EAAE,UAAU,WAAY;CACtB,OAAO;AACT,GACA,EAAE,UAAU,WAAY;CACtB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT,GACA,EAAE,WAAW,WAAY;CACvB,OAAO;AACT;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,OAAO,EAAE,KAAK,EAAE,SAAS,IAAI,IAAI,EAAE,EAAE,CAAC,SAAS,oBAAoB,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC,QAAQ,WAAW,KAAK,EAAE,IAAI,EAAE,CAAC,SAAS,qBAAqB,EAAE,IAAI,EAAE,CAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,IAAI;AACzN;AACA,IAAI,KAAK,EAAE,WAAW,SAAU,GAAG,GAAG;CACpC,OAAO,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,SAAS,oBAAoB,KAAK;AAC9E;AACA,SAAS,KAAK;CACZ,KAAK,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,WAAW,EAAE;AAC5C;AACA,GAAG,UAAU,eAAe,SAAU,GAAG,GAAG,GAAG;CAC7C,KAAK,IAAI,IAAI,KAAK,OAAO,IAAI,EAAE,QAAQ,IAAI,GAAG,IAAI,IAAI,MAAM,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,GAAG,IAAI;CAChG,OAAO;AACT,GACA,GAAG,UAAU,SAAS,SAAU,GAAG,GAAG,GAAG;CACvC,KAAK,IAAI,IAAI,KAAK,OAAO,IAAI,EAAE,QAAQ,IAAI,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,SAAS,WAAW,KAAK,KAAK,aAAa,EAAE,EAAE,CAAC,UAAU,GAAG,CAAC,IAAI,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI;CAC1K,OAAO;AACT;AACA,SAAS,IAAK;CACZ,KAAK,YAAY,CAAC,GAAG,KAAK,YAAY;AACxC;AACA,EAAG,UAAU,WAAW,SAAU,GAAG;CACnC,KAAK,IAAI,IAAI,KAAK,UAAU,QAAQ,IAAI,IAAI,MAAM,IAAI,KAAK,UAAU,EAAE,EAAE,CAAC,SAAS,GAAG,OAAO;CAC7F,OAAO;AACT,GACA,EAAG,UAAU,cAAc,WAAY;CACrC,IAAI,IAAI,MACN,IAAI,CAAC,EAAE;CACT,EAAE,UAAU,QAAQ,SAAU,GAAG;EAC/B,EAAE,WAAW,EAAE,IAAI,QAAQ,SAAU,GAAG;GACtC,EAAE,QAAQ,CAAC,IAAI,KAAK,EAAE,KAAK,CAAC;EAC9B,CAAC;CACH,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,QAAQ,SAAU,GAAG;EAC3C,EAAE,UAAU,KAAK,CAAC,GAAG,EAAE,UAAU,QAAQ,SAAU,GAAG;GACpD,EAAE,YAAY,KAAK,EAAE,IAAI,QAAQ,CAAC,IAAI,KAAK,EAAE,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;EACrE,CAAC;CACH,CAAC;AACH,GACA,EAAG,UAAU,KAAK,SAAU,GAAG,GAAG,GAAG;CACnC,IAAI,IAAI,KAAK,SAAS,CAAC,GACrB,IAAI,KAAK,CAAC;CACZ,IAAI,MAAM,IAAI,MAAU,MAAM,4BAA4B,CAAC;CAC3D,KAAK,UAAU,EAAE,CAAC,KAAK,GAAG,KAAK,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,YAAY;AAClF,GACA,EAAG,UAAU,SAAS,SAAU,GAAG,GAAG,GAAG,GAAG;CAC1C,IAAI,IAAI,KAAK,SAAS,CAAC,GACrB,IAAI,KAAK,CAAC;CACZ,IAAI,MAAM,IAAI,MAAU,MAAM,4BAA4B,CAAC;CAC3D,KAAK,UAAU,OAAO,GAAG,GAAG;EAC1B,MAAM;EACN,SAAS,CAAC;EACV,IAAI;EACJ,KAAK,EAAE,OAAO,CAAC;CACjB,CAAC,GAAG,KAAK,YAAY;AACvB,GACA,EAAG,UAAU,QAAQ,SAAU,GAAG,GAAG,GAAG,GAAG;CACzC,IAAI,IAAI,KAAK,SAAS,CAAC,GACrB,IAAI,KAAK,CAAC;CACZ,IAAI,MAAM,IAAI,MAAU,MAAM,4BAA4B,CAAC;CAC3D,KAAK,UAAU,OAAO,IAAI,GAAG,GAAG;EAC9B,MAAM;EACN,SAAS,CAAC;EACV,IAAI;EACJ,KAAK,EAAE,OAAO,CAAC;CACjB,CAAC,GAAG,KAAK,YAAY;AACvB,GACA,EAAG,UAAU,OAAO,SAAU,GAAG,GAAG,GAAG;CACrC,IAAI,IAAI,KAAK,CAAC;CACd,KAAK,UAAU,KAAK;EAClB,MAAM;EACN,SAAS,CAAC;EACV,IAAI;EACJ,KAAK,EAAE,OAAO,CAAC;CACjB,CAAC,GAAG,KAAK,YAAY;AACvB,GACA,EAAG,UAAU,SAAS,SAAU,GAAG,GAAG;CACpC,IAAI,MAAM,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,UAAU,QAAQ,SAAU,GAAG;EACvE,EAAE,UAAU,CAAC;CACf,CAAC,GAAG,EAAE,QAAQ,SAAU,GAAG;EACzB,IAAI,IAAI,KAAK,SAAS,CAAC;EACvB,IAAI,IAAI,GAAG,MAAU,MAAM,sCAAsC,CAAC;EAClE,KAAK,UAAU,EAAE,CAAC,UAAU,CAAC;CAC/B,GAAG,IAAI,GAAG,KAAK,YAAY;AAC7B,GACA,EAAG,UAAU,UAAU,SAAU,GAAG;CAClC,IAAI,MAAM,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE,QAAQ,SAAU,GAAG;EACrD,IAAI,IAAI,KAAK,SAAS,CAAC;EACvB,IAAI,IAAI,GAAG,MAAU,MAAM,sCAAsC,CAAC;EAClE,KAAK,UAAU,EAAE,CAAC,UAAU,CAAC;CAC/B,GAAG,IAAI,GAAG,KAAK,YAAY;AAC7B,GACA,EAAG,UAAU,WAAW,SAAU,GAAG;CACnC,OAAO,KAAK,cAAc,QAAQ,KAAK,YAAY,GAAG,KAAK,UAAU,MAAM,CAAC;AAC9E;AACA,SAAS,GAAG,GAAG;CACb,EAAE,aAAa,EAAE,OAAO,KAAK;EAC3B,MAAM;EACN,SAAS,EAAE,IAAI,QAAQ,OAAO,GAAG,CAAC,CAAC,KAAK;EACxC,OAAO;EACP,OAAO,CAAC,GAAG,CAAC;EACZ,UAAU,CAAC;CACb,CAAC,IAAI,EAAE,MAAM,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM;AACtD;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CACzB,KAAK,MAAM,GAAG,KAAK,MAAM,GAAG,KAAK,UAAU,GAAG,KAAK,SAAS,GAAG,KAAK,SAAS,GAAG,KAAK,MAAM,GAAG,KAAK,SAAS,KAAK,IAAI,QAAQ,KAAK,QAAQ,GAAG,KAAK,UAAU,IAAI,KAAK,eAAe,GAAG,KAAK,QAAQ,CAAC,GAAG,KAAK,YAAY,CAAC,GAAG,KAAK,YAAY,GAAG,KAAK,cAAc,IAAI,KAAK,uBAAuB;AACtS;AACA,GAAG,UAAU,cAAc,WAAY;CACrC,KAAK,OAAO,KAAK;EACf,MAAM;EACN,SAAS,KAAK;EACd,OAAO,KAAK;CACd,CAAC,GAAG,KAAK,UAAU;AACrB,GACA,GAAG,UAAU,OAAO,SAAU,GAAG;CAC/B,KAAK,WAAW,KAAK,YAAY,GAAG,KAAK,OAAO,KAAK,CAAC,GAAG,KAAK,eAAe,KAAK;AACpF,GACA,GAAG,UAAU,WAAW,SAAU,GAAG,GAAG;CACtC,KAAK,IAAI,IAAI,KAAK,MAAM,QAAQ,KAAK,GAAG,KAAK,KAAK,MAAM,KAAK,CAAC;CAC9D,KAAK,MAAM,KAAK;AAClB,GACA,GAAG,UAAU,WAAW,SAAU,GAAG;CACnC,OAAO,IAAI,KAAK,MAAM,SAAS,KAAK,MAAM,KAAK;AACjD;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,IACJ,IAAI,EAAE,QACN,IAAI,EAAE,KACN,IAAI,EAAE;CACR,IAAI,EAAE,WAAW,OAAO;CACxB,IAAI,EAAE,sBAAsB,OAAO,EAAE,wBAAwB;CAC7D,KAAK,EAAE,MAAM,IAAI,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,GAAG,EAAE,MAAM,IAAI;EACvD,IAAI,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,GAAG,MAAM,IAAI;OAAS,IAAI,MAAM,OAAO,KAAK,MAAM,IAAI;GAClF,IAAI,CAAC;GACL;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,KAAK,IAAI,EAAE,KAAK,EAAE,uBAAuB,KAAK,EAAE,uBAAuB,IAAI,GAAG,EAAE,MAAM,GAAG,EAAE,YAAY,GAAG;AACnH;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG;CACnB,IAAI,EAAE,WAAW,CAAC,MAAM,MAAM,EAAE,WAAW,CAAC,MAAM,MAAM,EAAE,QAAQ,IAAI,MAAM,OAAO,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,EAAE,WAAW,IAAI,CAAC,MAAM,KAAK,OAAO;CAC1K,KAAK,IAAI,EAAE,QAAQ,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI;CACnE,OAAO,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,WAAW,IAAI,MAAM,AAAoB,EAAE,kBAAgB,CAAC,GAAI,EAAQ,EAAE,cAAc,MAAM,EAAE,IAAI,QAAQ,EAAE,cAAc,MAAM,KAAK,IAAI;AACvM;AACA,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,EAAE,QACR,GACA,GACA,GACA;CACF,IAAI,CAAC,EAAE,YACA;OAAA,IAAI,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI,GAAG,KAAK,IAAI,EAAE,IAAI,EAAE,CAAC,SAAS,oBAAoB,EAAE,EAAE,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC,SAAS,mBAAmB;GACjJ,KAAK,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,IAAI,GAAG,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,MAAM,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK;GAC3G,EAAE,EAAE,CAAC,UAAU,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC;EACxE;;AAEJ;AACA,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,EAAG,CAAC;CACZ,IAAI;EACF,IAAI,UAAU,CAAC;CACjB,QAAmB,CAAC;CACpB,OAAO,UAAU,CAAC;AACpB;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,GACJ,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI;EAC9B,KAAK,KAAK,IAAI,IAAI;GAChB,IAAI,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC;GAC/C,IAAI,MAAM,IAAI,OAAO,IAAI,GAAG,GAAG,EAAE,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,IAAI,GAAG,EAAE,cAAc,GAAG,CAAC,KAAK,CAAC;GAC7H,IAAI,MAAM,MAAM,IAAI,IAAI,GAAG;IACzB,KAAK;IACL;GACF;GACA;EACF;EACA,OAAO,CAAC;CACV;CACA,KAAK,IAAI,GAAG,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,EAAE,MAAM,MAAM,IAAI,MAAM,MAAM,QAAQ;EACnF,IAAI,MAAM,MAAM,IAAI,IAAI,GAAG;GACzB,KAAK;GACL;EACF;EACA,IAAI,MAAM,OAAO,KAAK,IAAI,MAAM,MAAM,OAAO,KAAK,IAAI,IAAI;EAC1D;CACF;CACA,OAAO,MAAM,MAAM,IAAI,GAAG,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,EAAE,MAAM,GAAG,CAAC;AAClH;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,IAAI,GACJ,IAAI,EAAE,QACN,IAAI,EAAE,IAAI,WAAW,CAAC;CACxB,IAAI,MAAM,MAAM,MAAM,MAAM,MAAM,IAAI,OAAO,CAAC;CAC9C,KAAK,KAAK,MAAM,OAAO,IAAI,KAAK,IAAI,IAAI;EACtC,IAAI,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,GAAG,EAAE,cAAc,GAAG,EAAE,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC;EACxG,IAAI,MAAM,MAAM,IAAI,IAAI,GAAG;GACzB,KAAK;GACL;EACF;EACA;CACF;CACA,OAAO,CAAC;AACV;AACA,SAAS,GAAG,GAAG;CACb,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,QAAQ,GAAG,CAAC,CAAC,YAAY;AACnD;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CAC5B,IAAI,EAAE,WAAW,CAAC,MAAM,MAAM,EAAE,QAAQ,IAAI,MAAM,OAAO,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,EAAE,WAAW,IAAI,CAAC,MAAM,KAAK,OAAO;CAChJ,KAAK,IAAI,EAAE,QAAQ,IAAI,IAAI,GAAG,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAK,MAAM,MAAM,MAAM,KAAM;CAC3F,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,OAAO;CACtB,KAAK,IAAI,EAAE,aAAa,IAAI,EAAE,KAAK,IAAI,GAAG,KAAQ,GAAG,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAK,MAAM,MAAM,MAAM,KAAM;CAClH,KAAK,IAAI,KAAK,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,aAAa,IAAI,EAAE,QAAQ,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;CAC5H,OAAO,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAQ,EAAE,WAAW,EAAE,IAAI,QAAQ,EAAE,WAAW,KAAK;EAC7H,OAAO;EACP,MAAM;CACR,IAAI;AACN;AACA,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,EAAE,QACR,GACA,GACA,GACA;CACF,IAAI,EAAE,IAAI,aAAa,EAAE,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,YAC3C;OAAA,IAAI,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC,SAAS,oBAAoB,EAAE,IAAI,EAAE,CAAC,SAAS,mBAAmB;GACjJ,KAAK,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,IAAI,GAAG,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,MAAM,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK;GAC3G,EAAE,EAAE,CAAC,UAAU,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC;EACxE;;AAEJ;AACA,SAAS,GAAG,GAAG;CAKb,KAJA,IAAI,IAAI,EAAE,QACR,GACA,IAEO,GADP,IACc,EAAE,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,IAAI,EAAE,SAAS,YAAY,EAAE,OAAO,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ;AAC/H;AACA,SAAS,GAAG,GAAG;CACb,IAAI,GACF,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAI,GACJ,IAAI,CAAC,GACL,IAAI,CAAC;CACP,IAAI,EAAE,IAAI,cAAc,EAAE,SAAS,EAAE,OAAO,OAAO,SAAU,GAAG;EAC9D,OAAO,EAAE,SAAS,6BAA6B,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,8BAA8B,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;CAC7K,CAAC,GAAK,EAAE,IAAI,UAAU,OAAO;EAC3B,KAAK,IAAI,EAAE,IAAI,UAAU,MAAM,EAAE,OAAO,KAAK;GAC3C,MAAM;GACN,OAAO;EACT,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK;GACnC,KAAK,EAAE,OAAO,KAAK;IACjB,MAAM;IACN,IAAI;IACJ,OAAO;GACT,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,KAAK;IAChC,MAAM;IACN,OAAO,CAAC;IACR,OAAO;GACT,CAAC,GAAG,EAAE,KAAK;IACT,MAAM;IACN,SAAS;IACT,OAAO;IACP,UAAU,EAAE,EAAE,CAAC;GACjB,CAAC,GAAG,EAAE,KAAK;IACT,MAAM;IACN,OAAO,CAAC;IACR,OAAO,EAAE;GACX,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,OAAO,CAAC,GAAG,AAAgF,IAAhF,EAAE,OAAO,EAAE,OAAO,SAAS,EAAE,CAAC,SAAS,oBAAwB,EAAE,OAAO,IAAI,IAAQ,MAAM,IAAI,EAAE,EAAE,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,OAAO,KAAK;IAC5O,MAAM;IACN,IAAI;IACJ,OAAO;IACP,OAAO;GACT,CAAC;GACD,KAAK,EAAE,OAAO,KAAK,CAAC,GAAG,EAAE,OAAO,KAAK;IACnC,MAAM;IACN,OAAO,EAAE;GACX,CAAC;EACH;EACA,EAAE,OAAO,KAAK;GACZ,MAAM;GACN,OAAO,EAAE;EACX,CAAC;CACH;AACF;AACA,IAAI,KAAK;AACT,SAAS,GAAG,GAAG;CACb,OAAO,EAAE,QAAQ,iCAAiC,MAAM;AAC1D;AACA,SAAS,GAAG,GAAG;CACb,IAAI,GACF,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,eACH;OAAA,EAAE,IAAI,eAAe,IAAI,SAAS,GAAG,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,QAAQ,OAAO,KAAK,EAAE,IAAI,aAAa,CAAC,CAAC,IAAI,SAAU,GAAG;GAC/H,OAAO,EAAE,OAAO,CAAC;EACnB,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG,GAAG;GACtB,OAAO,EAAE,SAAS,EAAE;EACtB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,MAAM,EAAE,IAAI,aAAa,IAAI,OAAO,GAAG,GAAG,IAAI,IAAI,EAAE,IAAI,YAAY,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,SAAS,UACjL;QAAA,IAAI,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,SAAS,QAAQ;IACtF,KAAK,IAAI,GAAG,IAAI,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,EAAE,OAAO,IAAI,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,KAAK,EAAE,KAAK;KACzG,MAAM;KACN,SAAS,EAAE,MAAM,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,MAAM;KACzC,OAAO;IACT,CAAC,GAAG,EAAE,KAAK;KACT,MAAM;KACN,OAAO,EAAE,IAAI,cAAc,MAAM,EAAE;KACnC,OAAO;IACT,CAAC,GAAG,EAAE,KAAK;KACT,MAAM;KACN,SAAS,EAAE;KACX,OAAO;IACT,CAAC,GAAG,EAAE,KAAK;KACT,MAAM;KACN,OAAO,EAAE;IACX,CAAC,GAAG,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC;IAC3B,EAAE,WAAW,IAAI,EAAE,UAAU,EAAE,KAAK;KAClC,MAAM;KACN,SAAS,EAAE,MAAM,CAAC;KAClB,OAAO;IACT,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,IAAI,CAAC,CAAC;GACpE;;;AAGN;AACA,IAAI,KAAK,gCACP,KAAK,oBACL,KAAK;CACH,GAAG;CACH,GAAG;CACH,GAAG;CACH,IAAI;AACN;AACF,SAAS,GAAG,GAAG;CACb,OAAO,EAAE,QAAQ,GAAG,IAAI,IAAI,IAAI,EAAE,QAAQ,IAAI,SAAU,GAAG,GAAG;EAC5D,OAAO,GAAG,EAAE,YAAY;CAC1B,CAAC;AACH;AACA,SAAS,GAAG,GAAG;CACb,IAAI,GAAG,GAAG,GAAG,GAAG;CAChB,IAAI,EAAE,QAAQ,aACP;OAAA,IAAI,EAAE,OAAO,SAAS,GAAG,KAAK,GAAG,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC,SAAS,UAAU,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC,UAAU,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,KAAK,IAAI,EAAE,IAAI,EAAE,SAAS,WAAW,IAAI,EAAE,SAAS,IAAI,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,QAAQ,QAAQ,GAAG,CAAC,CAAC,QAAQ,WAAW,GAAG,CAAC,CAAC,QAAQ,YAAY,MAAM,CAAC,CAAC,QAAQ,eAAe,QAAQ,CAAC,CAAC,QAAQ,UAAU,GAAG,CAAC,CAAC,QAAQ,yBAAyB,OAAO,CAAC,CAAC,QAAQ,oBAAoB,OAAO,CAAC,CAAC,QAAQ,4BAA4B,OAAO,IAAI,EAAE,UAAU;CAAA;AAE1e;AACA,IAAI,KAAK,QACP,KAAK,SACL,KAAK,eACL,KAAK;AACP,SAAS,GAAG,GAAG,GAAG;CAChB,OAAO,IAAI,KAAK,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,EAAE;AACpD;AACA,SAAS,GAAG,GAAG,GAAG,GAAG;CACnB,OAAO,EAAE,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,OAAO,IAAI,CAAC;AAC5C;AACA,SAAS,GAAG,GAAG;CACb,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CACpD,IAAI,EAAE,QAAQ,aACP;OAAA,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,SAAS,GAAG,KAAK,GAAG,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC,SAAS,UACrE;QAAA,IAAI,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,IAAI,IAAI,EAAE,IAAI,EAAE,EAAE,SAAS,UAAU,GAAG,KAAK,EAAE,IAAI,IAAI;IAC5H,KAAK,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,SAAS,GAAG,KAAK,KAAK,EAAE,EAAE,EAAE,CAAC,SAAS,IAAI;IACrE,EAAE,SAAS,IAAI,GAAG,IAAI,EAAE,SAAS,IAAI,GAAG,IAAI,EAAE;IAC9C,GAAG,OAAO,IAAI,MAAM,GAAG,YAAY,GAAG,IAAI,GAAG,KAAK,CAAC,GAAK,KAAK;KAC3D,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,QAAQ,CAAC,GAAG,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG;MACvF,MAAM,EAAE,UAAU,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE;MAC3C;KACF;KACA,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,GACb;WAAA,IAAI,EAAE,SAAS,GAAG,KAAK,MAAM,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,QAAQ,KAAK,KAAK,IAAI,EAAE,WAAW,KAAK,EAAE,EAAE,CAAC,UAAU,GAAG;OAC3G,IAAI,EAAE,IAAI,KAAK,EAAE,EAAE,MAAM,CAAC,UAAU,GAAG,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,OAAO,EAAE,GAAG,EAAE,UAAU,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,UAAU,GAAG,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,OAAO,EAAE,GAAG,EAAE,UAAU,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,OAAO,EAAE,IAAI,EAAE,SAAS;OAClS,SAAS;MACX;;KAEF,IAAI,EAAE,KAAK;MACT,OAAO;MACP,KAAK,EAAE;MACP,QAAQ;MACR,OAAO;KACT,CAAC,IAAI,KAAK,MAAM,EAAE,UAAU,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE;IACvD;GACF;;;AAGN;AACA,IAAI,KAAK;CAAC,CAAC,SAAS,EAAE;CAAG,CAAC,QAAQ,EAAE;CAAG,CAAC,cAAc,EAAE;CAAG,CAAC,UAAU,EAAE;CAAG,CAAC,iBAAiB,EAAE;CAAG,CAAC,SAAS,EAAE;CAAG,CAAC,gBAAgB,EAAE;CAAG,CAAC,eAAe,EAAE;AAAC;AAC1J,SAAS,KAAK;CACZ,KAAK,UAAU,CAAC,GAAG,KAAK,QAAQ,IAAI,EAAG;CACvC,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,QAAQ,KAAK,KAAK,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE;AACxE;AACA,GAAG,UAAU,UAAU,SAAU,GAAG;CAClC,IAAI,GAAG,GAAG,IACD,KAAK,MAAM,SAAS,EAAE;CAA/B,KAAkC,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;AAC3E;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CACzB,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,KAAK,KAAK,MAAM,GAAG,KAAK,SAAS,GAAG,KAAK,UAAU,GAAG,KAAK,MAAM,GAAG,KAAK,SAAS,GAAG,KAAK,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,KAAK,YAAY,GAAG,KAAK,OAAO,GAAG,KAAK,UAAU,GAAG,KAAK,QAAQ,CAAC,GAAG,KAAK,aAAa,QAAQ,KAAK,WAAW,IAAI,KAAK,QAAQ,GAAG,KAAK,SAAS,IAAI,IAAI,KAAK,KAAK,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK;EACrW,IAAI,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG;OAAI,MAAM,IAAI;IACzC;IACA;GACF;GAAO,IAAI,CAAC;EAAA;EACZ,CAAC,MAAM,MAAM,MAAM,IAAI,OAAO,MAAM,MAAM,KAAK,KAAK,OAAO,KAAK,CAAC,GAAG,KAAK,OAAO,KAAK,CAAC,GAAG,KAAK,OAAO,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI;CACvI;CACA,KAAK,OAAO,KAAK,EAAE,MAAM,GAAG,KAAK,OAAO,KAAK,EAAE,MAAM,GAAG,KAAK,OAAO,KAAK,CAAC,GAAG,KAAK,UAAU,KAAK,OAAO,SAAS;AACnH;AACA,GAAG,UAAU,UAAU,SAAU,GAAG;CAClC,OAAO,KAAK,OAAO,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO;AACxD,GACA,GAAG,UAAU,iBAAiB,SAAU,GAAG;CACzC,KAAK,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,EAAE,KAAK,OAAO,KAAK,KAAK,OAAO,KAAK,KAAK,OAAO,KAAK;CACzF,OAAO;AACT,GACA,GAAG,UAAU,aAAa,SAAU,GAAG;CACrC,KAAK,IAAI,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,KAAK,IAAI,WAAW,CAAC,MAAM,IAAI;CACtE,OAAO;AACT,GACA,GAAG,UAAU,YAAY,SAAU,GAAG,GAAG;CACvC,KAAK,IAAI,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,KAAK,IAAI,WAAW,CAAC,MAAM,GAAG;CACrE,OAAO;AACT,GACA,GAAG,UAAU,gBAAgB,SAAU,GAAG,GAAG,GAAG;CAC9C,IAAI,KAAK,GAAG,OAAO;CACnB,OAAO,IAAI,IAAI,IAAI,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC,GAAG,OAAO,IAAI;CAC9D,OAAO;AACT,GACA,GAAG,UAAU,WAAW,SAAU,GAAG,GAAG,GAAG,GAAG;CAC5C,IAAI,GACF,GACA,GACA,GACA,GACA,IAAI;CACN,IAAI,KAAK,GAAG,OAAO;CACnB,IAAI,IAAI,MAAM,GAAG,OAAO,IAAI,KAAK,OAAO,KAAK,KAAK,IAAI,KAAK,OAAO,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,OAAO,KAAK,IAAI,KAAK,OAAO,IAAI,KAAK,IAAI,MAAM,GAAG,CAAC;CAC1I,KAAK,IAAQ,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,KAAK,IAAI,KAAK,OAAO,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,KAAK,OAAO,KAAK,GAAG,AAA0C,IAA1C,IAAI,IAAI,KAAK,IAAQ,KAAK,OAAO,KAAK,IAAQ,KAAK,OAAO,IAAI,EAAE,KAAK,KAAK,IAAI,MAAM,GAAG,CAAC;CAC3N,OAAO,EAAE,KAAK,EAAE;AAClB;AACA,SAAS,GAAG,GAAG,GAAG,GAAG;CACnB,IAAI,GAAG;CACP,IAAI,EAAE,OAAO,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC;CAC3C,KAAK,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI;EAC1B,IAAI,EAAE,QAAQ,CAAC,GAAG;GAChB;GACA;EACF;EACA,IAAI,EAAE,OAAO,KAAK,EAAE,aAAa,GAAG;GAClC,KAAK,IAAI;GACT;EACF;EACA;CACF;CACA,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,KAAK;EAC/B,MAAM;EACN,SAAS,EAAE,SAAS,GAAG,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC;EAC7C,OAAO,CAAC;EACR,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,OAAO,EAAE;CACX,CAAC,GAAG,CAAC;AACP;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,GACA,GACA,IAAI,CAAC,GACL,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAC3B,IAAI,EAAE,OAAO;CACf,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,MAAM,OAAO,MAAM,QAAQ,IAAI,GAAG,IAAI,EAAE,UAAU,GAAG,CAAC,GAAG,IAAI,IAAI,GAAG,IAAI,OAAO,IAAI,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,QAAQ,GAAG,KAAK,IAAI,OAAO,CAAC;CACtL,IAAI,GAAG,OAAO,CAAC;CACf,KAAK,IAAI,GAAG,KAAK,EAAE,KAAK,MAAM,IAAI,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI,KAAK,EAAE,OAAO,KAAK,EAAE,cAAc,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK,EAAE,EAAE,OAAO,KAAK,EAAE,aAAa,OAAO,IAAI,EAAE,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI,IAAI,OAAO,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,IAAI,MAAM;EACvQ,IAAI,CAAC;EACL;CACF;CACA,OAAO,IAAI,EAAE,OAAO,IAAI,EAAE,OAAO,IAAK,MAAY,EAAE,OAAO,KAAK;EAC9D,MAAM;EACN,QAAQ;EACR,SAAS,EAAE,SAAS,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;EACnC,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,OAAO,EAAE;CACX,CAAC,GAAG,CAAC;AACP;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAC3B,IAAI,EAAE,OAAO;CACf,IAAI,IAAI,KAAK,EAAE,IAAI,WAAW,GAAG,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CACtF,IAAI,GAAG,OAAO,CAAC;CACf,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,KAAK,IAAI,EAAE,WAAW,EAAE,YAAY,GAAG,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK,GAAG,IAAI,IAAI,IAAI,EAAE,WAAW,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,MAAM,SAAS,YAAY,GAAG,IAAI,IAAI,GAAG,IAAI,MAAM,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,IAAI,EAAE,KAAK,KAAK,KAAK;EAC5U,IAAI,EAAE,IAAI,WAAW,GAAG,MAAM,IAAI;GAChC,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK,GAAG,IAAI,IAAI,IAAI,EAAE,WAAW,CAAC,IAAI,GAAG,IAAI,KAAK,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,EAAE,OAAO;GACtK;EACF;EACA,IAAI,GAAG;EACP,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG;GACnE,IAAI,CAAC;GACL;EACF;EACA,IAAI,GAAG;EACP,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK;CAC1D;CACA,KAAK,IAAI,EAAE,YAAY,EAAE,aAAa,cAAc,EAAE,OAAO,KAAK;EAChE,MAAM;EACN,OAAO,IAAI,CAAC,GAAG,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,SAAS,GAAG,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK;EAC5C,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAE,aAAa,GAAG,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,IAAI,EAAE,OAAO,IAAI,KAAK,EAAE;CAC3G,OAAO,EAAE,YAAY,GAAG,CAAC;AAC3B;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,IAAI,EAAE,OAAO,IACb,IAAI,EAAE,OAAO;CACf,IAAI,KAAK,EAAE,OAAO,IAAI,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,GAAG,GAAG,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,OAAO,CAAC;CACtG,KAAK,IAAI,GAAG,IAAI,IAAI;EAClB,IAAI,IAAI,EAAE,IAAI,WAAW,GAAG,GAAG,MAAM,KAAK,MAAM,IAAI,OAAO,CAAC;EAC5D,MAAM,KAAK;CACb;CACA,OAAO,IAAI,IAAI,CAAC,KAAK,MAAM,EAAE,OAAO,IAAI,GAAG,EAAE,OAAO,KAAK;EACvD,MAAM;EACN,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,OAAO,EAAE;CACX,CAAC,IAAI,CAAC;AACR;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GAAG,IACI,EAAE,OAAO,KAAK,EAAE,OAAO,IADxB,IACgC,EAAE,OAAO;CAAnD,OAAuD,KAAK,MAAM,IAAI,EAAE,IAAI,WAAW,GAAG,GAAG,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK,KAAK;AAC/K;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAC3B,IAAI,EAAE,OAAO;CACf,IAAI,IAAI,KAAK,MAAM,IAAI,EAAE,IAAI,WAAW,GAAG,GAAG,IAAI,MAAM,IAAI,KAAK,OAAO;CACxE,SAAS;EACP,IAAI,KAAK,GAAG,OAAO;EACnB,IAAI,IAAI,EAAE,IAAI,WAAW,GAAG,GAAG,EAAE,KAAK,MAAM,KAAK,KAAK;GACpD,IAAI,MAAM,MAAM,MAAM,IAAI;GAC1B,OAAO;EACT;CACF;CACA,OAAO,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK,KAAK;AACpD;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,IAAI,EAAE,QAAQ;CAChB,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,OAAO,SAAS,GAAG,IAAI,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,UAAU,KAAK,EAAE,OAAO,EAAE,CAAC,SAAS,qBAAqB,EAAE,OAAO,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK;AACrL;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAI,CAAC,GACL,GACA,GACA,GACA;CACF,KAAK,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;MAAO,KAAK,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;MAAO,OAAO,CAAC;CAClF,IAAI,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CAC7C,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;CAC5C,KAAK,IAAI,EAAE,OAAO,QAAQ,KAAK,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAAI,IAAI,OAAO,EAAE,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK;EAClH,MAAM;EACN,OAAO;EACP,OAAO,IAAK,CAAC,GAAG,CAAC;EACjB,OAAO,EAAE;CACX,CAAC,KAAK,EAAE,OAAO,KAAK;EAClB,MAAM;EACN,OAAO,IAAK,CAAC,GAAG,CAAC;EACjB,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,MAAM,SAAS,MAAM,GAAG,IAAI,MAAM,IAAI,EAAE,WAAW,CAAC,GAAG,IAAI,EAAE,OAAO,IAAI,AAAiB,IAAjB,KAAK,IAAQ,IAAQ,IAAI,GAAG,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,KAAK;EAC7M,MAAM;EACN,OAAO,IAAI,CAAC,GAAG,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,OAAO,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,YAAY,EAAE,OAAO,KAAK,IAAI,EAAE,OAAO,IAAI,EAAE,YAAY,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,aAAa,QAAQ,EAAE,OAAO,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,OAAO,IAAI,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,QAAQ,GAAG,EAAE,aAAa,GAAG,EAAE,OAAO,KAAK;EACjV,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,IAAI,IAAI,EAAE,MAAM,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,KAAK,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,KAAK,EAAE,cAAc;EACvG,KAAK,IAAK,CAAC,GAAG,IAAI,GAAG,IAAK,EAAE,QAAQ,IAAI,GAAI,KAAK,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG;GACtE,IAAK,CAAC;GACN;EACF;EACA,IAAI,GAAI;EACR,IAAI,GACE;OAAA,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG;EAAA,OACpB,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG;EAChC,IAAI,MAAM,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG;CACrC;CACA,OAAO,EAAE,OAAO,KAAK;EACnB,MAAM,IAAI,uBAAuB;EACjC,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAG,KAAK,GAAG,EAAE,OAAO,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;AAC7C;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,GACA,GACA,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAC3B,IAAI,EAAE,OAAO;CACf,IAAI,IAAI,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CAC1H,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK;EAC1B,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC;EACxC,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI;CAClC;CACA,OAAO,MAAM,IAAI,KAAK,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,KAAK,CAAC,KAAK,MAAM,KAAK,EAAE,IAAI,cAAc,EAAE,IAAI,YAAY,CAAC,IAAI,EAAE,IAAI,UAAU,SAAS,EAAE,IAAI,UAAU,OAAO,CAAC,IAAI,IAAI,EAAE,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,UAAU,KAAK,MAAM,KAAK,IAAI,EAAE,OAAO,KAAK;EACnQ,MAAM;EACN,OAAO;EACP,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,YAAY,EAAE,OAAO,KAAK,EAAE,WAAW,CAAC,IAAI,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,aAAa,GAAG,EAAE,aAAa,YAAY,EAAE,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,MAAM,EAAE,WAAW,EAAE,OAAO,MAAM,EAAE,YAAY,EAAE,OAAO,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,aAAa,GAAG,EAAE,aAAa,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,KAAK;EAClW,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,IAAI,CAAC;AACR;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAC3B,IAAI,EAAE,OAAO;CACf,IAAI,KAAK,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,MAAM,MAAM,KAAK,IAAI,OAAO,CAAC;CACrE,KAAK,IAAI,GAAG,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC,GAAG,MAAM,MAAM,IAAI,KAAK,KAAK,IAAI,KAAK,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC;CAClG,OAAO,IAAI,KAAK,IAAI,KAAK,MAAM,KAAK,CAAC,KAAK,MAAM,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,OAAO,IAAI,IAAI,EAAE,OAAO,IAAI,GAAG,EAAE,OAAO,KAAK;EAC9L,MAAM;EACN,QAAQ;EACR,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,KAAK,EAAE,OAAO,KAAK;EACzB,MAAM;EACN,SAAS,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK;EAChC,OAAO,EAAE,QAAQ;EACjB,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,UAAU,CAAC;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,QAAQ;EACR,OAAO,EAAE;CACX,CAAC,IAAI,CAAC;AACR;AACA,SAAS,GAAG,GAAG,GAAG,GAAG;CACnB,IAAI,GACF,GACA,GACA,IAAI,IAAI;CACV,OAAO,KAAK,KAAK,EAAE,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,KAAK,EAAE,YAAY,MAAM,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,IAAI,KAAK,OAAO,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,MAAM,MAAM,MAAM,QAAQ,IAAI,EAAE,UAAU,GAAG,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAAI,EAAE,OAAO,IAAI,GAAG,EAAE,OAAO,KAAK;EACrT,MAAM;EACN,QAAQ,MAAM,KAAK,IAAI;EACvB,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,SAAS,EAAE,IAAI,MAAM,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK;EAC1C,OAAO,EAAE,QAAQ;EACjB,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC;EACrB,UAAU,CAAC;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,QAAQ,MAAM,KAAK,IAAI;EACvB,OAAO,EAAE;CACX,CAAC,GAAG,CAAC;AACP;AACA,IAAI,KAAK,CAAC;CACV,+SAAya,EAAC,CAAC,QAAQ,SAAU,GAAG;CAC9b,GAAG,KAAK,CAAC;AACX,CAAC;AACD,IAAI,KAAK,6BACP,KAAK;AACP,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,IAAI;CACZ,OAAO,KAAK,MAAM,KAAK;AACzB;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GACF,GACA,GACA,IAAI,EAAE,OAAO,IACb,IAAI,EAAE,OAAO,IACb,IAAI,EAAE,OAAO;CACf,IAAI,KAAK,GAAG,CAAC,EAAE,QAAQ,QAAQ,IAAI,KAAK,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC;CAC1F,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,MAAM,MAAM,MAAM,IAC7C;MAAA,GAAG,OAAO,CAAC;CAAA,OACV,IAAI,MAAM,MAAM,GAAG,CAAC,GAAG;EAC5B,IAAI,MAAM,IACJ;OAAA,IAAI,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC;EAAA,OAC5C,IAAI,IAAI,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC;EACxD,IAAI,GAAG,EAAE,EAAE,CAAC,YAAY,OAAO,CAAC,GAAG,OAAO,CAAC;EAC3C,IAAI,GAAG,OAAO,CAAC;CACjB,OAAO,OAAO,CAAC;CACf,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,IAAI;CACjD,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,KAAK;EAC/B,MAAM;EACN,OAAO,EAAE;EACT,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,SAAS,EAAE,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC;CACjC,CAAC,GAAG,CAAC;AACP;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,IAAI,EAAE,OAAO,KAAK,EAAE,WACtB,IAAI,EAAE,OAAO;CACf,OAAO,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC;AAC9B;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CAClC,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,GAAG,EAAE,OAAO,KAAK,EAAE,eAAe,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,OAAO,QAAQ,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,MAAM,OAAO,MAAM,MAAM,MAAM,QAAQ,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,OAAO,IAAI,EAAE,MAAM,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC;CAChQ,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;EACrC,IAAI,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG;GACvB,IAAI,MAAM,KAAK,MAAM,EAAE,SAAS,GAAG;GACnC,OAAO,CAAC;EACV;EACA,IAAI,CAAC,WAAW,KAAK,CAAC,GAAG,OAAO,CAAC;EACjC,EAAE,WAAW,EAAE,SAAS,CAAC,MAAM,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,KAAK,WAAW,OAAO,IAAI,EAAE,WAAW,CAAC,MAAM,KAAK,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,EAAE;CAC/I;CACA,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,QAAQ,GAAG,MAAM,OAAO,IAAI,EAAE,QAAQ,YAAY,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,WAAW,EAAE,SAAS,OAAO,CAAC;CAC7H,IAAI,GAAG,OAAO,CAAC;CACf,KAAK,EAAE,OAAO,KAAK;EACjB,MAAM;EACN,OAAO,IAAI,CAAC,GAAG,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,CAAC,GAAG,IAAI,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,CAAC,GAAG,IAAI,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,EAAE,OAAO,KAAK;EAC1C,MAAM;EACN,OAAO,EAAE;EACT,OAAO,CAAC,GAAG,IAAI,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,SAAS,EAAE,EAAE,CAAC,KAAK;EACnB,OAAO,CAAC,GAAG,IAAI,CAAC;EAChB,OAAO,EAAE;EACT,UAAU,CAAC;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC;CACD,KAAK,EAAE,OAAO,KAAK;EACjB,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC;EACpB,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,EAAE,OAAO,KAAK,EAAE,cAAc,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,QAAQ,GAAG,MAAM,MAAM,KAAK;EACzG,KAAK,IAAI,EAAE,QAAQ,YAAY,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,KAAK;GAC3D,MAAM;GACN,OAAO,EAAE;EACX,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,EAAE,OAAO,KAAK;GAC1C,MAAM;GACN,OAAO,EAAE;GACT,OAAO,EAAE;EACX,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,UAAU,IAAE,EAAE,CAAC,WAAW,CAAC,MAAM,MAAa,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,MAAM,EAAE,EAAE,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,GAAG,EAAE,OAAO,KAAK;GACzJ,MAAM;GACN,SAAS;GACT,OAAO,EAAE;GACT,UAAU,CAAC;EACb,CAAC,GAAG,EAAE,OAAO,KAAK;GAChB,MAAM;GACN,OAAO,EAAE,EAAE;EACb,CAAC;EACD,EAAE,OAAO,KAAK;GACZ,MAAM;GACN,OAAO,EAAE,EAAE;EACb,CAAC;CACH;CACA,OAAO,EAAE,OAAO,KAAK;EACnB,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,OAAO,GAAG,CAAC;AACpC;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,IAAI,EAAE,OAAO,KAAK,EAAE,OAAO,IAC3B,IAAI,EAAE,OAAO;CACf,OAAO,KAAK,MAAM,IAAI,EAAE,IAAI,WAAW,GAAG,GAAG,MAAM,OAAO,MAAM,QAAQ,IAAI,EAAE,WAAW,CAAC,GAAG,MAAM,MAAM,KAAK,IAAI,KAAK;AACzH;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,IAAI,EAAE,QAAQ;CAChB,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,OAAO,SAAS,GAAG,IAAI,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,UAAU,KAAK,EAAE,OAAO,EAAE,CAAC,SAAS,qBAAqB,EAAE,OAAO,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK;AACrL;AACA,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG;CACtB,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;CAC3C,IAAI,GAAG,OAAO,EAAE,WAAW,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK;CAChD,IAAI,IAAI,IAAI,GAAG,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,KAAK,EAAE,OAAO,KAAK,EAAE,cAAc,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,MAAM,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CACzI,IAAI,EAAE,OAAO,QAAQ,EAAE,OAAO,KAAK;EACjC,MAAM;EACN,OAAO,IAAI,CAAC,GAAG,CAAC;EAChB,OAAO,EAAE;CACX,CAAC,GAAG,IAAI,GAAG,IAAI;CACf,GAAG,SAAS;EACV,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,KAAK;GACjC,MAAM;GACN,OAAO,CAAC,GAAG,CAAC;GACZ,OAAO,EAAE;EACX,CAAC,GAAG,EAAE,OAAO,KAAK;GAChB,MAAM;GACN,SAAS,EAAE,SAAS,GAAG,IAAI,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK;GACpD,OAAO,EAAE,QAAQ;GACjB,OAAO,CAAC,GAAG,CAAC;GACZ,UAAU,CAAC;EACb,CAAC,GAAG,EAAE,OAAO,KAAK;GAChB,MAAM;GACN,OAAO,EAAE,EAAE;EACb,CAAC,KAAK;GACJ,IAAI,EAAE,OAAO,KAAK;IAChB,MAAM;IACN,OAAO,IAAI,CAAC,GAAG,CAAC;IAChB,OAAO,EAAE;GACX,CAAC,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,UAAU,IAAI,EAAE,WAAW,IAAI,EAAE,OAAO,IAAI,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,KAAK,GAAG,EAAE,OAAO,KAAK,IAAI,EAAE,OAAO,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,aAAa,WAAW,EAAE,OAAO,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,OAAO,IAAI,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,QAAQ,GAAG,EAAE,aAAa,GAAG,EAAE,YAAY,GAAG,EAAE,WAAW,GAAG,EAAE,OAAO,KAAK;IAC/Y,MAAM;IACN,OAAO,EAAE,EAAE;GACb,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,MAAM,KAAK,KAAK,EAAE,OAAO,KAAK,EAAE,WAAW,MAAM;GAClE,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG;GACzB,IAAI;EACN;EACA,IAAI,KAAK,MAAM,IAAI,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,cAAc,IAAI,IAAI,GAAG,KAAK,OAAO,EAAE,QAAQ,CAAC,KAAK,KAAK,KAAK,MAAM,EAAE,OAAO,KAAK,EAAE,cAAc,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,IAAI;CAClL;CACA,OAAO,EAAE,OAAO,KAAK;EACnB,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;AAC5C;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,GACA,IAAI,IAAI,GACR;CACF,IAAI,IAAI,EAAE,SAAS,IAAI,KAAK,CAAC,EAAE,QAAQ,CAAC,GACjC;OAAA,IAAI,EAAE,OAAO,MAAM,SAAS,WAAW,GAAG,IAAI,KAAK,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK,IAAI,EAAE,EAAE,OAAO,KAAK,EAAE,YAAY,IAAI;GAChH,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG;IACnE,IAAI,CAAC;IACL;GACF;GACA,IAAI,GAAG;EACT;;CAEF,OAAO,IAAI,EAAE,SAAS,GAAG,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,OAAO,GAAG,EAAE,WAAW,EAAE,OAAO,KAAK;EAC1F,MAAM;EACN,OAAO,CAAC;EACR,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,SAAS;EACT,OAAO,EAAE,QAAQ;EACjB,OAAO,CAAC,GAAG,EAAE,IAAI;EACjB,UAAU,CAAC;CACb,CAAC,GAAG,EAAE,OAAO,KAAK;EAChB,MAAM;EACN,OAAO,CAAC;EACR,OAAO,EAAE;CACX,CAAC,IAAI,CAAC;AACR;AACA,IAAI,KAAK;CAAC,CAAC,QAAQ,EAAE;CAAG;EAAC;EAAU;EAAI;GAAC;GAAa;GAAc;EAAM;CAAC;CAAG;EAAC;EAAc;EAAI;GAAC;GAAa;GAAc;EAAM;CAAC;CAAG;EAAC;EAAM;EAAI;GAAC;GAAa;GAAc;EAAM;CAAC;CAAG;EAAC;EAAQ;EAAI,CAAC,aAAa,YAAY;CAAC;CAAG;EAAC;EAAY;EAAI,CAAC,WAAW;CAAC;CAAG;EAAC;EAAW;EAAI,CAAC,aAAa,YAAY;CAAC;CAAG,CAAC,YAAY,EAAE;CAAG;EAAC;EAAa;EAAI,CAAC,aAAa,YAAY;CAAC;CAAG;EAAC;EAAS;EAAI,CAAC,WAAW;CAAC;CAAG;EAAC;EAAW;EAAI,CAAC,WAAW;CAAC;CAAG,CAAC,aAAa,EAAE;AAAC;AAClc,SAAS,KAAK;CACZ,KAAK,QAAQ,IAAI,EAAG;CACpB,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,QAAQ,KAAK,KAAK,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EACtE,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,EAAA,CAAG,MAAM,EAC9B,CAAC;AACH;AACA,GAAG,UAAU,WAAW,SAAU,GAAG,GAAG,GAAG;CACzC,KAAK,IAAI,IAAI,KAAK,MAAM,SAAS,EAAE,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,MAAM,EAAE,OAAO,IAAI,EAAE,eAAe,CAAC,GAAG,EAAE,KAAK,KAAK,EAAE,OAAO,KAAK,EAAE,cAAc;EAC7J,KAAK,IAAI,GAAG,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI;EAClD,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,EAAE,MAAM,IAAI,KAAK,EAAE,QAAQ,CAAC,GAAG;GACtF,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,KAAK,EAAE,eAAe,UAAU,EAAE,QAAQ,CAAC,GAAG;GACnE,EAAE,OAAO;EACX;CACF;AACF;AACA,IAAI,KAAK,WACP,KAAK,sCACL,KAAK;AACP,GAAG,UAAU,QAAQ,SAAU,GAAG,GAAG,GAAG,GAAG;CACzC,IAAI,GACF,IAAI,GACJ,IAAI;CACN,IAAI,CAAC,GAAG,OAAO,CAAC;CAChB,IAAI,EAAE,QAAQ,IAAI,GAAG,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,GAAG,EAAE,QAAQ,GAAG,KAAK,MAAM,IAAI,EAAE,QAAQ,IAAI,SAAU,GAAG,GAAG;EACzG,IAAI;EACJ,OAAO,EAAE,WAAW,CAAC,MAAM,MAAM,IAAI,IAAI,GAAG,IAAI,GAAG,MAAM,IAAI,OAAO,OAAO,IAAI,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG;CAC7G,CAAC,IAAI,IAAI,IAAI,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,SAAS,GAAG,EAAE,MAAM,EAAE,OAAO;AACvE;AACA,SAAS,GAAG,GAAG;CACb,QAAQ,GAAR;EACE,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK,IACH,OAAO,CAAC;EACV,SACE,OAAO,CAAC;CACZ;AACF;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC,CAAC,IAAI;CAC/D,OAAO,MAAM,EAAE,QAAY,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC;AACpF;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC;CACxC,IAAI,IAAI,EAAE,QAAQ,SAAS,GAAG,IAAI,EAAE,QAAQ,CAAC,GAAG;MAAI,KAAK,KAAK,EAAE,QAAQ,WAAW,CAAC,MAAM,IAAI;GAC5F,IAAI,KAAK,KAAK,EAAE,QAAQ,WAAW,IAAI,CAAC,MAAM,IAAI;IAChD,KAAK,IAAI,IAAI,IAAI,GAAG,KAAK,GAAG,KAAK,IAAI,EAAE,QAAQ,WAAW,CAAC,MAAM,IAAI;KACnE,EAAE,UAAU,EAAE,QAAQ,UAAU,GAAG,IAAI,CAAC;KACxC;IACF;IACA,EAAE,KAAK;KACL,MAAM;KACN,OAAO,EAAE;IACX,CAAC;GACH,OAAO,EAAE,UAAU,EAAE,QAAQ,MAAM,GAAG,EAAE,GAAG,EAAE,KAAK;IAChD,MAAM;IACN,OAAO,EAAE;GACX,CAAC;EACH,OAAO,EAAE,KAAK;GACZ,MAAM;GACN,OAAO,EAAE;EACX,CAAC;CAAA;CACD,KAAK,KAAK,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;CAChD,OAAO,EAAE,MAAM,GAAG,CAAC;AACrB;AAEA,KAAK,IADD,KAAK,CAAC,GACD,KAAK,GAAG,KAAK,KAAK,MAAM,GAAG,KAAK,CAAC;AAC1C,qCAAqC,MAAM,EAAE,CAAC,CAAC,QAAQ,SAAU,GAAG;CAClE,GAAG,EAAE,WAAW,CAAC,KAAK;AACxB,CAAC;AACD,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,IAAI,EAAE,KACN,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC;CACxC,IAAI,KAAK,IAAI,GAAG;EACd,IAAI,IAAI,EAAE,IAAI,WAAW,CAAC,GAAG,IAAI,OAAO,GAAG,OAAO,GAAG,OAAO,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,EAAE,OAAO,GAAG,CAAC;EACvG,IAAI,MAAM,IAAI;GACZ,KAAK,KAAK,EAAE,KAAK;IACf,MAAM;IACN,OAAO,EAAE;GACX,CAAC,GAAG,KAAK,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;GAC/C,OAAO,EAAE,MAAM,GAAG,CAAC;EACrB;CACF;CACA,OAAO,MAAM,EAAE,WAAW,OAAO,EAAE,OAAO,CAAC;AAC7C;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,GACA,IAAI,EAAE;CAER,IADM,EAAE,IAAI,WAAW,CACnB,MAAM,IAAI,OAAO,CAAC;CACtB,KAAK,IAAI,GAAG,KAAK,IAAI,EAAE,QAAQ,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;CACrE,KAAK,IAAI,EAAE,IAAI,MAAM,GAAG,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,EAAE,IAAI,QAAQ,KAAK,CAAC,OAAO,KAAK;EAC1E,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;EACtD,IAAI,IAAI,MAAM,EAAE,QAAQ,OAAO,KAAK,EAAE,KAAK;GACzC,MAAM;GACN,SAAS,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,WAAW,GAAG,CAAC,CAAC,KAAK;GACxD,OAAO,CAAC;GACR,OAAO,EAAE;EACX,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC;CAClB;CACA,OAAO,MAAM,EAAE,WAAW,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC;AACpD;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,EAAE,QACN,IAAI,EAAE,KACN,GACA;CACF,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,OAAO,KAAK,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,OAAO,EAAE,SAAS,EAAE,QAAQ,eAAe,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,MAAM,QAAQ,MAAM,OAAO,MAAM,MAAM,MAAM,IAAI,OAAO,CAAC;CAC7P,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM;CACvD,IAAI,IAAI,IAAI,GAAG,OAAO,EAAE,OAAO,IAAI,GAAG,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,IAAI,CAAC;CAC9E,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,MAAM,IAAI,IAAI;EACzC,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,MAAM,OAAO,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,MAAM,QAAQ,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,OAAO,MAAM,QAAQ,MAAM,MAAM,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,KAAK,KAAK;GACnQ,IAAI,CAAC;GACL;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK;EACxD,MAAM;EACN,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,SAAS,CAAC,GAAG,EAAE,KAAK;EAC/B,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;AAC9D;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,EAAE,QACN,IAAI,EAAE,KACN,GACA;CACF,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,KAAK,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,eAAe,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,MAAM,OAAO,MAAM,MAAM,MAAM,MAAM,MAAM,IAAI,OAAO,CAAC;CACzP,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;CACtD,IAAI,MAAM,IAAI,GAAG,OAAO,EAAE,OAAO,IAAI,GAAG,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,IAAI,CAAC;CAChF,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,MAAM,IAAI,IAAI;EACzC,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,MAAM,MAAM,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,MAAM,OAAO,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,MAAM,MAAM,OAAO,MAAM,MAAM,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,KAAK,KAAK;GAC/P,IAAI,CAAC;GACL;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK;EACxD,MAAM;EACN,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,SAAS,CAAC,GAAG,EAAE,KAAK;EAC/B,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;AAC9D;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,EAAE,QACN,IAAI,EAAE,KACN,GACA;CACF,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,KAAK,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,eAAe,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,MAAM,OAAO,MAAM,MAAM,MAAM,MAAM,MAAM,IAAI,OAAO,CAAC;CACzP,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,KAAK;CACtD,IAAI,MAAM,IAAI,GAAG,OAAO,EAAE,OAAO,IAAI,GAAG,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,IAAI,CAAC;CAChF,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,MAAM,IAAI,IAAI;EACzC,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,MAAM,MAAM,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,MAAM,OAAO,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,EAAE,IAAI,WAAW,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,MAAM,MAAM,OAAO,MAAM,MAAM,MAAM,KAAK,MAAM,MAAM,MAAM,MAAM,MAAM,KAAK,KAAK,KAAK;GAC/P,IAAI,CAAC;GACL;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK;EACxD,MAAM;EACN,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,SAAS,CAAC,GAAG,EAAE,KAAK;EAC/B,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;AAC9D;AACA,SAAS,GAAG,GAAG;CACb,OAAO,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM,KAAK;AACrE;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,IAAI,GACN,GACA,GACA,GACA,IAAI,CAAC,GACL,IAAI,CAAC,GACL,IAAI,EAAE,QACN,IAAI,EAAE,IAAI,WAAW,CAAC;CACxB,KAAK,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI;CACpF,OAAO,KAAK,MAAM,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,EAAE,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,MAAM,MAAM,QAAQ,IAAI,CAAC,KAAK,MAAM,MAAM,MAAM,QAAQ,IAAI,CAAC,IAAI,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM;EAC9N,UAAU;EACV,WAAW;EACX,QAAQ;CACV;AACF;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,GACA,GACA,GACA,IAAI,EAAE,QACN,IAAI,EAAE,KACN,IAAI,EAAE,IAAI,WAAW,CAAC;CACxB,IAAI,MAAM,MAAM,MAAM,MAAM,GAAG,OAAO,CAAC;CACvC,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,UAAU,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;CAC5G,IAAI,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CAC7C,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,IAAI;EACvC,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,MAAM,GAAG;GACjC,IAAI,IAAI,GAAG,GAAG,EAAE,GAAG,GAAG,IAAI,EAAE,QAAQ,EAAE,WAAW;IAC/C,KAAK,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,IAAI;KACjC,IAAI,IAAI,GAAG;MACT,EAAE,KAAK,IAAI,CAAC;MACZ;KACF;KACA,IAAI,KAAK,GAAG,EAAE,WAAW,GAAG;KAC5B,EAAE,OAAO,GAAG,IAAI,EAAE,IAAI;IACxB;IACA,IAAI,EAAE,WAAW,GAAG;KAClB,IAAI,GAAG,IAAI,CAAC;KACZ;IACF;IACA,EAAE,OAAO;IACT;GACF;GACA,EAAE,YAAY,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO;GAClC;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,MAAM,MAAM,EAAE,KAAK;EAChF,MAAM;EACN,OAAO,EAAE;CACX,CAAC,IAAI,MAAM,KAAK,MAAM,MAAM,EAAE,KAAK;EACjC,MAAM;EACN,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,SAAS,CAAC,IAAI,MAAM,KAAK,MAAM,MAAM,EAAE,KAAK;EACvD,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,IAAI,MAAM,KAAK,MAAM,MAAM,EAAE,KAAK;EACjC,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;AAC9D;AACA,IAAI,KAAK;AACT,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,IAAI,EAAE,QACN,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,OAAO,KAAK,IAAI,KAAK,KAAK,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CAC/F,KAAK,EAAE,MAAM,IAAI,GAAG,EAAE,MAAM,IAAI;EAC9B,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,MAAM,KAAK;GACnC,IAAI,CAAC;GACL;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,CAAC,KAAK,IAAI,MAAM,EAAE,QAAQ,IAAI,EAAE,IAAI,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE,MAAM,oBAAoB,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,KAAK,EAAE,KAAK;EAC/J,MAAM;EACN,OAAO,EAAE;EACT,SAAS,EAAE,QAAQ,IAAI,IAAI;CAC7B,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC;AAC3C;AACA,IAAI,KAAK;AACT,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,IAAI,EAAE,QACN,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,KAAK,IAAI,KAAK,KAAK,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CAC9F,KAAK,EAAE,MAAM,IAAI,GAAG,EAAE,MAAM,IAAI;EAC9B,IAAI,EAAE,IAAI,WAAW,EAAE,GAAG,MAAM,IAAI;GAClC,IAAI,CAAC;GACL;EACF;EACA,EAAE,OAAO,UAAU,CAAC;CACtB;CACA,OAAO,CAAC,KAAK,IAAI,MAAM,EAAE,QAAQ,IAAI,EAAE,IAAI,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE,MAAM,oBAAoB,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,GAAG,KAAK,EAAE,KAAK;EAC/J,MAAM;EACN,OAAO,EAAE;EACT,SAAS,EAAE,QAAQ,IAAI,IAAI;CAC7B,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,SAAS,GAAG,CAAC;AAC3C;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAI,CAAC,GACL,IAAI,EAAE,KACN,IAAI,EAAE,QACN,IAAI,EAAE,KACN,IAAI,EAAE,IAAI,WAAW,CAAC;CACxB,IAAI,MAAM,OAAO,IAAI,CAAC,GAAG,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC,IAAI,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,eAAe,IAAI,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC;CAC9I,IAAI,IAAI,IAAI,GAAG,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI;EAClD,KAAK,KAAK,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAK,MAAM,MAAM,MAAM,KAAM;EACvE,IAAI,KAAK,GAAG,OAAO,CAAC;EACpB,KAAK,IAAI,GAAG,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,aAAa,IAAI,EAAE,OAAO,IAAI,IAAI,IAAI,GAAG,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAK,MAAM,MAAM,MAAM,KAAM;EACpI,IAAI,IAAI,KAAK,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,IAAI,EAAE,aAAa,IAAI,EAAE,KAAK,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAK,MAAM,MAAM,MAAM,KAAM;OAAU,IAAI;EAChJ,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,EAAE,MAAM,GAAG,CAAC;EAC7D;CACF,OAAO;EACL,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;EAC7B,OAAO,IAAI,MAAM,IAAI,EAAE,IAAI,WAAW,CAAC,GAAK,MAAM,MAAM,MAAM,KAAM;EACpE,IAAI,IAAI,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,OAAO,IAAI,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,IAAI,MAAM,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,AAAuC,OAAjC,EAAQ,CAAC,IAAI,QAAQ,IAAI,IAAI,IAAQ,EAAE,IAAI,MAAM,GAAG,CAAC,IAAI,IAAI,EAAE,IAAI,WAAW,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,EAAE,MAAM,GAAG,CAAC;EACvO,IAAI,EAAE,MAAM,IAAI,EAAE;CACpB;CACA,OAAO,MAAM,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,IAAI,EAAE,KAAK;EAC/C,MAAM;EACN,KAAK;EACL,OAAO;EACP,KAAK,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC;EAC1B,OAAO,EAAE;CACX,CAAC,KAAK,EAAE,KAAK;EACX,MAAM;EACN,MAAM;EACN,OAAO;EACP,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,SAAS,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK;EAC7D,MAAM;EACN,OAAO,EAAE,EAAE;CACb,CAAC,KAAK,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,CAAC;AAClC;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,IAAI,EAAE,QACN,IAAI,EAAE;CACR,OAAO,IAAI,KAAK,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,eAAe,IAAI,IAAI,GAAG,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,IAAI,YAAY,CAAC,IAAI,EAAE,IAAI,UAAU,SAAS,EAAE,IAAI,UAAU,OAAO,CAAC,IAAI,IAAI,EAAE,IAAI,UAAU,KAAK,QAAQ,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,EAAE,KAAK;EAC1U,MAAM;EACN,IAAI;EACJ,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,aAAa,IAAI,EAAE,OAAO,QAAQ,EAAE,OAAO,SAAS,CAAC,GAAG,EAAE,IAAI,UAAU,KAAK,KAAK,EACtF,QAAQ,EAAE,OAAO,OAAO,CAAC,EAC3B,GAAG,EAAE,cAAc,EAAE,MAAM,IAAI,GAAG,EAAE,SAAS,GAAG,CAAC;AACnD;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,IAAI,EAAE,QACN,IAAI,EAAE;CACR,IAAI,IAAI,IAAI,KAAK,CAAC,EAAE,IAAI,aAAa,CAAC,EAAE,IAAI,UAAU,QAAQ,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,EAAE,IAAI,WAAW,IAAI,CAAC,MAAM,MAAM,EAAE,SAAS,EAAE,QAAQ,YAAY,OAAO,CAAC;CACvK,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK;EAC1B,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC;EACtE,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI;CAClC;CACA,OAAO,MAAM,IAAI,KAAK,KAAK,MAAM,KAAK,IAAI,EAAE,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAQ,EAAE,IAAI,UAAU,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,KAAK,MAAM,EAAE,IAAI,UAAU,SAAS,EAAE,IAAI,UAAU,OAAO,CAAC,IAAI,EAAE,IAAI,UAAU,KAAK,MAAM,KAAK,KAAK,IAAI,EAAE,IAAI,UAAU,KAAK,QAAQ,EAAE,IAAI,UAAU,KAAK,KAAK;EACpR,OAAO;EACP,OAAO;CACT,GAAG,EAAE,IAAI,UAAU,KAAK,MAAM,KAAK,KAAK,IAAI,EAAE,IAAI,UAAU,KAAK,MAAM,IAAI,IAAI,EAAE,IAAI,UAAU,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,UAAU,KAAK,EAAE,CAAC,SAAS,EAAE,KAAK;EACpJ,MAAM;EACN,IAAI;EACJ,OAAO;EACP,OAAO,EAAE;CACX,CAAC,IAAI,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,CAAC;AACjC;AACA,IAAI,KAAK,yiCAAy/C,GAChgD,KAAK,4IACL,KAAK;AACP,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,GACA,GACA,IAAI,EAAE;CACR,OAAO,EAAE,IAAI,WAAW,CAAC,MAAM,OAAO,IAAI,EAAE,IAAI,MAAM,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,QAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,KAAK,CAAC,KAAK,MAAM,EAAE,KAAK;EAClO,MAAM;EACN,MAAM;EACN,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,KAAK;EACT,MAAM;EACN,SAAS;EACT,OAAO,EAAE,QAAQ;CACnB,CAAC,GAAG,EAAE,KAAK;EACT,MAAM;EACN,OAAO,EAAE;CACX,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,OAAO,aAAa,CAAC,KAAK,MAAM,EAAE,KAAK;EAC7I,MAAM;EACN,MAAM;EACN,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,KAAK;EACT,MAAM;EACN,SAAS;EACT,OAAO,EAAE,QAAQ;CACnB,CAAC,GAAG,EAAE,KAAK;EACT,MAAM;EACN,OAAO,EAAE;CACX,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;AAC1C;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,OAAO,IAAI,EAAE,QAAQ,MAAS,IAAI,SAAS,EAAE,GAAG,GAAG;EACjD,OAAO,KAAK,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,QAAQ,GAAG,CAAC,GAAG,KAAK,IAAI,OAAO,GAAG,CAAC;CAC1E;AACF;AACA,IAAI,KAAK,8BAIP,KAAK,GAAG,0CAA0C,CAAC,CAAC,YAAY,qBAAE,CAAC,CAAC,iBAAiB,SAAE,CAAC,CAAC,iBAAiB,SAAE,CAAC,CAAC,GAC9G,KAAK,GAAG,wCAAwC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,GACrF,KAAK,GAAG,wCAAwC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,GAMnE,KAAK,GAAG,8DAA8D,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,aAAa,6BAAE,CAAC,CAAC,WAAW,uCAAE,CAAC,CAAC,cAAc,aAAE,CAAC,CAAC,eAAe,mBAAE,CAAC,CAAC,SAAS,0BAAE,CAAC,CAAC;AAC5K,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,IAAI;CACZ,OAAO,KAAK,MAAM,KAAK;AACzB;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,EAAE;CACR,OAAO,CAAC,EAAE,QAAQ,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,WAAW,CAAC,MAAM,MAAM,IAAI,KAAK,OAAO,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,KAAK;EACxN,MAAM;EACN,SAAS,EAAE,IAAI,MAAM,GAAG,IAAI,EAAE,EAAE,CAAC,MAAM;EACvC,OAAO,EAAE;CACX,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;AAC7B;AACA,IAAI,KAAK,wCACP,KAAK;AACP,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,GACF,GACA,GACA,IAAI,EAAE,KACN,IAAI,EAAE;CACR,IAAI,EAAE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC;CACxC,IAAI,IAAI,IAAI,GAAG;EACb,IAAI,IAAI,EAAE,IAAI,WAAW,IAAI,CAAC,GAAG,MAAM,IACjC;OAAA,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,MAAM,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,MAAM,MAAM,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;EAAA,OACnM,IAAI,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG;GAC1C,IAAI,IAAI,GAAG,EAAE,EAAE;GACf,IAAI,EAAE,OAAO,GAAG,OAAO,MAAM,EAAE,WAAW,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC;EACvE;CACF;CACA,OAAO,MAAM,EAAE,WAAW,MAAM,EAAE,OAAO,CAAC;AAC5C;AACA,IAAI,KAAK;CAAC,CAAC,QAAQ,EAAE;CAAG,CAAC,WAAW,EAAE;CAAG,CAAC,UAAU,EAAE;CAAG,CAAC,aAAa,EAAE;CAAG,CAAC,OAAO,EAAE;CAAG,CAAC,OAAO,EAAE;CAAG,CAAC,QAAQ,EAAE;CAAG,CAAC,YAAY,EAAE;CAAG,CAAC,OAAO,EAAE;CAAG,CAAC,OAAO,EAAE;CAAG,CAAC,SAAS,EAAE;CAAG,CAAC,mBAAmB,EAAE;CAAG,CAAC,gBAAgB,EAAE;CAAG,CAAC,YAAY,EAAE;CAAG,CAAC,WAAW,EAAE;CAAG,CAAC,UAAU,EAAE;AAAC;AAC/Q,SAAS,KAAK;CACZ,KAAK,QAAQ,IAAI,EAAG;CACpB,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,QAAQ,KAAK,KAAK,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE;CACtE,KAAK,eAAe;AACtB;AACA,GAAG,UAAU,YAAY,SAAU,GAAG;CACpC,IAAI,IAAI,KAAK,MAAM,SAAS,EAAE,GAC5B,IAAI,EAAE,QACN,IAAI,EAAE,KACN,GACA;CACF,KAAK,IAAI,EAAE,SAAS,CAAC,KAAK,GAAG;EAC3B,EAAE,MAAM;EACR;CACF;CACA,KAAK,IAAI,GAAG,IAAI,GAAG,KAAK,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG;EACvC,EAAE,SAAS,GAAG,EAAE,GAAG;EACnB;CACF;CACA,EAAE,OAAO,EAAE,SAAS,GAAG,EAAE,GAAG;AAC9B,GACA,GAAG,UAAU,WAAW,SAAU,GAAG;CACnC,KAAK,IAAI,IAAI,KAAK,MAAM,SAAS,EAAE,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,QAAQ,GAAG,GAAG,EAAE,MAAM,IAAI;EAClF,KAAK,IAAI,GAAG,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI;EAC5C,IAAI,GAAG;GACL,IAAI,EAAE,OAAO,GAAG;GAChB;EACF;EACA,EAAE,WAAW,EAAE,IAAI,EAAE;CACvB;CACA,EAAE,WAAW,EAAE,YAAY;AAC7B,GACA,GAAG,UAAU,QAAQ,SAAU,GAAG,GAAG,GAAG,GAAG;CACzC,IAAI,IAAI,IAAI,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC;CAC/B,KAAK,SAAS,CAAC;AACjB;AACA,SAAS,GAAG,GAAG;CACb,IAAI,IAAI;EAAC;EAAY;EAAc;EAAQ;CAAM,GAC/C,IAAI,EAAE,KAAK,CAAC,CAAC,YAAY;CAC3B,OAAO,IAAI,EAAG,CAAC,GAAK,EAAE,QAAQ,GAAG,MAAM,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,MAAM;AAC9E;AACA,IA6GE,KAAK;CACH,SAAW;EA7GX,SAAS;GACP,MAAM,CAAC;GAEP,UAAU,CAAC;GAEX,QAAQ,CAAC;GAET,YAAY;GAEZ,YAAY;GAGZ,aAAa,CAAC;GAGd,QAAQ;GAMR,WAAW;GACX,YAAY;EAEd;EACA,YAAY;GACV,MAAM,EACJ,OAAO;IAAC;IAAS;IAAU;IAAc;IAAgB;IAAe;IAAc;IAAS;GAAe,EAChH;GACA,OAAO,EACL,OAAO;IAAC;IAAc;IAAQ;IAAU;IAAY;IAAW;IAAM;IAAa;IAAY;IAAQ;IAAa;GAAO,EAC5H;GACA,QAAQ,EACN,OAAO;IAAC;IAAY;IAAa;IAAO;IAAY;IAAU;IAAU;IAAgB;IAAW;IAAS;IAAW;GAAM,EAC/H;EACF;CA0EY;CACZ,MAAM;EAxEN,SAAS;GACP,MAAM,CAAC;GAEP,UAAU,CAAC;GAEX,QAAQ,CAAC;GAET,YAAY;GAEZ,YAAY;GAGZ,aAAa,CAAC;GAGd,QAAQ;GAMR,WAAW;GACX,YAAY;EAEd;EACA,YAAY;GAEV,MAAM,CAAC;GACP,OAAO,CAAC;GACR,QAAQ,CAAC;EACX;CA0CO;CACP,YAAY;EAxCZ,SAAS;GACP,MAAM,CAAC;GAEP,UAAU,CAAC;GAEX,QAAQ,CAAC;GAET,YAAY;GAEZ,YAAY;GAGZ,aAAa,CAAC;GAGd,QAAQ;GAMR,WAAW;GACX,YAAY;EAEd;EACA,YAAY;GACV,MAAM,EACJ,OAAO;IAAC;IAAS;IAAU;IAAc;GAAO,EAClD;GACA,OAAO,EACL,OAAO;IAAC;IAAc;IAAQ;IAAU;IAAW;IAAM;IAAa;IAAY;IAAQ;GAAW,EACvG;GACA,QAAQ,EACN,OAAO;IAAC;IAAY;IAAa;IAAY;IAAU;IAAU;IAAW;IAAS;IAAW;GAAM,EACxG;EACF;CAKa;AACf;AACF,SAAS,GAAG,GAAG,GAAG,GAAG;CACnB,KAAK,MAAM,GAAG,KAAK,MAAM,GAAG,KAAK,UAAU,EAAE,SAAS,KAAK,SAAS,CAAC,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,SAAS,EAAE,QAAQ,KAAK,QAAQ,EAAE,OAAO,KAAK,WAAW,EAAE,UAAU,KAAK,cAAc,EAAE;AAC/L;AACA,SAAS,EAAG,GAAG,GAAG;CAChB,OAAO,KAAK,aAAa,IAAI,GAAG,IAAI,YAAY,KAAK,EAAE,WAAW,QAAQ,QAAQ,KAAK,4KAA4K,GAAG,KAAK,SAAS,IAAI,GAAG,GAAG,KAAK,QAAQ,IAAI,GAAG,GAAG,KAAK,OAAO,IAAI,GAAG,GAAG,KAAK,WAAW,IAAI,GAAG,GAAG,KAAK,QAAQ,IAAI,EAAG,GAAG,KAAK,UAAU,CAAC,GAAG,KAAK,UAAU,GAAG,EAAE,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC;AACxb;AACA,EAAG,UAAU,MAAM,SAAU,GAAG;CAC9B,GAAG,KAAK,SAAS,CAAC;AACpB,GACA,EAAG,UAAU,YAAY,SAAU,GAAG;CACpC,IAAI,IAAI;CACR,IAAI,CAAC,GAAG,MAAU,MAAM,+CAA+C;CACvE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,cAAc,OAAO,KAAK,EAAE,UAAU,CAAC,CAAC,QAAQ,SAAU,GAAG;EAC5F,EAAE,WAAW,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,OAAO,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC;CACtE,CAAC;AACH,GACA,EAAG,UAAU,MAAM,SAAU,GAAG,GAAG;CACjC,OAAO,EAAE,MAAM,CAAC,GAAG;AACrB,GACA,EAAG,UAAU,QAAQ,SAAU,GAAG,GAAG;CACnC,IAAI,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC;CACzB,OAAO,KAAK,KAAK,QAAQ,CAAC,GAAG,EAAE;AACjC,GACA,EAAG,UAAU,SAAS,SAAU,GAAG,GAAG;CACpC,OAAO,MAAS,CAAC,GAAG,KAAK,SAAS,OAAO,KAAK,MAAM,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC;AAC5E,GACA,EAAG,UAAU,cAAc,SAAU,GAAG,GAAG;CACzC,IAAI,IAAI,IAAI,GAAG,MAAM,GAAG,CAAC;CACzB,OAAO,EAAE,aAAa,CAAC,GAAG,KAAK,KAAK,QAAQ,CAAC,GAAG,EAAE;AACpD,GACA,EAAG,UAAU,eAAe,SAAU,GAAG,GAAG;CAC1C,OAAO,MAAS,CAAC,GAAG,KAAK,SAAS,OAAO,KAAK,YAAY,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC;AAClF;AACA,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,WAAuB;GAC5B,IAAI,IAAI,OAAO;GACf,OAAO,IAAI,IAAI,EAAG;IAChB,WAAW,SAAmB,GAAG,GAAG;KAClC,IAAI,KAAK,EAAE,YAAY,CAAC,GAAG,IAAI;MAC7B,OAAO,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;KAC3B,QAAmB;MACjB,QAAQ,MAAM,0CAA0C;KAC1D;KACA,IAAI;MACF,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;KAC5B,QAAmB;MACjB,QAAQ,MAAM,4CAA4C;KAC5D;KACA,OAAO;IACT;IACA,MAAM,CAAC;IAEP,UAAU,CAAC;IAEX,QAAQ,CAAC;IAET,YAAY;IAEZ,YAAY;IAEZ,aAAa,CAAC;GAEhB,CAAC,IAAI,IAAI,EAAG;IACV,QAAQ,CAAC;IACT,YAAY;GAEd,CAAC;EACH;CACF,GAAG;EACD,KAAK;EACL,OAAO,WAAqB;GAC1B,IAAI,IAAI,EAAG,YAAY;GACvB,OAAO,EAAE,OAAO,eAAe,WAAY;IACzC,OAAO,CAAC;GACV,GAAG;EACL;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAEA,SAAoB,GAAG,GAAG,GAAG,GAAG,GAAG;IAEjC,EAAE,kBAAkB,GAAG,GAAG,CAAC,GAAQ,EAAE,gBAAoC,EAAE,GAAG,MAAM,EAAE,WAAW,YAAY,EAAE,cAAc,GAAG,EAAE,WAAW,YAAY,EAAE,WAAW;GACxK;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG,GAAG;IAClC,IAAI,IAAI,SAAS,cAAc,GAAG;IAClC,OAAO,EAAE,OAAO,GAAG,EAAE,WAAW,KAAK,EAAG,mBAAmB,EAAE,SAAS,UAAU,EAAE,YAAY,CAAC,GAAG;GACpG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,OAAO,CAAC,EAAE,WAAW,MAAM,KAAK,MAAM,UAAU,CAAC,IAAI,MAAM,SAAS,EAAE,WAAW,sBAAsB,KAAK,CAAC,EAAE,WAAW,YAAY,KAAK,CAAC,EAAE,WAAW,kBAAkB;GAC7K;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG,GAAG;IACzC,OAAO,CAAC,KAAK,EAAG,qBAAqB,GAAG,CAAC,IAAI,IAAI,EAAG,WAAW,GAAG,GAAG,CAAC;GACxE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,WAAW,WAAY;KACrB,EAAE,YAAY,EAAE;IAClB,GAAG,EAAE;GACP;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG,GAAG;IAC1C,IAAI,EAAE,WAAW,MAAM,GAAG,EAAG,qBAAqB,CAAC;SAAO,IAAI;KAC5D,MAAM,GAAG,EACP,MAAM,UACR,CAAC,CAAC,CAAC,MAAS,WAAY,CAAC,CAAC,CAAC,CAAC,QAAW,WAAY;MACjD,EAAG,qBAAqB,CAAC;KAC3B,CAAC;IACH,QAAmB;KACjB,EAAE,YAAY,EAAE;IAClB;GACF;EAIF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IAAI;IACJ,CAAC,IAAI,EAAE,UAAU,QAAQ,EAAE,QAAQ,SAAU,GAAG,GAAG;KACjD,IAAI;KACJ,EAAE,QAAQ,IAAI,EAAE,QAAQ,UAAU,QAAQ,EAAE,OAAO,EAAE,QAAQ,MAAM,EAAE,CAAC,MAAM,EAAE;IAChF,CAAC;GACH;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAI,EAAc,CAAC,GAAG,CAAC;IAC3B,OAAO,OAAO,EAAE,KAAK;GACvB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,IAAI,IAAI,iCACN,IAAI,EAAE,MACN,IAAI,EAAE;IACR,OAAO,MAAM,WAAY,GAAuB,WAAW,YAAY,KAAM,KAAK,EAAE,KAAK,CAAC;GAC5F;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,IAAI,IAAI,EAAE,MACR,IAAI,EAAE;IACR,OAAO,MAAM,WAAY,GAAuB,WAAW,YAAY,KAAM,KAAK,EAAG,qBAAqB,CAAC;GAC7G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,OAAO,6BAA6B,KAAK,CAAC;GAC5C;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,oBAAoB;AACvB,IAAI,IAAI,IACJ,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,GAAG;IACjC,IAAI,GACA,IAAI,KAAK,MAAM,KAAK,UAAU;KAChC,SAAS;KACT,WAAW;KACX,WAAW;IACb,CAAC,CAAC;IACF,EAAE,qBAAqB,GAAG,CAAC,IAAI,IAAI,EAAE,cAAc,QAAQ,EAAE,KAAK,GAAG,CAAC,GAAG,EAAE,cAAc,IAAI,YAAY,WAAW,EAClH,QAAQ,EACV,CAAC,CAAC,GAAG,EAAG,iBAAiB,GAAG,CAAC;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,IAAI;IACJ,CAAC,IAAI,EAAE,oBAAoB,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,cAAc,IAAI,YAAY,gBAAgB,CAAC;GACjG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkB,GAAG;IAC1B,IAAI;IACJ,CAAC,IAAI,EAAE,sBAAsB,QAAQ,EAAE,KAAK,GAAG,CAAC,GAAG,EAAE,cAAc,IAAI,YAAY,UAAU,EAC3F,QAAQ,EACV,CAAC,CAAC;GACJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG;IAC5B,IAAI;IACJ,CAAC,IAAI,EAAE,YAAY,QAAQ,EAAE,KAAK,GAAG,CAAC,GAAG,EAAE,cAAc,IAAI,YAAY,SAAS,EAChF,QAAQ,EACV,CAAC,CAAC;GACJ;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAAqC,GAAG,GAAG,GAAG;IACnD,IAAI,MAAM,OAAO,OAAO,EAAE,eAAe,OAAO,EAAE,cAAc,GAAG,OAAO,OAAO,EAAE,eAAe,OAAO,EAAE,cAAc,GAAG,OAAO,OAAO,EAAE,cAAc,OAAO,EAAE,MAAM,GAAG,IAAI;KAC9K,IAAI,IAAI,EAAE,cAAc,SAAS,IAC/B,IAAI,EAAE,QAAQ,kBAAkB,MAAM,MAAU,EAAE,SAAS,KAAf;KAC9C,OAAO,OAAO,EAAE,OAAO,EAAE,KAAK;IAChC;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG,GAAG;IAC1C,MAAM,EAAE,4BAA4B,GAAG,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,YAAY,EAAE,4BAA4B,GAAG,GAAG,EAAE,IAAI,KAAK,EAAE,4BAA4B,GAAG,GAAG,EAAE,EAAE,GAAG,EAAE,4BAA4B,GAAG,GAAG,EAAE,EAAE;GAC7M;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,OAAO,CAAC,EAAE,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,UAAU,EAAE;GAClE;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG,GAAG,GAAG;IAE/C,KAAK,EAAE,YAAe,IAAI,EAAE,iBAAiB,CAAC,KAAK,EAAE,4BAA4B,GAAG,GAAQ,EAAE,SAAiC,MAAM,GAAG,EAAE,4BAA4B,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,GAAG,GAAG,GAAG,EAAE,OAAU,GAAG,EAAE,gBAAgB,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,gBAAgB,GAAG,GAAG,GAAG,EAAE,OAAU;GACvS;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuC,GAAG,GAAG;IAC5C,SAAK,QAAQ,EAAE,QACrB;SAAI,IAAI,EAAE,QACR,IAAI;MACF,gBAAgB,CAAC;MACjB,gBAAgB,CAAC;MACjB,QAAQ,CAAC;MACT,OAAO,CAAC;KACV;KACF,OAAO,EAAE,QAAQ,SAAU,GAAG;MAE5B,EAAE,eAAe,KAAW,EAAE,iBAAqC,MAAO,IAAI,EAAE,eAAe,KAAW,EAAE,iBAAqC,MAAO,IAAI,EAAE,OAAO,KAAW,EAAE,SAA6B,MAAO,IAAI,EAAE,MAAM,KAAW,EAAE,QAA4B,MAAO;KACpR,CAAC,GAAG;IAJF;GAKJ;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG;EACb,IAAI,IAAS;EAEb,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,qBAAqB,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,KAAK,qBAAqB,CAAC,GAAG,KAAK,qBAAqB,CAAC,GAAG,KAAK,aAAa,EAAG,uBAAuB,GAAG,KAAK,gBAAgB,EAAE,eAAe,KAAK,cAAc,GAAG,UAAU,GAAG,KAAK,WAAW,EAAE,SAAS,KAAK,SAAS,EAAE,OAAO,KAAK,aAAa,GAAG,UAAU,KAAK,MAAM,CAAC,GAAG,EAAE,uBAAuB,KAAK,qBAAqB,EAAE,qBAAqB,WAAW,WAAY;GACra,EAAO,oBAAoB,EAAE;EAC/B,CAAC;CACH;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAEA,SAA2B,GAAG,GAAG,GAAG;IAClC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;IACvE,IAAI,KAAK,QAAQ,EAAE,QAAQ;KACzB,IAAI,IAAI,KAAK,cAAc,GAAG,GAAG,KAAK,kBAAkB;KACxD,IAAI,GAAG,OAAO;KACd,EAAE,SAAS,CAAC;IACd;IACA,IAAI,IAAI,IAAI,KAAK,kCAAkC,GAAG,GAAG,CAAC,IAAI,KAAK,iCAAiC,GAAG,CAAC;IACxG,EAAE,cAAc,UAAU,IAAI,cAAc,GAAG,KAAK,kBAAkB,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,wBAAwB,EAAE,eAAe,CAAC;IAC7H,IAAI,IAAI,CAAC,GAAG,CAAC;IACb,OAAO,EAAE,aAAa,KAAK,oBAAoB,GAAG,CAAC,GAAG;GACxD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG,GAAG;IACrC,IAAI,IAAI,EAAE,iBAAiB,KAAK,UAAU,GAAG,GAAG,GAAG,QAAQ,cAAc;IACzE,IAAI,GAAG;KACL,KAAK,WAAW,EAAE,eAAe,CAAC;KAClC,IAAI,IAAI,EAAE,qBAAqB,KAAK,oBAAoB,CAAC;KACzD,MAAM,EAAE,KAAK;IACf;IACA,OAAO;GACT;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0C,GAAG,GAAG;IACrD,IAAI,IAAS,MACT,IAAI,KAAK,wBAAwB,GAAG,CAAC;IACzC,OAAO,KAAK,WAAW,YAAY,EAAE,cAAc,GAAG,WAAW,WAAY;KAC3E,OAAO,EAAE,eAAe,EAAO,UAAU;IAC3C,CAAC,GAAG;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2C,GAAG,GAAG,GAAG;IACzD,IAAI,IAAI,KAAK,wBAAwB,GAAG,GAAG,CAAC;IAC5C,OAAO,KAAK,WAAW,aAAa,EAAE,gBAAgB,KAAK,WAAW,UAAU,GAAG;GACrF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4C,GAAG,GAAG,GAAG;IAC1D,OAAO,IAAI,KAAK,kCAAkC,GAAG,GAAG,CAAC,IAAI,KAAK,wBAAwB,GAAG,GAAG,CAAC;GACnG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE;IACJ,CAAC,IAAI,KAAK,gBAAgB,QAAQ,EAAE,KAAK;IACzC,IAAI,IAAI,KAAK,mBAAmB,KAAK,mBAAmB,SAAS;IACjE,OAAO,EAAG,mBAAmB,CAAC,MAAM,EAAE,eAAe,OAAO,GAAG,KAAK,mBAAmB,IAAI,IAAI,KAAK,sBAAsB,GAAG,GAAG,CAAC;GACnI;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG,GAAG;IAC1C,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE,IAAI,EAAG,mBAAmB,GAC5B,IAAI,EAAE,gBACN,IAAI,EAAE,gBACN,IAAI,EAAE;IACR,OAAO,EAAE,YAAY,CAAC,GAAG,KAAK,0BAA0B,GAAG,GAAG,CAAC,GAAG,EAAE,aAAa,KAAK,oBAAoB,GAAG,CAAC,GAAG;GACnH;EACF;EAAG;GACD,KAAK;GACL,OAEA,SAAmC,GAAG,GAAG,GAAG;IAE1C,OAAa,KAAK,SAAS,KAAK,SAAS,SAAS,EAAA,EAAyB,SAAU,KAAK,CAAC,KAAK,mBAAmB,KAAK,EAAE,iBAAiB,KAAK,oBAAoB,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,KAAK,MAAM,GAAG,EAAE,UAAU,IAAI,kBAAkB,EAAE,aAAa,CAAC,GAAG,MAAM,EAAE,YAAY,sBAAsB,iBAAiB,GAAG,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,gBAAgB,GAAG,GAAG,KAAK,UAAU,KAAK,MAAM,GAAG,EAClY,eAAe,EACjB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG,GAAG;IAC5C,KAAK,KAAK,iBAAiB,GAAE,kBAAkB,KAAK,eAAe,GAAG,GAAG,GAAG,CAAC;GAC/E;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA6B;IAClC,KAAK,mBAAmB,KAAK,mBAAmB,SAAS,EAAE,CAAC,eAAe,OAAO,GAAG,KAAK,mBAAmB,IAAI;GACnH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA8B;IAEnC,OAAY,EAAE,4BAA4B,KAAK,UAAU,CAAA,EAAwB,UAAU,SAAS,oBAAoB;GAC1H;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE;IACJ,CAAC,IAAI,KAAK,eAAe,QAAQ,EAAE,KAAK,MAAM,GAAG,CAAC;GACpD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,EAAE,YAAY,KAAK,YAAY,OAAO,CAAC,GAAG,EAAE,UAAU,KAAK,CAAC,CAAC,WAAW,MAAM,EAAE,YAAY;GAC9F;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,IAAI,IAAS;IACb,KAAK,cAAc,GAAG,UAAU,GAAG,KAAK,mBAAmB,QAAQ,SAAU,GAAG;KAC9E,EAAO,WAAW,EAAE,EAAE,CAAC,eAAe,EAAE,EAAE;IAC5C,CAAC;GACH;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,WAAkC;IACvC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,YAAY;GAC5B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,OAAQ,GAAuB,cAAc,UAAU,SAAS,sBAAsB,KAAM,GAAG,mBAAmB,CAAC;GACrH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA8B;IACnC,IAAI,IAAI,SAAS,cAAc,KAAK,GAClC,IAAI,SAAS,cAAc,KAAK;IAClC,EAAE,UAAU,IAAI,yBAAyB,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,UAAU,IAAI,yBAAyB;IACvG,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,gBAAgB,GAAG,EAAE,YAAY,CAAC,GAAG;KAC1D,gBAAgB;KAChB,gBAAgB;KAChB,eAAe;IACjB;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,IAAI,IAAI,EAAE,MACR,IAAI,EAAE,OACN,IAAI,EAAE,MACN,IAAI,EAAE,YAEN,IAAI,EACF,MAFE,EAAE,QAEO,EAAE,QACf;IACF,OAAO,MAAM,EAAE,OAAO,IAAI,MAAM,EAAE,QAAQ,IAAI,MAAM,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,aAAa,IAAI;GAC7H;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAEhC,SAAS,EAAG,GAAG;EAEb,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,aAAa,CAAC,GAAG,KAAK,mBAAmB,IAAI,KAAK,cAAc,IAAI,KAAK,kBAAkB,CAAC,GAAG,KAAK,YAAY;CACvH;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA+B,GAAG;IAEnC,UAAK,iBACT;SAAK,GAAuB,SAAU,KAAK,KAAM,GAAuB,SAAU,KAAK,GAAG,OAAO,QAAQ,MAAM,EAAE,oBAAoB;KACrI,IAAI,IAAK,GAAuB,QAAU,GAAuB,QAAS,IACxE,IAAI,EAAE,6BAA6B,KAAK,UAAU,UAAU,GAC5D,IAAK,GAAuB,SAAU,KAAK,IAAa,SAAT;KACjD,IAAI,CAAC,KAAK,aAAa,KAAK,qBAAqB,IAAI,KAAK,gBAAgB,GAAG,GAAG,GAAuB,IAAI;UAAO;MAChH,IAAI,KAAK,gBAAgB,GAAG,OAAO,QAAQ,MAAM,EAAE,wBAAwB;MAC3E,KAAK,kBAAkB,GAAG,GAAQ,KAAK,WAAgC,eAAe,GAAuB,SAAS;KACxH;KACA,KAAK,EAAE,eAAe,KAAK,UAAU,UAAU;IARsF;GASvI;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG;IAEvC,KAAK,cAAc,GAAA,AAAgD,MAAI,EAAE,SAAS,KAAK,YAAY,MAAM,SAAS,KAAK,UAAU,kBAAkB,GAAG,CAAC,IAAI,GAAG,IAAI,KAAK,WAAW,GAAG,GAAG,KAAK,UAAU,kBAAkB,GAAG,KAAK,UAAU,cAAc,UAAU,IAAI,EAAG,aAAa,GAAG,KAAK,mBAAmB,GAAG,KAAK,qBAAqB,GAAG,KAAK,WAAW,EAAgB,EAChX,MAAM,KAAK,mBACb,GAAG,GAAG,KAAK,gBAAgB,GAAG,KAAK,UAAU,SAAS,KAAK,KAAK,QAAQ;GAC1E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG;IACzC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;IACvE,EAAE,0BAA0B,GAAG,CAAC,IAAI,MAAM,SAAS,KAAK,aAAa,KAAK,WAAA,CAAY,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;GAC1G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG,GAAG;IAClC,KAAK,mBAAmB,IAAI,IAAI,KAAK,mBAAmB,GAAG,KAAK,UAAU,mBAAmB,KAAK,UAAU,mBAAmB,SAAS,EAAE,CAAC,KAAK,KAAK,kBAAkB,KAAK,UAAU,WAAW,GAAG,KAAK,gBAAgB;GAC3N;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG,GAAG;IAClC,IAAI,GAAG,KAAK,mBAAmB,GAAG,EAAE,YAAY;SAAO;KACrD,IAAI,IAAI,SAAS,cAAc,MAAM;KACrC,EAAE,YAAY,GAAG,EAAE,YAAY,CAAC,GAAG,KAAK,mBAAmB,EAAG;IAChE;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmC;IACxC,IAAI,GACA,IAAI,KAAK,UAAU;IACvB,IAAI,CAAC,KAAK,6BAA8B,MAAK,cAAe,KAAK,YAAY;KAC3E,IAAI,CAAC,KAAK,WAAW,MAAM,MAAM,EAAE,2BAA2B;KAC9D,CAAC,IAAI,KAAK,UAAU,kBAAkB,QAAQ,EAAE,UAAU,SAAS,EAAG,aAAa,MAAM,KAAK,gBAAgB,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,KAAK,KAAK,kBAAkB,KAAK,aAAa,KAAK,SAAS,OAAO,KAAK,mBAAmB,KAAK,UAAU,gBAAgB,GAAG,MAAM,KAAK,kBAAkB,KAAK,UAAU,YAAY,KAAK,KAAK,gBAAgB,WAAW,KAAK,qBAAqB,EAAG,6BAA6B,KAAK,mBAAyB,KAAK,UAAU,eAAoC,aAAc,KAAK,KAAK,aAAa,GAAG,MAAM,KAAK,WAAW,KAAK,UAAU,cAAc,GAAG,KAAK,aAAa,KAAK,SAAS,OAAO,KAAK,oBAAoB,KAAK,YAAY,KAAK,UAAU,iBAAiB,GAAG,qBAAqB,KAAK,QAAQ,GAAG,CAAC,CAAC,GAAG,KAAK,kBAAkB,CAAC;IACnwB;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAyB;IAC9B,KAAK,aAAa,CAAC;GACrB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAsB;IAC3B,KAAK,wBAAwB,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,mBAAmB,IAAI,KAAK,aAAa,CAAC,GAAG,KAAK,kBAAkB,CAAC,GAAG,KAAK,qBAAqB,KAAK;GACvK;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAgC,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAQ,GAAG,GAAG;KACpH,IAAO,GAAU,GAAG;KACpB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAkB,GAAU;MAC5D,SAAU,QAAQ,EAAS,OAAO,EAAS,MAAjC;OACR,KAAK,GAGH,OAFA,KAAK,2BAA2B,CAAC,GACjC,EAAS,OAAO,GACT,EAAE;OACX,KAAK,GAIH,AAHA,IAAW,EAAS,MACpB,IAAI,EAAS,MACb,IAAI,EAAS,OACb,KAAK,KAAK,kBAAkB,GAAG,QAAa,KAAK,WAAgC,eAAe,CAAC,CAAC,GAAG,KAAK,2BAA2B,CAAC,GAAG,KAAK,wBAAwB,GAAG,KAAK,EAAE,cAAc,EAC5L,OAAO,EACT,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAS,KAAK;MACzB;KACF,GAAG,GAAS,IAAI;IAClB,CAAC,CAAC;IACF,SAAS,EAA6B,GAAI,GAAK;KAC7C,OAAO,EAA8B,MAAM,MAAM,SAAS;IAC5D;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,gBAAgB,oBAAoB,GAAG,2BAA2B;AACrE,IAAI,IAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAEA,WAAY;IACV,IAAI,IAA2B,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAS,GAAG,GAAG,GAAG;KACnH,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;MAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;OACR,KAAK;QACH,IAAI,KAAK,QAAQ,EAAE,SAAS;SAC1B,EAAU,OAAO;SACjB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAKH,OAJA,IAAI,EAAE,QAAQ,EAAG,eACjB,OAAO,EAAE,QAAQ,EAAG,eACpB,EAAU,OAAO,GACjB,EAAU,OAAO,GACV,EAAE,CAAC;OACZ,KAAK;QAEH,AADA,IAAI,EAAU,MACd,EAAU,OAAO;QACjB;OACF,KAAK,IAGH,MAFA,EAAU,OAAO,IACjB,EAAU,KAAK,EAAU,MAAS,CAAC,GAC7B,EAAE,QAAQ,EAAG,gBAAgB,GAAG,EAAU;OAClD,KAAK,IACH,OAAO,EAAU,OAAO,WAAW,EAAE,QAAQ,EAAG,gBAAgB,GAAG,EAAE;OACvE,KAAK;OACL,KAAK,OACH,OAAO,EAAU,KAAK;MAC1B;KACF,GAAG,GAAU,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,CAAC,CAAC;IACF,SAAS,EAAwB,GAAK,GAAK,GAAK;KAC9C,OAAO,EAAyB,MAAM,MAAM,SAAS;IACvD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG;IACjC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK;IAC5E,IAAI,QAAQ,MAAM,CAAC,GAAG,EAAQ,CAAC,KAAK,UAAU,OAAO,aAAa,QAAQ,EAAE,mBAAmB,WAAW,EAAE,OAAO,IAAI,MAAM,QAAQ,CAAC,KAAK,OAAO,EAAE,SAAS,WAAW,EAAE,mBAAmB,WAAW,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,mBAAmB,WAAW,CAAC,IAAI,EAAE,mBAAmB,WAAW,KAAK,UAAU,CAAC,CAAC;IACjU,EAAE,mBAAmB,WAAW,CAAC;GACnC;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAU,GAAQ;IACvB,SAAS,EAAM,GAAK,GAAK,GAAK,GAAK;KACjC,OAAO,EAAO,MAAM,MAAM,SAAS;IACrC;IAIA,OAHA,EAAM,WAAW,WAAY;KAC3B,OAAO,EAAO,SAAS;IACzB,GACO;GACT,EAAE,SAAU,GAAG,GAAG,GAAG,GAAG;IACtB,IACI,IAAI;KACN,QAAc,EAAE,iBAAsC,UAAW;KACjE,SAAS;IACX;IACA,OAAO,EAAE,WAAW,UAAU,EAAE,OAAO,IAAI,KAAK,UAAU,CAAC,IAAI,IAAI,EAAE,gBAAgB,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,cAAc,MAAY,EAAE,iBAAsC,OAAQ,EAAE,OAAO,IAAI,CAAC;GACjO,CAAC;EACH;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,IAAI,IAAI,EAAE,QAAQ,IAAI,cAAc;IACpC,OAAO,KAAK,QAAQ,EAAE,SAAS,kBAAkB,IAAI,EAAE,KAAK,IAAI,KAAK,QAAQ,EAAE,SAAS,YAAY,KAAK,CAAC,IAAI,IAAI,EAAE,KAAK;GAC3H;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAA6B,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAS,GAAG,GAAG;KAClH,IAAO,GAAG,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;MAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;OACR,KAAK,GAEH,OADA,EAAU,OAAO,GACL,EAAE,oBAAyC,KAAK,GAAG,CAAC;OAClE,KAAK;QAEH,IADA,EAAU,KAAK,EAAU,MACrB,EAAU,IAAI;SAChB,EAAU,OAAO;SACjB;QACF;QACA,EAAU,KAAK;OACjB,KAAK,GAIH,OAHA,IAAI,EAAU,IACd,IAAI,GACJ,IAAI,GACG,EAAU,OAAO,UAAU;QAChC,MAAM,EAAE;QACR,SAAS,EAAE;QACX,OAAO,EAAE;OACX,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAU,KAAK;MAC1B;KACF,GAAG,CAAQ;IACb,CAAC,CAAC;IACF,SAAS,EAA0B,GAAM,GAAM;KAC7C,OAAO,EAA2B,MAAM,MAAM,SAAS;IACzD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG;IACxC,OAAO,KAAK,EAAQ,CAAC,KAAK,aAAa,OAAO,EAAE,SAAS,YAAY,OAAO,EAAE,QAAQ,YAAY,OAAO,EAAE,QAAQ,YAAY,MAAM,QAAQ,EAAE,KAAK;GACtJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAC1C,EAAE,mBAAmB,WAAW,CAAC,GAAG,IAAe;GACrD;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,eAAe;AAClB,IAAI,IAAI;AACR,SAAS,GAAG,GAAM,GAAM;CACtB,OAAO,GAAI,MAAM,MAAM,SAAS;AAClC;AACA,SAAS,KAAM;CAyBb,OAxBA,KAAM,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;EACzF,IAAI,GAAG;EACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;GAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;IACR,KAAK,GACH,IAAI,EAAE,UAAU;IAClB,KAAK,GAEH,OADA,EAAY,OAAO,GACZ,EAAE,KAAK;IAChB,KAAK;KACH,KAAK,IAAI,EAAY,KAAA,CAAM,MAAM;MAC/B,EAAY,OAAO;MACnB;KACF;KACA,EAAE,EAAE,KAAK;IACX,KAAK;KACH,EAAY,OAAO;KACnB;IACF,KAAK;IACL,KAAK,OACH,OAAO,EAAY,KAAK;GAC5B;EACF,GAAG,CAAU;CACf,CAAC,CAAC,GACK,GAAI,MAAM,MAAM,SAAS;AAClC;AACA,SAAS,GAAG,GAAG;CACb,IAAI,GACF,GACA,GACA,IAAI,CAAC;CACP,OAAO,SAAU,GAAG;EAClB,MAAM,KAAK,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,GAAG,CAAC;EAGnD,KAFA,IAAI,IAAI,EAAE,QACN,IAAI,GACD,IAAI,IAAI;GACb,AAAgC,OAA1B,EAAE,OAAO,OAAO,IAAI,EAAE,IAAQ,CAAC;GAErC,KADA,IAAI,IAAI,IACD,IAAI,KAAK,MAAM,IAAI,EAAE,GAAG,QAAQ,EAAE,IAAV;IAC7B,KAAK;KACH,MAAM,OAAO,IAAI,IAAI;KACrB;IACF,KAAK,IACH,IAAI,CAAC;IACP,KAAK,IACH,IAAI;GAER;GACA,IAAI,MAAM,IAAI;GACd,EAAE,EAAE,SAAS,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI;EACrC;EACA,MAAM,IAAI,IAAI,KAAK,IAAI,MAAM,MAAM,IAAI,EAAE,SAAS,CAAC,GAAG,KAAK;CAC7D;AACF;AACA,SAAS,GAAG,GAAG,GAAG,GAAG;CACnB,IAAI,IAAI,GAAG,GACP,IAAI,IAAI,YAAY;CACxB,OAAO,SAAU,GAAG,GAAG;EACrB,IAAI,EAAE,WAAW,GAAG,IAAe,CAAC,GAAG,IAAI,GAAG;OAAO,IAAI,IAAI,GAAG;GAC9D,IAAI,IAAI,EAAE,OAAO,EAAE,SAAS,GAAG,CAAC,CAAC,GAC/B,IAAI,KAAK,EAAE,IAAI,OAAO,KAAK,IAAI,IAC/B,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;GAC5B,QAAQ,GAAR;IACE,KAAK;KACH,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,OAAO,IAAI;KACtC;IACF,KAAK;KACH,EAAE,QAAQ;KACV;IACF,KAAK;KACH,EAAE,EAAE,KAAK,CAAC;KACV;IACF,KAAK;KACH,IAAI,IAAI,SAAS,GAAG,EAAE;KACtB,MAAM,CAAC,KAAK,EAAE,EAAE,QAAQ,CAAC;GAE7B;EACF;CACF;AACF;AACA,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,IAAI,IAAI,WAAW,EAAE,SAAS,EAAE,MAAM;CAC1C,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,MAAM,GAAG;AACvC;AACA,SAAS,KAAK;CACZ,OAAO;EACL,MAAM;EACN,OAAO;EACP,IAAI;EACJ,OAAO,KAAK;CACd;AACF;AACA,IAAI,KAAK,SAAY,GAAG,GAAG;CACzB,IAAI,IAAI,CAAC;CACT,KAAK,IAAI,KAAK,GAAG,OAAO,UAAU,eAAe,KAAK,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM,EAAE,KAAK,EAAE;CAC7F,IAAI,KAAK,QAAQ,OAAO,OAAO,yBAAyB,YAAY,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,sBAAsB,CAAC,GAAG,IAAI,EAAE,QAAQ,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,KAAK,OAAO,UAAU,qBAAqB,KAAK,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE;CACzO,OAAO;AACT,GACI,KAAK,qBACP,KAAK,KACL,KAAK;AACP,SAAS,GAAG,GAAG,GAAG;CAChB,IAAI,IAAI,EAAE,QACR,IAAI,EAAE,SACN,IAAI,EAAE,QACN,IAAI,EAAE,WACN,IAAI,EAAE,SACN,IAAI,EAAE,SACN,IAAI,EAAE,gBACN,IAAI,EAAE,OACN,IAAI,GAAG,GAAG;EAAC;EAAU;EAAW;EAAU;EAAa;EAAW;EAAW;EAAkB;CAAO,CAAC;CACzG,OAAO,IAAI,QAAQ,SAAU,GAAG,GAAG;EACjC,IAAI,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC;EAC3B,AAAa,EAAE,WAAS;EACxB,IAAI;EACJ,SAAS,IAAI;GACX,EAAE,MAAM,GAAG,SAAS,UAAU,EAAE;EAClC;EACA,KAAK,SAAS,iBAAiB,oBAAoB,CAAC;EACpD,IAAI,IAAI,IACN,IAAI;EACN,SAAS,IAAI;GACX,SAAS,oBAAoB,oBAAoB,CAAC,GAAG,OAAO,aAAa,CAAC,GAAG,EAAE,MAAM;EACvF;EACA,GAAe,iBAAiB,SAAS,WAAY;GACnD,EAAE,GAAG,EAAE;EACT,CAAC;EACD,IAAI,IAAI,KAAiC,OAAO,OAC9C,IAAK,KAAiC;EACxC,SAAS,IAAI;GACX,OAAO,EAAG,MAAM,MAAM,SAAS;EACjC;EACA,SAAS,IAAK;GA6CZ,OA5CA,IAAK,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAW;IAClF,IAAO,GAAG;IACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;KAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;MACR,KAAK,GAIH,OAHA,IAAI,IAAI,gBAAgB,GACxB,EAAU,OAAO,GACjB,EAAU,OAAO,GACV,EAAE,GAAG,OAAO,OAAO,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG;OAC9C,SAAS;OACT,QAAQ,EAAE;MACZ,CAAC,CAAC;MACJ,KAAK,GAGH,OAFA,IAAI,EAAU,MACd,EAAU,OAAO,GACV,EAAG,CAAC;MACb,KAAK,GAEH,OADA,EAAU,OAAO,GACV,GAAG,EAAE,MAAM,GAAG,GAAG,SAAU,GAAG;OACnC,IAAI,EAAE,MAAM,IAAI,OAAO,EAAE;MAC3B,GAAG,SAAU,GAAG;OACd,IAAI;MACN,GAAG,CAAC,CAAC,CAAC;MACR,KAAK;OAIH,AAHA,IAAe,GACf,EAAE,GACF,EAAE,GACF,EAAU,OAAO;OACjB;MACF,KAAK,IAGH,IAFA,EAAU,OAAO,IACjB,EAAU,KAAK,EAAU,MAAS,CAAC,GAC/B,CAAC,EAAE,OAAO,SAAS,IAAI;OAEzB,AADA,IAAS,IAAuB,EAAU,EAAE,KAAkC,GAC9E,OAAO,aAAa,CAAC,GAAG,IAAI,OAAO,WAAW,GAAG,CAAC;MACpD,SAAS,GAAG;OACV,EAAE,GAAG,EAAE,CAAC;MACV;MACF,KAAK;MACL,KAAK,OACH,OAAO,EAAU,KAAK;KAC1B;IACF,GAAG,GAAU,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;GAC9B,CAAC,CAAC,GACK,EAAG,MAAM,MAAM,SAAS;EACjC;EACA,EAAE;CACJ,CAAC;AACH;AACA,SAAS,GAAG,GAAG;CACb,IAAI,IAAI,EAAE,QAAQ,IAAI,cAAc;CACpC,IAAI,EAAE,KAAK,QAAQ,EAAE,WAAW,EAAE,IAAI,MAAU,MAAM,+BAAsC,eAAyB,GAAE;AACzH;AACA,IAAI,IAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OACA,WAAY;IACV,IAAI,IAAW,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAS,GAAG,GAAG,GAAG;KACnG,IAAI,GACF,GAEA,GAKA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAS;KACX,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;MAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;OACR,KAAK,GAQH,OAPA,IAAI,EAAO,SAAS,KAAK,EAAO,OAAO,KAAA,IAAY,EAAO,KAAK,CAAC,GAChE,IAAI,EAAO,SAAS,KAAK,EAAO,OAAO,KAAA,KAAY,EAAO,IAC1D,IAAI;QACF,MAAM;QACN,SAAc,EAAE,iBAAsC;OACxD,GACA,EAAU,OAAO,GACV,EAAE,0BAA0B,EAAE,UAAU,CAAC;OAClD,KAAK;QASH,IARA,IAAwB,EAAU,MAClC,IAAI,EAAsB,MAC1B,IAAI,EAAsB,SAC1B,IAAI,EAAsB,OAC1B,IAAoB,EAAE,gBACtB,IAAI,EAAkB,QACtB,IAAI,EAAkB,SACtB,IAAI,EAAkB,aAClB,CAAC,GAAG;SACN,EAAU,OAAO;SACjB;QACF;QACA,OAAO,EAAU,OAAO,UAAU,EAAE,mBAAmB,GAAG,GAAG,CAAC,CAAC;OACjE,KAAK;QACH,IAAI,GAAG,IAAI,EAAE,oBAAoB,QAAQ,EAAE,UAAU;SACnD,EAAU,OAAO;SACjB;QACF;QACA,OAAO,EAAU,OAAO,UAAU,GAAG,OAAO,GAAG,GAAG,CAAC,CAAC;OACtD,KAAK;QACH,IAAY,EAAE,iBAAsC,QAAS,EAAG,KAAM;SACpE,EAAU,OAAO;SACjB;QACF;QACA,OAAO,EAAU,OAAO,UAAU,EAAG,cAAc,GAAG,EAAE,cAAc,CAAC;OACzE,KAAK,IAEH,OADA,IAAI,IAAI,EAAG,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,CAAC,GACtC,EAAU,OAAO,WAAW,GAAS,EAAE,iBAAsC,OAAQ,EAAE,OAAO,IAAI;QACvG,QAAc,EAAE,iBAAsC,UAAW;QACjE,SAAS;QACT,aAAmB,EAAE,iBAAuC;QAC5D,MAAM,IAAI,KAAK,UAAU,CAAC,IAAI;QAC9B,gBAAgB,CAAC;QAEjB,QAAQ,SAAgB,GAAG;SACzB,OAAO,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAW;UACpF,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;WAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;YACR,KAAK;aACH,IAAI,CAAC,EAAE,IAAI;cACT,EAAU,OAAO;cACjB;aACF;aACA,OAAO,EAAU,OAAO,UAAU,EAAE,CAAC;YACvC,KAAK,GAEH,OADA,EAAU,OAAO,GACV,EAAE,sBAAsB,CAAC;YAClC,KAAK,GACH,MAAM,EAAU;YAClB,KAAK;YACL,KAAK,OACH,OAAO,EAAU,KAAK;WAC1B;UACF,GAAG,CAAQ;SACb,CAAC,CAAC,CAAC,CAAC;QACN;QACA,WAAW,SAAmB,GAAG;SAC/B,OAAO,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAW;UACpF,IAAI,GAAM,GAAG,GAAI;UACjB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;WAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;YACR,KAAK;aACH,IAAM,KAAK,UAAU,EAAE,IAAI,MAAM,KAAK,UAAU,QAAQ,GAAI;cAC1D,EAAU,OAAO;cACjB;aACF;aACA,IAAI;cACF,IAAK,KAAK,MAAM,EAAE,IAAI;aACxB,QAAmB;cACjB,IAAK,CAAC;aACR;aAEA,OADA,EAAU,OAAO,IACJ,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAE;YACnF,KAAK;aAEH,IADA,EAAU,KAAK,EAAU,MACrB,EAAU,IAAI;cAChB,EAAU,OAAO;cACjB;aACF;aACA,EAAU,KAAK;YACjB,KAAK,GAEH,AADA,IAAK,EAAU,KACd,IAAI,EAAE,sBAAsB,QAAQ,EAAE,KAAK,GAAG,GAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAU,GAAI;aAC1E,EAAE,uBAAuB,KAAM,EAAG,SAAS,MAAM,EAAE,SAAS,GAAG,EAAE,gBAAgB,CAAE,GAAG,EAAE,GAAG,EAAE,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,EAAE,sBAAsB,KAAK,CAAC,GAAG,GAAG,CAAE;YACnL,CAAC,CAAC,CAAC,MAAS,SAAU,GAAI;aACxB,OAAO,EAAE,aAAa,GAAG,CAAE;YAC7B,CAAC;YACH,KAAK;YACL,KAAK,OACH,OAAO,EAAU,KAAK;WAC1B;UACF,GAAG,CAAQ;SACb,CAAC,CAAC,CAAC,CAAC;QACN;QACA,SAAS,SAAiB,GAAG;SAC3B,MAAM,EAAE,GAAG;QACb;QACA,SAAS,WAAmB;SAC1B,IAAI,CAAC,EAAE,qBAAqB,IAAI;UAC9B,EAAE,wBAAwB,GAAG,EAAE;SACjC,SAAS,GAAG;UACV,IAAI,CAAC,GAAG,MAAM;SAChB;QACF;QACA,QAAQ,EAAE;OACZ,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;QACvB,IAAI;QACJ,EAAE,mBAAmB,MAAM,IAAI,EAAE,sBAAsB,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,WAAY;SAC3F,EAAE,aAAa,GAAG,CAAC;QACrB,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;SACvB,EAAE,aAAa,GAAG,CAAC;QACrB,CAAC;OACH,CAAC,GAAG,EAAE;OACR,KAAK;OACL,KAAK,OACH,OAAO,EAAU,KAAK;MAC1B;KACF,GAAG,GAAU,IAAI;IACnB,CAAC,CAAC;IACF,SAAS,EAAQ,GAAM,GAAM,GAAM;KACjC,OAAO,EAAS,MAAM,MAAM,SAAS;IACvC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAkB,GAAG,GAAG,GAAG;IAChC,IAAI,IAAI;IACR,IAAI,EAAE,SAAS,EAAE,cAAc,EAAc;KAC3C,YAAY,CAAC;KACb,YAAY,CAAC;IACf,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM;KAClB,EAAE,OAAO;KACT,IAAI,IAAI,EAAE,KAAK,MAAM,EAAE;KACvB,EAAE,iBAAiB,GAAG,IAAI,EAAG,CAAC,GAAG,GAAG,MAAM;IAC5C;IACA,IAAI,EAAE,MAAM;KACV,EAAE,OAAO;KACT,IAAI,IAAM,GAAG,UAAU,EAAE,IAAI;KAC7B,EAAE,iBAAiB,GAAK,IAAI,EAAG,CAAC,GAAG,GAAG,MAAM;IAC9C;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG,GAAG,GAAG;IAC3C,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK,GACxE,IAAI,EAAE;IACV,IAAI,GAAG;KACL,EAAE,sBAAsB,EAAgB,CAAC,GAAG,GAAG,CAAC,CAAC;KACjD,IAAI,IAAI,WAAW,WAAY;MAC7B,EAAE,iBAAiB,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;KACtC,GAAG,EAAE,qBAAqB,CAAC;KAC3B,EAAE,YAAY,QAAQ,WAAY;MAChC,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO;KACzB;IACF,OAAO,EAAE,wBAAwB,GAAG,EAAE,QAAQ;GAChD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO,EAAQ,CAAC,KAAK,YAAY,CAAC,CAAC,EAAE;GACvC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,OAAO,EAAE,aAAa,CAAC,KAAK,MAAM,EAAE,QAAQ,EAAE;GAChD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAe,GAAG,GAAG,GAAG;IAC7B,aAAa,CAAC,GAAG,EAAE,wBAAwB,GAAG,EAAE;GAClD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG,GAAG,GAAG;IACvC,IAAI,KAAK,QAAQ,EAAE,QAAQ,KAAK,QAAQ,EAAE,MAAM;KAC9C,IACI,IAAI,EAAE,CAAC;KACX,AAA6C,MAAI,KAAK,KAAK;IAC7D;IACA,KAAK,QAAQ,EAAE,UAAU,EAAE,cAAc,EACvC,OAAO,EAAE,MACX,CAAC,GAAG,GAAe,cAAc;GACnC;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,IAAI,IAAI,EAAE,SAAS,EAAE,SAAS,SAAS;IACvC,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,GAAG;KACjC,IAAI,EAAE,MAAM,SAAS,GAAG,OAAO;KAC/B,IAAI,IAAI,EAAE,MAAM;KAChB,OAAO,EAAE,OAAO,EAAE,IAAI,WAAW,gBAAgB,IAAI,wBAAwB,EAAE,SAAS,UAAU,0BAA0B,EAAE,SAAS,UAAU,8BAA8B;IACjL;IACA,IAAI,EAAE,MAAM;KACV,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,SAAS,CAAC,MAAM,KAAK,OAAO;KACrD,IAAI,EAAE,KAAK,SAAS,OAAO,GAAG,OAAO;IACvC;IACA,OAAO;GACT;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,OAAO,OAAO,KAAK,aAAa,EAAE,CAAC,IAAI;GACzC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,OAAO,EAAE,qBAAqB,EAAG,kBAAkB,EAAE,oBAAoB,EAAE,SAAS,EAAE,SAAS,SAAS,EAAE,IAAI,EAC5G,MAAM,EAAG,iBAAiB,CAAC,EAC7B;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG;IAC5B,IAAI,IAAI,EAAG,YAAY,CAAC;IACxB,WAAyB,gBAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAW;KACtG,IAAI,GAAM;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;MAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;OACR,KAAK,GAEH,OADA,EAAU,OAAO,IACJ,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;OAClF,KAAK;QAEH,IADA,EAAU,KAAK,EAAU,MACrB,EAAU,IAAI;SAChB,EAAU,OAAO;SACjB;QACF;QACA,EAAU,KAAK;OACjB,KAAK,GAEH,AADA,IAAI,EAAU,IACd,EAAE,SAAS,EAAE,mBAAmB,WAAW,EAAE,KAAK,GAAG,EAAE,oBAAoB,SAAS,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,oBAAoB,SAAS;OACnN,KAAK;OACL,KAAK,OACH,OAAO,EAAU,KAAK;MAC1B;KACF,GAAG,CAAQ;IACb,CAAC,CAAC,GAAG,GAAG;GACV;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,WAAW,WAAY;KACrB,IAAI,IAAI,EAAG,YAAY,CAAC;KACxB,EAAE,SAAS,GAAG,GAAG,CAAC;IACpB,GAAG,GAAG;GACR;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,MAAM;AACT,IAAI,IAAK,IACL,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAAe,GAAG;IACvB,EAAE,gBAAgB,QAAQ,EAAG,QAAQ,EAAE,yBAAyB,CAAC,oBAAoB,yBAAyB,GAAG,EAAE,YAAY;GACjI;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,OAAO,EAAE,YAAY,EACnB,UAAU,CAAC,EACb,CAAC,aAAa;GAChB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG;IAChC,MAAE,sBAAsB,EAAE,QAAQ,GACvC;SAAI,IAAI,EAAE,gBAAgB;KAC1B,IAAI,GAAG;MACL,IAAI,EAAE,gBAAgB,SAAS,OAAO,GAAG,UAAU,GAAG,CAAC;MACvD,IAAI;OACF,IAAI,IAAI,OAAO,KAAK,YAAgB,KAAK,IAAT,GAC9B,IAAI,IAAI,UAAU,EAAE,gBAAgB,OAAO,IAAI,CAAC;OAClD,EAAE,YAAY,GAAG,EAAE,UAAU,SAAS,WAAY;QAChD,IAAI,GAAG;QACP,EAAE,YAAY,GAAG,EAAE,aAAa,EAAQ,EAAE,SAAS,KAAK,YAAY,EAAE,gBAAgB,GAAG,GAAG,CAAC,IAAI,KAAK,IAAI,EAAE,SAAA,CAAU,uBAAuB,QAAQ,EAAE,KAAK,CAAC;OAC/J,GAAG,EAAE,UAAU,UAAU,SAAU,GAAG;QACpC,QAAQ,MAAM,CAAC,GAAG,EAAE,gBAAgB,GAAG,CAAC;OAC1C;MACF,SAAS,GAAG;OACV,QAAQ,MAAM,CAAC,GAAG,EAAE,gBAAgB,GAAG,CAAC;MAC1C;KACF;IAf0B;GAgB5B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,IAAI,GAAG;IACP,CAAC,KAAK,IAAI,EAAE,SAAA,CAAU,uBAAuB,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,sBAAsB,EAAE,QAAQ,MAAM,EAAE,YAAY,WAAW,EAAE,mBAAmB,KAAK,EAAE,mBAAmB,WAAW,kBAAkB,GAAG,WAAW,WAAY;KACrO,EAAE,iBAAiB,GAAG,CAAC;IACzB,GAAG,GAAG;GACR;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG;IACvC,IAAI,IAAS,MACT,IAAI,CAAC;IACT,EAAE,YAAyB,yBAAY;KACrC,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAS,GAAG;MAC1F,IAAI,GAAM,GAAG,GAAG,GAAG,GAAG;MACtB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAmB,GAAW;OAC9D,SAAU,QAAQ,EAAU,OAAO,EAAU,MAAnC;QACR,KAAK;SACH,IAAI,CAAC,EAAE,mBAAmB;UACxB,EAAU,OAAO;UACjB;SACF;SAIA,OAHA,EAAU,OAAO,GACjB,IAAI,KAAK,MAAM,EAAE,IAAI,GACrB,EAAU,OAAO,IACJ,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;QAClF,KAAK;SAEH,IADA,EAAU,KAAK,EAAU,MACrB,EAAU,IAAI;UAChB,EAAU,OAAO;UACjB;SACF;SACA,EAAU,KAAK;QACjB,KAAK,GAGH,OAFA,IAAI,EAAU,IACd,EAAU,OAAO,IACV,EAAE,kBAAkB,CAAC;QAC9B,KAAK;SAEH,IADA,IAAI,EAAU,MACP,KAAK,EAAQ,CAAC,KAAK,UAAW;UACnC,EAAU,OAAO;UACjB;SACF;SACA,MAAM,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,EAAE,SAAS,qBAAqB,CAAC,CAAC;QAClF,KAAK;SAKH,AAJI,EAAE,aAAa,EAAE,MAAM,KACzB,IAAI,EAAE,OAAO,KAAK,GAAQ,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,QAAQ,EAAE,UACtD,EAAE,aAAa,GAAG,GAAG,GAAG,CAAC,KACpB,EAAE,cAAc,CAAC,GACxB,EAAU,OAAO;SACjB;QACF,KAAK,IAGH,AAFA,EAAU,OAAO,IACjB,EAAU,KAAK,EAAU,MAAS,CAAC,GACnC,EAAE,aAAa,GAAG,EAAU,IAAI,yBAAyB;QAC3D,KAAK;QACL,KAAK,OACH,OAAO,EAAU,KAAK;OAC1B;MACF,GAAG,GAAU,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;KAC9B,CAAC,CAAC;KACF,OAAO,SAAU,GAAM;MACrB,OAAO,EAAM,MAAM,MAAM,SAAS;KACpC;IACF,EAAE,GAAG,EAAE,UAAU,WAAY;KAC3B,QAAQ,MAAM,mBAAmB,GAAG,EAAE,mBAAmB,KAAK,EAAE,mBAAmB,WAAW,kBAAkB,GAAG,EAAE,UAAU,EAAE,eAAe,YAAY,MAAM,GAAG,EAAE,iBAAiB,GAAG,CAAC;IAC9L;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAiB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC1G,IAAI,GAGF,GACA,GACA,GACA,GACA,GACA,GACA,IAAU;KACZ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAGH,IAFA,IAAI,EAAQ,SAAS,KAAK,EAAQ,OAAO,KAAA,IAAY,EAAQ,KAAK,CAAC,GACnE,IAAI,EAAE,WACC,KAAK,MAAM,WAAY;SAC5B,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,QAAQ;OACnC,KAAK,GAMH,OALA,IAAI;QACF,MAAM;QACN,SAAc,EAAE,iBAAsC;OACxD,GACA,EAAW,OAAO,GACX,EAAE,0BAA0B,EAAE,UAAU,CAAC;OAClD,KAAK;QAIH,IAHA,IAAyB,EAAW,MACpC,IAAI,EAAuB,MAC3B,IAAI,EAAuB,OACvB,CAAC,GAAG;SACN,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAE,mBAAmB,WAAW,CAAC,CAAC;OACvE,KAAK;QACH,IAAI,EAAE,YAAY,CAAC,GAAG;SACpB,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAE,eAAe,SAAS,CAAC,CAAC;OACjE,KAAK;QAEH,IADA,IAAI,IAAI,KAAK,UAAU,CAAC,IAAI,GAChB,EAAE,iBAAsC,QAAS,EAAG,KAAM;SACpE,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAG,QAAQ,GAAG,CAAC,CAAC;OACrD,KAAK,IACH,EAAE,eAAe,KAAK,KAAK,EAAE,eAAe,EAAE,QAAQ,QAAQ,MAAM,wBAAwB,GAAG,EAAE,mBAAmB,KAAK,EAAE,mBAAmB,WAAW,kBAAkB,MAAM,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC,GAAG,EAAE,oBAAoB,SAAS;OAC7O,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAc,GAAM,GAAM,GAAM;KACvC,OAAO,EAAe,MAAM,MAAM,SAAS;IAC7C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,OAAO,IAAI,MAAM,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,eAAe,KAAK,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,SAAS,CAAC;GACxH;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,OAAO,EAAE,SAAS,KAAK;GACzB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG,GAAG;IAC5B,OACL;SAAI,IAAI,EAAE,OAAO;KACjB,IAAI,OAAO,KAAK,UAAU;MACxB,IACI,IAAI,EAAE,QAAQ,EAAE,SAClB,IAAI,EAAE;MACR,EAAE,SAAS,KAAK,EAAE,SAAS,KAAK,GAAe,wBAAwB,GAAG,OAAO,EAAE,OAAe,EAAE,OAAyC,EAAE,KAAK,IAAI,EAAG,CAAC,IAAG,EAAE,EAAE,CAAC,sBAAsB,CAAC;KAC7L,OAAO,EAAE,SAAS,GAAG,EAAE,gBAAgB,CAAC;IANvB;GAOnB;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAY,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACrG,IAAI,GAAG,GAAG,GAAG,GAAG;KAChB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAqCH,AApCA,IAAI,CAAC,GACL,IAAiB,yBAAY;QAC3B,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;SAC3F,IAAI,GAAM;SACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;UAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;WACR,KAAK;YACH,IAAI,GAAG;aACL,EAAW,OAAO;aAClB;YACF;YACA,OAAO,EAAW,OAAO,QAAQ;WACnC,KAAK,GAGH,OAFA,IAAI,CAAC,GACL,EAAW,OAAO,IACL,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;WAClF,KAAK;YAEH,IADA,EAAW,KAAK,EAAW,MACvB,EAAW,IAAI;aACjB,EAAW,OAAO;aAClB;YACF;YACA,EAAW,KAAK;WAClB,KAAK,GAEH,AADA,IAAI,EAAW,IACf,EAAE,uBAAuB,CAAC,IAAI,OAAO,EAAE,SAAS,YAAY,QAAQ,MAAM,EAAE,KAAK,GAAG,EAAE,mBAAmB,WAAW,EAAE,KAAK,GAAG,EAAE,oBAAoB,SAAS,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,oBAAoB,SAAS,MAAM,QAAQ,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,EAAE,SAAS,qBAAqB,CAAC,CAAC,GAAG,EAAE,mBAAmB,WAAW,yBAAyB,GAAG,EAAE,oBAAoB,SAAS;WACld,KAAK;WACL,KAAK,OACH,OAAO,EAAW,KAAK;UAC3B;SACF,GAAG,CAAS;QACd,CAAC,CAAC;QACF,OAAO,SAAW,GAAM;SACtB,OAAO,EAAM,MAAM,MAAM,SAAS;QACpC;OACF,EAAE,GAAG,IAAI,EAAG,wBAAwB,IACnC,KAAK,IAAI,EAAE,gBAAA,CAAiB,YAAY,QAAQ,EAAE,KAAK,GAAG,GAAG,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EACpG,YAAY,EACd,CAAC,CAAC;OACJ,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAQ,GAAM,GAAM,GAAM;KACjC,OAAO,EAAU,MAAM,MAAM,SAAS;IACxC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,IAAI;KACF,EAAE,wBAAwB;IAC5B,SAAS,GAAG;KACV,QAAQ,MAAM,CAAC,GAAG,EAAE,mBAAmB,WAAW,CAAC;IACrD;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG;IAC9B,IAAI,GAAG,GACH,IAAI,CAAC,GACP,IAAI,CAAC,GACH,IAAI,IAAI,EAAG,CAAC,GACd,IAAI,WAAa;KACf,KAAK,CAAC,MAAM,EAAE,eAAe,OAAO,GAAG,IAAI,CAAC;IAC9C,GACA,IAAI,WAAa;KACf,AAAoE,OAA9D,EAAG,wBAAwB,GAAG,CAAC,GAAG,EAAE,eAAe,QAAQ,GAAO,CAAC;IAC3E,GACA,IAAiB,yBAAY;KAC3B,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;MAC3F,IAAI,GAAM;MACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;OAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;QACR,KAAK;SACH,IAAI,GAAG;UACL,EAAW,OAAO;UAClB;SACF;SACA,OAAO,EAAW,OAAO,QAAQ;QACnC,KAAK,GAEH,OADA,EAAW,OAAO,IACL,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;QAClF,KAAK;SAEH,IADA,EAAW,KAAK,EAAW,MACvB,EAAW,IAAI;UACjB,EAAW,OAAO;UAClB;SACF;SACA,EAAW,KAAK;QAClB,KAAK,GAEH,AADA,IAAI,EAAW,IACf,EAAE,uBAAuB,CAAC,IAAI,EAAE,SAAS,QAAQ,MAAM,EAAE,KAAK,GAAG,EAAE,wBAAwB,GAAG,EAAE,mBAAmB,WAAW,EAAE,KAAK,GAAG,EAAE,eAAe,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,EAAE,sBAAsB,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,QAAQ,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,EAAE,SAAS,qBAAqB,CAAC,CAAC;QAC7T,KAAK;QACL,KAAK,OACH,OAAO,EAAW,KAAK;OAC3B;MACF,GAAG,CAAS;KACd,CAAC,CAAC;KACF,OAAO,SAAW,GAAM;MACtB,OAAO,EAAM,MAAM,MAAM,SAAS;KACpC;IACF,EAAE;IACJ,EAAE,eAAe,YAAY,QAAQ,WAAY;KAC/C,EAAG,wBAAwB,GAAG,CAAC,GAAG,EAAE,eAAe,QAAQ,GAAG,IAAI,CAAC;IACrE;IACA,IAAI,IAAI,EAAG,wBAAwB;IACnC,CAAC,KAAK,IAAI,EAAE,gBAAA,CAAiB,YAAY,QAAQ,EAAE,KAAK,GAAG,GAAG,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG;KACpG,QAAQ;KACR,YAAY;KACZ,SAAS;KACT,aAAa,EAAE,eAAe;IAChC,CAAC,CAAC;GACJ;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG;IAC9B,IAAI,IAAS,MACT,GAAG,GACH,IAAI;KACN,QAAQ,CAAC;KACT,gBAAgB,EACd,UAAU,WAAoB,CAAC,EACjC;KACA,cAAc,CAAC;IACjB;IACA,EAAE,YAAY;IACd,IAAI,IAAI,WAAa;KACjB,EAAE,YAAY,GAAG,EAAE,SAAS,CAAC;IAC/B,GACA,IAAI,WAAa;KACf,EAAE,SAAS,CAAC;IACd,GACA,IAAiB,yBAAY;KAC3B,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;MAC3F,IAAI,GAAM,GAAG,GAAG;MAChB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;OAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;QACR,KAAK;SACH,IAAI,EAAE,QAAQ;UACZ,EAAW,OAAO;UAClB;SACF;SACA,OAAO,EAAW,OAAO,QAAQ;QACnC,KAAK,GAEH,OADA,EAAW,OAAO,IACL,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;QAClF,KAAK;SAEH,IADA,EAAW,KAAK,EAAW,MACvB,EAAW,IAAI;UACjB,EAAW,OAAO;UAClB;SACF;SACA,EAAW,KAAK;QAClB,KAAK,GAEH,AADA,IAAI,EAAW,IACV,EAAE,uBAAuB,CAAC,IAA4J,OAAO,EAAE,SAAS,YAAU,QAAQ,MAAM,EAAE,KAAK,GAAG,EAAE,mBAAmB,KAAK,EAAE,mBAAmB,WAAW,EAAE,KAAK,KAAW,EAAE,aAAa,EAAE,MAAM,KAChV,IAAI,GAAE,OAAO,KAAK,GAAQ,GAAG,GAAG,EAAE,YAAY,GAAG,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,UAChF,EAAE,aAAa,GAAG,GAAG,GAAG,CAAC,KACpB,EAAE,cAAc,CAAC,KAHU,QAAQ,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,EAAE,SAAS,qBAAqB,CAAC,CAAC,GAAG,EAAE,mBAAmB,WAAW,yBAAyB;QAIlL,KAAK;QACL,KAAK,OACH,OAAO,EAAW,KAAK;OAC3B;MACF,GAAG,CAAS;KACd,CAAC,CAAC;KACF,OAAO,SAAW,GAAM;MACtB,OAAO,EAAM,MAAM,MAAM,SAAS;KACpC;IACF,EAAE,GACF,IAAI,EAAG,wBAAwB;IACjC,CAAC,KAAK,IAAI,EAAE,gBAAA,CAAiB,YAAY,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG;KACzG,QAAQ;KACR,YAAY;KACZ,SAAS;KACT,gBAAgB,EAAE;IACpB,CAAC,CAAC;GACJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmC;IACxC,OAAO;KACL,SAAS,WAAmB,CAAC;KAC7B,QAAQ,WAAkB,CAAC;KAC3B,aAAa,EACX,UAAU,WAAoB,CAAC,EACjC;KACA,gBAAgB,EACd,UAAU,WAAoB,CAAC,EACjC;IACF;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,IAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OACA,WAAY;IACV,IAAI,IAAY,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACrG,IAAI,GAEF,GAEA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAU;KACZ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAOH,OANA,IAAI,EAAQ,SAAS,KAAK,EAAQ,OAAO,KAAA,IAAY,EAAQ,KAAK,CAAC,GACnE,IAAI;QACF,MAAM;QACN,SAAc,EAAE,iBAAsC;OACxD,GACA,EAAW,OAAO,GACX,EAAE,0BAA0B,EAAE,UAAU,CAAC;OAClD,KAAK;QAMH,IALA,IAAyB,EAAW,MACpC,IAAI,EAAuB,MAC3B,IAAI,EAAuB,SAC3B,IAAI,EAAuB,OAC3B,IAAI,EAAE,oBAAoB,UACtB,CAAC,GAAG;SACN,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAE,mBAAmB,GAAG,GAAG,CAAC,CAAC;OAClE,KAAK;QACH,IAAI,GAAG,IAAI,EAAE,oBAAoB,QAAQ,EAAE,UAAU;SACnD,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC;OACxD,KAAK;QACH,IAAY,EAAE,iBAAsC,QAAS,EAAG,KAAM;SACpE,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAG,QAAQ,GAAG,CAAC,CAAC;OACrD,KAAK,IAGH,AAFA,IAAI,CAAC,GACL,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,GAAG,CAAC,GAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;QACrB,OAAO,IAAI,CAAC,CAAC,EAAE,IAAI;OACrB,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;QACnB,OAAO,EAAE,sBAAsB,CAAC;OAClC,CAAC,CAAC,CAAC,KAAmB,yBAAY;QAChC,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;SAC3F,IAAI,GAAM,GAAG;SACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;UAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;WACR,KAAK;YACH,IAAI,EAAE,mBAAmB;aACvB,EAAW,OAAO;aAClB;YACF;YACA,OAAO,EAAW,OAAO,QAAQ;WACnC,KAAK,GAEH,OADA,EAAW,OAAO,IACL,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;WAClF,KAAK;YAEH,IADA,EAAW,KAAK,EAAW,MACvB,EAAW,IAAI;aACjB,EAAW,OAAO;aAClB;YACF;YACA,EAAW,KAAK;WAClB,KAAK,GAGH,OAFA,IAAI,EAAW,IACf,EAAW,OAAO,IACX,EAAE,kBAAkB,GAAG,GAAG,CAAC;WACpC,KAAK;YAEH,IADA,IAAI,EAAW,MACX,GAAG;aACL,EAAW,OAAO;aAClB;YACF;YACA,MAAM;WACR,KAAK;YACH,IAAO,KAAK,EAAQ,CAAC,KAAK,UAAW;aACnC,EAAW,OAAO;aAClB;YACF;YACA,MAAM,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC,CAAC,EAAE,SAAS,qBAAqB,CAAC,CAAC;WACpF,KAAK,IACH,EAAE,yBAAyB,EAAE,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE;WACxH,KAAK;WACL,KAAK,OACH,OAAO,EAAW,KAAK;UAC3B;SACF,GAAG,CAAS;QACd,CAAC,CAAC;QACF,OAAO,SAAU,GAAM;SACrB,OAAO,EAAM,MAAM,MAAM,SAAS;QACpC;OACF,EAAE,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;QACzB,EAAE,aAAa,GAAG,CAAC,GAAG,EAAE;OAC1B,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAQ,GAAM,GAAM,GAAM;KACjC,OAAO,EAAU,MAAM,MAAM,SAAS;IACxC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG,GAAG;IAC7C,IAAI,IAAI,EAAE,oBAAoB;IAC9B,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KAC5B,OAAO,EAAE,KAAK;IAChB,CAAC,CAAC,CAAC,KAAmB,yBAAY;KAChC,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;MAC3F,IAAI,GAAM;MACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;OAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;QACR,KAAK;SACH,IAAI,EAAE,uBAAuB;UAC3B,EAAW,OAAO;UAClB;SACF;SACA,OAAO,EAAW,OAAO,QAAQ;QACnC,KAAK,GAGH,OAFA,EAAW,KAAK,GAChB,EAAW,OAAO,IACL,IAAI,EAAE,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;QAClF,KAAK;SAEH,IADA,EAAW,KAAK,EAAW,MACvB,EAAW,IAAI;UACjB,EAAW,OAAO;UAClB;SACF;SACA,EAAW,KAAK;QAClB,KAAK,GAGH,OAFA,EAAW,KAAK,EAAW,IAC3B,EAAW,OAAO,IACX,EAAW,GAAG,sBAAsB,KAAK,EAAW,IAAI,EAAW,EAAE;QAC9E,KAAK,IAEH,AADA,IAAI,EAAW,MACf,EAAE,YAAY,WAAW,WAAY;SACnC,EAAE,mBAAmB,GAAG,GAAG,GAAG,CAAC;QACjC,GAAG,EAAE,SAAS,IAAI,EAAE,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE;QAC/G,KAAK;QACL,KAAK,OACH,OAAO,EAAW,KAAK;OAC3B;MACF,GAAG,CAAS;KACd,CAAC,CAAC;KACF,OAAO,SAAU,GAAM;MACrB,OAAO,EAAM,MAAM,MAAM,SAAS;KACpC;IACF,EAAE,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;KACzB,EAAE,aAAa,GAAG,CAAC,GAAG,EAAE;IAC1B,CAAC;GACH;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACjG,IAAI,GAIF,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAU;KACZ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAOH,OANA,IAAI,EAAQ,SAAS,KAAK,EAAQ,OAAO,KAAA,IAAY,EAAQ,KAAK,CAAC,GACnE,IAAI;QACF,MAAM;QACN,SAAc,EAAE,iBAAsC;OACxD,GACA,EAAW,OAAO,GACX,EAAE,0BAA0B,EAAE,UAAU,CAAC;OAClD,KAAK;QAKH,IAJA,IAAyB,EAAW,MACpC,IAAI,EAAuB,MAC3B,IAAI,EAAuB,SAC3B,IAAI,EAAuB,OACvB,CAAC,GAAG;SACN,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAE,mBAAmB,GAAG,CAAC,CAAC;OAC/D,KAAK,IAMH,AALA,IAAU,EAAE,iBAAsC,OAAQ,EAAE,OAAO,IAAI,IAAU,EAAE,iBAAsC,UAAW,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC,IAAI,GAAG,IAAI;QAC7K,QAAQ;QACR,MAAM;QACN,SAAS;OACX,GACA,EAAE,gBAAgB,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,cAAc,EAAE,mBAAmB,GAAG,GAAG,GAAG,CAAC;OACnH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAK,GAAM,GAAM,GAAM;KAC9B,OAAO,EAAM,MAAM,MAAM,SAAS;IACpC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI,MAAM,IAAI,OAAO,EAAE,EAAE,WAAW;IACpC,EAAE,GAAG,MAAM,GAAG;KACZ,QAAQ;KACR,SAAS;KACT,MAAM,KAAK;IACb,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KACnB,OAAO,EAAE,sBAAsB,CAAC;IAClC,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KACnB,EAAE,GAAG,GAAG,GAAG,CAAC;IACd,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;KACvB,EAAE,EAAE,iBAAiB,GAAG,QAAQ,MAAM,CAAC;IACzC,CAAC;GACH;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAmC,GAAG,GAAG;IAE9C,IAAI,MAAM,IAAI,OAAO;IAGrB,KAFA,IAAI,IAAI,GACN,IAAI,EAAE,SAAS,GACT,KAAK,GAAG,KAAQ;KACtB,IAAI,IAAS,EAAE,EAAA,EAAyB;KACxC,IAAI,MAAM,KAAK,MAAM,KAAK,EAAE,QAAQ,IAAI,IAAI;MAC1C,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG,EAAE,UAAU,IAAI,EAAE;MAC7C;KACF;IACF;IACA,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,CAAC;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,OAAO,EAAE,MAAM,KAAK,IAAI,EAAE,SAAS,GAAG,CAAC,CAAC;GAC1C;EAKF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG;IACvC,OAAO,MAAM,KAAK,IAA6C,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAA7D,IAAI,MAAM,IAAI,EAAG,eAAe,GAAG,CAAC,IAA4B,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAAG,MAAM,KAAK,IAAI,IAAI,EAAG,0BAA0B,GAAG,CAAC;GAC/K;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAEA,SAAqB,GAAG,GAAG,GAAG,GAAG;IAC/B,IAAI,GACA,IAAI,EACN,OAAO,EACT;IACA,IAAI,EAAQ,CAAC,KAAK,UAAU;KAC1B,EAAG,yBAAyB,CAAC;KAC7B,IAAI,IAAI,EAAE,OACR,IAAI,EAAE,SACN,IAAI,EAAE;KACR,MAAM,EAAE,cAAc,EAAE,MAAM,YAAY,EAAE,YAAY,IAAI,EAAE,cAAc,QAAQ,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,OAAO,EAAE,UAAU,YAAY,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,EAAE,oBAAoB,EAAE,SAAS,GAAG,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU;MACvb,KAAM,GAAuB,OAAQ,EAAE;MACvC,QAAS,GAAuB,UAAW,EAAE;MAC7C,SAAU,GAAuB,WAAY,EAAE;MAC/C,aAAc,GAAuB,eAAgB,EAAE;KACzD;IACF;IACA,OAAO;GACT;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG;IACzC,IAAI,GAAG;KACL,IAAI,IAAI,EACN,iBAAiB,GACnB;KACA,EAAE,UAAU,aAAa,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC;IACnE;GACF;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG,GAAG;IAC5C,IACO,GAAS,GAAG,GACf,IAAI,EAAc,EACpB,iBAAiB,UACnB,GAAS,EAAE,UAAU,OAA4B,SAAU,CAAC,CAAC;IAC7D,MAAM,UAAU,aAAa,iBAAiB,KAAK,IAA4lB,MAAM,EAAE,UAAU,QAAQ,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAzpB,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC,GAAG,EAAQ,CAAC,KAAK,YAAY,EAAE,WAAuB,IAAI,EAAE,YAAA,CAAa,UAAoD,EAAE,QAAQ,CAAC,IAAG,EAAE,YAAY,MAAM,SAAc,EAAE,OAA4B,QAAQ,EAAE,YAAY,MAAM,qBAA0B,EAAE,OAA4B,qBAAqB,IAAI,EAAE,UAAU,UAAU,QAAQ,EAAE,WAAkC,IAAI,EAAE,UAAU,MAAM,MAAA,CAAO,qBAAqF,EAAE,mBAAmB,EAAE,MAAM;GAC3nB;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG,GAAG;IACzC,IAAC,KAAM,GACX;SAAI,IAAI,EAAc,EACpB,iBAAiB,UACnB,GAAI,GAAuB,SAAU,CAAC,CAAC;KACvC,EAAE,UAAU,QAAQ,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC;IADrB;GAEzC;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG,GAAG,GAAG;IACvC,IAAC,KAAM,GACX;SAAI,IAAI,EAAc,EACpB,iBAAiB,YACnB,GAAI,GAAuB,SAAU,CAAC,CAAC;KACvC,EAAE,UAAU,OAAO,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC;IADpB;GAEzC;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG,GAAG,GAAG;IACxC,IACO,GACH,IAAI,EAAc,EACpB,iBAAiB,UACnB,GAAS,EAAE,UAAU,QAA6B,SAAU,CAAC,CAAC;IAC9D,MAAM,UAAU,aAAa,iBAAiB,KAAK,IAA0Y,MAAM,EAAE,UAAU,SAAS,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAxc,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC,GAAG,EAAQ,CAAC,KAAK,aAAa,EAAE,OAAO,sBAAsB,EAAE,qBAAqB,EAAE,WAAwB,IAAI,EAAE,OAAA,CAAQ,UAAsD,EAAE,QAAQ,CAAC,IAAG,EAAE,OAAO,MAAM,SAAc,EAAE,OAA4B,QAAQ,EAAE,OAAO,MAAM,aAAkB,EAAE,OAA4B;GAC/a;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG,GAAG,GAAG;IAC1C,IAAC,KAAM,GACX;SAAI,IAAI,EAAc,EACpB,iBAAiB,UACnB,GAAI,GAAuB,SAAU,CAAC,CAAC;KACvC,EAAE,UAAU,SAAS,EAAE,YAAY,EAAE,iBAAiB,GAAG,GAAG,CAAC;IADtB;GAEzC;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG,GAAG;IAC1C,IACI,GAAG;IACP,MAAA,AAAwE,EAAE,UAAQ,CAAC,IAA0B,IAAI,EAAE,MAAA,CAAO,oBAAkF,EAAE,kBAAkB,KAA2B,IAAI,EAAE,MAAA,CAAO,qBAAqF,EAAE,mBAAmB;GACpX;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG,GAAG;IAC3B,EAAE,sBAAsB,GAAuB,OAAO,2CAA2C,GAAG,EAAE,sBAAsB,GAAuB,QAAQ,WAAW;IACtK,IAAI,IAAI,GAAG,UAAU;IACrB,EAAE,oBAAoB,GAAG,GAAG,EAAE,QAAQ,GAAuB,MAAM,GAAG,EAAE,cAAc,GAAG,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,EAAE,iBAAiB,GAAG,GAAG,EAAE,MAAM,GAAuB,IAAI,GAAG,EAAE,mBAAmB,GAAG,GAAG,EAAE,OAAO,GAAuB,KAAK,GAAG,EAAE,kBAAkB,GAAG,GAAG,EAAE,YAAY,EAAE,KAAK,GAAG,EAAE,kBAAkB,GAAG,GAAG,EAAE,UAAU;GAC7U;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG;EAEnB,EAAgB,MAAM,CAAE;EACxB,IAAa;EACb,KAAK,UAAU,CAAC,GAAG,KAAK,sBAAsB,CAAC,GAAG,KAAK,iBAAiB,EAAG,gBAAgB,KAAK,kBAAkB,CAAC,GAAG,KAAK,YAAY,CAAC,GAAG,KAAK,sBAAsB,CAAC,GAAG,KAAK,iBAAiB,CAAC,GAAG,KAAK,WAAW,GAAG,KAAK,OAAO,GAAG,OAAO,OAAO,KAAK,SAAc,EAAE,SAA8B,mBAAmB,GAAG,KAAK,6BAAkC,GAAuB,mBAAwC,4BAA4B,KAAK,cAAmB,GAAuB,mBAAwC,aAAa,GAAE,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,YAAY,KAAK,kBAAkB,EAAE,UAAU,KAAK,UAAoB,IAAI,KAAK,gBAAA,CAAiB,QAA8C,EAAE,MAAM,EAAG,OAAM,KAAK,gBAAgB,aAAa,GAAE,MAAM,IAAI,GAAG,KAAK,SAAe,KAAK,SAAS,SAA8B,UAAW,EAAG,eAAe,KAAK,QAAQ;CACt3B;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,CAAC;EACnC;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IAAI,EAAE,KAAK,WAAW,OAAO,KAAK,KAAK,UAAU,OAAO,OAAO,KAAK,UAAU;IAC9E,IAAI,EAAE,KAAK,WAAW,OAAO,GAAG;KAC9B,IAAI,KAAK,UAAU,QAAQ,EAAE,KAAK,SAAS,MAAM,GAAG,OAAO,KAAK,UAAU;KAC1E,IAAI,KAAK,UAAU,QAAQ,OAAO,KAAK,UAAU;KACjD,IAAI,KAAK,QAAQ,OAAO,KAAK;IAC/B;IACA,OAAO,KAAK,UAAU;GACxB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAY,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAClG,IAAI,GACF,IAAU;KACZ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAEH,OADA,IAAI,EAAQ,SAAS,KAAK,EAAQ,OAAO,KAAA,IAAY,EAAQ,KAAK,CAAC,GAC5D,EAAW,OAAO,UAAU,KAAK,UAAU,CAAC,EAAE,aAAa,KAAK,MAAM,IAAI,EAAE,QAAQ,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,QAAQ,MAAM,GAAG,GAAG,CAAC,CAAC;OACtI,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAQ,GAAM,GAAM;KAC3B,OAAO,EAAU,MAAM,MAAM,SAAS;IACxC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KACzG,IACI,GAAG,GAAG,GAAG,GAAG,GAAG;KACnB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAOH,OANA,IAAI,EAAc,EAChB,UAAU,EACZ,GAAG,KAAK,OAAO,GACf,IAAI,CAAC,IACJ,IAAI,KAAK,gBAAgB,YAAY,QAAQ,EAAE,qBAAmC,IAAI,KAAK,gBAAA,CAAiB,YAA0D,EAAE,UAAU,CAAC,KAAsB,IAAI,KAAK,gBAAgB,QAAA,CAAS,oBAA0E,EAAE,kBAAkB,qBAAoB,IAAI,CAAC,IACnW,EAAW,OAAO,GACX,KAAK,QAAQ,GAAG,CAAC;OAC1B,KAAK,GACH,OAAO,IAAI,KAAK,gBAAgB,YAAY,QAAQ,OAAO,EAAE;OAC/D,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAgB,GAAM,GAAM;KACnC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC7G,IAAI,GAAG,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAIH,OAHA,IAAI,EAAG,yBAAyB,KAAK,SAAS,GAAG,CAAC,GAAG,IAAI,KAAK,iBAAiB,IAAI,KAAK,mBAAmB,EAAE,EAAE,GAC/G,KAAK,kBAAmB,GAAuB,WAAY,KAAK,iBAChE,EAAW,OAAO,GACX,KAAK,QAAQ,GAAG,GAAG,CAAC,CAAC;OAC9B,KAAK,GACH,KAAK,kBAAkB;OACzB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAiB,GAAM,GAAM,GAAM;KAC1C,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAkB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC3G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GACH,IAAI,KAAK,iBAAiB,GAAG,GAAG,CAAC,IAAI,KAAK,gBAAgB,GAAG,CAAC;OAChE,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAM,GAAM,GAAM;KACxC,OAAO,EAAgB,MAAM,MAAM,SAAS;IAC9C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAW,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KACjG,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,GAAG,gBAAgB,EAAE,UAAU,KAAK,aAAa,KAAK,0BAA0B,GAChF,KAAK,gBAAgB,aACvB,IAAI,EAAc,EAChB,UAAU,EACZ,GAAG,KAAK,OAAO,GACf,GAAE,cAAc,MAAM,GAAG,GAAG,CAAC,CAAC,KACzB,KAAK,eAAe,GAAG,GAAG,EAAE,KAAK;OAC1C,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAQ,GAAM,GAAM;KAC3B,OAAO,EAAS,MAAM,MAAM,SAAS;IACvC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAqB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACxG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK;QACH,IAAI,CAAC,EAAE,QAAQ;SACb,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EAAG,uBAAuB,CAAC,CAAC;OACjE,KAAK;QACH,IAAI,CAAC,EAAE,uBAAuB,CAAC,GAAG;SAChC,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,CAAC;OACtC,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAM;KAC/B,OAAO,EAAmB,MAAM,MAAM,SAAS;IACjD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAA8B;IACnC,OAAO,CAAC;GACV;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAsB;IAC3B,OAAO,CAAC;GACV;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAwB,GAAG,GAAG,GAAG;GACtC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,MAAM,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS;EACjE;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAkC,GAAG,GAAG,GAAG;GAChD,IAAI,IAAI,IAAI,SAAS;GACrB,EAAE,QAAQ,SAAU,GAAG;IACrB,OAAO,EAAE,OAAO,SAAS,CAAC;GAC5B,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;IACtC,OAAO,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC;GACjC,CAAC;GACD,IAAI,IAAI;GACR,EAAE,MAAM,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;IAC5C,EAAE,OAAO,UAAiB,KAAK,KAAI,KAAK,UAAU,CAAC,CAAC;GACtD,CAAC;GACD,IAAI,IAAI,EAAE,EAAE,SAAS;GACrB,OAAO,EAAE,SAAS,OAAO,EAAE,OAAO,EAAE,OAAO,UAAiB,KAAK,KAAI,KAAK,UAAU,CAAC,CAAC,IAAI;EAC5F;CACF,CAAC,CAAC;AACJ,EAAE,GACE,IAAiB,uBAAU,GAAK;CAElC,SAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG;EACxB,IAAI;EAIJ,OAHA,EAAgB,MAAM,CAAC,GAEvB,IAAS,EAAW,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAO,2BAA2B,WAAW,EAAO,aAAa,IAAI,OAAO,OAAO,EAAO,SAAc,EAAE,SAA8B,mBAAmB,GAAG,EAAO,yBAAyB,GAAG,EAAO,mBAAmB,GAAG,KAAK,EAAO,oBAAoB,CAAC,GAAG,EAAO,kBAAkB,EAAO,qBAAqB,EAAO,OAAO,IAAI,EAAE,OAAO,GACjX;CACT;CAEA,OADA,EAAU,GAAG,CAAG,GACT,EAAa,GAAG;EAAC;GACtB,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,KAAK,MAAM,EAAE,KAAK,EAAE,wBAAwB,KAAK,sBAAsB,EAAE;GAC3E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IACI,IAAI,KAAiC,CAAC;IAC1C,OAAA,AAAiF,EAAE,YAAU,CAAC,GAAG,OAAO,OAAO,EAAE,SAAS,KAAK,iBAAiB,CAAC,CAAC,GAAG;GACvJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG;IACrC,KAAK,kBAAkB,KAAK,qBAAqB,GAAG,KAAK,eAAe,GAAG,KAAK,MAAM,GAAG,EAAE;GAC7F;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG;IAC9B,IAAI,IAAwB,KAAK,wBAC/B,IAAI,EAAsB,KAC1B,IAAI,EAAsB,QAC1B,IAAI,EAAsB,0BAC1B,IAAI,EAAsB,eAC1B,IAAI,EAAsB,MAC1B,IAAK,IAAuB,CAAC,KAAM,KAAK,iBAAiB,CAAC;IAC5D,EAAE,UAAU,GAAG,GAAG,GAAG,GAAG,KAAK,iBAAiB,KAAK,MAAM,EAAE,SAAS,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,CAAC;GACjG;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA8B;IACnC,OAAO,CAAC;GACV;EACF;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAkD,GAAG;GAC1D,EAAE,gBAAgB,CAAC,GAAG,WAAW,WAAY;IAC3C,EAAE,gBAAgB,EAAG,yCAAyC,CAAC,KAAK,EAAE,oBAAoB,CAAC,GAAG,EAAE,SAAS;GAC3G,CAAC;EACH;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAuB,GAAG;GAC/B,EAAE,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,EAAE,oBAAoB,CAAC,GAAG,EAAG,yCAAyC,CAAC;EACvH;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAc;CAE5C,SAAS,IAAK;EACZ,IAAI;EAMJ,OALA,EAAgB,MAAM,CAAE,GACxB,IAAS,EAAW,MAAM,CAAE,GAAG,EAAO,oBAAoB,CAAC,GAAG,EAAO,gBAAgB,CAAC,GAAG,OAAO,KAAK,EAAG,qBAAqB,CAAC,CAAC,QAAQ,SAAU,GAAG;GAClJ,IAAI,IAAI,EAAG,sBAAsB;GACjC,EAAO,2BAA2B,CAAC,GAAG,EAAO,eAAe,CAAC,KAAK,EAAO,2BAA2B,GAAG,CAAC;EAC1G,CAAC,GACM;CACT;CAEA,OADA,EAAU,GAAI,CAAY,GACnB,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAEA,SAAoC,GAAG,GAAG;IACxC,IAAI;IACJ,OAAO,eAAe,MAAM,KAAK,GAAG;KAClC,KAAK,WAAe;MAClB,OAAO;KACT;KACA,KAAK,SAAa,GAAG;MACnB,IAAI,GAAG,IAAI,KAAK,KAAK,IAAI,GAAG,cAAc,IAAI;KAChD;IACF,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG;IAC5C,UAAM,GACV;SAAI,IAAI,EAAG,aAAa,EAAE,CAAC,CAAC,GAC1B,IAAI,EAAG,sBAAsB;KAC/B,KAAK,KAAK;IADqB;GAEjC;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAoB,CAAC;EAC9B;CAAC,GAAG,CAAC;EACH,KAAK;EACL,KAAK,WAAe;GAClB,OAAO,OAAO,KAAK,EAAG,YAAY,KAAK,CAAC;EAC1C;CACF,CAAC,CAAC;AACJ,EAAgB,gBAAiB,WAAW,CAAC;AAC7C,GAAG,eAAe,CAAC,GAAG,GAAG,wBAAwB,CAAC;AAClD,IAAI,KAAK,IACL,KAAK,owDACP,KAAK,84CACH,IAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAA0B,GAAG;GAClC,OAAO,IAAI,UAAU,CAAC,CAAC,gBAAgB,GAAG,eAAe,CAAC,CAAC;EAC7D;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAEA,SAA0B,GAAG,GAAG,GAAG,GAAG;IACpC,EAAE,OAAO,OAAO,EAAG,mBAAmB,EAAE,MAAM,UAAU,QAAQ,EAAE,MAAM,UAAU,SAAS,EAAE,OAAO,eAAe,EAAE,MAAM,UAAU,SAAS,EAAE,MAAM,UAAU,QAAQ,EAAE,OAAO;GACnL;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,IAAI,IAAI,EAAG,iBAAiB,CAAC;IAC7B,OAAO,EAAE,KAAK,GAAG,EAAE,UAAU,IAAI,iBAAiB,GAAG;GACvD;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG;IACxB,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,KAAK;IACP,IAAI,IAAI,EAAG,kBAAkB,IAAI,EAAG,eAAe;IACnD,EAAE,MAAM,UAAU,QAAQ,EAAE,YAAY,CAAC;IACzC,IAAI,IAAI,EAAG,kBAAkB,IAAI,kBAAkB;IACnD,OAAO,EAAE,YAAY,CAAC,GAAG,EAAE,UAAU,EAAG,iBAAiB,KAAK,MAAM,GAAG,GAAG,CAAC,GAAG;GAChF;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,kBAAkB;AACrB,IAAI,KAAK,IACL,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,WAA6B;IAClC,IAAI,IAAI,SAAS,cAAc,GAAG;IAClC,OAAO,EAAE,UAAU,IAAI,4BAA4B,GAAG,EAAE,YAAY,8FAA8F;GACpK;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,IAAI,IAAI,SAAS,cAAc,GAAG;IAClC,OAAO,EAAE,UAAU,IAAI,4BAA4B,GAAG,EAAE,OAAO,GAAG,EAAE,YAAY,uBAAuB,EAAE,SAAS,UAAU;GAC9H;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,UAAU,QAAQ;GAC3E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG;IACzC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK,CAAC,GACzE,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,KAAK;IACP,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,KAAK;IACP,IAAI,IAAI,EAAE,eAAe;IACzB,IAAI,EAAE,YAAY,CAAC,GAAG,GAAG;KACvB,IAAI,IAAI,EAAE,eAAe,CAAC;KAC1B,EAAE,YAAY,CAAC;IACjB;IACA,IAAI,MAAM,CAAC,GAAG;KACZ,IAAI,IAAM,EAAE,kBAAkB;KAC9B,EAAE,YAAY,CAAG;IACnB;IACA,OAAO,EAAE,YAAY,CAAC,GAAG;KACvB,0BAA0B;KAC1B,iBAAiB;IACnB;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG,GAAG;IACjC,EAAE,UAAU,QAAQ,0BAA0B,0BAA0B,GAAG,EAAE,YAAY,GAAG,EAAE,MAAM,UAAU,SAAS,EAAE,YAAY,SAAS,EAAE,UAAU,OAAO,SAAS;GAC5K;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG;IAC3B,EAAE,UAAU,IAAI,SAAS,GAAG,EAAE,YAAY;GAC5C;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,GAAG;IACjC,IAAI,IAAI,EAAE,MAAM,KAAK;IACrB,EAAE,UAAU,GAAG,CAAC;GAClB;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI,IAAI;KACJ,WAAW;KACX,QAAQ,EAAE,OAAO,KAAK,MAAM,GAAG,GAAG,CAAC;KACnC,QAAQ,EAAE,OAAO,KAAK,MAAM,GAAG,CAAC;IAClC,GACA,IAAI,EAAE,UAAU,KAAK,MAAM,GAAG,GAAG,CAAC;IACpC,EAAE,UAAU,GAAG,EAAE,YAAY,SAAU,GAAG;KACxC,CAAC,EAAE,UAAU,SAAS,SAAS,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE;IAC7D;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA6B;IAClC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,gBAAgB,EAAE,YAAY,SAAS;GACvD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,EAAE,OAAO,UAAU,QAAQ,4BAA4B,wBAAwB;GACjF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,KAAK;IACP,IAAI,IAAI,SAAS,cAAc,OAAO;IACtC,OAAO,EAAE,KAAK,oBAAoB,EAAE,cAAc,KAAK,WAAW,EAAE,OAAO,YAAY,EAAE,UAAU,IAAI,wBAAwB,GAAG,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,CAAC,GAAG;GAClL;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IACI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,KAAK;IACP,IAAI,IAAI,EAAE,YAAY,EAAE,wBAAwB,GAC9C,IAAI,EAAE,SAAS,IACf,IAAI,GAAG,OAAO,CAAC;IACjB,EAAE,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC;IACjC,IAAI,IAAI,EAAE,kBAAkB,GAC1B,IAAwB,EAAE,wBAAwB,EAAE,YAAiB,EAAE,SAAS,sBAA2C,kBAAkB,GAC7I,IAAI,EAAsB,0BAC1B,IAAI,EAAsB;IAC5B,OAAO,EAAE,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,sBAAsB,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG;GACrF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,KAAK;IACP,IAAI,IAAI,EAAE,eAAe,GAAG,CAAC;IAC7B,OAAO,EAAE,YAAY,CAAC,GAAG;GAC3B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG;IAC9B,IAAI,IAAI,EAAE,eAAe,GAAG,CAAC;IAC7B,EAAE,gBAAgB,CAAC;GACrB;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK;IAC5E,OAAO,UAAU,MAAM,EAAE,WAAW,CAAC,IAAI,MAAM,EAAE,WAAW,CAAC,MAAM,IAAI,GAAG,wBAAwB,KAAK,WAAW,WAAY;KAC5H,OAAO,EAAE,cAAc,GAAG,GAAG,IAAI,CAAC;IACpC,GAAG,GAAG;GACR;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG,GAAG,GAAG;IACvC,IAAI,IAAK,GAAuB,iBAAkB,EAAE,uBAClD,IAAK,GAAuB,eAAgB,EAAE,qBAC9C,IAAK,GAAuB,kBAAmB,EAAE;IACnD,OAAO,WAAW,WAAY;KAC5B,IAAI,IAAI,GAAuB,uBAAuB,CAAC,CAAC,CAAC,IACvD,IAAI,GAAuB,uBAAuB,CAAC,CAAC,CAAC,IACrD,IAAI,GAAuB,uBAAuB,CAAC,CAAC,CAAC;KACvD,MAAM,EAAE,UAAU,WAAY;MAC5B,OAAO,EAAE;KACX,IAAI,MAAM,EAAE,WAAW,WAAY;MACjC,EAAE,SAAS,EAAE,MAAM,SAAS,KAAK,EAAE,EAAE,KAAK;KAC5C,IAAI,MAAM,EAAE,UAAU,WAAY;MAChC,OAAO,EAAE,MAAM;KACjB,KAAK,KAAK,MAAM,EAAE,cAAc,GAAG,CAAC;IACtC,CAAC,GAAI,GAAuB,eAAgB;;kCAAyI;UAAwF,IAAI,KAAK,6BAAuC;oCAAwE;;GACvY;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG;IAY5B,KAAK,IAXD,IAAI,SAAS,cAAc,GAAG,GAChC,IAAI,GACF,IAAS,SAAgB,GAAG;KAC9B,WAAW,WAAY;MAErB,KAAK,IADD,IAAI,IAAI,GACH,IAAI,GAAG,IAAI,KAAK,IAAI,IAAI,GAAG,EAAE,MAAM,GAAG,KAAK,GAAG;OACrD,IAAI,IAAI,IAAI,gBAAgB,EAAE,EAAE;OAChC,EAAE,OAAO,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,MAAM,SAAS,KAAK,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,gBAAgB,CAAC;MACpG;KACF,GAAG,MAAM,CAAC;IACZ,GACS,IAAI,GAAG,IAAI,EAAE,SAAS,GAAG,KAAK,GACrC,EAAO,CAAC;GAEZ;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG,GAAG;IACzC,IAAI,IAAK,GAAuB,oBAAqB,EAAE;IACvD,OAAO,WAAW,WAAY;KAC5B,IAAI,IAAI,GAAuB,uBAAuB,CAAC,CAAC,CAAC;KACzD,MAAM,EAAE,UAAU,WAAY;MAC5B,OAAO,EAAE,WAAW,CAAC;KACvB;IACF,CAAC,GAAI,GAAuB,iBAAkB;;UAAqG,IAAI,KAAK,gDAA0D;;GACxN;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAE,wBAAwB,6BAA6B,GAAE,sBAAsB,2BAA2B,GAAE,mBAAmB,wBAAwB,GAAE,sBAAsB;AAC/K,IAAI,KAAK,IACL,KAAK;CACL,YAAY;EAEZ;GACE,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;EAC1B;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAEA;GACE,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;EAC1B;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;EAC1B;EAEA;GACE,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAEA;GACE,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;EAC1B;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;GACxB,mBAAmB,CAAC,YAAY;EAClC;EAAG;GACD,WAAW;GACX,UAAU;GACV,eAAe;GACf,kBAAkB;GAClB,uBAAuB,CAAC;EAC1B;CAAC;CACD,gBAAgB,CAAC;AACnB,GACA,KAAiB,uBAAU,GAAM;CAC/B,SAAS,EAAE,GAAG;EACZ,IAAI;EACJ,EAAgB,MAAM,CAAC;EACvB,IAAI;EAEJ,OADA,IAAU,EAAW,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,EAAQ,iBAAiB,CAAC,GAAG,EAAQ,kBAAkB,CAAC,GAAG,EAAQ,sBAAsB,CAAC,GAAG,EAAQ,YAAY,CAAC,GAAG,EAAQ,yBAAyB;GAAC,EAAE;GAAuB,EAAE;GAAyB,EAAE;EAAa,GAAG,EAAQ,uBAAuB,CAAC,GAAG,EAAQ,EAAE,QAAQ,KAAK,aAAa,EAAQ,YAAY,EAAE,YAAY,IAAI,EAAQ,UAAU,SAAS,QAAQ,EAAE,cAAc,EAAE,cAAc,GAAG,EAAQ,kBAAkB,CAAC,GAAG,EAAQ,iBAAiB,EAAQ,UAAU,KAAK,EAAuB,CAAO,CAAC,GAAG,EAAQ,UAAe,EAAE,YAAiC,SAAS,IAAI,EAAE,WAAW,EAAE,aAAa,EAAQ,sBAAsB,EAAE,OAAO,GACvqB;CACT;CAGA,OADA,EAAU,GAAG,CAAI,GACV,EAAa,GAAG;EAAC;GACtB,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAU;IACd,KAAK,YAAY,GAAG,KAAK,eAAe,WAAY;KAClD,EAAE,0BAA0B,GAAG,EAAQ,eAAe,KAAK;IAC7D;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,IAAI,IAAU,MACV,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK,GACxE;IACJ,OAAO,SAAS,KAAK,cAAc,KAAK,sBAAsB,EAAE,YAAY,CAAC,IAAI,IAAI,EAAE,0BAA0B,IAAI,KAAK,cAAc,QAAQ,EAAE,mBAAmB,WAAW,EAAE,uBAAuB,GAAG,QAAQ,MAAM,0GAA0G,GAAG,QAAQ,MAAM,+CAA+C,KAAK,WAAW,WAAY;KAC9Z,OAAO,EAAQ,kBAAkB,GAAG,IAAI,CAAC;IAC3C,GAAG,GAAG;GACR;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IAEvC,OAAO,CAAC,KAAK,KAAK,aAAmB,KAAK,UAAU,cAAmC,cAAe,CAAC;GACzG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,IAAI,IAAU;IAEd,AAAM,KAAK,UAAU,cAAmC,eAAgB,CAAC,KAAK,WAAW,WAAY;KACnG,IAAI;KACJ,CAAC,IAAI,EAAQ,cAAc,QAAQ,EAAE,cAAc,EAAE,YAAiB,EAAQ,WAAgC,UAAU;IAC1H,GAAG,CAAC;GACN;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IAC7B,IAAC,KAAK,sBAAsB,CAAC,KAAM,KAAK,SAC5C;SAAI,IAAI,GAAG,aAAa,KAAK,KAAK,KAAK,IAAI,GAAG,KAAK,UAAU,cAAc,KAAK,SAAS,CAAC,CAAC,KAAK,UAAU,MAAM;KAChH,OAAO,KAAK,YAAY,CAAC,GAAG;MAC1B,MAAM,EAAE;MACR,MAAM;MACN,YAAY,CAAC;KACf;IALgH;GAMlH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAiB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACpG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAEH,IADA,IAAI,KAAK,UAAU,MACf,CAAC,GAAG;SACN,EAAW,OAAO;SAClB;QACF;QACA,IAAI,CAAC,EAAE,QAAQ;SACb,EAAW,OAAO;SAClB;QACF;QAEA,OADA,KAAK,KAAK,GACH,EAAW,OAAO,QAAQ;OACnC,KAAK;QACH,IAAI,CAAC,EAAE,WAAW;SAChB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,KAAK,sBAAsB,CAAC,GACrB,EAAW,OAAO,QAAQ;OACnC,KAAK,GACH,KAAK,KAAK,KAAK;OACjB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAc,GAAM;KAC3B,OAAO,EAAe,MAAM,MAAM,SAAS;IAC7C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC3F,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAIH,KAHC,IAAI,KAAK,cAAc,QAAQ,EAAE,YAAY,GAC9C,IAAI,KAAK,oBAAoB,GAC7B,EAAW,KAAK,GACZ,CAAC,EAAW,IAAI;SAClB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,KAAK,UAAU,GAAG,CAAC;OAC5B,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAK,GAAM;KAClB,OAAO,EAAM,MAAM,MAAM,SAAS;IACpC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,IAAI;IACJ,IAAI,EAAE,MAAM;KACV,CAAC,IAAI,KAAK,cAAc,QAAQ,EAAE,mBAAmB,WAAW,EAAE,qBAAqB,GAAG,QAAQ,MAAM,EAAE,qBAAqB;KAC/H;IACF;IACI,WAAK,kBAAkB,KAAK,kBAChC;SAAI,IAAI,KAAK,UAAU;KACvB,OAAO,GAAG,kBAAkB,IAAI,IAAI,OAAO,OAAO,iBAAiB,CAAC,IAAI,IAAI,OAAO,OAAO,WAAW;IAD9E;GAEzB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAqB;IAC1B,IAAI,GACA,IAAI,EAAE;IACV,KAAK,UAAU,UAAU,IAAI,KAAK,UAAU;IAC5C,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,CAAC;IACrC,IAAI,KAAK,UAAU,MAAM;KACvB,IAAI,IAAI,EAAE,WAAW,KAAK,SAAU,GAAG;MACrC,OAAO,EAAE,WAAW;KACtB,CAAC;KACD,MAAM,KAAK,UAAU,KAAK,UAAU,EAAE,YAAY,KAAK,UAAU,KAAK,QAAQ,KAAK,UAAU,KAAK,SAAS,EAAE,gBAAgB,KAAK,UAAU,KAAK;IACnJ;IACA,QAAQ,IAAI,KAAK,UAAU,SAAS,QAAQ,EAAE,cAAc,EAAE,YAAY,CAAC,IAAI;KAC7E,OAAO;KACP,WAAW;IACb;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAa,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KACnG,IAAI,IAAU,MACP,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAiB,GAAG,GAAG,GAAG;KAC5D,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAsBH,OArBA,KAAK,YAAY,GAAG,EAAE,OAAO,GAAG,KAAK,kBAAkB,CAAC,GACxD,IAAU,KAAK,UAAU,cAAmC,cAAe,CAAC,GAC5E,IAAI,SAAW,GAAG;QAChB,IAAI;QACJ,CAAC,IAAI,EAAQ,cAAc,QAAQ,EAAE,cAAc;SACjD,MAAM,QAAe,EAAE;SACvB,WAAW,CAAC;SACZ,YAAY,CAAC;QACf,CAAC,GAAG,AAGA,OAHM,WAAW,WAAY;SAE/B,OAAO,EAAE,eAAoB,EAAQ,WAAgC,UAAU;QACjF,CAAC,GAAO,CAAC;OACX,GACA,EAAE,KAAK,wBAAwB,CAAC,GAChC,EAAW,OAAO,GAClB,IAAkB,KAAK,UAAU,GAAG,IAAI,EAAgB,OAAO,IAAI,EAAgB,WAAW,IAAI,CAAC,GACnG,KAAK,UAAU,gBAAgB,EAAE,cAAc,EAC7C,QAAQ,KAAK,UAAU,YACzB,IACA,KAAK,qBAAqB,SAAS,MAAM,EAAE,uBAAuB,KAAK,uBACvE,EAAW,OAAO,IACX,EAAE,KAAK,OAAO,GAAG,GAAG,GAAG,CAAC;OACjC,KAAK;QAEH,AADA,IAAI,EAAW,MACf,EAAW,OAAO;QAClB;OACF,KAAK,IAGH,OAFA,EAAW,OAAO,IAClB,EAAW,KAAK,EAAW,MAAS,CAAC,GAC9B,EAAW,OAAO,UAAU,KAAK,WAAW,EAAW,EAAE,CAAC;OACnE,KAAK,IASH,CARK,KAAK,IAAI,KAAK,SAAA,CAAU,uBAAuB,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,UAAU,iBAAiB,QAAQ,EAAE,kBAAiB,KAAK,UAAU,aAAa,cAAc,CAAC,KAAK,IAAI,KAAK,cAAc,QAAQ,EAAE,kBAAkB,KAAK,IAAI,KAAK,iBAAiB,QAAQ,EAAE,KAAK,IAAI,KAC1R,IAAK,GAAG,eAAe,GAAG,KAAK,UAAU,cAAc,KAAK,SAAS,CAAC,CAAC,KAAK,UAAU,MAAM,IAC3F,IAAI,KAAK,cAAc,QAAQ,EAAE,cAAc;QAC9C,MAAM;QACN,WAAW,CAAC;QACZ,YAAY,CAAC;OACf,CAAC,IAEH,KAAK,iBAAiB,CAAC,GAAG,KAAK,kBAAkB,CAAC;OACpD,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC;IACF,SAAS,EAAU,GAAM,GAAM;KAC7B,OAAO,EAAW,MAAM,MAAM,SAAS;IACzC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAc,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACjG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAMH,KALC,IAAI,KAAK,cAAc,QAAQ,EAAE,mBAAmB,WAAW,EAAE,aAAa,GAC/E,QAAQ,MAAM,CAAC,GACf,KAAK,iBAAiB,CAAC,GACvB,KAAK,kBAAkB,CAAC,GACxB,EAAW,KAAK,EAAE,MACd,CAAC,EAAW,IAAI;SAClB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,EAAE,KAAK,OAAO;OACvB,KAAK,GACH,EAAE,OAAO,KAAK;OAChB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAW,GAAM;KACxB,OAAO,EAAY,MAAM,MAAM,SAAS;IAC1C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAiB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC1G,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAEH,OADA,EAAW,OAAO,GACX,EAAE,SAAS,GAAG,KAAK,GAAG,CAAC;OAChC,KAAK,GAMH,OALA,EAAW,KAAK,EAAW,MAC3B,IAAI,EACF,MAAM,EAAW,GACnB,GACA,EAAW,OAAO,GACX,EAAE,gBAAgB,KAAK,UAAU,GAAG,CAAC;OAC9C,KAAK,GAEH,AADA,IAAI,EAAW,MACf,KAAK,EAAE,cAAc,CAAC,GAAG,KAAK,oBAAoB,SAAS;OAC7D,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAc,GAAM,GAAM,GAAM;KACvC,OAAO,EAAe,MAAM,MAAM,SAAS;IAC7C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAc,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACvG,IAAI,IAAU,MACV;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAMH,OALA,KAAK,eAAe,YAAY,QAAQ,WAAY;QAClD,EAAE,kBAAkB;OACtB,GAAG,KAAK,eAAe,OAAO,GAC9B,IAAI,IAAI,EAAG,CAAC,GACZ,EAAW,OAAO,GACX,EAAE,SAAS,GAAgB,yBAAY;QAC5C,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;SAC9F,IAAI;SACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;UAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;WACR,KAAK,GAEH,OADA,EAAW,OAAO,GACX,EAAE,gBAAgB,EAAQ,UAAU,GAAG,EAC5C,MAAM,EACR,CAAC;WACH,KAAK,GAEH,AADA,IAAI,EAAW,MACf,KAAK,EAAE,sBAAsB;YAC3B,MAAM,EAAE;YACR,WAAW,CAAC;WACd,CAAC;WACH,KAAK;WACL,KAAK,OACH,OAAO,EAAW,KAAK;UAC3B;SACF,GAAG,CAAS;QACd,CAAC,CAAC;QACF,OAAO,SAAU,GAAM,GAAM;SAC3B,OAAO,EAAM,MAAM,MAAM,SAAS;QACpC;OACF,EAAE,CAAC;OACL,KAAK,GAEH,AADA,EAAE,wBAAwB,GAC1B,KAAK,eAAe,QAAQ;OAC9B,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAW,GAAM,GAAM,GAAM;KACpC,OAAO,EAAY,MAAM,MAAM,SAAS;IAC1C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG,GAAG;KAClH,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAEH,IADA,EAAW,OAAO,GACd,CAAC,GAAG;SACN,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,KAAK,WAAW,GAAG,GAAG,CAAC;OAChC,KAAK;QACH,EAAW,OAAO;QAClB;OACF,KAAK,GAEH,OADA,EAAW,OAAO,GACX,KAAK,cAAc,GAAG,GAAG,CAAC;OACnC,KAAK;QACH,EAAW,OAAO;QAClB;OACF,KAAK,IAGH,AAFA,EAAW,OAAO,IAClB,EAAW,KAAK,EAAW,MAAS,CAAC,IACpC,IAAI,KAAK,cAAc,QAAQ,EAAE,mBAAmB,SAAS,GAAG,QAAQ,IAAI,EAAW,EAAE;OAC5F,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC;IACF,SAAS,EAAmB,GAAM,GAAM,GAAM,GAAM;KAClD,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAgB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACzG,IAAI,GAAG,GAAwB,GAAG,GAAG,GAAG,GAAG;KAC3C,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAGH,OAFA,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,MACpB,EAAW,OAAO,GACX,EAAE,0BAA0B,KAAK,UAAU,EAChD,MAAM,EACJ,MAAM,EACR,EACF,CAAC;OACH,KAAK;QAIH,AAHA,IAAyB,EAAW,MACpC,IAAI,EAAuB,MAC3B,IAAI,EAAuB,OAC3B,IAAI,CAAC,CAAC,KAAK;QACX,IAAI;SACF,AAAI,KAAG,EAAE,aAAa,GAAO,MAAM,CAAC,CAAC,IAAI,IAAI,KAAK,eAAe,UAAU,KAAK,oBAAoB,SAAA,CAAU,KAAW,CAAC,KAAK,CAAC,EAAE,QAChI,IAAI,EAAE,sBAAsB,EAC1B,MAAM,EACR,GAAG,CAAC,CAAC,GACL,QAAQ,MAAM,CAAC,GACf,IAAI,IAAI,KAAK,eAAe,UAAU,KAAK,oBAAoB,UAC/D,EAAE,mBAAmB,GAAG,GAAG,CAAC,KACvB,KAAK,mBAAmB,GAAG,EAAE,MAAM,CAAC,CAAC,KAAK,QAAQ,CAAC;QAC5D,SAAS,GAAG;SACV,KAAK,WAAW,CAAC;QACnB;OACF,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAa,GAAM,GAAM,GAAM;KACtC,OAAO,EAAc,MAAM,MAAM,SAAS;IAC5C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KACzG,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,gBAAgB;SACvB,EAAW,OAAO;SAClB;QACF;QACA,IAAI,CAAC,KAAK,qBAAqB;SAC7B,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,KAAK,KAAK;OACnB,KAAK;QACH,EAAW,OAAO;QAClB;OACF,KAAK,GACH,OAAO,EAAW,OAAO,QAAQ;OACnC,KAAK,GACH,CAAC,EAAE,QAAQ,KAAK,qBAAqB,IAAI,KAAK,UAAU,iBAAiB,QAAQ,EAAE,wBAAwB,IAAI,KAAK,iBAAiB,QAAQ,EAAE,KAAK,IAAI,IAAI,EAAE,kBAAkB,GAAG,KAAK,aAAa,GAAG,GAAG,EAAE,IAAI;OACnN,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAM,GAAM;KAClC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG;IAC3B,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,MAAM,KAAK,kBAAkB,CAAC,IAAI,KAAK,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK;GACxG;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAsB;IAC3B,OAAO,CAAC;GACV;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG;IACjC,EAAE,QAAQ,SAAU,GAAG,GAAG;KACxB,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM;MACpC,IAAI,IAAI,EAAE,IAAI;MACd,KAAK,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC;KAC1E;IACF,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC5G,IAAO,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAEH,OADA,EAAW,OAAO,GACN,EAAE,qBAA0C,KAAK,GAAG,CAAC;OACnE,KAAK;QAEH,IADA,EAAW,KAAK,EAAW,MACvB,EAAW,IAAI;SACjB,EAAW,OAAO;SAClB;QACF;QACA,EAAW,KAAK;OAClB,KAAK;QAEH,IADA,IAAI,EAAW,IACX,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAE,aAAa,GAAO,MAAM,EAAE,KAAK,CAAC,GAC7B,EAAW,OAAO,QAAQ;OACnC,KAAK;QACH,IAAO,KAAM,EAAE,MAAO;SACpB,EAAW,OAAO;SAClB;QACF;QAGA,OAFA,IAAI,EAAE,uBAAuB,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC,GAC1D,EAAE,aAAa,GAAO,MAAM,CAAC,CAAC,GACvB,EAAW,OAAO,QAAQ;OACnC,KAAK,IACH,OAAO,EAAW,OAAO,UAAU,CAAC;OACtC,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAgB,GAAM,GAAM,GAAM;KACzC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAyB;IAC9B,EAAE,WAAW,cAAc,GAAG,EAAE,WAAW,aAAa;GAC1D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG;IAC5B,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KAC/B,EAAE,KAAK,CAAC,CAAC,KAAK,SAAU,GAAG;MACzB,EAAE,QAAQ,SAAU,GAAG;OACrB,EAAE,OAAU,CAAC;MACf,CAAC;KACH,CAAC;IACH,CAAC;GACH;EACF;CAAC,CAAC;AACJ,EAAE,EAAE;AACN,GAAE,gBAAgB,oIAAoI,GAAE,wBAAwB,kCAAkC,GAAE,0BAA0B,2BAA2B,GAAE,gBAAgB,8BAA8B,GAAE,wBAAwB;AACnV,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO;KACL,eAAe,UAAiB;KAChC,gBAAgB;IAElB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI,IAAI;IACR,MAAM,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,OAAO,0CAA0C,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW;GAC3G;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,OAAO;KACL,KAAK;KACL,QAAQ;KACR,0BAA0B,EAAG;IAC/B;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAI;CAElC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EAC5B,IAAI;EAGJ,OAFA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,4BAA4B;GAAG,GAAG;GAAc;GAAG;EAAC,CAAC,GAAG,EAAQ,2BAA2B,sBAAsB,EAAQ,aAAa,0CAA0C,EAAQ,mBAAmB,sNAAsN,EAAQ,yBAAyB,CAAC,sBAAsB,GAAG,EAAQ,MAAM,GAAU,EAAG,aAAmB,KAAI,EAAQ,2BAA2B,GAAG,EAAQ,CAAC,KAAK,aAAa,EAAE,UAAU,EAAQ,MAAM,GAAU,EAAG,aAAmB,EAAE,UAAS,EAAE,YAAY,EAAQ,QAAQ,UAAU,EAAE,UAAU,EAAE,eAAe,EAAQ,QAAQ,aAAa,EAAE,cACvxB;CACT;CAGA,OADA,EAAU,GAAI,CAAE,GACT,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,SAAwB,GAAG,GAAG,GAAG;GACtC,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;GACtB,IAAI,GAAG,OAAA,AAAiF,EAAE,YAAU,CAAC,GAAG,EAAE,QAAQ,iBAAiB,CAAC,GAAG,EAAc,EACnJ,QAAQ,EACV,GAAG,CAAC;EACN;CACF,GAAG;EACD,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;IAC5G,IAAI;IACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,KAAK,iBAAiB;QACxB,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,uCAAuC;MACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,GAAG,CAAC,GAC1C,EAAE,QAAQ,MAAM,GAAG,CAAC;MACtB,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,GAAW,IAAI;GACpB,CAAC,CAAC;GACF,SAAS,EAAe,GAAM,GAAM,GAAM;IACxC,OAAO,EAAiB,MAAM,MAAM,SAAS;GAC/C;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,CAAC;AACH,GAAG,aAAa;AAChB,IAAI,IAAK,IACL,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EAC5B,IAAI;EAGJ,OAFA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG;GAAG;GAAG;GAAG;GAAG;EAAC,CAAC,GAAG,EAAQ,sBAAsB,CAAC,GAAG,EAAQ,iBAAiB,EAAG,aAC3G;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,SAAwB,GAAG,GAAG,GAAG;GACtC,OAAO,EAAE;EACX;CAEF,GAAG;EACD,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;IAC5G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,KAAK,iBAAiB;QACxB,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,uCAAuC;MACzD,KAAK;OACH,IAAI,KAAK,QAAQ,EAAE,IAAI;QACrB,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,mBAAmB;MACrC,KAAK,GACH,EAAE,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC;MAC1B,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,GAAW,IAAI;GACpB,CAAC,CAAC;GACF,SAAS,EAAe,GAAM,GAAM,GAAM;IACxC,OAAO,EAAiB,MAAM,MAAM,SAAS;GAC/C;GACA,OAAO;EACT,EAAE;CACJ,CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAqB,GAAG,GAAG;GAChC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;EAC3B;CACF,CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,qBAC3F,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAAwB;GAA6D;GAAG;GAAG,EACzH,OAAO,CAAC,EACV;EAAC,CAAC;CACJ;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAyB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAE5G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,gBAAgB;QACrB,EAAW,OAAO;QAClB;OACF;OACA,OAAO,EAAW,OAAO,UAAU,EACjC,YAAY,EAAE,iBAAiB,KAAK,IACtC,CAAC;MACH,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAA,EAAyB,SAAU,GACnD,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAsB,GAAM;IACnC,OAAO,EAAuB,MAAM,MAAM,SAAS;GACrD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,qBAC3F,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAAwB;GAA+B;GAAG;GAAG,EAC3F,QAAQ,CAAC,EACX;EAAC,CAAC;CACJ;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAA0B,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAE7G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,gBAAgB;QACrB,EAAW,OAAO;QAClB;OACF;OACA,OAAO,EAAW,OAAO,UAAU,EACjC,YAAY,EAAE,iBAAiB,KAAK,IACtC,CAAC;MACH,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAA,EAAyB,SAAU,GACnD,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAsB,GAAM;IACnC,OAAO,EAAwB,MAAM,MAAM,SAAS;GACtD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAK,0BACL,IAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO;KACL,eAAe,UAAiB;KAChC,gBAAgB;IAClB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG,GAAG;IACnD,EAAE,UAAU,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC;GACpC;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,OAAO;KACL,KAAK;KACL,QAAQ;KACR,0BAA0B,EAAG;IAC/B;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EACzB,IAAI;EAGJ,OAFA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG;GAAG;GAAG;GAAG;EAAC,CAAC,GAAG,EAAQ,2BAA2B,wBAAwB,EAAQ,aAAa,qEAAqE,EAAQ,yBAAyB,CAAC,aAAa,UAAU,GACxP;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,CAAE;AACxB,EAAE,CAAC,GACC,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,GAAuB;EAS7B,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAG,4BAA4B;GAAG,EAAG;GAAc;GAAG,EAPrF,QAAQ,EACN,OAAO;IACL,iBAAiB;IACjB,kBAAkB;GACpB,EACF,EAEqF;EAAC,CAAC,GAAG,EAAQ,MAAM,kFAAkF,EAAQ,2BAA2B,0BAA0B,EAAQ,mBAAmB;EACtR,IAAI,IAAS,GAAuB,aAAkC;EAEtE,OADA,EAAQ,CAAC,KAAK,aAAa,EAAE,cAAc,EAAQ,MAAM,0CAAiD,EAAE,qCAAwC,EAAG,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC,IAAI,EAAQ,iBAAiB,EAAG,oBAChO;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAI,IAAI,IAAI,SAAS;IACrB,OAAO,EAAE,OAAO,SAAS,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KAC/D,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC;IAC1B,CAAC,GAAG;GACN;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC5G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK;QACH,IAAI,GAAG;SACL,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,qBAAqB;OACvC,KAAK,GAEH,AADA,IAAI,KAAK,mBAAmB,KAAK,SAAS,EAAE,EAAE,GAC9C,EAAE,wBAAwB,KAAK,iBAAiB,EAAE,QAAQ,KAAK,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;OACtF,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAM,GAAM,GAAM;KACxC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,OAAO,EAAE,UAAU,IAAI,SAAU,GAAG;QAClC,OAAO;SACL,KAAK,GAAU,KAAW,EAAE;SAC5B,MAAM;QACR;OACF,CAAC,EACH,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAM;KAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAqB,GAAG;GAC7B,OAAO,EAAE;EACX;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAA4B,GAAG,GAAG;GACvC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;EAC3B;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,GAAuB;EAS7B,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAG,4BAA4B;GAAG,EAAG;GAAc;GAAG,EAPrF,QAAQ,EACN,OAAO;IACL,iBAAiB;IACjB,kBAAkB;GACpB,EACF,EAEqF;EAAC,CAAC,GAAG,EAAQ,MAAM,+FAA+F,EAAQ,cAAc,oBAAoB,EAAQ,2BAA2B,0BAA0B,EAAQ,mBAAmB;EAC7U,IAAI,IAAS,GAAuB,aAAkC;EAEtE,OADA,EAAQ,CAAC,KAAK,aAAa,EAAE,cAAc,EAAQ,MAAM,0CAAiD,EAAE,qCAAwC,EAAE,WAAW,KAAK,KAAK,EAAE,WAAW,SAAS,EAAQ,eAAe,EAAE,SAAS,EAAE,gBAAgB,KAAK,KAAK,EAAE,gBAAgB,SAAS,EAAQ,cAAc,EAAE,cAAc,EAAG,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC,IAAI,EAAQ,iBAAiB,EAAG,wBAC5Y;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG,GAAG;IAC7C,IAAI,IAAI,IAAI,SAAS;IACrB,OAAO,EAAE,OAAO,cAAc,CAAC,GAAG,EAAE,OAAO,eAAe,OAAO,KAAK,WAAW,CAAC,GAAG,EAAE,OAAO,cAAc,CAAC,GAAG,KAAK,MAAM,MAAM,EAAE,OAAO,yBAAyB,CAAC,GAAG,KAAK,iBAAiB,KAAK,KAAK,KAAK,iBAAiB,QAAQ,EAAE,OAAO,2BAA2B,OAAO,KAAK,YAAY,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KACvU,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC;IAC1B,CAAC,GAAG,EAAE,IAAI,QAAQ,MAAM,KAAK,KAAK,EAAE,OAAO,UAAU,GAAS,GAAG;GACnE;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC5G,IAAU,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK;QACH,IAAO,KAAM,EAAE,MAAO,EAAE,IAAK;SAC3B,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,qBAAqB;OACvC,KAAK,GAEH,AADA,KAAc,EAAE,EAAE,SAAS,EAAA,EAAyB,KAAA,EAA2B,KAAK,GAAG,IAAI,KAAK,mBAAmB,KAAK,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,GAC9I,EAAE,wBAAwB,KAAK,iBAAiB,EAAE,QAAQ,KAAK,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;OACtF,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAM,GAAM,GAAM;KACxC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,OAAO,EAAE,UAAU,IAAI,SAAU,GAAG;QAClC,OAAO;SACL,KAAK,GAAU,KAAW,EAAE;SAC5B,MAAM;QACR;OACF,CAAC,EACH,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAM;KAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAqB,GAAG;GAC7B,OAAO,EAAE,WAAW,OAAO,EAAE;EAC/B;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAgC,GAAG,GAAG;GAC3C,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,MAAM;EACvD;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,wBAC3F,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAAwB;GAA0C;GAAG;GAAG,EACtG,OAAO,CAAC,EACV;EAAC,CAAC;CACJ;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAA0B,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAC7G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,gBAAgB;QACrB,EAAW,OAAO;QAClB;OACF;OACA,OAAO,EAAW,OAAO,UAAU,EACjC,YAAY,EAAE,iBAAiB,KAAK,IACtC,CAAC;MACH,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,EAAE,QAAQ,GAClB,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAsB,GAAM;IACnC,OAAO,EAAwB,MAAM,MAAM,SAAS;GACtD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,gBAC3F,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAAoB;GAAQ;GAAG;EAAC,CAAC;CACnE;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAEzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAA,EAAyB,kBAAmB,GAC5D,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAkB,GAAM;IAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;GAClD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,gBAC3F,IAAS,EAAE,kBAAuC;EAEpD,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG;GAAkB;GAAyD;GAAG;EAAC,CAAC,GAAG,EAAQ,yBAAyB,CAAC,wBAAwB,UAAU,GAAG,EAAQ,UAAU,EAAE,SAC1M;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,SAAwB,GAAG,GAAG;GACnC,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;GACxB,IAAI,GAAG,OAAO,EACZ,QAAQ;IACN,UAAU;IACV,SAAS,KAAK;IACd,SAAS,EACP,gBAAgB,CAAC,EACnB;GACF,EACF;EACF;CACF,GAAG;EACD,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IACzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,EAAE,UAAU,GACpB,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAkB,GAAM;IAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;GAClD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,eAC3F,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAA4B;GAA2B;GAAG;EAAC,CAAC;CAC9F;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAEzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAA,EAAyB,gBAAiB,GAC1D,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAkB,GAAM;IAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;GAClD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,cAC3F,IAAS,EAAE,kBAAuC;EAEpD,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG;GAAoB;GAAoC;GAAG;EAAC,CAAC,GAA0B,EAAQ,gBAAgF,EAAQ,cAAc,KACjO;CACT;CAGA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,IAAI,IAAI,EAAE,OAAO,SAAU,GAAG;KAC1B,OAAO,EAAE;IACX,CAAC,GACD,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,MACpB,IAAI,EAAE,MAAM,GAAG,EAAE,SAAS,CAAC;IACxB,OAWL,OAAO;KACL,kBAXM,EAAE,OAAO,SAAU,GAAG;MAC1B,OAAO,EAAE,SAAS;KACpB,CAAC,CAAC,CAAC,IAAI,SAAU,GAAG;MAClB,OAAO,EAAE;KACX,CAOkB;KAClB,qBAPI,EAAE,OAAO,SAAU,GAAG;MACxB,OAAO,EAAE,SAAS;KACpB,CAAC,CAAC,CAAC,IAAI,SAAU,GAAG;MAClB,OAAO,EAAE;KACX,CAGqB;KACrB,uBAAuB;IACzB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,KAAK,gBAAgB,CAAC;IAC5B,IAAI,GAAG,OAAA,AAAiF,EAAE,YAAU,CAAC,GAAG,EAAE,QAAQ,iBAAiB,CAAC,GAAG,EAAc,EACnJ,QAAQ;KACN,kBAAkB,EAAE;KACpB,qBAAqB,EAAE;KACvB,MAAM,EAAE;IACV,EACF,GAAG,CAAC;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,EAAE,kBAAkB,GAC5B,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAM;KAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,EAAE;EASR,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAG,4BAA4B;GAAG,EAAG;GAAc;GAAG,EAPrF,QAAQ,EACN,OAAO;IACL,iBAAiB;IACjB,kBAAkB;GACpB,EACF,EAEqF;EAAC,CAAC,GAAG,EAAQ,MAAM,+EAA+E,EAAQ,2BAA2B,0BAA0B,EAAQ,mBAAmB;EACnR,IAAI,IAAS,EAAE,aAAkC;EAEjD,OADA,EAAQ,CAAC,KAAK,aAAa,EAAE,cAAc,EAAQ,MAAM,0CAAiD,EAAE,4BAA+B,EAAE,WAAW,KAAK,KAAK,EAAE,WAAW,SAAS,EAAQ,eAAe,EAAE,SAAS,EAAG,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC,IAAI,EAAQ,iBAAiB,EAAG,wBACtS;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAC1C,IAAI,IAAI,IAAI,SAAS;IACrB,OAAO,EAAE,OAAO,cAAc,CAAC,GAAG,KAAK,MAAM,MAAM,EAAE,OAAO,yBAAyB,CAAC,GAAG,KAAK,iBAAiB,KAAK,KAAK,KAAK,iBAAiB,QAAQ,EAAE,OAAO,2BAA2B,OAAO,KAAK,YAAY,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KACzP,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC;IAC1B,CAAC,GAAG,EAAE,IAAI,QAAQ,MAAM,KAAK,KAAK,EAAE,OAAO,UAAU,GAAS,GAAG;GACnE;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC5G,IAAU,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK;QACH,IAAI,GAAG;SACL,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,qBAAqB;OACvC,KAAK,GAEH,AADA,KAAc,EAAE,EAAE,SAAS,EAAA,EAAyB,KAAA,EAA2B,KAAK,GAAG,IAAI,KAAK,mBAAmB,KAAK,SAAS,EAAE,IAAI,CAAC,GACxI,EAAE,wBAAwB,KAAK,iBAAiB,EAAE,QAAQ,KAAK,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;OACtF,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAM,GAAM,GAAM;KACxC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,OAAO,EAAE,UAAU,IAAI,SAAU,GAAG;QAClC,OAAO;SACL,KAAK,GAAU,KAAW,EAAE;SAC5B,MAAM;QACR;OACF,CAAC,EACH,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAM;KAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAqB,GAAG;GAC7B,OAAO,EAAE,WAAW,OAAO,EAAE;EAC/B;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAgC,GAAG,GAAG;GAC3C,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,MAAM;EACvD;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,aAC3F,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAA4B;GAAmC;GAAG;EAAC,CAAC;CACtG;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAEzG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAA,EAAyB,oBAAqB,GAC9D,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAkB,GAAM;IAC/B,OAAO,EAAoB,MAAM,MAAM,SAAS;GAClD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,EAAE;EACR,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAG,4BAA4B;GAAG,EAAG;GAAc;EAAC,CAAC,GAAG,EAAQ,MAAM,8EAA8E,EAAQ,2BAA2B,qBAAqB,EAAQ,mBAAmB;EAC1Q,IAAI,IAAS,EAAE,aAAkC;EAEjD,OADA,EAAQ,CAAC,KAAK,aAAa,EAAE,cAAc,EAAQ,MAAM,0CAAiD,EAAE,4BAA+B,EAAE,WAAW,KAAK,KAAK,EAAE,WAAW,SAAS,EAAQ,eAAe,EAAE,SAAS,EAAG,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC,IAAI,EAAQ,iBAAiB,EAAG,oBACtS;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,EACF,MAAM,EACR;IACF,OAAO,KAAK,iBAAiB,EAAE,SAAS,KAAK,eAAe,EAAE,eAAe,CAAC,CAAC,GAAG;GACpF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KACzG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,GAC1D,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAM,GAAO;KACnC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,OAAO,EAAE,UAAU,IAAI,SAAU,GAAG;QAClC,OAAO;SACL,KAAK,GAAU,KAAW,EAAE;SAC5B,MAAM;QACR;OACF,CAAC,EACH,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAqB,GAAG;GAC7B,OAAO,EAAE,WAAW,OAAO,EAAE;EAC/B;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAA4B,GAAG;GACpC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,MAAM;EAC9B;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,aAAkC,UAC3F,IAAS,EAAE,kBAAuC;EAEpD,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG;GAA+B;GAAqB;GAAG;EAAC,CAAC,GAAG,EAAQ,mBAAmB,wUAAwU,EAAQ,yBAAyB,CAAC,wBAAwB,eAAe,GACpgB;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAE1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAA,EAAyB,YAAa,GACtD,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAkB,GAAO;IAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;GACnD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,CAAC;AACJ,EAAE,CAAE,GACA,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO;KACL,eAAe,UAAiB;KAChC,gBAAgB;KAChB,QAAQ;IACV;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI;IACJ,CAAC,IAAI,EAAE,YAAY,QAAQ,EAAE,SAAS,uDAAuD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW;GACzH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,OAAO;KACL,KAAK;KACL,QAAQ;KACR,0BAA0B,EAAG;KAC7B,MAAM,KAAK,UAAU,EACnB,QAAQ,GACV,CAAC;IACH;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EACzB,IAAI;EAGJ,OAFA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,4BAA4B;GAAG,GAAG;GAAc;EAAC,CAAC,GAAG,EAAQ,2BAA2B,kBAAkB,EAAQ,aAAa,wCAAwC,EAAQ,yBAAyB,CAAC,SAAS,GAAG,EAAQ,MAAM,GAAG,EAAQ,2BAA2B,GAAG,KAAK,EAAQ,CAAC,KAAK,YAAY,OAAO,OAAO,EAAQ,SAAS,CAAC,GAC1W;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,CAAE;AACxB,EAAE,CAAC,GACC,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,QAA6B,gBACtF,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAAqC;GAAoB;GAAG;EAAC,CAAC;CAChG;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;IACtB,IAAI,GAAG,OAAO,EAAc,EAC1B,QAAQ,EACV,GAAG,CAAC;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KACzG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAE1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,cAAkC,EAAE,CAAC,QAAS,GAC9D,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,QAA6B,eACtF,IAAS,EAAE,kBAAuC;EACpD,OAAO,EAAW,MAAM,GAAI;GAAC;GAAG;GAAsC;GAA4B;GAAG;EAAC,CAAC;CACzG;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;IACtB,IAAI,GAAG,OAAO,EAAc,EAC1B,MAAM,EACR,GAAG,CAAC;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC1G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,EAAE,WAAW,GACrB,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,IAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO;KACL,eAAe,UAAiB;KAChC,gBAAgB;IAClB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI,IAAI;IACR,EAAE,QAAQ,EAAE,MAAM,SAAS,oBAAoB,EAAE,EAAE,WAAW,IAAI,EAAE,EAAE,iBAAiB,IAAI,EAAE,CAAC;GAChG;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,OAAO;KACL,KAAK;KACL,QAAQ;KACR,0BAA0B,EAAE;IAC9B;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAe,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACxG,IAAI,GACF,GACA,IAAU;KACZ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAIH,OAHA,IAAI,EAAQ,SAAS,KAAK,EAAQ,OAAO,KAAA,IAAY,EAAQ,KAAK,CAAC,GACnE,EAAE,gBAAgB,SAAS,GAC3B,EAAW,OAAO,GACX,EAAE,MAAM,GAAG,EAAE,gBAAgB,SAAS,GAAG,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;QACnE,OAAO,EAAE,sBAAsB,CAAC;OAClC,CAAC;OACH,KAAK;QAEH,IADA,IAAI,EAAW,MACX,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM;OAChB,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,CAAC;OACtC,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAY,GAAO,GAAO,GAAO;KACxC,OAAO,EAAa,MAAM,MAAM,SAAS;IAC3C;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAO,GAAG,GACN,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,GAAuB;EAC7B,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAE,4BAA4B;GAAG,EAAE;GAAc;EAAC,CAAC,GAAG,EAAQ,2BAA2B,kBAAkB,EAAQ,aAAa,gDAAgD,EAAQ,MAAM,0CAA0C,EAAQ,yBAAyB,CAAC,SAAS,GAAG,EAAQ,mBAAmB;EACpV,IAAI,IAAS,GAAuB,QAA6B;EAEjE,OADA,EAAQ,CAAC,KAAK,YAAY,OAAO,OAAO,EAAQ,SAAS,CAAC,IAAgB,IAAI,EAAQ,QAAA,CAAS,UAAoD,EAAE,QAAQ,EAAG,iBAA4B,IAAI,EAAQ,QAAA,CAAS,UAAoD,EAAE,QAAQ,EAAG,gBAAe,EAAQ,2BAA2B,iCAAiC,EAAQ,QAAQ,kBAAkB,OAChY;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,KAAc,EAAE,EAAE,SAAS,EAAA,EAAyB,KAAA,EAA2B,KAAK;IACtF,OAAO,KAAK,MAAM,OAAO,EAAE,QAAQ,IAAI;GACzC;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC1G,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,KAAK,IAAI,KAAK,oBAAoB,QAAQ,EAAE,SAAS;SACnD,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAGH,AAFA,KAAK,MAAM,KAAK,gBAAgB,OAAO,KAAK,KAC5C,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,EAAE,aAAa,OAAO;SACxB,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,IAAI,QAAQ,SAAU,GAAG;SAC1D,IAAI,IAAI,IAAI,WAAW;SACvB,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,SAAU,GAAG;UAC1C,EAAE,EACA,OAAO,CAAC;WACN,KAAK,EAAE,OAAO;WACd,MAAM;UACR,CAAC,EACH,CAAC;SACH;QACF,CAAC,CAAC;OACJ,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM;OAChB,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,OAAO,QACT,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,CAAC;AACH,GAAG,gBAAgB,SAAS,GAAG,gBAAgB;AAC/C,IAAI,KAAK,IACL,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAO,GACH,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,GAAuB;EAC7B,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAE,4BAA4B;GAAG,EAAE;GAAc;GAAG,EACrF,OAAO,CAAC,EACV;EAAC,CAAC,GAAG,EAAQ,2BAA2B,kBAAkB,EAAQ,aAAa,gDAAgD,EAAQ,mBAAmB,oWAAoW,EAAQ,MAAM,IAAI,EAAQ,yBAAyB,CAAC,SAAS,GAAG,EAAQ,2BAA2B,wBAAwB,EAAQ,eAAe,EAAG;EACnpB,IAAI,IAAS,GAAuB,QAA6B;EAEjE,OADA,EAAQ,CAAC,KAAK,aAAa,EAAQ,cAAc,CAAC,GAAG,EAAG,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC,KAAkB,IAAI,EAAQ,QAAA,CAAS,UAAsD,EAAE,QAAQ,EAAG,gBAAe,EAAQ,QAAQ,kBAAkB,QAAQ,EAAQ,iBAAiB,EAAG,oBAChS;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,KAAK,QAAQ,EAAE,QAAQ,EAAE,SAAS,kBAAkB,KAAK,eAAe,EAAG,wBAAwB,OAAO,EAAE;GAC9G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,KAAc,EAAE,EAAE,SAAS,EAAA,EAAyB,KAAA,EAA2B,KAAK;IACtF,OAAO,KAAK,MAAM,OAAO,EAAE,SAAS,IAAI;GAC1C;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC7G,IAAI,GAAG,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,KAAK,IAAI,KAAK,oBAAoB,QAAQ,EAAE,SAAS;SACnD,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK;QACH,IAAI,KAAK,QAAQ,EAAE,IAAI;SACrB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,mBAAmB;OACrC,KAAK,GAGH,AAFA,KAAK,MAAM,KAAK,gBAAgB,OAAO,KAAK,cAC5C,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GAAG,IAAI,EAAG,mBAAmB,GAAG,EAAE,EAAE,GAC3E,EAAE,wBAAwB,KAAK,iBAAiB,EAAE,QAAQ,KAAK,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;OACtF,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO,GAAO;KAC3C,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM;OAChB,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,EAAE,KACV,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;GAC3B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,OAAO,EAAE;GACX;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAI,IAAI,IAAI,SAAS;IACrB,OAAO,EAAE,OAAO,QAAQ,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KAC9D,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC;IAC1B,CAAC,GAAG;GACN;EACF;CAAC,CAAC;AACJ,EAAE,CAAC;AACH,GAAG,2BAA2B,kDAAkD,GAAG,yBAAyB,gDAAgD,GAAG,gBAAgB;AAC/K,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG;IAC7C,OAAO;KACL,6BAA6B;KAC7B,gBAAgB;KAChB,4BAA4B;IAC9B;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG;IAC1C,OAAO;KACL,6BAA6B;KAC7B,QAAQ;IACV;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAwC,GAAG,GAAG,GAAG,GAAG;IACzD,EAAE,QAAQ,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC;GAClC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2C,GAAG;IACnD,OAAO;KACL,KAAK,WAAkB;KACvB,QAAQ;KACR,eAAe,SAAuB,GAAG;MACvC,OAAO,EACL,6BAA6B,GAAU,IACzC;KACF;KACA,0BAA0B,EAAG;IAC/B;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG;IAC1C,OAAO;KACL,6BAA6B;KAC7B,gBAAgB;IAClB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA0C,GAAG,GAAG,GAAG,GAAG;IAE3D,AAAM,EAAE,OAA4B,SAAU,QAAQ,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC;GAC9E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6C,GAAG;IACrD,OAAO;KACL,KAAK,GAAU;KACf,QAAQ;KACR,eAAe,SAAuB,GAAG;MACvC,OAAO,EACL,6BAA6B,GAAU,IACzC;KACF;KACA,0BAA0B,EAAG;IAC/B;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA6C,GAAG,GAAG,GAAG,GAAG;IAC9D,EAAE,KAAK,CAAC,CAAC,KAAK,SAAU,GAAG;KACzB,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,QAAQ,EAAE,EAAE,WAAW,IAAI,EAAE,CAAC;IACtE,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgD,GAAG;IACxD,OAAO;KACL,KAAK;KACL,QAAQ;KACR,eAAe,SAAuB,GAAG;MACvC,OAAO,EAAG,wBAAwB,GAAG,CAAC;KACxC;KACA,0BAA0B,EAAG;IAC/B;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,IAAI,IAAI;KACN,6BAA6B;KAC7B,gBAAgB;IAClB;IACA,OAAO,MAAM,EAAE,kCAAkC,IAAI;GACvD;EACF;CAAC,CAAC;AACJ,EAAE,GAcE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAa,GACT,IAAc,EAAE,kBAAuC,OAA4B,eACrF,IAAS,EAAE,kBAAuC;EAEpD,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG;GAA0B,EAAE;GAAU;EAAC,CAAC,GAAG,EAAQ,MAAM,IAAI,EAAQ,2BAA2B,6BAA4C,IAAI,EAAQ,QAAA,CAAS,aAA6D,EAAE,WAAW,OAAM,OAAO,OAAO,EAAQ,SAAS,CAAC,GAAG,EAAQ,MAAM,GAAU,EAAE,sEAC7U;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,GAAG,OAAO;KACZ,eAAe,EACb,WAAW,CAAC;MACV,IAAI;MACJ,UAAU,EAAE;MACZ,MAAM;KACR,CAAC,EACH;KACA,OAAO,CAAC,EACN,MAAM,0BACR,CAAC;IACH;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC1G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,CAAC,GAAG,KAAK,WAAW;OACzC,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,IAAO,GAAM;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM;OAChB,KAAK,GAQH,OAPI,KAAK,YAAY,KAAK,wBACxB,IAAO,EAAE,QAAQ,IAAI,oBAAoB,GAAG,IAAI;QAC9C,QAAQ;QACR,SAAc,KAAK,iBAAsC;OAC3D,GACA,EAAE,mBAAmB,MAAM,GAAM,GAAG,KAAK,QAAQ,IAE5C,EAAW,OAAO,UAAU,EACjC,sBAAsB,CAAC,EACzB,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAA0B,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC7G,IAAI,GAAG,GAAW,GAAO;KACzB,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE;OACV,KAAK;QACH,IAAM,EAAE,WAAW,WAAY;SAC7B,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EACjC,WAAW,IACb,CAAC;OACH,KAAK;QACH,IAAI,EAAE,EAAE,OAAO,SAAS,IAAI;SAC1B,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,OAAO;OACjB,KAAK;QACH,IAAI,EAAE,EAAE,MAAM,MAAM,EAAE,CAAC,QAAQ,OAAO,SAAS,IAAI;SACjD,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM,MAAM,EAAE,CAAC,QAAQ,OAAO;OACxC,KAAK;QAEH,AADA,IAAI,IACJ,IAAY,EAA2B,EAAE,MAAM,MAAM,EAAE,CAAC,QAAQ,UAAU,EAAE,CAAC,SAAS;QACtF,IAAI;SACF,KAAK,EAAU,EAAE,GAAG,EAAE,IAAQ,EAAU,EAAE,EAAA,CAAG,OAE3C,AADA,IAAO,EAAM,OACb,KAAK,EAAK;QAEd,SAAS,GAAK;SACZ,EAAU,EAAE,CAAG;QACjB,UAAU;SACR,EAAU,EAAE;QACd;QACA,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,KAAK,GACb,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAsB,GAAO;KACpC,OAAO,EAAwB,MAAM,MAAM,SAAS;IACtD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EArKsB,yBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EACzB,IAAI;EAKJ,OAJA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,oCAAoC,CAAC;GAAG;GAAG;GAAG;EAAC,CAAC,GAAG,EAAQ,2BAA2B,mCAAmC,EAAQ,aAEvK,uIAAuI,EAAQ,yBAAyB,CAAC,QAAQ,GAC1K;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,CAAE;AACxB,EAAE,CAyJC,CAAC,GACA,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAS,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC/F,IAAI,GAAG,GAAG,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAOH,OANA,IAAI;QACF,eAAe;QACf,gBAAgB;OAClB,GACA,EAAW,KAAK,6CAChB,EAAW,OAAO,GACX,MAAM,4CAA4C;QACvD,QAAQ;QACR,MAAM,KAAK,UAAU,EACnB,WAAW,EACb,CAAC;QACD,SAAS;OACX,CAAC;OACH,KAAK,GAEH,OADA,EAAW,OAAO,GACX,EAAW,KAAK,KAAK;OAC9B,KAAK,GAEH,AADA,EAAW,KAAK,EAAW,KAAK,IAChC,IAAI,EAAW,GAAG,OAAO,KAAK,EAAW,IAAI,EAAW,EAAE;OAC5D,KAAK;QACH,IAAI,GAAG;SACL,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACX,MAAM,GAAG,EACd,SAAS,EACX,CAAC;OACH,KAAK,IAEH,OADA,EAAW,OAAO,IACX,EAAW,KAAK,KAAK;OAC9B,KAAK;QAEH,IADA,IAAI,EAAW,MACT,EAAE,WAAW,aAAc;SAC/B,EAAW,OAAO;SAClB;QACF;QAEA,AADA,IAAI,GACJ,EAAW,OAAO;QAClB;OACF,KAAK;QACH,IAAM,EAAE,WAAW,SAAU;SAC3B,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,yBAAgC,EAAE,OAAM;OAC1D,KAAK,IAEH,OADA,EAAW,OAAO,IACX,IAAI,QAAQ,SAAU,GAAG;QAC9B,OAAO,WAAW,GAAG,GAAG;OAC1B,CAAC;OACH,KAAK;QACH,EAAW,OAAO;QAClB;OACF,KAAK,IACH,OAAO,EAAW,OAAO,UAAU,CAAC;OACtC,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAK,GAAO,GAAO;KAC1B,OAAO,EAAO,MAAM,MAAM,SAAS;IACrC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO;KACL,eAAe;KACf,gBAAgB;IAClB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI,IAAI;IACR,EAAE,QAAQ,EAAE,MAAM,SAAS,oBAAoB,EAAE,EAAE,WAAW,IAAI,EAAE,EAAE,iBAAiB,IAAI,EAAE,CAAC;GAChG;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,OAAO;KACL,KAAK;KACL,QAAQ;KACR,0BAA0B,EAAG;IAC/B;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAS,EAAE,kBAAuC;EAItD,OAHA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,4BAA4B;GAAG,GAAG;GAAc;GAAG,EACvF,OAAO,CAAC,EACV;EAAC,CAAC,GAAG,EAAQ,2BAA2B,sBAAsB,EAAQ,aAAa,0CAA0C,EAAQ,mBAAmB,4TAA4T,EAAQ,MAAM,wCAAwC,EAAQ,sBAAsB,CAAC,GAAG,EAAQ,2BAA2B,wBAAwB,EAAQ,yBAAyB,CAAC,kBAAkB,SAAS,GAAG,EAAQ,iBAAiB,EAAG,oBAC5rB;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;IAC7G,IAAI;IACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,KAAK,IAAI,KAAK,oBAAoB,QAAQ,EAAE,SAAS;QACnD,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,uCAAuC;MACzD,KAAK;OACH,IAAI,KAAK,QAAQ,EAAE,IAAI;QACrB,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,mBAAmB;MACrC,KAAK,GACH,EAAE,QAAQ,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC;MAC7B,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,GAAW,IAAI;GACpB,CAAC,CAAC;GACF,SAAS,EAAe,GAAO,GAAO,GAAO;IAC3C,OAAO,EAAkB,MAAM,MAAM,SAAS;GAChD;GACA,OAAO;EACT,EAAE;CACJ,GAAG;EACD,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAC1G,IAAU;IACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GAGH,OAFA,IAAc,KAAK,iBAAsC,SAA8B,eACvF,EAAW,OAAO,GACX,GAAG,KAAK,GAAG,EAAE,UAAU;MAChC,KAAK,GAEH,OADA,EAAW,KAAK,EAAW,KAAK,MACzB,EAAW,OAAO,UAAU,EACjC,MAAM,EAAW,GACnB,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,GAAW,IAAI;GACpB,CAAC,CAAC;GACF,SAAS,EAAkB,GAAO;IAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;GACnD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA4B,GAAG,GAAG;GACvC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;EAC3B;CACF,CAAC,CAAC;AACJ,EAAE,CAAC,GACC,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EACzB,IAAI;EAKJ,OAJA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,kCAAkC,CAAC;GAAG;GAAG;GAAG;EAAC,CAAC,GAAG,EAAQ,2BAA2B,iCAAiC,EAAQ,aAEnK,uIACO;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,CAAE;AACxB,EAAE,CAAC,GACC,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAa,GAAG,GAAG,GACf,IAAc,EAAE,kBAAuC,OAA4B,cACrF,IAAS,EAAE,kBAAuC;EAEpD,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,yBAAyB,KAAK,CAAC,GAAI,GAAuB,gBAAiB,kCAAkC;GAAG,EAAE;GAAQ;EAAC,CAAC,GAAG,EAAQ,mBAAmB;;;;uBAAoM,EAAG;WAAoD,EAAQ,MAAM,IAAI,OAAO,OAAO,EAAQ,SAAS,CAAC,IAAe,IAAI,EAAQ,QAAA,CAAS,SAAiD,EAAE,OAAO,WAAqB,IAAI,EAAQ,QAAA,CAAS,SAAiD,EAAE,OAAO,uBAAmC,IAAI,EAAQ,QAAA,CAAS,WAAuD,EAAE,SAAS,WAAU,EAAQ,MAAM,WAAkB,EAAE,wDAC90B;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,GAAG,OAAO,kCAAyC,EAAE;yBAA4C,EAAE,qBAA+B,EAAE,iBAA2B,EAAE;UAA6B;;;GACpM;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC1G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,GAAG,CAAC,CAAC;OAC1B,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,IAAI,QAAQ,SAAU,GAAG;QAC1D,IAAI,IAAI,IAAI,WAAW;QACvB,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,SAAU,GAAG;SAC1C,EAAE,EACA,OAAO,CAAC;UACN,KAAK,EAAE,OAAO;UACd,MAAM;SACR,CAAC,EACH,CAAC;QACH;OACF,CAAC,CAAC;OACJ,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,EAAE;AACJ,GAAG,YAEH;AACA,IAAI,KAAK,IACL,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,OAA4B,cACrF,IAAS,EAAE,kBAAuC;EAQpD,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG;GAA0B,EAAE;GAAQ;GAAG,EANzE,OAAO,EACL,OAAO,EACL,iBAAiB,YACnB,EACF,EAEyE;EAAC,CAAC,GAAG,EAAQ,mBAAmB;;;;uBAAiO,EAAG;WAAoD,EAAQ,MAAM,IAAI,EAAQ,sBAAsB,CAAC,GAAG,EAAQ,2BAA2B,wBAAwB,EAAQ,iBAAiB,EAAG;EAChhB,IAAI,IAAI,EAAE,QAAQ;EAElB,OADA,EAAQ,MAAM,WAAkB,EAAE,iGAA2G,qBAAwB,EAAQ,cAAc,KAAK,GACzL;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;IAC7G,IAAI,GAAG;IACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,KAAK,IAAI,KAAK,oBAAoB,QAAQ,EAAE,SAAS;QACnD,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,uCAAuC;MACzD,KAAK;OACH,IAAI,KAAK,QAAQ,EAAE,IAAI;QACrB,EAAW,OAAO;QAClB;OACF;OACA,MAAU,MAAM,mBAAmB;MACrC,KAAK,GACH,CAAC,IAAI,KAAK,oBAAoB,QAAQ,EAAE,YAAY,KAAK,gBAAgB,QAAQ,kBAAkB,EAAE,EAAE,CAAC,KAAK,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI,kDAAkD,2BAA2B,EAAE,QAAQ,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC;MAC9P,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,GAAW,IAAI;GACpB,CAAC,CAAC;GACF,SAAS,EAAe,GAAO,GAAO,GAAO;IAC3C,OAAO,EAAkB,MAAM,MAAM,SAAS;GAChD;GACA,OAAO;EACT,EAAE;CACJ,GAAG;EACD,KAAK;EACL,OAAO,WAAY;GACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;IAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;KAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;MACR,KAAK;OACH,IAAI,CAAC,EAAE,OAAO;QACZ,EAAW,OAAO;QAClB;OACF;OACA,MAAM,EAAE;MACV,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAM,EAAE,eAAe,GACzB,CAAC;MACH,KAAK;MACL,KAAK,OACH,OAAO,EAAW,KAAK;KAC3B;IACF,GAAG,CAAS;GACd,CAAC,CAAC;GACF,SAAS,EAAkB,GAAO;IAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;GACnD;GACA,OAAO;EACT,EAAE;CACJ,CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA4B,GAAG,GAAG;GACvC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;EAC3B;CACF,CAAC,CAAC;AACJ,EAAE,EAAE;AACJ,GAAG,YAEH;AACA,IAAI,KAAK,IACL,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAc,EAAE,kBAAuC,OAA4B,aACrF,IAAS,EAAE,kBAAuC;EAIpD,OAHA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,uCAAuC,EAAE,MAAM;GAAG,GAAG,wBAAwB,KAAK,CAAC,GAAG,GAAuB,MAAM;GAAG;EAAC,CAAC,GAAG,EAAQ,2BAA2B,oCAAoC,EAAQ,aAEhP,uIAAuI,EAAQ,MAAM,IAAI,EAAQ,MAAM,8EAAqF,EAAE,YAAY,QACnQ;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;IACxB,IAAI,GAAG,OAAO,CAAC,EACb,MAAM,EACR,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC1G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,CAAC,GACzB,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAE1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,MAAM,QAAQ,CAAC,GAAG;SACrB,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EACjC,MAAY,EAAE,EAAE,CAAC,eAAmC,EAAE,CAAC,QAAS,GAClE,CAAC;OACH,KAAK,GACH,MAAM,EAAE;OACV,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,CAAC,GACC,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAc,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KACvG,IAAI,GAAG,GAAG,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAEH,IADA,IAAI,EAAE,gBAAgB,SAClB,GAAG;SACL,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,QAAQ;OACnC,KAAK,GA0BH,OAzBA,EAAE,MAAM,mCACR,IAAI,EAAE,EAAE,eACR,OAAO,EAAE,EAAE,eACX,IAAI,EAAE,IAAkB,yBAAY;QAClC,IAAI,IAAQ,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;SAC3F,IAAI;SACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;UAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;WACR,KAAK,GAEH,OADA,IAAI,IAAI,SAAS,GACV,EAAW,OAAO,WAAW,EAAE,OAAO,WAAW,YAAY,GAAG,EAAE,OAAO,QAAQ,CAAC,GAAG,IAAI,QAAQ,SAAU,GAAG;YACnH,EAAE,EAAE,YAAY,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC;WACnC,CAAC,EAAE;WACL,KAAK;WACL,KAAK,OACH,OAAO,EAAW,KAAK;UAC3B;SACF,GAAG,CAAS;QACd,CAAC,CAAC;QACF,OAAO,SAAU,GAAO;SACtB,OAAO,EAAM,MAAM,MAAM,SAAS;QACpC;OACF,EAAE,CAAC,GACH,EAAW,OAAO,GAClB,EAAW,OAAO,IACX,QAAQ,IAAI,CAAC;OACtB,KAAK,IAOH,OANA,IAAI,EAAW,KAAK,IAAI,SAAU,GAAG;QACnC,OAAO;SACL,IAAI,EAAE;SACN,MAAM,EAAE;QACV;OACF,CAAC,GACM,EAAW,OAAO,WAAW,EAAE,EAAE,gBAAgB,GAAG,EAAE;OAC/D,KAAK,IAGH,MAFA,EAAW,OAAO,IAClB,EAAW,KAAK,EAAW,MAAS,CAAC,GAC/B,EAAE,EAAE,gBAAgB,GAAG,EAAE,aAAa,GAAG,EAAW,EAAE,GAAG,EAAE,oBAAoB,SAAS,GAAG,EAAW;OAC9G,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC;IACF,SAAS,EAAW,GAAO,GAAO,GAAO;KACvC,OAAO,EAAY,MAAM,MAAM,SAAS;IAC1C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG;IAC5B,IAAI,IAAI,EAAE,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,UAAU;GAC7C;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAY,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAClG,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAQH,OAPA,IAAI,EAAE,IAAI,SAAU,GAAQ;QAE1B,OAAO,EAAE,MAAM,mCADP,EAAO,kBAC0D,IAAI,QAAQ,SAAU,GAAG;SAChG,EAAE,EAAE,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC;QACvC,CAAC;OACH,CAAC,GACD,EAAW,OAAO,GACX,QAAQ,IAAI,CAAC;OACtB,KAAK,GAcH,OAbA,IAAI,EAAW,KAAK,IAAI,SAAU,GAAG,GAAG;QACtC,OAAO,IAAI,QAAQ,SAAU,GAAG;SAC9B,IAAI,IAAI,IAAI,WAAW;SACvB,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,SAAU,GAAG;UAC1C,EAAE;WACA,KAAK,EAAE,OAAO;WACd,MAAM,EAAE,EAAE,CAAC;WACX,MAAM,EAAE,QAAQ,GAAG,CAAC;UACtB,CAAC;SACH;QACF,CAAC;OACH,CAAC,GACD,EAAW,OAAO,GACX,QAAQ,IAAI,CAAC;OACtB,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EAAW,IAAI;OACpD,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAS,GAAO,GAAO;KAC9B,OAAO,EAAU,MAAM,MAAM,SAAS;IACxC;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,IAAI,IAAI,EAAE,MAAM,GAAG;IACnB,OAAO,EAAE,EAAE,SAAS;GACtB;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG,GAAG;KAClH,IAAI,GAAG,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAEH,IADA,EAAW,KAAK,EAAE,SAAS,GACvB,CAAC,EAAW,IAAI;SAClB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,EAAE,SAAS,GAAG,CAAC;OACxB,KAAK,GAEH,AADA,IAAI,EAAW,OACd,IAAI,GAAuB,SAAS,QAAQ,EAAE,SAAS,EAAE,QAAQ,SAAU,GAAG,GAAG;QAChF,IAAI;QACC,MAAE,KACP;aAAI,IAAI,EAAE,EAAE,CAAC;SACb,CAAC,IAAI,GAAuB,SAAS,QAAQ,EAAE,SAAS,MAAM,EAAE,KAAK,QAAQ,EAAE,KAAK,MAAM,QAAQ,GAAG,EAAE,GAAG;QAD7F;OAEf,CAAC;OACH,KAAK,GACH,OAAO,EAAW,OAAO,WAAW,IAAI,GAAuB,SAAS,QAAQ,EAAE,QAAQ;QACxF,MAAM,EAAE,KAAK;QACb,MAAM;OACR,IAAI;QACF,OAAO;QACP,MAAM;OACR,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO,GAAO,GAAO,GAAO;KACtD,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EAKJ;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,GACA,IAAI,CAAC;IACT,QAAQ,IAAI,GAAuB,SAAS,QAAQ,EAAE,SAAS,EAAE,QAAQ,QAAQ,SAAU,GAAG;KAC5F,IAAO;KACP,CAAC,IAAS,EAAE,MAA2B,gBAAgB,QAAQ,EAAE,QAAQ,SAAU,GAAG;MACpF,IAAI;MACJ,EAAE,QAAQ,EAAE,KAAK,WAAW,UAAU,MAAM,IAAI,EAAE,cAAc,QAAQ,EAAE,WAAW,EAAE,KAAK;OAC1F,MAAM,EAAE;OACR,QAAQ,EAAE,UAAU;OACpB,MAAM,EAAE,YAAY,EAAE,IAAI;MAC5B,CAAC;KACH,CAAC;IACH,CAAC,GAAG,KAAK,QAAQ,EAAE,cAAc,EAAE,KAAK,EACtC,QAAQ,EAAE,WAAW,QACvB,CAAC,GAAG;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC5G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAGH,OAFA,IAAI,EAAE,eAAe,GAAG,CAAC,GACzB,EAAW,OAAO,GACX,EAAE,mBAAmB,GAAG,GAAG,EAAE,MAAM,CAAC;OAC7C,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EAAW,IAAI;OACpD,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAgB,GAAO,GAAO,GAAO;KAC5C,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI,IAAI,CAAC;IACT,IAAI,GAAG,IAAI,EAAE;SAAU,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,KAAK,QAAQ,KAAK,GAAG;KAChE,IAAI,IAAI,EAAE,KAAK;KACf,IAAI,EAAE,SAAS,aAAa,EAAE,KAAK,CAAC;UAAO;IAC7C;IACA,OAAO,EAAE,QAAQ;GACnB;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IAAI,IAAI,CAAC;IACT,OAAO,EAAE,QAAsB,yBAAY;KACzC,IAAI,IAAS,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;MAC5F,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;OAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;QACR,KAAK,GACH,EAAE,QAAQ,OAAO,SAAU,GAAG;SAC5B,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,EAAE;QACzB,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;SACnB,OAAO,EAAE,OAAO,KAAK,KAAE;QACzB,CAAC,CAAC,CAAC,QAAsB,yBAAY;SACnC,IAAI,IAAS,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;UAC5F,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;WAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;YACR,KAAK,GACH,EAAE,KAAK,EAAE,gBAAgB,GAAG,GAAG,CAAC,CAAC;YACnC,KAAK;YACL,KAAK,OACH,OAAO,EAAW,KAAK;WAC3B;UACF,GAAG,CAAS;SACd,CAAC,CAAC;SACF,OAAO,SAAU,GAAO;UACtB,OAAO,EAAO,MAAM,MAAM,SAAS;SACrC;QACF,EAAE,CAAC;QACL,KAAK;QACL,KAAK,OACH,OAAO,EAAW,KAAK;OAC3B;MACF,GAAG,CAAS;KACd,CAAC,CAAC;KACF,OAAO,SAAU,GAAO;MACtB,OAAO,EAAO,MAAM,MAAM,SAAS;KACrC;IACF,EAAE,CAAC,GAAG,QAAQ,IAAI,CAAC;GACrB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAyB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC/G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EAAE,cAAc,GAAG,CAAC;QACrD,SAAS;QACT,MAAM;OACR,CAAC,CAAC,CAAC;OACL,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAsB,GAAO,GAAO;KAC3C,OAAO,EAAuB,MAAM,MAAM,SAAS;IACrD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC/G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAEH,OADA,IAAI,EAAE,YAAY,GAAG,CAAC,GACf,EAAW,OAAO,UAAU,EAAE,cAAc,GAAG,CAAC,CAAC;OAC1D,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO,GAAO,GAAO;KAC/C,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE;AACF,GAAE,wBAAwB,oDAAoD,GAAE,2BAA2B;AAC3G,IAAI,KAAK,IACL,KAAiB,uBAAU,GAAM;CACnC,SAAS,EAAE,GAAG;EACZ,IACI;EACJ,EAAgB,MAAM,CAAC;EACvB,IAAa,GAAG,GAAG,GACf,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,EAAE;EACR,IAAU,EAAW,MAAM,GAAG;GAAC;GAAG,EAAE,4BAA4B;GAAG,EAAE;GAAc;EAAC,CAAC,GAAG,EAAQ,2BAA2B,kBAAkB,EAAQ,aAAa,gDAAgD,EAAQ,MAAM,IAAI,EAAQ,yBAAyB,CAAC,aAAa,kBAAkB,GAAG,EAAQ,sBAAsB,CAAC,GAAG,EAAQ,SAAS,CAAC,GAAG,EAAQ,sBAAsB,EAC3X,OAAO,QACT,GAAG,EAAQ,qBAAqB,CAAC,GAAG,EAAQ,2BAA2B,CAAC,GAAG,EAAQ,cAAc,CAAC;EAClG,IAAI,IAAS,EAAE,QAA6B;EAC5C,IAAI,EAAQ,CAAC,KAAK,UAAU;GAC1B,EAAQ,SAAS;GACjB,IAAI,IAAiB,EAAQ,QAC3B,IAAI,EAAe,eACnB,IAAI,EAAe,WACnB,IAAI,EAAe;GACrB,OAAO,OAAO,EAAQ,qBAAqB,CAAC,GAAG,MAAM,EAAQ,YAAY,IAAI,MAAM,EAAQ,qBAAqB,CAAC;GACjH,IACE,KADqB,EAAE,kBAAuC,QAA6B,UAAA,CAChF;GACb,MAAM,EAAQ,mBAAmB,IAAI,EAAQ,gBAAgB,EAAE;EACjE,OAAO,CAAC,IAAI,EAAE,WAAW,QAAQ,EAAE,cAAc,EAAE,OAAO,YAAY;EAEtE,QADe,IAAI,EAAQ,gBAAA,CAAiB,YAA0D,EAAE,UAAU,CAAC,KAAqB,IAAI,EAAQ,gBAAgB,QAAA,CAAS,mBAAuE,EAAE,iBAAiB,kBAAiB,EAAQ,cAAc,GAAG,EAAQ,cAAc,EAAG,GAAQ,UAAW,EAAQ,EAAQ,MAAM,KAAK,YAAa,EAAQ,OAAO,aAAc,EAAQ,sBAAsB,EAAQ,cAAc,EAAQ,eAAe,EAAQ,iBAAiB,KAAK,CAAO,IAC3gB;CACT;CAEA,OADA,EAAU,GAAG,CAAI,GACV,EAAa,GAAG;EAAC;GACtB,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAY;KACtG,IAAI,IAAU,MACV;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAMH,OALA,WAAW,WAAY;QACrB,OAAO,EAAQ,SAAS,oBAAoB;OAC9C,GAAG,CAAC,GACJ,EAAW,OAAO,GAClB,EAAW,OAAO,GACX,KAAK,kBAAkB,KAAK,WAAW,CAAC,CAAC;OAClD,KAAK,GAEH,OADA,IAAM,EAAW,MACV,EAAW,OAAO,WAAW,KAAK,SAAS,oBAAoB,CAAC,CAAC,GAAG,EAAI;OACjF,KAAK,GAGH,OAFA,EAAW,OAAO,GAClB,EAAW,KAAK,EAAW,MAAS,CAAC,GAC9B,EAAW,OAAO,UAAU,CAAC,EAClC,OAAO,iCACT,CAAC,CAAC;OACJ,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC;IACF,SAAS,IAAmB;KAC1B,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,8BAA8B,IACzC,IAAI,GAAG,0BAA0B,GAAG,CAAC,CAAC,CAAC;IACzC,IAAI,KAAK,EAAE,SAAS,GAAG;KACrB,IAAI,IAAI,KAAK;KACb,IAAI,OAAO,KAAK,iBAAiB,YAAY;MAC3C,IAAI,IAAI,KAAK,cAAc,EAAE,IAAI,SAAU,GAAQ;OAEjD,OADQ,EAAO;MAEjB,CAAC,CAAC;MACF,MAAM,sBAAsB,MAAM,iBAAiB,MAAM,WAAW,IAAI,KAAK,QAAQ,MAAM,cAAsB,iBAAqB,GAAG,QAAQ,MAAM,gGAAwF;KACjP;KACA,IAAI,MAAM,eAAe,OAAO,EAAE,0BAA0B,GAAG,GAAG,aAAa;KAC/E,IAAI,MAAM,oBAAoB,OAAO,EAAE,0BAA0B,GAAG,GAAG,kBAAkB;KACzF,IAAI,EAAE,KAAK,SAAU,GAAQ;MAC3B,IAAI,IAAI,EAAO;MACf,OAAO,CAAC,EAAE,qBAAqB,CAAC;KAClC,CAAC,GAAG,QAAQ,MAAM,+CAA+C,GAAG,QAAQ,MAAM,qIAA+H,GAAG,QAAQ,KAAK,8GAA0G;UAAO;MAChV,IAAI,IAAK,EAAE,oBAAoB,GAAG,CAAC;MACnC,IAAI,GAAI,OAAO;KACjB;IACF;IACA,OAAO;KACL,SAAS,EAAE,QAAQ;KACnB,MAAM;IACR;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG,GAAG;IAC/C,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC;IAEpC,OAAO,EAAE,SAAS,EAChB,UAAU,CAFN,KAAK,eAAe,GAAG,CAEhB,CAAC,EACd,GAAG;GACL;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG;IACnC,IAAI,KAAK,WAAW,GAAG,KAAK,WAAW;KACrC,KAAK,MAAM,GAAU,EAAE,iBAA2B,KAAK;KACvD,IAAI,IAAI,KAAK,eAAe,GAAG,CAAC;KAChC,EAAE,QAAQ,MAAM,GAAG,CAAC;IACtB,OAAO;KACL,KAAK,MAAM,GAAU,EAAE;KACvB,IAAI,IAAM,KAAK,wBAAwB,KAAK,SAAS,GAAG,CAAC;KACzD,KAAK,cAAc,KAAK,gBAAgB,CAAG,IAAI,EAAE,QAAQ,MAAM,GAAK,CAAC;IACvE;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC7G,IACI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAM,KAAK,2BAA2B,CAAC,GAAI,KAAK,iBAAkB;SAChE,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK;QACH,KAA0B,IAAI,KAAK,QAAA,CAAS,gBAAkB,MAAqC;SACjG,EAAW,OAAO;SAClB;QACF;QAEA,EAAW,OAAO;QAClB;OACF,KAAK;QAEH,IADA,EAAW,KAAK,KAAK,OAAO,cACxB,EAAW,IAAI;SACjB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACX,KAAK,mBAAmB;OACjC,KAAK,IACH,EAAW,KAAK,EAAW;OAC7B,KAAK,IACH,EAAE,eAAe,EAAW;OAC9B,KAAK;QAEH,IADA,KAAK,uBAAuB,KAAK,kCAAkC,EAAE,QAAQ,GACzE,CAAC,GAAG;SACN,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACX,GAAG,WAAW,MAAM,GAAG,CAAC;OACjC,KAAK;QAEH,AADA,EAAW,KAAK,EAAW,MAC3B,EAAW,OAAO;QAClB;OACF,KAAK,IACH,EAAW,KAAK,KAAK;OACvB,KAAK,IAEH,AADA,IAAI,EAAW,IACf,KAAK,gBAAgB,SAAS,QAAQ,KAAK,YAAY,GAAG,GAAG,CAAC;OAChE,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO,GAAO;KAC3C,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAY;KACxG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAIH,OAHA,EAAW,OAAO,GAClB,KAAK,MAAM,EAAE,mBACb,EAAW,OAAO,GACX,EAAE,YAAY,MAAM,KAAK,MAAM,KAAK,UAAU,KAAK,mBAAmB,CAAC,GAAG,MAAM;OACzF,KAAK,GAEH,OADA,IAAM,EAAW,MACV,EAAW,OAAO,WAAW,KAAK,OAAO,eAAe,EAAI,IAAI,KAAK,OAAO,aAAa;OAClG,KAAK,GAGH,AAFA,EAAW,OAAO,GAClB,EAAW,KAAK,EAAW,MAAS,CAAC,GACrC,QAAQ,MAAM,EAAW,EAAE,GAAG,QAAQ,MAAM,kCAAkC;OAChF,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC;IACF,SAAS,IAAqB;KAC5B,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAA2C,GAAG;IACnD,IAAI,IAAI,EAAE,KAAK,SAAU,GAAG;KAC1B,OAAO,EAAE;IACX,CAAC;IACD,MAAM,KAAK,YAAY,EAAE,aAAa,KAAK,sBAAsB,CAAC;GACpE;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,IAAO,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,EAAE,KAAK,4BAA4B,KAAK,eAAe,KAAK,YAAY;SAC1E,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,KAAK,aAAa,CAAC;OAC5B,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EAAW,IAAI;OACpD,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM,QAAQ,WAAW,GAAG,qBAAqB,IAAI,MAAM,oCAAoC,IAAI,EAAE,MAAM;OACrH,KAAK,GAEH,OADA,EAAW,OAAO,GACX,KAAK,mBAAmB,CAAC;OAClC,KAAK,GAKH,OAJA,IAAI,GAAU,EAAE,iBAA2B,KAAK,kBAA4B,KAAK,UAAS,IAAI;QAC5F,QAAQ;QACR,SAAc,KAAK,iBAAsC;OAC3D,GACO,EAAW,OAAO,WAAW,EAAE,mBAAmB,MAAM,GAAG,GAAG,KAAK,QAAQ,GAAG,EACnF,sBAAsB,CAAC,EACzB,EAAE;OACJ,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACzG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,KAAK,WAAW;SACnB,EAAW,OAAO;SAClB;QACF;QAGA,OAFA,KAAK,MAAM,GAAU,EAAE,iBAA2B,KAAK,kBACvD,EAAW,OAAO,GACX,EAAE,YAAY,MAAM,KAAK,MAAM,KAAK,UAAU,KAAK,OAAO,CAAC,GAAG,MAAM;OAC7E,KAAK;QAGH,AAFA,IAAI,EAAW,MACf,KAAK,SAAS,EAAE,IAChB,EAAW,OAAO;QAClB;OACF,KAAK,GACH,KAAK,YAAY,EAAE,WAAW,KAAK,SAAS,EAAE,IAAI,KAAK,aAAa,KAAK,SAAS,SAAS,KAAK,SAAS,SAAS,SAAS,EAAE,CAAC,aAAa,KAAK;OAClJ,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO;KACjC,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAqB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACxG,IAAI,GACF,GAEA,GACA,IAAU;KACZ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAIH,OAHA,IAAI,EAAQ,SAAS,KAAK,EAAQ,OAAO,KAAA,KAAY,EAAQ,IAC7D,KAAK,MAAM,GAAU,EAAE,iBAA2B,yBAClD,EAAW,OAAO,GACX,EAAE,YAAY,MAAM,CAAC,GAAG,KAAK;OACtC,KAAK;QAGH,IAFA,IAAI,EAAW,MACf,EAAW,KAAK,CAAC,KAAK,KAAK,SAAS,qBAChC,CAAC,EAAW,IAAI;SAClB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACL,IAAI,KAAK,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;OACrF,KAAK,GACH,IAAI,EAAW;OACjB,KAAK,IACH,OAAO,EAAW,OAAO,UAAU,GAAG,mBAAmB,MAAM,GAAG,CAAC,CAAC;OACtE,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAmB,MAAM,MAAM,SAAS;IACjD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAA0B,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC7G,IAAI,IAAU,MACP,GAAG,GAAG,GAAG,GAAU,GAAG,GAAG;KAChC,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAEH,IADA,IAAI,EAAE,QAAQ,IAAI,EAAE,iBACd,MAAM,YAAY,MAAM,eAAgB;SAC5C,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,EACjC,WAAW,EAAE,mBACf,CAAC;OACH,KAAK;QACH,IAAI,EAAE,MAAM,eAAe,KAAK,WAAW;SACzC,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,GACX,KAAK,kBAAkB,EAAE,SAAS;OAC3C,KAAK,GAKH,OAJA,IAAI,EAAW,MACf,IAAW,EAAE,MAAM,GACnB,IAAI,EAAS,MACb,IAAI,EAAS,OACN,EAAW,OAAO,WAAW,WAAW,WAAY;QACzD,EAAE,QAAQ,SAAU,GAAG;SACrB,OAAO,EAAQ,SAAS,WAAW,CAAC;QACtC,CAAC;OACH,CAAC,GAAG;QACF,MAAM;QACN,YAAY,KAAK;QACjB,OAAO;OACT,EAAE;OACJ,KAAK;QAEH,IADA,IAAS,GAAuB,qBAA0C,YACtE,EAAE,MAAM,qBAAqB,IAAI;SACnC,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACX,KAAK,YAAY,CAAC;OAC3B,KAAK,IACH,OAAO,EAAW,OAAO,UAAU,EAAW,IAAI;OACpD,KAAK,IACH,MAAM,MAAM,sBAA6B,GAAE;OAC7C,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAsB,GAAO;KACpC,OAAO,EAAwB,MAAM,MAAM,SAAS;IACtD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAe,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAClG,IAAI,GAAG,GAAG,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,kBAAkB;SACzB,EAAW,OAAO;SAClB;QACF;QACA,MAAM,MAAM,wIAAwI;OACtJ,KAAK;QAOH,IANA,IAAI,EAAE,IAAI,SAAU,GAAG;SACrB,OAAO;UACL,MAAM,EAAE,SAAY;UACpB,WAAW,EAAE,SAAY;SAC3B;QACF,CAAC,GAAG,IAAI,KAAK,iBAAiB,CAAC,GACxB,MAAM,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,QAAS;SACjD,EAAW,OAAO;SAClB;QACF;QACA,MAAM,MAAM,GAAG,wBAAwB;OACzC,KAAK,GAEH,OADA,EAAW,OAAO,GACX,QAAQ,IAAI,CAAC;OACtB,KAAK;QAEH,IADA,IAAI,EAAW,MACX,CAAC,EAAE,KAAK,SAAU,GAAG;SACvB,OAAO,OAAO,KAAK;QACrB,CAAC,GAAG;SACF,EAAW,OAAO;SAClB;QACF;QACA,MAAM,MAAM,GAAG,wBAAwB;OACzC,KAAK;QAQH,IAPA,IAAI,EAAE,IAAI,SAAU,GAAG,GAAG;SACxB,OAAO;UACL,cAAc,EAAE,EAAE,CAAC;UACnB,QAAQ;SACV;QACF,CAAC,GACD,KAAK,MAAM,GAAU,EAAE,iBAA2B,KAAK,kBAA4B,KAAK,8BACpF,CAAC,KAAK,aAAa;SACrB,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACX,KAAK,gBAAgB,EAC1B,cAAc,EAChB,CAAC;OACH,KAAK;QACH,EAAW,OAAO;QAClB;OACF,KAAK,IAEH,OADA,EAAW,OAAO,IACX,EAAE,YAAY,MAAM,EACzB,cAAc,EAChB,GAAG,MAAM;OACX,KAAK,IACH,OAAO,EAAW,OAAO,UAAU,EACjC,WAAW,EAAE,mBACf,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAY,GAAO;KAC1B,OAAO,EAAa,MAAM,MAAM,SAAS;IAC3C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAgB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACnG,IAAU,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QAEH,IADA,IAAc,EAAE,iBAAsC,qBAA0C,YAC5F,EAAE,EAAE,WAAW,qBAAqB,IAAI;SAC1C,EAAW,OAAO;SAClB;QACF;QAGA,OAFA,KAAK,SAAS,EAAE,IAChB,EAAW,OAAO,GACX,KAAK,YAAY,CAAC;OAC3B,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EAAW,IAAI;OACpD,KAAK;QACH,IAAI,CAAC,KAAK,0BAA0B;SAClC,EAAW,OAAO;SAClB;QACF;QACA,OAAO,EAAW,OAAO,UAAU,KAAK,kBAAkB,CAAC,CAAC;OAC9D,KAAK,GAMH,OALI,KAAK,eAAe,KAAK,cAC3B,KAAK,MAAM,GAAU,EAAE,iBAA2B,KAAK,kBACvD,IAAI,KAAK,MAAM,KAAK,UAAU,KAAK,OAAO,CAAC,GAC3C,KAAK,gBAAgB,CAAC,IAEjB,EAAW,OAAO,UAAU,EACjC,sBAAsB,CAAC,EACzB,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAa,GAAO;KAC3B,OAAO,EAAc,MAAM,MAAM,SAAS;IAC5C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAqB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACxG,IAAI,GAAG,GAAG,GAAG,GAAM,GAAG,GAAG,GAAG,GAAK;KACjC,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,EAAE,EAAE,WAAW,EAAE,QAAQ,SAAS,KAAK,KAAK,WAAW;SACzD,EAAW,OAAO;SAClB;QACF;QAIA,IAHA,IAAI,EAAE,QAAQ,KAAK,SAAU,GAAG;SAC9B,OAAO,EAAE;QACX,CAAC,GACG,GAAG,IAAI,GAAuB,SAAS,QAAQ,EAAE,eAAe,EAAE,KAAK,YAAY,SAAS,IAAI;SAClG,EAAW,OAAO;SAClB;QACF;QAOA,OANA,IAAI,EAAE,QAAQ,KAAK,SAAU,GAAG;SAC9B,OAAO,CAAC,CAAC,EAAE;QACb,CAAC,KAAK,EAAE,QAAQ,IAAI,IAAI,GAAG,gBAAgB,KAAK,MAAM,MAAM;SAC1D,MAAM;SACN,SAAS,EAAE;QACb,GAAG,CAAC,GACG,EAAW,OAAO,YAAY,IAAI,KAAK,kBAAkB,QAAQ,EAAE,6BAA6B,KAAK,UAAU,CAAC,GAAG,EACxH,MAAM,GACR,EAAE;OACJ,KAAK;QACH,IAAI,GAAG,IAAI,EAAE,UAAU,QAAQ,EAAE,UAAU;SACzC,EAAW,OAAO;SAClB;QACF;QACA,IAAI,EAAE,EAAE,MAAM,QAAQ,SAAS,IAAI;SACjC,EAAW,OAAO;SAClB;QACF;QAIA,IAHA,IAAM,EAAE,MAAM,QAAQ,KAAK,SAAU,GAAG;SACtC,OAAO,EAAE;QACX,CAAC,GACG,GAAG,IAAI,GAA2B,SAAS,QAAQ,EAAE,eAAe,EAAI,KAAK,YAAY,WAAW,IAAI;SAC1G,EAAW,OAAO;SAClB;QACF;QAEA,OADA,EAAW,OAAO,IACX,GAAG,sBAAsB,MAAM,EAAE,MAAM,OAAO;OACvD,KAAK,IAEH,OADA,IAAK,EAAW,MACT,EAAW,OAAO,UAAU;QACjC,MAAM,EAAG,EAAE,CAAC;QACZ,OAAO,EAAG,EAAE,CAAC;OACf,CAAC;OACH,KAAK,IACH,OAAO,EAAW,OAAO,UAAU,EACjC,MAAW,EAAE,MAAM,QAAQ,EAAE,CAAC,MAA2B,MAC3D,CAAC;OACH,KAAK,IACH,OAAO,EAAW,OAAO,WAAW,CAAC,KAAK,aAAa,EAAE,cAAc,KAAK,YAAY,EAAE,YAAY,EACpG,sBAAsB,CAAC,EACzB,EAAE;OACJ,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAmB,MAAM,MAAM,SAAS;IACjD;IACA,OAAO;GACT,EAAE;EAEJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KACtG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK,GAIH,OAHA,EAAE,SAAS,CAAC,GACZ,KAAK,2BAA2B,CAAC,GACjC,EAAW,OAAO,GACX,EAAE,QAAQ,MAAM,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC;OACjD,KAAK,GACH,KAAK,gBAAgB,EAAW;OAClC,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAgB,GAAO;KAC9B,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA6B,GAAG,GAAG;GACxC,IAAI,IAAI,GAAuB,OAAO,SAAU,GAAG;IACjD,OAAO,EAAE,qBAAqB,EAAE,IAAI;GACtC,CAAC,CAAC,CAAC,IAAI,SAAU,GAAG;IAClB,OAAO;KACL,MAAM;KACN,YAAY,EACV,SAAS,EAAE,GACb;IACF;GACF,CAAC;GACD,IAAI,KAAK,EAAE,SAAS,GAAG,OAAO,EAAE,QAAQ,EAAE,KAAK,SAAS,KAAK,EAAE,KAAK;IAClE,MAAM;IACN,MAAM,EAAE;GACV,CAAC,GAAG;IACF,SAAS;IACT,MAAM;GACR;EACF;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAmC,GAAG,GAAG,GAAG;GACjD,OAAO;IACL,aAAa,EAAE,IAAI,SAAU,GAAG;KAC9B,OAAO;MACL,OAAO,CAAC,EACN,MAAM,EACR,CAAC;MACD,SAAS,EAAE;KACb;IACF,CAAC;IACD,SAAS,CAAC;KACR,MAAM;KACN,MAAM,EAAE;IACV,CAAC;IACD,MAAM;GACR;EACF;CACF,CAAC,CAAC;AACJ,EAAE,CAAC;AACH,GAAE,gBAAgB,qCAAqC,GAAE,oBAAoB,wCAAwC,GAAE,qBAAqB;AAC5I,IAAI,KAAK,IACL,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAI,EAAE,kBACR,IAAI,GAAuB;EAS7B,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAE,4BAA4B;GAAG,EAAE;GAAc;GAAG,EAPnF,QAAQ,EACN,OAAO;IACL,iBAAiB;IACjB,kBAAkB;GACpB,EACF,EAEmF;EAAC,CAAC,GAAG,EAAQ,2BAA2B,kBAAkB,EAAQ,aAAa,gDAAgD,EAAQ,mBAAmB,6iBAAgjB,EAAQ,MAAM,IAAI,EAAQ,yBAAyB,CAAC,aAAa,qBAAqB;EACv3B,IAAI,IAAS,GAAuB,QAA6B;EACjE,IAAI,EAAQ,QAAQ;GAClB,IAAI,IAAI,EAAQ,CAAC,KAAK,YAAY,EAAE,OAAO,OAAO,SAAS,EAAE,IAAI,IAAI;GACrE,EAAQ,OAAO,QAAQ,EACrB,YAAY;IACV,OAAO;IACP,QAAQ;GACV,EACF;EACF;EAEA,OADA,EAAQ,CAAC,KAAK,YAAY,OAAO,OAAO,EAAQ,SAAS,CAAC,GAAG,EAAQ,iBAAiB,EAAG,oBAClF;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC;IACpC,OAAO,KAAK,MAAM,OAAO,EAAE,SAAS,IAAI;GAC1C;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG,GAAG;IACxC,IACI,GACA,KAAc,EAAE,EAAE,SAAS,EAAA,EAAyB,KAAA,EAA2B,KAAK;IACxF,IAAI,EAAE,MAAM,KAAK,MAAM,IAAI;KACzB,KAAK,MAAM,EAAG;KACd,IAAI,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC;KAC3C,IAAI,EAAG,mBAAmB,GAAG,EAAE,IAAI,EAAE,EAAE;IACzC,OAAO,KAAK,MAAM,EAAG,sBAAsB,IAAI,EAAG,mBAAmB,KAAK,SAAS,EAAE,EAAE;IACvF,EAAE,wBAAwB,KAAK,iBAAiB,EAAE,QAAQ,KAAK,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;GACtF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAC7G,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,KAAK,IAAI,KAAK,oBAAoB,QAAQ,EAAE,SAAS;SACnD,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK;QACH,IAAI,EAAE,KAAK,QAAQ,EAAE,KAAK;SACxB,EAAW,OAAO;SAClB;QACF;QAEA,AADA,KAAK,iBAAiB,GAAG,GAAG,CAAC,GAC7B,EAAW,OAAO;QAClB;OACF,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAGH,AAFA,KAAK,MAAM,EAAG,sBACd,IAAI,KAAK,eAAe,KAAK,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,GAC1D,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO,GAAO;KAC3C,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG;KAC1G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM;OAChB,KAAK,GACH,OAAO,EAAW,OAAO,UAAU,EACjC,OAAO,EAAE,KAAK,IAAI,SAAU,GAAG;QAC7B,OAAO,EAAE,MAAM;SACb,KAAK,EAAE;SACP,MAAM;QACR,IAAI;SACF,KAAK,GAAU,KAAW,EAAE;SAC5B,MAAM;QACR;OACF,CAAC,EACH,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,CAAS;IACd,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EASJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA4B,GAAG,GAAG;GACvC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,MAAM;EACvD;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAA4B,GAAG,GAAG,GAAG;GAC1C,IAAI,IAAI,IAAI,SAAS;GACrB,OAAO,EAAE,OAAO,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,QAAQ,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;IACzF,EAAE,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC;GAC1B,CAAC,GAAG;EACN;CACF,CAAC,CAAC;AACJ,EAAE,CAAC;AACH,GAAG,uBAAuB,gDAAgD,GAAG,uBAAuB,+CAA+C,GAAG,iBAAiB;AACvK,IAAI,KAAK,IACL,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAa,GACT,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAI,EAAE;EACR,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,EAAE,4BAA4B;GAAG,EAAE;GAAc;EAAC,CAAC,GAAG,EAAQ,2BAA2B,kBAAkB,EAAQ,aAAa,gDAAgD,EAAQ,MAAM,8CAA8C,EAAQ,yBAAyB,CAAC,WAAW,GAAG,EAAQ,sBAAsB,CAAC,GAAG,EAAQ,iBAAiB,EAAG,sBAAsB,8BAA8B;EACjb,IAAI,IAAS,EAAE,QAA6B;EAC5C,IAAI,EAAQ,CAAC,KAAK,UAAU;GAC1B,EAAE,kBAAkB,EAAQ,iBAAiB,EAAG,sBAAsB,EAAE,aAAa;GACrF,IACE,KADqB,EAAE,kBAAuC,QAA6B,KAAA,CAChF;GACb,MAAM,EAAQ,mBAAmB,IAAI,EAAQ,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC;EAC/F;EAEA,OADuB,EAAQ,gBAAgF,EAAQ,cAAc,MAAiB,IAAI,EAAQ,QAAA,CAAS,UAAoD,EAAE,QAAQ,WAClO;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,OAAO,EAAE,eAAe,OAAO,EAAE;GACnC;EACF;EAAG;GACD,KAAK;GACL,OAEA,SAAwB,GAAG,GAAG;IAC5B,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,GAAG,0BAA0B,GAAG,KAAK,6BAA6B,KAAK,6BAA6B,KAAK,eAAe,QAAQ,SAAS,EAAE,CAAC,CAAC,IAAI,SAAU,GAAG;KAChK,OAAO;MACL,SAAS,EAAG,WAAW,CAAC;MACxB,MAAM,EAAE,SAAS,EAAE,YAAY,SAAS;KAC1C;IACF,CAAC;IACH,OAAO,EAAE,KAAK,SAAU,GAAG;KACzB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS;IACrC,CAAC,MAAA,AAA4F,EAAE,eAAa,MAAM,EAAE,WAAW,CAAC,KAAK,cAAc,CAAC,CAAC,OAAO,EAAmB,CAAC,CAAC,GAAG;GACtL;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG;KAC1G,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAW,OAAO;SAClB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GAAG,IAAI,KAAK,QACnD,MAAM,EAAQ,CAAC,KAAK,YAAY,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,CAAC,GAAG,EAAE,QAAQ,MAAM,GAAG,CAAC,KAAK,EAAE,QAAQ,MAAM,GAAG,CAAC;OAC5H,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAU,GAAG,GAAG,GAAG;KAChH,IAAO,GAAM;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAoB,GAAY;MAChE,SAAU,QAAQ,EAAW,OAAO,EAAW,MAArC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,OAAO;SACZ,EAAW,OAAO;SAClB;QACF;QACA,MAAM,EAAE,MAAM;OAChB,KAAK,GACH,OAAO,EAAW,OAAO,WAAW,IAAS,EAAE,UAA8B,OAAO,QAAQ,EAAE,QAAQ,KAAK,oBAAoB,EAAE,QAAQ,IAAI,GAAG,CAAC,KAAK,IAAS,EAAE,UAA8B,OAAO,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,QAAQ,aAAa,KAAK,YAAY,EAAE,QAAQ,EAAE,CAAC,SAAS,GAAG,CAAC,IAAI,EACzS,MAAM,EAAE,QAAQ,EAAE,CAAC,QAAQ,QAC7B,IAAI,EACF,MAAM,GACR,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAW,KAAK;MAC3B;KACF,GAAG,GAAW,IAAI;IACpB,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO,GAAO,GAAO;KAC9C,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG,GAAG;KACjH,IAAI,IAAU,MACV,GAAG,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QAEH,IADA,IAAI,EAAE,OAAO,IAAI,EAAE,eACb,MAAM,cAAe;SACzB,EAAY,OAAO;SACnB;QACF;QAKA,OAJA,KAAK,sBAAsB,CAAC,GAC5B,IAAI,EACF,YAAY,KAAK,iBACnB,GACO,EAAY,OAAO,WAAW,KAAK,mBAAmB,KAAK,GAAG,KAAK,YAAY,GAAG,GAAG,CAAC,EAAE;OACjG,KAAK,GACH,KAAK,QAAQ,EAAE,eAAe,KAAK,mBAAmB,EAAE,WAAW,QAAQ,SAAU,GAAG,GAAG;QACzF,EAAQ,qBAAqB,EAAQ,iBAAiB,EAAE,CAAC,SAAY,aAAa,EAAE,SAAY;OAClG,CAAC,IAAI,KAAK,mBAAmB,EAAE;OACjC,KAAK,GACH,OAAO,EAAY,OAAO,UAAU,EAClC,MAAO,GAAuB,WAAY,GAC5C,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAoB,GAAO,GAAO,GAAO;KAChD,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAgB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG,GAAG;KAC1G,IAAO,GAAM,GAAM,GAAG,GAAG,GAAG,GAAG;KAC/B,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QACH,IAAO,EAAE,cAAe,KAAM,KAAM,KAAK,kBAAmB;SAC1D,EAAY,OAAO;SACnB;QACF;QACA,MAAM,MAAM,mIAAmI;OACjJ,KAAK,GASH,OARA,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAChC,IAAI,EAAE,WAAW,IAAI,SAAU,GAAG;QAChC,OAAO;SACL,MAAM,EAAE,SAAY;SACpB,WAAW,EAAE,SAAY;QAC3B;OACF,CAAC,GACD,EAAY,OAAO,GACP,KAAK,kBAAuC,KAAK,MAAM,CAAC;OACtE,KAAK;QAEH,IADA,IAAI,EAAY,MACZ,CAAC,EAAE,MAAM;SACX,EAAY,OAAO;SACnB;QACF;QAKA,OAJA,IAAI,EACF,MAAM,EAAE,KACV,GACA,EAAY,OAAO,KACN,IAAI,KAAK,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAC;OACrF,KAAK;QAEH,IADA,EAAY,KAAK,EAAY,MACzB,EAAY,IAAI;SAClB,EAAY,OAAO;SACnB;QACF;QACA,EAAY,KAAK;OACnB,KAAK,IACH,OAAO,EAAY,OAAO,UAAU,EAAY,EAAE;OACpD,KAAK;QACH,IAAM,EAAE,SAAS,KAAK;SACpB,YAAY,EAAE;SACd,MAAM;SACN,SAAS;QACX,CAAC,GAAG,QAAM,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,SAAU,GAAG;SAC3C,OAAO,OAAO,KAAK;QACrB,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS;SAC5B,EAAY,OAAO;SACnB;QACF;QAaA,OAZA,EAAE,QAAQ,SAAU,GAAG,GAAG;SACxB,IACI,IAAS,EAAE,aAAiC;SAChD,GAAe,SAAS,KAAK;UAC3B,MAAM;UACN,cAAc,GAAuB;UACrC,MAAM,GAAuB,SAAY;UACzC,SAAS,EAAE;SACb,CAAC;QACH,CAAC,GAAG,OAAO,EAAE,OAAO,OAAO,EAAE,aAAa,OAAO,EAAE,QACnD,EAAY,OAAO,IACnB,EAAY,OAAO,IACZ,IAAuB,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;SACjD,OAAO,EAAE,sBAAsB,CAAC;QAClC,CAAC;OACH,KAAK,IAGH,OAFA,IAAK,EAAY,MACjB,EAAY,OAAO,KACN,IAAI,KAAK,SAAA,CAAU,qBAA0C,KAAK,GAAG,CAAE;OACtF,KAAK;QAEH,IADA,EAAY,KAAK,EAAY,MACzB,EAAY,IAAI;SAClB,EAAY,OAAO;SACnB;QACF;QACA,EAAY,KAAK;OACnB,KAAK;QAEH,IADA,IAAK,EAAY,IACb,CAAC,EAAG,OAAO;SACb,EAAY,OAAO;SACnB;QACF;QACA,MAAM,EAAG,MAAM;OACjB,KAAK,IACH,OAAO,EAAY,OAAO,UAAU,EAClC,MAAM,EAAG,QAAQ,EAAE,CAAC,QAAQ,WAAW,GACzC,CAAC;OACH,KAAK,IAGH,MAFA,EAAY,OAAO,IACnB,EAAY,KAAK,EAAY,MAAS,EAAE,GAClC,KAAK,sBAAsB,CAAC,GAAG,EAAY;OACnD,KAAK,IACH,MAAM,MAAM,kMAAkM;OAChN,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,SAAS,EAAY,GAAO,GAAO,GAAO;KACxC,OAAO,EAAc,MAAM,MAAM,SAAS;IAC5C;IACA,OAAO;GACT,EAAE;EACJ;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA+B,GAAG;GACvC,OAAO;IACL,MAAM;IACN,SAAS;GACX;EACF;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAoB,GAAG;GAC5B,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,GAAG;IACjC,IAAI,IAAI,EAAE,MAAM,IAAI,SAAU,GAAG;KAC/B,OAAO;MACL,MAAM;MACN,WAAW,EACT,KAAK,EAAE,IACT;KACF;IACF,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,KAAK,KAAK,CAAC,CAAC,SAAS,KAAK,EAAE,QAAQ;KACrD,MAAM;KACN,MAAM,EAAE;IACV,CAAC,GAAG;GACN;GACA,OAAO,EAAE;EACX;CACF,CAAC,CAAC;AACJ,EAAE,CAAC,GACC,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,GACnD,IAAS,EAAE,QAA6B,MACxC,IAAI,EAAE;EAER,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG;GAAiC;GAAoB;GAAG;EAAC,CAAC,GAAG,EAAQ,CAAC,KAAK,YAAY,OAAO,OAAO,EAAQ,SAAS,CAAC,GAA0B,EAAQ,gBAAgF,EAAQ,cAAc,KAC3R;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,EAAE,OAAO,SAAU,GAAG;KACxB,OAAO,EAAE;IACX,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,SAAU,GAAG;KAChG,OAAO;MACL,MAAM,EAAE;MACR,WAAW,EAAE,SAAS,OAAO,YAAY;KAC3C;IACF,CAAC,GAAG;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;KAC3G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAY,OAAO;SACnB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KAC3G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAY,OAAO;SACnB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAY,OAAO,UAAU,EAClC,MAAM,EAAE,KACV,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAsB,GAAG;IAC9B,OAAO;KACL,eAAe,UAAiB;KAChC,gBAAgB;KAChB,QAAQ;IACV;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG,GAAG;IACnD,IAAI;IACJ,CAAC,IAAI,EAAE,YAAY,QAAQ,EAAE,SAAS,uDAAuD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW;GACzH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,OAAO;KACL,KAAK;KACL,QAAQ;KACR,0BAA0B,EAAG;IAC/B;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IACI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAI,GACA,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;EAEvD,OADA,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,GAAG,4BAA4B;GAAG,GAAG;GAAc;EAAC,CAAC,GAAG,EAAQ,2BAA2B,mBAAmB,EAAQ,aAAa,wCAAwC,EAAQ,MAAM,8CAA8C,EAAQ,yBAAyB,CAAC,SAAS,GAAG,MAAM,EAAQ,YAAY,CAAC,GAAG,OAAO,OAAO,EAAQ,SAAS,CAAC,IAA2B,EAAQ,gBAAgF,EAAQ,cAAc,MAAiB,IAAI,EAAQ,QAAA,CAAS,UAAoD,EAAE,QAAQ,oBAC5lB;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,OAAO,EAAE;GACX;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,CAAC,CAAC,GAClC,IAAI,EAAE,OAAO,SAAU,GAAG;KACxB,OAAO,EAAE;IACX,CAAC;IACH,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,SAAU,GAAG;KAC5D,OAAO;MACL,MAAM,EAAE;MACR,WAAW,EAAE,SAAS,OAAO,WAAW;KAC1C;IACF,CAAC,GAAG;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;KAC3G,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QACH,IAAI,KAAK,iBAAiB;SACxB,EAAY,OAAO;SACnB;QACF;QACA,MAAU,MAAM,uCAAuC;OACzD,KAAK,GAEH,AADA,IAAI,KAAK,eAAe,KAAK,SAAS,CAAC,GACvC,EAAE,QAAQ,MAAM,GAAG,CAAC;OACtB,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAe,GAAO,GAAO;KACpC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAuB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KAC3G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,SAAS;SACd,EAAY,OAAO;SACnB;QACF;QACA,MAAM,EAAE;OACV,KAAK,GACH,OAAO,EAAY,OAAO,UAAU,EAClC,MAAM,EAAE,KACV,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO;KAChC,OAAO,EAAqB,MAAM,MAAM,SAAS;IACnD;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,CAAC,GACC,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAEA,SAAgB,GAAG;GACjB,IAAI,IAAI,EAAE,kBACR,IAAI,EAAE,SACN,IAAI,EAAE;GAER,IADM,EAAE,UACD,OAAO,IAAI,GAAG,CAAC;GACtB,IAAI,GAAG;IACL,IAAI,EAAE,QAAQ,OAAO,EAAE,OAAO,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,eAAe,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,eAAe,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,YAAY,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;IACpK,IAAI,EAAE,YAAY,OAAO,IAAI,GAAG,CAAC;IACjC,IAAI,EAAE,QAAQ,OAAO,EAAE,OAAO,iBAAiB,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,gBAAgB,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;IACxG,IAAI,EAAE,aAAa,OAAO,EAAE,YAAY,iBAAiB,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,gBAAgB,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,cAAc,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,iBAAiB,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,yBAAyB,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,sBAAsB,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,sBAAsB,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;IAClY,IAAI,EAAE,OAAO;KACX,IAAI,EAAE,MAAM,cAAc,OAAO,IAAI,GAAG,CAAC;KACzC,IAAI,EAAE,MAAM,cAAc,OAAO,IAAI,GAAG,CAAC;KACzC,IAAI,EAAE,MAAM,eAAe,OAAO,IAAI,GAAG,CAAC;KAC1C,IAAI,EAAE,MAAM,aAAa,OAAO,IAAI,GAAG,CAAC;IAC1C;IACA,IAAI,EAAE,aAAa,OAAO,EAAE,YAAY,eAAe,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,sBAAsB,IAAI,GAAG,CAAC,IAAI,EAAE,YAAY,sBAAsB,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;IAC3K,IAAI,EAAE,SAAS,OAAO,IAAI,GAAG,CAAC;GAChC;GACA,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC;EACvE;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,gBAAa,SAAS,IAAK;CAC/C,EAAgB,MAAM,CAAE;AAC1B,CAAC;AACD,GAAG,YAAY;CACb,QAAQ,SAAgB,GAAG;EACzB,OAAO;CACT;CACA,QAAQ,SAAgB,GAAG;EACzB,OAAO,WAAW,CAAC;CACrB;CACA,SAAW,SAAiB,GAAG;EAC7B,OAAO,MAAM;CACf;CACA,QAAQ,SAAgB,GAAG;EACzB,OAAO,KAAK,MAAM,CAAC;CACrB;CACA,OAAO,SAAe,GAAG;EACvB,OAAO,KAAK,MAAM,CAAC;CACrB;CACA,UAAY,SAAmB,GAAG;EAChC,OAAW,SAAS,UAAiB,GAAE,CAAC,CAAC;CAC3C;AACF;AACA,IAAI,KAAK;AACT,SAAS,EAAE,GAAG;CACZ,OAAO,SAAU,GAAG,GAAG;EACrB,OAAO,eAAe,GAAG,GAAG,CAAC,CAAC;EAC9B,IAAI,IAAI,EAAE,aACR,IAAI,EAAE,kBAAkB;EAC1B,EAAE,aAAa,KAAK,GAAG,UAAU,IAAI,EAAE,sBAAsB,KAAK;CACpE;AACF;AACA,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAoB,GAAG;GAC5B,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,OAAO,EAAE,MAAM,QAAQ,GAAG,SAAS,KAAK,YAAY,CAAC,GAAG,IAAW,OAAO,iBAAiB,CAAC,CAAC,CAAC,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,SAAU,GAAG;IACjI,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,GAAG,GAAG;GACjD,CAAC,CAAC,CAAC,KAAK,EAAE;EACZ;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAa,GAAG,GAAG;GACxB,IAAO;GACP,KAAK,IAAS,GAAuB,SAA8B,WAAW,QAAQ,EAAE,OAAO;IAC7F,IAAI,IAAI,EAAG,WAAqB,GAAuB,SAA8B,QAA6B,KAAK;IACvH,EAAE,MAAM,YAAY,wBAAwB,CAAC,GAAG,EAAE,MAAM,YAAY,6BAA6B,GAAU,KAAQ;GACrH,OAAO,EAAE,MAAM,YAAY,wBAAwB,SAAS,GAAG,EAAE,MAAM,YAAY,6BAA6B,WAAW;EAC7H;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG;EAEnB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,eAAe,CAAC,GAAG,KAAK,KAAK,cAAc,KAAK,0BAA0B,GAAG,CAAC,GAAG,KAAK,eAAe,CAAC,KAAK,MAAM,KAAK,cAAc,KAAK,yBAAyB,GAAG,CAAC,GAAG,KAAK,eAAe,CAAC;CACrM;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAmC,GAAG,GAAG;IAC9C,IAAI,IAAI,EAAG,iBAAiB,CAAC;IAC7B,OAAO,EAAE,MAAM,YAAY,WAAW,EAAE,MAAM,UAAU,UAAU,EAAE,YAAY,CAAC,GAAG;GACtF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG;IAC7C,IAAI,IAAI,EAAG,iBAAiB,CAAC;IAC7B,OAAO,EAAE,KAAK,wBAAwB,EAAE,YAAY,GAAG;GACzD;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgB;IACrB,KAAK,gBAAgB,KAAK,gBAAgB,KAAK,YAAY,MAAM,UAAU,QAAQ,KAAK,eAAe,CAAC;GAC1G;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmB;IACxB,CAAC,KAAK,gBAAgB,KAAK,gBAAgB,KAAK,YAAY,MAAM,UAAU,IAAI,KAAK,eAAe,CAAC;GACvG;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA0B,GAAG;GAClC,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,OAAO,EAAE,UAAU,IAAI,aAAa,GAAG,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG;EACpE;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG;EAEnB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,aAAa,CAAC,GAAG,KAAK,cAAc,CAAC,GAAG,KAAK,YAAY,GAAG,KAAK,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,KAAK,aAAa,EAAE,YAAY,GAAG,EAAE,eAAe,KAAK,iBAAiB,GAAG,EAAE,WAAW;CACxM;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;KAC7G,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAEH,OADA,EAAY,OAAO,GACZ,EAAE,CAAC;OACZ,KAAK,GAQH,AAPA,IAAI,EAAY,MAChB,KAAK,cAAc,CAAC,EAAE,KAAK,SAAU,GAAG;QACtC,OAAO,CAAC;OACV,CAAC,GACD,IAAI,EAAE,OAAO,SAAU,GAAG;QACxB,OAAO,CAAC,CAAC;OACX,CAAC,GACD,KAAK,gBAAgB,GAAG,CAAC;OAC3B,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO,GAAO;KACxC,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,IAAI,IAAU;IAEd,KAAK,aAAa,CAAC;IACnB,IAAI,IAAS,KAAK,UAAU,mBAAmB,EAAA,EAAyB,gBACtE,IAAI,KAAK,UAAU,WAAW;IAChC,GAAe,QAAQ,CAAC,CAAC,IAAI,SAAU,GAAG;KACxC,IAAI,GAAG;MACL,IAAI,IAAI,EAAQ,UAAU,cAAc,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAC9E,YAAY,CAAC,EACf,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;MACV,OAAO,KAAK,EAAQ,UAAU,SAAS,QAAQ,CAAC,GAAG;KACrD;KAAO,EAAQ,cAAc,CAAC;IAChC,CAAC,CAAC,CAAC,OAAO,SAAU,GAAG;KACrB,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,SAAU,GAAG;KAChC,OAAO,EAAQ,UAAU,iBAAiB,GAAG,CAAC,CAAC;IACjD,CAAC,GAAG,MAAM,KAAK,UAAU,WAAW,YAAY,IAAI,EAAE,YAAY,KAAK,aAAa,CAAC;GACvF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;KAC3G,IAAI,IAAU;KACd,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GACH,KAAK,UAAU,WAAW,WAAwB,gBAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAa;QACjI,IAAI;QACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;SAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;UACR,KAAK;WACH,IAAO,EAAQ,cAAe,EAAQ,eAAe,EAAQ,UAAU,WAAW,cAAc,GAAI;YAClG,EAAY,OAAO;YACnB;WACF;WAEA,OADA,EAAY,OAAO,GACZ,EAAE,CAAC;UACZ,KAAK,GAEH,AADA,IAAI,EAAY,MAChB,EAAQ,qBAAqB,CAAC;UAChC,KAAK;UACL,KAAK,OACH,OAAO,EAAY,KAAK;SAC5B;QACF,GAAG,CAAU;OACf,CAAC,CAAC,GAAG,EAAE,WAAW,EAAG,eAAe,CAAC,KAAK,KAAK,mBAAmB,GAAG,CAAC;OACxE,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAiB,GAAO,GAAO;KACtC,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,IAAI,IAAU,MACV,IAAI,EAAE,WAAW,EAAG,eAAe,CAAC,KAAK;IAC7C,MAAM,EAAE,QAAQ,SAAU,GAAG;KAC3B,EAAG,mBAAmB,CAAC,GAAG,EAAQ,UAAU,cAAc,GAAG,CAAC,CAAC;IACjE,CAAC,GAAG,WAAW,WAAY;KACzB,OAAO,EAAE,eAAe,EAAQ,UAAU,UAAU;IACtD,GAAG,CAAC;GACN;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAgB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KACpG,IAAI,IAAU;KACd,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAEH,OADA,EAAY,OAAO,GACZ,EAAE;OACX,KAAK,GAIH,AAHA,EAAY,KAAK,QAAQ,SAAU,GAAG;QACpC,OAAO,EAAQ,UAAU,cAAc,GAAG,CAAC,CAAC;OAC9C,CAAC,GACD,WAAW,WAAY;QACrB,OAAO,EAAE,eAAe,EAAQ,UAAU,UAAU;OACtD,GAAG,CAAC;OACN,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAa,GAAO;KAC3B,OAAO,EAAc,MAAM,MAAM,SAAS;IAC5C;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAiB,GAAG,GAAG;GAE5B,IAAI,CAAC,EAAE,oBAAoB,CAAC,EAAE,WAAW,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,OAAO;GACxE,IAAI,EAAE,kBAAkB;IACtB,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO;IACpC,IAAI,IAAS,EAAE,iBAAiB,QAA6B;IAC7D,IAAI,EAAQ,CAAC,KAAK,YAAY,EAAE,SAAS,CAAC,EAAE,kBAAkB,OAAO;GACvE,OAAO,IAAI,EAAE,WAAW,CAAC,EAAE,QAAQ,OAAO,CAAC,EAAE,QAAQ,SAAS,OAAO,EAAE,OAAO,EAAE,QAAQ,SAAS,OAAO,qNAAqN;GAC7T,OAAO;EACT;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAK,+3DACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG;IACnC,IAAI,IAAI,IAAI,MAAM;IAClB,OAAO,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,sBAAsB,EAAE,KAAK,CAAC,GAAG,EAAE,eAAe,SAAS,GAAG,EAAE,KAAK,EAAE,IAAI;GAC1G;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG,GAAG,GAAG;KACnH,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAEH,AADA,IAAI,EAAG,YAAY,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,EAAE,wBAAwB,IAAI,CAAC,GAC3E,EAAE,cAAc,YAAY,CAAC,GAAG,EAAE,cAAc,UAAU,IAAI,eAAe,GAAG,EAAE,WAAW,GAAG,GAAG,SAAS,GAAG,CAAC;OAClH,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO,GAAO,GAAO,GAAO;KACtD,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAI,IAAI,SAAS,cAAc,OAAO;IACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,IAAI,cAAc,GAAG,EAAE,WAAW,CAAC,GAAG,GAAG,cAAc,EAAE,UAAU,IAAI,qBAAqB,GAAG,EAAE,UAAU,IAAI,MAAM,EAAE,YAAY,8BAA8B,0BAA0B,IAAI;GACnO;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG,GAAG;IAC7C,IAAI,IAAI,EAAG,mBAAmB,GAAG,CAAC,GAChC,IAAI,EAAE,mCAAmC,IAAI,GAAG,CAAC;IACnD,EAAE,cAAc,YAAY,CAAC,GAAG,EAAE,cAAc,UAAU,IAAI,eAAe,GAAG,EAAE,WAAW,GAAG,GAAG,SAAS,GAAG,CAAC;GAClH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,2BAA2B;IAC3C,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,iCAAiC;IACjD,IAAI,IAAI,EAAG,iBAAiB,EAAE;IAC9B,EAAE,UAAU,IAAI,uBAAuB,GAAG,EAAE,YAAY,CAAC;IACzD,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,uBAAuB,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,eAAe,OAAO,GAAG,EAAE,KAAK,EAAE,WAAW;GACrL;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG,GAAG,GAAG;IAC/C,IAAI,IAAI,EAAE,mCAAmC,IAAI,GAAG,CAAC,GACnD,IAAI,EAAG,cAAc,CAAC;IACxB,EAAE,cAAc,UAAU,IAAI,yBAAyB,GAAG,EAAE,cAAc,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,QAAQ,GAAG,CAAC;GAC3H;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG,GAAG;IACtC,EAAE,QAAQ,SAAU,GAAG;KACrB,EAAE,QAAQ,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,EAAG,mBAAmB,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,EAAG,mBAAmB,GAAG,GAAG,GAAG,CAAC,IAAI,EAAG,qBAAqB,GAAG,GAAG,GAAG,CAAC;IACrL,CAAC;GACH;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG,GAAG,GAAG;EACnB,IAAI;EAGJ,AAFA,EAAgB,MAAM,CAAE,GAExB,IAAU,EAAW,MAAM,GAAI,CAAC,CAAC,CAAC;EAClC,IAAI,IAAI,EAAE,wBACR,IAAI,EAAE,kBACN,IAAI,EAAE;EAUR,OATA,EAAQ,yBAA8B,EAAE,eAAoC,WAAW,EAAQ,mBAAmB,GAAG,gBAAgB,KAAK,GAAS,CAAC,GAAG,EAAQ,WAAW,GAAG,QAAQ,KAAK,GAAS,CAAC,GAAG,EAAQ,yBAAyB,EAAG,yBAAyB,GAAG,CAAC,GAAG,EAAQ,0BAA0B,GAAG,EAAQ,wBAAwB,GAAG,CAAC,KAAK,EAAQ,mBAAmB,GAAG,GAAG,EAAE,eAAe,GAAG,EAAQ,uBAAuB,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,GAAS,CAAC,GAAG,EAAQ,+BAAoC,EAAE,eAAoC,6BAA6B,EAAE,cAAc,WAAY;GACplB,OAAO,KAAK,MAAM,KAAK,UAAU,EAAQ,QAAQ,CAAC;EACpD,GAAG,EAAE,gBAAgB,EAAQ,cAAc,KAAK,GAAS,CAAC,GAAG,EAAE,kBAAkB,EAAQ,oBAAoB,KAAK,CAAO,GAAG,EAAE,iBAAiB,EAAE,eAAe,KAAK,GAAS,EAAQ,UAAU,GAAG,EAAE,aAAa,SAAU,GAAG,GAAG;GAChO,EAAQ,cAAc,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAC5D,YAAY,CAAC,CAAC,EAChB,CAAC,GAAG,CAAC,CAAC;EACR,GAAG,EAAE,WAAW,KAAK,EAAE,cAAc,CAAO,GAAG,KAAK,EAAQ,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG,cAAc,EAAE,cAAc,SAAU,GAAG;GAC1I,EAAQ,eAAe;EACzB,CAAC,GACM;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,EAAQ,CAAC,KAAK,aAAa,EAAE,aAAa,KAAK,qBAAqB,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,WAAc,KAAK,mBAAmB,IAAI,EAAE,GAAG,EAAE,cAAc,WAAW,KAAK,mBAAmB,WAAW,EAAE,GAAG,EAAE,cAAc,gBAAgB,KAAK,mBAAmB,gBAAgB,EAAE,IAAI,EAAE,wBAAwB,KAAK,kBAAkB;GACxW;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,IAAI,IAAI,GAAG,QAAQ,GAAG,CAAC;IACvB,IAAI,GAAG;KACL,IAAI,IAAI,KAAK,iCAAiC,GAAG,EAAE,OAAO;KAC1D,KAAK,kBAAkB,GAAG,EAAE,SAAS,CAAC,CAAC;IACzC;IACA,OAAO,CAAC,CAAC;GACX;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG;IAG3C,KAAK,QAAQ,EAAE,eAAe,KAAK,gBAAgB,EAAE;IACrD,IAAI,IAAI,KAAK;IACb,IAAI,KAAK,QAAQ,EAAE,WAAW,MAAA,AAAsD,MAAI,EAAE,gBAAgB,CAAC,IAAI,GAAG;KAChH,IAAI;KACJ,KAAK,QAAQ,EAAE,OAAO,IAAI,KAAK,iCAAiC,EAAE,MAAM,EAAE,OAAO,IAAI,KAAK,QAAQ,EAAE,SAAS,IAAI,GAAG,IAAI,MAAM,EAAE,MAAM,EAAE,SAAS,KAAK,kBAAkB,IAAI,MAAM,KAAK,kBAAkB,GAAG,EAAE,SAAS,CAAC,GAAQ,KAAK,eAAoC,KAAK,GAAG,EAAE,eAAe,UAAU,IAAI,iBAAiB;IACnU;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAqC;IAC1C,IAAI,IAAI,KAAK,mBAAmB;IAChC,EAAE,eAAe,UAAU,SAAS,iBAAiB,MAAM,EAAE,eAAe,OAAO,GAAG,KAAK,mBAAmB,MAAM;GACtH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;IACvE,OAAO,EAAE,QAAQ,KAAK,mBAAmB,WAAW,EAAE,KAAK,IAAI,KAAK,cAAc,GAAG,GAAG,CAAC;GAC3F;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE,IAAI,EAAG,qBAAqB,CAAC,GAC/B,IAAI,EACF,QAAQ,EAAE,UACZ;IACF,IAAI,CAAC,EAAE,cAAc,EAAE,SAAS,KAAK,KAAK,EAAE,SAAS,SAAS,KAAK,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,gBAAgB,EAAE,SAAS,EAAE,aAAa,GAAG,MAAM,EAAE,MAAM,KAAK,YAAY,IAAI,EAAE,SAAS,MAAM,QAAQ,EAAE,KAAK,KAAK,GAAG,YAAY,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,SAAS,KAAK,KAAK,EAAE,SAAS,MAAM;KAC1T,IAAI,IAAI,GAAG,IAAI,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,oBAAoB,GAAG,CAAC;KAClE,GAAG,mBAAmB,CAAC,KAAK,OAAO,EAAE;IACvC;IACA,OAAO,KAAK,sBAAsB,CAAC,KAAK,CAAC,KAAK,KAAK,qBAAqB,GAAG,EAAE,WAAW,EAAE,YAAY,CAAC,GAAG;GAC5G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS;GACzD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK,CAAC,GACzE,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;IACvE,KAAK,KAAK,SAAS,KAAK,CAAC,GAAG,KAAK,KAAK,iBAAiB,GAAG,CAAC;GAC7D;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,IAAI,IAAI,KAAK,mBAAmB,KAAK,mBAAmB,SAAS,IAC/D,IAAI,GAAuB;IAC7B,CAAC,KAAK,QAAQ,EAAE,UAAU,SAAS,EAAG,aAAa,KAAK,EAAE,gBAAgB,MAAM,EAAG,mBAAmB,CAAC,MAAM,KAAK,kBAAkB;GACtI;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAgB;IAChB,KAAK,qBAAqB;IAC1B,IAAI,IAAI,EAAG,mBAAmB,GAC5B,IAAI,EAAE,gBACN,IAAI,EAAE;IACR,EAAE,UAAU,IAAI,oBAAoB;IACpC,IAAI,IAAI,KAAK,oBAAoB,CAAC,KAAW,KAAK,yBAA6C,MAAa,KAAK,wBAA6C,WAAe;IAC7K,KAAK,WAAW,GAAG,CAAC;IACpB,IAAI,IAAI,GAAE,8BAA8B,CAAC,YAAY,YAAY,GAAQ,KAAK,eAAoC,OAAU;IAC5H,GAAE,4BAA4B,GAAG,CAAC,GAAG,CAAC,GAAG,GAAE,4BAA4B,GAAG,CAAC,GAAQ,KAAK,eAAoC,KAAK,GAAG,KAAK,WAAW,YAAY,CAAC,GAAG,EAAE,eAAe,KAAK,UAAU,GAAG,KAAK,gBAAgB,GAAG,MAAM,GAAG,KAAK,YAAY,IAAI,IAAI,KAAK,aAAa,QAAQ,EAAE,KAAK,MAAM,CAAC;GAC3S;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,IAAI,GAEF,KAAK,IADD,IAAI,EAAG,qBAAqB,CAAC,GACxB,IAAO,GAAG,IAAO,EAAE,QAAQ,KAAQ,GAAG;KAC7C,IAAI,IAAI,EAAE;KACV,IAAI,OAAO,KAAK,UAAU;MACxB,IAAI,KAAK,8BAA8B,OAAO;MAC9C,IAAI,KAAK,yBAAyB;OAChC,IAAI,IAAI,EAAG,4BAA4B,KAAK,yBAAyB,CAAC;OACtE,IAAI,GAAG,OAAO;MAChB;KACF;IACF;GAEJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuB;IAC5B,KAAK,mBAAmB,KAAK,EAAE,sBAAsB,KAAK,UAAU,CAAC,CAAC,OAAO;GAC/E;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA6B;IAE7B,SAAK,wBACV;SAAI,IAAI,KAAK,sBAAsB,IAAI,EAAE,OAAO,GAC9C,IAAI,EAAE,gBACN,IAAI,EAAE;KACR,EAAE,UAAU,IAAI,sBAAsB;KACtC,IAAI,IAAI,SAAS,cAAc,KAAK;KACpC,EAAE,UAAU,IAAI,eAAe,GAAG,EAAE,YAAY,CAAC,GAAG,KAAK,kBAAkB,GAAG,EAAE,SAAS,CAAC,GAAQ,KAAK,eAAoC,OAAO,GAAG,GAAG,IAAI,GAAG,KAAK,aAAa,GAAG,KAAK,WAAW,YAAY,CAAC,GAAG,EAAE,eAAe,KAAK,UAAU;IAH5O;GAIV;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAC1C,CAAC,KAAK,OAAO,KAAK,cAAc,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,YAAY,gBAAgB,GAAG,MAAM,MAAM,KAAK,YAAY,WAAW,GAAG,KAAK,WAAW,YAAY,KAAK,YAAY,WAAW;GAC1L;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAoB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KACxG,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GACH,OAAO,EAAY,OAAO,UAAU,QAAQ,KAAK,KAAK,CAAC,EAAA,CAAG,IAAI,SAAU,GAAG;QACzE,OAAO,IAAI,QAAQ,SAAU,GAAG;SAC9B,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,OAExB,EAAE;UACA,MAFM,EAAE,KAAK,QAAQ,EAAE;UAGvB,MAAM;UACN,KAAK,EAAE;SACT,CAAC;cACI;UACL,IAAI,IAAM,IAAI,WAAW;UACzB,EAAI,cAAc,EAAE,IAAI,GAAG,EAAI,SAAS,WAAY;WAClD,EAAE;YACA,KAAK,EAAI;YACT,MAAM,EAAE;YACR,KAAK,EAAE;WACT,CAAC;UACH;SACF;QACF,CAAC;OACH,CAAC,CAAC,CAAC;OACL,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAiB,GAAO;KAC/B,OAAO,EAAkB,MAAM,MAAM,SAAS;IAChD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IAAI,GAAG,GACH,IAAI,CAAC;IACT,KAAK,mBAAmB,QAAQ,SAAU,GAAG;KAC3C,IAAI,IAAI,EAAE,cAAc;KACxB,EAAE,SAAS,sBAAsB,KAAK,EAAE,SAAS,EAAG,aAAa,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,OAAO;IAC3G,CAAC,GAAG,MAAM,KAAK,KAAK,WAAW,QAAQ,CAAC,CAAC,QAAQ,SAAU,GAAG;KAC5D,IACI,IAAS,EAAE,SAAS,EAAA,EAAyB,SAAS;KAC1D,KAAK,QAAQ,EAAE,UAAU,SAAS,oBAAoB,KAAK,EAAE,OAAO;IACtE,CAAC,GAAG,KAAK,qBAAqB,GAAG,MAAM,CAAC,OAAO,IAAI,KAAK,gBAAgB,QAAQ,EAAE,eAAe,KAAK,YAAY,QAAQ,GAAG,KAAK,uBAAuB,IAAI,KAAK,SAAS,OAAO,GAAG,KAAK,SAAS,MAAM,GAAG,KAAK,mBAAmB,OAAO,GAAG,KAAK,mBAAmB,MAAM,IAAI,IAAI,KAAK,qBAAqB,QAAQ,EAAE,KAAK,IAAI,GAAG,OAAO,EAAE;GAC/U;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG;IAE7C,OAAO,EAAE,YAAY,CAAC,IAA6B,EAAE,wBAA6F,CAAC;GACrJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqC,GAAG,GAAG;IAChD,KAAK,IAAI,IAAO,GAAG,IAAO,EAAE,QAAQ,KAAQ,GAAG,IAAI,EAAE,WAAW,EAAE,EAAK,GAAG,OAAO;GACnF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,OAAO,MAAM,QAAQ,CAAC,IAAI,IAAI,aAAa,QAAQ,CAAC,EAAE,OAAO,IAAI,OAAO,KAAK,WAAW,CAAC,CAAC,IAAI,EAAQ,CAAC,KAAK,YAAY,EAAE,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC;GACjJ;EACF;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,EAAE,cAAc,CAAC,SAAS,KAAK,EAAE,UAAU,IAAI,kCAAkC,GAAG,EAAE,eAAe,CAAC,SAAS,KAAK,EAAE,UAAU,IAAI,mCAAmC;GACzK;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG,GAAG;IAC9C,EAAE,gBAAgB,CAAC,WAAW,KAAK,EAAE,eAAe,CAAC,SAAS,KAAK,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,yCAAyC,GAAG,EAAE,UAAU,IAAI,EAAE,yCAAyC,KAAK,EAAE,eAAe,CAAC,WAAW,KAAK,EAAE,gBAAgB,CAAC,SAAS,MAAM,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,0CAA0C,GAAG,EAAE,UAAU,IAAI,EAAE,0CAA0C;GACxY;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG,GAAG;IAC3C,IAAI,EAAE,EAAE,cAAc,CAAC,SAAS,KAAK,EAAE,eAAe,CAAC,SAAS,IAAI;KAClE,IAAI,EAAE,gBAAgB,CAAC,WAAW,KAAK,EAAE,eAAe,CAAC,SAAS,GAAG,OAAO,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,mCAAmC,GAAG,EAAE,UAAU,IAAI,EAAE,mCAAmC,GAAG,EAAE,eAAe,CAAC,IAAI,SAAU,GAAG;MAChO,OAAO,EAAE,OAAO,WAAW,UAAU,IAAI,wBAAwB;KACnE,CAAC;KACD,IAAI,EAAE,eAAe,CAAC,WAAW,KAAK,EAAE,gBAAgB,CAAC,SAAS,GAAG,OAAO,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,oCAAoC,GAAG,EAAE,UAAU,IAAI,EAAE,oCAAoC,GAAG,EAAE,gBAAgB,CAAC,IAAI,SAAU,GAAG;MACnO,OAAO,EAAE,OAAO,WAAW,UAAU,IAAI,wBAAwB;KACnE,CAAC;IACH;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG,GAAG,GAAG;IAC9B,EAAI,oBAAoB,GAAG,GAAG,CAAC,KAAK,EAAE,uBAAuB,GAAG,GAAG,CAAC,GAAG,EAAE,mBAAmB,GAAG,CAAC;GAClG;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAE,sCAAsC,wCAAwC,GAAE,uCAAuC,yCAAyC,GAAE,4CAA4C,8CAA8C,GAAE,6CAA6C;AAC7S,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,WAAkB;IACvB,OAAO,MAAM,KAAK,EAChB,QAAQ,EACV,CAAC,CAAC,CAAC,IAAI,SAAU,GAAG,GAAG;KACrB,IAAI,IAAI,SAAS,cAAc,KAAK;KACpC,OAAO,EAAE,UAAU,IAAI,wBAAwB,IAAI,MAAM,KAAK,MAAM,MAAM,EAAE,UAAU,IAAI,wBAAwB,IAAI,MAAM,KAAK,MAAM,MAAM,EAAE,UAAU,IAAI,wBAAwB,GAAG;IAC1L,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG;IACxB,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,GAAG,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE;GACjH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,OAAO,MAAM,iBAAiB,IAAI,MAAM,gBAAgB,IAAI,MAAM,iBAAiB,IAAI;GACzF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,GAAG;IACjC,EAAE,UAAU,IAAI,CAAC;IACjB,IAAI,IAAI,EAAG,kBAAkB,CAAC;IAC9B,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,KAAK,EAAE,UAAU,IAAI,eAAe;GACjE;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAK;CAAC;CAAU;CAAQ;CAAU;CAAS;CAAc;CAAU;AAAY,GAC/E,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,aAAa,GAAG,EAAE,YAAY,GAAG;GAC1D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,OAAO,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAG,iBAAiB,CAAC;GAC3D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG;IACxC,IAAI,GAAM,GACN,IAAI,IAAuB;IAC/B,KAAK,IAAI,GAAuB,QAAQ,QAAQ,EAAE,SAAS,OAAO,EAAE,cAAmB,GAAuB,KAA0B,SAAS,CAAC,CAAC;IACnJ,KAAK,IAAI,GAAuB,SAAS,QAAQ,EAAE,SAAS,OAAO,EAAE,cAAmB,GAAuB,MAA2B,SAAS,CAAC,CAAC;GACvJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,KAAK,QAAQ,EAAE,UAAU,SAAS,aAAa,KAAK,EAAE,UAAU,IAAI,kBAAkB;GACxF;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAAoC,GAAG,GAAG,GAAG;IAClD,IAAI;IACJ,OAAO,MAAM,IAAI,EAAE,oBAAoB,GAAG,CAAC,IAAI,EAAE,eAAe,GAAG,CAAC,GAAG;GACzE;EAIF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG,GAAG;IAC7C,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IAChE;IACP,OAAO,KAAK,GAAG,IAAS,IAAuB,EAAA,EAAyB,QAAQ,QAAQ,EAAE,WAAW,IAAI,EAAE,2BAA2B,GAAG,GAAG,CAAC,KAAK;GACpJ;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAK,4eACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI,GAAG;IACP,EAAE,aAAa,EAAE,uBAAuB,GAAG,EAAE,SAAS,IAAI,IAAI,EAAE,QAAQ,QAAQ,EAAE,UAAU,EAAE,uBAAuB,EAAE,SAAS,IAAI,EAAE,IAAI,MAAM,IAAI,IAAI,EAAE,SAAS,QAAQ,EAAE,UAAU,EAAE,uBAAuB,EAAE,SAAS,IAAI,EAAE,KAAK,MAAM;GAC9O;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,GAAG;IACP,EAAE,aAAa,EAAE,4BAA4B,GAAG,EAAE,SAAS,IAAI,IAAI,EAAE,QAAQ,QAAQ,EAAE,UAAU,EAAE,4BAA4B,EAAE,SAAS,IAAI,EAAE,IAAI,MAAM,IAAI,IAAI,EAAE,SAAS,QAAQ,EAAE,UAAU,EAAE,4BAA4B,EAAE,SAAS,IAAI,EAAE,KAAK,MAAM;GAC7P;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG;IAEtC,OAAO,OAAO,EAAE,OAAY,EAAE,YAAgC,EAAE,GAAG,OAAO,OAAO,EAAE,SAAS,EAAE,CAAC,OAAiB,EAAE,KAA0B,SAA6B,EAAE,GAAG,OAAO,OAAO,EAAE,SAAS,EAAE,CAAC,OAAiB,EAAE,MAA2B,SAA6B,EAAE;GACzR;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG,GAAG;IAC9C,EAAG,eAAe,GAAG,GAAG,SAAS,GAAG,MAAM,cAAc,EAAG,eAAe,GAAG,GAAG,OAAO,GAAG,MAAM,WAAW,EAAG,eAAe,GAAG,GAAG,OAAO;GAC5I;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG;EAEtB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,cAAc,EACjB,OAAO,UACT,GAAG,KAAK,aAAa,GAAG,KAAK,gBAAgB,GAAG,KAAK,WAAW,GAAG,KAAK,aAAa;CACvF;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,KAAK,YAAY,QAAQ,WAAW,MAAM,GAAG,YAAY,KAAK,YAAY,CAAC,GAAG,GAAG,eAAe,KAAK,YAAY,GAAG,SAAS;GAC/H;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,KAAK,YAAY,QAAQ,SAAS,KAAK,GAAG,eAAe,KAAK,YAAY,GAAG,OAAO;GACtF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,KAAK,GAAG,eAAe,KAAK,YAAY,CAAC,GAAG,KAAK,iBAAiB,CAAC;GACrE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,KAAK,YAAY,QAAQ,SAAS,KAAK,GAAG,eAAe,KAAK,YAAY,GAAG,OAAO;GACtF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG;IAC3B,KAAK,WAAW,cAAc,KAAK,gBAAgB,KAAK,MAAM,CAAC,GAAG,KAAK,WAAW,YAAY,KAAK,cAAc,KAAK,MAAM,CAAC,GAAG,KAAK,WAAW,eAAe,KAAK,iBAAiB,KAAK,MAAM,CAAC,GAAG,KAAK,WAAW,eAAe,KAAK,iBAAiB,KAAK,MAAM,CAAC;GACvQ;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG;IACxC,IAAI,KAAK,eAAe,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,GAAG;KAC5D,IAAI,IAAO,EAAE,IACX,IAAI,KAAQ,KAAK,cAAc;KACjC,KAAK,GAAG,eAAe,KAAK,YAAY,CAAC;IAC3C;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACjC,SAAK,eACV;UAAK,KAAK,uBAAuB,CAAC;KAClC,IAAI,IAAI,KAAK,cAAc;KAC3B,KAAK,GAAG,uBAAuB,KAAK,YAAY,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,UAAU,CAAC;IAF1D;GAGpC;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAA6B,GAAG,GAAG;GACxC,IAAI,IAAI,IAAI,EAAE,SAAS,KAAK,EAAE,SAAS,EAAE,SAAS,SAAS;GAC3D,EAAG,iBAAiB,GAAG,GAAG,GAAG,CAAC,CAAC;EACjC;CAGF,GAAG;EACD,KAAK;EACL,OAAO,SAA0B,GAAG,GAAG,GAAG;GAExC,IAAI,IADI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,KAC3D,IAAI,EAAE,IAAI,gBAAgB;GACtC,KAAK,EAAE,cAAc,IAAI,WAAW,YAAY,CAAC,GAAG,EAAE,cAAc,IAAI,WAAW,YAAY,CAAC,MAAM,EAAE,cAAc,IAAI,WAAW,YAAY,CAAC,GAAG,EAAG,oBAAoB,GAAG,CAAC;EAClL;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG,GAAG,GAAG;IACxC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,iBAAiB,SAAS,WAAY;KACpD,EAAE,MAAM;IACV,CAAC,GAAG,EAAE,iBAAiB,cAAc,SAAU,GAAG;KAChD,EAAE,kBAAkB,EAAE;IACxB,CAAC,GAAG,EAAE,iBAAiB,cAAc,WAAY;KAC/C,EAAE,kBAAkB,KAAK;IAC3B,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,IAAI,uBAAuB,GAAG,EAAE,cAAc,KAAK,QAAQ;GAC3G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,IAAI,uBAAuB,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG;GAC5G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG,GAAG,GAAG;IACvC,IAAI,IAAI,EAAE,SAAS;IACnB,EAAE,UAAU,SAAS,aAAa,IAAI,EAAE,YAAY,EAAG,eAAe,EAAE,aAAa,GAAuB,IAAI,CAAC,KAAK,EAAE,YAAY,EAAG,eAAe,GAAG,GAAuB,aAAa,CAAC,GAAG,EAAE,YAAY,EAAG,eAAe,GAAG,GAAuB,IAAI,CAAC;GAClQ;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG,GAAG;IAClC,IACI,IAAI,EAAE,YACR,IAAI,EAAE,YACN,IAAI,SAAS,cAAc,KAAK;IAClC,OAAO,OAAO,EAAE,OAAY,GAAuB,MAA2B,OAAU,GAAG,EAAG,aAAa,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,UAAU,IAAI,kBAAkB;IAC1J,IAAI,IAAI,EAAE,gBAAiB,GAAuB,QAAS,CAAC,GAAG,EAC7D,iBAAiB,UACnB,GAAG,EACD,iBAAiB,UACnB,CAAC;IACD,OAAO,EAAG,cAAc,GAAG,GAAG,GAAG,CAAC,GAAG;GACvC;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG;EAChB,IAAI,IAAU;EAGd,AAFA,EAAgB,MAAM,CAAE,GAExB,KAAK,UAAU,CAAC,GAAG,KAAK,UAAU,GAAG,KAAK,aAAa,EAAG,cAAmB,KAAK,SAA8B,SAAS,GAAG,KAAK,MAAM,GAAG,WAAW,WAAY;GAC/J,OAAO,EAAQ,gBAAgB,CAAC;EAClC,CAAC;CACH;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,WAAgB;IACrB,KAAK,WAAW,MAAM,UAAU,SAAS,KAAK,UAAU,CAAC;GAC3D;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAiB;IACtB,AAAyD,KAAK,aAA7C,KAAK,WAAW,MAAM,UAAU,QAAuB,CAAC;GAC3E;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAkB;IACvB,KAAK,UAAU,KAAK,MAAM,IAAI,KAAK,KAAK;GAC1C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,IAAI,IAAI,GAAG,WAAW,MAAM,GAAG,KAAK,OAAO;IAC3C,KAAK,WAAW,YAAY,CAAC;GAC/B;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,KAAK,aAAa,KAAK,YAAY,KAAK,MAAM,CAAC,GAAG,OAAO,iBAAiB,SAAS,KAAK,UAAU,GAAG,KAAK,eAAe,KAAK,cAAc,KAAK,MAAM,CAAC,GAAG,OAAO,iBAAiB,WAAW,KAAK,YAAY;GACjN;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAEhC,CAAC,EAAE,eAAe,KAAK,aAAa,OAAO,oBAAoB,SAAS,KAAK,UAAU,IAAI,EAAE,kBAAwB,EAAE,OAAO,YAAiC,SAAS,MAAO,KAAK,MAAM;GAC5L;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IAAI,GAAG,GAAG;IACV,CAAC,EAAE,eAAe,KAAK,eAAe,OAAO,oBAAoB,WAAW,KAAK,YAAY,IAAI,KAAK,YAAY,EAAE,QAAQ,EAAE,UAAU,KAAK,MAAM,IAAI,IAAI,KAAK,oBAAoB,QAAQ,EAAE,cAAc,IAAI,WAAW,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,IAAI,KAAK,oBAAoB,QAAQ,EAAE,MAAM,IAAI,IAAI,KAAK,oBAAoB,QAAQ,EAAE,cAAc,IAAI,WAAW,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,GAAG,iBAAiB,KAAK,mBAAmB,KAAK,WAAW,SAAS,KAAK,WAAW,SAAS,SAAS,IAAI,KAAK,YAAY,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,GAAG,iBAAiB,KAAK,mBAAmB,KAAK,WAAW,SAAS,IAAI,KAAK,YAAY,CAAC,CAAC;GAC3pB;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAuB,GAAG;GAC/B,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,OAAO,EAAE,KAAK,eAAe,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG;EAC1D;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG,GAAG;EAChB,IAAI;EAGJ,AAFA,EAAgB,MAAM,CAAE,GAExB,IAAU,EAAW,MAAM,GAAI;GAAC,EAAG,oBAAoB;GAAG,KAAK;GAAG,EAChE,QAAa,GAAuB,QAA6B,OACnE;EAAC,CAAC;EACF,IAAI,IAAI,EAAQ,oBAAoB,EAAQ,aAAa;EAEzD,OADA,EAAQ,QAAQ,IAAI,GAAG,GAAG,GAAuB,IAAI,GAAG,EAAQ,cAAc,GAAG,EAAQ,kBAAkB,EAAG,sBAAsB,GAAG,EAAQ,WAAW,YAAY,EAAE,MAAM,GAAG,EAAQ,gBAAgB,YAAY,EAAQ,UAAU,GAAG,EAAQ,WAAW,UAAU,IAAI,eAAe,oBAAoB,GAAG,EAAQ,WAAW,SAAS,EAAE,CAAC,KAAK,eAAe,EAAQ,gBAAgB,YAAY,EAAQ,MAAM,UAAU,GAAG,EAAQ,kBAAkB,QAAQ,GAAG,EAAQ,mBAAmB,CAAC,GAC7d;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,OAAO,EACL,QAAQ,KAAK,mBAAmB,EAAG,qBAAqB,GAAG,UAAU,CAAC,EACxE;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAC1C,OAAO,GAAE,2BAA2B,KAAK,YAAY,GAAG,CAAC,KAAK;GAChE;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAyB;IAC9B,KAAK,WAAW,UAAU,KAAK,MAAM,OAAO,KAAK,KAAK,KAAK;GAC7D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,KAAK,MAAM,QAAQ,CAAC;GACtB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IAAI,IAAU;IACd,EAAE,iBAAiB,SAAS,SAAU,GAAG;KACvC,EAAE,OAAO,UAAU,SAAS,aAAa,KAAK,EAAQ,MAAM,MAAM;IACpE,CAAC;GACH;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,WAA+B;IACpC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,cAAc,GAAG;GAC1C;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,OAAO,EAAG,iBAAiB,EAAE;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAiC;IACtC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,oBAAoB;GACpC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI;IACJ,QAAQ,IAAI,GAAuB,WAAW,QAAQ,EAAE,WAAgB,GAAuB,QAA6B,WAAW,EAAE,eAAe,CAAC,SAAS,KAAK,EAAE,gBAAgB,CAAC,WAAW,IAAI,kBAAkB;GAC7N;EACF;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAEA,SAAqB,GAAG,GAAG,GAAG,GAAG;IAC/B,IAAI,IAAI,IAAI,GAAG,GAAG,CAAC;IACnB,GAAG,QAAQ,SAAU,GAAG;KACtB,IAAI,IAAI,EAAE,cAAc,CAAC,UAAU,SAAU,GAAG;MAC5C,OAAO,EAAE,eAAe;KAC1B,CAAC,GACD,IAAI,EAAE,cAAc,CAAC;KACvB,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,EAAE,cAAc,CAAC,OAAO,GAAG,CAAC;IACzD,CAAC;IACD,IAAI,IAAI,GAAG,YAAY,GAAG,CAAC;IAC3B,GAAG,UAAU,GAAG,EAAE,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;GACrD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC;KAAC;KAAe;KAAgB;KAAgB;IAAe,CAAC,CAAC,QAAQ,SAAU,GAAG;KACpF,IAAI,IAAI;KACR,EAAE,EAAE,CAAC,QAAQ,SAAU,GAAG;MACxB,GAAG,UAAU,GAAG,EAAE,OAAO,YAAY,CAAC;KACxC,CAAC;IACH,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG;IACnC,IAAI,IAAI,EAAc,EAAc,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,EACjD,YAAY,EACd,CAAC;IACD,EAAE,KAAK,CAAC,GAAG,OAAO,EAAE;GACtB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA8B;IACnC,OAAO;KACL,eAAe,CAAC;KAChB,gBAAgB,CAAC;KACjB,eAAe,CAAC;KAChB,gBAAgB,CAAC;KACjB,iBAAiB,CAAC;IACpB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,IAAI,IAAI,EAAE,mBAAmB;IAC7B,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KAClC,IACI,IAAS,EAAE,EAAA,EAAyB,OAAO;KAC/C,KAAK,EAAE,YAAY,GAAG,GAAG,EAAE,EAAE;IAC/B,CAAC,GAAG,EAAE,eAAe,CAAC,WAAW,KAAK,EAAE,UAAU,EAAE,YAAY,GAAG,UAAU,EAAE,eAAe,GAAG,EAAE,gBAAgB,CAAC,WAAW,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,UAAU,EAAE,gBAAgB,IAAI,EAAE,aAAa,EAAE,YAAY,GAAG,cAAc,EAAE,gBAAgB,IAAI,EAAE,UAAU,EAAE,YAAY,GAAG,UAAU,EAAE,gBAAgB,IAAI,EAAE,UAAU,EAAE,YAAY,GAAG,UAAU,EAAE,eAAe,CAAC,WAAW,IAAI,EAAE,kBAAkB,EAAE,eAAe,GAAG,EAAE,cAAc,EAAE,YAAY,GAAG,cAAc,EAAE,eAAe,CAAC,WAAW,IAAI,EAAE,kBAAkB,EAAE,eAAe;IACviB,IAAI,IAAI,OAAO,KAAK,CAAC;IACrB,OAAO,EAAE,SAAS,KAAK,EAAE,cAAc,CAAC,SAAS,IAAI,GAAG,QAAQ,SAAU,GAAG;KAC3E,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,EAAc,EAAc,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,EACvE,YAAY,EACd,CAAC,CAAC;IACJ,CAAC,IAAI,EAAE,WAAW,KAAK,EAAE,YAAY,GAAG,EAAE,IAAI,EAAE,gBAAgB,CAAC,WAAW,IAAI,EAAE,mBAAmB,EAAE,eAAe,GAAG;GAC3H;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG,GAAG,GAAG;IACrC,IAAI,IAAI,EAAE,kBAAkB,CAAC;IAC7B,OAAO,EAAE,mBAAmB,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,SAAS,KAAK,EAAE,YAAY,GAAG,GAAG,GAAG,CAAC,GAAG;GAC/F;EACF;CAAC,CAAC;AACJ,EAAE,GAKA,KAAK;CACH,QAAQ;EACN,IAAI;EACJ,WAAW;EACX,YAAY;CACd;CACA,MAAM;EACJ,IAAI;EACJ,WAAW;EACX,YAAY;CACd;CACA,OAAO;EACL,IAAI;EACJ,WAAW;EACX,YAAY;CACd;CACA,YAAY;EACV,IAAI;EACJ,WAAW;EACX,YAAY;CACd;AACF,GACA,KAAK,s7BACH,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG;EACb,IAAI;EAGJ,OAFA,EAAgB,MAAM,CAAE,GACvB,GAAuB,aAAc,kBAAkB,EAAE,WAAW,kBAAkB,IAAU,EAAW,MAAM,GAAI;GAAC,EAAG,wBAAwB;GAAG,GAAuB;GAAU;EAAC,CAAC,GAAG,EAAQ,WAAW,CAAC,GAAG,EAAQ,iBAAiB,EAAQ,oBAAoB,EAAQ,aAAa,GAAG,EAAQ,gBAAgB,GAChT;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,IAAI,IAAI,EAAG,qBAAqB;IAChC,OAAO;KACL,SAAW,KAAK,mBAAmB,GAAG,WAAW,CAAC;KAClD,QAAQ,KAAK,mBAAmB,GAAG,UAAU,CAAC;KAC9C,aAAa,KAAK,mBAAmB,GAAG,eAAe,CAAC;KACxD,aAAa,KAAK,mBAAmB,GAAG,eAAe,CAAC;IAC1D;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAC1C,OAAO,GAAE,2BAA2B,KAAK,YAAY,GAAG,CAAC,KAAK;GAChE;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,KAAK,WAAW,gBAAgB,KAAK,eAAe,MAAM,GAAG,KAAK,iBAAiB,QAAQ,GAAG,KAAK,kBAAkB,UAAU,CAAC,WAAW,aAAa,CAAC,GAAG,KAAK,WAAW,CAAC;GAC/K;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA2B;IAChC,KAAK,WAAW,gBAAgB,KAAK,eAAe,OAAU,GAAG,KAAK,iBAAiB,SAAS,GAAG,KAAK,kBAAkB,WAAW,CAAC,UAAU,aAAa,CAAC,GAAG,KAAK,WAAW,CAAC;GACpL;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,KAAK,WAAW,gBAAgB,KAAK,eAAe,WAAW,GAAG,KAAK,iBAAiB,SAAS,GAAG,KAAK,kBAAkB,eAAe,CAAC,QAAQ,CAAC;GACtJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,KAAK,WAAW,gBAAgB,KAAK,eAAe,WAAW,GAAG,KAAK,WAAW,UAAU,IAAI,wBAAwB,GAAG,KAAK,kBAAkB,eAAe,CAAC,QAAQ,CAAC;GAC7K;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,IAAI,IAAI,KAAK,WAAW,SAAS;IACjC,IAAI,EAAE,QAAQ,kBAAkB,MAAM,OAAO,QAAQ,GAAR;KAC3C,KAAK;MACH,EAAE,UAAU,OAAO,0BAA0B,yBAAyB,GAAG,EAAE,UAAU,IAAI,yBAAyB;MAClH;KACF,KAAK;MACH,EAAE,UAAU,OAAO,2BAA2B,yBAAyB,GAAG,EAAE,UAAU,IAAI,wBAAwB;MAClH;KACF,KAAK,WACH,EAAE,UAAU,OAAO,0BAA0B,yBAAyB,GAAG,EAAE,UAAU,IAAI,yBAAyB;IAEtH;GACF;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,WAAmC;GACxC,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,OAAO,EAAE,KAAK,qBAAqB,EAAE,UAAU,IAAI,cAAc,GAAG;EACtE;CACF,GAAG;EACD,KAAK;EACL,OAAO,WAAgC;GACrC,IAAI,IAAI,EAAG,iBAAiB,EAAE;GAC9B,OAAO,EAAE,KAAK,mBAAmB;EACnC;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAK,CAAC,GACR,KAAK,CAAC,GACN,KAAK,CAAC,GACN,KAAK,CAAC,GACN,KAAK,CAAC;AACR,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,OAAO,KAAK;AACf,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAoB,GAAG;IAC5B,OAAO,EAAE,QAAQ,EAAG,kBAAkB,SAAU,GAAG;KACjD,OAAO,EAAE,YAAY;IACvB,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG;IAC3B,OAAO,EAAE,QAAQ,EAAG,aAAa,SAAS,CAAC,CAAC,QAAQ,EAAG,UAAU,MAAM;GACzE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,OAAO,MAAM,KAAK,KAAK,MAAM,UAAO,MAAM,OAAO,MAAM,QAAQ,MAAM;GACvE;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,OAAO,EAAE,MAAM,OAAO;GACxB;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,OAAO,IACV,GAAG,mBAAmB,MACtB,GAAG,cAAc,SACjB,GAAG,WAAW,OACd,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,YAAY,KAAK;AACpB,IAAI,KAAK;AAcT,GAAG,YAbmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAmB,GAAG,GAAG;GAE9B,KAAK,IADD,IAAI,GAAG,KAAK,oBAAoB,CAAC,GAC5B,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,GAAG,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;GAC7D,OAAO,EAAE,KAAK,EAAE;EAClB;CACF,CAAC,CAAC;AACJ,EACgB,GAChB,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,sBAAsB,KAAK;AAC9B,IAAI,KAAK;AAoCT,GAAG,sBAnCmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAiB,GAAG,GAAG,GAAG;GAE/B,KAAK,IADD,IAAI,IACC,IAAI,EAAE,aAAa,IAAI,EAAE,QAAQ,QAAQ,EAAE,GAAG;IACrD,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG,UAAU,UAAU,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,UAAU,KAAK,IAAI,KAAK;GAChF;GACA,OAAO;IACL,mBAAmB;IACnB,iBAAiB;IACjB,SAAS,KAAK;GAChB;EACF;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAuB,GAAG,GAAG,GAAG;GAGrC,KAAK,IAFD,IAAI,IACJ,IAAI,IACC,IAAI,EAAE,aAAa,IAAI,EAAE,QAAQ,QAAQ,EAAE,GAAG;IACrD,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG,UAAU,UAAU,GAAG,CAAC,IAAI,KAAK;GAChD;GACA,OAAO;IACL,mBAAmB;IACnB,iBAAiB;IACjB,SAAS,KAAK;GAChB;EACF;CACF,CAAC,CAAC;AACJ,EAC0B;AAC1B,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,UAAU,KAAK;AAClB,IAAI,KAAkB,gBAAa,SAAS,IAAK;CAC/C,EAAgB,MAAM,CAAE;AAC1B,CAAC;AACD,GAAG,UAAU,IACb,GAAG,YAAY,WAAY;CACzB,OAAO,GAAG,eAAe,KAAK,MAAM,GAAG,aAAa,iCAAiC,KAAK,UAAU,SAAS,IAAI,GAAG;AACtH;AACA,IAAI,KAAK,CAAC,GACR,KAAK,CAAC;AACR,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,iBAAiB,KAAK;AACzB,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAwC,GAAG,GAAG;IACnD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,KAAK,SAAU,GAAG;KAC5C,OAAO,MAAM;IACf,CAAC,IAAI,MAAM,IAAI,IAAI,KAAK;GAC1B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAU;IACd,EAAE,WAAW,EAAG,+BAA+B,EAAE,SAAS,SAAS,aAAa,MAAM,EAAG,qBAAqB,QAAQ,aAAa,EAAG,gBAAgB,GAAG,EAAG,mBAAmB,WAAW,WAAY;KACpM,EAAG,mBAAmB,MAAM,EAAQ,eAAe,CAAC;IACtD,GAAG,GAAG;GACR;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,KAAK,mBAAmB,EAAG,+BAA+B,GAAG,EAAE,MAAM;GACvE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,KAAK,oBAAoB,KAAK,eAAe,CAAC,GAAG,KAAK,mBAAmB,KAAK;GAChF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAa,GAAG,GAAG;IACxB,IAAI,IAAK,GAAuB,2BAA4B,KAAK,KAAM,GAAuB;IAC9F,KAAK,QAAQ,EAAE,WAAW,MAAM,EAAE,iBAAiB,EAAG,gBAAgB,KAAK,GAAG,EAAE,OAAO,GAAG,SAAS,iBAAiB,aAAa,EAAE,cAAc,GAAG,EAAE,eAAe,EAAG,cAAc,KAAK,GAAG,CAAC,GAAG,SAAS,iBAAiB,WAAW,EAAE,YAAY,GAAG,EAAE,eAAe,EAAG,cAAc,KAAK,GAAG,CAAC,GAAG,SAAS,iBAAiB,WAAW,EAAE,YAAY;GAC3V;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG;IACxB,SAAS,oBAAoB,aAAa,EAAE,cAAc,GAAG,SAAS,oBAAoB,WAAW,EAAE,YAAY,GAAG,SAAS,oBAAoB,WAAW,EAAE,YAAY;GAC9K;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,iBAAiB,IACpB,GAAG,mBAAmB;AACtB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,iBAAiB,KAAK,GAezB,GAAG,iBAdmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAiB,GAAG,GAAG,GAAG,GAAG,GAAG;GACrC,IAAI,IAAI,IAAuB,GAAG,CAAC;GACnC,OAAO,KAAK,WAAW,WAAY;IACjC,EAAE,UAAU,EAAE,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK;GACrD,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,CAAC;EACnD;CACF,CAAC,CAAC;AACJ,EACqB;AACrB,IAAI,KAAK,CAAC,GACR,KAAK,CAAC;AACR,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,aAAa,KAAK,GAoCrB,GAAG,aAnCmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG;IACxC,KAAK,CAAC,EAAE,kBAAkB,EAAE,aAAa,IAAI,EAAE,cAAc,YAAY;GAC3E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,EAAE,gBAAgB,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,eAAe,EAC9E,OAAO,UACT,CAAC;GACH;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAAoC,GAAG;IAC5C,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE;GAChD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE;GAC9D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,OAAO,KAAK,EAAG,mBAAmB,CAAC;GACrC;EACF;CAAC,CAAC;AACJ,EACiB;AACjB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,WAAW,KAAK,GA+CnB,GAAG,WA9CmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,OAAO,EAAE,YAAY,WAAW,EAAE,YAAY;GAChD;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA6B;IAClC,IAAI,IAAI,SAAS,cAAc,MAAM;IACrC,OAAO,EAAE,MAAM,QAAQ,QAAQ,EAAE,MAAM,gBAAgB,QAAQ;GACjE;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA6B;IAClC,IAAI,IAAI,SAAS,cAAc,MAAM;IACrC,OAAO,EAAE,MAAM,gBAAgB,QAAQ;GACzC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI,EAAE,iBAAiB,CAAC,GAAG,EAAE,0BAA0B,SAAS,kBAAkB,GAAG;KACnF,IAAI,IAAO,OAAO,aAAa;KAC/B,IAAI,KAAQ,QAAQ,EAAK,WAAW;MAClC,IAAI,IAAI,EAAK,WAAW,CAAC;MACzB,EAAE,WAAW,EAAE,aAAa,GAAG,EAAE,WAAW,EAAE,WAAW,GAAG,EAAE,WAAW,EAAE,SAAS,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,EAAK,gBAAgB,GAAG,EAAK,SAAS,CAAC;MAC9I;KACF;IACF;IACA,EAAE,YAAY,EAAE,SAAS,GAAG,EAAE,YAAY,EAAE,WAAW,GAAG,EAAE,YAAY,EAAE,aAAa;GACzF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,EAAE,YAAY,EAAE,YAAY,MAAM,QAAQ,EAAE,UAAU,EAAE,UAAa,EAAE,UAAU,MAAM,QAAQ,EAAE;GACnG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,OAAO,EAAE,YAAY,aAAa;GACpC;EACF;CAAC,CAAC;AACJ,EACe;AACf,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,SAAS,KAAK,GAiFjB,GAAG,SAhFmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG;IAGxC,KAAK,IAFD,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK,GACxE,IAAI,GACC,IAAI,GAAG,IAAI,EAAE,WAAW,QAAQ,KAAK,GAAG;KAC/C,IAAI,IAAI,EAAE,WAAW;KACrB,IAAI,EAAE,WAAW,SAAS,GAAG;MAC3B,IAAI,IAAI,EAAG,oBAAoB,GAAG,GAAG,CAAC;MACtC,IAAI,MAAM,IAAI,OAAO;MACrB,KAAK;KACP,OAAO,IAAI,EAAE,gBAAgB,MAAM;MACjC,IAAI,IAAI,EAAE,YAAY,SAAS,GAAG;OAChC,IAAI,IAAM,SAAS,YAAY;OAC/B,EAAI,SAAS,GAAG,IAAI,CAAC,GAAG,EAAI,SAAS,CAAC,CAAC;OACvC,IAAI,IAAI,OAAO,aAAa;OAC5B,OAAO,GAAe,gBAAgB,GAAG,GAAe,SAAS,CAAG,GAAG,EAAE,MAAM,GAAG;MACpF;MACA,KAAK,EAAE,YAAY,QAAQ,KAAK,EAAE,YAAY;KAChD;IACF;IACA,OAAO;GACT;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,IAAI,IAAI,SAAS,YAAY;IAC7B,EAAE,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACtC,IAAI,IAAI,OAAO,aAAa;IAC5B,MAAM,EAAE,gBAAgB,GAAG,EAAE,SAAS,CAAC;GACzC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmC,GAAG,GAAG;IAC9C,IAAI,IAAI,OAAO,aAAa;IAC5B,IAAI,GAAG;KACL,IAAI,IAAI,EAAG,8BAA8B,GAAG,GAAG,CAAC,CAAC;KACjD,QAAQ,IAAI,CAAC,GAAG,WAAW,WAAY,CAAC,GAAG,GAAG,GAAG,EAAG,oBAAoB,GAAG,IAAI,CAAC;IAClF;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG,GAAG,GAAG;IAC7C,KAAK,EAAE,KAAK,GAAG,EAAE,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM;GACpD;EAkBF;EAAG;GACD,KAAK;GACL,OAAO,SAAuC,GAAG,GAAG,GAAG;IACrD,IAAI,IAAI;IACR,IAAI,EAAE,aAAa,GAAG;KACpB,IAAI,IAAI,EAAE,WAAW,CAAC,GACpB,IAAI,EAAE,WAAW;KACnB,EAAE,mBAAmB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC;IACnI;IACA,OAAO;GACT;EACF;CAAC,CAAC;AACJ,EACa,GACb,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,eAAe,KAAK;AACvB,IAAI,KAAK,IACP,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK;AA+FP,GAAG,eA9FmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,IAAI,EAAE,YAAY,IAAK,GAAuB,eAAgB,CAAC,IAAI,GAAG,KAAK,oBAAoB,CAAC,IAAI;GAC1I;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IAEzB,OAAa,EAAE,UAAgD,kBAAmB,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,OAAO,SAAU,GAAG,GAAG;KAC/H,IAAI,IAAI,EAAE;KACV,OAAO,EAAE,KAAK,OAAO,KAAK,WAAW,EAAG,eAAe,GAAG,EAAE,QAAQ,IAAI,GAAG;IAC7E,GAAG,CAAC,CAAC;GACP;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,IAAI;IACJ,EAAE,sBAAsB,CAAC,IAAI,IAAI,EAAE,yBAA0B,QAAwB,EAAE,KAAK,GAAG,CAAC,CAAC;GACnG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,IAAI;IACJ,AAAkG,EAAE,0BAAzE,IAAI,EAAE,yBAA0B,QAAwB,EAAE,KAAK,GAAG,CAAC,CAAC,GAA2B,CAAC;GAC7H;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG,GAAG,GAAG;IAClC,EAAG,qBAAqB,CAAC,GAAG,GAAG,SAAS,mBAAmB,CAAC,KAAK,EAAE,QAAQ,GAAG,EAAE,oBAAoB,GAAG,OAAO,sBAAsB,GAAG,EAAE,QAAQ,CAAC,CAAC,GAAG,GAAG,QAAQ,UAAU,KAAK,EAAE,cAAc,GAAG,WAAW,2BAA2B,CAAC,MAAM,EAAE,cAAc,GAAG,EAAE,oBAAoB,GAAG,OAAO,kBAAkB,CAAC,GAAG,WAAW,WAAY;KAC9U,OAAO,GAAG,WAAW,cAAc,GAAG,CAAC;IACzC,CAAC,IAAI,EAAE,eAAe,CAAC;GACzB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG,GAAG;IAC5C,OAAO,EAAE,SAAS,CAAC;GACrB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG,GAAG;IAE1C,KAAK,IADD,IAAI,GACC,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,KAAQ;KAGzC,KAFA,IAAI,IAAI,GACN,IAAI,EAAE,SAAS,GACV,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,KAAQ;KACzC,IAAI,IAAI,GAAG,OAAO,CAAC;IACrB;IACA,OAAO,CAAC;GACV;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG,GAAG,GAAG;IACzC,IAAU,GACN,IAAI,EAAE;IACN,IAAC,KAAM,KAAM,GACjB;SAAI,IAAU,EAAE,UAAgD,kBAAmB,CAAC,IAAI,IAAI,EAAE,YAAY,GACxG,IAAI,GAAG,KAAK,oBAAoB,CAAC,GACjC,IAAU,EAAE,UAAgD,eAAgB,CAAC,IAAI,EAAG,qBAAqB,EAAG;KAC9G,IAAI,EAAE,eAAe,EAAE,EAAE,aAAa,GAAG,CAAC,GAAG,OAAO,EAAE,uBAAuB,GAAG,WAAW,WAAY;MACrG,OAAO,EAAG,oBAAoB,CAAC;KACjC,CAAC,GAAG,EACF,2BAA2B,CAAC,EAC9B;KACA,IAAM,GAAE,eAAgB,EAAE,qBAAsB;MAC9C,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,OAAO,EAAG,qBAAqB,CAAC,GAAG,WAAW,WAAY;OACvF,OAAO,EAAE,KAAK;MAChB,CAAC,GAAG,EACF,2BAA2B,CAAC,EAC9B;MACA,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,GAAG,CAAC,GAAG,OAAO,EAAG,qBAAqB,CAAC,GAAG,EAAE,uBAAuB,GAAG,WAAW,WAAY;OACrH,IAAI;OACJ,EAAE,WAAW,CAAC,IAAI,IAAI,EAAE,mBAAoB,QAAwB,EAAE,KAAK,GAAG,CAAC,CAAC;MAClF,CAAC,GAAG,EACF,2BAA2B,CAAC,EAC9B;MACA,IAAI,EAAE,UAAU,EAAE,EAAE,QAAQ,GAAG,CAAC,GAAG,OAAO,EAAE,WAAW,CAAC,IAAI,IAAI,EAAE,mBAAoB,QAAwB,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,EAAG,qBAAqB,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,EAC5K,2BAA2B,CAAC,EAC9B;MACA,IAAI,EAAE,SAAS,EAAE,EAAE,OAAO,GAAG,CAAC,GAAG,OAAO,MAAM,KAAK,KAAK,EAAG,QAAQ,GAAG,GAAG,GAAG,CAAC,GAAG,EAC9E,2BAA2B,CAAC,EAC9B;MACA,IAAI,EAAE,iBAAiB,EAAE,EAAE,eAAe,GAAG,CAAC,GAAG,OAAO,EAAG,QAAQ,GAAG,GAAG,IAAI,CAAC,GAAG,EAC/E,2BAA2B,CAAC,EAC9B;KACF;IA3B8G;GA4BhH;EACF;CAAC,CAAC;AACJ,EACmB;AACnB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,YAAY,KAAK;AACpB,IAAI,KAAK,IACP,KAAK;AAiDP,GAAG,YAhDmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IAAI,GAAG;IACP,EAAE,mBAAmB,SAAS,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,SAAS,IAAI,EAAE,eAAe,EAAE,gBAAgB,MAAM;GAChI;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAI,IAAI,OAAO,aAAa;IAC5B,AAAI,KAAK,QAAQ,EAAE,cAGjB,EAAE,gBAFM,GAAG,OAAO,8BAA8B,GAAG,GAAG,CAAC,CAErC,MADZ,GAAG,OAAO,8BAA8B,GAAG,GAAG,CAAC,CAC7B;GAE5B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkB,GAAG,GAAG;IAC7B,SAAS,kBAAkB,MAAM,GAAG,SAAS,mBAAmB,CAAC,IAAI,EAAG,qBAAqB,GAAG,CAAC,IAAI,EAAG,mBAAmB,GAAG,CAAC;GACjI;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG;IACrC,IAAI,IAAI,OAAO,aAAa;IAC5B,IAAI,GAAG;KACL,IAAI,IAAI,GAAG,OAAO,8BAA8B,GAAG,GAAG,CAAC,CAAC;KACxD,EAAE,mBAAmB,GAAG,GAAG,OAAO,oBAAoB,GAAG,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAClF;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAI,IAAI,EAAE,gBACR,IAAI,EAAE,cACN,IAAI,EAAE;IAKR,AAJI,KAAK,MAEP,EAAE,QADM,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,GAC5B,GAAG,OAAO,sBAAsB,GAAG,GAAG,EAAE,UAAU,IAEjE,EAAE,gBAAgB,CAAC;GACrB;EACF;CAAC,CAAC;AACJ,EACgB;AAChB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,UAAU,KAAK;AAClB,IAAI,KAAK,IACP,KAAK,IACL,KAAK;AA0DP,GAAG,UAzDmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAqC,GAAG,GAAG;IAChD,IAAI,SAAS,kBAAkB,KAAK,EAAE,mBAAmB,MAAM;KAC7D,IAAI,IAAI,EAAE,gBACR,IAAI,EAAE,MAAM,IAAI,IAChB,IAAI,EAAE,iBAAiB,OAAO,IAAI,EAAE,cACpC,IAAI,EAAE,MAAM;KACd,GAAG,KAAK,cAAc,CAAC,MAAM,EAAE,eAAe,KAAK,EAAE,8BAA8B,IAAI,GAAG,KAAK,cAAc,CAAC,MAAM,EAAE,aAAa,KAAK,EAAE,6BAA6B,IAAI,EAAE,gBAAgB,EAAE,MAAM,WAAW;KAChN;IACF;IACA,IAAI,IAAI,EAAE,MAAM,EAAE,MAAM,SAAS;IACjC,GAAG,KAAK,cAAc,CAAC,MAAM,EAAE,eAAe,KAAK,EAAE,8BAA8B,IAAI,EAAE,gBAAgB,CAAC;GAC5G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmC,GAAG,GAAG;IAE9C,IAAI,SAAS,kBAAkB,GAAG;KAChC,IAAI,IAAI,OAAO,aAAa;KAC5B,IAAI,KAAK,QAAQ,EAAE,WAAW;MAC5B,IAAI,IAAI,GAAG,OAAO,8BAA8B,GAAG,GAAG,CAAC,CAAC,GACtD,IAAS,EAAE,cAAmD,IAAI,IAClE,IAAI,GAAG,OAAO,8BAA8B,GAAG,GAAG,CAAC,CAAC,GACpD,IAAS,EAAE,cAAmD;MAChE,GAAG,KAAK,cAAc,CAAC,MAAM,EAAE,eAAe,MAAM,GAAG,KAAK,cAAc,CAAC,MAAM,EAAE,aAAa,MAAM,EAAE,gBAAsB,EAAE,aAAmD,WAAY;MAC/L;KACF;IACF;IACA,IAAI,IAAI,EAAE,UAAU,OAAO,EAAE,UAAU,SAAS,CAAC;IACjD,GAAG,KAAK,cAAc,CAAC,MAAM,EAAE,eAAe,MAAM,EAAE,gBAAgB,CAAC;GACzE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkB,GAAG,GAAG;IAC7B,GAAG,SAAS,mBAAmB,CAAC,IAAI,EAAG,4BAA4B,GAAG,CAAC,IAAI,EAAG,0BAA0B,GAAG,CAAC;GAC9G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkD,GAAG,GAAG;IAC7D,IAAI,EAAE,wBAAwB,CAAC,GAAG,EAAE,0BAA0B,SAAS,kBAAkB,MAAM,EAAE,iBAAiB,SAAS,EAAE,cAA4B,EAAE,MAAM,MAAM,EAAE,YAAY,IAAI,EAAE,mBAAmB,OAAO;KACnN,EAAE,eAAe,EAAE,MAAM,MAAM,GAAG,EAAE,cAAc,IAAI,EAAE;KACxD;IACF;IACA,EAAE,eAAe,EAAE,QAAQ,EAAE;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6C,GAAG;IACrD,EAAE,gCAAgC,MAAM,EAAE,eAAe,EAAE,aAAa,UAAU,GAAG,EAAE,aAAa,SAAS,CAAC,GAAG,EAAE,8BAA8B,IAAI,EAAE,+BAA+B,MAAM,EAAE,aAAa,EAAE,WAAW,UAAU,CAAC,GAAG,EAAE,6BAA6B;GACvQ;EACF;CAAC,CAAC;AACJ,EACc,GACd,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,SAAS,KAAK;AACjB,IAAI,KAAK,IACP,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,IAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK;AA6GP,GAAG,SA5GmB,2BAAY;CAChC,SAAS,IAAK;EAEZ,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,kBAAkB,IAAI,KAAK,cAAc,EAAG,SAAS,kBAAkB,GAAG,KAAK,YAAY,EAAG,SAAS,kBAAkB,GAAG,KAAK,gBAAgB,EAAG,SAAS,kBAAkB,GAAG,KAAK,gBAAgB,CAAC,GAAG,KAAK,iBAAiB,CAAC,GAAG,KAAK,eAAe,IAAI,KAAK,aAAa,IAAI,KAAK,8BAA8B,GAAG,KAAK,6BAA6B,GAAG,KAAK,gBAAgB,CAAC,GAAG,KAAK,wBAAwB,CAAC,GAAG,KAAK,cAAc,CAAC,GAAG,KAAK,yBAAyB,CAAC,GAAG,KAAK,yBAAyB,CAAC,GAAG,KAAK,aAAa,CAAC,GAAG,KAAK,eAAe,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,KAAK,sBAAsB,CAAC,GAAG,KAAK,mBAAmB,CAAC,GAAG,KAAK,kBAAkB,CAAC,GAAG,KAAK,WAAW;CAClqB;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IAAO;IACP,IAAI,KAAK,QAAQ,EAAE,SAAS;SAAI,GAAG,eAAe,IAAI,MAAM,CAAC,GAAG,MAAM,QAAQ,EAAE,OAAO,GAAG;MACxF,IAAI,IAAI,EAAE,QAAQ,KAAK,SAAU,GAAG;OAClC,OAAO,MAAM,SAAS;MACxB,CAAC,KAAK,EAAE,QAAQ;MAChB,IAAI,CAAC,GAAG;MACR,KAAK,QAAQ,CAAC;KAChB,OAAO,KAAK,QAAQ,EAAE,OAAO;IAAA;IAC7B,AAAC,GAAuB,0BAA2B,KAAK,MAAM,KAAK,yBAAyB,EAAE,wBAAwB,KAAK,QAAQ,EAAE,cAAc,KAAK,kBAAuB,GAAuB,WAAiD,OAAU,EAAG,SAAS,kBAAkB,MAAM,EAAE,SAAS,IAAK,GAAuB,2BAA4B,KAAK,MAAM,KAAK,yBAAyB,EAAE,yBAA0B,GAAuB,eAAgB,KAAK,MAAM,KAAK,aAAa,EAAE,aAAa,KAAK,YAAY,GAAuB,UAAU,KAAK,eAAe,GAAuB,aAAa,KAAK,WAAW,GAAuB,SAAS,KAAK,UAAU,GAAuB,QAAQ,KAAK,WAAW,GAAuB,SAAS,KAAK,uBAAuB,GAAuB,sBAAsB,KAAK,iBAAiB,GAAuB,gBAAgB,KAAK,WAAW,IAAM,IAAI,KAAK,aAAc,QAAyB,EAAE,aAAa,KAAK,WAAW,GAAG,aAAa,QAAQ,KAAK,SAAS,QAAQ;GACnhC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,GAAG,QAAQ,SAAS,MAAM,CAAC,GAAG,GAAG,UAAU,SAAS,MAAM,CAAC,GAAG,KAAK,mBAAmB,EAAG,SAAS,kBAAkB,CAAC,GAAG,EAAG,SAAS,mBAAmB,CAAC,KAAK,KAAK,oBAAoB,GAAG,KAAK,gBAAgB,KAAK,kBAAkB,UAAU,KAAK,kBAAkB,GAAG,KAAK,gBAAgB,KAAK,gBAAgB;GACrT;EAIF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,KAAK,eAAe,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,GAAG,KAAK,MAAM,GAAG,CAAC,CAAC;GAC9E;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG;IACtC,IAAI,GACA,IAAI,GAAG,KAAK,WAAW,CAAC;IACxB,SAAK,oBAAoB,KAAK,MAAM,IACxC;QAAG,eAAe,QAAQ,MAAM,GAAG,MAAM,IAAI,KAAK,cAAc,KAAK,QAAQ,MAAM,IAAI,IAAI,IAAI;KAC/F,IAAI,IAAI,KAAK,YAAY,GAAG,aAAa,YAAY,MAAM,GAAG,KAAK,UAAU,KAAK,qBAAqB,KAAK,iBAAiB,KAAK,aAAa;KAC/I,IAAI,GAAG;MACL,IAAI,EAAE,2BAA2B;MACjC,IAAI,IAAI,IAAI;KACd;KACI,WAAK,YAAY,KAAK,sBAC1B;OAAC,IAAI,KAAK,cAAe,QAAwB,EAAE,KAAK,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,kBAAkB,GAAG,KAAK,2BAA2B,IAAI;MAC1I,IAAI,IAAI,KAAK,oBAAoB,MAAM,MAAM;MAC7C,KAAK,oBAAoB,KAAK,uBAAuB,KAAK,mBAAmB,GAAG,CAAC,IAAI,KAAK,mBAAmB,KAAK,qBAAqB,KAAK,iBAAiB,GAAG,CAAC;KAFvB;IAP3C;GAUjG;EAGF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG,GAAG,GAAG;IAC9C,KAAK,iBAAiB,GAAG,UAAU,mBAAmB,MAAM,CAAC,GAAG,KAAK,yBAAyB,GAAG,QAAQ,yCAAyC,MAAM,CAAC,GAAG,KAAK,GAAG,QAAQ,oCAAoC,IAAI;IACpN,IAAI,IAAI,KAAK,eAAe,KAAK,kBAAkB;IACnD,IAAI,EAAE,QAAQ,IAAI,KAAK,YAAY,CAAC,KAAK,kBAAkB;KACzD,IAAI,IAAI,EAAE,SAAS,KAAK;KACxB,GAAG,OAAO,sBAAsB,GAAG,GAAG,KAAK,UAAU;IACvD;IACA,KAAK,cAAc,GAAG,QAAQ,UAAU,KAAK,KAAK,iBAAiB,GAAG,WAAW,2BAA2B,CAAC;GAC/G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG,GAAG;IAC5C,KAAK,iBAAiB,GAAG,UAAU,iBAAiB,MAAM,CAAC,GAAG,KAAK,kBAAkB,EAAG,SAAS,YAAY,MAAM,CAAC;IACpH,IAAI,KAAK,IAAI,KAAK,KAAK,gBAAgB,GAAG,KAAK,UAAU,KAAK,eAAe;IAC7E,KAAK,UAAU,YAAY;IAC3B,IAAI,IAAI,GAAG,WAAW,WAAW,KAAK,YAAY,CAAC;IACnD,GAAG,WAAW,oBAAoB,MAAM,CAAC;IACzC,IAAI,IAAI,GAAG,KAAK,UAAU,CAAC,KAAK,IAAI,KAAK,KAAK;IAC9C,KAAK,YAAY,YAAY,GAAG,GAAG,QAAQ,UAAU,KAAK,KAAK,0BAA0B,GAAG,OAAO,0BAA0B,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,WAAW,cAAc,MAAM,CAAC,GAAG,MAAM,KAAK,cAAc,YAAY;GACxO;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkB,GAAG;IAC1B,KAAK,oBAAoB,KAAK,KAAK,YAAY,EAAG,SAAS,kBAAkB,GAAG,KAAK,uBAAuB,GAAG,KAAK,cAAc,EAAG,SAAS,kBAAkB,GAAG,KAAK,gBAAgB,EAAG,SAAS,kBAAkB,KAAK,KAAK,gBAAgB,cAAc,KAAK,gBAAgB,aAAa,KAAK,iBAAiB,CAAC,IAAI,GAAG,eAAe,OAAO,IAAI;GAC1V;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAkC;IACvC,KAAK,YAAY,MAAM,QAAQ,KAAK,mBAAmB;GACzD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG;IAC5B,KAAK,oBAAoB,KAAK,GAAG,KAAK,kBAAkB,KAAK,GAAG,KAAK,kBAAkB,IAAI,KAAK,UAAU,YAAY,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,cAAc,YAAY,IAAI,KAAK,eAAe,IAAI,KAAK,aAAa,IAAI,KAAK,gBAAgB,CAAC,GAAG,KAAK,wBAAwB,CAAC,GAAG,KAAK,8BAA8B,GAAG,KAAK,6BAA6B,GAAG,MAAM,KAAK,cAAc,KAAK;GACjZ;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA2B;IAChC,IAAI;IACJ,KAAK,cAAc,CAAC,GAAG,KAAK,eAAe,KAAK,eAAe,CAAC,KAAK,IAAI,KAAK,aAAc,QAAwB,EAAE,KAAK,IAAI;GACjI;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,IAAI;IACJ,KAAK,cAAc,CAAC,GAAG,KAAK,iBAAiB,IAAI,KAAK,YAAa,QAAwB,EAAE,KAAK,IAAI;GACxG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,IAAI;IACJ,CAAC,IAAI,KAAK,aAAc,QAAwB,EAAE,KAAK,MAAM,CAAC,GAAG,KAAK,cAAc,CAAC;GACvF;EACF;CAAC,CAAC;AACJ,EACa,GACb,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,YAAY,KAAK;AACpB,IAAI,KAAK,IACP,KAAK;AAkEP,GAAG,YAhEmB,yBAAU,GAAY;CAC1C,SAAS,IAAK;EAEZ,OADA,EAAgB,MAAM,CAAE,GACjB,EAAW,MAAM,CAAE;CAC5B;CAEA,OADA,EAAU,GAAI,CAAU,GACjB,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAe,GAAG;IACvB,IAAI;IACJ,KAAK,iBAAiB,KAAK,MAAM,KAAK,eAAe,GAAG,QAAQ,UAAU,IAAI,GAAG,oBAAoB,gBAAgB,GAAG,oBAAoB,UAAU,KAAK,SAAS,MAAM,KAAK,mBAAmB,CAAC,GAAG,KAAK,mBAAmB,CAAC,IAAI,IAAI,KAAK,aAAc,QAAwB,EAAE,MAAM,GAAG,KAAK,gBAAgB,GAAuB;GAC3U;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAoB;IACzB,OAAO,EAAG,OAAO,IAAI,CAAC,KAAK,KAAK,MAAM,mCAAmC,GAAG,CAAC;GAC/E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IACI,IAAI,EAAG,OAAO;IAClB,KAAK,WAAW,IAAI,EAAE,GAAG,KAAK,SAAS,aAAa,CAAC,GAAG,KAAK,SAAS,iBAAsB,GAAuB,yBAAsD,CAAC,GAAG,KAAK,SAAS,QAAa,GAAuB,SAAA,EAAgD,KAAK,KAAM,SAAS,KAAK,UAAU;GACpT;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAqB;IAC1B,IAAI,IAAU;IACd,KAAK,aAAa,KAAK,SAAS,UAAU,WAAY;KACpD,EAAQ,gBAAgB;IAC1B,GAAG,KAAK,SAAS,UAAU,SAAU,GAAG;KACtC,GAAG,QAAQ,UAAU,KAAK,EAAE,YAAY,gCAAgC,EAAE,UAAU,aAAa,EAAQ,gBAAgB,EAAE,UAAU,eAAe,EAAQ,MAAM,EAAE,WAAW,EAAE,KAAK;IACxL,GAAG,KAAK,SAAS,aAAa,WAAY;KACxC,EAAQ,eAAe;IACzB,GAAG,KAAK,SAAS,QAAQ,WAAY;KACnC,EAAQ,YAAY,CAAC;IACvB,GAAG,KAAK,SAAS,WAAW,SAAU,GAAG;KACvC,IAAI,EAAQ,EAAE,OAAO,IAAI,OAAO,EAAQ,UAAU,EAAQ,SAAS,QAAQ,MAAM,EAAQ,SAAS,KAAK;UAAO,IAAI,EAAQ,gBAAgB,CAAC,EAAQ,WAAW;MAC5J,IAAI,IAAuB,EAAQ,aAAa,GAAG,EAAQ,iBAAiB,EAAQ,aAAa,GAC/F,IAAI,EAAqB,mBACzB,IAAO,EAAqB,iBAC5B,IAAI,EAAqB;MAC3B,EAAQ,eAAe,GAAG,GAAM,CAAC;KACnC;IACF;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAc,GAAG;IACtB,IAAI;IACJ,KAAK,YAAY,CAAC,IAAI,IAAI,KAAK,aAAc,QAAwB,EAAE,KAAK,GAAG,KAAK,SAAS,CAAC;GAChG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAe,GAAG;IACvB,QAAQ,MAAM,CAAC,GAAG,KAAK,gBAAgB,CAAC,GAAG,KAAK,KAAK;GACvD;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,WAAkB;GACvB,OAAO,OAAO,2BAA2B,OAAO;EAClD;CACF,CAAC,CAAC;AACJ,EAAEA,GAAG,MACW;AAChB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,cAAc,KAAK;AACtB,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,WAA+B;GACpC,OAAO,EAAG,qBAAqB,CAAC,KAAK,EAAG,qBAAqB,CAAC,GAAG,WAAW,WAAY;IACtF,EAAG,qBAAqB,CAAC;GAC3B,GAAG,GAAG,GAAG,CAAC;EACZ;CACF,CAAC,CAAC;AACJ,EAAE;AACF,GAAG,cAAc,IACjB,GAAG,qBAAqB,CAAC;AACzB,IAAI,KAAK,CAAC,GACR,KAAK,CAAC;AACR,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,wBAAwB,KAAK,GAmBhC,GAAG,wBAlBmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAyB,GAAG;GACjC,aAAa,EAAE,+BAA+B,GAAG,EAAE,kBAAkB,CAAC,GAAG,EAAE,kCAAkC,WAAW,WAAY;IAClI,EAAE,kBAAkB,CAAC;GACvB,GAAG,GAAG;EACR;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAyB,GAAG;GACjC,aAAa,EAAE,+BAA+B,GAAG,EAAE,kBAAkB,CAAC;EACxE;CACF,CAAC,CAAC;AACJ,EAC4B;AAC5B,IAAI,KAAK,CAAC,GACR,KAAK,CAAC;AACR,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,aAAa,KAAK,GACrB,GAAG,aAAa,0DAChB,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,oBAAoB,KAAK;AAC5B,IAAI,KAAK;AAoET,GAAG,oBAnEmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,OAAO,IAAI,CAAC,EAAE,mBAAmB,CAAC,EAAE,SAAS,CAAC,EAAE,iBAAiB,EAAE,uFAA8F,GAAG,YAAW,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,kDAAyD,GAAG,YAAW,GAAG,CAAC,MAAM,EAAE,oDAA2D,GAAG,YAAW,GAAG,CAAC;GAC7W;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;KAC7G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QACH,IAAI,CAAC,EAAE,QAAQ;SACb,EAAY,OAAO;SACnB;QACF;QACA,OAAO,EAAY,OAAO,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,KAAK,GAAG,EAAE,OAAO,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,KAAK,GAAG,EAAE,OAAO,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC,KAAK,SAAU,GAAG;SAClP,OAAO,EAAE,SAAS,EAAE,uBAAwB,GAAuB,KAAK,KAAM,IAAI,EAAE,OAAO,KAAK,CAAC,IAAI;QACvG,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;SACvB,OAAO,QAAQ,MAAM,CAAC,GAAG;QAC3B,CAAC,IAAI,IAAI;OACX,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO,GAAO;KACxC,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG;IAC5B,EAAE,aAAa,EAAE,4BAA4B,EAAE,SAAS,KAAK;GAC/D;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAO,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG;KAC9F,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAEH,OADA,EAAY,OAAO,GACZ,EAAG,mBAAmB,GAAG,CAAC;OACnC,KAAK,GAEH,OADA,IAAI,EAAY,MACT,EAAY,OAAO,WAAW,KAAK,EAAG,QAAQ,GAAG,CAAC,GAAG,EAAE;OAChE,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAI,GAAO,GAAO;KACzB,OAAO,EAAK,MAAM,MAAM,SAAS;IACnC;IACA,OAAO;GACT,EAAE;EACJ;CAAC,CAAC;AACJ,EACwB;AACxB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,cAAc,KAAK;AACtB,IAAI,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAa,GAAG;GACrB,EAAE,cAAc,WAAW,WAAY;IACrC,OAAO,EAAE,KAAK;GAChB,GAAG,EAAE,aAAa;EACpB;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAe,GAAG,GAAG;GAC1B,EAAE,gBAAgB,KAAK,EAAG,YAAY,EAAE,eAAe,aAAa,EAAE,WAAW,GAAG,EAAG,IAAI,CAAC;EAC9F;CACF,CAAC,CAAC;AACJ,EAAE;AACF,GAAG,cAAc,IACjB,GAAG,aAAa;AAChB,IAAI,KAAK,CAAC;AACV,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,kBAAkB,KAAK;AAC1B,IAAI,KAAK;AAsBT,GAAG,kBArBmB,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAEA,SAAiB,GAAG,GAAG,GAAG,GAAG;GAC3B,OAAO,MAAM,IAAI,GAAG,UAAU,UAAU,GAAG,CAAC,IAAI,IAAI;IAClD,mBAAmB;IACnB,iBAAiB,IAAI;IACrB,SAAS;GACX,IAAI;IACF,mBAAmB;IACnB,iBAAiB;IACjB,SAAS;GACX;EACF;CACF,CAAC,CAAC;AACJ,EACsB,GACtB,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC,GACD,GAAG,QAAQ,KAAK;AAChB,IAAI,KAAK,IACP,KAAK,IACL,KAAK,IACL,KAAK;AAwKP,GAAG,QAtKmB,yBAAU,GAAY;CAC1C,SAAS,IAAK;EACZ,IAAI;EAGJ,OAFA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI,SAAS,GAAG,EAAQ,kBAAkB,IAC9D;CACT;CAEA,OADA,EAAU,GAAI,CAAU,GACjB,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAe,GAAG,GAAG;IAC1B,KAAK,kBAAkB,IAAI,KAAK,gBAAgB,KAAK,KAAK,GAAG,YAAY,MAAM,MAAM,GAAuB,kBAAkB,GAAG,KAAK,mBAAmB,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,KAAK,GAAG,sBAAsB,gBAAgB,IAAI;GACrO;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAc,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KAClG,IAAI;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QAEH,IADA,EAAY,KAAK,KAAK,SAAS,CAAC,GAC5B,CAAC,EAAY,IAAI;SACnB,EAAY,OAAO;SACnB;QACF;QAEA,OADA,EAAY,OAAO,GACZ,KAAK,mBAAmB,CAAC;OAClC,KAAK,GAEH,AADA,KAAK,gBAAgB,GAAuB,eAC3C,IAAI,KAAK,aAAc,QAAwB,EAAE,gCAAgC,WAAY,CAAC,GAAG,KAAK,KAAK;OAC9G,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAW,GAAO;KACzB,OAAO,EAAY,MAAM,MAAM,SAAS;IAC1C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAkB,GAAG;IAC1B,OAAO,EAAG,OAAO,IAAI,GAAG,kBAAkB,gBAAgB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,GAAG,CAAC;GACjH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KAC1G,IAAI,GAAG,GAAG,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAIH,OAHA,IAAI,EAAG,OAAO,GACd,IAAI,EAAE,YAAY,2BAA2B,GAC7C,EAAY,OAAO,GACZ,GAAG,kBAAkB,IAAI,EAAE,cAAc,CAAC;OACnD,KAAK,GAEH,AADA,IAAI,EAAY,MACZ,KACF,IAAI,IAAI,EAAE,iBAAiB,GAAG,CAAC,GAC/B,KAAK,UAAU,CAAC,GAAG,KAAK,WAAW,GAAG,EAAE,iBAAiB,KAAK,sBAAsB,EAAE,aAAa,KAC9F,KAAK,MAAM,gCAAgC;OACpD,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO;KACjC,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG;IAC3B,EAAE,cAAc,KAAK,cAAc,KAAK,IAAI,GAAG,EAAE,aAAa,KAAK,aAAa,KAAK,IAAI,GAAG,EAAE,iBAAiB,KAAK,iBAAiB,KAAK,IAAI,GAAG,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,GAAG,EAAE,iBAAiB,KAAK,iBAAiB,KAAK,IAAI;GAC9O;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAC9B,UAAK,WACT;SAAI,IAAwB,GAAG,gBAAgB,QAAQ,KAAK,kBAAkB,EAAE,OAAO,MAAM,KAAK,iBAAiB,CAAC,GAAG,KAAK,aAAa,GACvI,IAAI,EAAsB,mBAC1B,IAAI,EAAsB,iBAC1B,IAAI,EAAsB;KAC5B,GAAG,YAAY,MAAM,MAAM,KAAK,aAAa,GAAG,KAAK,eAAe,GAAG,GAAG,CAAC;IAD/C;GAE9B;EAOF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG;IACjC,IAAI,IAAI,EAAE;IACV,QAAQ,EAAE,QAAV;KACE,KAAK,OAAO,UAAU,aAAa,UACjC;KACF,KAAK,OAAO,UAAU,aAAa,kBACjC,IAAI,EAAE,QAAQ,CAAC,KAAK,WAAW;MAC7B,IAAI,IAAyB,GAAG,gBAAgB,QAAQ,KAAK,kBAAkB,EAAE,MAAM,KAAK,iBAAiB,CAAC,GAAG,KAAK,aAAa,GACjI,IAAI,EAAuB,mBAC3B,IAAI,EAAuB,iBAC3B,IAAI,EAAuB;MAC7B,GAAG,YAAY,MAAM,MAAM,KAAK,aAAa,GAAG,KAAK,eAAe,GAAG,GAAG,CAAC,GAAG,MAAM,OAAO,KAAK,kBAAkB;KACpH;IAEJ;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,EAAE,WAAW,OAAO,UAAU,mBAAmB,SAAS,KAAK,MAAM,EAAE,YAAY;GACrF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA4B;IACjC,GAAG,sBAAsB,gBAAgB,IAAI,GAAG,KAAK,gBAAgB;GACvE;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA4B;IACjC,KAAK,0BAA0B,cAAc,KAAK,sBAAsB,GAAG,KAAK,YAAY,CAAC,GAAG,KAAK,eAAe;GACtH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,IAAI,IAAU;IACd,KAAK,yBAAyB,YAAY,WAAY;KACpD,IAAe,CAAC,CAAC,KAAK,SAAU,GAAG;MACjC,EAAQ,aAAa,EAAQ,SAAS,qBAAsB,GAAuB,KAAK,KAAM;KAChG,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;MACvB,EAAQ,MAAM,CAAC;KACjB,CAAC;IACH,GAAG,GAAG;GACR;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAc,GAAG;IACtB,IAAI;IACJ,CAAC,KAAK,KAAK,0BAA0B,cAAc,KAAK,sBAAsB,GAAG,KAAK,YAAY,CAAC,IAAI,IAAI,KAAK,aAAc,QAAwB,EAAE,+BAA+B,GAAG,KAAK,SAAS,CAAC;GAC3M;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,QAAQ,MAAM,sCAAsC,GAAG,QAAQ,MAAM,qKAAoK,GAAG,KAAK,gBAAgB,qCAAqC;GACxS;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAe,GAAG;IACvB,KAAK,0BAA0B,cAAc,KAAK,sBAAsB,GAAG,QAAQ,MAAM,CAAC,GAAG,KAAK,gBAAgB,CAAC,GAAG,KAAK,KAAK;GAClI;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,WAAkB;GACvB,OAAO,OAAO;EAChB;CACF,CAAC,CAAC;AACJ,EAAEC,GAAG,MACO,GACZ,OAAO,eAAe,IAAI,cAAc,EACtC,OAAO,CAAC,EACV,CAAC;AACD,IAAI,KAAK,IACP,KAAK,IACL,IAAK,IACL,KAAK,IAyCH,KAAK,GAAG,UAxCU,2BAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG;IAC3B,IAAI,GAAG,GACH,IAAI,EAAE,kBAAkB,CAAC,CAAC,KAAK;IACnC,CAAG,IAAI,EAAG,YAAY,YAAa,QAAyB,EAAE,cAAc,KAAK,KAAK,IAAI,MAAM,cAAc,EAAG,eAAe,CAAC,IAAI,MAAM,UAAU,EAAG,WAAW,CAAC,KAAK,QAAQ,MAAM,2DAA2D,IAAI,IAAI,GAAuB,YAAa,QAAwB,EAAE,KAAK,GAAG,2DAA2D;GAC7X;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,EAAG,KAAK,MAAM,EAAG,YAAY,UAAU,IAAI,GAAG,UAAU,GAAG,EAAG,YAAY,QAAQ,MAAM,CAAC;GAC3F;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,OAAO,CAAC,CAAC,GAAG,UAAU,OAAO;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG;IAC5B,IAAI;IACJ,EAAG,KAAK,MAAQ,IAAI,EAAG,YAAY,YAAa,QAAyB,EAAE,oBAAoB,EAAG,YAAY,UAAU,IAAI,GAAG,MAAM,GAAG,EAAG,YAAY,QAAQ,MAAM,CAAC;GACxK;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgB;IACrB,IAAI;IACJ,OAAO,EAAG,YAAY,oBAAoB,IAAI,CAAC,MAAQ,IAAI,EAAG,YAAY,YAAa,QAAyB,EAAE,eAAe,EAAG,YAAY,QAAQ,KAAK,GAAG,CAAC;GACnK;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,EAAG,YAAY,WAAW,GAAG,aAAa,qBAAqB,EAAG,YAAY,OAAO;GACvF;EACF;CAAC,CAAC;AACJ,EAC0B,GACtB,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG;EAEhB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,YAAY,KAAK,KAAK,OAAO,CAAC,GAAG,OAAO,KAAK,aAAa,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,OAAO,KAAK,aAAa,KAAK,YAAY;CACzI;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,IAAI,IAAU;IACd,KAAK,kBAAkB,WAAW,WAAY;KAC5C,IAAI;KACJ,CAAC,IAAI,EAAE,WAAW,QAAQ,EAAE,KAAK,CAAC,GAAG,GAAG,KAAK,GAAG,EAAQ,QAAQ,WAAW,GAAG,GAAG,2BAA2B;IAC9G,GAAG,KAAK,SAAS;GACnB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,KAAK,mBAAmB,aAAa,KAAK,eAAe;GAC3D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG;IACxC,KAAK,oBAAoB,GAAG,KAAK,kBAAkB,GAAG,CAAC;GACzD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG,GAAG;IAC/B,IAAI,KAAK,oBAAoB,GAAG,CAAC,IAAI,KAAK,oBAAoB;GAChE;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAK;CACnC,SAAS,EAAG,GAAG,GAAG,GAAG;EACnB,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAAI,IAAI,EAAQ,EAAE,YAAY,KAAK,WAAW,EAAE,eAAe,CAAC;EAChE,IAAU,EAAW,MAAM,GAAI,CAAC,GAAuB,MAAM,CAAC;EAC9D,IAAI,IAAwB,EAAQ,qBAAqB,GAAG,EAAE,YAAY,GACxE,IAAI,EAAsB,aAC1B,IAAI,EAAsB;EAC5B,IAAI,EAAQ,mBAAmB,GAAG,MAAM,eAAe,CAAC,GAAG,qBAAqB,GAAG,EAAQ,oBAAoB;OAAO;GACpH,IAAI,IAAI,CAAC,EAAE,aAAa,CAAC,EAAE,UAAU;GACrC,EAAQ,WAAW,UAAU,EAAQ,YAAY,KAAK,GAAS,GAAG,GAAG,GAAG,CAAC;EAC3E;EAIA,OAHA,WAAW,WAAY;GACrB,EAAQ,qBAAqB,EAAE;EACjC,CAAC,GACM;CACT;CAGA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IAEI,IAAI,EAAQ,CAAC,KAAK,WAAW,IAAI,CAAC,GACpC,IAAI,EAAQ,EAAE,SAAS,KAAK,WAAW,EAAE,YAAY,CAAC,GACtD,IAAI,EAAE,SAAS,CAAC,GAChB,IAAI,EAAc,EAAc;KAC9B,uBAAgD,EAAE,yBAA8F,KAAK;KACrJ,WAA2B,EAAE,aAAgE,KAAK;KAClG,cAAiC,EAAE,gBAAyE,KAAK;KACjH,UAAyB,EAAE,YAA6D,KAAK;KAC7F,QAAqB,EAAE,UAAuD,KAAK;IACrF,GAAG,CAAC,GAAG,CAAC,GACR,IAAS,EAAE,UAA+B;IAC5C,OAAO,MAAM,EAAE,cAAc,SAAU,GAAG;KACxC,OAAO,EAAE,YAAY,CAAC,CAAC,SAAS,CAAC,KAAK,WAAW,WAAY;MAE3D,OAAY,EAAE,QAA6B,KAAK,CAAC;KACnD,CAAC,GAAG,GAAG,eAAe,GAAG;MACvB,SAAS,CAAC;MACV,eAAe,CAAC;KAClB,KAAK;IACP,IAAI,EAAE,uBAAuB,KAAK,iBAAiB,IAAI,GAAG,EAAE,oBAAoB,EAAE,eAAe,IAAI;KACnG,aAAa,EAAG,eAAe,CAAC;KAChC,iBAAiB;IACnB;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG,GAAG;IACtC,IAAI,IAAU,MACV,IAAI,GAAuB;IAC/B,EAAE,wBAAwB,GAAG,GAAG,OAAO,GAAG,EAAc;KACtD,wBAAwB,CAAC;KACzB,SAAS,IAAI,EAAE,kBAAkB,KAAK;KACtC,SAAS,WAAmB;MAC1B,IAAI;MACJ,EAAQ,QAAQ,IAAI,IAAI,EAAQ,mBAAmB,QAAQ,EAAE,oBAAoB;KACnF;KACA,SAAS,WAAmB;MAC1B,IAAI;MACJ,EAAQ,eAAe,IAAI,IAAI,GAAuB,YAAY,QAAQ,EAAE,KAAK,CAAC;KACpF;KACA,QAAQ,WAAkB;MACxB,IAAI,GAAG,GAAG;MACV,CAAC,IAAI,EAAQ,uBAAuB,QAAQ,EAAE,KAAK,CAAO,IAAI,IAAI,EAAQ,mBAAmB,QAAQ,EAAE,oBAAoB,GAAG,EAAQ,gBAAgB,IAAI,IAAI,GAAuB,WAAW,QAAQ,EAAE,KAAK,CAAC;KAClN;KACA,gBAAgB,SAAwB,GAAG;MACzC,IAAI,GAAG;MACP,CAAC,IAAI,EAAQ,mBAAmB,QAAQ,EAAE,QAAQ,GAAG,GAAG,EAAQ,WAAW,OAAO,IAAI,IAAI,GAAuB,mBAAmB,QAAQ,EAAE,KAAK,GAAG,CAAC;KACzJ;KACA,aAAa,SAAqB,GAAG,GAAG;MACtC,IAAI;MACJ,CAAC,IAAI,GAAuB,gBAAgB,QAAQ,EAAE,KAAK,GAAG,GAAG,CAAC;KACpE;KACA,UAAU,SAAkB,GAAG,GAAG;MAChC,IAAI,GAAG,GAAG;MACV,OAAO,IAAI,EAAQ,uBAAuB,QAAQ,EAAE,KAAK,CAAO,KAAK,IAAI,EAAQ,mBAAmB,QAAQ,EAAE,oBAAoB,GAAG,EAAQ,WAAW,OAAO,IAAI,IAAI,GAAuB,aAAa,QAAQ,EAAE,KAAK,GAAG,GAAG,CAAC;KACnO;KACA,sBAAsB,SAA8B,GAAG;MACrD,IAAI;MACJ,EAAQ,qBAAqB,CAAC,IAAI,IAAI,GAAuB,yBAAyB,QAAQ,EAAE,KAAK,GAAG,CAAC;KAC3G;IACF,GAAG,CAAC,CAAC;GACP;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG;IACtC,IAAI,KAAK,oBAAoB,IAAI,KAAK,eAAe;GACvD;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmB;IACxB,KAAK,iBAAiB,gBAAgB,oBAAoB;GAC5D;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAwB,GAAG;GAChC,OAAO,EAAE,QAAQ,UAAU;EAC7B;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAiC,GAAG;GACzC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,IAAY,UAAU,KAAK,CAAC;GAC7E,EAAE,MAAM,GAAG,KAAK,WAAW,WAAY;IACrC,OAAO,EAAE,MAAM;GACjB,GAAG,EAAG,2BAA2B;EACnC;CACF,CAAC,CAAC;AACJ,EAAE,EAAE;AACJ,GAAG,8BAA8B;AACjC,IAAI,KAAK,IACL,KAAkB,yBAAY;CAEhC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG;EACtB,IAAI,IAAU;EAEd,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,eAAe,CAAC,GAAG,KAAK,kBAAkB,IAAI,KAAK,kBAAkB,IAAI,EAAE,qBAAqB,KAAK,kBAAkB,EAAE,mBAAmB,KAAK,0BAA0B,GAAG,KAAK,+BAA+B,GAAG,EAAE,oBAAoB,KAAK,kBAAkB,EAAE,kBAAkB,WAAW,WAAY;GAChT,EAAQ,qBAAqB,EAAE;EACjC,CAAC;CACH;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,OAAO,EAAG,gBAAgB,GAAG,KAAK,eAAe,KAAK,KAAK,yBAAyB,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;GACxG;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG,GAAG;IAChD,IAAI,IAAI,EAAG,gBAAgB,CAAC;IAC5B,IAAI,MAAM,SAAS;KACjB,IAAI,IAAI,EAAG,sBAAsB,CAAC;KAClC,KAAK,kBAAkB,GAAG,SAAS,GAAG,CAAC;IACzC,OAAO,IAAI,MAAM,SAAS;KACxB,IAAI,IAAM,GAAG,sBAAsB,CAAC;KACpC,KAAK,kBAAkB,GAAG,SAAS,GAAK,CAAC;IAC3C,OAAO;KACL,IAAI,IAAM,EAAG,wBAAwB,EAAE,IAAI;KAC3C,KAAK,kBAAkB,GAAG,OAAO,GAAK,CAAC;IACzC;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG,GAAG,GAAG;IAC5C,IAAI,GACA,IAAI,EAAG,gBAAgB,CAAC;IAC5B,IAAI,KAAK,aAAa,UAAU,KAAK,iBAAiB;KAEpD,KADa,aAAa,KAAK,aAAa,SAAS,EAAE,CAAC,cACzC,MAAM;KACrB,IAAI,IAAI,KAAK,6BAA6B;KAC1C,KAAK,6BAA6B,aAAa,GAAG,EAAE,EAAE;IACxD,OAAO,KAAK,6BAA6B,YAAY,CAAC;IACtD,IAAI,IAAI;KACN,MAAM;KACN,4BAA4B;KAC5B,UAAU;IACZ;IACA,OAAO,MAAM,EAAE,eAAe,KAAK,6BAA6B,CAAC,GAAG,EAAE,YAAY,EAAE,YAAY,IAAI,KAAK,wBAAwB,CAAC,CAAC,GAAG,KAAK,aAAa,KAAK,CAAC,GAAG,KAAK,6BAA6B,YAAY,KAAK,6BAA6B,eAAe,IAAI,KAAK,uBAAuB,QAAQ,EAAE,KAAK,IAAI,GAAG;GACxT;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsC,GAAG;IAC9C,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,+BAA+B,GAAG,EAAE,UAAU,KAAK,iBAAiB,KAAK,MAAM,CAAC;IAChG,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,QAAQ,GAAG,EAAE,YAAY,KAAK,EAAE,YAAY,CAAC,GAAG;GACzE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,IAAI,GACA,IAAI,KAAK,aAAa,UAAU,SAAU,GAAG;KAC7C,OAAO,MAAM;IACf,CAAC,GACD,IAAI,KAAK,aAAa,EAAE,CAAC;IAC3B,KAAK,aAAa,OAAO,GAAG,CAAC,GAAG,GAAG,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,wBAAwB,CAAC,CAAC,IAAI,IAAI,KAAK,uBAAuB,QAAQ,EAAE,KAAK,IAAI;GAClK;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAoB;IACzB,OAAO,MAAM,KAAK,KAAK,YAAY,CAAC,CAAC,IAAI,SAAU,GAAG;KACpD,OAAO;MACL,MAAM,EAAE;MACR,MAAM,EAAE;KACV;IACF,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,KAAK,aAAa,QAAQ,SAAU,GAAG;KACrC,WAAW,WAAY;MAErB,OAAY,EAAE,cAAmC,MAAM;KACzD,CAAC;IACH,CAAC;GACH;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,IAAI,MAAM,IAAI,OAAO,CAAC;IAEtB,KAAK,IADD,IAAI,EAAE,MAAM,GAAG,GACV,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;KACjC,IAAI,IAAI,EAAE,EAAE,CAAC,KAAK;KAClB,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;KAC1B,IAAI,EAAE,WAAW,GAAG,GAAG;MACrB,IAAI,IAAI,EAAE,MAAM,CAAC;MACjB,IAAI,EAAE,KAAK,SAAS,CAAC,GAAG,OAAO,CAAC;KAClC,OAEE,IADI,EAAE,KAAK,SAAS,CAAC,KACjB,EAAE,SAAS,IAAI,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC;IAEvE;IACA,OAAO,CAAC;GACV;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,IAAI,IAAI,EAAE;IACV,OAAO,EAAE,WAAW,OAAO,IAAI,UAAU,EAAE,WAAW,OAAO,IAAI,UAAU;GAC7E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,IAAI,IAAI,IAAI,MAAM;IAClB,OAAO,EAAE,MAAM,GAAG,EAAE,UAAU,IAAI,kBAAkB,GAAG;GACzD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiC,GAAG;IACzC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,yBAAyB,GAAG,GAAG,aAAa,EAAE,UAAU,IAAI,gCAAgC;IAC5G,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,0BAA0B;IAC1C,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,gCAAgC,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,cAAc,GAAG,EAAE,YAAY,CAAC,GAAG;GACnH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,iBAAiB,GAAG,EAAE,YAAY,CAAC,GAAG;GAC/D;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAK,+ZACP,KAAK,yVACL,KAAkB,uBAAU,GAAK;CAE/B,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG;EAEtB,OADA,EAAgB,MAAM,CAAE,GACjB,EAAW,MAAM,GAAI;GAAC;GAAG;GAAG;GAAG;EAAC,CAAC;CAC1C;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI,IAAU,MACV,IAAI,GACJ,IAAI,MAAM,KAAK,KAAK,IAAI,EAAG,gBAAgB,IAAI,EAAG;IACtD,OAAO,YAAY,WAAY;KAC7B,IAAI;KAIJ,AAHA,KAAK,GAAG,MAAM,OAAO,IAAI,EAAQ,4BAA4B,QAAQ,EAAE,KAAK,CAAO,GAAG,EAAQ,WAAW,IAAI,MAAM,OAAO,EAAE,UAAU,IAAI,iCAAiC,GAG3K,EAAE,cAAc,GAFR,KAAK,MAAM,IAAI,EAEG,MADnB,IAAI,GAAA,CAAI,SAAS,CAAC,CAAC,SAAS,GAAG,GACG;IAC3C,GAAG,GAAG;GACR;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0C,GAAG;IAClD,IAAI,IAAI,EAAG,qBAAqB,GAC9B,IAAI,SAAS,cAAc,KAAK;IAClC,EAAE,UAAU,IAAI,iCAAiC;IACjD,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,kCAAkC,2CAA2C,GAAG,EAAE,YAAY,CAAC;IAC/G,IAAI,IAAI,EAAG,iBAAiB,EAAE;IAC9B,OAAO,EAAE,UAAU,IAAI,mBAAmB,aAAa,+BAA+B,GAAG,EAAE,cAAc,QAAQ,KAAK,0BAA0B,KAAK,YAAY,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,KAAK,oCAAoC,GAAG,GAAG,CAAC,GAAG;GAC/O;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6C,GAAG,GAAG,GAAG;IAC3D,IAAI,IAAU;IAad,AATA,EAAE,iBAAiB,cAAc,WAHZ;KACnB,OAAO,EAAE,gBAAgB,CAAC;IAC5B,CACkC,GAIlC,EAAE,iBAAiB,cAAc,WAHZ;KACnB,OAAO,EAAE,gBAAgB,CAAC;IAC5B,CACkC,GAKlC,EAAE,iBAAiB,SAAS,WAJP;KAEnB,OAAY,EAAQ,yBAA8C,KAAK,CAAO;IAChF,CAC6B;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAkC,GAAG,GAAG;IAC7C,IAAI,IAAI,KAAK,iCAAiC,CAAC;IAC/C,KAAK,+BAA+B,KAAK,kBAAkB,IAAI,KAAK,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,0BAA0B;GAC/H;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAuC,GAAG,GAAG;IAClD,IAAI,IAAI,KAAK;IACb,MAAM,EAAE,OAAO,GAAG,EAAG,iBAAiB,EAAE,2BAA2B,SAAS,IAAI,CAAC,GAAG,EAAE,eAAe,KAAK,6BAA6B,CAAC,GAAG,EAAE,2BAA2B,YAAY,EAAE,YAAY,GAAG,KAAK,+BAA+B,KAAK,GAAG,KAAK,WAAW;GACnQ;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAuC;IAC5C,KAAK,iCAAiC,KAAK,iBAAiB,KAAK,4BAA4B,GAAG,KAAK,+BAA+B,KAAK,GAAG,KAAK,WAAW;GAC9J;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAsB;IAC3B,KAAK,4BAA4B,KAAK,MAAM,cAAc,KAAK,uBAAuB,GAAG,KAAK,0BAA0B,KAAK,GAAG,KAAK,0BAA0B,KAAK;GACtK;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,WAAgC;IACrC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,2BAA2B,iCAAiC,GAAG,GAAG,aAAa,EAAE,UAAU,IAAI,gCAAgC,GAAG;GAC3J;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG;IACrC,IAAI,IAAI,EAAE,gBAAgB,EAAE,aAAa,CAAC,IAAI,GAC5C,IAAI,SAAS,cAAc,OAAO;IACpC,EAAE,MAAM;IACR,IAAI,IAAI,EAAG,iBAAiB,EAAE;IAC9B,EAAE,UAAU,IAAI,mBAAmB,WAAW;IAC9C,IAAI,IAAI,EAAG,iBAAiB,EAAE;IAC9B,EAAE,UAAU,IAAI,mBAAmB,WAAW,GAAG,EAAE,gBAAgB,CAAC,GAAG,EAAE,SAAS,WAAY;KAC5F,EAAE,gBAAgB,CAAC;IACrB,GAAG,EAAE,UAAU,WAAY;KACzB,EAAE,gBAAgB,CAAC,GAAG,EAAE,cAAc;IACxC,GAAG,EAAE,UAAU,WAAY;KACzB,EAAE,gBAAgB,CAAC;IACrB,GAAG,EAAE,UAAU,WAAY;KACzB,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE,MAAM;IAChC;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA+B,GAAG;IACvC,IAAI,IAAI,EAAG,qBAAqB;IAChC,OAAO,EAAG,iBAAiB,GAAG,CAAC,GAAG;GACpC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG;IACxC,IAAU;IACV,CAAC,IAAc,EAAE,SAAS,EAAA,EAAyB,WAA+B,OAAO,QAAQ,EAAE,UAAU,SAAS,WAAW,KAAK,EAAE,SAAS,EAAE,CAAC,MAAM;GAC5J;EACF;CAAC,CAAC;AACJ,EAAE,EAAE;AACN,GAAG,gBAAgB;AACnB,IAAI,KAAK,IACL,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAEA,SAAgB,GAAG,GAAG,GAAG,GAAG,GAAG;GAC7B,OAAO,MAAM,UAAU,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC;EAC/D;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG;EAEnB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,wBAAwB,CAAC,GAAG,KAAK,aAAa,KAAK,0BAA0B;EAClF,IAAI,IAAI,EAAQ,CAAC,KAAK,YAAY,CAAC,CAAC,EAAE;EACtC,KAAK,uBAAuB,CAAC,GAAG,EAAE,YAAY,KAAK,UAAU,GAAG,KAAK,OAAO,OAAO,KAAK,WAAW,OAAO,CAAC;CAC7G;CAEA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAiB,GAAG,GAAG,GAAG;IAC/B,IAAI,IAAI,GAAG,OAAO,GAAG,GAAG,KAAK,uBAAuB,KAAK,IAAI,GAAG,KAAK,YAAY,CAAC;IAClF,OAAO,KAAK,sBAAsB,KAAK,CAAC,GAAG;GAC7C;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAqC;IAC1C,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,6BAA6B;GAC7C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAgC,GAAG;IACxC,IAAI,KAAK,WAAW,MAAM,UAAU,UAAU,KAAK,WAAW,SAAS,WAAW,MAAM,KAAK,WAAW,MAAM,UAAU;GAC1H;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,IAAI,IAAI,KAAK,sBAAsB,IAAI,SAAU,GAAG;KAClD,OAAO,EAAE,SAAS;IACpB,CAAC,CAAC,CAAC,KAAK;IACR,OAAO,EAAE,SAAS,IAAI,IAAI,KAAK;GACjC;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAwB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAa;KAC3G,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAEH,OADA,EAAY,OAAO,GACZ,QAAQ,IAAI,KAAK,sBAAsB,IAAkB,yBAAY;QAC1E,IAAI,IAAS,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;SAE7F,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;UAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;WACR,KAAK,GACH,OAAO,EAAY,OAAO,UAAe,EAAE,yBAA8C,KAAK,CAAC,CAAC;WAClG,KAAK;WACL,KAAK,OACH,OAAO,EAAY,KAAK;UAC5B;SACF,GAAG,CAAU;QACf,CAAC,CAAC;QACF,OAAO,SAAU,GAAO;SACtB,OAAO,EAAO,MAAM,MAAM,SAAS;QACrC;OACF,EAAE,CAAC,CAAC;OACN,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,IAAuB;KAC9B,OAAO,EAAsB,MAAM,MAAM,SAAS;IACpD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,EAAG,eAAe,GAAG,KAAK,qBAAqB;GACjD;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA0B;IAC/B,KAAK,sBAAsB,QAAQ,SAAU,GAAG;KAC9C,OAAO,EAAE,qBAAqB;IAChC,CAAC,GAAG,KAAK,WAAW,gBAAgB,GAAG,KAAK,uBAAuB,CAAC,CAAC;GACvE;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA4B;IACjC,OAAO,KAAK,sBAAsB;GACpC;EACF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAAwB,GAAG,GAAG;GACnC,EAAE,QAAQ,SAAU,GAAG;IACrB,IAAI,IAAI,IAAI,WAAW;IACvB,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,SAAU,GAAG;KAC1C,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,eAAe,GAAG,EAAE,OAAO,MAAM,GAAG,KAAK;IACjF;GACF,CAAC;EACH;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG;EAEnB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,UAAU,CAAC,GAAG,KAAK,cAAc,EAAG,mBAAmB,GAAG,GAAuB,eAAe,GAAG,KAAK,eAAe,EAAG,kBAAkB,GAAuB,eAAe,GAAG,KAAK,cAAc,EAAG,gBAAgB,KAAK,aAAa,CAAC,GAAG,KAAK,YAAY,YAAY,KAAK,YAAY,GAAG,EAAE,YAAY,KAAK,WAAW,GAAG,KAAK,sBAAsB,EAAG,0BAA0B,GAAG,EAAE,YAAY,KAAK,mBAAmB,GAAG,KAAK,gBAAgB,CAAC;CACpc;CACA,OAAO,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,WAAkB;IACvB,OAAO,KAAK;GACd;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAsB;IAC3B,IAAI,IAAU;IAId,IAFa,SAEb,CAAA,CAAE,QAAQ,SAAU,GAAG;KACrB,OAAO,EAAQ,aAAa,YAAY,CAAC;IAC3C,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAiB;IACtB,IAAI,IAAU;IACd,KAAK,YAAY,UAAU,OAAO,YAAY,GAAG,KAAK,YAAY,UAAU,IAAI,YAAY,GAAG,KAAK,oBAAoB,UAAU,OAAO,uBAAuB,GAAG,KAAK,oBAAoB,UAAU,IAAI,uBAAuB,GAAG,KAAK,UAAU,CAAC,GAAG,WAAW,WAAY;KAC5Q,EAAQ,YAAY,MAAM,UAAU,QAAQ,EAAQ,oBAAoB,MAAM,UAAU;IAC1F,GAAG,EAAG,sBAAsB;GAC9B;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,KAAK,YAAY,MAAM,UAAU,QAAQ,KAAK,YAAY,UAAU,OAAO,YAAY,GAAG,KAAK,YAAY,UAAU,IAAI,YAAY,GAAG,KAAK,oBAAoB,MAAM,UAAU,SAAS,KAAK,oBAAoB,UAAU,OAAO,uBAAuB,GAAG,KAAK,oBAAoB,UAAU,IAAI,uBAAuB,GAAG,KAAK,UAAU,CAAC;GACjV;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,KAAK,YAAY,YAAY,GAAG,KAAK,qBAAqB;GAC5D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG,GAAG;IACtC,IAAI,IAAU,MACV,IAAI,IAAI,EAAG,gBAAgB,CAAC,IAAI,EAAG,iBAAiB,CAAC;IACzD,OAAO,KAAK,WAAW,CAAC,GAAG,EAAE,UAAU,WAAY;KACjD,EAAQ,MAAM,GAAG,WAAW,WAAY;MACtC,IAAe;KACjB,GAAG,GAAG;IACR,GAAG;GACL;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,KAAK,eAAe,KAAK,cAAc,KAAK,MAAM,CAAC,GAAG,OAAO,iBAAiB,WAAW,KAAK,YAAY;GAC5G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IAAI,GAAG;IACP,CAAC,EAAE,eAAe,KAAK,eAAe,OAAO,oBAAoB,WAAW,KAAK,YAAY,IAAI,KAAK,YAAY,EAAE,QAAQ,EAAE,UAAU,KAAK,MAAM,IAAI,IAAI,KAAK,2BAA2B,QAAQ,EAAE,KAAK,IAAI,KAAK,EAAE,QAAQ,EAAE,UAAU,KAAK,MAAM,IAAI,IAAI,KAAK,2BAA2B,QAAQ,EAAE,KAAK,IAAI;GACjT;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG;IACpC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,OAAO,GAAG,EAAE,YAAY,CAAC,GAAG,KAAK,OAAO,EAAE,iBAAiB,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG;GAC/G;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4B,GAAG,GAAG;IACvC,IAAI,GACA,IAAI,SAAS,cAAc,KAAK;IACpC,QAAQ,IAAe,EAAE,UAAA,CAAW,IAAI,MAAM,GAAc,EAAmB,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,kBAAkB,IAAI,SAAS,cAAc,KAAK,CAAC,CAAC,YAAY,CAAC,GAAG;GACxK;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG;IACnC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,oBAAoB,GAAG,MAAM,EAAE,MAAM,kBAAkB,IAAI;GACpF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAqC;IAC1C,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,0BAA0B;GAC1C;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG;IAClC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,cAAc,GAAG,EAAE,cAAc,GAAG;GAC7D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,EAAE,UAAU,IAAI,gBAAgB,kBAAkB;IAClD,IAAI,IAAI,EAAG,iBAAiB,CAAC;IAC7B,OAAO,EAAE,UAAU,IAAI,uBAAuB,GAAG,EAAE,YAAY,CAAC,GAAG;GACrE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG,GAAG;IAC3C,IAAI;IACJ,IAAI,EAAQ,CAAC,KAAK,aAAa,IAAI,EAAE,UAAU,QAAQ,EAAE,WAAW;KAClE,IAAI,IAAI,IAAI,EAAG,GAAG,CAAC,eAAe,GAAG,EAAE,MAAM,UAAU,cAAc;KACrE,OAAO,EAAE,eAAe,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,KAAK,GAAG,EAAE,uBAAuB,EAAE;IAC3F;GACF;EACF;CAAC,CAAC;AACJ,EAAE;AACF,GAAG,yBAAyB;AAC5B,IAAI,KAAK,IACL,KAAkB,uBAAU,GAAM;CAEpC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EAC5B,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IAA4B,GACxB,IAAS,GAAuB,QAA6B,UAC/D,IAAoB,GAAuB,QAA6B,QAA6B,MAA2B,WAAY;EAC9I,IAAU,EAAW,MAAM,GAAI;GAAC,EAAG,oBAAoB;GAAG;GAAG,EAAE;GAAQ;EAAC,CAAC;EACzE,IAAI,IAAI,MAAM,eACZ,IAAI,EAAQ,oBAAoB,GAAG,GAAG,EAAQ,eAAe,CAAC;EAEhE,OADA,EAAQ,gBAAgB,EAAG,mBAAwB,GAAuB,OAA4B,eAAe,GAAG,EAAQ,cAAc,GAAG,CAAC,GAAG,EAAQ,WAAW,gBAAgB,EAAE,MAAM,GAAG,EAAQ,kBAAkB,QAAQ,GAAG,EAAQ,uBAAuB,GAAG,EAAQ,iBAA4B,EAAE,OAA4B,WAAgC,kBAAmB,CAAC,MAAM,IAAS,EAAE,OAA4B,cAAc,OAAO,KAAK,IAAI,EAAE,eACtc;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG,GAAG;IAC3C,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU,IACnE,IAAI,EAAG,qBAAqB,GAAG,CAAC;IACpC,OAAO,EACL,QAAQ,GAAE,mBAAmB,KAAK,YAAY,GAAG,UAAU,GAAG,CAAC,EACjE;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,EAAE,WAAW,KAAK,OAAU,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM;GACrD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,GAAG,eAAe,MAAM,KAAK,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,KAAK,oBAAoB,CAAC,GAAG,EAAE,QAAQ;GACvF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG,GAAG;IAClC,IAAI,IAAI,KAAK,oBAAoB,KAAK,MAAM,KAAK,aAAa,GAC5D,IAAI,GAAG,oBAAoB,GAAG,GAAG,CAAC;IACpC,KAAK,WAAW,UAAU,KAAK,MAAM,KAAK,MAAM,CAAC;GACnD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAe,GAAG;IACvB,MAAM,KAAK,mBAAmB,KAAK,KAAK,KAAK,mBAAmB,CAAC,MAAM,EAAE,GAAG,KAAK,mBAAmB,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM,KAAK,oBAAoB,KAAK,aAAa;GACrL;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IAAI,IAAI,SAAS,cAAc,OAAO;IACtC,OAAO,EAAE,OAAO,QAAQ,EAAE,SAAS,KAAK,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG;GAC9E;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,gBAAgB,oBAAoB,GAAG;GAChE;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA8B,GAAG,GAAG;IACzC,IAAI,IAAI,EAAG,iBAAiB,CAAC;IAC7B,OAAO,EAAE,KAAK,GAAG;GACnB;EACF;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG;IAC9B,IAAI,IAAI,EAAG,cAAc,CAAC;IAC1B,EAAG,UAAU,GAAG,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC;GACxC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAuB,GAAG;IAC/B,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,iBAAiB,EAAQ,CAAC,KAAK,YAAY,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG;GACtF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG,GAAG;IACjC,EAAE,cAAc,SAAU,GAAG;KAC3B,EAAE,eAAe,GAAG,EAAG,QAAQ,CAAC;IAClC,GAAG,EAAE,cAAc,SAAU,GAAG;KAC9B,EAAE,eAAe,GAAG,EAAG,KAAK,CAAC;IAC/B,GAAG,EAAE,aAAa,SAAU,GAAG;KAC7B,EAAE,eAAe;IACnB,GAAG,EAAE,SAAS,SAAU,GAAG;KACzB,EAAE,eAAe,GAAG,EAAG,WAAW,GAAG,CAAC,GAAG,EAAG,KAAK,CAAC;IACpD;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG,GAAG;IAC/B,IACI,IAAS,EAAE,cAAmC;IAClD,KAAK,EAAE,kBAAkB,MAAM,KAAK,CAAC,CAAC;GACxC;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,EAAE,MAAM,UAAU;GACpB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAc,GAAG;IACtB,EAAE,MAAM,UAAU;GACpB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmB,GAAG,GAAG;IAC9B,OAAO,MAAM,KAAK,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,iBAAiB,IAAI;GACvE;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAEA,SAAkB,GAAG,GAAG,GAAG,GAAG,GAAG;IAC/B,IAAI,IAAI,EAAE,GAAG,GAAG,CAAC;IACjB,OAAO,IAAI,EAAE,mBAAmB,IAAI,EAAE,qBAAqB,GAAG;GAChE;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAqB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG,GAAG,GAAG;KAClH,IAAI,GAAG,GAAG,GAAG;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAGH,OAFA,IAAI,EAAE,iBAAiB,IAAI,EAAE,UAAU,SAAS,GAAG,sBAAsB,IAAI,KAAK,EAAE,aACpF,EAAY,OAAO,GACZ,EAAE,qBAAqB;OAChC,KAAK,GAIH,OAHA,IAAI,EAAE,eAAe,GAAG,IAAI,GAAuB,IAAI,SAAU,GAAG;QAClE,OAAO,EAAE;OACX,CAAC,GACM,EAAY,OAAO,UAAU,EAAG,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC;OAC7D,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAkB,GAAO,GAAO,GAAO,GAAO;KACrD,OAAO,EAAmB,MAAM,MAAM,SAAS;IACjD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAiC,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG,GAAG,GAAG;KAC3H,IAAO;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAIH,OAHA,IAAS,EAAE,OAA4B,IAAI,SAAU,GAAG;QACtD,OAAO,EAAE;OACX,CAAC,GACM,EAAY,OAAO,UAAU,EAAG,SAAS,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;OACtE,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAA8B,GAAO,GAAO,GAAO;KAC1D,OAAO,EAA+B,MAAM,MAAM,SAAS;IAC7D;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,OAAO,EAAE,aAAa,CAAC,GAAE,eAAe,EAAE,SAAS,KAAK,EAAE,qBAAqB,GAAG,CAAC,KAAK,CAAC;GAC3F;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAgB,GAAG,GAAG,GAAG,GAAG,GAAG;IACpC,IAAI,IAAI,EAAE,iBAAiB,EAAG,qBAAqB,CAAC;IACpD,EAAE,qBAAkC,yBAAY;KAC9C,IAAI,IAAS,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;MAC7F,IAAI;MACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;OAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;QACR,KAAK;SACH,IAAI,EAAE,EAAE,OAAO,iBAAiB,EAAE,OAAO,qBAAqB,EAAE,qCAAqC,CAAC,KAAK,CAAC,EAAG,kBAAkB,GAAG,CAAC,IAAI;UACvI,EAAY,OAAO;UACnB;SACF;SACA,OAAO,EAAY,OAAO,UAAU,CAAC,CAAC;QACxC,KAAK,GAEH,OADA,IAAI,KAAK,EAAE,gBACJ,EAAY,OAAO,UAAU,IAAI,IAAI,EAAG,8BAA8B,GAAG,GAAG,CAAC,IAAI,EAAG,kBAAkB,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI;QACjI,KAAK;QACL,KAAK,OACH,OAAO,EAAY,KAAK;OAC5B;MACF,GAAG,CAAU;KACf,CAAC,CAAC;KACF,OAAO,SAAU,GAAO;MACtB,OAAO,EAAO,MAAM,MAAM,SAAS;KACrC;IACF,EAAE;GACJ;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAqB,GAAG,GAAG;GAChC,IAAI,oBAAmB,IAAI,KAAK;GAIhC,OAAO,GAAU,KAHX,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,GAAG,GAGP,KAF1B,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,GAAG,GAEM,KADzC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,GAAG,GACqB,KAAe;EAC/E;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG,GAAG;EAChB,IAAI;EAIJ,OAHA,EAAgB,MAAM,CAAE,GAExB,IAAU,EAAW,MAAM,GAAI,CAAC,EAAE,MAAM,CAAC,GAAG,EAAQ,6BAA6B,CAAC,GAAG,EAAQ,aAAa,GAAG,EAAQ,aAAmB,EAAE,OAA4B,UAAW,OAAO,EAAQ,sBAA2B,EAAE,OAA4B,oBAAoB,EAAQ,WAAW,UAAU,EAAQ,YAAY,KAAK,EAAuB,CAAO,CAAC,GAC3V;CACT;CAEA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,WAAuB;IAC5B,KAAK,+BAA+B,KAAK,WAAW,KAAK,KAAK,KAAK,KAAK,6BAA6B,CAAC,GAAG,KAAK,OAAO;GACvH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgB;IACrB,IAAI,IAAU;IACd,OAAO,IAAI,QAAQ,SAAU,GAAG;KAC9B,IAAI,GAAG;KACP,EAAQ,gBAAgB,IAAI,IAAI,EAAQ,mBAAmB,QAAQ,EAAE,KAAK,IAAI,IAAI,EAAQ,iBAAiB,QAAQ,EAAE,UAAU,CAAC,CAAC,QAAQ,SAAU,GAAG;MACpJ,OAAO,EAAE,KAAK;KAChB,CAAC,GAAG,WAAW,WAAY;MACzB,EAAE;KACJ,GAAG,EAAE;IACP,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAkB;IACvB,IAAI,IAAU;IACd,UAAU,aAAa,aAAa,EAClC,OAAO,CAAC,EACV,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KACnB,EAAQ,eAAe,GAAG,EAAQ,iBAAiB,IAAI,cAAc,CAAC,GAAG,EAAQ,WAAW,yBAAyB,EAAQ,KAAK,KAAK,CAAO,GAAG,EAAQ,mBAAmB,GAAG,EAAQ,eAAe,GAAG,EAAQ,eAAe,iBAAiB,iBAAiB,SAAU,GAAG;MAC7Q,EAAQ,WAAW,CAAC;KACtB,CAAC,GAAG,EAAQ,eAAe,MAAM;IACnC,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;KACvB,QAAQ,MAAM,CAAC,GAAG,EAAQ,KAAK;IACjC,CAAC,CAAC,CAAC,QAAW,WAAY;KACxB,EAAQ,6BAA6B,CAAC;IACxC,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAoB,GAAG;IAC5B,IAAI,IAAU,MACV,IAAI,IAAI,KAAK,CAAC,EAAE,IAAI,GAAG,EACvB,MAAM,SAAgB,KAAK,aAC7B,CAAC,GACD,IAAI,GAAG,YAAY,KAAK,kBAAkB,SAAS,KAAK,UAAU,GAClE,IAAI,IAAI,KAAK,CAAC,CAAC,GAAG,GAAG,EACnB,MAAM,EAAE,KACV,CAAC,GACD,IAAI,IAAI,WAAW;IACrB,EAAE,cAAc,CAAC,GAAG,EAAE,SAAS,SAAU,GAAG;KAC1C,EAAQ,WAAW,8BAA8B,GAAG,EAAE,OAAO,MAAM;IACrE;GACF;EACF;CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAK,0cACL,KAAiB,yBAAY;CAC/B,SAAS,IAAI;EACX,EAAgB,MAAM,CAAC;CACzB;CACA,OAAO,EAAa,GAAG,MAAM;EAAC;GAC5B,KAAK;GACL,OAAO,SAAwC,GAAG,GAAG,GAAG;IACtD,IACI,IAAI,EAAE;IACV,EAAE,WAAW,IAAY,EAAE,OAAyC,EAAE,KAAK,MAAc,EAAE,OAA2C,EAAE,KAAK,CAAC,IAAG,EAAE,MAAM,GAAG,EAAE,+BAA+B,EAAE,IAAI,GAAG,CAAC;GACzM;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA0B,GAAG,GAAG,GAAG;IACxC,IACI,IAAI,EAAE;IACV,EAAE,WAAW,IAAI,EAAE,KAAK,KAAc,EAAE,OAA2C,EAAE,KAAK,CAAC,IAAG,EAAE,MAAM,GAAG,EAAE,iBAAiB,EAAE,IAAI,GAAG,CAAC;GACxI;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG,GAAG;IACnC,IACE,IAAI,EADE,EAAE;IAEV,OAAO,MAAM,KAAK,KAAK,EAAE,WAAW,IAAI,IAAI,EAAE,eAAe,GAAG,EAAE,MAAM,CAAC,CAAC;GAC5E;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA4C,GAAG,GAAG,GAAG;IAC1D,IAAI,IAAI,EAAE,eAAe,GAAG,CAAC;IAC7B,IAAI,GAAG;KACL,IAAI,IAAI,EAAc,EAAc,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,GAAG,CAAC,KAAK,CAAC,CAAC;KACxE,EAAE,iBAAiB,GAAG,GAAG,CAAC;IAC5B;GACF;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM;EAAC;GAC7B,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG;IAChC,IAAI,EAAE,uBAAuB,CAAC,WAAW,QAAQ,CAAC,IAAI,EAAE,uBAAuB;KAAC;KAAQ;KAAW;IAAQ,CAAC,GAAG,EAAE,kBAAkB,QAAQ;GAC7I;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyC,GAAG,GAAG;IAC/C,MAAE,QACP;SAAI,IAAI,KAAK,MAAM,KAAK,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;KAC7C,GAAE,mCAAmC,GAAG,EAAE,QAAQ,CAAC,aAAa,SAAS,CAAC,GAAG,GAAE,mCAAmC,GAAG,EAAE,QAAQ;MAAC;MAAQ;MAAU;KAAS,CAAC,GAAG,GAAE,mCAAmC,GAAG,EAAE,QAAQ;MAAC;MAAO;MAAU;KAAS,CAAC,GAAG,EAAE,KAAK;IAD1M;GAE/C;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG;IACrC,GAAE,+BAA+B,GAAG;KAAC;KAAU;KAAa;KAAW;IAAiB,GAAG,EAAE,GAAG,GAAE,+BAA+B,GAAG;KAAC;KAAY;KAAa;KAAW;IAAiB,GAAG,OAAO,GAAG,GAAE,+BAA+B,EAAE,QAAQ;KAAC;KAAO;KAAU;KAAW;IAAQ,GAAG,EAAE,GAAG,GAAE,+BAA+B,EAAE,UAAU;KAAC;KAAO;KAAU;KAAW;IAAQ,GAAG,sHAAsH,GAAG,EAAG,gCAAgC,GAAG,UAAU;GAC/hB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAiB,GAAG;IACzB,IAAI,IAAI,KAAK,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,CAAC;IAC1C,OAAO,EAAG,gCAAgC,GAAG,SAAS,GAAG,EAAG,gCAAgC,GAAG,MAAM,GAAG,KAAK,QAAQ,EAAE,iBAAiB,EAAG,oBAAoB,CAAC,GAAG;GACrK;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAiB,uBAAU,GAAM;CAEnC,SAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;EAC3B,IAAI;EACJ,EAAgB,MAAM,CAAC;EACvB,IAAI,IAAI,GAAG,QAAQ,EAAE,kBAAkB;EAUvC,OATA,IAAU,EAAW,MAAM,GAAG;GAAC,EAAE,6BAA6B;GAAG,GAAuB;GAAU;EAAC,CAAC,GAAG,EAAQ,6BAA6B,CAAC,GAAG,EAAQ,SAAS;GAC/J,mBAAmB,CAAC;GACpB,eAAe,CAAC;EAClB,GAAG,EAAQ,YAAY,GAAG,EAAQ,mBAAmB,GAAG,EAAQ,mBAAmB,GAAG,EAAQ,iBAAiB,EAAQ,oBAAoB,GAAG,EAAQ,eAAe,IAAI,gBAAgB,GAAG,EAAQ,eAAe,EACjN,UAAU,WAAoB,CAAC,EACjC,GAAG,EAAQ,aAAa,GAAG,EAAQ,iBAAiB,CAAC,EAAE,KAAK,QAAQ,EAAE,gBAAgB,EAAE,sBAAsB,EAAQ,oBAAoB,KAAK,EAAuB,CAAO,GAAG,CAAC,GAAG,EAAQ,6BAA6B,CAAC,GAAG,EAAE,cAAc,EAAQ,kBAAkB,EAAE,WAAW,QAAQ,EAAE,YAAY,GAAG,WAAW,WAAY;GAClU,IAAI;GACJ,EAAQ,qBAAqB,EAAE,oBAAoB,EAAQ,eAAe,EAAQ,kBAAkB,IAAI,IAAI,EAAQ,uBAAuB,QAAQ,EAAE,KAAK,EAAuB,CAAO,CAAC;EAC3L,CAAC,GACM;CACT;CAEA,OADA,EAAU,GAAG,CAAI,GACV,EAAa,GAAG;EAAC;GACtB,KAAK;GACL,OAAO,WAA+B;IACpC,IAAI,IAAwB,KAAK,qBAAqB,GACpD,IAAI,EAAsB,QAC1B,IAAI,EAAsB,SAC1B,IAAI,EAAsB,MAC1B,IAAI,KAAK,EAAE,wBAAwB;IACrC,OAAO;KACL,QAAQ;KACR,SAAS,KAAK,EAAE,yBAAyB;KACzC,MAAM,KAAK,EAAE,sBAAsB;KACnC,UAAU,KAAK,0BAA0B,CAAC;IAC5C;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,IAAI,IAAU,MACV,IAAI,GAAE,2BAA2B,KAAK,YAAY,UAAU,KAAK,aAAa,GAChF,IAAI;KACF,SAAS,KAAK;KACd,MAAM,KAAK;IACb;IACF,OAAO,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KACzC,IAAI,IAAI,GACN,IAAI,GAAE,oBAAoB,GAAG,EAAQ,aAAa;KACpD,MAAM,EAAE,KAAK;IACf,CAAC,GAAG,EAAE,SAAS,GAAG;GACpB;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAmC,GAAG;IAC3C,OAAO,GAAE,oBAAoB,YAAY,KAAK,aAAa,KAAK,EAAE,UAAU,CAAC,CAAC;GAChF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAsC,GAAG;IAC9C,IAAO,GAAS,GAAS,GAAG;IAC5B,IAAI,GAAG,IAAS,KAAK,eAAoC,WAAW,QAAQ,EAAE,QAAQ,IAAc,KAAK,eAAoC,SAA8B,QAAQ,QAAQ,EAAE,YAAY,IAAc,KAAK,eAAoC,SAA8B,SAAS,QAAQ,EAAE,aAAa,EAAE,yBAAyB,KAAK,KAAK,EAAE,yBAAyB,CAAC,IAAI;KACjY,IAAI,IAAI,SAAS,cAAc,OAAO;KACtC,EAAE,cAAc,gNAAgN,IAAI,EAAE,eAAe,QAAQ,EAAE,YAAY,CAAC,GAAG,KAAK,6BAA6B,CAAC;IACpT;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAwB,GAAG;IAChC,KAAK,WAAW,sBAAsB,EACpC,UAAU,KAAK,YAAY,KAAK,MAAM,CAAC,EACzC,GAAG,KAAK,WAAW,iBAAiB;KAClC,QAAQ,KAAK,iBAAiB,KAAK,IAAI;KACvC,SAAS,KAAK,YAAY,KAAK,MAAM,CAAC;KACtC,aAAa,KAAK;KAClB,aAAa,KAAK;IACpB;IACA,IAAI,IAAI,KAAK,WAAW;IACxB,EAAQ,CAAC,KAAK,YAAY,OAAO,EAAE,cAAc,aAAa,KAAK,WAAW,eAAe,oBAAoB,EAAE;GACrH;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA2B,GAAG,GAAG;IACtC,KAAK,oBAAoB,GAAG,KAAK,sBAAsB,EAAQ,CAAC,KAAK,YAAW,EAAE;GACpF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG;IAC7B,KAAK,OAAO,oBAAoB,CAAC,GAAG,KAAK,OAAO,gBAAgB,CAAC,GAAG,EAAE;GACxE;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAmB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,IAAa;KACtG,IAAI,GAAG;KACP,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAEH,OADA,EAAY,OAAO,GACZ,KAAK,iBAAiB,qBAAqB;OACpD,KAAK,GAEH,AADA,IAAI,KAAK,iBAAiB,eAAe,GACrC,KAAK,iBAAiB,UAAU,SAAS,GAAG,sBAAsB,IAAG,KAAK,cAAc;QAC1F,MAAM;QACN,OAAO;OACT,CAAC,KACC,IAAI,KAAK,iBAAiB,UAAU,KAAK,GACzC,KAAK,cAAc;QACjB,MAAM;QACN,OAAO;OACT,CAAC;OAEL,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,IAAkB;KACzB,OAAO,EAAiB,MAAM,MAAM,SAAS;IAC/C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAsB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KAC1G,IAAI,IAAU,MACV;KACJ,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAKH,AAJA,OAAO,KAAK,aAAa,IAAI,EAAG,yBAAyB,CAAC,IAC1D,IAAI,EACF,MAAM,EAAE,KACV,GACA,EAAE,UAAU,EAAE,QAAQ,MAAM,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,SAAU,GAAG;QACzD,OAAO;SACL,MAAM;SACN,MAAM,GAAG,gBAAgB,CAAC;QAC5B;OACF,CAAC,IAAI,WAAW,WAAY;QAC1B,OAAO,EAAQ,cAAc,GAAG,CAAC,CAAC;OACpC,CAAC;OACH,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,CAAU;IACf,CAAC,CAAC;IACF,SAAS,EAAmB,GAAO;KACjC,OAAO,EAAoB,MAAM,MAAM,SAAS;IAClD;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAiB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAG;KACrG,IAAI,GAGF,GACA,GACA,GACA,IAAW;KACb,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK,GAGH,OAFA,IAAI,EAAS,SAAS,KAAK,EAAS,OAAO,KAAA,KAAY,EAAS,IAChE,EAAY,OAAO,GACP,KAAK,oBAAyC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC;OACrF,KAAK;QAGH,IAFA,EAAY,KAAK,EAAY,MAC7B,EAAY,KAAK,CAAC,GACZ,EAAY,OAAO,EAAY,IAAK;SACxC,EAAY,OAAO;SACnB;QACF;QACA,OAAO,EAAY,OAAO,QAAQ;OACpC,KAAK,GAGH,OAFA,KAAK,oBAAoB,GACzB,EAAY,OAAO,IACZ,KAAK,cAAc,CAAC;OAC7B,KAAK,IAUH,OATA,KAAK,WAAW,WAAW,KAAK,KAAK,UAAU,kBAAkB,GACjE,GAAG,MAAM,KAAK,gBAAgB,GAC9B,IAAS,EAAE,OAA4B,IAAI,SAAU,GAAG;QACtD,OAAO,EAAE;OACX,CAAC,GAAG,IAAI;QACN,MAAM,EAAE,SAAS,KAAK,KAAK,IAAI,EAAE;QACjC,OAAO;OACT,GACA,EAAY,OAAO,IACZ,KAAK,WAAW,QAAQ,GAAG,KAAK,SAAS;OAClD,KAAK,IACH,CAAC,IAAI,KAAK,qBAAqB,QAAQ,EAAE,eAAe;OAC1D,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAc,GAAO;KAC5B,OAAO,EAAe,MAAM,MAAM,SAAS;IAC7C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAY;IACjB,IAAI,IAAiB,EAAgC,gBAAoB,CAAC,CAAC,KAAK,SAAS,EAAW,GAAQ;KAC1G,IAAI,GAAG,GAAG;KACV,OAAO,EAAoB,CAAC,CAAC,KAAK,SAAqB,GAAa;MAClE,SAAU,QAAQ,EAAY,OAAO,EAAY,MAAvC;OACR,KAAK;QAOH,IANA,IAAI,EAAO,MAAM,IAAI,EAAO,OAC5B,IAAI,EACF,MAAM,EAAE,UACV,GACA,MAAM,EAAE,OAAO,IACf,EAAY,KAAK,GACb,CAAC,EAAY,IAAI;SACnB,EAAY,OAAO;SACnB;QACF;QAEA,OADA,EAAY,OAAO,GACZ,KAAK,UAAU,iBAAiB,CAAC;OAC1C,KAAK,GACH,EAAE,QAAQ,EAAY;OACxB,KAAK,GAEH,AADA,KAAK,WAAW,cAAc,EAAE,aAAa,KAAK,WAAW,YAC7D,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,UAAU,cAAc,CAAC;OAC7D,KAAK;OACL,KAAK,OACH,OAAO,EAAY,KAAK;MAC5B;KACF,GAAG,GAAY,IAAI;IACrB,CAAC,CAAC;IACF,SAAS,EAAc,GAAO;KAC5B,OAAO,EAAe,MAAM,MAAM,SAAS;IAC7C;IACA,OAAO;GACT,EAAE;EACJ;EAAG;GACD,KAAK;GACL,OAAO,WAAsB;IAC3B,IAAI;IACJ,KAAK,aAAa,MAAM,IAAI,IAAI,KAAK,iBAAiB,QAAQ,EAAE,SAAS,GAAG,KAAK,sBAAsB,KAAK,YAAY,KAAK,kBAAkB;GACjJ;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA4B;IACjC,KAAK,WAAW,cAAc,KAAK,WAAW,UAAU,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,YAAY,GAAG,KAAK,WAAW,gBAAgB,KAAK,eAAe,IAAI,GAAG,KAAK,kBAAkB,QAAQ,CAAC,WAAW,QAAQ,CAAC,GAAG,KAAK,WAAW,UAAU,KAAK,WAAW,KAAK,IAAI,GAAG,KAAK,OAAO,gBAAgB,CAAC;GAC1T;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAA+B;IACpC,KAAK,WAAW,cAAc,KAAK,8BAA8B,KAAK,WAAW,gBAAgB,KAAK,eAAe,OAAO,GAAG,KAAK,WAAW,UAAU,OAAO,EAAE,cAAc,EAAE,cAAc,GAAG,KAAK,WAAW,UAAU,IAAI,EAAE,aAAa,GAAG,KAAK,kBAAkB,WAAW,CAAC,QAAQ,CAAC,GAAG,KAAK,WAAW,UAAU,WAAY,CAAC,GAAG,KAAK,OAAO,oBAAoB,CAAC,GAAG,KAAK,OAAO,gBAAgB,CAAC;GAC/Y;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAA8B;IACnC,IAAI,IAAU;IACd,KAAK,WAAW,UAAU,SAAS,EAAE,YAAY,MAAM,KAAK,WAAW,UAAU,OAAO,EAAE,eAAe,EAAE,cAAc,GAAG,KAAK,WAAW,UAAU,IAAI,EAAE,YAAY,GAAG,KAAK,WAAW,gBAAgB,KAAK,eAAe,MAAM,GAAG,GAAG,YAAY,MAAM,KAAK,OAAO,aAAa,GAAG,KAAK,WAAW,UAAU,WAAY;KAC7T,IAAI;KACJ,EAAQ,gBAAgB,IAAI,IAAI,EAAQ,sBAAsB,QAAQ,EAAE,YAAY,GAAG,wBAAwB,EAAQ,kBAAkB,YAAY,CAAC,CAAC,EAAQ,mBAAmB;IACpL;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;IACvE,KAAK,kBAAkB,CAAC,IAAI,KAAK,mBAAmB,IAAI,KAAK,WAAW,UAAU,SAAS,EAAE,cAAc,MAAM,KAAK,WAAW,UAAU,OAAO,EAAE,eAAe,EAAE,YAAY,GAAG,KAAK,WAAW,UAAU,IAAI,EAAE,cAAc,GAAG,KAAK,WAAW,gBAAgB,KAAK,eAAe,QAAQ,GAAG,KAAK,kBAAkB,YAAY,CAAC,QAAQ,CAAC,GAAG,KAAK,WAAW,UAAU,WAAY,CAAC;GAC7X;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG;IACxC,IAAI;IACJ,EAAE,mCAAmC,MAAM,CAAC,GAAG,EAAE,KAAK,OAAO,qBAAqB,KAAK,OAAO,mBAAmB,MAAM,CAAC,KAAK,IAAI,KAAK,uBAAuB,QAAQ,EAAE,KAAK,IAAI,IAAI,KAAK,qBAAqB,CAAC,CAAC;GAClN;EACF;CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,WAAwC;IAC7C,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,cAAc,GAAG;GAC1C;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmC;IACxC,IAAI,IAAI,EAAG,iBAAiB,EAAE;IAC9B,OAAO,EAAE,KAAK,eAAe;GAC/B;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAoC;IACzC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,UAAU,IAAI,cAAc,GAAG;GAC1C;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAiC;IACtC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,aAAa;GAC7B;EACF;CAAC,CAAC;AACJ,EAAE,EAAE;AACJ,GAAE,eAAe,iBAAiB,GAAE,gBAAgB,kBAAkB,GAAE,iBAAiB;AACzF,IAAI,KAAK,IACL,KAAK,kfACP,KAAK,whBACL,KAAK,2XACL,KAAK,6RACH,KAAkB,uBAAU,GAAK;CAEnC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG;EACtB,IAAI;EAEJ,AADA,EAAgB,MAAM,CAAE,GACxB,IAAU,EAAW,MAAM,GAAI;GAAC;GAAG,CAAC,iBAAiB,sBAAsB;GAAG;EAAC,CAAC,GAAG,EAAQ,WAAW,CAAC,GAAG,EAAQ,UAAU,aAAa,EAAQ,UAAU,SAAS,cAAc,QAAQ,GAAG,EAAQ,QAAQ,UAAU,IAAI,qBAAqB;EAChP,IAAI,IAAwB,EAAQ,yBAAyB,CAAC,GAC5D,IAAI,EAAsB,eAC1B,IAAI,EAAsB;EAE5B,OADA,EAAQ,iBAAiB,GAAG,EAAQ,gBAAgB,GAAG,EAAQ,eAAe,EAAQ,eAAe,SAAS,IAAI,EAAQ,eAAe,EAAG,iBAAiB,EAAE,GAAG,EAAQ,aAAa,UAAU,IAAI,yBAAyB,wBAAwB,GAAI,GAAuB,WAAY,WAAW,EAAQ,UAAU,eAAe,KAAK,QAAQ,EAAE,eAAe,EAAQ,cAAc,EAAE,aAAa,EAAQ,YAAY,YAAY,EAAQ,OAAO,GAAG,EAAQ,yBAAyB,EAAQ,MAChe;CACT;CAEA,OADA,EAAU,GAAI,CAAG,GACV,EAAa,GAAI;EAAC;GACvB,KAAK;GACL,OAAO,SAAkC,GAAG;IAC1C,IAAI,IAAI,GAAG,gBAAgB,EAAE;IAC7B,EAAE,UAAU,IAAI,yBAAyB,GAAG,EAAE,SAAS,EAAE,CAAC,UAAU,IAAI,uBAAuB;IAC/F,IAAI,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC;IAClC,EAAE,UAAU,IAAI,wBAAwB,GAAG,EAAE,SAAS,EAAE,CAAC,UAAU,IAAI,sBAAsB;IAC7F,IAAI,IAAI,GAAG,gBAAgB,EAAE;IAC7B,OAAO,EAAE,UAAU,IAAI,yBAAyB,GAAG,KAAK,WAAW,GAAG,CAAC,GAAG,KAAK,gBAAgB,GAAG,GAAG,GAAG,CAAC,GAAG;KAC1G,eAAe;KACf,cAAc;IAChB;GACF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG,GAAG,GAAG,GAAG;IAC1C,IAAI,IAAU;IACd,EAAE,UAAU,WAAY;KACtB,EAAQ,QAAQ;IAClB,GAAG,EAAE,iBAAiB,SAAS,KAAK,KAAK,KAAK,IAAI,CAAC,GAAG,EAAE,UAAU,WAAY;KAC5E,IAAI,IAAI,EAAQ,QAAQ;KACxB,KAAK,GAAG,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAQ,KAAK,GAAG,EAAQ,MAAM;IAClE;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgB;IACrB,IAAI,IAAU;IACd,KAAK,gBAAgB,KAAK,aAAa,UAAU,CAAC,CAAC,QAAQ,SAAU,GAAG;KACtE,OAAO,EAAE,KAAK;IAChB,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,WAAW,WAAY;KAG7C,AAFA,EAAQ,eAAe,gBAAgB,EAAQ,YAAY,GAAG,EAAQ,eAAe,UAAU,QAAQ,4BAA4B,yBAAyB,GAE5J,EADgB,QAAQ,WAAW,IACnC,CAAC,EAAc,UAAU,GAAG,GAAG,EAAQ,QAAQ,OAAO,EAAQ,QAAQ,MAAM;IAC9E,GAAG,GAAG,sBAAsB;GAC9B;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAiB;IACtB,IAAI,IAAU;IACd,KAAK,WAAW,KAAK,GAAG,KAAK,cAAc,UAAU,IAAI,2BAA2B,GAAG,KAAK,WAAW,CAAC,GAAG,UAAU,aAAa,aAAa,EAC7I,OAAO,KAAK,eAAe,CAAC,EAC9B,CAAC,CAAC,CAAC,KAAK,SAAU,GAAG;KACnB,IAAI,EAAQ,eAAe,GAAG,CAAC,EAAQ,OAAO,GAAG,OAAO,EAAQ,KAAK;KACrE,IAAI,IAAI,SAAS,cAAc,OAAO;KACtC,EAAE,YAAY,GAAG,EAAE,KAAK,GAAG,sBAAsB,EAAQ,aAAa,KAAK,GAAS,GAAG,EAAQ,OAAO,CAAC;IACzG,CAAC,CAAC,CAAC,MAAS,SAAU,GAAG;KACvB,QAAQ,MAAM,CAAC,GAAG,EAAQ,KAAK,GAAG,EAAQ,MAAM;IAClD,CAAC;GACH;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmB;IACxB,KAAK,YAAY,KAAK,eAAe,gBAAgB,KAAK,YAAY,GAAG,KAAK,eAAe,UAAU,QAAQ,4BAA4B,yBAAyB,GAAG,KAAK,cAAc,UAAU,IAAI,2BAA2B,GAAG,KAAK,WAAW,KAAK,MAAM,KAAK,eAAe,gBAAgB,KAAK,YAAY,GAAG,KAAK,eAAe,UAAU,QAAQ,2BAA2B,0BAA0B,GAAG,KAAK,cAAc,UAAU,OAAO,2BAA2B,GAAG,KAAK,WAAW,KAAK,QAAQ,UAAU;GAClgB;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAmB;IACxB,IAAI,KAAK,UAAU;KAGjB,KAAK,IAFD,IAAM,KAAK,KAAK,SAAS,MAAM,GAAG,CAAC,CAAC,EAAE,GACxC,IAAQ,MAAM,EAAI,MAAM,GACjB,IAAI,GAAG,IAAI,EAAI,QAAQ,KAAK,EAAE,KAAK,EAAI,WAAW,CAAC;KAC5D,IAAI,IAAO,IAAI,WAAW,CAAC,GACzB,IAAI,IAAI,KAAK,CAAC,CAAI,GAAG,EACnB,MAAM,KAAK,QACb,CAAC,GACD,IAAI,KAAK,YAAY,eAAe,SAAS,OAC7C,IAAI,GAAG,YAAY,KAAK,kBAAkB,SAAS,CAAC;KACtD,OAAO,IAAI,KAAK,CAAC,CAAC,GAAG,GAAG,EACtB,MAAM,EAAE,KACV,CAAC;IACH;GACF;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAsB,GAAG,GAAG;IACjC,AAAK,KAAK,aACH,KAAK,aACR,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,aAErC,EADa,WAAW,IACrB,CAAC,EAAiB,UAAU,GAAG,GAAG,GAAG,EAAE,OAAO,EAAE,MAAM,IAE3D,sBAAsB,KAAK,aAAa,KAAK,MAAM,GAAG,CAAC,CAAC;GAE5D;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAAyB,GAAG;IACjC,KAAK,qBAAqB,GAAG,EAAE,MAAM;GACvC;EAEF;CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,SAA+B,GAAG,GAAG,GAAG,GAAG;GAChD,IAAI,IAAI,IAAI,EAAG,GAAG,GAAG,GAAG,CAAC;GACzB,OAAO,EAAE,gBAAgB,KAAK,GAAG,CAAC;EACpC;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAK,knBACL,KAAkB,uBAAU,GAAM;CACpC,SAAS,EAAG,GAAG,GAAG,GAAG;EACnB,IAAI;EACJ,EAAgB,MAAM,CAAE;EACxB,IACI,IAAS,GAAuB,QAA6B,UAC/D,IAAoB,GAAuB,QAA6B,QAA6B,MAA2B,WAAY;EAC9I,IAAU,EAAW,MAAM,GAAI;GAAC,EAAG,oBAAoB;GAAG;GAAI,GAAuB,UAAW,CAAC;GAAG;EAAC,CAAC;EACtG,IAAI,IAAI,EAAQ,oBAAoB,EAAQ,eAAe,MAAM,aAAa;EAE9E,OADA,KAAK,EAAQ,cAAc,GAAG,GAAG,EAAE,qBAAqB,EAAE,KAAK,GAAG,EAAQ,WAAW,UAAU,IAAI,oBAAoB,GAAG,EAAQ,WAAW,YAAY,EAAE,MAAM,GAAG,EAAQ,kBAAkB,QAAQ,GAC/L;CACT;CAGA,OADA,EAAU,GAAI,CAAI,GACX,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAAO,SAA6B,GAAG;GACrC,IAAI,IAAI,UAAU,SAAS,KAAK,UAAU,OAAO,KAAA,KAAY,UAAU;GACvE,OAAO,EACL,QAAQ,GAAE,mBAAmB,KAAK,YAAY,EAAG,qBAAqB,GAAG,UAAU,GAAG,CAAC,EACzF;EACF;CACF,GAAG;EACD,KAAK;EACL,OAEA,SAAuB,GAAG,GAAG,GAAG,GAAG;GACjC,IAAI,IAAI,GAAG,sBAAsB,GAAG,GAAG,GAAG,CAAC;GAC3C,KAAK,WAAW,UAAU;EAC5B;CACF,CAAC,GAAG,CAAC;EACH,KAAK;EACL,OAAO,WAA+B;GACpC,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,OAAO,EAAE,UAAU,IAAI,cAAc,GAAG;EAC1C;CACF,GAAG;EACD,KAAK;EACL,OAAO,WAAgC;GACrC,IAAI,IAAI,EAAG,iBAAiB,EAAE;GAC9B,OAAO,EAAE,KAAK,eAAe;EAC/B;CACF,CAAC,CAAC;AACJ,EAAE,EAAE,GACA,KAAkB,yBAAY;CAChC,SAAS,EAAG,GAAG,GAAG,GAAG,GAAG;EAEtB,AADA,EAAgB,MAAM,CAAE,GACxB,KAAK,aAAa,EAAG,mBAAmB,EAAE,cAAc;EACxD,IAAI,IAAI,CAAC,GACP,IAAI,KAAK,2BAA2B,GAAG,GAAG,GAAG,CAAC,GAC9C,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC;EACpB,EAAE,gBAAgB,CAAC,EAAE,eAAe,EAAE,aAAa,EACjD,QAAQ,IAAI,GAAG,GAAG,GAAG,EAAE,mBAAmB,KAAK,CAAC,CAAC,EACnD;EACA,IAAI,IAAI,IAAI,GAAG,GAAG,EAAE,iBAAiB,GAAG,GAAG,GAAG,CAAC;EAC/C,EAAE,SAAS,EAAE,gBAAgB,KAAK,CAAC,GAAG,GAAG,OAAO,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,oBAAoB,EAAE,mBAAmB,KAAK,CAAC,GAAG,EAAE,SAAS,EAC7H,QAAQ,EACV,GAAG,EAAG,YAAY,KAAK,YAAY,GAAG,GAAG,GAAG,GAAG,EAAE,YAAY;CAC/D;CACA,OAAO,EAAa,GAAI,CAAC;EACvB,KAAK;EACL,OAEA,SAAoC,GAAG,GAAG,GAAG,GAAG;GAC9C,IAAI,GAAM,GACN,IAAI,IAAI,GAAG,KAAK,YAAY,EAAE,0BAA0B,EAAE,IAAI;GAalE,OAZI,EAAG,oBAAoB,GAAG,EAAE,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,WAAW,QAAQ,EAAE,UAErF,EAAE,SAAS,EACT,QAAQ,IAAI,GAAG,GAFH,EAAE,QAA6B,YAAa,EAAE,QAAQ,GAAG,EAAE,OAAO,OAAO,QAAQ,GAExE,EAAE,MAAM,EAC/B,KAEG,IAAI,EAAE,gBAAgB,QAAQ,EAAE,UAEnC,EAAE,aAAa,EACb,QAAQ,IAAI,GAFC,EAAE,OAA4B,YAAa,EAAE,QAAQ,GAAG,EAAE,YAAY,OAAO,OAAO,GAE9E,EAAE,WAAW,EAClC,IAEK,GAAG,UAAU,GAAG,EAAE,WAAW,KAAK,GAAG,OAAO,GAAG,GAAG,EAAE,WAAW,GAAG;EAC3E;CAEF,CAAC,GAAG;EAAC;GACH,KAAK;GACL,OAAO,SAA4B,GAAG;IACpC,IAAI,IAAI,SAAS,cAAc,KAAK;IACpC,OAAO,EAAE,KAAK,SAAS,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG;GACpD;EACF;EAAG;GACD,KAAK;GACL,OAAO,SAA6B,GAAG,GAAG,GAAG,GAAG,GAAG;IACjD,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,SAAU,GAAG;KAClC,IAAI,IAAI,GACN,IAAI,EAAE;KACR,IAAI,EAAE,OAAO;MACX,IAAI,IAAI,EAAE,QAAQ,GAAG,EAAE,OAAO,CAAC,GAC7B,IAAQ,GAAG,IACX,IAAI,EAAM,IACV,IAAI,EAAM,WACV,IAAI,EAAM;MAEZ,EAAE,KAAK;OACL,QAAQ,IAFA,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAElB;OACR,UAAU;MACZ;KACF;IACF,CAAC;GACH;EAEF;EAAG;GACD,KAAK;GACL,OAAO,SAAqB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;IAC5C,EAAE,YAAY,GAAG,EAAE,UAAU;IAC7B,IAAI,IAAI,GAAG,OAAO,GAChB,IAAI,GAAE,WAAW,GAAG,GAAG,GAAG,CAAC;IAC7B,GAAG,IAAI,EAAE,iBAAiB,GAAG,EAAE,YAAY,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC;GAC5D;EACF;CAAC,CAAC;AACJ,EAAE,GACE,KAAkB,yBAAY;CAChC,SAAS,IAAK;EACZ,EAAgB,MAAM,CAAE;CAC1B;CACA,OAAO,EAAa,GAAI,MAAM,CAAC;EAC7B,KAAK;EACL,OAAO,SAAwB,GAAG,GAAG,GAAG;GACtC,IAAI,IAAI,SAAS,cAAc,KAAK;GACpC,EAAE,KAAK;GACP,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC;GACtB,EAAE,aAAa,GAAE,iBAAiB,GAAG,CAAC;GACtC,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC;GACzB,OAAO,EAAE,YAAY,GAAG,EAAE,YAAY,EAAE,UAAU,GAAG;EACvD;CACF,GAAG;EACD,KAAK;EACL,OAAO,SAAgB,GAAG,GAAG,GAAG,GAAG;GACjC,IAAI,IAAI,EAAG,eAAe,GAAG,GAAG,CAAC;GACjC,EAAE,gBAAgB,CAAC;EACrB;CACF,CAAC,CAAC;AACJ,EAAE,GACE,KAAK,4qlBACL,KAAK,OAAO,gBACd,IAAI,SAAW,GAAG,GAAG,GAAG,GAAG;CACzB,KAAK,IAAI,IAAI,KAAK,GAAG,IAAI,EAAE,SAAS,GAAG,GAAG,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,GAAG,GAAG,CAAC,KAAK;CACxF,OAAO,KAAK,GAAG,GAAG,GAAG,CAAC,GAAG;AAC3B,GACE,IAAiB,uBAAU,GAAK;CAClC,SAAS,IAAI;EACX,IAAI;EAeJ,OAdA,EAAgB,MAAM,CAAC,GACvB,IAAU,EAAW,MAAM,CAAC,GAAG,EAAQ,cAAc,WAAY;GAC/D,OAAO,CAAC;EACV,GAAG,EAAQ,oBAAoB,WAAY;GACzC,OAAO,QAAQ,KAAK,8FAA8F;EACpH,GAAG,EAAQ,aAAa,WAAY;GAClC,OAAO,QAAQ,KAAK,uFAAuF;EAC7G,GAAG,EAAQ,aAAa,WAAY;GAClC,OAAO,GAAG,uBAAuB,EAAQ,WAAW;EACtD,GAAG,EAAQ,kBAAkB,WAAY,CAAC,GAAG,EAAQ,gBAAgB,WAAY,CAAC,GAAG,EAAQ,iBAAiB,WAAY,CAAC,GAAG,EAAQ,sBAAsB,WAAY,CAAC,GAAG,EAAQ,qBAAqB,WAAY,CAAC,GAAG,EAAQ,mBAAmB,CAAC,GAAG,EAAQ,yBAAyB,CAAC,GAAG,EAAQ,cAAc,SAAS,cAAc,KAAK,GAAG,EAAQ,YAAY,KAAK,aAAa,EAAQ,aAAa,EAC3Y,MAAM,OACR,CAAC,CAAC,CAAC,YAAY,EAAQ,WAAW,GAAG,GAAG,MAAM,IAAI,EAAQ,UAAU,GAAG,WAAW,WAAY;GAC5F,EAAQ,oBAAoB,EAAQ,SAAS;EAC/C,GAAG,EAAE,GACE;CACT;CAEA,OADA,EAAU,GAAG,CAAG,GACT,EAAa,GAAG;EAAC;GACtB,KAAK;GACL,OAAO,WAA4B;IACjC,KAAK,mBAAmB,KAAK,eAAe,sBAAsB,CAAC,IAAI,KAAK,SAAS;GACvF;EAEF;EAAG;GACD,KAAK;GACL,OAAO,WAAoB;IAEzB,GAAG,8BAA8B,KAAK,KAAK,GAAG,EAAG,eAAe,IAAI,IAAI,CAAC,KAAK,kBAAkB,KAAK,eAAe,UAAU,KAAK,iBAAiB,GAAG,OAAO,IAAI,IAAI,KAAK,kBAAkB,CAAC,KAAK,2BAA2B,GAAG,MAAM,KAAK,gBAAgB,KAAK,UAAU,GAAG,KAAK,yBAAyB,CAAC,IAAI,GAAG,6BAA6B,KAAK,OAAO,KAAK,SAAS,GAAG,EAAG,wBAAwB,MAAM,KAAK,WAAW,GAAG,KAAK,eAAe,OAAO,KAAK,eAAe,sBAAsB,GAAG,OAAO,KAAK,aAAa,KAAK,iBAAiB,KAAK,IAAI,GAAG,KAAK,cAAc,IAAI,EAAE,KAAK,0BAA0B,MAAM,KAAK,eAAe,OAAA,AAAqH,KAAK,kBAAgB,KAAK,SAAS,IAAI,GAAG,OAAO,MAAM,KAAK,aAAa,KAAK,gBAAgB,KAAK,aAAa,KAAK,KAAK,0BAA0B,KAAK,GAAE,OAAO,KAAK,aAAa,KAAK,iBAAiB,KAAK,IAAI,GAAG,KAAK,cAAc,GAAG,KAAK,mBAAmB,CAAC,GAAG,GAAG,SAAS,IAAI;GACtgC;EACF;EAAG;GACD,KAAK;GACL,OAAO,WAAgC;IACrC,GAAG,OAAO,KAAK;GACjB;EACF;CAAC,CAAC;AACJ,EAAE,EAAE;AACJ,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,SAAS,GACvC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,kBAAkB,GAChD,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,UAAU,GACxC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,mBAAmB,GACjD,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,oBAAoB,GACpD,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,qBAAqB,GACrD,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,eAAe,GAC/C,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,aAAa,GAC7C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,WAAW,GACzC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,0BAA0B,GACxD,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,cAAc,GAC5C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,gBAAgB,GAC9C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,WAAW,GACzC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,oBAAoB,GAClD,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,gBAAgB,GAC9C,EAAE,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,WAAW,SAAS,GACtC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,cAAc,GAC5C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,SAAS,GACvC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,OAAO,GACrC,EAAE,CAAC,EAAE,SAAS,CAAC,GAAG,EAAE,WAAW,sBAAsB,GACrD,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,eAAe,GAC7C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,eAAe,GAC7C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,cAAc,GAC5C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,cAAc,GAC5C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,QAAQ,GACtC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,MAAM,GACpC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,QAAQ,GACtC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,OAAO,GACrC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,YAAY,GAC1C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,YAAY,GAC1C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,aAAa,GAC3C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,iBAAiB,GAC/C,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,oBAAoB,GAClD,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,WAAW,GAC3C,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,iBAAiB,GACjD,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,mBAAmB,GACnD,EAAE,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,SAAS,GACzC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,MAAM,GACpC,EAAE,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,sBAAsB,GACpD,eAAe,OAAO,aAAa,CAAC"}