var ChatSDK; !function () { var e = { 82598: function (e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.get = i, t.set = a, t.getJSON = c, t.remove = u, t.default = void 0; var r, o = function (e) { if (e && e.__esModule) return e; var t = {}; if (null != e) for (var n in e) if (Object.prototype.hasOwnProperty.call(e, n)) { var r = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(e, n) : {}; r.get || r.set ? Object.defineProperty(t, n, r) : t[n] = e[n] } return t.default = e, t }(n(24822)); function a(e, t) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, r = n.path, o = void 0 === r ? "/" : r, a = n.domain, i = n.expires, u = n.maxAge, c = void 0 === u ? 1512e3 : u, l = n.secure, s = n.sameSite; if (e) { t = encodeURIComponent(String(t)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), e = (e = (e = encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent)).replace(/[()]/g, escape); var f = []; o && f.push("path=".concat(o)), a && f.push("domain=".concat(a)), i && f.push("expires=".concat(i)),//! important:"max-age" is not supported by IE6/7/8 c && f.push("max-age=".concat(c)), l && f.push("secure"), s && f.push("samesite=".concat(s)), document.cookie = "".concat(e, "=").concat(t, ";").concat(f.join(";")) } } function i(e) { for (var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, n = e ? void 0 : {}, r = document.cookie ? document.cookie.split("; ") : [], o = /(%[0-9A-Z]{2})+/g, a = 0; a < r.length; a++) { var i = r[a].split("="), u = i.slice(1).join("="); t.json || '"' !== u.charAt(0) || (u = u.slice(1, -1)); try { var c = i[0].replace(o, decodeURIComponent); if (u = u.replace(o, decodeURIComponent), t.json) try { u = JSON.parse(u) } catch (e) { } if (e === c) { n = u; break } e || (n[c] = u) } catch (e) { } } return n } function u(e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; a(e, "", o.assign(t, { expires: "Thu, 01 Jan 1970 00:00:00 GMT", maxAge: -1 })) } function c() { return i(void 0, { json: !0 }) } !function (e) { e.strict = "strict", e.lax = "lax" }(r || (r = {})); var l = { set: a, get: i, getJSON: c, remove: u }; t.default = l }, 63494: function (e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.createInstance = c, t.default = void 0; var r = i(n(31294)), o = function (e) { if (e && e.__esModule) return e; var t = {}; if (null != e) for (var n in e) if (Object.prototype.hasOwnProperty.call(e, n)) { var r = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(e, n) : {}; r.get || r.set ? Object.defineProperty(t, n, r) : t[n] = e[n] } return t.default = e, t }(n(24822)), a = i(n(82598)); function i(e) { return e && e.__esModule ? e : { default: e } } var u = { key: "x-hng", maxAge: 15552e3, path: "/" }; function c(e) { return e = o.assign({}, u, e), new r.default(e) } var l = c(), s = { locale: l, cookie: a.default, util: o, create: c, getKey: l.getKey.bind(l), getLocale: l.getLocale.bind(l), getLocaleString: l.getLocaleString.bind(l), getEnv: l.getEnv.bind(l), setLocale: l.setLocale.bind(l), setRegion: l.setRegion.bind(l), setLang: l.setLang.bind(l), setCurrency: l.setCurrency.bind(l), setTimeZone: l.setTimeZone.bind(l), setLocaleWithObject: l.setLocaleWithObject.bind(l), clear: l.clear.bind(l) }, f = s; t.default = f, e.exports = s }, 31294: function (e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.default = t.LOCALE_KEY_NAME = void 0; var r, o = i(n(82598)), a = i(n(24822)); function i(e) { if (e && e.__esModule) return e; var t = {}; if (null != e) for (var n in e) if (Object.prototype.hasOwnProperty.call(e, n)) { var r = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(e, n) : {}; r.get || r.set ? Object.defineProperty(t, n, r) : t[n] = e[n] } return t.default = e, t } function u(e) { return u = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e }, u(e) } function c(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r) } } function l(e, t, n) { return t in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e } t.LOCALE_KEY_NAME = r, function (e) { e.region = "region", e.lang = "lang", e.currency = "currency", e.tz = "tz" }(r || (t.LOCALE_KEY_NAME = r = {})); var s = function () { function e() { var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; !function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }(this, e), l(this, "key", void 0), l(this, "maxAge", void 0), l(this, "domain", void 0), l(this, "path", void 0), l(this, "container", void 0), this.key = t.key || "", this.maxAge = t.maxAge, this.domain = t.domain, this.path = t.path, this.container = a.getContainerType() } var t, n, i; return t = e, (n = [{ key: "getKey", value: function () { return this.key } }, { key: "getPureLocale", value: function () { return this[this.container] ? this[this.container]() : "" } }, { key: "getLocale", value: function (e) { var t = this.getPureLocale(); if (e && e.short && t[r.lang]) { var n = t[r.lang].split("-")[0]; t[r.lang] = n } return t.region && (t.regionID = t.region), t.lang && (t.language = t.lang), t } }, { key: "getEnv", value: function (e) { var t = a.assign({}, { short: !0 }, e); return this.getLocale(t) } }, { key: "getLocaleString", value: function () { var e = this.getPureLocale(); return a.stringifyToQueryString(e) } }, { key: "setLocale", value: function (e, t) { if (e) { var n = l({}, e, t); this.setLocaleWithObject(n) } } }, { key: "setRegion", value: function (e) { e && this.setLocale(r.region, e) } }, { key: "setLang", value: function (e) { e && this.setLocale(r.lang, e) } }, { key: "setCurrency", value: function (e) { e && this.setLocale(r.currency, e) } }, { key: "setTimeZone", value: function (e) { e && this.setLocale(r.tz, e) } }, { key: "setLocaleWithObject", value: function (e) { if (this.container !== a.ContainerType.weex) { var t = this.getLocale(), n = a.assign({}, t, e); delete n.language; var r = a.stringifyToQueryString(n); o.set(this.key, r, { path: this.path || "/", maxAge: this.maxAge, domain: this.domain }) } } }, { key: "weex", value: function () { var e = ""; return "object" === ("undefined" == typeof WXEnvironment ? "undefined" : u(WXEnvironment)) && (e = WXEnvironment && WXEnvironment[this.key] || ""), a.parseQueryString(e) } }, { key: "web", value: function () { var e = "", t = {}; if (location && location.search) { var n = location.search.replace(/^[?#&]/, ""), i = a.parseQueryString(n), c = a.objectValues(r); Object.keys(i).forEach((function (e) { c.indexOf(e) >= 0 && (t[e] = i[e]) })) } if ("object" === ("undefined" == typeof window ? "undefined" : u(window))) { var l = window; if (e = window[this.key]) { var s = a.parseQueryString(e); t = a.assign({}, s, t) } else if ("object" === u(l.g_config)) { var f = l.g_config, d = f.regionID, p = f.language, v = {}; d && (v[r.region] = d), p && (v[r.lang] = p), t = a.assign({}, v, t) } } if (!e) { var m = {}; if (e = o.get(this.key)) m = a.parseQueryString(e); else { var h = o.get("hng"); if (h) { var g = h.split("|"); g[0] && (m[r.region] = g[0]), g[1] && (m[r.lang] = g[1]), g[2] && (m[r.currency] = g[2]) } } t = a.assign({}, m, t) } return t } }, { key: "clear", value: function () { o.remove(this.key) } }]) && c(t.prototype, n), i && c(t, i), e }(), f = s; t.default = f }, 24822: function (e, t) { "use strict"; function n(e) { return n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e }, n(e) } var r; function o(e, t) { if ("" === t) return [e]; var n = e.indexOf(t); return -1 === n ? [e] : [e.slice(0, n), e.slice(n + t.length)] } function a(e) { try { return decodeURIComponent(e) } catch (t) { return e } } function i(e) { try { return encodeURIComponent(e) } catch (t) { return e } } Object.defineProperty(t, "__esModule", { value: !0 }), t.getContainerType = function () { var e = ""; "function" == typeof callNative ? e = r.weex : "object" !== ("undefined" == typeof navigator ? "undefined" : n(navigator)) || "Mozilla" !== navigator.appCodeName && "Gecko" !== navigator.product || (e = r.web); return e }, t.splitOnFirst = o, t.decode = a, t.encode = i, t.parseQueryString = function (e) { if (!e) return {}; var t = e.split("&"), n = {}; return t.forEach((function (e) { var t, r, i = o(e.replace(/\+/g, " "), "="), u = (r = 2, function (e) { if (Array.isArray(e)) return e }(t = i) || function (e, t) { var n = [], r = !0, o = !1, a = void 0; try { for (var i, u = e[Symbol.iterator](); !(r = (i = u.next()).done) && (n.push(i.value), !t || n.length !== t); r = !0); } catch (e) { o = !0, a = e } finally { try { r || null == u.return || u.return() } finally { if (o) throw a } } return n }(t, r) || function () { throw new TypeError("Invalid attempt to destructure non-iterable instance") }()), c = u[0], l = u[1], s = void 0 === l ? "" : a(l); n[c] = s })), n }, t.stringifyToQueryString = function (e) { return Object.keys(e).map((function (t) { var n = e[t]; return void 0 === n ? "" : null === n ? i(t) : "".concat(i(t), "=").concat(i(n)) })).filter((function (e) { return e.length > 0 })).join("&") }, t.objectValues = function (e) { var t = []; for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && t.push(e[n]); return t }, t.assign = function (e) { if (null == e) throw new TypeError("Cannot convert undefined or null to object"); for (var t = Object(e), n = 0; n < (arguments.length <= 1 ? 0 : arguments.length - 1); n++) { var r = n + 1 < 1 || arguments.length <= n + 1 ? void 0 : arguments[n + 1]; if (r) for (var o in r) Object.prototype.hasOwnProperty.call(r, o) && (t[o] = r[o]) } return t }, t.ContainerType = void 0, t.ContainerType = r, function (e) { e.weex = "weex", e.web = "web" }(r || (t.ContainerType = r = {})) }, 37516: function (e, t, n) { "use strict"; t.ZP = void 0; var r, o = n(34534), a = (r = n(30785)) && r.__esModule ? r : { default: r }, i = n(33166); var u, c = "__GLOBAL_STRING_FORMAT__", l = {}; function s(e) { if (e) return u = e, e; if (u) return u; if (o.isWeex) return l; var t = void 0 !== n.g ? n.g : window; return t[c] || (t[c] = {}), t[c] } function f(e, t) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, r = n.name, o = void 0 === r ? "default" : r, i = s(n.context), u = new a.default(e, t); return i[o] = u, u } function d(e, t) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, r = n.name, o = void 0 === r ? "default" : r, a = s()[o]; return a ? a.format(e, t, n) : ((0, i.error)("\n Not found instance named ".concat(o, ",\n make sure to call formatString.format() after formatString.init()\n ")), e.defaultMessage || e.id || "") } var p = { init: f, format: d, StringFormat: a.default }; t.ZP = p }, 30785: function (e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.default = void 0; var r, o = (r = n(49005)) && r.__esModule ? r : { default: r }, a = n(33166); function i(e) { return function (e) { if (Array.isArray(e)) { for (var t = 0, n = new Array(e.length); t < e.length; t++)n[t] = e[t]; return n } }(e) || function (e) { if (Symbol.iterator in Object(e) || "[object Arguments]" === Object.prototype.toString.call(e)) return Array.from(e) }(e) || function () { throw new TypeError("Invalid attempt to spread non-iterable instance") }() } function u(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r) } } function c(e, t, n) { return t in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e } function l() { var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : ""; "string" != typeof e && ((0, a.error)('"locale" is not a string, please check your input locale'), e = ""); var t = e.toLowerCase(); return t = t.replace("-", "_") } function s(e, t) { if (e === t) return !0; var n = e.match(/(\S*)_/); return !!n && s(n[1], t) } function f(e, t) { var n = l(e), r = l(t); return n === r || s(n, r) } var d = function () { function e(t, n) { var r = this; !function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }(this, e), c(this, "dictionary", void 0), c(this, "strings", void 0), c(this, "locale", void 0), c(this, "medusa", void 0), this.dictionary = {}, this.locale = t || "", n || ((0, a.warn)('param "strings" is undefined, please check your incoming'), n = {}), n.medusa && (this.medusa = n.medusa, delete n.medusa), this.strings = n; var i = n[t]; i || (Object.keys(n).forEach((function (e) { l(e) === l(t) && ((0, a.warn)("no string list for locale: ".concat(t, " , will replace it with ").concat(e)), i = n[e]) })), i || Object.keys(n).forEach((function (e) { f(t, e) && ((0, a.warn)("no value for locale: ".concat(t, " , will replace it with").concat(e)), i = n[e]) }))), (!i || i && 0 === Object.keys(i).length) && ((0, a.warn)("no value for locale: ".concat(t, ", please check your second param")), i = {}), Object.keys(i).forEach((function (e) { try { var n = new o.default(i[e], t); r.dictionary[e] = n } catch (t) { r.dictionary[e] = {}, (0, a.error)(t) } })) } var t, n, r; return t = e, n = [{ key: "getStrings", value: function () { return this.strings } }, { key: "formatString", value: function (e, t, n) { var r = this.medusa, o = this.locale, a = e.format(t); return r && r.app_name && "pd-KV" === o && (a = "##@@@".concat(n, "##").concat(r.app_name, "@@@##").concat(a)), a } }, { key: "format", value: function () { var e, t, n = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : { id: "" }, r = arguments.length > 1 ? arguments[1] : void 0, u = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, c = n.defaultMessage || n.defaultString || "", l = r && Object.keys(r).length > 0, s = "", f = {}, d = {}, p = u.React, v = u.component, m = u.tagName, h = void 0 === m ? "span" : m; if (l) { var g = Math.floor(1099511627776 * Math.random()).toString(16), y = (e = 0, function () { return e += 1, "ELEMENT-".concat(g, "-").concat(e) }); s = "@__".concat(g, "__@"), Object.keys(r).forEach((function (e) { var t = r[e]; if (p && p.isValidElement(t)) { var n = y(); f[e] = s + n + s, d[n] = t } else f[e] = t })) } if (this.dictionary[n.id]) try { t = this.formatString(this.dictionary[n.id], f, n.id) } catch (e) { var b = n.id ? ", using id as fallback." : "", w = c ? ", using defaultString as fallback." : b; (0, a.error)("format string: ".concat(n.id, " for locale ").concat(this.locale, " ").concat(w, " \n").concat(e)), t = c || n.id || "" } else if ("string" == typeof n) (0, a.error)("type of \"des\" must be object, like: {id: '', defaultString: ''}, instead of string "), t = n || ""; else { (0, a.warn)('there is no string with id="'.concat(n.id, '" for locale: "').concat(this.locale, '", use defaultString or id as fallback')); var x = c || n.id || ""; try { var E = new o.default(x, this.locale); t = this.formatString(E, f, n.id) } catch (e) { t = x } } if (d && Object.keys(d).length > 0) { var S = t.split(s).filter((function (e) { return !!e })).map((function (e) { return d[e] || e })), k = v || h; return p ? p.createElement.apply(p, [k, null].concat(i(S))) : S } return t } }], n && u(t.prototype, n), r && u(t, r), e }(); t.default = d }, 33166: function (e, t) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.warn = function (e) { "undefined" != typeof console && console.warn && "undefined" != typeof process && process.env, 0 }, t.error = function (e) { "undefined" != typeof console && console.error && "undefined" != typeof process && process.env, 0 } }, 63453: function (e, t, n) { !function (e, t, r) { "use strict"; function o(e) { return e && "object" == typeof e && "default" in e ? e : { default: e } } e.version = "2.4.2"; var a = o(t), i = o(r); function u(e) { var t, n, r = ""; if ("string" == typeof e || "number" == typeof e) r += e; else if ("object" == typeof e) if (Array.isArray(e)) for (t = 0; t < e.length; t++)e[t] && (n = u(e[t])) && (r && (r += " "), r += n); else for (t in e) e[t] && (r && (r += " "), r += t); return r } function c() { for (var e, t, n = 0, r = ""; n < arguments.length;)(e = arguments[n++]) && (t = u(e)) && (r && (r += " "), r += t); return r } function l(e) { return l = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e }, l(e) } function s(e, t) { return s = Object.setPrototypeOf || function (e, t) { return e.__proto__ = t, e }, s(e, t) } function f() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function () { }))), !0 } catch (e) { return !1 } } function d(e, t, n) { return d = f() ? Reflect.construct : function (e, t, n) { var r = [null]; r.push.apply(r, t); var o = new (Function.bind.apply(e, r)); return n && s(o, n.prototype), o }, d.apply(null, arguments) } function p(e) { return function (e) { if (Array.isArray(e)) return v(e) }(e) || function (e) { if ("undefined" != typeof Symbol && null != e[Symbol.iterator] || null != e["@@iterator"]) return Array.from(e) }(e) || function (e, t) { if (e) { if ("string" == typeof e) return v(e, t); var n = Object.prototype.toString.call(e).slice(8, -1); return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? v(e, t) : void 0 } }(e) || function () { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") }() } function v(e, t) { (null == t || t > e.length) && (t = e.length); for (var n = 0, r = new Array(t); n < t; n++)r[n] = e[n]; return r } !function () { if ("object" == typeof window) if ("IntersectionObserver" in window && "IntersectionObserverEntry" in window && "intersectionRatio" in window.IntersectionObserverEntry.prototype) "isIntersecting" in window.IntersectionObserverEntry.prototype || Object.defineProperty(window.IntersectionObserverEntry.prototype, "isIntersecting", { get: function () { return this.intersectionRatio > 0 } }); else { var e = function (e) { for (var t = window.document, n = o(t); n;)n = o(t = n.ownerDocument); return t }(), t = [], n = null, r = null; i.prototype.THROTTLE_TIMEOUT = 100, i.prototype.POLL_INTERVAL = null, i.prototype.USE_MUTATION_OBSERVER = !0, i._setupCrossOriginUpdater = function () { return n || (n = function (e, n) { r = e && n ? f(e, n) : { top: 0, bottom: 0, left: 0, right: 0, width: 0, height: 0 }, t.forEach((function (e) { e._checkForIntersections() })) }), n }, i._resetCrossOriginUpdater = function () { n = null, r = null }, i.prototype.observe = function (e) { if (!this._observationTargets.some((function (t) { return t.element == e }))) { if (!e || 1 != e.nodeType) throw new Error("target must be an Element"); this._registerInstance(), this._observationTargets.push({ element: e, entry: null }), this._monitorIntersections(e.ownerDocument), this._checkForIntersections() } }, i.prototype.unobserve = function (e) { this._observationTargets = this._observationTargets.filter((function (t) { return t.element != e })), this._unmonitorIntersections(e.ownerDocument), 0 == this._observationTargets.length && this._unregisterInstance() }, i.prototype.disconnect = function () { this._observationTargets = [], this._unmonitorAllIntersections(), this._unregisterInstance() }, i.prototype.takeRecords = function () { var e = this._queuedEntries.slice(); return this._queuedEntries = [], e }, i.prototype._initThresholds = function (e) { var t = e || [0]; return Array.isArray(t) || (t = [t]), t.sort().filter((function (e, t, n) { if ("number" != typeof e || isNaN(e) || e < 0 || e > 1) throw new Error("threshold must be a number between 0 and 1 inclusively"); return e !== n[t - 1] })) }, i.prototype._parseRootMargin = function (e) { var t = (e || "0px").split(/\s+/).map((function (e) { var t = /^(-?\d*\.?\d+)(px|%)$/.exec(e); if (!t) throw new Error("rootMargin must be specified in pixels or percent"); return { value: parseFloat(t[1]), unit: t[2] } })); return t[1] = t[1] || t[0], t[2] = t[2] || t[0], t[3] = t[3] || t[1], t }, i.prototype._monitorIntersections = function (t) { var n = t.defaultView; if (n && -1 == this._monitoringDocuments.indexOf(t)) { var r = this._checkForIntersections, a = null, i = null; this.POLL_INTERVAL ? a = n.setInterval(r, this.POLL_INTERVAL) : (u(n, "resize", r, !0), u(t, "scroll", r, !0), this.USE_MUTATION_OBSERVER && "MutationObserver" in n && (i = new n.MutationObserver(r)).observe(t, { attributes: !0, childList: !0, characterData: !0, subtree: !0 })), this._monitoringDocuments.push(t), this._monitoringUnsubscribes.push((function () { var e = t.defaultView; e && (a && e.clearInterval(a), c(e, "resize", r, !0)), c(t, "scroll", r, !0), i && i.disconnect() })); var l = this.root && (this.root.ownerDocument || this.root) || e; if (t != l) { var s = o(t); s && this._monitorIntersections(s.ownerDocument) } } }, i.prototype._unmonitorIntersections = function (t) { var n = this._monitoringDocuments.indexOf(t); if (-1 != n) { var r = this.root && (this.root.ownerDocument || this.root) || e, a = this._observationTargets.some((function (e) { var n = e.element.ownerDocument; if (n == t) return !0; for (; n && n != r;) { var a = o(n); if ((n = a && a.ownerDocument) == t) return !0 } return !1 })); if (!a) { var i = this._monitoringUnsubscribes[n]; if (this._monitoringDocuments.splice(n, 1), this._monitoringUnsubscribes.splice(n, 1), i(), t != r) { var u = o(t); u && this._unmonitorIntersections(u.ownerDocument) } } } }, i.prototype._unmonitorAllIntersections = function () { var e = this._monitoringUnsubscribes.slice(0); this._monitoringDocuments.length = 0, this._monitoringUnsubscribes.length = 0; for (var t = 0; t < e.length; t++)e[t]() }, i.prototype._checkForIntersections = function () { if (this.root || !n || r) { var e = this._rootIsInDom(), t = e ? this._getRootRect() : { top: 0, bottom: 0, left: 0, right: 0, width: 0, height: 0 }; this._observationTargets.forEach((function (r) { var o = r.element, i = l(o), u = this._rootContainsTarget(o), c = r.entry, s = e && u && this._computeTargetAndRootIntersection(o, i, t), f = null; this._rootContainsTarget(o) ? n && !this.root || (f = t) : f = { top: 0, bottom: 0, left: 0, right: 0, width: 0, height: 0 }; var d = r.entry = new a({ time: window.performance && performance.now && performance.now(), target: o, boundingClientRect: i, rootBounds: f, intersectionRect: s }); c ? e && u ? this._hasCrossedThreshold(c, d) && this._queuedEntries.push(d) : c && c.isIntersecting && this._queuedEntries.push(d) : this._queuedEntries.push(d) }), this), this._queuedEntries.length && this._callback(this.takeRecords(), this) } }, i.prototype._computeTargetAndRootIntersection = function (t, o, a) { if ("none" != window.getComputedStyle(t).display) { for (var i, u, c, s, d, v, m, h, g = o, y = p(t), b = !1; !b && y;) { var w = null, x = 1 == y.nodeType ? window.getComputedStyle(y) : {}; if ("none" == x.display) return null; if (y == this.root || 9 == y.nodeType) if (b = !0, y == this.root || y == e) n && !this.root ? !r || 0 == r.width && 0 == r.height ? (y = null, w = null, g = null) : w = r : w = a; else { var E = p(y), S = E && l(E), k = E && this._computeTargetAndRootIntersection(E, S, a); S && k ? (y = E, w = f(S, k)) : (y = null, g = null) } else { var C = y.ownerDocument; y != C.body && y != C.documentElement && "visible" != x.overflow && (w = l(y)) } if (w && (i = w, u = g, c = void 0, s = void 0, d = void 0, v = void 0, m = void 0, h = void 0, c = Math.max(i.top, u.top), s = Math.min(i.bottom, u.bottom), d = Math.max(i.left, u.left), h = s - c, g = (m = (v = Math.min(i.right, u.right)) - d) >= 0 && h >= 0 && { top: c, bottom: s, left: d, right: v, width: m, height: h } || null), !g) break; y = y && p(y) } return g } }, i.prototype._getRootRect = function () { var t; if (this.root && !v(this.root)) t = l(this.root); else { var n = v(this.root) ? this.root : e, r = n.documentElement, o = n.body; t = { top: 0, left: 0, right: r.clientWidth || o.clientWidth, width: r.clientWidth || o.clientWidth, bottom: r.clientHeight || o.clientHeight, height: r.clientHeight || o.clientHeight } } return this._expandRectByRootMargin(t) }, i.prototype._expandRectByRootMargin = function (e) { var t = this._rootMarginValues.map((function (t, n) { return "px" == t.unit ? t.value : t.value * (n % 2 ? e.width : e.height) / 100 })), n = { top: e.top - t[0], right: e.right + t[1], bottom: e.bottom + t[2], left: e.left - t[3] }; return n.width = n.right - n.left, n.height = n.bottom - n.top, n }, i.prototype._hasCrossedThreshold = function (e, t) { var n = e && e.isIntersecting ? e.intersectionRatio || 0 : -1, r = t.isIntersecting ? t.intersectionRatio || 0 : -1; if (n !== r) for (var o = 0; o < this.thresholds.length; o++) { var a = this.thresholds[o]; if (a == n || a == r || a < n != a < r) return !0 } }, i.prototype._rootIsInDom = function () { return !this.root || d(e, this.root) }, i.prototype._rootContainsTarget = function (t) { var n = this.root && (this.root.ownerDocument || this.root) || e; return d(n, t) && (!this.root || n == t.ownerDocument) }, i.prototype._registerInstance = function () { t.indexOf(this) < 0 && t.push(this) }, i.prototype._unregisterInstance = function () { var e = t.indexOf(this); -1 != e && t.splice(e, 1) }, window.IntersectionObserver = i, window.IntersectionObserverEntry = a } function o(e) { try { return e.defaultView && e.defaultView.frameElement || null } catch (e) { return null } } function a(e) { this.time = e.time, this.target = e.target, this.rootBounds = s(e.rootBounds), this.boundingClientRect = s(e.boundingClientRect), this.intersectionRect = s(e.intersectionRect || { top: 0, bottom: 0, left: 0, right: 0, width: 0, height: 0 }), this.isIntersecting = !!e.intersectionRect; var t = this.boundingClientRect, n = t.width * t.height, r = this.intersectionRect, o = r.width * r.height; this.intersectionRatio = n ? Number((o / n).toFixed(4)) : this.isIntersecting ? 1 : 0 } function i(e, t) { var n, r, o, a = t || {}; if ("function" != typeof e) throw new Error("callback must be a function"); if (a.root && 1 != a.root.nodeType && 9 != a.root.nodeType) throw new Error("root must be a Document or Element"); this._checkForIntersections = (n = this._checkForIntersections.bind(this), r = this.THROTTLE_TIMEOUT, o = null, function () { o || (o = setTimeout((function () { n(), o = null }), r)) }), this._callback = e, this._observationTargets = [], this._queuedEntries = [], this._rootMarginValues = this._parseRootMargin(a.rootMargin), this.thresholds = this._initThresholds(a.threshold), this.root = a.root || null, this.rootMargin = this._rootMarginValues.map((function (e) { return e.value + e.unit })).join(" "), this._monitoringDocuments = [], this._monitoringUnsubscribes = [] } function u(e, t, n, r) { "function" == typeof e.addEventListener ? e.addEventListener(t, n, r || !1) : "function" == typeof e.attachEvent && e.attachEvent("on" + t, n) } function c(e, t, n, r) { "function" == typeof e.removeEventListener ? e.removeEventListener(t, n, r || !1) : "function" == typeof e.detachEvent && e.detachEvent("on" + t, n) } function l(e) { var t; try { t = e.getBoundingClientRect() } catch (e) { } return t ? (t.width && t.height || (t = { top: t.top, right: t.right, bottom: t.bottom, left: t.left, width: t.right - t.left, height: t.bottom - t.top }), t) : { top: 0, bottom: 0, left: 0, right: 0, width: 0, height: 0 } } function s(e) { return !e || "x" in e ? e : { top: e.top, y: e.top, bottom: e.bottom, left: e.left, x: e.left, right: e.right, width: e.width, height: e.height } } function f(e, t) { var n = t.top - e.top, r = t.left - e.left; return { top: n, left: r, height: t.height, width: t.width, bottom: n + t.height, right: r + t.width } } function d(e, t) { for (var n = t; n;) { if (n == e) return !0; n = p(n) } return !1 } function p(t) { var n = t.parentNode; return 9 == t.nodeType && t != e ? o(t) : (n && n.assignedSlot && (n = n.assignedSlot.parentNode), n && 11 == n.nodeType && n.host ? n.host : n) } function v(e) { return e && 9 === e.nodeType } }(); var m = Object.hasOwnProperty, h = Object.setPrototypeOf, g = Object.isFrozen, y = Object.getPrototypeOf, b = Object.getOwnPropertyDescriptor, w = Object.freeze, x = Object.seal, E = Object.create, S = "undefined" != typeof Reflect && Reflect, k = S.apply, C = S.construct; k || (k = function (e, t, n) { return e.apply(t, n) }), w || (w = function (e) { return e }), x || (x = function (e) { return e }), C || (C = function (e, t) { return d(e, p(t)) }); var T, O = F(Array.prototype.forEach), N = F(Array.prototype.pop), R = F(Array.prototype.push), _ = F(String.prototype.toLowerCase), P = F(String.prototype.match), j = F(String.prototype.replace), I = F(String.prototype.indexOf), A = F(String.prototype.trim), L = F(RegExp.prototype.test), M = (T = TypeError, function () { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)t[n] = arguments[n]; return C(T, t) }); function F(e) { return function (t) { for (var n = arguments.length, r = new Array(n > 1 ? n - 1 : 0), o = 1; o < n; o++)r[o - 1] = arguments[o]; return k(e, t, r) } } function D(e, t) { h && h(e, null); for (var n = t.length; n--;) { var r = t[n]; if ("string" == typeof r) { var o = _(r); o !== r && (g(t) || (t[n] = o), r = o) } e[r] = !0 } return e } function z(e) { var t, n = E(null); for (t in e) k(m, e, [t]) && (n[t] = e[t]); return n } function U(e, t) { for (; null !== e;) { var n = b(e, t); if (n) { if (n.get) return F(n.get); if ("function" == typeof n.value) return F(n.value) } e = y(e) } return function (e) { return null } } var B = w(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]), H = w(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]), W = w(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]), V = w(["animate", "color-profile", "cursor", "discard", "fedropshadow", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]), G = w(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover"]), q = w(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]), $ = w(["#text"]), Y = w(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "xmlns", "slot"]), K = w(["accent-height", "accumulate", "additive", "alignment-baseline", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]), Q = w(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]), X = w(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]), J = x(/\{\{[\w\W]*|[\w\W]*\}\}/gm), Z = x(/<%[\w\W]*|[\w\W]*%>/gm), ee = x(/^data-[\-\w.\u00B7-\uFFFF]/), te = x(/^aria-[\-\w]+$/), ne = x(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), re = x(/^(?:\w+script|data):/i), oe = x(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), ae = x(/^html$/i), ie = function () { return "undefined" == typeof window ? null : window }, ue = function (e, t) { if ("object" !== l(e) || "function" != typeof e.createPolicy) return null; var n = null, r = "data-tt-policy-suffix"; t.currentScript && t.currentScript.hasAttribute(r) && (n = t.currentScript.getAttribute(r)); var o = "dompurify" + (n ? "#" + n : ""); try { return e.createPolicy(o, { createHTML: function (e) { return e } }) } catch (e) { return null } }, ce = function e() { var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : ie(), n = function (t) { return e(t) }; if (n.version = "2.3.8", n.removed = [], !t || !t.document || 9 !== t.document.nodeType) return n.isSupported = !1, n; var r = t.document, o = t.document, a = t.DocumentFragment, i = t.HTMLTemplateElement, u = t.Node, c = t.Element, s = t.NodeFilter, f = t.NamedNodeMap, d = void 0 === f ? t.NamedNodeMap || t.MozNamedAttrMap : f, v = t.HTMLFormElement, m = t.DOMParser, h = t.trustedTypes, g = c.prototype, y = U(g, "cloneNode"), b = U(g, "nextSibling"), x = U(g, "childNodes"), E = U(g, "parentNode"); if ("function" == typeof i) { var S = o.createElement("template"); S.content && S.content.ownerDocument && (o = S.content.ownerDocument) } var k = ue(h, r), C = k ? k.createHTML("") : "", T = o, F = T.implementation, ce = T.createNodeIterator, le = T.createDocumentFragment, se = T.getElementsByTagName, fe = r.importNode, de = {}; try { de = z(o).documentMode ? o.documentMode : {} } catch (e) { } var pe = {}; n.isSupported = "function" == typeof E && F && void 0 !== F.createHTMLDocument && 9 !== de; var ve, me, he = J, ge = Z, ye = ee, be = te, we = re, xe = oe, Ee = ne, Se = null, ke = D({}, [].concat(p(B), p(H), p(W), p(G), p($))), Ce = null, Te = D({}, [].concat(p(Y), p(K), p(Q), p(X))), Oe = Object.seal(Object.create(null, { tagNameCheck: { writable: !0, configurable: !1, enumerable: !0, value: null }, attributeNameCheck: { writable: !0, configurable: !1, enumerable: !0, value: null }, allowCustomizedBuiltInElements: { writable: !0, configurable: !1, enumerable: !0, value: !1 } })), Ne = null, Re = null, _e = !0, Pe = !0, je = !1, Ie = !1, Ae = !1, Le = !1, Me = !1, Fe = !1, De = !1, ze = !1, Ue = !0, Be = !0, He = !1, We = {}, Ve = null, Ge = D({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]), qe = null, $e = D({}, ["audio", "video", "img", "source", "image", "track"]), Ye = null, Ke = D({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]), Qe = "http://www.w3.org/1998/Math/MathML", Xe = "http://www.w3.org/2000/svg", Je = "http://www.w3.org/1999/xhtml", Ze = Je, et = !1, tt = ["application/xhtml+xml", "text/html"], nt = "text/html", rt = null, ot = o.createElement("form"), at = function (e) { return e instanceof RegExp || e instanceof Function }, it = function (e) { rt && rt === e || (e && "object" === l(e) || (e = {}), e = z(e), Se = "ALLOWED_TAGS" in e ? D({}, e.ALLOWED_TAGS) : ke, Ce = "ALLOWED_ATTR" in e ? D({}, e.ALLOWED_ATTR) : Te, Ye = "ADD_URI_SAFE_ATTR" in e ? D(z(Ke), e.ADD_URI_SAFE_ATTR) : Ke, qe = "ADD_DATA_URI_TAGS" in e ? D(z($e), e.ADD_DATA_URI_TAGS) : $e, Ve = "FORBID_CONTENTS" in e ? D({}, e.FORBID_CONTENTS) : Ge, Ne = "FORBID_TAGS" in e ? D({}, e.FORBID_TAGS) : {}, Re = "FORBID_ATTR" in e ? D({}, e.FORBID_ATTR) : {}, We = "USE_PROFILES" in e && e.USE_PROFILES, _e = !1 !== e.ALLOW_ARIA_ATTR, Pe = !1 !== e.ALLOW_DATA_ATTR, je = e.ALLOW_UNKNOWN_PROTOCOLS || !1, Ie = e.SAFE_FOR_TEMPLATES || !1, Ae = e.WHOLE_DOCUMENT || !1, Fe = e.RETURN_DOM || !1, De = e.RETURN_DOM_FRAGMENT || !1, ze = e.RETURN_TRUSTED_TYPE || !1, Me = e.FORCE_BODY || !1, Ue = !1 !== e.SANITIZE_DOM, Be = !1 !== e.KEEP_CONTENT, He = e.IN_PLACE || !1, Ee = e.ALLOWED_URI_REGEXP || Ee, Ze = e.NAMESPACE || Je, e.CUSTOM_ELEMENT_HANDLING && at(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck) && (Oe.tagNameCheck = e.CUSTOM_ELEMENT_HANDLING.tagNameCheck), e.CUSTOM_ELEMENT_HANDLING && at(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck) && (Oe.attributeNameCheck = e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck), e.CUSTOM_ELEMENT_HANDLING && "boolean" == typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && (Oe.allowCustomizedBuiltInElements = e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements), ve = ve = -1 === tt.indexOf(e.PARSER_MEDIA_TYPE) ? nt : e.PARSER_MEDIA_TYPE, me = "application/xhtml+xml" === ve ? function (e) { return e } : _, Ie && (Pe = !1), De && (Fe = !0), We && (Se = D({}, p($)), Ce = [], !0 === We.html && (D(Se, B), D(Ce, Y)), !0 === We.svg && (D(Se, H), D(Ce, K), D(Ce, X)), !0 === We.svgFilters && (D(Se, W), D(Ce, K), D(Ce, X)), !0 === We.mathMl && (D(Se, G), D(Ce, Q), D(Ce, X))), e.ADD_TAGS && (Se === ke && (Se = z(Se)), D(Se, e.ADD_TAGS)), e.ADD_ATTR && (Ce === Te && (Ce = z(Ce)), D(Ce, e.ADD_ATTR)), e.ADD_URI_SAFE_ATTR && D(Ye, e.ADD_URI_SAFE_ATTR), e.FORBID_CONTENTS && (Ve === Ge && (Ve = z(Ve)), D(Ve, e.FORBID_CONTENTS)), Be && (Se["#text"] = !0), Ae && D(Se, ["html", "head", "body"]), Se.table && (D(Se, ["tbody"]), delete Ne.tbody), w && w(e), rt = e) }, ut = D({}, ["mi", "mo", "mn", "ms", "mtext"]), ct = D({}, ["foreignobject", "desc", "title", "annotation-xml"]), lt = D({}, ["title", "style", "font", "a", "script"]), st = D({}, H); D(st, W), D(st, V); var ft = D({}, G); D(ft, q); var dt = function (e) { var t = E(e); t && t.tagName || (t = { namespaceURI: Je, tagName: "template" }); var n = _(e.tagName), r = _(t.tagName); return e.namespaceURI === Xe ? t.namespaceURI === Je ? "svg" === n : t.namespaceURI === Qe ? "svg" === n && ("annotation-xml" === r || ut[r]) : Boolean(st[n]) : e.namespaceURI === Qe ? t.namespaceURI === Je ? "math" === n : t.namespaceURI === Xe ? "math" === n && ct[r] : Boolean(ft[n]) : e.namespaceURI === Je && !(t.namespaceURI === Xe && !ct[r]) && !(t.namespaceURI === Qe && !ut[r]) && !ft[n] && (lt[n] || !st[n]) }, pt = function (e) { R(n.removed, { element: e }); try { e.parentNode.removeChild(e) } catch (t) { try { e.outerHTML = C } catch (t) { e.remove() } } }, vt = function (e, t) { try { R(n.removed, { attribute: t.getAttributeNode(e), from: t }) } catch (e) { R(n.removed, { attribute: null, from: t }) } if (t.removeAttribute(e), "is" === e && !Ce[e]) if (Fe || De) try { pt(t) } catch (e) { } else try { t.setAttribute(e, "") } catch (e) { } }, mt = function (e) { var t, n; if (Me) e = "" + e; else { var r = P(e, /^[\r\n\t ]+/); n = r && r[0] } "application/xhtml+xml" === ve && (e = '' + e + ""); var a = k ? k.createHTML(e) : e; if (Ze === Je) try { t = (new m).parseFromString(a, ve) } catch (e) { } if (!t || !t.documentElement) { t = F.createDocument(Ze, "template", null); try { t.documentElement.innerHTML = et ? "" : a } catch (e) { } } var i = t.body || t.documentElement; return e && n && i.insertBefore(o.createTextNode(n), i.childNodes[0] || null), Ze === Je ? se.call(t, Ae ? "html" : "body")[0] : Ae ? t.documentElement : i }, ht = function (e) { return ce.call(e.ownerDocument || e, e, s.SHOW_ELEMENT | s.SHOW_COMMENT | s.SHOW_TEXT, null, !1) }, gt = function (e) { return e instanceof v && ("string" != typeof e.nodeName || "string" != typeof e.textContent || "function" != typeof e.removeChild || !(e.attributes instanceof d) || "function" != typeof e.removeAttribute || "function" != typeof e.setAttribute || "string" != typeof e.namespaceURI || "function" != typeof e.insertBefore) }, yt = function (e) { return "object" === l(u) ? e instanceof u : e && "object" === l(e) && "number" == typeof e.nodeType && "string" == typeof e.nodeName }, bt = function (e, t, r) { pe[e] && O(pe[e], (function (e) { e.call(n, t, r, rt) })) }, wt = function (e) { var t; if (bt("beforeSanitizeElements", e, null), gt(e)) return pt(e), !0; if (L(/[\u0080-\uFFFF]/, e.nodeName)) return pt(e), !0; var r = me(e.nodeName); if (bt("uponSanitizeElement", e, { tagName: r, allowedTags: Se }), e.hasChildNodes() && !yt(e.firstElementChild) && (!yt(e.content) || !yt(e.content.firstElementChild)) && L(/<[/\w]/g, e.innerHTML) && L(/<[/\w]/g, e.textContent)) return pt(e), !0; if ("select" === r && L(/