!(function () { function s(n) { var r = Object.create(null) return function (e) { var t = c(e) ? e : JSON.stringify(e) return r[t] || (r[t] = n(e)) } } var o = s(function (e) { return e.replace(/([A-Z])/g, function (e) { return '-' + e.toLowerCase() }) }), l = Object.prototype.hasOwnProperty, y = Object.assign || function (e) { for (var t = arguments, n = 1; n < arguments.length; n++) { var r, i = Object(t[n]) for (r in i) l.call(i, r) && (e[r] = i[r]) } return e } function c(e) { return 'string' == typeof e || 'number' == typeof e } function u() {} function r(e) { return 'function' == typeof e } function p(e) { e = e.match(/^([^:/?#]+:)?(?:\/{2,}([^/?#]*))?([^?#]+)?(\?[^#]*)?(#.*)?/) return ( ('string' == typeof e[1] && 0 < e[1].length && e[1].toLowerCase() !== location.protocol) || ('string' == typeof e[2] && 0 < e[2].length && e[2].replace(new RegExp(':(' + { 'http:': 80, 'https:': 443 }[location.protocol] + ')?$'), '') !== location.host) ) } var h = document.body.clientWidth <= 600, i = window.history && window.history.pushState && window.history.replaceState && !navigator.userAgent.match(/((iPod|iPhone|iPad).+\bOS\s+[1-4]\D|WebApps\/.+CFNetwork)/), n = {} function d(e, t) { if ((void 0 === t && (t = !1), 'string' == typeof e)) { if (void 0 !== window.Vue) return b(e) e = t ? b(e) : n[e] || (n[e] = b(e)) } return e } var f = document, g = f.body, m = f.head function b(e, t) { return t ? e.querySelector(t) : f.querySelector(e) } function k(e, t) { return [].slice.call(t ? e.querySelectorAll(t) : f.querySelectorAll(e)) } function v(e, t) { return (e = f.createElement(e)), t && (e.innerHTML = t), e } function a(e, t) { return e.appendChild(t) } function w(e, t) { return e.insertBefore(t, e.children[0]) } function x(e, t, n) { r(t) ? window.addEventListener(e, t) : e.addEventListener(t, n) } function _(e, t, n) { r(t) ? window.removeEventListener(e, t) : e.removeEventListener(t, n) } function S(e, t, n) { e && e.classList[n ? t : 'toggle'](n || t) } function e(e, t) { void 0 === t && (t = document) var n = t.readyState if ('complete' === n || 'interactive' === n) return setTimeout(e, 0) t.addEventListener('DOMContentLoaded', e) } var t = Object.freeze({ __proto__: null, getNode: d, $: f, body: g, head: m, find: b, findAll: k, create: v, appendTo: a, before: w, on: x, off: _, toggleClass: S, style: function (e) { a(m, v('style', e)) }, documentReady: e, }), A = decodeURIComponent, T = encodeURIComponent function E(e) { var t = {} return ( (e = e.trim().replace(/^(\?|#|&)/, '')) && e.split('&').forEach(function (e) { e = e.replace(/\+/g, ' ').split('=') t[e[0]] = e[1] && A(e[1]) }), t ) } function R(e, t) { void 0 === t && (t = []) var n, r = [] for (n in e) -1 < t.indexOf(n) || r.push(e[n] ? (T(n) + '=' + T(e[n])).toLowerCase() : T(n)) return r.length ? '?' + r.join('&') : '' } var O = s(function (e) { return /(:|(\/{2}))/g.test(e) }), $ = s(function (e) { return e.split(/[?#]/)[0] }), F = s(function (e) { if (/\/$/g.test(e)) return e e = e.match(/(\S*\/)[^/]+$/) return e ? e[1] : '' }), C = s(function (e) { return e.replace(/^\/+/, '/').replace(/([^:])\/{2,}/g, '$1/') }), L = s(function (e) { for (var t = e.replace(/^\//, '').split('/'), n = [], r = 0, i = t.length; r < i; r++) { var o = t[r] '..' === o ? n.pop() : '.' !== o && n.push(o) } return '/' + n.join('/') }) function z(e) { return e .split('/') .filter(function (e) { return -1 === e.indexOf('#') }) .join('/') } function N() { for (var e = [], t = arguments.length; t--; ) e[t] = arguments[t] return C(e.map(z).join('/')) } var M = s(function (e) { return e.replace('#', '?id=') }) function D(e, t) { return -1 !== e.indexOf(t, e.length - t.length) } var P = {} var I = function (e) { this.config = e } function j(e) { var t = location.href.indexOf('#') location.replace(location.href.slice(0, 0 <= t ? t : 0) + '#' + e) } ;(I.prototype.getBasePath = function () { return this.config.basePath }), (I.prototype.getFile = function (e, t) { void 0 === e && (e = this.getCurrentPath()) var n, r, i = this.config, o = this.getBasePath(), a = 'string' == typeof i.ext ? i.ext : '.md' return ( (e = i.alias ? (function e(t, n, r) { var i = Object.keys(n).filter(function (e) { return (P[e] || (P[e] = new RegExp('^' + e + '$'))).test(t) && t !== r })[0] return i ? e(t.replace(P[i], n[i]), n, t) : t })(e, i.alias) : e), (n = e), (r = a), (e = ((e = new RegExp('\\.(' + r.replace(/^\./, '') + '|html)$', 'g').test(n) ? n : /\/$/g.test(n) ? n + 'README' + r : '' + n + r) === '/README' + a && i.homepage) || e), (e = O(e) ? e : N(o, e)), t && (e = e.replace(new RegExp('^' + o), '')), e ) }), (I.prototype.onchange = function (e) { void 0 === e && (e = u), e() }), (I.prototype.getCurrentPath = function () {}), (I.prototype.normalize = function () {}), (I.prototype.parse = function () {}), (I.prototype.toURL = function (e, t, n) { var r = n && '#' === e[0], i = this.parse(M(e)) if ( ((i.query = y({}, i.query, t)), (e = (e = i.path + R(i.query)).replace(/\.md(\?)|\.md$/, '$1')), r && (e = (0 < (r = n.indexOf('?')) ? n.substring(0, r) : n) + e), this.config.relativePath && 0 !== e.indexOf('/')) ) { n = n.substring(0, n.lastIndexOf('/') + 1) return C(L(n + e)) } return C('/' + e) }) var H = (function (r) { function e(e) { r.call(this, e), (this.mode = 'hash') } return ( r && (e.__proto__ = r), (((e.prototype = Object.create(r && r.prototype)).constructor = e).prototype.getBasePath = function () { var e = window.location.pathname || '', t = this.config.basePath, e = D(e, '.html') ? e + '#/' + t : e + '/' + t return /^(\/|https?:)/g.test(t) ? t : C(e) }), (e.prototype.getCurrentPath = function () { var e = location.href, t = e.indexOf('#') return -1 === t ? '' : e.slice(t + 1) }), (e.prototype.onchange = function (n) { void 0 === n && (n = u) var r = !1 x('click', function (e) { e = 'A' === e.target.tagName ? e.target : e.target.parentNode e && 'A' === e.tagName && !/_blank/.test(e.target) && (r = !0) }), x('hashchange', function (e) { var t = r ? 'navigate' : 'history' ;(r = !1), n({ event: e, source: t }) }) }), (e.prototype.normalize = function () { var e = this.getCurrentPath() if ('/' === (e = M(e)).charAt(0)) return j(e) j('/' + e) }), (e.prototype.parse = function (e) { void 0 === e && (e = location.href) var t = '', n = e.indexOf('#') 0 <= n && (e = e.slice(n + 1)) n = e.indexOf('?') return 0 <= n && ((t = e.slice(n + 1)), (e = e.slice(0, n))), { path: e, file: this.getFile(e, !0), query: E(t) } }), (e.prototype.toURL = function (e, t, n) { return '#' + r.prototype.toURL.call(this, e, t, n) }), e ) })(I), q = (function (t) { function e(e) { t.call(this, e), (this.mode = 'history') } return ( t && (e.__proto__ = t), (((e.prototype = Object.create(t && t.prototype)).constructor = e).prototype.getCurrentPath = function () { var e = this.getBasePath(), t = window.location.pathname return e && 0 === t.indexOf(e) && (t = t.slice(e.length)), (t || '/') + window.location.search + window.location.hash }), (e.prototype.onchange = function (n) { var r = this void 0 === n && (n = u), x('click', function (e) { var t = 'A' === e.target.tagName ? e.target : e.target.parentNode t && 'A' === t.tagName && !/_blank/.test(t.target) && (e.preventDefault(), (t = t.href), -1 !== r.config.crossOriginLinks.indexOf(t) ? window.open(t, '_self') : window.history.pushState({ key: t }, '', t), n({ event: e, source: 'navigate' })) }), x('popstate', function (e) { n({ event: e, source: 'history' }) }) }), (e.prototype.parse = function (e) { void 0 === e && (e = location.href) var t = '', n = e.indexOf('?') 0 <= n && ((t = e.slice(n + 1)), (e = e.slice(0, n))) var r = N(location.origin), n = e.indexOf(r) return -1 < n && (e = e.slice(n + r.length)), { path: e, file: this.getFile(e), query: E(t) } }), e ) })(I), U = {} var B = /([^{]*?)\w(?=\})/g, Z = { YYYY: 'getFullYear', YY: 'getYear', MM: function (e) { return e.getMonth() + 1 }, DD: 'getDate', HH: 'getHours', mm: 'getMinutes', ss: 'getSeconds', fff: 'getMilliseconds', } var G, W = Object.hasOwnProperty, V = Object.setPrototypeOf, Y = Object.isFrozen, X = Object.getPrototypeOf, K = Object.getOwnPropertyDescriptor, Fe = Object.freeze, Q = Object.seal, J = Object.create, ee = 'undefined' != typeof Reflect && Reflect, te = (te = ee.apply) || function (e, t, n) { return e.apply(t, n) }, Fe = Fe || function (e) { return e }, Q = Q || function (e) { return e }, ne = (ne = ee.construct) || function (e, t) { return new (Function.prototype.bind.apply( e, [null].concat( (function (e) { if (Array.isArray(e)) { for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t] return n } return Array.from(e) })(t) ) ))() }, Ce = re(Array.prototype.forEach), Le = re(Array.prototype.pop), ze = re(Array.prototype.push), Ne = re(String.prototype.toLowerCase), Me = re(String.prototype.match), De = re(String.prototype.replace), Pe = re(String.prototype.indexOf), Ie = re(String.prototype.trim), je = re(RegExp.prototype.test), He = ((G = TypeError), function () { for (var e = arguments, t = arguments.length, n = Array(t), r = 0; r < t; r++) n[r] = e[r] return ne(G, n) }) function re(o) { return function (e) { for (var t = arguments, n = arguments.length, r = Array(1 < n ? n - 1 : 0), i = 1; i < n; i++) r[i - 1] = t[i] return te(o, e, r) } } function qe(e, t) { V && V(e, null) for (var n = t.length; n--; ) { var r, i = t[n] 'string' != typeof i || ((r = Ne(i)) !== i && (Y(t) || (t[n] = r), (i = r))), (e[i] = !0) } return e } function Ue(e) { var t = J(null), n = void 0 for (n in e) te(W, e, [n]) && (t[n] = e[n]) return t } function Be(e, t) { for (; null !== e; ) { var n = K(e, t) if (n) { if (n.get) return re(n.get) if ('function' == typeof n.value) return re(n.value) } e = X(e) } return function (e) { return console.warn('fallback value for', e), null } } var Ze = Fe([ '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', ]), Ge = Fe([ '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', ]), We = Fe([ 'feBlend', 'feColorMatrix', 'feComponentTransfer', 'feComposite', 'feConvolveMatrix', 'feDiffuseLighting', 'feDisplacementMap', 'feDistantLight', 'feFlood', 'feFuncA', 'feFuncB', 'feFuncG', 'feFuncR', 'feGaussianBlur', 'feMerge', 'feMergeNode', 'feMorphology', 'feOffset', 'fePointLight', 'feSpecularLighting', 'feSpotLight', 'feTile', 'feTurbulence', ]), Ve = Fe([ 'animate', 'color-profile', 'cursor', 'discard', 'fedropshadow', 'feimage', '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', ]), Ye = Fe([ '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', ]), Xe = Fe([ 'maction', 'maligngroup', 'malignmark', 'mlongdiv', 'mscarries', 'mscarry', 'msgroup', 'mstack', 'msline', 'msrow', 'semantics', 'annotation', 'annotation-xml', 'mprescripts', 'none', ]), Ke = Fe(['#text']), Qe = Fe([ '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', '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', ]), Je = Fe([ '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', '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', ]), et = Fe([ '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', ]), tt = Fe(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']), nt = Q(/\{\{[\s\S]*|[\s\S]*\}\}/gm), rt = Q(/<%[\s\S]*|[\s\S]*%>/gm), it = Q(/^data-[\-\w.\u00B7-\uFFFF]/), ot = Q(/^aria-[\-\w]+$/), at = Q(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), st = Q(/^(?:\w+script|data):/i), lt = Q(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), ct = '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 } function ut(e) { if (Array.isArray(e)) { for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t] return n } return Array.from(e) } var pt = function () { return 'undefined' == typeof window ? null : window }, ht = function (e, t) { if ('object' !== (void 0 === e ? 'undefined' : ct(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 i = 'dompurify' + (n ? '#' + n : '') try { return e.createPolicy(i, { createHTML: function (e) { return e }, }) } catch (e) { return console.warn('TrustedTypes policy ' + i + ' could not be created.'), null } } var ie, oe, ae = (function t(e) { function c(e) { return t(e) } var s = 0 < arguments.length && void 0 !== e ? e : pt() if (((c.version = '2.3.1'), (c.removed = []), !s || !s.document || 9 !== s.document.nodeType)) return (c.isSupported = !1), c var l = s.document, o = s.document, u = s.DocumentFragment, n = s.HTMLTemplateElement, p = s.Node, a = s.Element, r = s.NodeFilter, i = s.NamedNodeMap, h = void 0 === i ? s.NamedNodeMap || s.MozNamedAttrMap : i, d = s.Text, f = s.Comment, g = s.DOMParser, e = s.trustedTypes, i = a.prototype, m = Be(i, 'cloneNode'), v = Be(i, 'nextSibling'), y = Be(i, 'childNodes'), b = Be(i, 'parentNode') 'function' != typeof n || ((n = o.createElement('template')).content && n.content.ownerDocument && (o = n.content.ownerDocument)) var k = ht(e, l), w = k && ee ? k.createHTML('') : '', x = o.implementation, _ = o.createNodeIterator, S = o.createDocumentFragment, A = o.getElementsByTagName, T = l.importNode, E = {} try { E = Ue(o).documentMode ? o.documentMode : {} } catch (e) {} var R = {} c.isSupported = 'function' == typeof b && x && void 0 !== x.createHTMLDocument && 9 !== E function O(e) { ;(ge && ge === e) || ((e && 'object' === (void 0 === e ? 'undefined' : ct(e))) || (e = {}), (e = Ue(e)), (P = 'ALLOWED_TAGS' in e ? qe({}, e.ALLOWED_TAGS) : I), (j = 'ALLOWED_ATTR' in e ? qe({}, e.ALLOWED_ATTR) : H), (le = 'ADD_URI_SAFE_ATTR' in e ? qe(Ue(ce), e.ADD_URI_SAFE_ATTR) : ce), (ae = 'ADD_DATA_URI_TAGS' in e ? qe(Ue(se), e.ADD_DATA_URI_TAGS) : se), (ie = 'FORBID_CONTENTS' in e ? qe({}, e.FORBID_CONTENTS) : oe), (q = 'FORBID_TAGS' in e ? qe({}, e.FORBID_TAGS) : {}), (U = 'FORBID_ATTR' in e ? qe({}, e.FORBID_ATTR) : {}), ($ = 'USE_PROFILES' in e && e.USE_PROFILES), (B = !1 !== e.ALLOW_ARIA_ATTR), (Z = !1 !== e.ALLOW_DATA_ATTR), (G = e.ALLOW_UNKNOWN_PROTOCOLS || !1), (W = e.SAFE_FOR_TEMPLATES || !1), (V = e.WHOLE_DOCUMENT || !1), (K = e.RETURN_DOM || !1), (Q = e.RETURN_DOM_FRAGMENT || !1), (J = !1 !== e.RETURN_DOM_IMPORT), (ee = e.RETURN_TRUSTED_TYPE || !1), (X = e.FORCE_BODY || !1), (te = !1 !== e.SANITIZE_DOM), (ne = !1 !== e.KEEP_CONTENT), (re = e.IN_PLACE || !1), (D = e.ALLOWED_URI_REGEXP || D), (de = e.NAMESPACE || he), W && (Z = !1), Q && (K = !0), $ && ((P = qe({}, [].concat(ut(Ke)))), (j = []), !0 === $.html && (qe(P, Ze), qe(j, Qe)), !0 === $.svg && (qe(P, Ge), qe(j, Je), qe(j, tt)), !0 === $.svgFilters && (qe(P, We), qe(j, Je), qe(j, tt)), !0 === $.mathMl && (qe(P, Ye), qe(j, et), qe(j, tt))), e.ADD_TAGS && (P === I && (P = Ue(P)), qe(P, e.ADD_TAGS)), e.ADD_ATTR && (j === H && (j = Ue(j)), qe(j, e.ADD_ATTR)), e.ADD_URI_SAFE_ATTR && qe(le, e.ADD_URI_SAFE_ATTR), e.FORBID_CONTENTS && (ie === oe && (ie = Ue(ie)), qe(ie, e.FORBID_CONTENTS)), ne && (P['#text'] = !0), V && qe(P, ['html', 'head', 'body']), P.table && (qe(P, ['tbody']), delete q.tbody), Fe && Fe(e), (ge = e)) } var $, F = nt, C = rt, L = it, z = ot, N = st, M = lt, D = at, P = null, I = qe({}, [].concat(ut(Ze), ut(Ge), ut(We), ut(Ye), ut(Ke))), j = null, H = qe({}, [].concat(ut(Qe), ut(Je), ut(et), ut(tt))), q = null, U = null, B = !0, Z = !0, G = !1, W = !1, V = !1, Y = !1, X = !1, K = !1, Q = !1, J = !0, ee = !1, te = !0, ne = !0, re = !1, ie = null, oe = qe({}, [ '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', ]), ae = null, se = qe({}, ['audio', 'video', 'img', 'source', 'image', 'track']), le = null, ce = qe({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'role', 'summary', 'title', 'value', 'style', 'xmlns']), ue = 'http://www.w3.org/1998/Math/MathML', pe = 'http://www.w3.org/2000/svg', he = 'http://www.w3.org/1999/xhtml', de = he, fe = !1, ge = null, me = o.createElement('form'), ve = qe({}, ['mi', 'mo', 'mn', 'ms', 'mtext']), ye = qe({}, ['foreignobject', 'desc', 'title', 'annotation-xml']), be = qe({}, Ge) qe(be, We), qe(be, Ve) var ke = qe({}, Ye) qe(ke, Xe) function we(t) { ze(c.removed, { element: t }) try { t.parentNode.removeChild(t) } catch (e) { try { t.outerHTML = w } catch (e) { t.remove() } } } function xe(e, t) { try { ze(c.removed, { attribute: t.getAttributeNode(e), from: t }) } catch (e) { ze(c.removed, { attribute: null, from: t }) } if ((t.removeAttribute(e), 'is' === e && !j[e])) if (K || Q) try { we(t) } catch (e) {} else try { t.setAttribute(e, '') } catch (e) {} } function _e(e) { var t = void 0, n = void 0 X ? (e = '' + e) : (n = (i = Me(e, /^[\r\n\t ]+/)) && i[0]) var r = k ? k.createHTML(e) : e if (de === he) try { t = new g().parseFromString(r, 'text/html') } catch (e) {} if (!t || !t.documentElement) { t = x.createDocument(de, 'template', null) try { t.documentElement.innerHTML = fe ? '' : r } catch (e) {} } var i = t.body || t.documentElement return e && n && i.insertBefore(o.createTextNode(n), i.childNodes[0] || null), de === he ? A.call(t, V ? 'html' : 'body')[0] : V ? t.documentElement : i } function Se(e) { return _.call(e.ownerDocument || e, e, r.SHOW_ELEMENT | r.SHOW_COMMENT | r.SHOW_TEXT, null, !1) } function Ae(e) { return 'object' === (void 0 === p ? 'undefined' : ct(p)) ? e instanceof p : e && 'object' === (void 0 === e ? 'undefined' : ct(e)) && 'number' == typeof e.nodeType && 'string' == typeof e.nodeName } function Te(e, t, n) { R[e] && Ce(R[e], function (e) { e.call(c, t, n, ge) }) } function Ee(e) { var t if ( (Te('beforeSanitizeElements', e, null), !( (n = e) instanceof d || n instanceof f || ('string' == typeof n.nodeName && 'string' == typeof n.textContent && 'function' == typeof n.removeChild && n.attributes instanceof h && 'function' == typeof n.removeAttribute && 'function' == typeof n.setAttribute && 'string' == typeof n.namespaceURI && 'function' == typeof n.insertBefore) )) ) return we(e), 1 if (Me(e.nodeName, /[\u0080-\uFFFF]/)) return we(e), 1 var n = Ne(e.nodeName) if ( (Te('uponSanitizeElement', e, { tagName: n, allowedTags: P }), !Ae(e.firstElementChild) && (!Ae(e.content) || !Ae(e.content.firstElementChild)) && je(/<[/\w]/g, e.innerHTML) && je(/<[/\w]/g, e.textContent)) ) return we(e), 1 if ('select' === n && je(/